#main_contents .sp, #main_contents .sp_in{
	display:none;
}

#main_contents .pc{
	display: block;
}

#main_contents .pc_in{
	display: inline;
}

#main_contents{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 62.5%;
}

#main_contents #wrap{
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	color: #000;
	background: #f5f5f5;
}

#main_contents #wrap h1{
	width: 96%;
	max-width: 1280px;
	padding: 20px 0;
	margin: 0 auto; 
	font-size: 2.0rem;
	line-height: 1.5em;
	font-weight: 700;
}

#main_contents #wrap > div, #main_contents #wrap section{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	/*font-size: 0;*/
	position: relative;
}

#main_contents #wrap section .anchor_m, #main_contents #wrap .tour_list .anchor_m{
	position: absolute;
	bottom: 350px;	
}

#main_contents #wrap section .anchor_m.fixed, #main_contents #wrap .tour_list .anchor_m.fixed{
	position: absolute;
	bottom: 100px;
}

#main_contents #wrap .lineup_anchor{
	position: relative;
}

#main_contents #wrap .lineup_anchor .anchor_m{
	position: absolute;
	bottom: 300px;	
}

#main_contents #wrap .lineup_anchor_b .anchor_m{
	position: absolute;
	bottom: 400px;	
}


#main_contents #wrap .lineup_anchor .anchor_m.fixed, #main_contents #wrap .lineup_anchor_b .anchor_m.fixed{
	position: absolute;
	bottom: 150px;
}


#main_contents #wrap > div .inner, #main_contents #wrap section .inner{
	width: 96%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 70px 0 30px;
}

@media only screen and (max-width: 1280px) {
	#main_contents #wrap > div .inner, #main_contents #wrap section .inner{
		width: 96%;
		max-width: none;
		margin: 0 auto;
	}
}

#main_contents #wrap .anchor_area{
	width: 100%;
    align-items: center;
	background: #F8B62D;
	padding: 0 0 42px;
	height: auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
}

#main_contents #wrap .anchor_area > div{
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

#main_contents #wrap .anchor_area.fixed{
	position: fixed;
	top: 0;
	left: 0;
	padding: 10px 0 15px;
	z-index: 1;	
}

#main_contents #wrap .anchor_area.fixed #select_tab{
	padding:  0px 0 20px;
}

#main_contents #wrap .anchor_area.fixed #select_tab .tab a{
	font-size: 1.6rem;
	line-height: 2.6em;
}

#main_contents #wrap .anchor_area .anchor {
	width: 100%;
	height: auto;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

#main_contents #wrap .anchor_area .anchor li {
    width: 20%;
    max-width: 254px;
    text-align: center;
}

#main_contents #wrap .anchor_area .kaigai .anchor li {
    width: 14%;
    max-width: 182px;
    text-align: center;
}

#main_contents #wrap .anchor_area .anchor li a {
    color: #C81528;
    font-size: 2.0rem;
    line-height: 1.2em;
    font-weight: 700;
    height: 100%;
    display: block;
    background-image: url(../images/anchor.png);
    background-repeat: no-repeat;
    background-position: center 95%;
    background-size: auto 0.5em;
    padding-bottom: 10px;
	transition: .3s;
}

#main_contents #wrap .anchor_area .anchor li a p {
	padding: 0 0.5em;
    width: calc(100% - 1.0em);
    height: 80%;
    min-height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 2px solid #C81528;
    flex-wrap: wrap;
}

#main_contents #wrap .anchor_area .kaigai .anchor > li p.font-98 {
  font-size: 98%;
}

#main_contents #wrap .anchor_area .kokunai .anchor > li p.font-80 {
  font-size: 80%;
}

#main_contents #wrap .anchor_area .anchor li a p span{
	font-size: 80%;
	line-height: 1.0em;
	letter-spacing: -0.1em;
	width: 100%;
}

#main_contents #wrap .anchor_area .anchor li:last-child a p{
    border-right: none;
}

#main_contents #wrap .anchor_area .anchor li a:hover{
    background-position: center bottom;
}

#main_contents #wrap .anchor_area.fixed  .anchor li a {
    color: #C81528;
	font-size: 1.6rem;
    padding-bottom: 8px;
	transition: .3s;
}

#main_contents #wrap .anchor_area.fixed  .anchor li a p {
    width: calc(100% - 1.0em);
    min-height: 40px;
   display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (min-width:900px) and (max-width:1280px) {
	#main_contents #wrap .anchor_area{
		padding: 10px 0 15px;
	}
	
	#main_contents #wrap .anchor_area .anchor li a {
	    font-size: 1.6rem;
	}

	#main_contents #wrap .anchor_area .kaigai .anchor > li:nth-child(6) a p{
		font-size: 100%
	}
}

@media screen and (min-width:768px) and (max-width:899px) {
	#main_contents #wrap .anchor_area{
		padding: 10px 0 15px;
	}

	#main_contents #wrap .anchor_area .anchor li a {
	    font-size: 1.4rem;
	}

	#main_contents #wrap .anchor_area.fixed  .anchor li a {
		font-size: 1.4rem;
	}

	#main_contents #wrap .anchor_area .kaigai .anchor > li:nth-child(6) a p{
		font-size: 100%
	}
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .anchor_area{
		padding: 10px 0 15px;
	}

	#main_contents #wrap .anchor_area .anchor li a {
	    font-size: 1.2rem;
	}

	#main_contents #wrap .anchor_area.fixed  .anchor li a {
		font-size: 1.2rem;
	}
	
	#main_contents #wrap .anchor_area .anchor li a span{
		display: inline-block;
	}

	#main_contents #wrap .anchor_area .kaigai .anchor > li:nth-child(6) a p{
		font-size: 100%
	}

	#main_contents #wrap .anchor_area .kokunai .anchor > li:nth-child(2) a p{
		font-size: 100%
	}

}

/* メンテナンス */
#main_contents #wrap .maintenance .inner{
	padding: 30px 0;
}

#main_contents #wrap .maintenance .inner p{
	font-size: 1.8rem;
	line-height: 1.6em;
	text-align: justify;
	max-width: calc(960px - 2.0em);
	margin: 0 auto;
	padding: 0 1.0em;
}

#main_contents #wrap .maintenance .inner > p:first-child{
	font-size: 2.0rem;
	padding-bottom: 0.3em;
	font-weight: 700;
	color: #E60012;
}

#main_contents #wrap .maintenance .inner a{
	text-decoration: underline!important;
	color: #000!important;
}

#main_contents #wrap .maintenance .inner a:hover{
	opacity: 0.7;
}


/* セレクトタブ */
#main_contents .display{
	display: none;
}

#main_contents .display.active{
	display: block!important;
}

#main_contents #wrap .anchor_area #select_tab{
	padding:  20px 0 57px;
	background: #F8B62D;
}

#main_contents #wrap .anchor_area #select_tab .tab{
	width: 94%;
	max-width: 830px;
	margin:  0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#main_contents #wrap .anchor_area #select_tab .tab a{
	width: 32%;
	max-width: 250px;
	font-size: 2.0rem;
	line-height: 60px;
	font-weight: 700;
	display: block;
	text-align: center;
	color: #000;
	background: #ddd;
	cursor: pointer;
	border-radius: 10px;
	transition: .3s;
}

#main_contents #wrap .anchor_area #select_tab .tab .top_page:hover, #main_contents #wrap .anchor_area #select_tab .tab .top_page.active{
	color: #fff;
	background: #E95464;
	transition: .3s;
}

#main_contents #wrap .anchor_area #select_tab .tab .kaigai:hover, #main_contents #wrap .anchor_area #select_tab .tab .kaigai.active{
	color: #fff;
	background: #37589D;
	transition: .3s;
}

#main_contents #wrap .anchor_area #select_tab .tab .kokunai:hover, #main_contents #wrap .anchor_area #select_tab .tab .kokunai.active{
	color: #fff;
	background: #C81528;
	transition: .3s;
}


#main_contents #mv .mv_img{
	position: relative;
}

#main_contents #mv .mv_img img{
	width: 100%;
	height: auto;
}

@media only screen and (max-width: 767px) {
	#main_contents #mv .mv_img .pc{
		display: none!important;
	}
	
	#main_contents #mv .mv_img .sp{
		display: block!important;
	}
}

#main_contents #wrap #top_page{
	background-image: url(../images/top_page_back.jpg);
	background-position: center top;
}

#main_contents #wrap #kaigai{
	display: none;
	background-image: url(../images/kaigai_back.jpg);
	background-position: center top;
}

#main_contents #wrap #kokunai{
	display: none;
	background-image: url(../images/kokunai_back.jpg);
	background-position: center top;
}

/* 共通h2 */
#main_contents #wrap section .inner .ttl{
	width: 100%;
	max-width: 1236px;
	font-size: 5.2rem;
	line-height: 1.6em;
	font-weight: 700;
	margin: 0 auto;
	background-image: url(../images/h2_ttl_01.png), url(../images/h2_ttl_02.png);
	background-repeat: no-repeat, no-repeat;
	background-position: left top, right top;
	padding-bottom: 0.5em;
}

#main_contents #wrap section .inner .ttl h2{
	font-weight: 700;
	width: 90%;
	max-width: 520px;
	text-align: center;
	background-image: url(../images/h2_back.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto 1.2em;
	padding: 1.0em 0 0.6em;
}

#main_contents #wrap section .inner .ttl h2 .small{
	font-size: 90%;
	line-height: 1.2em!important;
	letter-spacing: -0.1em;
}

#main_contents #wrap section .inner .ttl h2 .small span{
	letter-spacing: 0;
}
@media screen and (min-width:768px) and (max-width:950px) {
	#main_contents #wrap section .inner .ttl{
		font-size: 4.8rem;
		background-image: url(../images/h2_ttl_01.png), url(../images/h2_ttl_02.png);
		background-size: 2.3em auto;
	}
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap section .inner .ttl{
		font-size: 3.0rem;
		background-image: url(../images/h2_ttl_01.png), url(../images/h2_ttl_02.png);
		background-size: 12% auto;
	}

	#main_contents #wrap section .inner .ttl h2{
		padding: 0.2em 0 0.6em;
	}
}

/* 共通 クーポンリスト */
#main_contents #wrap section .inner .coupon_list{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

#main_contents #wrap #kaigai .inner .coupon_list, #main_contents #wrap #kokunai .inner .coupon_list{
	display: block;
	max-width: 614px;
	margin: 0 auto;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette{
	width: 48%;
	max-width: 614px;
	font-size: 1.8rem;
	border: 3px solid #37589D;
	border-radius: 15px;
	background-color: #fff;
	margin-bottom: 30px;
	display: block;
	transition: .3s;
}

#main_contents #wrap section .inner .coupon_navi{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

#main_contents #wrap #kaigai .inner .coupon_navi, #main_contents #wrap #kokunai .inner .coupon_navi{
	display: block;
}

#main_contents #wrap section .inner .coupon_navi > div{
	width: 48%;
	max-width: 614px;
	text-align: center;
}

#main_contents #wrap #kaigai .inner .coupon_navi > div, #main_contents #wrap #kokunai .inner .coupon_navi > div{
	width: 100%;
	margin: 0 auto;
}


#main_contents #wrap section .inner .coupon_navi > div a{
	display: inline-block;
	text-align: center;
	width: calc(90% - 1.0em);
	max-width: 380px;
	height: auto;
	padding: 0.8em 0.5em;
	font-size: 2.0rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #fff;
	margin: 1.0em auto 0;
	background-color: #37589D;
	border-radius: 10px;
	transition: .3s;
}

#main_contents #wrap section .inner .coupon_navi > div.kokunai_coupon_navi a{
	background-color: #C81528;
}

#main_contents #wrap section .inner .coupon_navi > div a:hover{
	opacity: 0.7;
	transition: .3s;
}

#main_contents #wrap #kaigai .inner .coupon_list .coupon_cassette, #main_contents #wrap #kokunai .inner .coupon_list .coupon_cassette{
	width: 100%;
}


#main_contents #wrap section .inner .coupon_list .coupon_cassette.kokunai_coupon{
	border: 3px solid #C81528;
}


#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl{
	padding: 0.8em 1.0em;
	width: calc(100% - 2.0em);
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #E1E6F0;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette.kokunai_coupon .coupon_ttl{
	background-color: #F7DCDF;
}


#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl h3{
	font-size: 3.5rem;
	line-height: 1.3em;
	font-weight: 700;
	color: #37589D;
	padding-right: 0.5em;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl h3.small{
	font-size: 2.3rem;
	line-height: 1.4em;
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl h3{
		font-size: 2.5rem;
	}
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette.kokunai_coupon .coupon_ttl h3{
	color: #C81528;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl .icon{
	width: 93px;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_ttl .icon p{
	width: 93px;
	line-height: 37px;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background: #37589D;
	margin: 0.5em auto;
	border-radius: 5px;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette.kokunai_coupon .coupon_ttl .icon p{
	background: #C81528;
}


#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_txt{
	padding: 0.8em 1.0em;
	width: calc(100% - 2.0em);
	font-weight: 500;
	color: #000;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_txt > div{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 0.8em;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_txt > div > p:first-child{
	width: 5.0em;
	min-width: 90px;
	display: inline-block;
	text-align: center;
	line-height: 1.8em;
	background: #E8C251;
	margin-right: 0.8em;
}

#main_contents #wrap section .inner .coupon_list .coupon_cassette .coupon_txt > div > p:last-child{
	width: auto;
}

@media only screen and (max-width: 899px) {
	#main_contents #wrap section .inner .coupon_list{
		display: block;
	}
	
	#main_contents #wrap section .inner .coupon_list .coupon_cassette{
		width: calc(100% - 6px);
		max-width: none;
	}

	#main_contents #wrap section .inner .coupon_navi{
		display: block;
		padding-bottom: 3.0rem;
	}

	#main_contents #wrap section .inner .coupon_navi > div{
		width: 100%;
		max-width: 614px;
		margin: 0 auto;
	}

}

/* 共通 ラインナップ */
#main_contents #wrap .lineup .banner{
	padding: 0 0 150px;
	position: relative;
}

#main_contents #wrap .lineup .banner a{
	display: block;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	transition: .3s;
}

#main_contents #wrap .lineup .banner a img{
	width: 100%;
	height: auto;
}

#main_contents #wrap .lineup .banner a:hover{
	opacity: 0.5;
	transition: .3s;
}

#main_contents #wrap .lineup .banner_02{
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 600px;
}

#main_contents #wrap .lineup .banner_02 > div{
	width: 48%;
	max-width: 260px;
	margin: 0 1% 30px;
}

#main_contents #wrap .lineup .banner_02 > div p{
	font-size: 1.8rem;
	line-height: 1.4em;
	padding: 0.5em 0 0;
	text-align: justify;
}

#main_contents #wrap .lineup .banner_02 > div img{
	width: 100%;
	height: auto;
}

#main_contents #wrap .lineup .tour_list{
	width: 100%;
	padding: 50px 0 30px;
	margin: 0 auto 90px;
	text-align: center;
	background: #fff;
	border-radius: 15px;
	position: relative;
}

#main_contents #wrap .lineup .tour_list h3{
	font-size: 5.0rem;
	line-height: 1.2em;
	font-weight: 700;
	text-align: center;
	margin: 0 auto;
	display: inline-block;
	margin: 0 auto 50px;
	padding: 0 1.3em;
	background-image: url(../images/cassette_ttl_back.png),  url(../images/cassette_ttl_back.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
	background-size: 1.0em;
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .lineup .tour_list h3{
		font-size: 2.8rem;
		max-width: calc(90% - 2.6em )
	}	
}


#main_contents #wrap .lineup .tour_list .departure_navi{
	width: 100%;
	background: #FDE9C0;
	padding: 25px 0;
	margin: 0 auto;
}

#main_contents #wrap .lineup .tour_list .departure_navi .departure_tab{
	width: 92%;
	margin: 0 auto ;
	max-width: 860px;
	display: flex;
	justify-content: center;
	align-items: stretch;
}

#main_contents #wrap .lineup .tour_list .departure_navi .departure_tab p{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 2.7rem;
	line-height: 1.2em;
	min-height: 68px;
	font-weight: 500;
	width: 23%;
	max-width: calc(200px - 1.0em);
	margin: 0 1%;
	padding: 0 0.5em;
	background-color: #C9CACA;
	color: #fff;
	cursor: pointer;
	border-radius: 10px;
	transition: .3s;
}

#main_contents #wrap .lineup .tour_list .departure_navi .departure_tab p.sel, #main_contents #wrap .lineup .tour_list .departure_navi .departure_tab p:hover{
	background-color: #F39800;
}


#main_contents #wrap .lineup .tour_list .region_navi{
	width: 100%;
	background: none;
	padding: 35px 0 50px;
}

#main_contents #wrap .lineup .tour_list .region_navi .region_tab{
	width: 92%;
	margin: 0 auto ;
	max-width: 860px;
	justify-content: center;
	align-items: stretch;
	display: none;
}

#main_contents #wrap .lineup .tour_list .region_navi .region_tab.sel{
	display: flex;
}

#main_contents #wrap .lineup .tour_list .region_navi .region_tab p{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 2.2rem;
	line-height: 1.2em;
	min-height: 68px;
	letter-spacing: -0.1em;
	font-weight: 500;
	width: 23%;
	max-width: calc(200px - 1.0em);
	margin: 0 1%;
	padding: 0 0.5em;
	background-color: #fff;
	color: #231815;
	cursor: pointer;
	border: 2px solid #C9CACA;
	border-radius: 10px;
	transition: .3s;
}

@media only screen and (max-width: 1000px) {
	#main_contents #wrap .lineup .tour_list .departure_navi .departure_tab{
		max-width: none;
	}
	
	#main_contents #wrap .lineup .tour_list .departure_navi .departure_tab p{
		font-size: 2.1rem;
		min-height: 60px;
		max-width: calc(23% - 1.0em);
	}
	
		#main_contents #wrap .lineup .tour_list .region_navi{
		padding: 30px 0 40px;
	}
	

	#main_contents #wrap .lineup .tour_list .region_navi .region_tab{
		max-width: none;
	}
	
	
	#main_contents #wrap .lineup .tour_list .region_navi .region_tab p{
		font-size: 2.0rem;
		line-height: 1.2em;
		min-height: 60px;
		max-width: calc(23% - 1.0em);
	}
}


#main_contents #wrap .lineup .tour_list .region_navi .region_tab p.sel, #main_contents #wrap .lineup .tour_list .region_navi .region_tab p:hover{
	border: 2px solid #FFE100;
	background-color: #FFE100;
}

#main_contents #wrap .lineup .tour_list  .tour_list_slider .swiper {
	width: calc(100% - 4%);
	padding: 2%;
	margin: 0 auto;
    z-index: 0;
}

#main_contents #wrap .lineup .tour_list  .tour_list_slider .swiper .swiper-wrapper {
  width: 100%;
  height: auto;
}

#main_contents #wrap .lineup .tour_list  .tour_list_slider .swiper .swiper-slide {
	width: 100%;
	height: auto;
}

#main_contents #wrap .lineup .tour_list .tour_cassette{
	background-color: #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
	border-radius: 15px;
	height: 100%;
	position: relative;
	height: auto;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .sold_out_on{
	display: none;
}

#main_contents #wrap .lineup .tour_list .sold_out .tour_cassette .sold_out_on{
	background-image: url(../images/sold_out_back.png);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: absolute;
	border-radius: 15px;
	z-index: 2;
}

#main_contents #wrap .lineup .tour_list .sold_out .tour_cassette .sold_out_on img{
	width: 80%;
	max-width: 250px;
	height: auto;
}

#main_contents #wrap .lineup .tour_list .sold_out .tour_cassette a{
  pointer-events: none;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual{
	position: relative;
	width: 100%;
	height: auto;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual .icon{
	position: absolute;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 8px 8px 20px;
}

#main_contents #wrap .lineup .tour_list .no_img .tour_cassette .visual .icon{
	position: relative;
	display: block;
	text-align: left;
	padding: 20px 8px 0;
	width: calc(100% - 16px)
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual .icon p{
	font-size: 1.7rem;
	line-height: 1.8em;
	font-weight: 700;
	display: inline-block;
	width: 4.3em;
	text-align: center;
	color: #fff;
	background: #E60012;
	margin: 0.2em 0.3em;
	border-radius: 5px;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual .icon p.return{
	line-height: 1.0em;
	width: 5.5em;
	padding: 0.2em 0 0.5em;
}



#main_contents #wrap .lineup .tour_list .tour_cassette .visual .icon > p:first-child{
	background: #F39800;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual img{
	width: 100%;
	height: auto;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .visual .cap{
	position: absolute;
	font-size: 1.2rem;
	line-height: 1.2em;
	font-weight: 500;
	text-align: right;
	color: #fff;
	right: 0.5em;
	bottom: 0.5em;
	padding: 0.3em;
	background-image: url(../images/cap_back.png);
}

#main_contents #wrap .lineup .tour_list .tour_cassette .credit p{
	font-size: 1.2rem;
	line-height: 1.2em;
	font-weight: 500;
	padding: 0.2em;
	text-align: right;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article{
	padding: 20px 25px;
	width: calc(100% - 50px);
	text-align: center;
	color: #231815;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article h4{
	font-size: 3.5rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #37589D;
}

#main_contents #wrap .lineup .tour_list .kaigai_tour_conductor .tour_cassette .article h4{
	font-size: 3.2rem;
	text-align: left;
}


#main_contents #wrap .lineup .tour_list .tour_cassette .article h4 span img{
	width: 2.0em;
	height: auto;
	padding-bottom: 0.1em;
	margin-right: 0.5em;
}

#main_contents #wrap .lineup .tour_list .kaigai_tour_conductor .tour_cassette .article h4 span img{
	width: auto;
	height: 1.3em;
	padding: 0;
	margin: 0;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .price{
	font-size: 3.5rem;
	line-height: 1.4em;
	font-weight: 700;
	color: #E60012;
	margin: 0.4em auto 0;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .price span{
	font-size: 60%;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .hotel{
	font-size: 2.5rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #37589D;
	letter-spacing: -0.02em;
	padding: 1.0em 0;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .hotel span{
	font-size:70%;
	display: inline-block;
	border: 1px solid #37589D;
	padding: 0 0.5em;
	margin-top: 10px;
}


#main_contents #wrap .lineup .tour_list .tour_cassette .article .catch{
	font-size: 2.5rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #37589D;
	padding: 0.5em 0;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .conditions{
	text-align: left;
	font-size: 1.8rem;
	line-height: 1.4em;
	font-weight: 700;
	margin-top: 0.5em;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article .txt{
	font-size: 1.8rem;
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
}

#main_contents #kaigai .lineup .tour_list .tour_cassette .article ul.annotation{
	font-size: 1.6rem;
	padding-left: 1.0em;
}



#main_contents #kaigai .lineup .tour_list .tour_cassette .article ul.annotation li{
	list-style: "※ ";
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
	padding: 0.2em 0 0.5em;
}


#main_contents #wrap .lineup .tour_list .tour_cassette .article a, #main_contents #wrap .lineup .banner_02 a{
	display: inline-block;
	font-size: 2.0rem;
	line-height: 1.8em;
	font-weight: 500;
	color: #fff;
	background-color: #37589D;
	background-image: url(../images/tour_cassette_link.png);
	background-position: 93% center;
	background-repeat: no-repeat;
	background-size: 0.8em auto;
	padding: 0 1.6em;
	margin: 1.2em auto 0.5em;
	border-radius: 0.9em;
	transition: .3s;
}

#main_contents #wrap .lineup .tour_list .tour_cassette .article a:hover, #main_contents #wrap .lineup .banner_02 a:hover{
	background-color: #DD3A3A;
	transition: .3s;
}


#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .icon{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .icon p{
	font-size: 1.7rem;
	line-height: 1.8em;
	font-weight: 700;
	display: inline-block;
	padding: 0 1.0em;
	text-align: center;
	color: #fff;
	background: #00b0f0;
	margin: 0.2em 0.3em;
	border-radius: 5px;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .icon p.JR{
	background: #ed7d31;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article h4{
	font-size: 2.6rem;
	line-height: 1.2em;
	font-weight: 700;
	text-align: left;
	color: #000;
	padding: 0.5em 0 0.3em;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article h4 span{
	font-size: 80%;
	padding: 0 0.8em;
	border: 2px solid #000;
	display: inline-block;
	border-radius: 5px;
	margin-bottom: 0.3em
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .conditions{
	text-align: left;
	font-size: 1.8rem;
	line-height: 1.4em;
	font-weight: 700;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .txt{
	font-size: 1.6rem;
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
	padding: 1.0em 0 0;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview{
	font-size: 1.4rem;
	line-height: 1.4em;
	font-weight: 700;
	padding: 1.0em 0 0;	
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview ul{
	text-align: justify;
	padding-left: 1.2em;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview ul li{
	list-style: "■ ";
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview ul.annotation{
	padding-left: 2.5em;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview ul.annotation li{
	list-style: "※ ";
	font-size: 1.2rem;
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
	padding: 0.2em 0 0.5em;
}

#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .overview ul.annotation li.red{
	color: #E60012;
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article h4{
		font-size: 2.2rem;
	}
	
	#main_contents #wrap .lineup .tour_list .kokunai_fukuharu .tour_cassette .article .conditions{
		font-size: 1.6rem;
	}
}

#main_contents #wrap .lineup .tour_list .pagination{
	width: 100%;
	height: auto;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 60px auto 0;
}

#main_contents #wrap .lineup .tour_list .pagination .swiper-pagination{
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	width: auto;	
}

.swiper-button-next, .swiper-button-prev {
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	width: 46px;
	height: 46px;
	background-color: #F8B62D;
	border-radius: 23px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 50% auto;
}


.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 0;
}

#main_contents #wrap .lineup .tour_list .pagination .swiper-button-prev{
	background-image: url(../images/prev.png);
	margin-right: 10px;
}

#main_contents #wrap .lineup .tour_list .pagination .swiper-button-next{
	background-image: url(../images/next.png);
	margin-left: 10px;
}

.swiper-pagination-bullet {
  width: 6px !important;
  height: 6px !important;
  margin-bottom: 20px!important;
}

#main_contents #wrap .lineup .tour_list > a{
	width: 90%;
	max-width: calc(500px - 1.0em);
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 1.0em auto;
	font-size: 3.0rem;
	line-height: 1.2em;
	font-weight: 700;
	padding:  0.5em;
	letter-spacing: -0.02em;
	text-align: center;
	color: #231815;
	background-color: #F8B62D;
	border-radius: 1.2em;
	transition: .3s;
}

#main_contents #wrap .lineup .tour_list > a.anchor_m{
	display: block;
	font-size: 0;
	padding: 0;	
}

#main_contents #wrap .lineup .tour_conductor > a{
	max-width: calc(750px - 1.0em);
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .lineup .tour_list > a{
		width: 90%;
		max-width: calc(90% - 1.0em);
		font-size: 2.4rem;
		border-radius: 1.2em;
	}
}


#main_contents #wrap .lineup .tour_list.charter > a{
	color: #231815;
	background-color: #37589D;
	color: #fff;
}

#main_contents #wrap .lineup .tour_list > a:hover{
	background-color: #DD3A3A;
	color: #fff;
	transition: .3s;
}

#main_contents #wrap .lineup .tour_list.charter h3{
	letter-spacing: -0.03em;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette{
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
	width: 90%;
	max-width: 995px;
    margin: 0 auto;
    border-radius: 10px;
    padding: 50px 0;
	background-image: url(../images/charter_back.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article{
	padding: 20px;
	background-image: url(../images/charter_back_b.png);
}

#main_contents #wrap .lineup .tour_list.charter .article .ttl_b{
	font-size: 4.0rem;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1.0em;
}

#main_contents #wrap .lineup .tour_list.charter .article .ttl_b > div{
	width: 2.5em;
	padding-right: 0.5em;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article h4{
	font-weight: 700;
	color: #37589D;
	padding: 0;
}

#main_contents #wrap .lineup .tour_list.charter .article .ttl_b > div img{
	width: 100%;
	height: auto;
	padding: 0;
}

#main_contents #wrap .lineup .tour_list.charter .article .ttl_b > div p{
	font-size: 1.7rem;
	line-height: 1.8em;
	font-weight: 700;
	display: block;
	width: 100%;
	text-align: center;
	color: #fff;
	background: #F39800;
	border-radius: 5px;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .price{
	font-size: 4.0rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #E60012;
	margin: 0.1em auto 0.3em;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .price span{
	font-size: 60%;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .read{
	max-width: 760px;
	font-size: 2.5rem;
	line-height: 1.2em;
	font-weight: 700;
	color: #37589D;
	padding: 1.0em 0;
	text-align: justify;
	width: 100%;
	margin: 0 auto;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .conditions{
	max-width: 760px;
	font-size: 1.8rem;
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
	margin: 0 auto;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .annotation{
	font-size: 1.2rem;
	max-width: calc(760px - 3.2em);
	margin: 1.0em auto;
	padding: 0 1.6em;
}

#main_contents #wrap .lineup .tour_list.charter .charter_cassette .article .annotation li{
	list-style: "※ ";
	line-height: 1.4em;
	font-weight: 400;
	text-align: justify;
	padding: 0.2em 0;
}

#main_contents #wrap .lineup .tour_list.plan h3, #main_contents #wrap .lineup .tour_list.dinner h3{
	margin: 0 auto 0.5em;
}

#main_contents #wrap .lineup .tour_list.plan .sub, #main_contents #wrap .lineup .tour_list.dinner .sub{
	font-size: 5.0rem;
	line-height: 1.2em;
	font-weight: 700;
	text-align: center;
	margin: 0 auto;
}

#main_contents #wrap .lineup .tour_list.dinner .sub{
	margin-bottom: 0.5em;	
}

#main_contents #wrap .lineup .tour_list.dinner .set-period {
    text-align: start;
    font-size: 2.5rem;
    font-weight: 700;
    padding-left: 26px;
}

#main_contents #wrap .lineup .tour_list.dinner .attention_txt {
    text-align: end;
    padding-right: 32px;
    font-size: 1.2rem;
}

#main_contents #wrap .lineup .tour_list.dinner .tour_list_slider .tour-wrap{
	display: flex;
	padding: 2%;
	gap:15px;
}
#main_contents #wrap .lineup .tour_list.dinner .tour_wrap .tour_cassette{
	display: flex;
	flex-direction: column;
	height: auto;
}
.tour_cassette.OKA, .tour_cassette.SSB, .tour_cassette.CTS{
	width: calc(100% / 3);
}

#main_contents #wrap .lineup .tour_list.dinner .tour_wrap .tour_cassette .article .price em{
	font-size: 2.4rem;
}

#main_contents #wrap .lineup .tour_list.dinner .tour_wrap .tour_cassette .article .price span{
	font-size: 2rem;
}

#main_contents #wrap .lineup .tour_list.plan .read{
	font-size: 2.5rem;
	line-height: 1.2em;
	font-weight: 700;
	text-align: center;
	margin: 2.0em auto 1.0em;
}
#main_contents #wrap .lineup .tour_list.plan .attention_txt{
    text-align: end;
    padding-right: 32px;
    font-size: 1.2rem;
}

#main_contents #wrap .lineup .tour_list.plan .sub-txt{
	font-size: 2.5rem;
	font-weight: 700;
	margin-top: 2rem;
}

#main_contents #wrap .lineup .tour_list.plan .sub-txt-sub{
	font-size: 1.8rem;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 24px;
	padding-bottom: 12px;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item{
	display: flex;
    flex-direction: column;
	width: calc(86% / 3 - 24px) !important;
	justify-content: space-between;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
	border-radius: 15px;
	margin-top: 16px;
	margin-right: 0 !important;
	padding-top: 16px;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item h4 {
	font-size: 2.6rem;
    line-height: 1.2em;
    font-weight: 700;
}

.price-cassette {
	padding: 0 30px 24px;
}
.hotel-plan, .jr-plan, .air-plan {
	position: relative;
	margin-top: 2em;
	padding: 1em .5em .5em;
	border: 2px solid #c71628;
	border-radius: 15px;
	display: flex;
    align-items: center;
	justify-content: center;
}
.hotel-plan {
    margin-top: 4em !important;
	padding-bottom: 1.4em;
}
.hotel-plan:after, .jr-plan:after, .air-plan:after {
	position: absolute;
    right: 12px;
	font-family: 'Material Icons Round';
    content: "\e7cd";
    font-size: 2.0rem;
    color: #c71628;
	transform: rotate(-90deg);
}
.hotel-plan:hover, .jr-plan:hover, .air-plan:hover {
	opacity: .6;
    transition: all .5s ease;
}
.hotel-plan dt, .jr-plan dt, .air-plan dt {
	display: flex;
	align-items: center;
	position: absolute;
	top:0;
	left:0;
	padding-right: 5px;
	font-size: 1.4rem;
	font-weight: bold;
	color: #000;
	background-color: #fff;
	transform: translateY(-50%) translateX(1em);
}
.hotel-plan dt:before, .jr-plan dt:before, .air-plan dt:before {
	font-family: 'Material Icons Round';
	font-size: 2.0rem;
	color: #656972;
	margin: 0 3px 0 5px;
	line-height: 1;
}
.hotel-plan dt:before {
	content: "\ea40";
}
.jr-plan dt:before {
	content: "\e570";
}
.air-plan dt:before {
	content: "\e539";
}
.price-item {
	color: #cc0000;
	line-height: 1.3;
	font-weight: 700;
}
.price-item em {
	font-size: 2.4rem;
    font-weight: bold;
}
.price-item span {
	font-size: 1.8rem;
}
.route {
	color: #000;
	font-size: 1.4rem;
}
#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item .price {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: baseline;
    color: #cc0000;
    text-align: center;
	font-size: 1.4rem;
    line-height: 1.3;
    font-weight: 700;
    background: #fff;
    border-radius: 50vw;
	width: 80%;
	min-height: 2.5em;
    margin: 0 auto 8px;
	padding: 6px 0;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item .price:after {
    position: absolute;
    right: 12px;
    font-size: 2.0rem;
    font-family: 'Material Icons Round';
    content: "\e7cd";
    color: #c71628;
    transform: rotate(-90deg);
	line-height: 1.8;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item .price em {
	font-size: 2.4rem;
	line-height: 1.3;
}

#main_contents #wrap .lineup .tour_list.plan .hotel-cassette .hotel-item .price span {
	font-size: 1.8rem;
	line-height: 1.3;
}

#main_contents #wrap .lineup .tour_list.plan .pagination {
	display: none;
}

#main_contents #wrap .lineup .tour_list.plan .plan-btn {
    display: flex;
    padding: 0 24px;
}

#main_contents #wrap .lineup .tour_list .plan-btn > a {
    width: 100%;
    max-width: calc(500px - 6em);
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1.0em auto;
    font-size: 2.4rem;
    line-height: 1.2em;
    font-weight: 700;
    padding: 0.5em;
    letter-spacing: -0.02em;
    text-align: center;
    color: #231815;
    background-color: #F8B62D;
    border-radius: 1.2em;
    transition: .3s;
}

/*
#main_contents #wrap .reservation .ttl{
	padding-bottom: 0!important;
}
*/

#main_contents #wrap .reservation .ttl h2{
	margin-bottom: 0.7em!important;
}

#main_contents #wrap section .inner .reservation_txt{
	font-size: 3.0rem;
	line-height: 1.6em;
	font-weight: 500;
	margin: 0 auto 1.0em;
	text-align: center;
	margin-top: -1.5em;
}

#main_contents #wrap section .inner .reservation_link{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	width: 100%;
	max-width: 920px;
	margin: 0 auto 80px;
}

#main_contents #wrap section .inner .reservation_link a{
	width: 18%;
	max-width: 175px;
	text-align: center;
	color: #fff;
	background-color: #37589D;
	margin: 0 5px 10px;
	padding: 50px 0 30px;
	border-radius: 10px;
	transition: .3s;
}

#main_contents #wrap #kokunai_reservation .inner .reservation_link a{
	background-color: #C81528;
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .lineup .tour_list.plan .sub{
		font-size: 2.8rem;
	}
	
	#main_contents #wrap .lineup .tour_list.plan .read{
		font-size: 2.0rem;
		padding: 0 1.0em;
		margin: 2.0em auto 1.0em;
	}

	#main_contents #wrap section .inner .reservation_txt{
		font-size: 2.6rem;
	}

	#main_contents #wrap section .inner .reservation_link a{
		padding: 15px 0;
	}
}

#main_contents #wrap section .inner .reservation_link a:hover{
	opacity: 0.7;
	transition: .3s;
}

#main_contents #wrap section .inner .reservation_link a img{
	width: 38%;
	margin: 0 auto;
}

#main_contents #wrap section .inner .reservation_link a p{
	font-size: 1.4rem;
	line-height: 1.4em;
	height: 3.0em;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 1.0em auto;
}






/*

.swiper-pagination-bullets {
  width: 100px;
}

.swiper-pagination-bullet {
  width: 12px !important;
  height: 12px !important;
  margin: 0 0 0 10px !important;
  background: #fff;
}

.swiper-pagination-bullet:first-child {
  margin: 0 !important;
}
*/






















/*
.departure_tab{
	font-size: 2.0rem;
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
}
*/


/*
.region_tab{
	font-size: 2.0rem;
	display: none;
	max-width: 1000px;
	margin: 0 auto;
}
*/



/*
.tour_list .tour_cassette{
	font-size: 15px;
	width: 100px;
	height: 100px;
	background: #ccc;
	margin: 10px;
}
*/

/*
.tour_list .swiper{
	display: none;
}

.tour_list .swiper.sel{
	display: flex!important;
}
*/






/* TOP */
#main_contents #wrap .cassette{
	width: 100%;
	max-width: 996px;
	margin: 0 auto;
	background-image: url(../images/cassette_back.png);
	background-repeat: no-repeat;
	background-size: cover;
}

#main_contents #wrap .cassette > div{
	width: calc(100% - 100px);
	height:  calc(100% - 100px);
	padding: 50px;
	text-align: center;
	background-image: url(../images/frame_a_01.png), url(../images/frame_a_02.png), url(../images/frame_a_03.png), url(../images/frame_a_04.png), url(../images/frame_a_05.png), url(../images/frame_a_06.png), url(../images/frame_a_07.png), url(../images/frame_a_08.png);
	background-position: left top, right top, right bottom, left bottom, center top, right center, center bottom, left center;
	background-size: auto, auto, auto, auto, calc(100% - 196px) 100px, 100px calc(100% - 196px), calc(100% - 196px) 100px, 100px calc(100% - 196px);
	background-repeat: no-repeat;
}

#main_contents #wrap .cassette_03 > div{
	background-image: url(../images/frame_b_01.png), url(../images/frame_b_02.png), url(../images/frame_b_03.png), url(../images/frame_b_04.png), url(../images/frame_b_05.png), url(../images/frame_b_06.png), url(../images/frame_b_07.png), url(../images/frame_b_08.png);
}

#main_contents #wrap .cassette_04 > div{
	background-image: url(../images/frame_c_01.png), url(../images/frame_c_02.png), url(../images/frame_c_03.png), url(../images/frame_c_04.png), url(../images/frame_c_05.png), url(../images/frame_c_06.png), url(../images/frame_c_07.png), url(../images/frame_c_08.png);
}

#main_contents #wrap .cassette_01 .cassette_ttl{
	font-size: 5.0rem;
	line-height: 1.2em;
	font-weight: 700;
	text-align: center;
	display: inline-block;
	margin: 0.6em auto 0.5em;
	padding: 0 1.2em;
	background-image: url(../images/cassette_ttl_back.png), url(../images/cassette_ttl_back.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
	background-size: 1.0em auto, 1.0em auto;
}

#main_contents #wrap #campaign .inner .column{
	width: 100%;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	margin: 50px auto 0;
}

#main_contents #wrap section .inner .cassette .txt{
	font-size: 1.8rem;
	line-height: 1.8em;
	text-align: justify;
	color: #231815;
	margin: 0 auto;
}

#main_contents #wrap .cassette_01 .txt{
	max-width: 790px;
	padding: 0 1.0em 1.0em;
	margin: 0 auto;
	text-align: center!important;
}

#main_contents #wrap section .inner .cassette .period{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 30px;
}

#main_contents #wrap section .inner .cassette .period > p:first-child{
	font-size: 2.2rem;
	line-height: 2.2em;
	font-weight: 700;
	margin-right: 1.5em;
	display: inline-block;
	text-align: center;
	width: 10.0em;
	color: #fff;
	background: #DD3A3A;
	border-radius: 10px;
}

#main_contents #wrap section .inner .cassette_03 .period > p:first-child{
	background: #0075BE;
}

#main_contents #wrap section .inner .cassette_04 .period > p:first-child{
	background: #2E8B57;
}

#main_contents #wrap section .inner .cassette .period > p:last-child{
	font-size: 2.6rem;
	line-height: 1.8em;
	font-weight: 700;
}

#main_contents #wrap #campaign .inner .column .cassette_02{
	width: 49%;
	max-width: auto;
	margin: 0;
}

#main_contents #wrap #campaign .inner .column .cassette_02 > div{
	width: calc(100% - 100px);
	height:  calc(100% - 100px);
	padding: 50px;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .cassette_ttl{
	font-size: 3.2rem;
	line-height: 1.4em;
	font-weight: 700;
	text-align: center;
	display: inline-block;
	margin: 0 auto 0.5em;
	padding: 0.8em 0.5em 0.2em;
	letter-spacing: -0.02em;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .logo{
	width: 20%;
	height: auto;
}
	
#main_contents #wrap #campaign .inner .column > div:nth-child(2) .cassette_ttl{
	padding: 0 0.5em 0.2em;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .txt{
	max-width: 460px;
	padding: 0 1.0em;
	margin: 0 auto;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .period{
	display: block;
	justify-content: center;
	align-items: center;
	margin: 30px auto 5px;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .period > p:first-child{
	font-size: 2.0rem;
	line-height: 2.2em;
	font-weight: 700;
	margin: 0 auto 0.5em;
}

#main_contents #wrap #campaign .inner .column .cassette_02 .period > p:last-child{
	font-size: 2.4rem;
	line-height: 1.8em;
	font-weight: 700;
}

#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl_sub{
	font-size: 3.3rem;
	line-height: 1.3em;
	font-weight: 700;
	text-align: center;
	display: inline-block;
	margin: 0.3em auto 0;
	padding: 0 0.5em;
	letter-spacing: -0.02em;
}

#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl{
	font-size: 4.8rem;
	line-height: 1.3em;
	font-weight: 700;
	text-align: center;
	display: inline-block;
	margin: 0 auto 0.3em;
	padding: 0 0.5em;
	letter-spacing: -0.04em;
}

#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl span{
	font-size: 50%;
	font-weight: 500;
}

#main_contents #wrap #wbc .inner .cassette_03 .txt{
	max-width: 790px;
	padding: 0 1.0em;
	margin: 0 auto 1.0em;
}

#main_contents #wrap .cassette > div > a{
	max-width: calc(280px - 2.0em);
	font-size: 2.0rem;
	line-height: 3.0em;
	font-weight: 500;
	display: inline-block;
	margin: 1.0em auto;
	padding: 0 1.0em;
	color: #fff;
	background-color: #DD3A3A; 
	border-radius: 1.5em;
	transition: .3s;
}

#main_contents #wrap .cassette > div > p a{
	color: #4884c8;
	text-decoration: underline!important;
	transition: .3s;
}

#main_contents #wrap .cassette > div > p a:hover{
	opacity: 0.7;
	transition: .3s;
}

#main_contents #wrap .cassette_03  > div  > a{
	background-color: #0075BE; 
}

#main_contents #wrap .cassette_04  > div  > a{
	background-color: #2E8B57; 
}

#main_contents #wrap .cassette > div > a p{
	padding: 0 2.0em;
	background-image: url(../images/detail_link.png);
	background-repeat: no-repeat;
	background-size: 0.7em auto;
	background-position: 93% center;
}

@media screen and (min-width:900px) and (max-width:1280px) {
	#main_contents #wrap .cassette > div{
		width: calc(100% - 100px);
		height:  calc(100% - 100px);
		padding: 50px;
		background-size: 80px 80px, 80px 80px, 80px 80px, 80px 80px, calc(100% - 150px) 80px, 80px calc(100% - 150px), calc(100% - 150px) 80px, 80px calc(100% - 150px);
		background-repeat: no-repeat;
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 > div{
		width: calc(100% - 80px)!important;
		height:  calc(100% - 80px)!important;
		padding: 40px!important;
		background-repeat: no-repeat;
	}

	#main_contents #wrap .cassette_01 .cassette_ttl{
		font-size: 4.5rem;
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 .cassette_ttl{
		width: 100%;
		font-size: 2.2rem;
		padding: 0.8em 0 0.2em;
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 .txt{
		max-width: auto;
		padding: 0;
	}

	#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl_sub{
		font-size: 2.6rem;
	}
	
	#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl{
		font-size: 3.6rem;
	}
}
@media screen and (min-width:768px) and (max-width:899px) {
	#main_contents #wrap .cassette > div{
		width: calc(100% - 40px)!important;
		height:  calc(100% - 40px)!important;
		padding: 20px!important;
		background-size: 40px 40px, 40px 40px, 40px 40px, 40px 40px, calc(100% - 70px) 40px, 40px calc(100% - 70px), calc(100% - 70px) 40px, 40px calc(100% - 70px);
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 > div{
		width: calc(100% - 40px)!important;
		height:  calc(100% - 40px)!important;
		padding: 20px!important;
	}
}

@media only screen and (max-width: 767px) {
	#main_contents #wrap .cassette > div{
		width: calc(100% - 40px)!important;
		height:  calc(100% - 40px)!important;
		padding: 20px!important;
		background-size: 40px 40px, 40px 40px, 40px 40px, 40px 40px, calc(100% - 70px) 40px, 40px calc(100% - 70px), calc(100% - 70px) 40px, 40px calc(100% - 70px);
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 > div{
		width: calc(100% - 40px)!important;
		height:  calc(100% - 40px)!important;
		padding: 20px!important;
	}
}

@media only screen and (max-width: 899px) {
	#main_contents #wrap .cassette_01 .cassette_ttl{
		font-size: 2.5rem;
	}

		#main_contents #wrap section .inner .cassette .txt{
			font-size: 1.6rem;
			max-width: auto;
		}

	#main_contents #wrap #campaign .inner .column{
		display: block;
		margin: 50px auto 0;
		padding: 0;
	}

	#main_contents #wrap #campaign .inner .column .cassette_02{
		width: 100%;
		max-width: auto;
		margin: 30px auto;
	}
	
	#main_contents #wrap #campaign .inner .column .cassette_02 .cassette_ttl{
		width: 100%;
		font-size: 2.2rem;
		padding: 0.8em 0 0.2em;
	}

	#main_contents #wrap .cassette_01 .period{
		display: block;
		justify-content: center;
		align-items: center;
		margin: 30px auto 5px;
	}
	
	#main_contents #wrap .cassette_01 .period > p:first-child{
		font-size: 2.0rem;
		line-height: 2.2em;
		font-weight: 700;
		margin: 0 auto 0.5em;
	}
	
	#main_contents #wrap .cassette_01 .period > p:last-child{
		font-size: 2.4rem;
		line-height: 1.8em;
		font-weight: 700;
	}

	#main_contents #wrap #campaign .inner .column .cassette_02 .txt{
		max-width: auto;
		padding: 0;
	}

	#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl_sub{
		font-size: 1.8rem;
	}
	
	#main_contents #wrap #wbc .inner .cassette_03 .cassette_ttl{
		font-size: 2.6rem;
	}
	#main_contents #wrap #wbc .inner .cassette_03 .txt{
		max-width: auto;
		padding: 0;
	}
}


#main_contents #wrap .cassette > div > a:hover{
	opacity: 0.7;
	transition: .3s;
}

#main_contents #wrap section .coming_soon{
	width: 100%;
	height: auto;
	display: flex;
	padding: 5.6em 0;
	align-items: center;
	justify-content: center;
	font-size: 5.0rem;
	font-weight: 700;
	background: #F9DEB9;
	border-radius: 10px;
}


#main_contents #wrap #reservation .inner .reservation_navi{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}

#main_contents #wrap #reservation .inner .reservation_navi a{
	width: calc(24% - 2.0em);
	font-size: 1.6rem;
	line-height: 1.4em;
	padding: 1.0em 1.0em 2.5em;
	text-align: center;
	background-color: #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
    border-radius: 10px;
    color: #434343;
    background-image: url(../images/reservation_navi_back.png);
    background-repeat: no-repeat;
    background-position: 95% 95%;
    background-size: 2.2em auto;
	transition: .3s;
}

#main_contents #wrap #reservation .inner .reservation_navi a img{
	width: 55%;
	height: auto;
	margin: 0 auto;
}

#main_contents #wrap #reservation .inner .reservation_navi a h3{
	font-size: 2.0rem;
	line-height: 1.4em;
	font-weight: 700;
	margin: 0.6em auto 0;
}

#main_contents #wrap #reservation .inner .reservation_navi a p{
	text-align: justify;
	padding: 0 2.0em 0 1.0em;
	margin: 0 auto;
}

#main_contents #wrap #reservation .inner .reservation_navi a:hover{
	background-color: #FEF8EA;
	transition: .3s;
}

#main_contents #wrap #reservation .inner .reservation_btn{
	text-align: center;
	padding-bottom: 50px;
}

#main_contents #wrap #reservation .inner .reservation_btn a{
	display: inline-block;
	width: 90%;
	max-width: 500px;
	height: auto;
	font-size: 3.0rem;
	line-height: 2.2em;
	font-weight: 700;
	color: #231815;
	margin: 1.5em auto 0;
	background-color: #F8B62D;
	border-radius: 1.6em;
	transition: .3s;
}

@media only screen and (max-width: 900px) {
	#main_contents #wrap section .coming_soon{
		padding: 3.0em 0;
		justify-content: center;
		font-size: 4.0rem;
	}	

	#main_contents #wrap #reservation .inner .reservation_navi{
		flex-wrap: wrap;
	}
	
	#main_contents #wrap #reservation .inner .reservation_navi a{
		width: calc(24% - 2.0em);
		min-width: calc(200px - 2.0em);;
		margin-bottom: 20px;
		font-size: 1.4rem;
	}
	
	#main_contents #wrap #reservation .inner .reservation_navi a img{
		width: 55%;
		height: auto;
		margin: 0 auto;
	}
	
	#main_contents #wrap #reservation .inner .reservation_navi a h3{
		font-size: 1.8rem;
	}
	
	#main_contents #wrap #reservation .inner .reservation_navi a p{
		text-align: justify;
		padding: 0 2.0em 0 1.0em;
		margin: 0 auto;
	}	
}

@media screen and (max-width: 767px) {
	#main_contents #wrap #reservation .inner .reservation_navi	{
		justify-content: center;
	}
	#main_contents #wrap #reservation .inner .reservation_navi a{
		margin: 0 10px 20px;
	}
}

#main_contents #wrap #reservation .inner .reservation_btn a:hover{
	color: #fff;
	background-color: #DD3A3A;
	transition: .3s;
}

#main_contents #wrap section .inner .information_navi{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	max-width: 1131px;
	margin: 0 auto;
	padding-bottom: 40px;
}

#main_contents #wrap #kokunai_information .inner .information_navi{
	max-width: 578px;
	justify-content: center;
	margin: 0 auto;
}


#main_contents #wrap section .inner .information_navi a{
	width: 21%;
	min-width: 260px;
	margin: 0 1%;
	transition: .3s;
	margin-bottom: 20px;
}

#main_contents #wrap section .inner .information_navi a p{
	font-size: 1.6rem;
	line-height: 1.2em;
	padding: 0.3em;
	text-align: left;
	color: #231815;	
} 

#main_contents #wrap section .inner .information_navi a img{
	width: 100%;
	height: auto;
}

@media screen and (min-width:860px) and (max-width:1190px) {
	#main_contents #wrap section .inner .information_navi{
		width: 830px;
		margin: 0 auto;
	}
}

@media screen and (max-width: 859px) {
	#main_contents #wrap section .inner .information_navi{
		width: 100%;
		max-width: 530px;
		margin: 0 auto;
	}

	#main_contents #wrap section .inner .information_navi a{
		width: 46%;
		min-width: auto;
		margin: 0 2% 20px;
	}
}

#main_contents #wrap section .inner .information_navi a:hover{
	opacity: 0.7;
	transition: .3s;
}


.breadcrumb_footer{
	display: none;
}

@media screen and (max-width: 767px) {
	.breadcrumb{
		display: none!important;
	}
	
	.breadcrumb_footer{
		display: block!important;
	}
	
	.breadcrumb_footer ul{
		margin-bottom: 1px;
	}
}

a, a:link, a:visited {
    color: #125687;
    text-decoration: none;
}



/*__page_top_________ */
#page-top {
	position: fixed;
	font-size: 0;
	right: 0;
	bottom: 28px;
	z-index: 1000;
}

#page-top a img{
	width: 30px;
}

#page-top a {
	padding: 7px;
	display: block;
	background: #bc0022;
	border: 1px solid #fff;
	transition: .3s;
}

#page-top a:hover {
	opacity: 0.7;
	transition: .3s;
}


/* 以下追加 */
/* メッセージ（主に終了） */
#main_contents #wrap .message .inner{
	padding: 10px 0 30px;
}

#main_contents #wrap .message .inner p{
	font-size: 2.6rem;
	text-align: center;
	font-weight: 700;
	color: #E60012;
	max-width: calc(960px - 2.0em);
	margin: 0 auto;
	padding: 0 1.0em;
}

