/*-----------------------------------------------------------------------------------
	hkk
	About: A shiny new Blocs website.
	Author: 野村信導
	Version: 1.0
	Built with Blocs
-----------------------------------------------------------------------------------*/
body{
	margin:0;
	padding:0;
    background:#FFFFFF;
    overflow-x:hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.page-container{overflow: hidden;} /* Prevents unwanted scroll space when scroll FX used. */
a,button{transition: background .3s ease-in-out;outline: none!important;} /* Prevent blue selection glow on Chrome and Safari */
a:hover{text-decoration: none; cursor:pointer;}


/* Preloader */

.page-preloader{position: fixed;top: 0;bottom: 0;width: 100%;z-index:100000;background:#FFFFFF url("img/pageload-spinner.gif") no-repeat center center;animation-name: preloader-fade;animation-delay: 2s;animation-duration: 0.5s;animation-fill-mode: both;}
.preloader-complete{animation-delay:0.1s;}
@keyframes preloader-fade {0% {opacity: 1;visibility: visible;}100% {opacity: 0;visibility: hidden;}}

/* = Blocs
-------------------------------------------------------------- */

.bloc{
	width:100%;
	clear:both;
	background: 50% 50% no-repeat;
	padding:0 20px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position:relative;
	display:flex;
}
.bloc .container{
	padding-left:0;
	padding-right:0;
}


/* Sizes */

.bloc-lg{
	padding:100px 20px;
}
.bloc-sm{
	padding:20px;
}


/* Light theme */

.d-bloc .card,.l-bloc{
	color:rgba(0,0,0,.5);
}
.d-bloc .card button:hover,.l-bloc button:hover{
	color:rgba(0,0,0,.7);
}
.l-bloc .icon-round,.l-bloc .icon-square,.l-bloc .icon-rounded,.l-bloc .icon-semi-rounded-a,.l-bloc .icon-semi-rounded-b{
	border-color:rgba(0,0,0,.7);
}
.d-bloc .card .divider-h span,.l-bloc .divider-h span{
	border-color:rgba(0,0,0,.1);
}
.d-bloc .card .a-btn,.l-bloc .a-btn,.l-bloc .navbar a,.l-bloc a .icon-sm, .l-bloc a .icon-md, .l-bloc a .icon-lg, .l-bloc a .icon-xl, .l-bloc h1 a, .l-bloc h2 a, .l-bloc h3 a, .l-bloc h4 a, .l-bloc h5 a, .l-bloc h6 a, .l-bloc p a{
	color:rgba(255,255,255,1);
}
.d-bloc .card .a-btn:hover,.l-bloc .a-btn:hover,.l-bloc .navbar a:hover, .l-bloc a:hover .icon-sm, .l-bloc a:hover .icon-md, .l-bloc a:hover .icon-lg, .l-bloc a:hover .icon-xl, .l-bloc h1 a:hover, .l-bloc h2 a:hover, .l-bloc h3 a:hover, .l-bloc h4 a:hover, .l-bloc h5 a:hover, .l-bloc h6 a:hover, .l-bloc p a:hover{
	color:rgba(255,255,255,1));
}
.l-bloc .navbar-toggle .icon-bar{
	color:rgba(0,0,0,.6);
}
.d-bloc .card .btn-wire,.d-bloc .card .btn-wire:hover,.l-bloc .btn-wire,.l-bloc .btn-wire:hover{
	color:rgba(0,0,0,.7);
	border-color:rgba(0,0,0,.3);
}

/* Row Margin Offsets */

.voffset{
	margin-top:30px;
}

/* = Lightbox
-------------------------------------------------------------- */

a[data-lightbox]{
	position: relative;
	display: block;
	text-align: center;
}

a[data-lightbox]:hover img{
	opacity: 0.6;
	-webkit-animation-fill-mode: none;
	animation-fill-mode:none;
}
.lightbox-caption{
	padding: 20px;
	color: #FFF;
	background: rgba(0,0,0,.5);
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 5px;
}
.close-lightbox:hover,.next-lightbox:hover, .prev-lightbox:hover{
	background:rgba(0,0,0,.5);
}
.next-lightbox, .prev-lightbox,.close-lightbox{
	position: absolute;
	padding:6px;
	background:rgba(0,0,0,.3);
	line-height:0;
	transition: background .2s ease-in-out;
	border-radius:.25rem;
	border:none;
	z-index:20;
}
.next-lightbox, .prev-lightbox{
	top:45%;
}
.close-lightbox{
	top:20px;
	right:20px;
}
.next-lightbox{
	right:25px;
}
.prev-lightbox{
	left:25px;
}
.lightbox-prev-icon,.lightbox-next-icon,.lightbox-close-icon{
	fill:none;
	stroke: #fff;
	stroke-width: 3px;
	fill-rule: evenodd;
	stroke-linecap:round;
}
.lightbox-close-svg{
	pointer-events:none;
}


/* = NavBar
-------------------------------------------------------------- */

/* Handle Multi Level Navigation */
.dropdown-menu .dropdown-menu{
	border:none}
@media (min-width:576px){
	
.navbar-expand-sm .dropdown-menu .dropdown-menu{
	border:1px solid rgba(0,0,0,.15);
	position:absolute;
	left:100%;
	top:-7px}.navbar-expand-sm .dropdown-menu .submenu-left{
	right:100%;
	left:auto}}@media (min-width:768px){
	.navbar-expand-md .dropdown-menu .dropdown-menu{
	border:1px solid rgba(0,0,0,.15);
	border:1px solid rgba(0,0,0,.15);
	position:absolute;
	left:100%;
	top:-7px}.navbar-expand-md .dropdown-menu .submenu-left{
	right:100%;
	left:auto}}@media (min-width:992px){
	.navbar-expand-lg .dropdown-menu .dropdown-menu{
	border:1px solid rgba(0,0,0,.15);
	position:absolute;
	left:100%;
	top:-7px}.navbar-expand-lg .dropdown-menu .submenu-left{
	right:100%;
	left:auto}
}
/* = Bric adjustment margins
-------------------------------------------------------------- */

.mg-md{
	margin-top:10px;
	margin-bottom:20px;
}
.mg-sm{
	margin-top:5px;
	margin-bottom:5px;
}


/* = Buttons
-------------------------------------------------------------- */

.btn-d,.btn-d:hover,.btn-d:focus{
	color:#FFF;
	background:rgba(0,0,0,.3);
}

.btn-flat-logo {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #00bcd4;
  transition: .4s;
}

.btn-flat-logo:hover {
  background: #1ec7bb;
}

.btn-flat-simple {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #00bcd4;
  background: #ececec;
  transition: .4s;
}

.btn-flat-simple:hover {
  background: #00bcd4;
  color: white;
}
							
/* Prevent ugly blue glow on chrome and safari */
button{
	outline: none!important;
}

.a-block{
	width:100%;
	text-align:left;
	display: inline-block;
}
.text-center .a-block{
	text-align:center;
}

.btn-square-pop {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #fd9535;/*背景色*/
  border-bottom: solid 2px #d27d00;/*少し濃い目の色に*/
  border-radius: 4px;/*角の丸み*/
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  font-weight: bold;
}

.btn-square-pop:active {
  border-bottom: solid 2px #fd9535;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

/* = Text & Icon Styles
-------------------------------------------------------------- */
.sm-shadow{
	text-shadow:0 1px 2px rgba(0,0,0,.3);
}
.lg-shadow{
	text-shadow:0 2px 5px rgba(0,0,0,.5);
}


.card-sq, .card-sq .card-header, .card-sq .card-footer{
	border-radius:0;
}
.card-rd{
	border-radius:30px;
}
.card-rd .card-header{
	border-radius:29px 29px 0 0;
}
.card-rd .card-footer{
	border-radius:0 0 29px 29px;
}

.icon_arrow_left {
    position:relative;
    display:block;
    padding-left:17px;
    width:280px;
    margin:0 auto;
    padding:20px 20px 20px 30px;
    background:#eee;
    text-decoration:none;
    text-align:center;
}
.icon_arrow_left:before {
    content: "";
    border-top: 2px solid #666;
    border-right: 2px solid #666;
    margin-top: -4px;
    height: 8px;
    width: 8px;
    position: absolute;
    top: 50%;
    left:20px;
    transform: rotate(45deg);
}
							

/* ScrollToTop button */

.scrollToTop{
	width:36px;
	height:36px;
	padding:5px;
	position:fixed;
	bottom:20px;
	right:20px;
	opacity:0;
	z-index:999;
	transition: all .3s ease-in-out;
	pointer-events:none;
}
.showScrollTop{
	opacity: 1;
	pointer-events:all;
}
.scroll-to-top-btn-icon{
	fill: none;
	stroke: #fff;
	stroke-width: 2px;
	fill-rule: evenodd;
	stroke-linecap:round;
}


/* Hide Object */
.object-hidden{
	display:none;
}


/* = Custom Styling
-------------------------------------------------------------- */

h1,h2,h3,h4,h5,h6,p,label,.btn,a{
	font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
}
.container{
	max-width:1140px;
}
.p-style{
	font-family:"Lato";
	font-weight:600;
	line-height:1.5;
}
.h2-style{
	font-family:"Lato";
	font-weight:900;
}
.h3-style{
	font-family:"Lato";
	font-weight:700;
}
.navbar-brand img{
	width:126px;
	height:45px;
}
.link-style{
	font-family:"Lato";
	font-weight:700;
}

h1,h2,h3,h4.return{
  white-space: nowrap;
}
							
p.top-title{
	font-family: "丸フォーク M";
	font-weight:700;
	line-height:1.25;
	margin-bottom:1em;
}
h1.top-title{
  	font-family: ab-doudoukaisyo,sans-serif;
	font-weight: 400;
	font-style: normal;
	}

tr{
  	width:100%;
	}


							
.btn-style{
	width:100%;
	padding-top:20px;
	padding-bottom:20px;
}


							
.box_tag {
    position: relative;
    margin: 3em 0;
    padding: 0.5em 1em;
    border: solid 3px #269aed;
}
.box_tag .box-title {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: -3px;
    padding: 0 9px;
    height: 30px;
    line-height: 30px;
    font-size: 20px;
    background: #269aed;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box_tag p {
    margin: 0; 
    padding: 0;
}

.box_tag_special {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #ff6363;
}
.box_tag_special .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ff6363;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box_tag_special p {
    margin: 0; 
    padding: 0;
}

li{
  	font-family: 'Helvetica';
	font-weight: 400;
    font-size: 18px;
	font-style: normal;
	}
							


/* = Colour */

.icon-orange{
	color:#FF9300!important;
	border-color:#FF9300!important;
}

.icon-yellow{
	color:#FFFF00!important;
	border-color:#FFFF00!important;
}



/* Background colour styles */

.bgc-blond{
	background-color:#fff6db;
}
.bgc-platinum{
	background-color:#D7FFDB;
}
.bgc-magnolia{
	background-color:#fff5ff;
}
.bgc-green{
	background-color:#009e10;
}
.bgc-blue{
	background-color:#43BBFF;
}
.bgc-red{
	background-color:#f55f31;
}
.bgc-orange{
	background-color:#FFAB00;
}
.bgc-lightcyan{
	background-color:#e0ffff;
}
.bgc-azure{
	background-color:#f0ffff;
}							
							
							
							
/* Text colour styles */

.tc-magnolia{
	color:#FFF3FF!important;
}
.tc-white{
	color:#FFFFFF!important;
}
.tc-black{
	color:#000000!important;
}
.tc-red{
	color:#ff0000!important;
}

h1 {
  color: #5d5de5;
}
							
/* Link colour styles */

.ltc-black{
	color:#000000!important;
}
.ltc-black:hover{
	color:#000000!important;
}

/* Bloc image backgrounds */

.bg-top-hokkeko{
	background-image:url("img/top_gongyo.jpg");
}

/* Button colour styles */

.btn-princeton-orange{
	background:#FF9300;
	color:#FFFFFF!important;
}
.btn-princeton-orange:hover{
	background:#cc7600!important;
	color:#FFFFFF!important;
}

.btn-princeton-green{
	background:#009e10;
	color:#FFFFFF!important;
}
.btn-princeton-green:hover{
	background:#00780c!important;
	color:#FFFFFF!important;
}

.btn-princeton-blue{
	background:#007ef5;
	color:#FFFFFF!important;
}
.btn-princeton-blue:hover{
	background:#0061bd!important;
	color:#FFFFFF!important;
}
							
.btn-princeton-red{
	background:#f53100;
	color:#FFFFFF!important;
}
.btn-princeton-red:hover{
	background:#a32202!important;
	color:#FFFFFF!important;
}							

.btn-brown{
	background:#A67134;
	color:#FFFFFF!important;
}
.btn-brown:hover{
	background:#7B3E00!important;
	color:#FFFFFF!important;
}							

.btn-moss-green{
	background:#628000;
	color:#FFFFFF!important;
}
.btn-moss-green:hover{
	background:#3A5300!important;
	color:#FFFFFF!important;
}														
							
							
/* = Bloc Padding Multi Breakpoint
-------------------------------------------------------------- */

@media (min-width: 576px) {
    .bloc-xxl-sm{padding:200px 20px;}
    .bloc-xl-sm{padding:150px 20px;}
    .bloc-lg-sm{padding:100px 20px;}
    .bloc-md-sm{padding:50px 20px;}
    .bloc-sm-sm{padding:20px;}
    .bloc-no-padding-sm{padding:0 20px;}
}
@media (min-width: 768px) {
    .bloc-xxl-md{padding:200px 20px;}
    .bloc-xl-md{padding:150px 20px;}
    .bloc-lg-md{padding:100px 20px;}
    .bloc-md-md{padding:50px 20px;}
    .bloc-sm-md{padding:20px 20px;}
    .bloc-no-padding-md{padding:0 20px;}
}
@media (min-width: 992px) {
    .bloc-xxl-lg{padding:200px 20px;}
    .bloc-xl-lg{padding:150px 20px;}
    .bloc-lg-lg{padding:100px 20px;}
    .bloc-md-lg{padding:50px 20px;}
    .bloc-sm-lg{padding:20px;}
    .bloc-no-padding-lg{padding:0 20px;}
}


/* = Mobile adjustments 
-------------------------------------------------------------- */
@media (max-width: 1024px)
{
    .bloc.full-width-bloc, .bloc-tile-2.full-width-bloc .container, .bloc-tile-3.full-width-bloc .container, .bloc-tile-4.full-width-bloc .container{
        padding-left: 0; 
        padding-right: 0;  
    }
}
@media (max-width: 991px)
{
    .container{width:100%;}
    .bloc{padding-left: constant(safe-area-inset-left);padding-right: constant(safe-area-inset-right);} /* iPhone X Notch Support*/
    .bloc-group, .bloc-group .bloc{display:block;width:100%;}
}
@media (max-width: 767px)
{
    .bloc-tile-2 .container, .bloc-tile-3 .container, .bloc-tile-4 .container{
        padding-left:0;padding-right:0;
    }
    .btn-dwn{
       display:none; 
    }
    .voffset{
        margin-top:5px;
    }
    .voffset-md{
        margin-top:20px;
    }
    .voffset-lg{
        margin-top:30px;
    }
    form{
        padding:5px;
    }
    .close-lightbox{
        display:inline-block;
    }
    .blocsapp-device-iphone5{
	   background-size: 216px 425px;
	   padding-top:60px;
	   width:216px;
	   height:425px;
    }
    .blocsapp-device-iphone5 img{
	   width: 180px;
	   height: 320px;
    }
}

@media (max-width: 991px){
	.mt-md-0{
	}
	.mt-md-4{
	}
	
}

@media (max-width: 575px){
	.mt-1{
	}
	.footer-link{
		text-align:center;
	}
	
}

@media (max-width: 420px){
.navbar-brand img{
	width:101px;
	height:36px;
}	
.navbar a{
	font-size:medium;
}	

}

@media (min-width:991px) {
.br_onoff_l {
  display: none;
}
}

@media (max-width:990px) {
.br_onoff_l {
  display: none;
}
}

@media (min-width:576px) {
.br_onoff_m {
  display: none;
}
}

@media (max-width:575px) {
.br_onoff_m {
  display: block;
}
}

@media (min-width:421px) {
.br_onoff_s {
  display: none;
}
}

@media (min-width:420px) {
.br_onoff_s {
  display: block;
}
}

.video {
  width: 100%;
  aspect-ratio: 9 / 16;
}

.video iframe {
  width: 100%;
  height: 100%;
}

