@charset "UTF-8";
/*
Theme Name: Tuuli bar&Dining.
Theme URI: https://tuuli-tokyo.com
Description: Tuuliオリジナルテーマ
Author: Izumi Taguchi 
Author URI:
Version: 1.0.0

Style List *
 *  1.Common
 *  2.Home
 *  3.Other
 *  4.Responsive-SP max-767px
 *  5.Iinview animate css
*/

/*--------------------
base
---------------------*/

html{
    font-size: 62.5%;
}
body{   
    color:#000;
    font-family: 'Noto Serif JP',serif;
    font-feature-settings: "palt";
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 1.6rem;
    line-height: 1;
}
a{
    color: #000;
    text-decoration: none;
    transition: all .2s;    
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
}
.footer a{
	color:#fff;
	text-decoration: none;
    transition: all .2s;    
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
}
a:hover{
    opacity:0.5;
}
img{
	max-width:100%;
    height:auto;
	width: 100%;
}
 
img:hover{
	transform: scale(1.02,1.02);
	transition-duration: 0.8s;
	
}


/*------------------
*
*loading animation
*
*-------------------*/

/* ローディング画面 */
/*前面に重ねて表示*/
#loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
background-color: #000;
 position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
/*loading animation*/
.spinner {
  width: 100px;
  height: 100px;
  margin: 200px auto;
  background-color: #fff;
  border-radius: 100%;
  animation: sk-scaleout 1.0s infinite ease-in-out;
}

@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(1.0);
    opacity: 0;
  }
}
/*loadされたら非表示になる*/
.loaded {
  opacity: 0;
  visibility: hidden;
}
/*------------------
*
*utility
*
*-------------------*/
/* {
 display: block;
 padding-top: 140px;
 margin-top: -140px; 
} */
.sp__img{
	width: 100%;
	
}
.pc__img{
	display: none;
}
.inner {
    width: 90%;
    margin:130px auto;
  
}
.inner:first-of-type,
.inner:last-of-type{
      margin:0 auto;
      padding:130px 0;
  }
.serif{
	font-family: 'Noto Sans JP', sans-serif;
	
}

.btn__read {
    padding: 1em;
    border: 1px solid #000;
    display: table;
    border-radius: 10px;
	margin: 100px auto;
	position: inherit;
	
}
.btn__read a{
	display: inline-block;
    padding-right: 1em;
	font-family: 'Cinzel';
}
.btn__read span.ico {
  
    display: inline-block;
    width: 40px;
    height: 20px;
	vertical-align: middle;
   background-image: url(https://ms.its-create.com/wp-sample03/wp22/wp-content/themes/tuuli-2022/images/ico-arr-bk.png);
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 80px 20px;
   }

/* .btn__wrapper{
	text-align: center;
	margin: 60px auto;
} */
.section-title span.line {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000;
    margin: 10px auto;
   
}

.section-title__ja{
	display: block;
	font-size: 1.2rem;
	margin: 1rem auto 60px;
	color:#000;
	font-family:'Noto Sans JP', sans-serif;
	letter-spacing: normal;
}
#main{
	background-color:#fff;
}
.alignleft{
	margin-left: 0;
	margin-right: auto;
}
.alignright{
	margin-right: 0;
	margin-left: auto;
}	
/*------------------------------
*
*effect
*
*------------------------------*/
/*文字系ふわっと*/
/*------------------------------
* 1文字づつヨコからanimation
*------------------------------*/
.js-effect-txt-items{
	display: inline-block;
	opacity: 0;
	transform: translate3d(-30px,0,0);
	transition-timing-function: ease-out;
	
	transition-duration: 1s;
	transition-property: opacity,transform;
	}

.is-active .js-effect-txt-items {
	opacity: 1;
	transform: translate3d(0,0,0);
}

.js-effect-txt-items.js-timing-1 {
    transition-delay: 30ms
}

.js-effect-txt-items.js-timing-2 {
    transition-delay: 60ms
}

.js-effect-txt-items.js-timing-3 {
    transition-delay: 90ms
}

.js-effect-txt-items.js-timing-4 {
    transition-delay: 120ms
}

.js-effect-txt-items.js-timing-5 {
    transition-delay: 150ms
}

.js-effect-txt-items.js-timing-6 {
    transition-delay: 180ms
}

.js-effect-txt-items.js-timing-7 {
    transition-delay: 210ms
}

.js-effect-txt-items.js-timing-8 {
    transition-delay: 240ms
}

.js-effect-txt-items.js-timing-9 {
    transition-delay: 270ms
}

.js-effect-txt-items.js-timing-10 {
    transition-delay: .3s
}

.js-effect-txt-items.js-timing-11 {
    transition-delay: 330ms
}

.js-effect-txt-items.js-timing-12 {
    transition-delay: 360ms
}

.js-effect-txt-items.js-timing-13 {
    transition-delay: 390ms
}

.js-effect-txt-items.js-timing-14 {
    transition-delay: 420ms
}

.js-effect-txt-items.js-timing-15 {
    transition-delay: 450ms
}

.js-effect-txt-items.js-timing-16 {
    transition-delay: 480ms
}

.js-effect-txt-items.js-timing-17 {
    transition-delay: 510ms
}

.js-effect-txt-items.js-timing-18 {
    transition-delay: 540ms
}

.js-effect-txt-items.js-timing-19 {
    transition-delay: 570ms
}

.js-effect-txt-items.js-timing-20 {
    transition-delay: .6s
}

.js-effect-txt-items.js-timing-21 {
    transition-delay: 630ms
}

.js-effect-txt-items.js-timing-22 {
    transition-delay: 660ms
}

.js-effect-txt-items.js-timing-23 {
    transition-delay: 690ms
}

.js-effect-txt-items.js-timing-24 {
    transition-delay: 720ms
}

.js-effect-txt-items.js-timing-25 {
    transition-delay: 750ms
}

.js-effect-txt-items.js-timing-26 {
    transition-delay: 780ms
}

.js-effect-txt-items.js-timing-27 {
    transition-delay: 810ms
}

.js-effect-txt-items.js-timing-28 {
    transition-delay: 840ms
}

.js-effect-txt-items.js-timing-29 {
    transition-delay: 870ms
}

.js-effect-txt-items.js-timing-30 {
    transition-delay: .9s
}

.js-effect-txt-items.js-timing-31 {
    transition-delay: 930ms
}

.js-effect-txt-items.js-timing-32 {
    transition-delay: 960ms
}

.js-effect-txt-items.js-timing-33 {
    transition-delay: 990ms
}

.js-effect-txt-items.js-timing-34 {
    transition-delay: 1.02s
}

.js-effect-txt-items.js-timing-35 {
    transition-delay: 1.05s
}

.js-effect-txt-items.js-timing-36 {
    transition-delay: 1.08s
}

.js-effect-txt-items.js-timing-37 {
    transition-delay: 1.11s
}

.js-effect-txt-items.js-timing-38 {
    transition-delay: 1.14s
}

.js-effect-txt-items.js-timing-39 {
    transition-delay: 1.17s
}

.js-effect-txt-items.js-timing-40 {
    transition-delay: 1.2s
}





/*------------------------------
* 1行づつすごくゆっくりヨコからanimation
*------------------------------*/
.js-effect-txt-items.js-timing-long-1 {
    transition-delay: 0.2s;
}
.js-effect-txt-items.js-timing-long-2 {
    transition-delay: 0.6s;
}
.js-effect-txt-items.js-timing-long-3 {
    transition-delay: 1.0s;
}
.js-effect-txt-items.js-timing-long-4 {
    transition-delay: 1.4s;
}
.js-effect-txt-items.js-timing-long-5 {
    transition-delay: 1.8s;
}
.js-effect-txt-items.js-timing-long-6 {
    transition-delay: 2.2s;
}
.js-effect-txt-items.js-timing-long-7 {
    transition-delay: 2.6s;
}



/*------------------------------
*１行づつ下から animation02
*------------------------------*/
.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:2s;
 -ms-animation-duration:2s;
 animation-duration:2s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(10px); }
 100% { opacity: 1; -webkit-transform: translatex(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(10px); -ms-transform: translateY(10px); transform: translateY(10px);transition-timing-function: ease-out; }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);transition-timing-function: ease-out; }
}
/*------------------------------
*１行づつヨコから animaion03
*------------------------------*/
.fadeInSlide {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:2s;
 -ms-animation-duration:2s;
 animation-duration:2s;
 -webkit-animation-name: fadeInSlide;
 animation-name: fadeInSlide;
 visibility: visible !important;
}
@-webkit-keyframes fadeInSlide {
 0% { opacity: 0; -webkit-transform: translateX(-20px); }
 100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInSlide {
 0% { opacity: 0; -webkit-transform: translateX(-20px); -ms-transform: translateX(-20px); transform: translateX(-20px);transition-timing-function: ease-out; }
 100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0);transition-timing-function: ease-out; }
}

/*------------------------------
*写真にヨコからキラキラanimaion04
*------------------------------*/

.js-effect{
	position: relative;
}
.js-effect::after{
	content: '';
    display: block;
    width: 5%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
	animation-name: js-effect-animation;
 	animation-duration:3s;
	animation-timing-function: ease-out;
	animation-delay: 0.2s;
	visibility: visible !important;
}

@keyframes js-effect-animation {
 0% { opacity: 0;
	}
60%{
	opacity: 0.4;
	width:5%;
	 height:100%;
	 background-color:rgba(255,255,255,0.1);
}
 90% { opacity: 1; 
	 width: 100%;
	 height:100%;
	 background-color:rgba(255,255,255,0.25);
}
	100% { opacity: 0; 
	 width: 100%;
	height:100%;
	 background-color:rgba(255,255,255,0);
}
	
}


/*------------------------------
*ゆっくり動いていくeffect
*------------------------------*/
.js-css-slider-zoom{
    -webkit-animation: slider_zoom 9s forwards;
    animation: slider_zoom 8s ease 0s forwards ;
}
@-webkit-keyframes slider_zoom {
    0% {
        transform: scale(1.2) rotate(.0001deg)
    }
    100% {
        transform: scale(1) rotate(.0001deg)
    }
}

@keyframes slider_zoom {
    0% {
        transform: scale(1.2) rotate(.0001deg)
    }
    100% {
        transform: scale(1) rotate(.0001deg)
    }
}



.js-effect-photo{
	display: inline-block;
	opacity: 0;
	transform: translate3d(0,0,0);
	transition-timing-function: ease-out;
	transition-duration: 0.7s;
	transition-property: opacity,transform;
	}

.is-active .js-effect-photo {
	opacity: 1;
	transform: translate3d(0,0,0);
	
	transition-duration: 2s;
	
}

.js-effect-photo {
    position: relative;
}

.js-effect-photo::after,.js-effect-photo::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #000;
    opacity: 1;
    transform: scaleX(1);
    transform-origin: 100% 100%;
    transition: 1.9s opacity ease-out,1.3s transform ease;
	z-index: 100;
}

.js-effect-photo::before {
    background-color:rgba(4,4,4,0.1);
    transition-delay: .3s;
}

.js-effect-photo::after {
    background-color: rgba(4,4,4,0.25);
	transition-delay: .6s;
}

.js-effect-photo img {
    opacity: 0;
    transition: 2.5s opacity ease;
}





/*------------------
*
*nav
*
*-------------------*/
.hero{
	position: relative;

}
.header-logo__icon{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	 width: 100px;
    background-color: rgba(255,255,255,0.7);
    border: 10px;
    padding: 20px;
   transition: all 10s;
	animation-name:logo-animation;
	z-index: 50;
	animation-duration: 5s;
	animation-timing-function: ease-in-out;
	}	

@keyframes logo-animation{
	0% {
		opacity: 0;
		
	}
	100% {
		opacity: 1;
		
	}
}



.hero {
   /* padding: 0 5% 100px; */
   padding: 0 ;
   /* height: 100vh; */
}
/* 
.header{
	height:80px;
	padding: 15px 5%;
	top:0;
	left: 0;
	width: 100%;
	z-index: 20;
	background-color: rgba(255,255,255,0.8);
	box-sizing: border-box;
	
} */
/*---------------------------------
*
*header(ハンバーガーメニュー）
*
-----------------------------------*/
/* テスト */

/* .header{
	display: block;
	height:80px;
	padding: 15px 5%;
	top:0;
	left: 0;
	width: 100%;
	z-index: 20;
	background-color: rgba(255,255,255,0.8);
	box-sizing: border-box;
	transition:all 0.5s;

} */
.header {
    display: block;
	padding: 15px 5%;
    z-index: 20;
    background-color: #fff;
    box-sizing: border-box;
    position: relative;
}
header.header:before {
	content: '';
	position: absolute;
    top: 0;
    left: 0;
	width: 100%;
    height: 80px;
    background-color: #fff;
	/* opacity: 0.8; */
	z-index: -10;
    transition: all 1s;
    
}
header.header.active:before {
    height: 100vh;
	background-color: #efefef;
	z-index: -10;
	opacity: 1;
	
    
}
.header-nav{
	display: none;
	opacity: 0;
	transition:all 1s;
}
/* .header.active{
	height: 100vh;
	z-index: 100;
	background-color: #fff;
} */
.header.active .header-nav{
	display: block;
	opacity: 1;
	z-index:100;
	
}
.header.active .header-nav ul {
    padding: 100px 10%;
}


.header-logo__wrap{
	display: flex;
	justify-content: space-between;
}
.header.active animation02{
	display: block;
}
/* テストおわり */
.header-logo{
	width: 160px;
}
.header-nav li{
	/* margin-bottom: 30px; */
	font-size: 1.6rem;
	}
.cinzel{
	font-family: 'Cinzel', serif;
	font-weight: 600;
}

/* btn */
.btn-trigger{
    appearance:none;
    -webkit-appearance:none;
    overflow: hidden;
	/* position: fixed; */
    right:5%;
    z-index: 100;
    width: 40px;
    padding: 0;
    border: none;
	outline: none;
    background-color:rgba(255,255,255,0) ;
    white-space: nowrap;    
}
use{
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -ms-transition: 0.5s all;
    transition: 0.5s all;
}
.btn-trigger.active use:nth-of-type(1) {
    -webkit-transform: translateY(30px) rotate(-45deg);
    transform: translateY(30px) rotate(-45deg);
}

.btn-trigger.active use:nth-of-type(2) {
    opacity: 0;
}
.btn-trigger.active use:nth-of-type(3) {
    -webkit-transform: translateX(35px) translateY(-15px) rotate(45deg);
    transform: translateX(35px) translateY(-15px) rotate(45deg);
}
.sns{
	font-size: 3.0rem;
	color: #333;
}
.header-nav__list li{
	text-transform: uppercase;
}

/*---------------------------------
*
*navがページトップ位置まで来たらfixする
*
-----------------------------------*/
.header.fix{
	position: fixed;
	top:0;
	left:0;
	width:100%;
	opacity: 0.8;
	animation:nyuru 0.8s;
	animation-timing-function: ease-in-out;
	}
	@keyframes nyuru{
	0%{
		margin-top:-64px;
	}
	100%{
		margin-top:0;
	}
	}

.header.active.fix{
	opacity: 1;
}
/*------------------
*
*home
*
*-------------------*/

.hero {
   /* padding: 0 5% 100px; */
   padding: 0 ;
   /* height: 100vh; */
}
.eyecatch-outer{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 55.2%;
	
}
.home-eyecatch{
	position: absolute;
	top:0;
	left: 0;
	background-image: url("../images/counter02_sp.png");
	background-size: contain;
	/* background-attachment: fixed; */
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	
}
.home-text{
	position: absolute;
	bottom:1.0vw;
	left: 2.6vw;
	margin: 0;
	
}
.home-text_sentense{
	display: block;
	font-size: 1.8rem;
	font-weight: 400;
	color: #fff;
	line-height: 1.5;
	
}
@media screen and (max-width:550px)
{.home-text_sentense{
	font-size: 1.6rem;}}
.home-eyecatch::before{
	content:'';
	background-color:  rgba(9,8,8,0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	
	}
@media screen and (max-width:420px)
{.home-text_sentense{
	font-size: 1.4rem;
	line-height: 1.4;
	}
.home-eyecatch::before{
	content:'';
	background-color:  rgba(9,8,8,0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	
	}
}

@media screen and (max-width:320px)
{.home-text_sentense{
	font-size: 4.0vw;
	line-height: 1.4;
	}}


/* home（front-page.php)でのみ使用する */
.slider03 img {
	transform-origin: center top;
	transform: scale(1.2) rotate(.0001deg);
	transition: 5s ease-out;
  }
  .slider03 .slick-active img {
	transform: scale(1.0) rotate(.0001deg);
  }
  
  
  .section-contena{
	  margin:0 auto;
	  margin-top: 65px;
  }
  .access-box {
	  width: 100%;
	  margin: 0 auto;
  }
  .inner.bg{
	  position: relative;
	  z-index: 10;
  }
  section.inner.bg:before {
	  content: '';
	  background: #efefef;
	  width: 100%;
	  height: calc(100% - 1.7em);
	  position: absolute;
	  top: 0.7em;
	  /* z-index: -10; */
  }
  section.inner.bg.bg-left:before{
	  left:0;
  }
  section.inner.bg.bg-right:before{
	  right:0;
  }
  
  section.inner.bg.bg-left{
	  margin-left:0;
	  margin-right: auto;
  }
  section.inner.bg.bg-right{
	  margin-right:0;
	  margin-left: auto;
  }
  .alignleft{
	  margin-left: 0;
	  margin-right: auto;
  }
  .alignright{
	  margin-right: 0;
	  margin-left: auto;
  }
  .header .header-nav ul{
	  padding: 0;
  }
  #main{
	  margin:0;
  }
  /* heroのslick */
  li.slick-slide img.sp__img{
	  display: block;
  }
  li.slick-slide img.pc__img{
	  display: none;
  }
  
 
/*------------------
*
*section
*
*-------------------*/

.section-title{
	font-family: 'Cinzel', serif;
	font-weight: 500;
	font-size: 2.5rem;
	text-align: center;
	padding-bottom: 40px;
	letter-spacing: -3.0px;
	text-transform: uppercase;
	display: inline-block;
}
.section-text{
	font-size: 1.4rem;
	line-height: 1.8;
	
}
.section-box{
	margin-bottom: 130px;
	text-align: center;
}
.section-info{
	display: flex;
	justify-content: space-between;
	padding-top: 10px;
	line-height: 1;
}
.section-item{
	margin-bottom: 65px;
}
/*追加*/
.slider .section-item{
	margin-bottom: 0;
}
.section-title__pc{
	display: none;
}
/*------------------
*
*massage
*
*-------------------*/
.massage{
	text-align: center;
	padding-bottom: 50px;
	padding-top: 300px;
}
.massage-text{
	font-size: 1.6rem;
	padding-bottom: 15px;
	letter-spacing: -2.6px;
}

.massage-english{
	font-family: 'Open Sans Condensed', sans-serif;
	font-size:1.5rem;
	letter-spacing: -0.9px;
	text-transform: lowercase;
}
.animation0{
	position: static;
}

/*------------------
*
*menu
*
*-------------------*/
.menu-text>span{
	display: block;
}
.menu-detail{
	
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;

}
.menu-list__food{
	background-image: url("../images/food01_pc.png");
	background-size: cover;
	font-size: 1.4rem;
}
.menu-list__drink{
	background-image: url("../images/whisky02_pc.png");
	background-size: cover;
}
.menu-list__drink,.menu-list__food{
	text-align: center;
	color: #fff;
	padding: 60px 0;
	position: relative;	
	border: solid 1px;
	border-radius: 3px;
	box-shadow: 0 1px 10px rgba(0.5,0.5,0.5,0.5);
	box-sizing: border-box;
}

.menu-list__drink::before,.menu-list__food::before{
	content:'';
	background-color:  rgba(9,8,8,0.70);
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	z-index: -10;
	
}

/*アコーディオンメニュー*/
.menu-list{
	position: relative;
	width: 70%;
	margin: 0 auto;
	padding: 18px;
	box-sizing: border-box;
	border-bottom: solid 1px #fff;
	cursor: pointer;
}
.menu-list::after{
	position: absolute;
	top: 50%;
	right:20px;
	display: block;
	content: "";
	width: 8px;
	height: 8px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transform:translate(0, -50%) rotate(135deg);
	transform-origin: center;
}
.menu-list.active::after{
 	transform: translate(0, -50%) rotate(-45deg);
}

.menu-item{
	padding: 20px 0;
    width: 70%;
    margin: 0 auto;
    box-sizing: border-box;
}

.menu-item.active{
  display: block;
}

.menu-item{
	padding-bottom: 20px;
	width: 70%;
	margin: 0 auto;
}
.menu-name{
	width: 80%;
	text-align: left;
	
}
.menu-price{
	width: 20%;
	text-align: left;
}
.menu-item__content{
	display: flex;
	padding-bottom: 20px;
	font-size: 1.4rem;
	}

/*タブ*/

.p-tabs{
	display: flex;
	margin: 0;
	width: 100%;
	list-style: none;
	justify-content: center;
}

.p-tabs__item{
	margin: 0;
	width: 50%;
	padding-bottom: 20px;
}
.p-tabs a{
	font-family: 'Cinzel', serif; 
}
.p-tabs__item a{
	display: block;
	padding-bottom: 20px;
	border-bottom: solid  10px  rgba(230,224,225,1.00);
	color: #000;
	width: 100%;
	text-align: center;
 }

.p-tabs__item.active a{
	border-bottom: solid 10px #000;
	color: #000;
	width: 100%;
	text-align: center;
}

.p-tab-contents{
	padding: 8px;
	border: solid 1px #333;
}

.p-tab-contents__item{
	display: none;
}

.p-tab-contents__item.current{
	display: block;
}
.menu-box:last-of-type{
	margin-bottom: 65px;
	
}
/*------------------
*
*video
*
*-------------------*/

video{
	max-width: 100%;
}
.video-outer{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 20%;
	margin-top: 50px;
}
.video-outer:nth-of-type(3){
	margin-top: calc(50px + 30px);
	}

.video{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*------------------
*
*more
*
*-------------------*/
.bxslider02{
	width: 100%;
}
/*------------------
*
*access
*
*-------------------*/
.access-box,.access-text{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;
}

.access-text{
	font-weight: 400;
	padding-bottom: 60px;
	line-height: 1.58;
}
.access-categoly{
	display: block;
	flex: 0 0 140px;
	width: 140px;
}
.access-detail{
	display: block;
	flex: 1 1 auto;
}
.access-item{
	display: flex;
	line-height: 1.5;
	padding-bottom: 10px;
}
.access-info{
	padding-top: 30px;
	padding-bottom: 60px;
}
.maps-outer{
	width: 100%;
	height: 0;
	padding-top: 89.6%;/*タテわるヨコ＝670/600*/
	position: relative;
}
.maps{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.access-box {
	width: 90%;
	margin: 0 auto;
}
/*------------------
*
*contact
*
*-------------------*/
/*form*/
.form-box{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.1rem;
}
.form-title,.form-detail{
	display: block;
	
}

.form-parts{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	width: 100%;
	padding: 8px 0;
	border: none;
	border-bottom: solid 1px #999;
	font-size: 1.6rem;
	outline: none;
}
.form-title__radio{
	padding-right: 40px;
}
.form-parts__radio{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	border-radius: 50%;
	background-color: #c3c3c3;
	vertical-align: -6px;
	outline: none;
}
.form-parts__radio:checked{
	background-color: #07857b;
	box-shadow: 0 0 0 2px #fff,0 0 0 3px #07857b;
	
}

.form-parts__textarea{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	width: 100%;
	padding: 8px 0;
	border: none;
	border: solid 1px #999;
	font-size: 1.6rem;
}

.btn{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 12px 0;
	border: none;
	background-color: #000;
	color:#fff;
	font-size: 1.6rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 6px;
	-webkit-transition: all .3s;
    transition: all 1s;
}

.btn:hover {
    background-color: #cacaca;
    color: #000000;
	border: none;
	outline: none;
    cursor: pointer;
}
/*tableタグ追加*/
table{
  text-align: left;
  vertical-align: middle;
  width: 100%;
}
td{
  padding:0 0 85px;
}
th{
  padding: 0 0 30px 0;
}
::placeholder{
    color: #ccc;
    font-size: 1.4rem;
    font-family: 'Noto Sans JP', sans-serif;
  }

/*------------------
*
*btn-pagetop
*
*-------------------*/


.contact{
	position: relative;
        }
    
.btn-pageTop{
	display: block;
	position: absolute;
	right:0;
	bottom:100px;
	background-color:rgba(0,0,0,0.4);
	position: fixed;
	z-index: 50;
}
.btn-pageTop>a{
	position: relative;
	display: block;
	overflow: hidden;        
	width:50px;
	height: 50px;
	text-indent:100%;
	white-space:nowrap;
}        
.btn-pageTop>a:before{
	position: absolute;
	top:50%;
	left:50%;
	content: "\f106";
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-weight: 600;
	font-size:2.1rem;
	transform:translate(-140%, -50%);
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-ms-transition: all .2s;
	-o-transition: all .2s;
	transition: all .2s;
}
.btn-pageTop>a:hover:before{
	top:40%;
}  
.btn-pageTop>a{
	color: #fff;
}


/*------------------------
*
*slick slider
*
--------------------------*/

.slider {
   /* width:100%; */
   width: 65%;
    margin:0 auto;
}

.slider img {
    width:100%;
    height:auto;
}

.slick-prev, .slick-next {
	position: absolute;
   	top:50%;
    cursor: pointer;
    outline: none;
    height: 30px;
    width: 30px;
	background-color: #fff;
	opacity: 0.9;
	transform: initial;
}
.slick-prev::before,.slick-next::before{
	position: absolute;
    content: '';
	display: inline-block;
    top: 50%;
    border-top: 2px solid #666;
    border-right: 2px solid #666;
    height: 10px;
    width: 10px;
	cursor: pointer;
}

.slick-prev{
    left: 0;
   	z-index: 10;
}
.slick-prev::before{
	transform: translate(-50%,-50%) rotate(-135deg);
}
.slick-next {
    right: 0;
}
.slick-next::before{
	transform: translate(-50%,-50%) rotate(45deg);
}
/*hover時*/
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
    color: transparent;
    outline: none;
    background: #fff;
}

/*ドット*/

.slick-dots {
    position: absolute;
    bottom: -30px;
    text-align: center;
}
.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 15px;
	height: 15px;
	padding: 5px;
	cursor: pointer;
	border: 0;
	outline: none;
	background: transparent;
}
.slick-dots li button:before {
	content: '';
	line-height: 20px;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	background: #ccc;
	border-radius: 50%;
	opacity: 1;
}
.slick-dots li.slick-active button:before {
	opacity: 1;
	background: #333;
}
/*------------------
*
*footer
*
*-------------------*/

footer{
	background-color: #000;
}

.footer-text{
	padding-top: 20px;
	padding-bottom: 3px;
	font-family: 'Noto Sans JP', sans-serif;

}
.footer{
	padding: 35px 5% 20px;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.5;
}
.footer-logo{
	width:150px;
	padding-bottom: 30px;
}

#menu-fnav{
	line-height: 1.5;
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
}
#menu-fnav.menu li.menu-item{
	padding-bottom: 0!important; 
    width: auto!important; 
    margin:10px 10px 0 0;
	vertical-align: baseline;
	font-family: 'Cinzel', serif;
	text-transform: uppercase;
	font-size: 1.6rem;
}

.fa-facebook-square{
	font-size: 2.0rem;
	
}
.copyright{
	font-size: 1rem;
	padding-top: 40px;
	text-align: right;
}
/*------------------
*
*news
*
*-------------------*/	

section h2 {
    margin-bottom: 3rem;
    text-align: center;
    font-size: 1.5rem;
}
.recommended {
	clear: both;
	padding-top: 2rem;
	text-align: center;
}
.recommended .article-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.recommended a {
    display: inline-block;
    width: 100%;
    margin-bottom: 1rem;
}
.blog-date {
    color: #774623;
    text-align: center;
	padding-top: 1em;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
.blog-title {
    font-size: 1.4rem;
    text-align: center;
    color: #000;
	padding-top: 1em;
	font-weight:500;
}

main .post {
    width: 90%;
  padding: 2rem;
  text-align: center;
    margin: 0 auto;
}
main .post p{
	line-height: 1.8;
	font-size: 1.4rem;
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;

}
main .post img{
	margin: 30px auto;
}
.post-wrap{
	width: 90%;
	background-color: #efefef;
	margin: 50px auto;
}
@media screen and (min-width:769px)
{

/*------------------
*
*news
*
*-------------------*/	


.recommended {
	clear: both;
	padding-top: 2rem;
}
.recommended a {
	width: 24%;
}
main .post {
    width: 70%;
    max-width: 800px;
    padding: 2rem;
    margin: 0 auto;
	text-align: center;
}
main .post p{
	margin: 30px auto;
}
.post-wrap{
	width:80%;
}
/*------------------
*
*utility
*
*-------------------*/

.sp__img{
	display: none;	
}
.pc__img{
	display: block;
}
/* .inner{
	width: 90%;
	margin: 120px auto;
} */
.inner {
    width: 90%;
    margin: 120px auto;
   
}
.br-sp{
		display: none;
	}
.alignleft{
	margin-left: 0;
	margin-right: auto;
}
.alignright{
	margin-right: 0;
	margin-left: auto;
}
/*------------------
*
*nav
*
*-------------------*/

.header{
	height: 127px;
    width: 100%;
    padding: 44px 5% 0;
   	display: flex;
    justify-content: space-between;
    align-items: baseline;
	position: fixed;
	top:0;
	left: 0;
	z-index: 20;
	background-color: rgba(255,255,255,0.8);
	box-sizing: border-box;
}

.header-nav{
    display: block;
    position:static;
  	box-sizing: border-box; 
    width:auto;
    height: auto;
    padding: 0;
	opacity: 1;
    background-color: rgba(255,255,255,0);
}
/* テスト */
.header.active animation02{
	display: none;
}
.header-nav #menu-gnav.menu{
	height: auto;
	background-color: inherit;
}

.header ul{
	display: flex;
	align-items: baseline;
	padding:0;
}
.header-nav li{
	margin-left: 18px;
	font-size: 1.6rem;
	margin-bottom: 0;
	padding: 0;
}

/* nav */
.btn-trigger{
  display: none;
}
.header-logo{
	width: 120px;
}
.sns{
	font-size: 3.0rem;
	color: #333;
}	



/* 移植 */
.header-logo__wrap{
	display: block;
}
.btn-trigger{
	display: none;
}
.header-nav{
	display: block;
	opacity: 1;
}

.header {
    height: 127px;
    width: 100%;
    padding: 44px 5% 0;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    background-color: rgba(255,255,255,0.8);
    box-sizing: border-box;
}
/*------------------
*
*home
*
*-------------------*/
	
.hero{
	position: relative;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
    margin: 0 auto;
	}

	
.header{
	position: static;
}
.header-logo{
	width: 150px;
	}

.header-logo__icon{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	width: 180px;
    background-color: rgba(255,255,255,0.7);
    border: 20px;
    padding: 40px;
   	transition: all 10s;
	animation-name:logo-animation;
	z-index: 50;
	animation-duration: 10s;
	animation-timing-function: ease-in-out;
	}



@keyframes logo-animation{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
	}

/* 移植 */
/* heroのslick */
li.slick-slide img.sp__img{
	display: none;
}
li.slick-slide img.pc__img{
	display: block;
}
#main{
	margin:0 5%;
 }
section.inner.bg {
width: 85%;
}
/* slick横幅 */
.slider,
.slider02{
	width: 95%;
	margin: 0 auto;
}
/* innerの横幅 */
section.inner.bg {
	width: 95%;
}
/* 移植おわり */

/*eyecatch*/	
.eyecatch-outer{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 55.2%;
	margin-top: 250px;
}
.home-eyecatch{
	position: absolute;
	top:0;
	left: 0;
	background-image: url("../images/counter02_sp.png");
	background-size: cover;
	background-repeat: no-repeat;
	/* background-attachment: fixed; */
	width: 100%;
	height: 100%;
	
}
.home-text{
	position: absolute;
	bottom:4.0vw;
	left: 4.0vw;
	margin: 0;
}
.home-text_sentense{
	display: block;
	font-size: 1.6rem;
	color: #fff;
	line-height:1.8;
}

	
/*------------------
*
*message
*
*-------------------*/
.massage{
	text-align: center;
	padding-bottom: 130px;
}
.massage-text{
	font-size: 2.1rem;
	padding-bottom: 15px;
	letter-spacing: -2.5px;
}

.massage-english{
	font-family: 'Open Sans Condensed';
	font-size:1.6rem;
	letter-spacing: -1px;
}
/*------------------
*
*section
*
*-------------------*/

.section-contena{
	display: flex;
	justify-content: space-between;
	align-items: start;
	flex-wrap: nowrap;
	margin-top: 65px;
}
.section-title__pc{
	display: block;
	width: 40%;
	position: sticky;
	top: 150px;
	left: 0;
}
.section-contena .bx-wrapper{
	width: 60%;
	margin: 0 auto;
}
.section-menu__list{
	width: 60%;
	margin: 0 auto;
}

.section-text{
	font-size: 1.4rem;
	line-height: 1.8;	
}
.section-box{
	margin-bottom: 130px;
	text-align: center;
}
.section-info{
	display: flex;
	justify-content: space-between;
	padding-top: 10px;
	line-height: 1;
}
.section-item{
	margin-bottom: 65px;
}

/*------------------
*
*access
*
*-------------------*/
.access-box{
	width: 60%;
}
.access-box,.access-text{
	font-size: 1.4rem;
}



/*------------------
*
*contact
*
*-------------------*/

.form-box{
	font-size: 1.4rem;
	width: 60%;
}


/*------------------
*
*video
*
*-------------------*/		
.video-outer{
	width: 60%;
	margin-left: 40%;
	
}
.alignleft{
	margin-right:40%;
	margin-left: 0;
}
.alignright{
	margin-left: 40%;
	margin-right: 0;
	
}
/*------------------
*
*contact
*
*-------------------*/	
/* @media screen and (min-width:999px){ 
.inner{
	width: 90%;
	margin: 120px auto;
}
} */
}