@charset "UTF-8";
/*===============================================
●sp.css  画面の横幅が640pxまで
===============================================*/
@media screen and (max-width:640px){
#contents {
    width: 100%;
	float: left;
	clear: both;
	font-size: 14px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family:"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    overflow: hidden;
}
#contents .font_asap {
    font-family: 'Asap', sans-serif;
	font-weight: 600;
}
a:hover img {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity = 70);
}
#contents img {
    display: block;
	width: 100%;
}
#contents a, #contents a:link, #contents a:visited {
	color: inherit;
	text-decoration: none;
    display: block;
}
#contents ul {
    list-style: none;
	margin: 0;
	padding: 0;
}
#contents .auto {
	width: 92%;
    margin: 0 auto;
}
#contents .t_coupon {
    position: fixed;
    width: 210px;
    bottom: 0px;
    left: 0px;
    z-index: 999999;
}
#contents p, #contents h2, #contents h3, #contents h4, #contents h5 {
    margin: 0;
	padding: 0;
	border: 0;
	font-style: normal;
	font-weight: normal;
	vertical-align: baseline;
	list-style-type: none;
}
#contents figure {
    margin: 0;
}
#contents .sp_none {
    display: none !important;
}
#contents .btn {
    width: 250px;
    margin: 0 auto;
}
#contents .btn a {
    width: 100%;
	display: block;
	border-radius: 6px;
	background-color: #389fc9;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
	color: #fff;
    text-align: center;
	transition-duration: .3s;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 2px solid #389fc9;
	padding: 12px 0 10px;
}
#contents .btn a:hover {
	background-color: #fff;
	color: #389fc9;
}
#contents .title_wrapper {
    width: 100%;
    padding-top: 48px;
	position: relative;
}
#contents .title_wrapper .title_box {
	width: 92%;
    text-align: center;
    margin: 0 auto 22px;
}
#contents .title_wrapper .title_box .illust {
	width: 110px;
	margin: 0 auto 6px;
}
#contents .title_wrapper .title_box h3 {
	display: inline;
	font-size: 22px;
	font-weight: bold;
	color: #00b7ee;
	line-height: 1.55;
	background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 40%,#fff799 40%,#fff799 100%);
}
#contents .title_wrapper .sub_text {
	width: 92%;
    margin: 0 auto;
    text-align: left;
    font-size: 15px;
    line-height: 1.8;
}
#contents section {
    width: 100%;
	float: left;
	clear: both;
	position: relative;
}

#contents .bxslider {
    width: 100%;
	height: 106vw;
	float: left;
	clear: both;
}

#contents .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 7px;
}

#contents .swiper-pagination-bullet{
	width: 12px;
	height: 12px;
}
#contents .bxslider .slide {
    width: 100%;
	height: 106vw;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#contents .bxslider .slide_01 {
    background-image: url("../img/slider_01_sp.jpg");
}
#contents .bxslider .slide_02 {
    background-image: url("../img/slider_02_sp.jpg");
}
#contents .bxslider .slide_03 {
    background-image: url("../img/slider_03_sp.jpg");
}
#contents .bxslider .slide_04 {
    background-image: url("../img/slider_04_sp.jpg");
}
#contents .bxslider .slide_05 {
    background-image: url("../img/slider_05_sp.jpg");
}
#contents .bxslider .slide_06 {
    background-image: url("../img/slider_06_sp.jpg");
}

#contents #inpage_link {
    width: 100%;
	clear: both;
	text-align: center;
}
#contents #inpage_link .auto {
    width: 100%;
    margin: 0;
}
#contents #inpage_link ul {
    width: 100%;
	font-size: 0;
	line-height: 0;
}
#contents #inpage_link ul li {
    width: calc(100%/2);
	display: inline-block;
	border-bottom: 1px solid #dbdbdb;
}
#contents #inpage_link ul li:first-of-type {
    width: 100%;
}
#contents #inpage_link ul li a {
    width: 100%;
    min-height: 60px;
    display: table;
    box-sizing: border-box;
    vertical-align: middle;
	font-size: 13px;
    letter-spacing: -.05em;
	font-weight: bold;
	line-height: 1.5;
    padding: 8px 6px 8px;
	border-top: 6px solid #fff;
	transition-duration: .3s;
}
#contents #inpage_link ul li:nth-child(even) a {
	background-image: url("../img/ptn_01.png");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 2.5px;
}
#contents #inpage_link ul .mh_70 a {
    min-height: 79px;
}
#contents #inpage_link ul li a .inner {
    display: table-cell;
    vertical-align: middle;
}
#contents #inpage_link ul li a:hover {
	border-top: 6px solid #5ac4e9;
}
#contents #inpage_link ul li a .small {
	font-size: 12px;
	font-weight: bold;
}

#contents #present_conts {
	background-image: url("../img/ptn_03.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 14px;
	padding-bottom: 38px;
}
#contents #present_conts .title_wrapper {
	width: 100%;
    padding-top: 80px;
	background: url("../img/bg_img_01.png"), url("../img/bg_img_02.png");
	background-repeat: no-repeat, no-repeat;
	background-position: right 75vw top, 75vw top;
	background-size: 180px, 185px;
    padding-bottom: 29px;
}
#contents #present_conts .title_border {
	width: 92%;
    max-width: 320px;
	padding: 32px 0 28px;
    margin: 0 auto 28px;
	text-align: center;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	color: #fff;
	font-weight: bold;
	z-index: 9;
}
#contents #present_conts .title_border::before {
	content: "";
    display: block;
    width: 100%;
    height: 100%;
	background-image: url("../img/ptn_02.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 6px;
    position: absolute;
	top:  7px;
	left: 7px;
	z-index: -1;
}
#contents #present_conts .title_border::after {
	content: "";
    display: block;
    width: 100%;
    height: 100%;
	background-color: rgba(90,196,233,0.6);
	border: 7px solid #fff;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
    position: absolute;
	top:  0px;
	left: 0px;
	z-index: -1;
}
#contents #present_conts .title_border .eng {
	width: 85px;
	position: absolute;
	top: 0px;
	left: 0px;
	background-color: #389fc9;
	font-size: 12px;
	line-height: 1.4;
    letter-spacing: .15em;
    padding: 7px 0 5px;
}
#contents #present_conts .title_border p.small {
	font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
}
#contents #present_conts .title_border p:last-of-type {
	font-size: 15px;
}
#contents #present_conts .title_border h3 {
	display: inline-block;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.1;
    letter-spacing: -.02em;
	padding: 10px 0 10px;
	border-top: 3px solid #fff;
	border-bottom: 3px solid #fff;
    margin-top: 8px;
    margin-bottom: 10px;
}
#contents #present_conts .sub_text {
	color: #fff;
}
#contents #present_conts .bg_box {
	width: 100%;
	padding: 28px 3% 18px;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
}
#contents #present_conts .bg_box h4 {
	font-size: 20px;
	line-height: 1.3;
	font-weight: bold;
	color: #389fc9;
	text-align: center;
    margin-bottom: 18px;
}
#contents #present_conts .bg_box .step_list {
	width: 100%;
	position: relative;
    z-index: 9;
	text-align: center;
    margin-bottom: 30px;
}
#contents #present_conts .bg_box .step_list::before {
	content: "";
	display: block;
	width: 100%;
	background-image: url("../img/ptn_02.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 8px;
	position: absolute;
	bottom: -19px;
	left: 0;
	z-index: -1;
}
#contents #present_conts .bg_box .step_list li {
	display: block;
    margin: 0 auto 12px;
	vertical-align: top;
	width: 100%;
    max-width: 340px;
	border: 2px solid #389fc9;
    padding-bottom: 15px;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
    position: relative;
}
#contents #present_conts .bg_box .step_list li::after {
	content: "";
	display: block;
	width: 38px;
	height: 24px;
	background-image: url("../img/parts_04.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	position: absolute;
	left: 50%;
	bottom: -19px;
	margin-left: -18px;
    z-index: 1;
}
#contents #present_conts .bg_box .step_list li:last-of-type::after {
	display: none;
}
#contents #present_conts .bg_box .step_list li .step {
	width: 100%;
    background-color: #389fc9;
    color: #fff;
    font-size: 16px;
    line-height: 1.3;
    padding: 2px 0 2px;
}
#contents #present_conts .bg_box .step_list li .step .big {
    color: #fff;
    font-size: 24px;
}
#contents #present_conts .bg_box .step_list li .img {
    width: 100%;
	margin: 0 auto 10px;
}
#contents #present_conts .bg_box .step_list li .text {
    width: 100%;
    text-align: left;
    -webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
    padding: 0 18px;
}
#contents #present_conts .bg_box table {
    width: 100%;
	display: block;
    box-sizing: border-box;
	font-size: 13px;
	margin-bottom: 10px;
}
#contents #present_conts .bg_box tbody, #contents #present_conts .bg_box tr {
    width: 100%;
	display: block;
}
#contents #present_conts .bg_box table th {
    width: 100%;
	display: block;
    font-size: 15px;
    line-height: 1.4;
    font-weight: bold;
    box-sizing: border-box;
	background-color: #389fc9;
	color: #fff;
    padding: 8px 0 7px;
	text-align: center;
	border: 1px solid #389fc9;
    margin-bottom: 18px;
}
#contents #present_conts .bg_box table tr:first-of-type  th{
	border-top: 1px solid #389fc9;
}
#contents #present_conts .bg_box table tr:last-of-type  th{
	border-bottom: 1px solid #389fc9;
}
#contents #present_conts .bg_box table td {
	width: 100%;
	display: block;
    box-sizing: border-box;
	margin-bottom: 28px;
}
#contents #present_conts .bg_box table td a {
	display: inline-block;
    text-decoration: underline;
}
#contents #present_conts .bg_box table td a:hover {
    text-decoration: none;
}
#contents #present_conts .bg_box table .ta_center {
	text-align: center;
}
#contents #present_conts .bg_box table td p {
	margin-bottom: 6px;
}
#contents #present_conts .bg_box table td .red {
	color: #f7131e;
}
#contents #present_conts .bg_box table td li {
	text-indent: -1em;
    padding-left:    1em;
}
#contents #present_conts .bg_box .btn {
    margin-bottom: 42px;
}
#contents #present_conts .bg_box .btn a .icon {
	display: inline-block;
	padding-left: 26px;
	background-image: url("../img/icon_01.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 18px;
}
#contents #present_conts .bg_box .btn a:hover .icon {
	background-image: url("../img/icon_01_bl.png");
}
#contents #present_conts .bg_box .caution dt {
	font-size: 16px;
    font-weight: bold;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 14px;
}
#contents #present_conts .bg_box .caution dd {
	font-size: 13px;
	line-height: 1.4;
    margin: 0;
}
#contents #present_conts .bg_box .caution dd li {
	padding-left: 1em;
	text-indent: -1em;
    margin-bottom: 12px;
}

	.apply_box *, .apply_box *:before, .apply_box *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.apply_box {
		position: relative;
	}
	.apply_box label {
		position: absolute;
		z-index: 1;
		bottom: 0;
		width: 100%;
		height: 100px;
		cursor: pointer;
		text-align: center;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
	}
	.apply_box input:checked + label {
		background: inherit; /
	}
	.apply_box label:after {
		line-height: 2.5rem;
		position: absolute;
		z-index: 2;
		bottom: 20px;
		left: 50%;
		width: 16rem;
		content: '';
		transform: translate(-50%, 0);
		letter-spacing: 0.05em;
		color: #ffffff;
		border-radius: 20px;
		background-color: #807570;
	}
	.apply_box input {
		display: none;
	}

	.bg_box label span {
		display: inline-block;
		width: 100%;
		max-width: 250px;
		font-size: 15px;
		line-height: 1.4;
		font-weight: bold;
		color: #fff;
		border-radius: 100px;
		border: 2px solid #ec6941;
		padding: 13px 0 12px;
		background-color: #ec6941;
		background-image: url("../img/icon_19_open.png");
		background-repeat: no-repeat;
		background-position: right 20px center;
		background-size: 16px;
		transition-duration: .3s;
        position: absolute;
        left: 0;
        right: 0;
        top: 40px;
        margin: auto;
	}

	.apply_box input:checked + label span {
		background-image: url("../img/icon_19_close.png");
	}

	.bg_box label span:hover {
		background-color: #fff;
		color: #ec6941;
		background-image: url("../img/icon_19_open_on.png");
	}

	.apply_box input:checked + label span:hover {
		background-image: url("../img/icon_19_close_on.png");
	}

	.apply_box .table_wrapper {
		overflow: hidden;
		height: 250px;
		transition: all 0.5s;
	}

	.apply_box input:checked ~ .table_wrapper {
		height: auto;
		padding-bottom: 60px;
		transition: all 0.5s;
	}

#contents #ski_resort_contents {
	margin-bottom: 20px;
}
#contents #ski_resort_contents .title_wrapper {
	margin-bottom: 78px;
	background-image: url("../img/bg_img_03_pc.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
}
#contents #ski_resort_contents .ski_resort_list {
	width: 100%;
}
#contents #ski_resort_contents .ski_resort_list li {
	width: 100%;
	margin-bottom: 78px;
	background-color: #fff;
	box-shadow:1px 1px 10px 0px rgba(0,0,0,0.2);
    position: relative;
}
#contents #ski_resort_contents .ski_resort_list li:last-of-type {
	margin-bottom: 0;
}
#contents #ski_resort_contents .ski_resort_list li .text_box {
	width: 100%;
	padding: 22px 4% 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
#contents #ski_resort_contents .ski_resort_list li .text_box .fukidashi {
	display: block;
    width: 100%;
	font-size: 13px;
	line-height: 1.3;
    text-align: center;
	position: absolute;
	left: 0;
	top: -42px;
}
#contents #ski_resort_contents .ski_resort_list li .text_box .fukidashi .icon {
	display: inline-block;
	font-weight: bold;
	padding: 0 18px;
	background: url("../img/parts_01.png"), url("../img/parts_02.png");
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	background-size: 12px, 12px;
}
#contents #ski_resort_contents .ski_resort_list li .text_box h4 {
	text-align: center;
	font-size: 20px;
	line-height: 1.3;
	font-weight: bold;
	color: #00b7ee;
	margin-bottom: 8px;
}
#contents #ski_resort_contents .ski_resort_list li .text_box .text {
	display: inline-block;
    margin-bottom: 16px;
}
#contents #ski_resort_contents .ski_resort_list li .text_box .btn a {
	background-color: #00b7ee;
	border-color: #00b7ee;
}
#contents #ski_resort_contents .ski_resort_list li .text_box .btn a:hover {
	background-color: #fff;
	color: #00b7ee;
}

#contents #review_conts {
	padding-bottom: 37px;
    background-color: #e6f6fb;
}
#contents #review_conts h4 {
	font-size: 26px;
	line-height: 1.3;
	font-weight: bold;
	color: #00b7ee;
	text-align: center;
	margin-bottom: 15px;
}

	.review-container {
		margin-bottom: 50px;
	}

	.review-list {
		margin-bottom: 40px;
	}

	.review-list .review-detail {
		background-color: #fff;
		box-shadow: 1px 1px 6px 0 rgba(0, 0, 0, 0.08);
		width: 100%;

	}


	.review-list .review-detail .review-inner {
		margin: 20px 20px 24px;
	}

	#contents .review-detail .img {
		position: relative;
		width: 100%;
		margin: 0 auto 15px;
	}

	#contents .review-detail .img:before {
		content: "";
		display: block;
		padding-top: 100%;
	}

	#contents .review-detail img {
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		object-fit: cover;
	}

	#contents .review-detail .title {
		font-size: 17px;
		line-height: 1.5;
		font-weight: bold;
		color: #00b7ee;
		margin-bottom: 5px;
	}

	#contents .review-detail .text {
		font-size: 15px;
		line-height: 25px;
		border-bottom: solid 1px #f5f5f5 !important;
        padding-bottom: 4px;
	}

	#contents .review-detail dl {
		font-size: 11px;
		line-height: 1.5;
		padding-left: 17px;
		font-weight: bold;
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 12px;
		margin: 0;
	}

	#contents .review-detail dl.date_a {
		background-image: url("../img/icon_17.png");
		margin: 13px 0 10px;
	}

	#contents .review-detail dl.date_b {
		background-image: url("../img/icon_18.png");
	}

	#contents .review-detail dt,
	#contents .review-detail dd {
		display: inline-block;
		margin: 0 9px 0 0;
	}

	#contents .review-detail .link {
		width: 100%;
		font-size: 14px;
		line-height: 1.5;
		padding-top: 15px;
		text-align: center;
	}

	#contents .review-detail .link a {
		display: inline-block;
		font-weight: bold;
		color: #00b7ee;
		text-decoration: underline;
	}

	.review-button-area {
		text-align: center;
	}

	#contents #review_conts .review-button-area .btn {
		display: inline-block;
		width: 230px;
		margin-bottom: 20px;
	}


	#contents #review_conts .review-button-area .btn a {
		border-color: #ec6941;
		color: #fff;
		background-color: #ec6941;
	}

	#contents #review_conts .review-button-area .btn a:hover {
		background-color: #fff;
		color: #ec6941;
	}

	#review_conts .swiper-button-prev,
	#review_conts .swiper-button-next {
		width: 60px;
	}
    .swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 20%;
	}
    
	#review_conts .swiper-button-prev:after,
	#review_conts .swiper-button-next:after{
		height: 60px;
		width: 60px;
		background-size: 60px;
		background-repeat: no-repeat;
		content: ' ';
	}
     #review_conts .swiper-button-prev, #review_conts .swiper-container-rtl #review_conts .swiper-button-next {
    left: -5px;
    right:auto
}
#review_conts .swiper-button-next, #review_conts .swiper-container-rtl #review_conts .swiper-button-prev {
    right: -5px;
    left:auto
}
    #review_conts .swiper-button-next, #review_conts .swiper-button-prev {
    position: absolute;
    top: 50vw;
    outline: none;
}
	#review_conts .swiper-button-prev:after{
		background-image: url('../img/icon_20_left.png');
	}

	#review_conts .swiper-button-next:after{
		background-image: url('../img/icon_20_right.png');
	}


#contents #guide_conts {
    background-image: url("../img/ptn_03.jpg");
    background-repeat: repeat;
    background-position: center center;
    background-size: 14px;
    padding-bottom: 44px;
}
#contents #guide_conts .title_box {
	padding-top: 0;
    margin-bottom: 17px;
}
#contents #guide_conts h3 {
	color: #fff;
    background: none;
}
#contents #guide_conts .sub_text {
	width: 100%;
    color: #fff;
    margin: 0 auto 18px;
    text-align: left;
    font-size: 15px;
    line-height: 1.8;
}
#contents #guide_conts .guide_list {
	width: 80%;
    max-width: 380px;
    margin: 0 auto 36px;
}
#contents #guide_conts .guide_list li {
	width: 100%;
    background-color: #fff;
    margin-bottom: 20px;
}
#contents #guide_conts h4 {
	font-size: 20px;
    line-height: 1.3;
    text-align: center;
    margin-bottom: 20px;
}
#contents #guide_conts h4 .line {
    font-weight: bold;
    color: #fff;
    display: inline-block;
}
#contents #guide_conts h4 .line::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    margin-bottom: 4px;
}
#contents #guide_conts h4 .line::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    margin-top: 4px;
}
#contents #guide_conts .for_customer {
	width: 100%;
    max-width: 540px;
    font-size: 0;
    line-height: 0;
    letter-spacing: -.4em;
    margin: 0 auto;
}
#contents #guide_conts .for_customer li {
	width: 49%;
    margin-right: 2%;
    margin-bottom: 8px;
    display: inline-block;
    background-color: #fff;
}
#contents #guide_conts .for_customer li:nth-of-type(2n) {
    margin-right: 0;
}

#contents #ski_resort_contents .ski_resort_list li .img {
	width: 100%;
	height: 60vw;
	background-image: url("../img/img_04.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#contents #ski_resort_contents .ski_resort_list li:nth-of-type(2) .img {
	background-image: url("../img/img_05.jpg");
}
#contents #ski_resort_contents .ski_resort_list li:nth-of-type(3) .img {
	background-image: url("../img/img_06.jpg");
}
#contents #ski_resort_contents .ski_resort_list li:nth-of-type(4) .img {
	background-image: url("../img/img_07.jpg");
}
#contents #ski_resort_contents .ski_resort_list li:nth-of-type(5) .img {
	background-image: url("../img/img_08.jpg");
}

#contents #reason_contents {
	margin-bottom: 60px;
}
#contents #reason_contents .title_wrapper {
	margin-bottom: 0;
	padding-bottom: 40px;
	background-image: url("../img/bg_img_05_pc.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
}
#contents #reason_contents .title_wrapper .title_box h3 {
	color: #00479d;
}
#contents #reason_contents .movie_box {
	width: 100%;
	height: 0;
    padding-top: 56.25%;
	margin: 0 auto 60px;
	box-shadow:1px 1px 10px 0px rgba(0,0,0,0.2);
	position: relative;
}
#contents #reason_contents .movie_box iframe {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}
#contents #reason_contents .box {
	width: 100%;
	margin-bottom: 50px;
	position: relative;
}
#contents #reason_contents .box:last-of-type {
	margin-bottom: 0;
}
#contents #reason_contents .box .text_box {
	width: 100%;
	padding: 28px 5% 28px;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
	box-shadow:1px 1px 10px 0px rgba(0,0,0,0.2);
	position: relative;
	z-index: 9;
}
#contents #reason_contents .box .text_box .number {
	width: 52px;
	position: absolute;
	top: -24px;
	left: -15px;
}
#contents #reason_contents .box .text_box h4 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
	color: #00479d;
	margin-bottom: 12px;
}
#contents #reason_contents .box .img {
	width: 100%;
	height: 59vw;
    margin-top: -12px;
	background-image: url("../img/img_11.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#contents #reason_contents .box:nth-of-type(2) .img {
	background-image: url("../img/img_12.jpg");
	left: auto;
	right: 0;
}
#contents #reason_contents .box:nth-of-type(3) .img {
	background-image: url("../img/img_13.jpg");
}

#contents #access_contents {
	background-image: url("../img/ptn_03.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 14px;
	padding-bottom: 48px;
}
#contents #access_contents .title_wrapper {
	margin-bottom: 1px;
}
#contents #access_contents .title_wrapper h3 {
	color: #fff;
	background: none;
}
#contents #access_contents .bg_box {
	width: 100%;
	padding: 28px 5% 28px;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
}
#contents #access_contents .bg_box dl {
	width: 100%;
    margin: 0 auto 30px;
}
#contents #access_contents .bg_box dl:last-of-type {
	margin-bottom: 0;
}
#contents #access_contents .bg_box dl dt {
	width: 100%;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
	color: #fff;
    padding: 10px 5% 9px;
    -webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	z-index: 9;
	text-align: center;
    margin-bottom: 24px;
}
#contents #access_contents .bg_box dl dt::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: #5ac4e9;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
#contents #access_contents .bg_box dl dt::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("../img/ptn_02.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 6px;
	position: absolute;
	top: 6px;
	left: 5px;
	z-index: -2;
}
#contents #access_contents .bg_box dl dd {
	width: 100%;
	font-size: 15px;
	line-height: 1.7;
    margin: 0;
}
#contents #access_contents .bg_box dl dd ul {
	padding: 0;
    margin: 0;
}
#contents #access_contents .bg_box dl dd .caution_text li {
	text-indent: -1em;
    padding-left: 1em;
    line-height: 1.4;
    margin-bottom: 8px;
}
#contents #access_contents .bg_box dl dd .bus_wrapper {
	width: 100%;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
    margin-bottom: 36px;
}
#contents #access_contents .bg_box dl dd .bus_wrapper .bus {
	width: 80%;
    max-width: 280px;
    margin: 0 auto;
}
#contents #access_contents .bg_box dl dd .img {
    
}
#contents #access_contents .bg_box dl dd h4 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
    margin-bottom: 12px;
}
#contents #access_contents .bg_box dl dd .btn a {
	background-color: #194351;
	border-color: #194351;
}
#contents #access_contents .bg_box dl dd .btn a:hover {
	background-color: #fff;
	color: #194351;
}

#contents #michinoeki_contents .title_wrapper {
	background-image: url("../img/bg_img_07_pc.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	padding-bottom: 38px;
}
#contents #michinoeki_contents .title_wrapper .title_box .illust {
    width: 120px;
    margin-bottom: 12px;
}
#contents #michinoeki_contents .title_wrapper .title_box h3 {
	color: #ec6941;
}
#contents #michinoeki_contents .title_wrapper .title_box .sub_text {
	margin-top: 38px;
}
#contents #michinoeki_contents .btn a {
	background-color: #ec6941;
	border-color: #ec6941;
}
#contents #michinoeki_contents .btn a:hover {
	background-color: #fff;
	color: #ec6941;
}
#contents #michinoeki_contents .loop_box {
	background:url(../img/loop_01.jpg);
	background-repeat: repeat-x;
	background-position: left top;
	background-size: cover;
	width: 100%;
	height: 45vw;
	-moz-animation: loop 50s linear infinite;
	animation: loop 50s linear infinite;
}
@keyframes loop {
	0% {background-position: 2000px 0;}
	25% {background-position: 1500px 0;}
	50% {background-position: 1000px 0;}
	75% {background-position: 500px 0;}
	100% {background-position: 0 0;}
}
 
@-moz-keyframes loop {
	0% {background-position: 2000px 0;}
	25% {background-position: 1500px 0;}
	50% {background-position: 1000px 0;}
	75% {background-position: 500px 0;}
	100% {background-position: 0 0;}
}

#contents #onsen_contents {
	background-image: url("../img/ptn_04.jpg");
	background-repeat: repeat;
	background-position: left top;
	background-size: 64px;
    padding-bottom: 64px;
}
#contents #onsen_contents .title_wrapper .title_box {
	margin-bottom: 40px;
}
#contents #onsen_contents .title_wrapper .title_box .illust {
    width: 120px;
    margin-bottom: 12px;
}
#contents #onsen_contents .title_wrapper .title_box h3 {
	color: #a12024;
}
#contents #onsen_contents .onsen_list {
	width: 100%;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#contents #onsen_contents .onsen_list li {
	width: 100%;
	background-color: #fff;
	position: relative;
	box-shadow:1px 1px 10px 0px rgba(0,0,0,0.2);
    margin-bottom: 20px;
}
#contents #onsen_contents .onsen_list li:last-of-type {
    margin-bottom: 0;
}
#contents #onsen_contents .onsen_list li .img {
	width: 100%;
}
#contents #onsen_contents .onsen_list li .text_box {
	width: 100%;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 26px 5% 23px;
}
#contents #onsen_contents .onsen_list li .text_box h4 {
	font-size: 18px;
    line-height: 1.3;
    font-weight: bold;
	color: #a12024;
    margin-bottom: 10px;
}
#contents #onsen_contents .onsen_list li .text_box .btn {
    margin-top: 18px;
}
#contents #onsen_contents .onsen_list li .text_box .btn a {
	background-color: #a12024;
	border-color: #a12024;
}
#contents #onsen_contents .onsen_list li .text_box .btn a:hover {
	background-color: #fff;
	color: #a12024
}

#contents #link_contents {
    background-color: #ededed;
	padding-top: 38px;
	padding-bottom: 60px;
	text-align: center;
}
#contents #link_contents h3 {
    width: 100%;
    max-width: 340px;
	margin: 0 auto 45px;
}
#contents #link_contents .tel_box {
    width: 100%;
    max-width: 340px;
	margin: 0 auto 30px;
	border-radius: 6px;
	border: 2px solid #000;
	-webkit-box-sizing: border-box;
	moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 18px 0 12px;
	position: relative;
}
#contents #link_contents .tel_box .fukidashi {
    width: 127px;
	position: absolute;
	top: -24px;
	left: -18px;
}
#contents #link_contents .tel_box .text {
    font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
    margin-bottom: 3px;
}
#contents #link_contents .tel_box .tel {
    font-size: 23px;
	font-weight: bold;
	line-height: 1.4;
}
#contents #link_contents .tel_box .tel a {
    display: inline;
	font-weight: bold;
}
#contents #link_contents .tel_box .tel .yellow {
    color: #e4a538;
	font-weight: bold;
}
#contents #link_contents .contact_list {
    width: 100%;
	margin: 0 auto;
}
#contents #link_contents .contact_list li {
    width: 100%;
	box-shadow:1px 1px 10px 0px rgba(0,0,0,0.2);
    margin-bottom: 30px;
}
.review-container {
    width: 96%;
    margin: 0 auto 20px;
}


}