@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC&display=swap');
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/

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,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

body {
	line-height:1;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
}

nav 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;
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

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

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
	vertical-align:middle;
}

img{
	line-height:1;
	vertical-align:bottom;
}

/************** layout base ********************/
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

img{ max-width:100%;}

a{text-decoration:none; color:#000000;}
a:hover{text-decoration: none;}
a:link{}

a:visited{color:#0d5bab;}

/* ボタンrollover */
a:hover img{
   opacity:0.8;
}

sup {
	line-height: 100%;
	font-size:10px;
	vertical-align: 0.4em;
}
sub{
	line-height: 100%;
	font-size:10px;
	vertical-align: -0.1em;
}

.txtLeft{text-align:left;}
.txtRight{text-align:right;}
.txtCenter{text-align:center;}

.fw{font-weight:bold !important;}
.f10{ font-size:10px !important;}
.f11{ font-size:11px !important;}
.f12{ font-size:12px !important;}
.f13{ font-size:13px !important;}
.f14{ font-size:14px !important;}
.f15{ font-size:15px !important;}
.f16{ font-size:16px !important;}
.f17{ font-size:17px !important;}
.f18{ font-size:18px !important;}
.f20{ font-size:20px !important;}
.f22{ font-size:22px !important;}
.f24{ font-size:24px !important;}

.txtRed{ color:#D80000;}

.fLeft{ float:left;}
.fRight{ float:right;}

.mTop0{ margin-top:0 !important;}
.mTop5{ margin-top:5px !important;}
.mTop10{ margin-top:10px !important;}
.mTop15{ margin-top:15px !important;}
.mTop20{ margin-top:20px !important;}
.mTop25{ margin-top:25px !important;}
.mTop30{ margin-top:30px !important;}
.mTop35{ margin-top:35px !important;}
.mTop40{ margin-top:40px !important;}
.mTop45{ margin-top:45px !important;}
.mTop50{ margin-top:50px !important;}
.mTop55{ margin-top:55px !important;}
.mTop60{ margin-top:60px !important;}

.mBtm0{ margin-bottom:0 !important;}
.mBtm5{ margin-bottom:5px !important;}
.mBtm10{ margin-bottom:10px !important;}
.mBtm15{ margin-bottom:15px !important;}
.mBtm20{ margin-bottom:20px !important;}
.mBtm25{ margin-bottom:25px !important;}
.mBtm30{ margin-bottom:30px !important;}
.mBtm35{ margin-bottom:35px !important;}
.mBtm40{ margin-bottom:40px !important;}
.mBtm45{ margin-bottom:45px !important;}
.mBtm50{ margin-bottom:50px !important;}
.mBtm55{ margin-bottom:55px !important;}
.mBtm60{ margin-bottom:60px !important;}
.mBtm70{ margin-bottom:70px !important;}
.mBtm80{ margin-bottom:80px !important;}
.mBtm90{ margin-bottom:90px !important;}
.mBtm100{ margin-bottom:100px !important;}

.pTop0{ padding-top:0 !important;}
.pTop5{ padding-top:5px !important;}
.pTop10{ padding-top:10px !important;}
.pTop15{ padding-top:15px !important;}
.pTop20{ padding-top:20px !important;}
.pTop25{ padding-top:25px !important;}
.pTop30{ padding-top:30px !important;}
.pTop35{ padding-top:35px !important;}
.pTop40{ padding-top:40px !important;}
.pTop45{ padding-top:45px !important;}
.pTop50{ padding-top:50px !important;}

.pBtm0{ padding-bottom:0 !important;}
.pBtm5{ padding-bottom:5px !important;}
.pBtm10{ padding-bottom:10px !important;}
.pBtm15{ padding-bottom:15px !important;}
.pBtm20{ padding-bottom:20px !important;}
.pBtm25{ padding-bottom:25px !important;}
.pBtm30{ padding-bottom:30px !important;}
.pBtm35{ padding-bottom:35px !important;}
.pBtm40{ padding-bottom:40px !important;}
.pBtm45{ padding-bottom:45px !important;}
.pBtm50{ padding-bottom:50px !important;}
.pBtm55{ padding-bottom:55px !important;}
.pBtm60{ padding-bottom:60px !important;}

/************** layout base ********************/
body{
	background: #ffffff;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", "游ゴシック体","メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-family: 'Noto Sans SC', "Segoe UI", SegoeUI, "Microsoft YaHei", "微软雅黑", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-align: left;
	line-height:1.5;
}

ol,ul {
	list-style:none;
}

p,dt,dd,li,td,th{
	color:#333333;
	font-size:14px;
}

div,p,dl{
	text-align:left;
}

h1,h2,h3,h4,h5,h6{
	color: #000000;
	font-size:14px;
	font-weight: normal;
}

a.disabled{
    pointer-events: none;
}

/* common
---------------------------------------------------------------------------- */
body{
}

.inner{
	width: 94%;
	margin: 0 auto;
}
img{
	max-width: 100%;
}
.font-notosans{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}

main{
  padding-bottom: 100px;
}
@media screen and (min-width: 769px) {
	.inner{
		max-width: 960px;
	}
	main{
	  padding-bottom: 0;
	}
	.pc-flex{
		display: flex;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.sp{
		display: none;
	}
}/* //end for PC */
@media screen and (max-width: 768px) {
	.pc{
		display: none;
	}
}/* //end for SP */

/* header
---------------------------------------------------------------------------- */
header{ 
	padding: 3.73vw 0;
}
header .inner{
	width: 93.33%;	
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	        -ms-flex-align: center;
	       align-items: center;
  position: relative;
}
#logo{
	width: 67.18%;
	vertical-align: middle;
}
#logo img{
	display: inline-block;
	vertical-align: middle;
  width: 58vw
}

@media screen and (min-width: 769px) {
	header{ 
		padding: 9px 0;
	}
	#logo img{
	  width: 215px;
	}
}/* //end for PC */


.lang {
	width: 118px;
}
.lang_body {
  position: relative;
  text-align: center;
  z-index: 1;
  width: 100%;
}

.lang_button {
  display: block;
  position: relative;
  width: 100%;
  height: 38px;
	border-radius: 19px;
	padding-top: 0.3em;
	padding-right: 1.2em;
  line-height: 30px;
  background: #0270c1;
  border-bottom: solid 1px #fff;
  color: #fff;
  font-size: .8rem;
  text-decoration: none;
	text-align: center;
  cursor: pointer;
}
a.lang_button:visited{
  color: #fff;
}
a.lang_button:hover {
	background: #1b7ec7;
}
.lang_button::after {
	position: absolute;
	right: 2em;
	top: 50%;
	margin-left: 0.2em;
	content: "\0ff1e";
	-webkit-transform: rotate(90deg);
   transform: rotate(90deg) translate(-50%, -50%);
	color: #fff;
	font-size: 1em;
	line-height: 1em;
}
.lang_selects {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 38px;
  left: 0;
  width: calc(100%);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
.lang_selects.is-active {
  visibility: visible;
  opacity: 1;
}
.lang_select {
  display: block;
}


/* mv
--------------- */
#mv{
	width: 100%;
	background: url("images/mv_bg.png") no-repeat center center / cover;
	padding: 0.67vw 0 0 0;
  height: 192px;
}
#mv h2{
	margin: 0 auto;
	width: 87.47vw;
	background: url("images/mv_ti_bg.png") no-repeat center center / cover;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 6.133vw;
	letter-spacing: -0.025em;
	color: #a40000;
	line-height: 14vw;
	text-align: center;
}
#mv ul{
	padding: 4.27vw 0 3.2vw;
	text-align: center;
}
#mv ul li{
	display: inline-block;
	width: 21vw;
	padding: 0 0.3vw;
}

@media screen and (min-width: 769px) {
	#mv{
		background: url("images/mv_bg_02_pc.png") repeat-x center center / auto 100%;
		padding: 0;
	  height: 387px;
	}
	#mv .inner{
		background: url("images/mv_bg_01_pc.png") no-repeat center center / cover;
		padding: 7px 0 0 0;
	  height: 387px;
	}
	#mv h2{
		width: 656px;
		background: url("images/mv_ti_bg_pc.png") no-repeat center center / cover;
		font-size: 46px;
		line-height: 105px;
	}
	#mv ul{
		padding: 4.27vw 0 3.2vw;
		text-align: center;
	}
	#mv ul li{
		display: inline-block;
		width: 21vw;
		padding: 0 0.3vw;
	}
}/* //end for PC */


/* box
--------------- */
.box{
	padding: 8vw 0 6.67vw;
}
.blue-stripe{
	margin-bottom: 6vw;
	font-size: 6.4vw;
	letter-spacing: 0.05em;
	text-align: center;
}
.blue-stripe::after{
	content: "";
	display: block;
	margin-top: 0.2em;
	width: 100%;
	height: 10px;
    background-color: #b4d8f7;
    background-image:
	 repeating-linear-gradient(-45deg,#fff, #fff 4px,transparent 0, transparent 10px);
}
/* btn */
.box-btn + .box-btn{
	margin-top: 2.8vw;
}
.box-btn a.btn{
	position: relative;
	display: block;
	background: #fdfaf5;
	/*padding-right: 24vw;*/
	padding: 14px 95px 14px 20px;
	border: 2px solid #d2a03e;
    border-radius: 4vw;
	text-align: center;
}
.box-btn a.btn::after{
	position: absolute;
	right: 3%;
	top: 35%;
	transform: scale(0.5, 0.7) translateY(-50%);
	content: "≫";
	color: #d2a03e;
	font-size: 34px;
	font-weight: bold;
  
}
.box-btn a.btn::before{	
	position: absolute;
	right: 12%;
	top: 50%;
	content: "";
	display: block;
	width: 7.86vw;
	height: 16vw;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 80% auto;
	transform: translateY(-50%);
}
.box-btn a.btn .btn_txt{
	position: relative;
	font-size: 4vw;
	line-height: 1.4;
	color: #0a1725;
	font-weight: 700;
	text-align: left;
}
.box-btn a.btn .btn_txt sup{
	position: absolute;
	right: 0;
	bottom: -2.8vw;
	font-size: 2.4vw
}
.box-btn a.btn .btn_txt span{
  font-size: 3vw;
}

@media screen and (min-width: 769px) {
	.box{
		padding: 50px 0 44px;
	}
	.blue-stripe{
		margin-bottom: 28px;
		font-size: 36px;
	}
	.blue-stripe::after{
		margin-top: 0.2em;
		height: 10px;
		background-image:
		 repeating-linear-gradient(-45deg,#fff, #fff 6px,transparent 0, transparent 15px);
	}
	/* btn */
	.box-btn + .box-btn{
		margin-top: 0vw;
	}
	.pc-flex .box-btn + .box-btn{
		margin-left: 25px;
	}
	.pc-flex .box-btn{
		width: calc(calc(100% - 25px) / 2)
	}
	.box-btn a.btn{
		padding: 20px 105px 20px 20px;
		border-width: 3px;
		border-radius: 10px;
		text-align: left;
	}
	.box-btn a.btn::after{
		right: 14px;;
		top: 50%;
		transform: scale(0.7, 1) translateY(-50%);
		content: "≫";
		font-size: 23px;

	}
	.box-btn a.btn::before{	
		right: 45px;
		width: 33px;
		height: 46px;
		background-size: 100% auto;
	}
	.box-btn a.btn .btn_txt{
		font-size: 20px;
    	line-height: 1.2em;
    	display: block;
		margin: auto;
	}
	.box-btn a.btn .btn_txt sup{
		right: 0;
		bottom: -2.8vw;
		font-size: 2.4vw
	}
	.box-btn a.btn .btn_txt span{
	  font-size: 0.75em;
	}
}/* //end for PC */

/* kind box
--------------- */
#kind{
}
.kind-info .kind-list{	
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: stretch;
	align-items: stretch;
}
.kind-info .kind-list li{
	width: 25%;
	border-radius: 1.33vw 1.33vw 0 0;
	border: 1px solid #d2d2d2;
	border-bottom: 0;
	text-align: center;
}
.kind-info .kind-list li.active{
	border: none;
}
.kind-info .kind-list li a{
	display: block;
	width: 100%;
	height: 100%;
	padding: 3.33vw 1.73vw 1.73vw;
	border-radius: 1.33vw 1.33vw 0 0;
}
.kind-info .kind-list li.kind-list_01 a{
	border-bottom: 1vw solid #a40000;
}
.kind-info .kind-list li.kind-list_01.active a{
	background: #a40000;
}
.kind-info .kind-list li.kind-list_02 a{
	border-bottom: 1vw solid #835392;
}
.kind-info .kind-list li.kind-list_02.active a{
	background: #835392;
}
.kind-info .kind-list li.kind-list_03 a{
	border-bottom: 1vw solid #005bac;
}
.kind-info .kind-list li.kind-list_03.active a{
	background: #005bac;
}
.kind-info .kind-list li.kind-list_04 a{
	border-bottom: 1vw solid #005b34;
}
.kind-info .kind-list li.kind-list_04.active a{
	background: #005b34;
}
.kind-info .pass-list li img{
	width: 80%;
}
.kind-info .pass-detail{
	position: relative;
}
.pass-detail-box{
	display: none;
}
.pass-detail-box.show{
	display: block;
}
.pass-detail-box.show .name{
	display: flex; 
	-ms-flex-align: center;
	align-items: center;   
	-ms-flex-pack: center;
	justify-content: center;
	margin-bottom: 6.67vw;
	padding: 8vw 0 0;	
}
.pass-detail-box .name .name-kind{
	width: 22vw;
	height: 13.33vw;
	margin-right: 0.6em;
	padding-left: 0.6em;
	display: flex; 
	-ms-flex-align: center;
	align-items: center;   
	-ms-flex-pack: center;
	justify-content: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% auto;
	font-size: 4.8vw;
	letter-spacing: -0.05em;
	font-weight: bold;
	color: #fff;
	line-height: 1;
}
#pass-detail_01.pass-detail-box .name .name-kind{
	background-image: url("images/kind-pass-bg.png");
}
#pass-detail_02.pass-detail-box .name .name-kind{
	background-image: url("images/kind-pass-2day-bg.png");
}
#pass-detail_03.pass-detail-box .name .name-kind{
	background-image: url("images/kind-pass-5day-bg.png");
}
#pass-detail_04.pass-detail-box .name .name-kind{
	background-image: url("images/kind-pass-5dayplus-bg.png");
}
.pass-detail-box .name .name-title{
	font-size: 6.4vw;
	letter-spacing: -0.05em;
	color: #a40000;
}
#pass-detail_02.pass-detail-box .name .name-title{
	color: #835392;
}
#pass-detail_03.pass-detail-box .name .name-title{
	color: #005bac;
}
#pass-detail_04.pass-detail-box .name .name-title{
	color: #005b34;
}
.pass-detail-box .price{
	margin-bottom: 6vw;
	font-size: 4vw;
	font-weight: bold;
	text-align: center;
	letter-spacing: -0.05em;
}
.pass-detail-box .discription{
	margin-bottom: 4vw;
}
.pass-detail-box .discription p{
	margin-bottom: 4vw;
	letter-spacing: 0.05em;
}
#pass-detail_01.pass-detail-box .discription p b{color: #a40000;}
#pass-detail_02.pass-detail-box .discription p b{color: #835392;}
#pass-detail_03.pass-detail-box .discription p b{color: #005bac;}
#pass-detail_04.pass-detail-box .discription p b{color: #005b34;}
/* btn */
.box-btn a.btn{
	display: flex;
	width: 100%;
}
#pass-detail_01 .box-btn a.btn{
	background: #faf2f2;
	border: 2px solid #a40000;
}
#pass-detail_02 .box-btn a.btn{
	background: #faf2f2;
	border: 2px solid #835392;
}
#pass-detail_03 .box-btn a.btn{
	background: #faf2f2;
	border: 2px solid #005bac;
}
#pass-detail_04 .box-btn a.btn{
	background: #faf2f2;
	border: 2px solid #005b34;
}
#pass-detail_01 .box-btn a.btn::after{
	color: #a40000;
}
#pass-detail_02 .box-btn a.btn::after{
	color: #835392;
}
#pass-detail_03 .box-btn a.btn::after{
	color: #005bac;
}
#pass-detail_04 .box-btn a.btn::after{
	color: #005b34;
}
#pass-detail_01 .box-btn a.btn.btn-map::before{
	width: 7.86vw;
	background-image: url("images/btn_map.png");
}
#pass-detail_02 .box-btn a.btn.btn-map::before{
	width: 7.86vw;
	background-image: url("images/btn_map-2day.png");
}
#pass-detail_03 .box-btn a.btn.btn-map::before{
	width: 7.86vw;
	background-image: url("images/btn_map-5day.png");
}
#pass-detail_04 .box-btn a.btn.btn-map::before{
	width: 7.86vw;
	background-image: url("images/btn_map-5dayplus.png");
}
#pass-detail_01 .box-btn a.btn.btn-facility::before{
	width: 8.53vw;
	background-image: url("images/btn_facility.png");
}
#pass-detail_02 .box-btn a.btn.btn-facility::before{
	width: 8.53vw;
	background-image: url("images/btn_facility-2day.png");
}
#pass-detail_03 .box-btn a.btn.btn-facility::before{
	width: 8.53vw;
	background-image: url("images/btn_facility-5day.png");
}
#pass-detail_04 .box-btn a.btn.btn-facility::before{
	width: 8.53vw;
	background-image: url("images/btn_facility-5dayplus.png");
}
#pass-detail_02 .box-btn a.btn.btn-present::before{
	width: 8.53vw;
	background-image: url("images/btn_present-2day.png");
}
#pass-detail_03 .box-btn a.btn.btn-present::before{
	width: 8.53vw;
	background-image: url("images/btn_present-5day.png");
}
#pass-detail_04 .box-btn a.btn.btn-present::before{
	width: 8.53vw;
	background-image: url("images/btn_present-5dayplus.png");
}
.pass-detail-btns .box-btn{
	display: flex;
	align-items: stretch;
}
#pass-detail_02 .pass-detail-btns .box-btn:nth-of-type(1),
#pass-detail_03 .pass-detail-btns .box-btn:nth-of-type(1),
#pass-detail_04 .pass-detail-btns .box-btn:nth-of-type(1){flex-basis: 27%;}

#pass-detail_02 .pass-detail-btns .box-btn:nth-of-type(2),
#pass-detail_03 .pass-detail-btns .box-btn:nth-of-type(2),
#pass-detail_04 .pass-detail-btns .box-btn:nth-of-type(2){flex-basis: 29%;}

#pass-detail_02 .pass-detail-btns .box-btn:nth-of-type(3),
#pass-detail_03 .pass-detail-btns .box-btn:nth-of-type(3),
#pass-detail_04 .pass-detail-btns .box-btn:nth-of-type(3){flex-basis: 44%;}

@media screen and (min-width: 769px) {
	.kind-info .kind-list li{
		border-radius: 10px 10px 0 0;
	}
	.kind-info .kind-list li a{
		padding: 15px;
		border-radius: 10px 10px 0 0;
	}
	.kind-info .kind-list li.kind-list_01 a{
		border-bottom: 10px solid #a40000;
	}
	.kind-info .kind-list li.kind-list_02 a{
		border-bottom: 10px solid #835392;
	}
	.kind-info .kind-list li.kind-list_03 a{
		border-bottom: 10px solid #005bac;
	}
	.kind-info .kind-list li.kind-list_04 a{
		border-bottom: 10px solid #005b34;
	}
	.kind-info .pass-list li img{
		width: 80%;
	}
	.pass-detail-box.show .name{		
		-ms-flex-pack: start;
		justify-content: flex-start;
		margin-bottom: 20px;
		padding: 60px 15px 0;	
	}
	.pass-detail-box .name .name-kind{
		width: 131px;
		height: 80px;
		margin-right: 0.6em;
		padding-left: 0.6em;
		font-size: 30px;
	}
	.pass-detail-box .name .name-title{
		font-size: 48px;
	}
	/*.pass-detail-box .price{
		margin-bottom: 6vw;
		font-size: 4vw;
	}*/
	.pass-detail-box .discription{
		margin-bottom: 26px;
		padding: 0 48px;
	}
	.pass-detail-box .discription p{
		font-size: 16px;
	}

	/* btn */
	.pass-detail-btns{
		margin-right: 15px;
		margin-left: 15px;
	}
	#pass-detail_01 .box-btn a.btn.btn-map::before,
	#pass-detail_02 .box-btn a.btn.btn-map::before,
	#pass-detail_03 .box-btn a.btn.btn-map::before,
	#pass-detail_04 .box-btn a.btn.btn-map::before{
		width: 40px;
	}
	#pass-detail_01 .box-btn a.btn.btn-facility::before,
	#pass-detail_02 .box-btn a.btn.btn-facility::before,
	#pass-detail_03 .box-btn a.btn.btn-facility::before,
	#pass-detail_04 .box-btn a.btn.btn-facility::before{
		width: 41px;
	}
	#pass-detail_02 .box-btn a.btn.btn-present::before,
	#pass-detail_03 .box-btn a.btn.btn-present::before,
	#pass-detail_04 .box-btn a.btn.btn-present::before{
		width: 45px;
	}
}/* //end for PC */


/* plan
--------------- */
#plan{
	padding: 8vw 0 7vw; 
	background: #f9f4f4;
}
#plan h3{
	margin-bottom: 5.33vw;
	font-size: 4.8vw;
	text-align: center;
}
.plan-list{
  display: none;
}
.plan-list.show{	
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.plan-list.plan3.show{
  justify-content: center;
}
.plan-list li{
	width: 46%;
}
.plan-list li figure{
	position: relative;
	width: 90%;
	margin-left: auto;
}
.plan-list li figure figcaption{
	position: absolute;
	left: -4vw;
	top: -2.5vw;
	width: 14.67vw;
	background: #a40000;
	font-size: 12px;
	line-height: 5.07vw;
	text-align: center;
	color: #fff;
}
.plan-list.plan2 li figure figcaption{
  background: #835392;
}
.plan-list.plan3 li figure figcaption{
  background: #005bac;
}
.plan-list.plan4 li figure figcaption{
  background: #005b34;
}
.plan-list li p{
	width: 90%;
	margin-top: 2.4vw;
	margin-left: auto;
	font-size: 12px;
	text-align: left;
}
@media screen and (min-width: 769px) {
	#plan{
		width: 100%;
		max-width: 930px;
		margin: auto;
		padding: 35px 0; 
	}
	#plan .inner{
		width: 100%;
		padding: 0 33px;
	}
	#plan h3{
		margin-bottom: 60px;
		font-size: 28px;
	}
	.plan-list{
	  display: none;
	}
	.plan-list.show{	
		display: flex;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.plan-list.plan3.show{
	  justify-content: center;
	}
	.plan-list li{
		width: calc(100% * 410 / 864);
	}
	.plan-list li:nth-child(2){
		transform: translateX(-20px);
	}
	.plan-list li figure{
		position: relative;
		width: calc(100% * 345 / 410);
		padding-left: 34px;
		margin-right: auto;
		margin-left: auto;
	}
	.plan-list li figure a{
		display: block;
	}
	.plan-list li figure a img{
		width: 100%;
	}
	.plan-list li figure figcaption{
		left: 0;
		top: 0;
		transform: translateY(-50%);
		width: 110px;
		font-size: 24px;
		line-height: 38px;
	}
	.plan-list li p{
		width: calc(100% * 345 / 410);
		padding-left: 34px;
		margin-top: 0.5em;
		margin-right: auto;
		margin-left: auto;
		font-size: 16px;
	}
}/* //end for PC */


/* notice box
--------------- */
#notice{
	padding: 8vw 0 7vw; 
	background: #eeeeee;
}
#notice h3{
	margin-bottom: 5.33vw;
	font-size: 4.8vw;
	text-align: center;
}

.notice-list li::before{
	content: "・";	
}
.notice-list li{
	margin-bottom: 0.6em;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 11px;
  line-height: 1.5em;
	letter-spacing: 0.05em;
}
@media screen and (min-width: 769px) {
	#notice{
		width: 100%;
		max-width: 930px;
		margin: auto;
		padding: 25px 0 30px; 
	}
	#notice .inner{
		width: 100%;
		padding: 0 33px; 
		
	}
	#notice h3{
		margin-bottom: 20px;
		font-size: 28px;
	}
	.notice-list li::before{
		margin-right: 0.2em;
		content: "\025cf";	
		font-size: 12px;
	}
	.notice-list li{
    	margin-bottom: 0em;
		font-size: 15px;
		line-height: 2em;
	}
}/* //end for PC */


/* howtoride box
--------------- */
#howtoride .box-btn{
  margin-bottom: 1em;
}
#howtoride .box-btn .note{
	margin-top: 0.5em;
	font-size: 2.67vw;
	letter-spacing: 0.025em;
}
/* btn */

#howtoride .box-btn a{
  cursor: pointer;
  text-align: left;
   padding: 10px 0 10px 20px;
}
#howtoride .box-btn a.btn-cableway{
   padding: 10px 0 10px 20px;
}
#howtoride .box-btn a.btn .btn_txt{
  line-height: 1.2;
  text-align: left;
  font-size: 5vw; 
}
#howtoride .box-btn a.btn-train,
#howtoride .box-btn a.btn-bus,
#howtoride .box-btn a.btn-cableway{
  border-radius: 0;
}
#howtoride .box-btn a.btn::after {
    position: absolute;
    right: 3%;
    top: 50%;
    transform: translateY(-50%);
    content: "＋";
    color: #d2a03e;
    font-size: 24px;
    font-weight: bold;
}
#howtoride .box-btn.active a.btn::after{
  content: "－";
}

#howtoride .box-btn a.btn.btn-train::before{
	width: 6.8vw;
	background-image: url("images/btn_train.png");
}
#howtoride .box-btn a.btn.btn-bus::before{
	width: 9.33vw;
	background-image: url("images/btn_bus.png");
}
#howtoride .box-btn a.btn.btn-cableway::before{
	width: 6.67vw;
	background-image: url("images/btn_cableway.png");
}

#howtoride .box-inner{
  display: none;
}

#howtoride .box-inner ol{
  margin-bottom: 1.5em;
}

#howtoride .box-inner ol li{
  padding-left: 1em;
  text-indent: -1em;
}
#howtoride .box-inner p{
}
#howtoride .box-inner p span{
  font-weight: bold;
  font-size: 16px;
}
#howtoride .box-inner .imgs{
  margin-top: 1em;
}
#howtoride .box-inner .imgs p{
  text-align: center;
  margin-bottom: 1.5em
}
	#howtoride .box-inner .imgs img.w60{
  width: 60%
  }

#howtoride .box-inner .note{
  font-size: 12px;
  margin-bottom: 1.5em;
  margin-top: -1em;
}
@media screen and (min-width: 769px) {
	#howtoride.box{
		padding: 70px 0 25px;
	}
	#howtoride .box-btn{
	  margin-bottom: 0px;
	}
	#howtoride .box-btn:not(:first-child){
	  margin-top: 32px;
	}
	#howtoride .box-btn .note{
		margin-top: 0.5em;
		font-size: 2.67vw;
		letter-spacing: 0.025em;
	}
	/* btn */

	#howtoride .box-btn a{
	  cursor: pointer;
	  text-align: left;
	   padding: 16px 0 16px 30px;
	}
	#howtoride .box-btn a.btn-cableway{
	   padding: 16px 0 16px 30px;
	}
	#howtoride .box-btn a.btn .btn_txt{
	  line-height: 1.2;
	  text-align: left;
	  font-size: 28px; 
	}
	#howtoride .box-btn a.btn-train,
	#howtoride .box-btn a.btn-bus,
	#howtoride .box-btn a.btn-cableway{
	  border-radius: 0;
	}
	#howtoride .box-btn a.btn::after {
		right: 30px;
		font-size: 36px;
		font-weight: 700;
	}
	#howtoride .box-btn.active a.btn::after{
	  content: "－";
	}
	#howtoride .box-btn a.btn::before {
		right: 96px;
		transform: translate(50%, -50%);
	}
	#howtoride .box-btn a.btn.btn-train::before{
		width: 33px;
	}
	#howtoride .box-btn a.btn.btn-bus::before{
		width: 53px
	}
	#howtoride .box-btn a.btn.btn-cableway::before{
		width: 32px;
	}

	#howtoride .box-inner{
	  display: none;
		background: #fdfbef;
		padding: 35px 33px 40px;
	}

	#howtoride .box-inner ol{
	  margin-bottom: 1.5em;
	}

	#howtoride .box-inner .imgs img.w60{
  width: 36%
  }
	#howtoride .box-inner .imgs .pc-flex.flex-col2 > p{
		width: calc(100% * 420 / 864);
		margin-bottom: 0;
	}
	#howtoride .box-inner .imgs .pc-flex.flex-col2 img{
		width: 100% !important;
	}
	#howtoride .box-inner p span{
	  font-size: 16px;
	}
	#howtoride .box-inner p span.fw-normal{
		font-weight: normal;
	}
	#howtoride .box-inner .imgs{
	  margin-top: 2.5em;
	}
	#howtoride .box-inner .imgs p{
	  margin-bottom: 1.5em
	}

	#howtoride .box-inner .note{
	  font-size: 12px;
	  margin-bottom: 1.5em;
	  margin-top: -1em;
	}
}/* //end for PC */


/* express box
--------------- */
#express.box{
	padding-bottom: 16vw;
}
#express figure{
	margin: 4vw 0 8vw;
}
#express p{
	margin-bottom: 1.5em;
	font-size: 3.2vw;
	letter-spacing: 0.05em;
}
#express p .ic{
	position: relative;
	display: inline-block;
	width: 1.5em;
	margin: 0 0.3em;
}
#express p .ic img{
	position: absolute;
	top: 0;
	transform: translateY(-70%);
}
.express-ticket{
	margin-bottom: 6vw;
	text-align: center;
}
.express-ticket img{
	width: 41vw;
	min-width: 200px;
}
/* btn */
.box-btn a.btn.btn-info::before{
	width: 7.2vw;
	background-image: url("images/btn_info.png");
}
.box-btn a.btn.btn-info{
    padding-right: 16vw;
}

@media screen and (min-width: 769px) {
	#express.box{
		padding-bottom: 90px;
	}
	#express figure{
		margin: 42px 0 35px;
		padding-right: 33px;
		padding-left: 33px;
    	text-align: center;
	}
	#express p{
		font-size: 16px;
		padding-right: 33px;
		padding-left: 33px;
	}
	#express p .ic{
	}
	#express p .ic img{
	}
	.express-ticket{
		margin-bottom: 40px;
	}
	.express-ticket img{
		width: 307px;
		min-width: none;
	}
	/* btn */
	.box-btn a.btn.btn-info::before{
		width: 37px;
	}
	.box-btn a.btn.btn-info{
	   padding: 16px 0 16px 30px;
		width: 649px;
		margin: auto;
	}
	.box-btn a.btn.btn-info .btn_txt{
		font-size: 24px;
	}
}/* //end for PC */


/* footer
---------------------------------------------------------------------------- */
footer {
  position: fixed;
  bottom: 0;
  left:0;
  width: 100%;
  background: #fff;
}
footer nav ul{	
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
}
footer nav ul{
	border-top: 0.67vw solid #005bac;
	border-bottom: 1px solid #005bac;
	background-color: rgb(0 91 172 / 5%);
}
footer nav li{
	width: 50%;
	line-height: 1;
}
footer nav li:first-of-type{
	border-right: 1px solid #005bac;
}
footer nav li a{
	padding: 3vw 0 1vw;
	display: flex; 
	-ms-flex-align: center;
	align-items: center;   
	-ms-flex-pack: center;
	justify-content: center;
}
footer nav li a span{
	color: #005bac;
	font-size: 3.5vw;
	text-align: center;
}
footer nav li a span small{
  font-size: 2.5vw;
  margin-left: 1em;
}
footer nav li a span::before{
	content: "";
	display: block;
	margin: 0 auto 1vw;
	width: 7.73vw;
	height: 7.73vw;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: auto 100%;	
}
footer nav li a.home span::before{
	background-image: url("images/ic_home.png");
}
footer nav li a.cart span::before{
	background-image: url("images/ic_cart.png");
}

@media screen and (min-width: 769px) {
	footer{
		position: relative;
		border-top: 5px solid #005bac;
		padding: 20px 0 50px;
		text-align: center;
	}
	#copy{
		font-weight: bold;
		font-size: 12px;
	}
}/* //end for PC */

/* pageTop
---------------------------------------------------------------------------- */
#pageTop{
	position: fixed;
	right: 6.67vw;
	bottom: 28vw;
	width: 12vw;
	height: 12vw;
}

#pageTop a{
	width: 100%;
	height: 100%;
	background: #dcebf8;
	position: relative;
	display: block;
}
#pageTop a::before,
#pageTop a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	content: "";
	display: block;
	font-size: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border: 0;
	border-right: 2.67vw solid transparent;
	border-left: 2.67vw solid transparent;
}
#pageTop a::before{
	border-bottom: 3.2vw solid #005bac;
}
#pageTop a::after{
	border-bottom: 3.2vw solid #dcebf8;
	transform: translateY(5px);
}

@media screen and (min-width: 769px) {
#pageTop{
	right: 6.67vw;
	bottom: 105px;
	width: 52px;
	height: 52px;
}
#pageTop a::before,
#pageTop a::after{
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
#pageTop a::before{
	border-bottom: 12px solid #005bac;
}
#pageTop a::after{
	border-bottom: 12px solid #dcebf8;
	transform: translateY(5px);
}
}/* //end for PC */


/* stepSlider
---------------------------------------------*/
.l-gridWrap {
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
*[class*="c-title"] {
  font-weight: 700;
  color: #005bac;
  text-align: center;
}
*[class*="c-title"].-left {
    text-align: left;
}
.c-title_sS {
    font-size: 18px;
}
.stepSliderWrap {
	position: relative;
	overflow: hidden;
	padding-bottom: 50px;
}
.stepSlider.slick-slider {
	border: 3px #005BAC solid;
	background: #fff;
	margin-bottom: 0;
}
.stepSlider .slick-arrow {
	width: 21px;
	height: 34px;
	z-index: 1;
	cursor: pointer;
}
.stepSlider .slick-prev::before,
.stepSlider .slick-next::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	border-right: 5px #005BAC solid;
	border-top: 5px #005BAC solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.stepSlider .slick-prev::before {
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.stepSlider .slick-prev {
	left: 35px;
}
.stepSlider .slick-next {
	right: 35px;
}
.stepSlider .slick-prev.slick-disabled::before,
.stepSlider .slick-next.slick-disabled::before {
	opacity: 0;
}
.stepSlider .slick-dots {
	bottom: -34px;
	line-height: 15px;
}
.stepSlider .slick-dots li {
	width: 15px;
	height: 15px;
	margin: 0 5px;
}
.stepSlider .slick-dots li button {
	width: 15px;
	height: 15px;
}
.stepSlider .slick-dots li button::before {
	border-radius: 50%;
	border: 1px #005BAC solid;
	background: #fff;
	width: 15px;
	height: 15px;
}
.stepSlider .slick-dots .slick-active button::before {
	background: #005BAC;
}
@media screen and (max-width: 768px) {
	/*SP slider*/
	.stepSlider .slick-prev,
	.stepSlider .slick-next {
		top: calc(19.2vw + 22px)
	}
	.stepSlider .slick-prev {
		left: 12px;
	}
	.stepSlider .slick-next {
		right: 12px;
	}
}
/*-SP only-*/
.stepbox .imgs img {
	object-fit: contain;
	width: 100%;
	height: 100%;
}
.stepbox .imgs figcaption {
	font-size: 14px;
 font-weight: 400;
}
.stepbox h3 {
	margin-bottom: 17px;
 font-family: "Noto Sans JP", sans-serif;
}
.stepbox h3 span {
	display: inline-block;
	border-bottom: 3px #F78100 solid;
	padding-bottom: 2px;
}
.stepbox .txts p {
	font-weight: bold;
}
.stepbox .txts p.c-fwN {
	font-weight: normal ;
}
.stepbox .txts p+p {
	margin-top: .9em;
}
@media screen and (min-width: 769px) {
	.stepbox {
		justify-content: center;
		align-items: center;
		gap: 0 40px;
		padding: 30px 60px;
	}
	.stepbox .imgs img {
		height: 240px;
	}
	.stepbox .imgs {
		max-width: calc((100% - 40px)/2 + 5%);
	}
	.stepbox .txts {
		max-width: calc((100% - 40px)/2 - 5%);
	}
}
/*-PC only-*/
@media screen and (max-width: 768px) {
	.stepbox.l-gridWrap {
		display: block;
		padding: 22px 32px;
	}
	.stepbox .imgs {
		margin-bottom: 20px;
	}
	.stepbox .imgs img {
		max-height: 53vw;
	}
	.stepbox h3 {
		font-size: 1.8rem;
		margin-bottom: 12px;
	}
}
/*-SP only-*/