 @charset "utf-8";

html { 
height: 100%;
overflow-y: scroll;
box-sizing: border-box;
-webkit-box-sizing: border-box;
}
*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
@media print {
html,
html body {}
}

/* -------------------------------------------------------
 body
------------------------------------------------------- */
body{
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, 'Noto Sans JP','Chakra Petch',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
	width:100%;
	-webkit-text-size-adjust: 100%;
	font-size: 18px;
	line-height: 1.5;
	color: #000;
}
body p{
	font-size: 18px;
	line-height: 2.2;
	font-weight: bold;
}
@media screen and (max-width:767px){
body p{
	line-height: 2;
	}
body.fixed{
  position: fixed;
  width:100%;
}
}

/* -------------------------------------------------------
 fonts
------------------------------------------------------- */
a {
	color: #000;
	text-decoration: none;
}
a:visited {}
a:hover,
a:active { text-decoration: none;}

.txtC{text-align:center !important;}
.txtR{text-align:right !important;}
.txtL{text-align:left !important;}
.bold{font-weight:bold !important;}
.normal{font-weight:normal !important;}
sup   { font-size: 78%; vertical-align: top;}
sub   { font-size: 78%; vertical-align: baseline;}

.Chakra{font-family: 'Chakra Petch'!important;
		font-weight: bold;}
.wht{color: #fff;}
/* -------------------------------------------------------
inline align
------------------------------------------------------- */
.taL {text-align: left   !important;}
.taC {text-align: center !important;}
.taR {text-align: right  !important;}
.vaT {vertical-align: top    !important;}
.vaM {vertical-align: middle !important;}
.vaB {vertical-align: bottom !important;}

/* -------------------------------------------------------
float
------------------------------------------------------- */
.flL    { display: inline; float: left;}
.flR    { display: inline; float: right;}

/* -------------------------------------------------------
Tools
------------------------------------------------------- */
.clear {clear: both;}
.block {display: block;}
.hide  {display: none;}
.bgN   {background: none !important;}
.tdU   {text-decoration: underline;}
.tdN   {text-decoration: none;}

/* -------------------------------------------------------
img
------------------------------------------------------- */
img {
  max-width: 100%;
  height: auto;
  border: 0;
}
/* img hover */
a:hover img{
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
}


/* -------------------------------------------------------
header
------------------------------------------------------- */
.header{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}

@media screen and (max-width:767px){
	.header {
	}
}


/* gNavi
------------------------------------------------------- */
.header-nav{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100vw;
}
.logo{
	margin-left: 30px;
	margin-top: 13px;
	width: 15%;
	max-width: 240px;
}
.nav01,.nav02{
	display: flex;
}
.nav02{
	padding-right: 80px;
}
.nav01{
	justify-content:flex-end;
	margin-bottom: 18px;
}
.nav01 li{
	padding: 15px 65px 15px 30px;
}
.nav01 li a{
	color: #fff;
	position: relative;
	font-family: 'Noto Sans JP';
	font-size: 14px;
}
.nav01 li a::after{
	content: "";
	background-color: #fff;
	width: 35px;
	height: 2px;
	display:inline-block;
	position: absolute;
	top: 50%;
	right: -40px;
}
.nav01 .bg_color1{
	background-color: #000;
}
.nav01 .bg_color2{
	background-color: #506b78;
}
.nav02 li{
	padding-right: 30px;
	text-align: center;
	font-family: 'Noto Sans JP';
	font-weight: 500;
	color: #fff;
	
}
.nav02 li span{
	display: block;
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 5px;
	font-family: 'Chakra Petch';
}
.navfont-bl .nav02 a{
	color: #000;
}
.nav02 a{
	color: #fff;
}
.nav02 a.headerColorScroll{
	color: #000;
}
.nav02 li:hover,.nav01 li:hover{
	opacity: .7;
}
.header-nav{
	position: relative;
}
.globalNav{
	position: absolute;
	top: 0;
	right: 0
}

@media screen and (min-width:1700px){
	.nav02{
	padding-right: 140px;
}
}
@media screen and (min-width:2000px){
	.nav02{
	padding-right: 180px;
}
	}

@media screen and (max-width:1100px){
	.nav02 li span{
		font-size: 18px;
	}
	.nav02 li {
		padding-right: 20px;
	}
	.nav02 a{
		font-size: 14px;
	}
	.logo{
		width: 200px;
		margin-left: 15px;
	}
}

@media screen and (max-width:767px){
/* 以下、ハンバーガーボタン */
.burger-wrapper{
	position: fixed;
	top:20px;
	right: 20px;
	z-index: 988
}
.logo{
	position: fixed;
	top: 20px;
	left: 15px;
	margin-left: 0;
	width: 25%;
	z-index: 998;
	margin-top: 0;
	}
.burger-btn{
  display: block;      
  width: 39px;      
  height: 39px;      
  position: relative;      
  z-index: 3;
  border:none;    
}    
.bar{      
  width: 20px;      
  height: 1px;        
  display: block;      
  position: absolute;      
  left: 50%;      
  transform: translateX(-50%);      
  background-color: #000;    
}    
.bar_top{   
  top: 10px;
}
.bar_mid{    
  top: 50%;
  transform: translate(-50%,-50%);
}
.bar_bottom{
  bottom: 10px;
}

.burger-btn.close .bar_top{      
  transform: translate(-50%,10px) rotate(45deg);      
  transition: transform .3s;    
}    
.burger-btn.close .bar_mid{      
  opacity: 0;       
  transition: opacity .3s;    
}    
.burger-btn.close .bar_bottom{      
transform: translate(-50%,-8px) rotate(-45deg);      
transition: transform .3s;    
}
.header{
  position: fixed;      
  top: 0;      
  left: 0;
z-index: 995;
	}
.header-nav{              
	position: relative;
  transition: all .5s;       
  z-index: 2;     
}     
.globalNav{  
position: absolute;
	top: 0;
	left:0;
display: none;
  width: 100vw;        
  height: 100vh;        
  z-index: 500;     
background-color: #fff;
}     
.nav02{        
  display: block;        
  position: absolute;        
  top: 40%;        
  left: 50%;        
  transform: translate(-50%,-50%);        
  text-align: center;  
width: 73%;
padding-right: 0;
}    
.nav02 a{
	display: flex;
	color: #000;
}
.nav02 li{
	text-align: left;
	margin-bottom: 15px;
	border-bottom: 1px solid #000;
	padding: 10px;
}
.nav02 li span{
	width: 60%;
	font-family: 'Chakra Petch';
}
.nav01{
	position: absolute;
	top: 70%;
	left: 50%;
	transform: translateX(-50%);
	display: block;
	width: 60%;
	}
.nav01 .bg_color1{
		margin-bottom: 10px;
	}


.nav-item{        
  margin-right: 0;        
  margin-bottom: 40px;      
}

/* メニューオープン時 */
.globalNav.fade {
	display: block;
}
}


/* オーダーボタン */
.btn-order{
	position: fixed;
	right: 23px;
	top:59px;
	z-index: 1000;
}
.btn-order a {
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #7b8753;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
  filter: drop-shadow(0px 3px 4px rgba(0,0,0,.5));
	transition: all 0.5s;
}
.btn-order a:hover{
	background: #edb7c6;
}
.btn-order a span{
	display: block;
	width: 100%;
	text-align: center;
	color: #fff;
	text-decoration: none;
	letter-spacing: 0.05em;
}
.btn-order a span.en{
	font-family: 'Chakra Petch';
	font-size:12px;
	font-weight: 500;
	margin-bottom: 0.1em;
}
.btn-order a span.ja{
	font-family: 'Noto Sans JP','ヒラギノ角ゴシック', 'Hiragino Sans','メイリオ', 'Meiryo','sans-serif';
	font-size:14px;
	font-weight: 700;
	line-height: 1.3;
}
@media screen and (max-width:767px){
	.btn-order{
		right: 0;
		left:0;
		top:auto;
		bottom: 0;
		width: 100%;
	}
	.btn-order a {
		width: 100%;
		height: auto;
		padding: 22px;
		text-align: center;
		border-radius:0;
		filter:none;
	}
	.btn-order a span{
		color: #fff;
	}
  .btn-order a span.en{
    font-size:16px;
    margin-bottom: 0;
  }
  .btn-order a span.ja{
    font-size:20px;
  }
}


/* layout
---------------------------------------------------------- */
.inner{
	width:px;
	margin:auto;
	position:relative;
}
.main-wrapper{
	width: 100%;
	overflow: hidden;
}
@media screen and (min-width:768px){
.pcnone {
	display: none;
}
}
@media screen and (max-width:767px){
.spnone {
	display: none;
}
}
/* pageTop
---------------------------------------------------------- */
.pageTop {
	position:fixed;
	right:10%;
	bottom:10%;
}
@media screen and (max-width:767px){
	.pageTop {
	}
}

/* acord-btn
---------------------------------------------------------- */
.acord-js:hover{
	opacity: .6;
	cursor: pointer;
}
.contents{
  display: none;
}
.btn-color{
	border: 3px solid #5ed1e1;
	border-image: linear-gradient(to right, #5ed1e1 0%,#bfc2fe 50%, #e8bddb 100%);
	border-image-slice: 1;
}
.acord{
	position: relative;
}
.acord::after{
	content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-bottom: solid 1px #fff;
    border-right: solid 1px #fff;
    top: 50%;
    right: 15px;
    margin-top: -6px;
    transform: rotate(45deg);
	display: block;
	position: absolute;
}

/* -------------------------------------------------------
footer
------------------------------------------------------- */

.footer {
	background-image: url(/files/img/top/foot-bak.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding: 55px  0 60px;
}
.footer-list{
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #000;
	max-width: 739px;
	margin: auto;
	flex-wrap: wrap;
	padding: 25px 80px 0 100px;
	margin-top: 70px;
}
.footer-list li{
	width: 33%;
	font-size: 18px;
	margin-bottom: 20px;
	text-align: center;
}
.footer-list a:hover{
	border-bottom: 3px solid #000;
}

.copyLight {
	font-size: 18px;
	padding: 20px 0;
	text-align: center;
}

@media screen and (max-width:767px){
	
	.footer-list{
		width: auto;
		padding: 35px 0 0;
	}
	.footer-list li{
		width: 33%;
		text-align: center;
	}
}

/* -------------------------------------------------------
insta_link
------------------------------------------------------- */

.insta_link {
	position: fixed;
	left: 30px;
	bottom: 30px;
	width: 116px;
	display: block;
	z-index: 999;
}
.insta_link img {
	width: 130%;
}
@media screen and (max-width:767px){
.insta_link {
	left: 10px;
	bottom: 15px;
	width: 84px;
}
.insta_link img {
	width: 120%;
}
}

/* -------------------------------------------------------
special_link_01
------------------------------------------------------- */

.special_link_01 {
	position: fixed;
	right: 30px;
	bottom: 30px;
	width: 180px;
	display: block;
	z-index: 999;
}
.special_link_01 img {
	width: 100%;
}
@media screen and (max-width:767px){
.special_link_01 {
	right: 10px;
	bottom: 15px;
	width: 120px;
}
.special_link_01 img {
	width: 100%;
}
}

/* -------------------------------------------------------
table
------------------------------------------------------- */

.type01 {
	width: 100%;
	border-collapse: separate;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.type01 th,
.type01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 10px 15px;
}
.type01 th {
	background-color: #f3f3f3;
}
.type01 td {
}
@media screen and (max-width:767px){
.table_basic01 {
	width: 100%;
}
.table_basic01,
.table_basic01 thead,
.table_basic01 tbody,
.table_basic01 tr,
.table_basic01 th,
.table_basic01 td {
	width: 100%;
	display: block;
}
.table_basic01 th,
.table_basic01 td {
	border-top: none;
	border-left: none;
}
.table_basic01 th {
}
.table_basic01 td {
}
}

/* -------------------------------------------------------
form
------------------------------------------------------- */

.check_layout input{
    display:none;
}
.check_layout label{
    display:inline-block;
    position:relative;
    padding-left:25px;
 
}
.check_layout label:before,.check_layout label:after{
    content:'';
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:15px;
    height:15px;
}
.check_layout label:before{
    background:#fafafa;
    border:1px solid #666666;
}
.check_layout input:checked + label:after{
	left:1px;
	top:-1px;
	content:"\f00c";
	color:#004ea2;
	height:15px;
	margin:auto;
	font-size:108%;
	font-family: FontAwesome;
}

/* -------------------------------------------------------
clearfix
------------------------------------------------------- */

.cf:after{
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
	visibility:hidden;
}
.cf{
	display: inline-block;
} 
/* Hides from IE Mac */
* html .cf{
	height: 1%;
}
.cf{
	display:block;
}


/* -------------------------------------------------------
margin
------------------------------------------------------- */
.mt00 { margin-top: 0   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

/* -------------------------------------------------------
padding
------------------------------------------------------- */
.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pt60 { padding-top:60px !important;}
.pt65 { padding-top:65px !important;}
.pt125 { padding-top:125px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pb60 { padding-bottom:60px !important;}
.pb100 { padding-bottom:100px !important;}
.pb110 { padding-bottom:110px !important;}
.pb130 { padding-bottom:130px !important;}
.pl00 { padding-left: 0   !important;}
.pl03 { padding-left: 3px !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}


.pc{display: block;}
.sp{display: none;}
@media screen and (max-width:767px){
  .pc{display: none ;}
  .sp{display: block;}
}




#loading {
	background-image: -ms-linear-gradient(0deg, #ebebeb 0%, #f5f5f5 37%, #fff 72%, #f8f8f8 100%);
	background: #fff;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	pointer-events: none;
	-webkit-transition: all 1s 1s;
	transition: all 1s 1s;
  }
  
  #loading.completion {
	opacity: 0;
  }
  
  .loadingBox {
	width: 40px;
  }
  
  .loader,
  .loader:before,
  .loader:after {
	border-radius: 50%;
	width: 1em;
	height: 1em;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation: load7 1.8s infinite ease-in-out;
	animation: load7 1.8s infinite ease-in-out;
  }
  
  .loader {
	color: #1b1c80;
	font-size: 10px;
	margin: 80px auto;
	position: relative;
	text-indent: -9999em;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
  }
  
  .loader:before,
  .loader:after {
	content: '';
	position: absolute;
	top: 0;
  }
  
  .loader:before {
	left: -1.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
  }
  
  .loader:after {
	left: 1.5em;
  }
  
  @-webkit-keyframes load7 {
	0%,
	80%,
	100% {
	  -webkit-box-shadow: 0 2.5em 0 -1.3em;
			  box-shadow: 0 2.5em 0 -1.3em;
	}
	40% {
	  -webkit-box-shadow: 0 2.5em 0 0;
			  box-shadow: 0 2.5em 0 0;
	}
  }
  
  @keyframes load7 {
	0%,
	80%,
	100% {
	  -webkit-box-shadow: 0 2.5em 0 -1.3em;
			  box-shadow: 0 2.5em 0 -1.3em;
	}
	40% {
	  -webkit-box-shadow: 0 2.5em 0 0;
			  box-shadow: 0 2.5em 0 0;
	}
  }

