@charset "utf-8";
/* CSS Document */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section, menu,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background-color: transparent;
}
html,body{
  margin: 0;
    padding: 0;
    height: 100%;
}
html{
  /*font-size:62.5%;*/
  	font-size: calc(100vw / 128);
}
body {
  	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  	/* font-family: Noto Sans,NotoSansCJKjp,Hiragino Sans,Hiragino Kaku Gothic ProN,"游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif; */
  	/* font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; */
  	font-size: 1.5rem;
  	line-height: 1;
}
body::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color:#fff;  /* 背景カラー */
  z-index: 9999;  /* 一番手前に */
  pointer-events: none;  /* 他の要素にアクセス可能にするためにポインターイベントは無効に */
  opacity: 0;  /* 初期値 : 透過状態 */
  -webkit-transition: opacity .8s ease;  /* アニメーション時間は 0.8秒 */
  transition: opacity .8s ease;
}
article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration:none;
}

table{
  border-collapse: collapse;
  border-spacing:0;
}

@keyframes anime {
  0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
        transform: scale(1.05) ;
         z-index:-1;
    }
    100% { opacity: 0 }
}

@-webkit-keyframes mvslideAnime {
  0% {
    -webkit-transform: translate3d(0px, 0, 0);
    transform: translate3d(0px, 0, 0);
  }

  100% {
    -webkit-transform: translate3d(-50px, 0, 0);
    transform: translate3d(-50px, 0, 0);
  }
}
@keyframes mvslideAnime {
  0% {
    -webkit-transform: translate3d(0px, 0, 0);
    transform: translate3d(0px, 0, 0);
  }

  100% {
    -webkit-transform: translate3d(-50px, 0, 0);
    transform: translate3d(-50px, 0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes color { 
    0% {
    -webkit-filter: grayscale(100%);
    -webkit-transform: scale(1.07);
      -moz-transform: scale(1.07);
      -o-transform: scale(1.07);
      -ms-transform: scale(1.07);
      transform: scale(1.07);
    }
    100% {
    -webkit-filter: grayscale(0%);
    -webkit-transform: scale(1.01);
      -moz-transform: scale(1.01);
      -o-transform: scale(1.01);
      -ms-transform: scale(1.01);
      transform: scale(1.01);
    }
}

@-webkit-keyframes color {
    0% {-webkit-filter: grayscale(100%);}
    100% {-webkit-filter: grayscale(0%);}
}
.none{
  display:none !important;
}

@keyframes blur {
  0%     {text-shadow:  0 0 100px #fff; opacity:0;}
  5%     {text-shadow:  0 0 90px #fff;}
  15%    {opacity: 1; text-shadow:0px 0px 27px rgba(0, 0, 0, 0.2), 0px 0px 25px rgba(0,0,0,0.2); color:#fff;}
  30%    {text-shadow:0px 0px 20px rgba(0, 0, 0, 0.3), 0px 0px 18px rgba(0,0,0,0.3); color:#fff;}
  50%    {text-shadow:0px 0px 15px rgba(0, 0, 0, 0.5), 0px 0px 13px rgba(0,0,0,0.5); color:#fff;}
  80%    {text-shadow:0px 0px 12px rgba(0, 0, 0, 0.8), 0px 0px 9px rgba(0,0,0,0.8); color:#fff;}
  100%   {opacity: 1; text-shadow:0px 0px 9px #000, 0px 0px 8px #000, 0px 0px 7px #000; color:#fff;}
}
.center{
	text-align:center !important;
}

@media screen and (min-width: 600px) {
	.btn {
		display: none;
	}

	.menu {
		/* メニューを横に */
		display: flex;
		flex-direction: row;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100px;
	}
}
@media (min-width: 1101px){
	#wrapper{
		position: relative;
		width: 100%;
		height: auto !important;
		min-height: 100vh;
		overflow-x:hidden;
	}
	.normal_width{
		max-width: 70%;
	}
	.wide_width{
		/* max-width: 80%; */
	}
	.full_width{
		max-width: 100%;
	}
	header{
		position:fixed;
		width: 100px;
		height: 100vh;
		z-index: 20;
		top:0;
		left:0;
		background-color: #fff;
		box-sizing: border-box;
		-webkit-box-shadow: 1px 0 3px rgba(0, 0, 0, .1);
		box-shadow: 1px 0 3px rgba(0, 0, 0, .1);
	}
	header #logo{
		display:block;
		width:100%;
		position:relative;
		display: -webkit-flex;
		display: flex;
		justify-content: center;
		align-items: center;
		background-size: cover;
		background-position: center;
	}
	
	header #logo{
		display:block;
		width:100px;
		height:75px;
		position:absolute;
		top: 50%;
		left: 50%;
		margin: auto;
		padding: 0;
		width: -50px;
		height: -37.5px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	
	header #logo a{
		position:relative;
		display:block;
		width:100%;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
		z-index: 1;
		opacity:1;
	}
	header #logo a:hover{
		opacity:0.85;
	}
	header #logo a img{
		width:100%;
	}
	header .drawer{
	 	display: none;
	 	flex-direction: row;
	 	align-items: center;
	 	justify-content: space-between;
	 	position: relative;
	 	height: 70px;
	 	padding: 0 1em;
	}
	/*ナビのスタイル*/
nav.NavMenu{
	        position: fixed;
	        z-index: 12;
	        top: 0;
	        left: 100px;
	        background: #fff;
	        text-align: center;
	        width: 280px;
	        height: 100vh;
	        /* padding: 17px 0 15px; */
	        display: none;
	        }
.NavMenu_inner{
	position:absolute;
	left: 0;
	width: 280px;
	height:100%;
	box-sizing: border-box;
	padding:55px 37px 17px 11px;
}
p.nav_social{
	width:100%;
	margin:17px auto;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap:wrap;
}
p.nav_social span{
    display:block;
    width:100%;
    text-align:center;
    margin:7px 0;
}
p.nav_social span a{
}	

p.nav_social span a i{
	display:block;
	width:100%;
	margin:0 auto;
	font-size:2rem;
	opacity:1;
	transition:all .5s ease 0s;
    -moz-transition:all .5s ease 0s;
	-webkit-transition:all .5s ease 0s;
}
p.nav_social span a:hover i{
	opacity:0.8;
	transition:all .5s ease 0s;
    -moz-transition:all .5s ease 0s;
	-webkit-transition:all .5s ease 0s;
}
}
.NavMenu_shopinfo{
	display:block;
	margin:17px 0;
}
.NavMenu_shopinfo p{
	text-align:left;
	color:#616161;
	font-size:1.3rem;
	margin-bottom:7px;
	line-height:1.4;
}

nav.NavMenu ul{
width: 100%;
margin: 0 auto;
padding: 0;
position: relative;
}

nav.NavMenu ul li{
list-style-type: none;
width: 100%;
padding-bottom: 0px;
}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
}

nav.NavMenu ul li a{
display: block;
color: #1f1f1f;
padding: 11px 0;
font-weight: normal;
font-size: 1.5rem;
text-align:left;
}

/*ボタンのスタイル*/
.Toggle {
position: fixed;
left:24px;
top: 3px;
width: 50px;
height: 50px;
cursor: pointer;
z-index: 13;
display: block;
}

.Toggle span {
display: block;
position: absolute;
width: 40px;
border-bottom: solid 1px #836f5b;
-webkit-transition: .35s ease-in-out;
-moz-transition: .35s ease-in-out;
transition: .35s ease-in-out;
left: 6px;
}

.Toggle span:nth-child(1) {
top: 9px;
}

.Toggle span:nth-child(2) {
top: 20px;
}

.Toggle span:nth-child(3) {
top: 31px;
}

.Toggle.active span:nth-child(1) {
top: 18px;
left: 6px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
border-bottom: solid 1px #535353;
}
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 18px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
border-bottom: solid 1px #535353;
}
	
	#menu_bottom_sp{
		display:none;
	}
	header #menu_bottom{
		display:block;
		width:100%;
		position:absolute;
		left:0;
		bottom:0;
		box-sizing:border-box;
		padding: 0;
		/* background: #836f5b; */
	}
	header #menu_bottom a#menu_mail{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: center;
		align-content:center;
		margin: 0 auto;
		padding: 29px 10%;
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
		position: relative;
		opacity:1;
	}
	header #menu_bottom a#menu_mail:hover{
		opacity:0.8;
	}
	header #menu_bottom a#menu_mail span{
		color:#fff;
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
	}
	header #menu_bottom a#menu_mail:hover span{
		color:#836f5b;
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
	}
	header #menu_bottom a#menu_mail span:before{
		content:"";
		position: absolute;
		left: 50%;
		top: 50%;
		margin-top: -12px;
		margin-left:-12px;
		background-repeat:no-repeat;
		background-size:100%;
		background-position:center;
		width: 24px;
		height: 24px;
	}
	header #menu_bottom a#menu_tel span:before{
		background-image:url(./img/icon-tel.png);
	}
	header #menu_bottom a#menu_mail span:before{
		background-image:url(./img/mail_w.png);
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
	}
	header #menu_bottom a#menu_mail:hover span:before{
		opacity:0.7;
	}
	header #menu_bottom dl{
		width:100%;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-bottom: 5%;
		box-sizing: border-box;
		padding: 0 8%;
	}
	header #menu_bottom dl dt{
		width: 40%;
		text-align: left;
		padding: 3px 10px 3px 0;
		box-sizing:border-box;
	}
	header #menu_bottom dl dd{
		width: 58%;
		text-align: left;
		padding: 3px 0;
		box-sizing:border-box;
	}
	header #menu_bottom dl dt p{
		color:#fff;
		font-size:1.1rem;
		letter-spacing:0.13rem;
		line-height:16px;
	}
	header #menu_bottom dl dd p{
		color:#fff;
		font-size:1.3rem;
		letter-spacing:0.13rem;
		line-height:16px;
	}
	header #menu_bottom dl dt p:after{
		display:inline-block;
		font-size:1.1rem;
		line-height:16px;
	}
	
	header #menu_bottom a i{
		color: #5b5b5b;
	}
	.pc_none{
	display:none !important;
	}
	.inquiry_link{
		display:none;
		position:relative;
		width:100%;
		background-color: #fcfcfc;
		margin: 0 auto;
		padding: 10% 0;
		background-image:url(./img/inq_back.jpg);
		background-size:cover;
		background-position: center bottom 20%;
	}
	.screen{
		position:relative;
		display:block;
		width: 80%;
		margin: 0 auto ;
		/* padding: 5%; */
		z-index:0;
		
	}
	.screen:before{
		content:"";
		position:absolute;
		width:100%;
		height:100%;
		top:0;
		left:0;
		z-index:-2;
	}
	.screen:after{
		/* content:""; */
		position:absolute;
		width:calc(100% - 28px);
		height:calc(100% - 28px);
		top:14px;
		left:14px;
		/* border:1px solid #fff; */
		z-index:-1;
	}
	p.inq_title{
		color:#fff;
		text-align: left;
		display:none;
		margin:0 auto;
		text-shadow:0px 0px 3px #000, 0px 0px 2px #000, 0px 0px 1px #000;
	}
	p.inq_title span.ja{
		display:block;
		font-size:1.7rem;
	}
	p.inq_title span.en{
		display:block;
	/* font-family: 'Spectral SC', serif; */
		font-size:3rem;
		text-transform:capitalize;
		line-height:1.4;
		margin-bottom:7px;
	}
	p.inq_txt{
		font-size: 1.7rem;
		line-height: 2;
		color:#fff;
		text-align: center;
		text-shadow:0px 0px 2px #000, 0px 0px 2px #000, 0px 0px 2px #000, 0px 0px 2px #000, 0px 0px 2px #000, 0px 0px 2px #000;
	}
	.screen a{
		display:block;
		width:250px;
		height:50px;
		background-color: #1f1f1f;
		border: 1px solid #1f1f1f;
		text-align: center;
		margin: 37px auto 0;
		border-radius: 25px;
		line-height:50px;
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
	}
	.screen a:hover{
		opacity:0.8;
	}
	.screen a i{
		color:#fff;
		font-size:1.7rem;
		margin-right:11px;
		line-height:50px;
	}
	.screen a span{
		color:#fff;
		line-height:50px;
	}
	.bottom_links{
		position:relative;
		width:100%;
		padding:35px 0;
		background-color:#efefef;
	}
	ul.bottom_tour_list{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: stretch;
		width: 85%;
		margin:35px auto;
		box-sizing:border-box;
	}

	ul.bottom_tour_list li{
		width:32%;
		margin-bottom:1%;
		box-sizing:border-box;
	}
	ul.bottom_tour_list li a{
		position:relative;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		background-color: #fff;
		border:1px solid #efefef;
		-webkit-transition:all .5s ease;
		-moz-transition:all .5s ease;
		-ms-transition:all .5s ease;
		transition:all .5s ease;
	}
	ul.bottom_tour_list li a:hover, ul.bottom_tour_list li a.current{
		border-color: #929292;
		box-shadow: 0 0 0 1px #929292;
	}
	ul.bottom_tour_list li a .thumb{
		display:block;
		width: 28%;
		background-size:cover;
		background-position:center;
	}
	ul.bottom_tour_list li a .thumb:after{
	content:"";
	display: block;
	padding-top: 88.5%; /* 高さを幅の75%に固定 */
	}
	ul.bottom_tour_list li a p{
		display:block;
		width: 68%;
		box-sizing:border-box;
		padding: 15px 15px 15px 0;
	}
	ul.bottom_tour_list li a p span{
		position:relative;
		overflow: hidden;
		color:#000;
		font-weight:bold;
		font-size: 1.3rem;
		padding: 0 0 0 0;
		-webkit-transition:all .3s ease;
		-moz-transition:all .3s ease;
		-ms-transition:all .3s ease;
		transition:all .3s ease;
	}
	ul.bottom_tour_list li a:hover p span{
		color:#4c4c4c;
	}
	
	footer{
		width: 100%;
		position: relative;
		background: #ffffff;
		padding:55px 0;
		bottom: 0;
		box-sizing: border-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: center;
		align-content:stretch;
	}
	
	#page_top{
		position:fixed;
		right:0;
		bottom:0;
		display:block;
		background-color: #424242;
		color:#fff;
		width: 50px;
		height: 50px;
	}
	#page_top i{
		display:block;
		text-align:center;
		line-height:50px;
	}
	.footer_info{
		width: 100%;
		display:flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		color:#000;
		box-sizing: border-box;
		padding: 17px 0 37px;
	}
	.footer_logo{
		padding:0 0;
		display:block;
		/* width:100px; */
	}
	.footer_logo figure img{
		display:block;
		width:170px;
		height:auto;
	}
	.footer_right{
		/* width:calc(100% - 170px); */
	}
	.footer_right p{
		font-size:1.3rem !important;
		line-height:1.3;
		color:#616161;
	}
	.footer_info a{
		display:block;
		
	}
	.footer_info a img{
		display:block;
		width: 230px;
		margin: 0 auto 7px 0;
	}
	.footer_info p{
		margin: 0 0 9px;
	}
	.footer_info p.footer_address{
		font-size:1.3rem;
		display:inline-block;
	}
	
	.footer_info p.footer_telfax{
		font-size:1.3rem;
		display: block;
		/* margin:7px 0; */
	}
	.footer_info p.footer_telfax span.sl{
		font-size:1.3rem;
		margin:0 7px;
		display:inline-block;
	}
	p.footer_hours{
		font-size:1.3rem;
		display:block;
	}
	ul.footer_subpage{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		width:100%;
		padding: 17px;
		box-sizing:border-box;
		border-top: 1px solid #ccc;
		color:#000;
	}
	ul.footer_subpage li{
		/*width:33%;*/
		display:inline-block;
		box-sizing:border-box;
	}
	ul.footer_subpage li a{
		position:relative;
		display:block;
		overflow: hidden;
		padding: 0 0 5px 0;
		font-size:1.3rem;
	}
ul.footer_subpage li a span{
		position:relative;
		/* font-weight:bold; */
		overflow:hidden;
		padding-left:9px;
		color:#000;
	}
	ul.footer_subpage li a span:before{
		font-family:FontAwesome;
		content:"\f105";
		position:absolute;
		left:0;
		top:1px;
	}
	ul.footer_subpage li a span:after{
		content:"";
		position:absolute;
		width:100%;
		height:1px;
		background-color:#fff;
		bottom: -3px;
		left:0;
		transform:translateX(-100%);
		-webkit-transition:all .3s ease;
		-moz-transition:all .3s ease;
		-ms-transition:all .3s ease;
		transition:all .3s ease;
	}
	ul.footer_subpage li a:hover span:after{
		transform:translateX(0);
	}
	.footer_map{
		width:100%;
		box-sizing: border-box;
		padding: 00;
	}
	.footer_map ul.footer_page{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		padding: 0;
	}
	.footer_map ul.footer_page li{
		width: ;
		display:inline-block;
		margin: 0 3.3333% 11px 0;
	}
	
	.footer_map ul.footer_page li a{
		color: #000;
		position:relative;
		display:block;
		overflow: hidden;
		padding: 0 0 7px 0;
		font-size:1.2rem;
	}
	.footer_map ul.footer_page li:last-child a:after{
		content:"";
	}
	.footer_map ul.footer_page li a span{
		position:relative;
		overflow: hidden;
		color:#000;
		font-size:1.3rem;
	}
	ul.footer_page li a span:before{
		content:"";
		position:absolute;
		width:100%;
		height:1px;
		background-color:#fff;
		bottom: -3px;
		left:0;
		transform:translateX(-100%);
		-webkit-transition:all .3s ease;
		-moz-transition:all .3s ease;
		-ms-transition:all .3s ease;
		transition:all .3s ease;
	}
	ul.footer_page li a:hover span:before{
		transform:translateX(0);
	}
	footer .copy{
		display:block;
		color: #949494;
		font-size:1.1rem;
		margin: 17px 0 0;
	}
	#container{
		/* padding-bottom: 50px; */
	}
	main{
		width: 100%;
		margin-left:auto;
		margin-right: 0;
		position: relative;
	}
	main:after{
		content:"";
		clear:both;
		display:block;
	}
	#image{
		position: fixed !important;
		top: 0;
		left: 100px;
		height: 100vh;
		box-sizing: border-box;
		width: calc(50% - 50px);
		color: #ffffff;
		/* opacity: 0; */
	}
	#ps_slide{
	position:relative;
	width: 100%;
	height: 100vh;
	z-index:-1;
	overflow: hidden;
}
	.static_image{
	background-size:cover;
	/*background-attachment: fixed;*/
	background-position:center;
}
.top_slide{
	position: relative;
	width:100%;
	height: 100vh;
	background-size:cover;
	background-position:center;
	overflow:hidden;
}
	#content{
		width: calc(50% - 50px);
		min-height: 100vh;
		float: right;
		/* margin-right: 0; */
		margin-left: auto;
		position: relative;
		box-sizing: border-box;
		padding: 0 5%;
	}
	.page{
		width: calc(80% - 100px) !important;
		margin:0 auto !important;
		padding:75px 0 !important;
		float: none !important;
	}
	.flex_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.flex_box:nth-child(odd){
     -webkit-flex-direction: row; /* Safari */
      flex-direction:         row;
  }
.flex_box:nth-child(even){
     -webkit-flex-direction: row-reverse; /* Safari */
      flex-direction:         row-reverse;
  }
#top,#intro{
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
    width:100%;
    height: calc(100vh - 70px);
    background-size:cover;
}
#top{
	background-image:url(./img/top_back.jpg);
	background-position:bottom center;
	background-attachment: fixed;
}
	.section_inner{
		width: 100%;
		margin:0 auto;
		padding: 0 0;
	}
.section::before,.section::after{
	content:"";
	clear:both;
	display:table;
}

.text_box{
  position:relative;
  width: 55%;
  margin:auto;
}
.text_box h2{
  text-align:center;
  font-size: 3rem;
  line-height: 6rem;
  letter-spacing: .1em;
  margin-bottom: .8em;
}
.text_box p{
   font-size: 1.7rem;
   line-height: 3.4rem;	
}
#float_bar{
	position:relative;
}
#news_float ul{
	display: -webkit-box;
  	display: -ms-flexbox;
  	display: flex;
	width:980px;
	margin:-35px auto 57px;
}
#news_float ul li{
	width:35%;
	margin:0 1%;
	background:#fff;
	border-bottom:1px solid #eaeaea;
	-webkit-box-shadow:-1px 4px 74px -16px rgba(0,0,0,.3);
	box-shadow:-1px 4px 74px -16px rgba(0,0,0,.3);
}
#news_float ul li a{
	display:block;
	box-sizing:border-box;
	padding:17px 17px;
	color: #000;
}
#news_float ul li a span.date{
	display:block;
	font-size:1.2rem;
	margin-bottom:7px;
}
#news_float ul li a span.title{
	display:block;
	font-size:1.5rem;
}
#top_text{
	width:100%;
	height:100vh;
	display:flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
}
.mess_large{
	text-align:center !important;
}
.mess_large,.post_head h2{
	display:block;
	margin-bottom:37px;
	text-align: left;
	font-size: 1.7rem;
	font-weight:normal;
	text-align: left !important;
}
.mess_large span,.post_head h2 span{
	display:block;
	font-size: 2.3rem;
	margin-bottom:11px;
	font-family:Quicksand,sans-serif;
}
.mess_large hr{
	display:none;
}
.mess_text{
    text-align: left;
    font-size:1.3rem;
    font-weight:bold;
    line-height:2.2;
}

#news_section{
	background-color:#fff;
	display:none !important;
}
#news{
	position:relative;
	width:100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	display:none !important;
	justify-content: space-around;
	align-items: stretch;
	align-content: flex-start;
	flex-wrap: wrap;
	}
	.post_head{
		width: 100%;
	}
	a.bth{
	width:180px;
	display: block;
	padding: 9px 0;
	line-height: 1.8;
	text-align: center;
	position: relative;
	border: 1px solid #ddd;
	margin: 37px auto;
}
a.bth span{
	font-size:1.3rem;
	color:#000;
}
	.post_list{
		width: 100%;
	}
	ul.news_list{
	list-style:none;
	margin:0;
}
ul.news_list li a{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	padding: 17px 0;
	font-size: 1.3em;
	/* border-bottom: 1px dotted #e3e3e3; */
	-webkit-transition:all 0.5s ease-in;
	transition:all 0.5s ease-in;
}
ul.news_list li:first-child a{
	padding-top:0;
}
ul.news_list li:last-child a{
	border-bottom:none;
}
ul.news_list li a:hover{
	/*background-color:#efefef;*/
	-webkit-transition:all 0.5s ease-in;
	transition:all 0.5s ease-in;
}
ul.news_list li a .news_date{
	display: block;
	width: 90px;
	padding-right: 19px;
	letter-spacing: 1px;
	color:#000;
	font-size:15px;
	font-size:1.5rem;
	/* font-weight: bold; */
	line-height: 1.6;
}
ul.news_list li a .news_cat {
	display: none;
	width: 90px;
	/* padding-right: 23px; */
	text-align: center;
}
ul.news_list li a .news_cat span{
	display:block;
	width:90px;
	font-size:12px;
	font-size:1.2rem;
	line-height: 24px;
	text-align:center;
	letter-spacing:1px;
	color:#fff;
	background-color:#ccc;
}
ul.news_list li a .news_title {
	display: block;
	width: calc(100% - 109px);
	color:#000;
	line-height: 1.6;
	font-size:15px;
	font-size:1.5rem;
	-webkit-transition:all 0.5s ease-in;
	transition:all 0.5s ease-in;
}
ul.news_list li a:hover .news_title{
	/*background-color:#efefef;*/
	text-decoration:underline;
}
ul.news_list li dl:after{
	display:table;
	content:"";
	clear:both;
}
/*content_link*/
.content_link{
	position:relative;
	width:100%;
	min-heght:510px;
	margin:0 auto;
	box-sizing:border-box;
	padding: 75px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	z-index:0;
}
.content_link:before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-size:cover;
	background-position: center;
	z-index:-4;
}
.content_link:after{
	/* content:""; */
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-image: linear-gradient(45deg, rgba(0,0,0,.0) 50%, rgba(0,0,0,.3) 50%);
	background-size: 3px 3px;
	z-index: -1;
}
.content_link_img {
    position: absolute !important;
    width: 65%;
    height:100%;
    top:0;
    left:0;
    overflow: hidden;
}
.slide_img {
    z-index: -3;
    opacity: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 36s 0s infinite;
    animation: anime 36s 0s infinite;
}
.slide_img:nth-of-type(2) {
      -webkit-animation-delay: 6s;
      animation-delay: 6s; }

    .slide_img:nth-of-type(3) {
      -webkit-animation-delay: 12s;
      animation-delay: 12s; }

    .slide_img:nth-of-type(4) {
      -webkit-animation-delay: 18s;
      animation-delay: 18s; }

    .slide_img:nth-of-type(5) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .slide_img:nth-of-type(6) {
      -webkit-animation-delay: 30s;
      animation-delay: 30s; }
	#slide_img01{
		background-image:url(./img/slide_img01.jpg);
	}
	#slide_img02{
		background-image:url(./img/slide_img02.jpg);
	}
	#slide_img03{
		background-image:url(./img/slide_img03.jpg);
	}
	#slide_img04{
		background-image:url(./img/slide_img04.jpg);
	}
	#slide_img05{
		background-image:url(./img/slide_img05.jpg);
	}
	#slide_img06{
		background-image:url(./img/slide_img06.jpg);
	}
.content_link_txt{
	width: 50%;
	z-index:2;
	margin: 0 0 0 auto;
	box-sizing: border-box;
	padding: 0 5% 0 0;
}
.content_link_txt h3{
	display:block;
	color: #000;
	line-height: 1;
	text-align: right;
	text-shadow:0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff, 0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff;
	margin-bottom:27px;
}
.content_link_txt h3 span.en{
	/* font-family: 'Spectral SC', serif; */
	font-size: 3rem;
	/* line-height: 1.4; */
	font-weight: 400;
	display:block;
}
.content_link_txt h3 span.ja{
	font-size: 1.7rem;
}
.content_link_txt p{
	font-size: 1.5rem;
	font-weight:bold;
	line-height: 2.2;
	color: #000;
	text-align: right;
	text-shadow:0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff, 0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff;
}
.content_link_txt a{
	display: block;
	width:220px;
	height: 50px;
	line-height: 50px;
	margin: 37px 0 0 auto;
	color: #FFFFFF;
	border: 1px solid #1f1f1f;
	text-align: center;
	font-size: 1.5rem;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	background: #1f1f1f;
	border-radius: 25px;
}
.content_link_txt a:hover{
	color: #242424;
  background-color: #FFFFFF;
}
/*event_link*/
.event_link{
	position:relative;
	width:100%;
	min-height: 510px;
	margin:0 auto;
	box-sizing:border-box;
	padding: 75px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	z-index:0;
}
.event_link:before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-size:cover;
	background-position: center;
	z-index:-4;
}
.event_link:after{
	/* content:""; */
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-image: linear-gradient(45deg, rgba(0,0,0,.0) 50%, rgba(0,0,0,.3) 50%);
	background-size: 3px 3px;
	z-index: -1;
}
.event_link_img {
    position: absolute !important;
    width: 65%;
    height:100%;
    top:0;
    right: 0;
    background-image:url(./img/sub_links01.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}
.event_link_txt{
	width: 50%;
	z-index:2;
	margin: 0 auto 0 0;
	box-sizing: border-box;
	padding: 0 0 0 5%;
}
.event_link_txt h3{
	display:block;
	color: #000;
	line-height: 1;
	text-align: left;
	text-shadow:0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff, 0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff;
	margin-bottom:27px;
}
.event_link_txt h3 span.en{
	/* font-family: 'Spectral SC', serif; */
	font-size: 3rem;
	/* line-height: 1.4; */
	font-weight: 400;
	display:block;
}
.event_link_txt h3 span.ja{
	font-size: 1.7rem;
}
.event_link_txt p{
	font-size: 1.5rem;
	font-weight:bold;
	line-height: 2.2;
	color: #000;
	text-align: left;
	text-shadow:0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff, 0px 0px 2px #ffffff,0px 0px 2px #ffffff,0px 0px 2px #fff;
}
.event_link_txt a{
	display: block;
	width:220px;
	height: 50px;
	line-height: 50px;
	margin: 37px auto 0 0;
	color: #FFFFFF;
	border: 1px solid #1f1f1f;
	text-align: center;
	font-size: 1.5rem;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	background: #1f1f1f;
	border-radius: 25px;
}
.event_link_txt a:hover{
	color: #242424;
  background-color: #FFFFFF;
}
/*sub_links*/
.sub_links{
	position:relative;
	width:100%;
	margin: 75px auto;
	box-sizing:border-box;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	z-index:0;
}
.sub_links a{
	position:relative;
	width:33.3333%;
	background-size:cover;
	background-position:center;
	background-color:#ccc;
	box-sizing:border-box;
	padding:3%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	z-index:0;
	overflow:hidden;
}
.sub_links a:before{
	display:block;
	content:"";
	padding-top:80%;
	z-index:-1;
}
.sub_links a:after{
	display:block;
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:-100%;
	background:rgba(0,0,0,0.3);
	z-index:1;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}
.sub_links a:nth-child(1){
	background-image:url(./img/sub_links02.jpg);
}
.sub_links a:nth-child(2){
	background-image:url(./img/sub_links03.jpg);
}
.sub_links a:hover:after{
	left:0;
}
.sub_links a p{
	display:block;
	width:100%;
	color:#fff;
	line-height: 1;
	text-align: center;
	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
	z-index:3;
}
.sub_links a p span.en{
	font-size: 3rem;
	font-weight: 400;
	display:block;
	margin-bottom:5px;
}
.sub_links a p span.ja{
	font-size: 1.5rem;
}

/*パンくず*/
#breadcrumbs{
	background: #525252;
	width: 100%;
	height: 40px;
	position: relative;
	overflow:hidden;
	display:none;
	z-index: 1;
	box-sizing:border-box;
}
#breadcrumbs ul{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	box-sizing:border-box;
	/* padding:0 35px; */
	width:100%;
	line-height: 40px;
	color: #aaa;
	list-style:none;
}
#breadcrumbs ul li{
	font-size: 12px;
    font-size: 1.2rem;
}
#breadcrumbs ul li a{
    display: block;
    /*background: #3b3b3b;*/
    padding-right: 17px;
    height: 40px;
    margin-right: 27px;
    position: relative;
    text-decoration: none;
    color: #efefef;
    letter-spacing: 0.15rem;
    font-size: 12px;
    font-size: 1.2rem;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
}
#breadcrumbs ul li.current{ 
    color:#efefef;
}

#breadcrumbs ul li a:last-of-type {margin-right: 43px;}
#breadcrumbs ul li a:before {
    content: "";
    display: none;
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: -40px;
    border: 20px solid transparent;
    border-color: #3b3b3b;
    border-left-color: transparent;
    transition: all 0.3s;
  	-moz-transition: all 0.3s;
  	-webkit-transition: all 0.3s;
  	-ms-transition: all 0.3s;
}
#breadcrumbs ul li a:after {
    content: "";
    display: none;
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    right: -40px;
    border: 20px solid transparent;
    border-left-color: #3b3b3b;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
}
#breadcrumbs ul li:first-child a:first-child{
	padding-left:25px;
}
#breadcrumbs ul li:first-child a:before{
	display:none;
}
#breadcrumbs ul li:first-child a span{
	/* text-indent:100%; */
	/* white-space:nowrap; */
	/* overflow:hidden; */
}
#breadcrumbs ul li:first-child a span:before{
	content: "\f015";
  	font-family: FontAwesome;
	display:inline-block;
	margin-right:3px;
}
#breadcrumbs ul li a:hover {
    background: #474747;
    color: #fff;
    text-decoration: none;
}
#breadcrumbs ul li a:hover:before {
    border-color: #474747;
    border-left-color: transparent;
}
#breadcrumbs ul li a:hover:after { border-left-color: #474747 }
/*コンテンツ上部-共通*/
#index_top {
	width: 100%;
	position: relative;
	height: 100vh;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	background-position: center bottom;
	z-index: -3;
	background-color: #000;
}
#main_top {
	width: 100%;
	position: relative;
	height: calc( 100vh - 40px );
	overflow: hidden;
	/* display: flex; */
	/* flex-direction: column; */
	/* justify-content: center; */
	/* align-items: center; */
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	background-position: center;
	z-index: -3;
	background-color: #000;
}
#video-background,
#video-overlay {
  /* position: fixed; */
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
}
 
#video-background {
  z-index: -2;
}
 
#video-overlay {
  background-image: linear-gradient(45deg, rgba(0,0,0,.3) 50%, rgba(0,0,0,.5) 50%);
  background-size: 3px 3px;
  z-index: -1;
}
#index_top #video-overlay {
  background-image: linear-gradient(45deg, rgba(0,0,0,.1) 10%, rgba(0,0,0,.1) 10%);
  background-size: 3px 3px;
  z-index: -1;
}
.archive_tour_top{
	background-image:url(./img/archive_tour_top.jpg);
}
.small_top {
	width: 100%;
	position: relative;
	height: 380px !important;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-image:url(./img/about_top.jpg);
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	background-position: left 0px bottom -90px !important;
	background-color: #000;
}
.small_top:before{
	content:"";
	display:block;
	padding-top:35%;
}
.small_top #main_top_text{
	position:absolute;
	width:100%;
	height: 100%;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	/*background-image: linear-gradient(45deg, rgba(0,0,0,.1) 10%, rgba(0,0,0,.1) 10%);
  	background-size: 3px 3px;
  	z-index: 1;*/
}
.small_top #main_top_text h1{
	color:#fff;
	text-align: left;
	font-size: 3rem;
	line-height: 6rem;
	letter-spacing: .1em;
	text-align:center;
	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
}
.small_top #main_top_text h1 span{
	display:block;
}
.small_top #main_top_text h1 span.en{
	font-family: 'Spectral SC', serif;
	font-size: 3.5rem;
	line-height: 1.4;
	font-weight: 400;
}
.small_top #main_top_text h1 span.ja{
	font-size: 1.7rem;
   	line-height: 1;	
}
.activity_top{
	background-image: url(../img/);
	height: calc(100vh - 46px) !important;
}
#index_top #main_top_text {
	position: absolute;
	width: 100%;
	height: 100%;
}
#index_top #main_top_text h1{
	 position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);	
}
#index_top #main_top_text h1 span{
	display:block;
	color:#fff;
}
#index_top #main_top_text h1 span.en{
	/* font-family: 'Spectral SC', serif; */
	font-size: 4.2rem;
	line-height: 1.4;
	letter-spacing: .1em;
	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
}
#index_top #main_top_text h1 span.ja{
	font-size: 1.7rem;
   	line-height: 3.4rem;
   	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
}
#index_top #main_top_text p{
	position:absolute;
	right:5%;
	bottom:5%;
	text-align:right;
}
#index_top #main_top_text p span{
	display:block;
}
#index_top #main_top_text p span strong{
	color:#000;
	background-color:#fff;
	font-size: 1.7rem;
	/* line-height:2; */
	display: inline-block;
	padding: 7px 20px 7px;
	margin-bottom: 5px;
}
#single_top_text{
	position:absolute;
	/* width: 90%; */
	/* height: 90%; */
	bottom: 7%;
	left: 5.5%;
}
#single_top_text h1{
	/* position:absolute; */
	/* top:3%; */
	/* left:5%; */
	color:#fff;
	text-align: left;
	font-size: 3rem;
	line-height: 6rem;
	letter-spacing: .1em;
	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
}
#single_top_text h1 span{
	display:block;
}
#single_top_text h1 span.en{
	font-family: 'Spectral SC', serif;
	font-size: 3.5rem;
	line-height: 1.4;
	font-weight: 400;
}
#single_top_text h1 span.ja{
	font-size: 1.7rem;
   	line-height: 1;	
}
#single_top_text .intro_text{
	/* position:absolute; */
	/* right:5%; */
	/* bottom:5%; */
	/* width: auto; */
	margin-top: 27px;
}
#single_top_text .intro_text p{
	display:block;
	color:#fff;
	text-align: left;
	font-size: 1.7rem;
	line-height: 2;
	letter-spacing:.1em;
	text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
}
.activity_content{
	position:relative;
	width:100%;
	margin:0 auto;
}
.main_content{
	position:relative;
	/* padding: 75px 0; */
	background-color: #fff;
}
/*tour_archive*/
ul.tour_list{
	width: 90%;
	margin:0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;
}
ul.tour_list li{
	position:relative;
	width: 47%;
	margin-bottom: 3%;
	background-color:#000;
}
ul.tour_list li:after{
	
}
ul.tour_list li a{
	position: relative;
	width:100%;
	display:block;
	/* display: -webkit-flex; */
	/* display: flex; */
	/* -webkit-flex-wrap: wrap; */
	/* flex-wrap: wrap; */
	/* justify-content: center; */
	/* align-items: center; */
	/* align-content:center; */
	/* background-position:center; */
	/* background-size:cover; */
	z-index:0;
	box-sizing: border-box;
}
ul.tour_list li a:after{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color: rgba(255,255,255,0);
	z-index:1;
	transition: all 1s ease;
}
ul.tour_list li a:hover:after{
	background-color: rgba(255,255,255,0.2);
}
.tour_thumb{
	position: relative;
	width:100%;
	background-size:cover;
	z-index: 0;
}
.tour_thumb:after{
	content:"";
    display: block;
    padding-top: 75%; /* 高さを幅の75%に固定 */
}
.tour_txt{
	position:relative;
	display:block;
	width:100%;
	padding:5% 7%;
	box-sizing:border-box;
	background: #BBD2C5;  /* fallback for old browsers */
background: -webkit-linear-gradient(to right, #536976, #8d9791);  /* Chrome 10-25, Safari 5.1-6 */
background: linear-gradient(to right, #536976, #8d9791); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}


ul.tour_list li a p.tour_list_title{
	position:relative;
	color:#fff;
	display:block;
	text-align: left;
}
ul.tour_list li a p.tour_list_title:after{
	content: "";
    width: 10px;
    height: 10px;
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top:-5px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid;
    border-right: 1px solid;
}
ul.tour_list li a p.tour_list_title span.ja{
	display:block;
	font-size: 1.5rem;
	font-weight:bold;
	margin-bottom:5px;
}
ul.tour_list li a p.tour_list_title span.en{
	/* font-family: 'Spectral SC', serif !important; */
	text-transform: capitalize !important;
	display:block;
	font-size: 1.3rem;
	/*text-shadow:0px 0px 3px #000, 0px 0px 2px #000, 0px 0px 1px #000;*/
}
ul.tour_list li a p.tour_list_season{
	color:#000;
	display:inline-block;
	z-index: 2;
	position: absolute;
	right: 0;
	top: -22px;
	background-color:#fff;
	padding:3px 11px;
}
ul.tour_list li a p.tour_list_season span.season{
	font-size:13px;
	font-size:1.3rem;
	font-weight:bold;
	/*text-shadow:0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;*/
}
#single{

}
.single_content{
	display:block;
	width: 100%;
	margin:0 auto;
	padding: 75px 0;
}
.post_content{
	display:block;
	width: 100%;
	margin:0 auto;
	padding: 75px 0;
}
.single_flex{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	/* justify-content: space-between; */
}
.post_block{
	width: 100%;
}
#single_title{
	margin-bottom:27px;
	padding-bottom: 17px;
	/* border-bottom:3px solid #ccc; */
} 
#single_title h2{
	font-size: 2rem;
	line-height: 1.4;
}
.post_content img{
	display:block;
	width:100%;
	height:auto;
	margin:0 auto 27px;
}
.post_content p{
	display:block;
	width:100%;
	margin:31px auto;
	text-align:left;
	font-size:1.5rem;
	line-height:2;
}
table.single_table{
	width:100%;
	margin:0 auto;
}
table.single_table tr{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
}
table.single_table tr th, table.single_table tr td{
	padding: 20px;
}
table.single_table tr th{
	width:25%;
	font-weight:bold;
	text-align:left;
}
table.single_table tr td{
	width:75%;
	text-align:left;
}
.single_sidebar{
	width: 100%;
}
.single_sidebar .sidebar_box{
	display:block;
	width:100%;
	box-sizing:border-box;
	padding-bottom:37px;
}
.single_sidebar .sidebar_box h5{
	display:block;
	width:100%;
	box-sizing:border-box;
	margin-bottom: 17px;
	padding: 0 0 11px 17px;
	border-bottom:1px solid #ccc;
}
a.cat_link{
	width:100%;
	display: block;
	position: relative;
	box-sizing:border-box;
	margin: 0 0 5px 10px;
	padding-left: 18px;
	font-size: 13px;
	line-height:1.6;
	color:#000;
}
a.cat_link::before{
	display: block;
	content: '';
	position: absolute;
	top: 5px;
	left: 0;
	width: 5px;
	height: 5px;
	border: 0px;
	border-top: solid 1px #000000;
	border-right: solid 1px #000000;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.sidebar_box ul{

}
.sidebar_box ul li{
	margin-bottom: 5px;	
}
.sidebar_box ul li:last-child {
	margin-bottom: 0;
}
.sidebar_box ul li a {
	display: inline-block;
	position: relative;
	margin-left: 10px;
	padding-left: 18px;
	font-size: 13px;
	line-height:1.6;
	color:#000;
}
.sidebar_box ul li a::before{
	display: block;
	content: '';
	position: absolute;
	top: 5px;
	left: 0;
	width: 5px;
	height: 5px;
	border: 0px;
	border-top: solid 1px #000000;
	border-right: solid 1px #000000;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.post_navigation{
	width:100%;
	margin:35px auto 0;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}
.post_navigation .prev a,.post_navigation .next a{
	font-size:15px;
	font-size:1.5rem;
	color:#000;
}
.post_navigation .prev{
	text-align:left;
	padding-right:27px;
	border-right:1px solid #9d9d9d;
}
.post_navigation .next{
	text-align:right;
	padding-left:27px;
}
#activity{
	/* display: -webkit-flex; */
	/* display: flex; */
	/* flex-wrap: wrap; */
	/* justify-content: space-around; */
	/* align-items: stretch; */
	/* align-content: space-around; */
}
#activity .activity_content:nth-child(odd){
	/* flex-direction: row; */
}
#activity .activity_content:nth-child(even){
	/*flex-direction: row-reverse*/
}
.content_head{
	width:100%;
	position:relative;
	display:block;
	box-sizing:border-box;
	padding:55px 0;
}
.content_head h2{
	text-align:center;
	/* margin-bottom: 75px; */
}
.content_head h2 span.en{
	display:block;
	/* font-family: 'Spectral SC', serif; */
	font-size:3rem;
	text-transform:capitalize;
	line-height:1.4;
	margin-bottom:7px;
}
.content_head h2 span.ja{
	display:block;
	font-size:1.7rem;
}

.activity_image{
	position:relative;
	width: 100%;
	box-sizing:border-box;
	background-color:#ccc;
	background-size: cover;
	background-position: center;
	z-index: -1;
	/* height: 100%; */
	/* margin-top: -50px; */
}
.activity_image::after{
	content:"";
	display: block;
	padding-top: 75%;
}
.activity_intro{
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
	height:calc(100vh - 40px);
	margin: 0 auto;
	box-sizing:border-box;
	/* background-color:#fff; */
	padding: 5%;
	z-index: 1;
	/*box-shadow: 0 0 2.77778vw 2.77778vw rgba(0,0,0,0.12);*/
	/* box-shadow: 1em -1em #eee, -1em 1em #eee, 1em 1em #ccc, -1em -1em #ccc; */
}
#activity .activity_content:nth-child(odd) .activity_intro{
	/* margin: 0 auto 0 -50px; */
}
#activity .activity_content:nth-child(even) .activity_intro{
	/* margin: 0 -50px 0 auto; */
}
.intro_text{
	box-sizing:border-box;
	width: 100%;
	margin: 0 auto;
}
.activity_intro h3{
	margin: 0 auto 25px;
	/* color: #fff; */
	position: relative;
}
#activity .activity_content:nth-child(odd) .activity_intro h3{
	text-align: left;
}
#activity .activity_content:nth-child(even) .activity_intro h3{
	text-align: left;
}
.activity_intro h3 span.h3_en{
	display:block;
	font-size: 1.9rem;
	margin:0 0 7px 5px;
	font-weight: 400;
	font-family: 'Jura', sans-serif;
}
.activity_intro h3 span.h3_ja{
	display:block;
	font-size: 23px;
	font-size: 2.3rem;
}
.activity_intro p{
	font-size: 2rem;
	line-height: 2;
	color: #fff;
	text-shadow: 0px 0px 5px #000, 0px 0px 4px #000, 0px 0px 3px #000;
	text-align: center;
}
.activity_detail{
	width: 100%;
	/* background-color: #fff; */
	/* padding: 5%; */
	box-sizing: border-box;
	/* margin-top: 35px; */
	display: none;
}
.activity_detail table{
	width: 100%;
	border-top: 3px solid #1b1b1b;
	border-bottom: 3px solid #1b1b1b;
}
.activity_detail table th, .activity_detail table td{
	font-size: 15px;
  line-height: 1.8;
  border-bottom: 1px solid #1b1b1b;
}
.activity_detail table td p{
	font-size: 15px;
  line-height: 1.6;
}
.activity_detail table th{
	text-align: left;
	padding: 15px 15px;
	box-sizing: border-box;
	width: 180px;
	border-right: 1px solid #1b1b1b;
}
.activity_detail table td{
	padding: 5px 5px 5px 30px;
}
.activity_detail table td ul{
	
}
.activity_detail table td ul li{
	display:inline-block;
	margin-right:13px;
}

.swiper-slide{
	position:relative;
	display: -webkit-flex;
   	display: flex;
   	align-items: center;
	height:100vh !important;
	overflow: hidden;
	z-index:-1;
}
.swiper-slide:after{
	content:"";
	position:absolute;
	z-index:0;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.25);
}

/*news*/
article.news{
	border-bottom: 1px solid #E0DACB;
}
article.news a {
	color: #222;
	display: block;
	padding: 15px 15px;
	line-height:2;
	overflow: hidden;
	transition: 0.2s;
}
article.news a:hover {
	color: #5f7a8e;
}
article.news a p.data {
	float: left;
	width: 34%;
}
article.news a p.data .cat {
	background-color: #b7b7b7;
	color: #FFF;
	display: inline-block;
	font-size: 12px;
	margin-left: 20px;
	margin-top: -2px;
	padding: 1px 15px;
	min-width: 90px;
	text-align: center;
}
article.news a p.txt {
	float: left;
	width: 60%;
}
.archive-pagination{
	display:block;
	width:100%;
	margin:35px auto;
}
ul.page-numbers{
	display: -webkit-flex;
   	display: flex;
   	-webkit-flex-direction: row;
   flex-direction: row;
   justify-content: center;
   align-items: stretch;
}
ul.page-numbers li{
	margin:0 7px;
	
}
ul.page-numbers li span, ul.page-numbers li a{
	padding:0 7px;
	line-height:1.6;
	color:#000;
}
ul.page-numbers li span.current{
	font-weight:bold;
	border-bottom:1px solid #000;
}
ul.page-numbers li:hover a{
	border-bottom:1px solid #000
}
ul#pagination{
	width:100%;
	margin:35px auto;
	display: -webkit-flex;
   	display: flex;
   	-webkit-flex-direction: row;
   flex-direction: row;
   justify-content: center;
   align-items: stretch;
}
ul#pagination li{
	margin:0 7px;
	
}
ul#pagination li span, ul#pagination li a{
	padding:0 7px;
	line-height:1.6;
	color: #000;
}
ul#pagination li span.current{
	font-weight:bold;
	border-bottom:1px solid #000;
}
ul#pagination li:hover a{
	border-bottom:1px solid #000
}
/*tour-page*/
.about_content{
	width:800px;
	margin: 55px auto 0;
}

.tour_info_section{
	width: 100%;
	margin: 0 auto 55px;
	/* display: none; */
}

table.about_table{
  	width: 90%;
  	margin: 0 auto 105px;
  	border-top: 1px solid #ccc;
}
table.about_table tr{
    position: relative;
    padding: 17px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: stretch;
    border-bottom: 1px solid #ccc;
}
table.about_table th, table.about_table td{
	padding: 17px;
	font-size: 1.6rem;
	line-height: 1.8;
	box-sizing: border-box;
}
table.about_table th{
	position:relative;
	text-align: left;
	box-sizing: border-box;
	width: 210px;
}
table.about_table th:after{
	content:"";
	position:absolute;
	width:100%;
	height:3px;
	bottom:0;
	left:0;
	/*background: #2e2e2e;*/
}
table.about_table th p{
	display:inline-block;
}
table.about_table th p strong{
	font-weight:bold;
	color:#2c4d59;
}
table.about_table th p span{
	margin-right:10px;
	color:#2c4d59;
	font-size:1.5rem;
	
}
table.about_table td{
	width: calc(100% - 210px);
	text-align:left;
	/* border-left: 1px solid #ccc; */
}
table.about_table td p.price_inline span.unit{
	display:inline-block;
	line-height: 21px;
}
table.about_table td p.price_inline span.price{
	display:inline-block;
	font-size: 3rem;
	line-height: 21px;
	font-weight:bold;
	margin: 0 11px;
}
table.about_table td p.price_inline span.remark{
	display:inline-block;
	font-size:1.3rem;
}
/*event*/
ul.ev_list{
	width: 100%;
	margin:0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
ul.ev_list li{
	width: 48%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: flex-start;
	margin: 0 1% 57px 1%;
}
/*ul.ev_list li:nth-child(odd){
	flex-direction:row;
}
ul.ev_list li:nth-child(even){
	flex-direction:row-reverse;
}*/
ul.ev_list li .ev_img{
	position:relative;
	display:block;
	width: 100%;
	background-size:cover;
	background-position: center;
	z-index:1;
}
ul.ev_list li .ev_img:after{
	content:"";
	display:block;
	padding-top: 85.5%;
}
ul.ev_list li .ev_info{
	width: 93%;
	box-sizing:border-box;
	padding: 5%;
	background: rgba(255,255,255,0.9);
	margin: -35px auto 0 0;
	z-index:2;
}
p.ev_title{
	display:block;
	font-size: 1.8rem;
	font-weight:bold;
	margin-bottom:17px;
}
p.ev_content{
	font-size:1.5rem;
	line-height:1.8;
	display:block;
	margin-bottom:17px;
}
table.ev_table{
	width:100%;
}
table.ev_table tr{
	border-bottom:1px solid #ccc;
}
table.ev_table th, table.ev_table td{
  font-size: 15px;
  font-size: 1.3rem;
  line-height: 1.8;
}
table.ev_table th{
	position:relative;
	text-align: left;
	padding: 7px 14px;
	box-sizing: border-box;
	width: 120px !important;
}
table.ev_table td{
	/* width: calc(100% - 120px); */
	padding: 7px 14px;
	text-align:left;
	box-sizing: border-box;
}
/*about-the tour*/
dl.about_dl{
	width:100%;
}
dl.about_dl dt,dl.about_dl dd{
	padding:7px 11px;
}
dl.about_dl dt{
	font-weight:bold;
	font-size:1.9rem;
	letter-spacing:1px;
}
dl.about_dl dd{
	font-size:1.5rem;
	line-height:1.6;
	margin-bottom: 31px;
}
dl.about_dl dd ul,dl.about_dl dd ol{
	margin: 0 auto 0 27px;
}
dl.about_dl dd ul{
	list-style:circle;
}
dl.about_dl dd dl dt{
	font-size:1.5rem;
	font-size:15px;
}
/*shop_info*/
dl.shop_info{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
	box-sizing:border-box;
	margin:17px 0 37px;
}
dl.shop_info dt{
    padding:0 17px;
}
dl.shop_info dt p{
	line-height:1.8;
}
dl.shop_info dd{
	 padding:0 17px;
}
dl.shop_info dd p,dl.shop_info dd a,dl.shop_info dd a span{
	font-size:1.3rem;
	line-height:2;
	letter-spacing:0.05em;
}
dl.shop_info dd i{
	color:#b1b1b1;
	margin-right:7px;
}
dl.shop_info dd a span{
	color:#000;
	opacity:1;
	transition:all .5s ease 0s;
    -moz-transition:all .5s ease 0s;
	-webkit-transition:all .5s ease 0s;
}
dl.shop_info dd a:hover span{
	color:#000;
	opacity:0.8;
	transition:all .5s ease 0s;
    -moz-transition:all .5s ease 0s;
	-webkit-transition:all .5s ease 0s;
}
dl.shop_info dd ul{
	list-style:circle;
	box-sizing:border-box;
	padding:7px 18px;
}
dl.shop_info dd ul li{
	font-size:1.3rem;
	line-height:2;
	letter-spacing:0.05em;
}
/*googlemap*/
.gmap {
  position: relative;
  width: 100%;
  padding-top: 65%; /* = height ÷ width × 100 */
}
.gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*policy*/
	dl.policy_dl{
		
	}
	dl.policy_dl p{
		font-size:1.5rem;
}
	dl.policy_dl dt{
	margin:27px 0 19px 0;
	border-top:1px dashed #CCC;
	padding-top:27px;
}
	dl.policy_dl dt h3{
	font-weight:700;
	font-size: 20px;
	font-size: 2rem;
	display: block;
	text-align:left;
	line-height: 1.4;
	}
dl.policy_dl dt:first-child{
	margin:0 0 19px 0;
	border-top:none;
	padding-top:0;
}
dl.policy_dl dd{
	margin:27px 0 19px 0;
	padding-bottom:19px;
}
dl.policy_dl dd ul{
	box-sizing:border-box;
	padding:35px 55px;
	margin-top:15px;
	background-color:#f7f7f7;
}
dl.policy_dl dd ul li{
	margin-bottom:7px;
	font-size: 13px;
	font-size: 1.3rem;
	line-height:1.6;
}
/*item*/
.service_list{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:flex-start;
  margin:-1em;
}
.service_list > .service_list_item
{
  width: 30%;
  margin: 2.5% 1%;
}
.service_list > .service_list_item:hover
{
  text-decoration:none;
}
.service_list > .service_list_item .service_img
{
  border-radius:0.5em;
  overflow:hidden;
  background-size: cover;
  background-position:center;
  width: 100%;
}
.service_list > .service_list_item .service_img:before 
{
   content: "";
    display: block;
    padding-top: 75%;
}

.service_list > .service_list_item .service_title
{
  margin-top:1.0em;
  line-height:1;
}
.service_list > .service_list_item .service_price
{
  line-height:1;
  margin-top:0.5em;
	display:none;
}
.service_list > .service_list_item .service_title > span
{
  font-size: 1.5rem;
  font-weight:bold;
}
.service_list > .service_list_item .service_price > p 
{
  font-size:1.2rem;
  line-height:1;
}
.service_list > .service_list_item .service_price > p > span
{
  font-size:1.8rem;
  font-weight:bold;
  
}
.service_list > .service_list_item .service_price .yen,
.campaign_after span.numeral .yen
{
  font-size:1.5rem;
  font-weight:bold;
}


/*sitemap*/
ul.sitemap{

}
ul.sitemap li{
	border-bottom:1px solid #ccc;
}
ul.sitemap li a{
	position:relative;
	width:100%;
	display:block;
	padding: 23px;
	overflow:hidden;
	box-sizing:border-box;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	color:#000;
	opacity:1;
}
ul.sitemap li a:hover, ul.sitemap li ul li a:hover {
	opacity:0.7;
}
ul.sitemap li a:before, ul.sitemap li ul li a:before{
	font-family:FontAwesome;
	content:"\f105";
	display:inline-block;
	margin-right:7px;
}

ul.sitemap li ul{
	width:90%;
	margin: 0px 27px 27px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: flex-start;
}

ul.sitemap li ul.sec li{
	border-bottom:none;
}
ul.sitemap li ul.sec li a{
	position:relative;
	padding:11px 17px;
	overflow:hidden;
}

/*dl*/
dl.inquiry{
	width: 100%;
	max-width:800px;
	margin:0 auto;
}
dl.inquiry dt{
	font-weight: bold;
	margin-bottom: 11px;
}
dl.inquiry dd{
	margin-bottom: 30px;
}
span.haveto,span.any{
	font-size:11px;
	font-size:1.1rem;
	margin-right:7px;
}
span.haveto{
	color:red;
}
span.any{
	color:#7e7e7e;
}
dl.inquiry dd input{
	padding: 5px;
	width: 100%;
	background: #efefef;
	border: none;
	box-sizing: border-box;
}
dl.inquiry dd textarea{
	padding: 5px; width: 100%; height: 150px; background: #E6E6E6; border: none; box-sizing: border-box;
}


/*contact*/
.contact_notice{
	width: 90%;
	box-sizing:border-box;
	position: relative;
	margin: 37px auto 57px;
}
.contact_notice p{
	font-weight:bold;
	line-height:2;
	font-size:1.5rem;
}
.contactform-width {
    max-width: 100% !important;
}
table.contact{
	max-width: 100% !important;
	width: 100% !important;
	margin: 0 auto;
}

table.contact tr{
	width:100%;
	max-width:100% !important;
	box-sizing:border-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 17px;
	border-bottom:1px solid #ccc;
}
table.contact tr th, table.contact tr td{
	line-height:1.8;
	display:block;
}
table.contact tr th{
	text-align:left;
	padding: 9px 0 0 0;
	width:30%;
}
table.contact tr td{
	width:70%;
	text-align:left;
}
table.contact td input,
table.contact td textarea {
	box-sizing: border-box;
	background: #F0F0F0;
	border: none;
	margin-bottom: 10px;
	padding: 7px 20px;
	font-size: 1.5rem;
	line-height:1.8;
	width:80%;
	max-width:80% !important;
}	
table.contact td textarea {
	width:100% !important;
	height:230px;
}
.wpcf7-select{
	box-sizing: border-box;
	background: #F0F0F0;
	border: none;
	margin-bottom: 10px;
	padding: 7px 20px;
	font-size: 1.5rem;
	line-height:1.8;
	width:80%;
	max-width: 100% !important;
}
table.contact td .privacy_display { 
	padding:  24px; 
	width:100% !important;
	height: 180px; 
	box-sizing:border-box;
	overflow-y: scroll; 
	border:  1px solid #b3b3b3;
}
table.contact td .privacy_display dl{

}
table.contact td .privacy_display dl dt{
	width:100%;
	font-weight:bold;
	font-size:1.5rem;
	margin-bottom:11px;
}
table.contact td .privacy_display dl dd{
	width:100%;
	box-sizing:border-box;
	padding:0px 13px;
	margin-bottom:27px;
	line-height:1.8;
}
.consent{
	display:block;
	margin: 37px auto;
}

.consent span.wpcf7-list-item{
	text-align: center;
	width: 100%;
	display:block;
	margin:17px auto;
}
.consent #formbtn{
	display:block;
	margin: 0 auto;
	background-color: #333;
	padding: 17px 0;
	color: #fff;
	width: 270px;
	border: none;
	cursor: pointer;
	opacity:1;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
}
.consent #formbtn:hover{
	opacity:0.75;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: none !important;
}
div.wpcf7-response-output {
	margin: 0 auto 55px !important;
	padding: 0 !important;
	border: none !important;
	box-sizing: border-box;
	text-align:center;
	font-weight:bold;
}
.notes ul{
	list-style:disc;
}
.notes ul li{
	line-height:1.8;
}
}
