@charset "utf-8";

/*********************
	.container
*********************/
.container{
	width:100%;
	margin:0 auto;
}

/*********************
	.hero
*********************/
.hero {
	width: 100%;
	background: #EBEDE6;
}
.hero_img {
	position: relative;
	max-width: 1278px;
	margin: auto;
}
.hero_img img {
	height: auto;
	vertical-align: bottom;
}
.hero_link {
	position: absolute;
	right: 9%;
	bottom: 30px;
	width: 690px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 50px;
}
.hero_link_item a {
	position: relative;
	width: 100%;
	padding: 22px 50px 22px 30px;
	color: #D4002F;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size: 24px;
	background: #fff;
	border: 1px solid #D4002F;
	box-sizing: border-box;
	display: block;
	transition: .3s;
}
.hero_link_item a:hover {
	color: #fff;
	background: #D4002F;
}
.hero_link_item-detail a,
.hero_link_item-video a,
.hero_link_item-detail a:hover,
.hero_link_item-video a:hover {
	background-repeat:no-repeat;
	background-size: 24px;
	background-position: 93% 50%;
}
.hero_link_item-detail a {
	background-image: url("/assets/img/bg_btn_rainbow_1.png");
}
.hero_link_item-detail a:hover {
	background-image: url("/assets/img/bg_btn_rainbow_1_h.png");
}
.hero_link_item-video a {
	background-image: url("/assets/img/bg_btn_rainbow_2.png");
}
.hero_link_item-video a:hover {
	background-image: url("/assets/img/bg_btn_rainbow_2_h.png");
}
@media only screen and (max-width:1295px) {
	.hero_link {
		width: 54%;
	}
	.hero_link_item a {
		font-size: 20px;
	}
}
@media only screen and (max-width:1081px) {
	.hero_link {
		right: 3%;
		bottom: 5%;
		width: 60%;
		gap: 0 4%;
	}
	.hero_link_item a {
		padding: 15px 50px 15px 20px;
		font-size: 16px;
	}
	.hero_link_item-detail a,
	.hero_link_item-video a,
	.hero_link_item-detail a:hover,
	.hero_link_item-video a:hover {
		background-size: 20px;
	}
}

/*********************
	.main_img_area
*********************/
.main_img_area{
	width:100%;
	height:460px;
	background:url("/assets/img/img_top_main.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	/* background-position:50% 0%; */
	position:relative;
	margin:0 auto 20px;
	/* background-position: right 0 bottom 0; */
	background-position: right 0 top 0;
}
@media only screen and (max-width:767px) {
	.main_img_area{
		background-position: center 0 top 0;
	}
}
.main_img_area ul{
	width:100%;
	max-width:1120px;
	text-align:center;
	margin:0 auto;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
body.en .main_img_area ul{
	top: 59%;
}

.main_img_ttl{
	padding-top: 105px;
}
.main_img_area .txt_1{
	color:#fff;
	font-size:20px;
	font-weight:bold;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
}
.main_img_area .txt_2{
	color:#fff;
	font-size:48px;
	font-weight:bold;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
	text-align: center;
}
.main_img_area .txt_3{
	color:#fff;
	font-size:16px;
	margin: 20px auto 0 auto;
	line-height: 200%;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
	font-weight: bold;
}

body.tw .main_img_area .txt_3{
	color:#fff;
	font-size:18px;
	margin: 20px auto 0 auto;
	line-height: 200%;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
	font-weight: bold;
}
.main_img_area ul li.txt_3.mbottom20{
	margin-bottom: 20px;
}
.main_img_area ul li.txt_4{
	color:#fff;
	font-size:18px;
	margin: 0 auto 20px auto;
	line-height: 200%;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
	font-weight: bold;
}
.main_img_area ul li.link_btn a{
	display:block;
	width:240px;
	min-height:35px;
	line-height:35px;
	text-align:center;
	margin:0 auto;
	border:1px solid #fff;
	color:#fff;
	font-weight:bold;
	text-shadow:0 0 5px rgba(0, 0, 0, 0.8);
}

.main_img_area ul li.tw_read {
	font-family: 宋体, Arial, Helvetica, sans-serif;
}
.main_img_area ul li.tw_shadow {
	text-shadow:  2px  2px 10px #333 ,
	-2px  2px 10px #333 ,
	2px -2px 10px #333 ,
	-2px -2px 10px #333 !important;
}
.main_img_area ul li.link_btn a:hover{
	background:#fff;
	color:#333;
	transition:.3s;
	text-shadow:none;
}

/* main_img_area-en */
.main_img_area-en {
	width:100%;
	height:460px;
	background:url("/assets/img/img_top_main_en.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
	margin:0 auto 20px;
	/* background-position: right 0 bottom 0; */
	background-position: right 0 top 0;
}
body.en .main_img_area-en ul {
	top: 57%;
}
.main_img_area-en .main_img_ttl{
	/*padding-top: 50px;*/
	padding-top: 30px;
}
.main_img_area-en .txt_3 {
	line-height: 150%;
}
body.en .main_img_area-en ul li.link_btn {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 98%;
	/* width: 58%; */
	max-width: 600px;
}

.main_img_area-en ul li.link_btn a {
	min-height:68px;
	display: inline-flex;
	line-height: 100%;
	/*background-color: rgba(255,255,255, 0.3);*/
	background-color: rgba(10,10,10, 0.7);
	justify-content: center;
	align-items: center;
	/*margin-top: 20px;*/
	margin: 20px auto 0;
	position: relative;
	padding: 0 10px;
}
/*
.main_img_area-en ul li.link_btn a:nth-of-type(1) {
	margin-right:50px;
}
*/

.main_img_area-en ul li.link_btn .new::before {
	content: 'New!';
	position: absolute;
	padding: 5px 10px;
	top:-10px;
	left:-10px;
	background:#f00;
	color:#fff;
	font-weight: bold;
	text-shadow: none;
}

/* main_img_area-jp */
.main_img_area-jp {
	width:100%;
	height:460px;
	background:url("/assets/img/img_top_main_jp.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:50% 0%;
	position:relative;
	margin:0 auto 20px;
	/* background-position: right 0 bottom 0; */
	background-position: right 0 top 0;
}
body.jp .main_img_area-jp ul {
	/* top: 70%; */
	top: 65%;
}
.main_img_area-jp .main_img_ttl{
	/*padding-top: 140px;*/
	/* padding-top: 110px; */
	padding-top: 80px;
}
.main_img_area-jp .txt_3 {
	line-height: 150%;
}
body.jp .main_img_area-jp ul li.link_btn {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/* width: 98%; */
	width: 58%;
}

.main_img_area-jp ul li.link_btn a {
	height:75px;
    display: inline-flex;
    line-height: 100%;
    /*background-color: rgba(255,255,255, 0.3);*/
    background-color: rgba(10,10,10, 0.7);
    justify-content: center;
    align-items: center;
    /*margin-top: 20px;*/
    margin: 20px auto 0;
	position: relative;
}
/*
.main_img_area-jp ul li.link_btn a:nth-of-type(1) {
	margin-right:50px;
}
 */
/*
.main_img_area-jp ul li.link_btn a::before {
	content: 'New!';
	position: absolute;
	padding: 5px 10px;
	top:-10px;
	left:-10px;
	background:#f00;
	color:#fff;
	font-weight: bold;
	text-shadow: none;
}
*/
@media only screen and (max-width:860px) {
	body.en .main_img_area-en ul li.link_btn {
		width: 78%;
	}
	body.jp .main_img_area-jp ul li.link_btn {
		width: 78%;
	}
}


@media only screen and (max-width:767px) {
	.main_img_ttl .txt_1{
		font-size:15px;
	}
	.main_img_ttl .txt_2{
		font-size:42px;
	}
	.main_img_area{
		height:375px;
	}
	.main_img_area ul li.txt_1{
		font-size:15px;
	}
	.main_img_area ul li.txt_2{
		font-size:42px;
	}
	.main_img_area ul li.txt_3{
		display: none;
	}
	.main_img_area ul li.link_btn a{
		width:170px;
		font-size:14px;
		margin:10px auto 0;
	}
	body.en .main_img_area ul{
		top: 66%;
	}
	.main_img_area-en .main_img_ttl{
		width: 90%;
		margin: auto;
		padding-top: 30px;
	}
	.main_img_area-en ul li.link_btn a {
		width:70%;
		font-size:14px;
		margin:10px auto 0;
	}
	.main_img_area-en ul li.link_btn a:nth-of-type(1) {
		margin-right:auto;
	}
	.main_img_area-en ul li.link_btn a:nth-of-type(2) {
		margin-top:20px;
	}
	body.jp .main_img_area ul{
		top: 66%;
	}
	.main_img_area-jp .main_img_ttl{
		width: 90%;
		margin: auto;
		padding-top: 30px;
	}
	.main_img_area-jp ul li.link_btn a {
		width:70%;
		font-size:14px;
		margin:10px auto 0;
	}
	.main_img_area-jp ul li.link_btn a:nth-of-type(1) {
		margin-right:auto;
	}
	.main_img_area-jp ul li.link_btn a:nth-of-type(2) {
		margin-top:20px;
	}
}

@media only screen and (max-width:530px) {
	body.jp .main_img_area ul{
		top: 73%;
	}
}
@media only screen and (max-width:836px) {
	.main_img_area-jp .main_img_ttl .txt_2 {
		font-size: 44px;
	}
}
@media only screen and (max-width:440px) {
	.main_img_area-jp .main_img_ttl .txt_2 {
		line-height: 120%;
		font-size: 40px;
	}
	body.jp .main_img_area ul{
		top: 77%;
	}
}

/*********************
	.main_under_bnr
*********************/
.main_under_bnr {
	width: 90%;
    max-width: 400px;
    margin: 30px auto 0;
	@media (width < 768px) {
		margin: 10px auto 0;
    }
}

/*********************
	.main_under_bnr_txt
*********************/
.main_under_bnr_txt {
	width: 90%;
	margin: auto;
	font-weight: bold;
	text-align: center;
	@media (width < 768px) {
		margin: 0 auto 20px;
    }
}

/*********************
	.g_nav
*********************/
.g_nav{
/*	width:90%;*/
	max-width:900px;
	margin:0 auto;
}
.g_nav li{
	width:220px;
	float:left;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	color:#333;
	padding-bottom:20px;
}
.g_nav li .img{
	width:80%;
	margin:0 auto;
	padding-top:15px;
}
.g_nav li.g_nav_1{
	position:relative;
}
.g_nav li.g_nav_1:hover{
	cursor:pointer;
	transition:.3s;
}
.g_nav li.g_nav_1:hover:after{
	display:block;
	content:"";
	position:absolute;
	width:12px;
	height:12px;
	border-left:2px solid #333;
	border-bottom:2px solid #333;
	transform:rotate(-45deg);
	bottom:8px;
	left:0;
	right:0;
	margin:0 auto;
	transition:.3s;
	z-index:3;
}
.g_nav li.g_nav_1.active{
	color:#fff;
	background:#333;
	transition:.3s;
}
.g_nav li.g_nav_1.active:hover{
	cursor:pointer;
	color:#fff;
	transition:0s;
}
.g_nav li.g_nav_1.active:hover:after{
	display:none;
}
.g_nav li.g_nav_2,
.g_nav li.g_nav_3,
.g_nav li.g_nav_4{
	position:relative;
}
.g_nav li.g_nav_2:after,
.g_nav li.g_nav_3:after,
.g_nav li.g_nav_4:after{
	display:block;
	content:"";
	width:1px;
	height:80px;
	background:#afafaf;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
}
.g_nav li.g_nav_2 a,
.g_nav li.g_nav_3 a,
.g_nav li.g_nav_4 a{
	display:block;
}
.g_nav li.g_nav_2 a:hover,
.g_nav li.g_nav_3 a:hover,
.g_nav li.g_nav_4 a:hover{
	color:#cb000c;
	transition:.3s;
}
.g_nav li.g_nav_2 a:hover img,
.g_nav li.g_nav_3 a:hover img,
.g_nav li.g_nav_4 a:hover img{
	opacity:1.0 !important;
}
@media only screen and (max-width:767px) {
	.g_nav li{
		width:33%;
		font-size:13px;
		padding-bottom:0;
	}
	.g_nav li .img{
		width:100%;
		padding-top:0;
	}
	.g_nav li.g_nav_1:hover:after{
		display:none;
	}
/*	.g_nav li.g_nav_2:after,
	.g_nav li.g_nav_3:after{
		display:none;
	}
*/
	.g_nav li.g_nav_2,
	.g_nav li.g_nav_4{
/*		border-left:1px solid #afafaf;*/
	}
	.g_nav li.g_nav_1,
	.g_nav li.g_nav_2,
	.g_nav li.g_nav_3,
	.g_nav li.g_nav_4{
		width: 25%;
	}

}
/*********************
	.search_box
*********************/
.search_box{
	width:100%;
	background:#333;
	padding:50px 0;
	display:none;
}

.search_box input[type=radio],
.search_box .datepicker {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	display:inline;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:0;
}
.search_box input[type=radio]{
	display:none;
}
.radio + .circle{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width:14px;
	height:14px;
	border: 1px solid #fff;
	background:#fff;
	border-radius: 50%;
}
.radio:checked + .circle:before{
	display: block;
	content:"";
	position: absolute;
	top: 3px;
	left: 3px;
	width:8px;
	height:8px;
	border-radius: 50%;
	background:#333;
}

.search_wrap{
	width:500px;
	margin:0 auto;
	position:relative;
}
.search_wrap .search_close_btn{
	width:40px;
	position:absolute;
	top:-50px;
	right:-80px;
}
.search_wrap .search_close_btn:hover{
	cursor:pointer;
	opacity:0.7;
}
.search_wrap .cat{
	width:90px;
	height:30px;
	line-height:30px;
	padding-left:10px;
	box-sizing:border-box;
	background:#595959;
	color:#fff;
	font-size:14px;
	font-weight:bold;
}
.search_wrap .category_box_area{
	width:100%;
	margin:0 auto 30px;
	display:table;
}
.search_wrap .category_box_area .cat{
	display:table-cell;
	margin-right:20px;
	vertical-align:middle;
}
.search_wrap .category_box_area ul{
	display:table-cell;
	padding-left:20px;
	vertical-align:middle;
}
.search_wrap .category_box_area ul li{
	display:inline-block;
	margin-right:30px;
	padding-left:20px;
	color:#fff;
	font-size:12px;
	position:relative;
}
.search_wrap .date_box_area{
	width:100%;
	margin:0 auto 30px;
	display:table;
}
.search_wrap .date_box_area .cat{
	display:table-cell;
	margin-right:20px;
	vertical-align:middle;
}

.search_wrap .date_box{
	display:table-cell;
	padding-left:20px;
	vertical-align:middle;
	height:30px;
	line-height:30px;
	box-sizing:border-box;
	color:#fff;
	font-size:14px;
	vertical-align:middle;
}
.search_wrap .date_box img{
	width:28px;
	vertical-align:middle;
}
.search_wrap .date_box input{
	width:150px;
	height:30px;
	line-height:30px;
	background:#fff;
	box-sizing:border-box;
	vertical-align:middle;
	text-align: center;
	margin-right:10px;
}
.search_wrap .num_box_area{
	width:100%;
	margin:0 auto 30px;
	display:table;
}
.search_wrap .num_box_area .cat{
	display:table-cell;
	vertical-align:middle;
}
.search_wrap .num_box{
	display:inline-block;
	height:30px;
	line-height:30px;
	box-sizing:border-box;
	vertical-align:middle;
}
.search_wrap .num_box_area dt{
	display:inline-block;
	height:30px;
	padding-left:20px;
	font-size:12px;
	color:#fff;
}
.search_wrap .num_box_area dd{
	display:inline-block;
	height:30px;
}
.search_wrap .num_box_area dd select{
	width:70px;
	height:30px;
}

.search_wrap .search_box_area .cat{
	width:150px;
	height:30px;
	line-height:30px;
	padding-left:10px;
	box-sizing:border-box;
	background:#595959;
	color:#fff;
	font-size:14px;
	font-weight:bold;
	margin-bottom:10px;
}
.search_wrap .search_box_area .cat-l{
	width:auto;
}
.search_wrap .search_box_area input{
	width:100%;
	height:30px;
	padding:0 5px;
	box-sizing:border-box;
}
.search_box_area .btn_box{
	width:270px;
	height:50px;
	margin:40px auto 0;
}
.search_box_area .search_box_btn{
	width:270px;
	height:50px;
	line-height:50px;
	background:#cb000c;
	border-radius:8px;
	color:#fff;
	font-size:20px;
	font-weight:bold;
	text-align:center;
	border:0;
	position:relative;
}

.search_box_area .search_box_btn:before{
	display:block;
	content:"検 索";
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
}
.search_box_area .search_box_btn-en:before{
	content:"Search";
}
.search_box_area .search_box_btn-tw:before{
	content:"搜尋";
}
.search_box_area .search_box_btn:after{
	display:block;
	content:"";
	width:21px;
	height:21px;
	background-image:url("/assets/img/ico_search_off.png");
	background-repeat:no-repeat;
	background-size:21px;
	position:absolute;
	top:0;
	bottom:0;
	right:20px;
	margin:auto 0;
}
.search_box_area .search_box_btn:hover{
	cursor:pointer;
	color:#cb000c;
	background:#fff;
	transition:.3s;
}
.search_box_area .search_box_btn:hover:after{
	background-image:url("/assets/img/ico_search_on.png");
	position:absolute;
	transition:.3s;
}
@media only screen and (max-width:767px) {
	.search_box{
		padding:40px 0;
	}
	.search_wrap{
		width:100%;
		padding:0 5%;
		box-sizing:border-box;
	}
	.search_wrap .search_close_btn{
		top:-40px;
		right:0;
	}
	.search_wrap .cat{
		font-size:13px;
	}
	.search_wrap .category_box_area,
	.search_wrap .date_box_area,
	.search_wrap .num_box_area{
		display:block;
	}
	.search_wrap .category_box_area .cat,
	.search_wrap .date_box_area .cat,
	.search_wrap .num_box_area .cat{
		display:block;
		margin-bottom:10px;
		margin-right: 0;
		width: 100%;
	}
	.search_wrap .search_box_area .cat {
		width: 100%;
	}
	.search_wrap .category_box_area ul{
		display:block;
	}
	.search_wrap .category_box_area ul li{
		margin-bottom:10px;
	}
	.search_wrap .date_box{
		display:block;
		padding-left:0;
	}
	.search_wrap .date_box input{
		width:70%;
	}
	.search_wrap .num_box{
		margin-bottom:10px;
	}
	.search_box_area .search_box_btn{
		font-size:18px;
	}

}

/*********************
	.about_txt
*********************/
.about_txt{
	width:90%;
	max-width:1120px;
	margin:30px auto 70px;
	text-align:center;
	line-height:1.8;
	padding:20px;
	box-sizing: border-box;
	background: #f1e1eb;
	font-size:16px;
	border-radius: 10px;
}
@media only screen and (max-width:767px) {
	.about_txt{
		margin:30px auto;
		text-align:left;
	}
}
.headsUpTxt {
	width:90%;
	max-width: 1140px;
	margin:20px auto 40px;
	padding:15px;
	box-sizing: border-box;
	border:8px solid #cb000c;
}
.headsUpTxt_tit {
	width: 100%;
	text-align: center;
	font-size:120%;
	font-weight:bold;
	color:#cb000c;
	margin-bottom:10px;
}
.headsUpTxt_txt {
	color:#cb000c;
	line-height: 150%;
}
.headsUpTxt_txt1 {
	color:#333;
}
.headsUpTxt_list {
	margin:20px 0;
	padding-left:20px;
	box-sizing: border-box;
}
.headsUpTxt_list li {
	list-style-type: decimal;
	margin-bottom:10px;
	color:#333;
}
.headsUpTxt_list li .fcolor_red {
	color:#cb000c;
	font-weight: bold;
}

/*********************
	.maintenance
*********************/
.maintenance {
	border: 8px solid #260cb6;
	width: 90%;
	max-width: 1140px;
	padding: 15px;
	margin: 0 auto;
	box-sizing: border-box;
	font-weight: bold;
	color: #260cb6;
	text-align: center;
	font-size: 130%;
}

/*********************
	.recomend_area
*********************/
.box_ttl{
	width:100%;
	max-width:1120px;
	padding-left:40px;
	box-sizing:border-box;
	font-size:32px;
	font-weight:bold;
	margin:0 auto 40px;
	position:relative;
}
.box_ttl:before{
	display:block;
	content:"";
	width:20px;
	height:4px;
	background:#cb000c;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto 0;
}
.recomend_area{
	width:100%;
	background:#f5f5f5;
	padding:60px 0;
}
.recomend_area .recomend_wrap{
	width:100%;
	max-width:1140px;
	margin:0 auto;

}
.recomend_wrap .plan_list{
	width:100%;
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap: wrap;
}
.recomend_wrap .plan_list .plan_box{
	width:25%;
	display: flex;
	justify-content: space-between;
	position:relative;
	margin-bottom: 10px;
}
.recomend_wrap .plan_list .plan_box a{
	display:block;
	max-width:250px;
	width:calc(100% - 20px);
	background:#fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}
.recomend_wrap dl{
	width:100%;
	padding-bottom:40px;
	position:relative;

}

.recomend_wrap .plan_box dt .img_box{
	width:100%;
	height:100%;
	padding-top:76%;
	position:relative;
	background:#fff;
	line-height:0;
	border:1px solid #afafaf;
	box-sizing:border-box;
	margin:0 auto 20px;
}
.recomend_wrap .plan_box dt dt .img_box .img_inner{
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
.recomend_wrap .plan_box dt .img_box .img_inner img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
	height: auto;
	width: auto;
}
.recomend_wrap .plan_box dt .img_box .caption{
	display:block;
	width:96%;
	text-align:right;
	font-size:10px;
	line-height:1.4;
	color:#fff;
	text-shadow:1px 0px 0px #000, 0px 1px 0px #000, -1px 0px 0px #000, 0px -1px 0px #000;
	position:absolute;
	bottom:5px;
	right:2%;
}
.recomend_wrap .plan_box dt .area{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 10px;
	font-size:12px;
	color:#cb000c;
}
.recomend_wrap .plan_box dt .name{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 20px;
	font-size:16px;
	font-weight:bold;
	line-height:1.4;
}
.recomend_wrap .plan_box dt .price{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
	margin:0 auto 20px;
	font-size:12px;
}
.recomend_wrap .plan_box a dd{
	width:100%;
	height:24px;
	line-height:24px;
	background:#333;
	text-align:center;
	color:#fff;
	font-size:12px;
	position:absolute;
	bottom:0;
	left:0;
}
.recomend_wrap .plan_box a:hover dd{
	background:#cb000c;
	transition:.3s;
}
@media only screen and (max-width:767px) {
	.box_ttl{
		width:96%;
		font-size:20px;
		margin:0 auto 30px;
	}
	.recomend_area{
		width:100%;
		background:#f5f5f5;
		/*padding:40px 0;*/
		padding:60px 0 40px;
	}
	.plan_wrap{
		width:95%;
		margin-left:5%;
		padding-bottom:20px;
		padding-right:20px;
		box-sizing:border-box;
		overflow-x:scroll;
	}
	.recomend_wrap .plan_list{
		width:1120px;
		flex-wrap: nowrap;
	}
	.recomend_wrap .plan_list .plan_box {
		min-width: 250px;
	}
	.recomend_wrap .plan_box dt .area{
		font-size:13px;
	}
	.recomend_wrap .plan_box dt .name{
		font-size:14px;
	}


}

/*********************
	.map_area
*********************/
.map_area{
	width:100%;
	padding:60px 0;
}
.map_area .map_wrap{
	width:100%;
	max-width:1120px;
	margin:0 auto;

}
.map_box{
	max-width:780px;
	width:70%;
	float:left;
	position:relative;
	margin-left:20px;
}
.map_box li{
	width:100%;
}
.map_box li.active{
	filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.4));
	transition:.3s;
}
.map_box .map{
	position:absolute;
	top:0;
	left:0;
}
.map_btn{
	max-width:254px;
	width:23%;
	float:right;
	margin-right:20px;
}
.map_btn li{
	width:100%;
	margin:0 auto 20px;
}
.map_btn li:hover{
	opacity:.7;
	transition:.3s;
}
@media only screen and (max-width:767px) {
	.map_wrap .box_ttl{
		margin:0 auto;
	}
	.sp_map{
		width:100%;
		margin:0 auto 20px;
	}
	.sp_map_btn{
		width:100%;
		margin:0 auto;
	}
	.sp_map_btn li{
		width:100%;
		margin:0 auto 10px;
	}
	.sp_map_btn li .txt{
		width:92%;
		margin:0 auto;
		font-size:13px;
		line-height:1.6;
	}
	.sp_map_btn li.btn_1 .txt{
		color:#cc72c3;
	}
	.sp_map_btn li.btn_2 .txt{
		color:#6f63c6;
	}
	.sp_map_btn li.btn_3 .txt{
		color:#4d9bdb;
	}
	.sp_map_btn li.btn_4 .txt{
		color:#78ad49;
	}
	.sp_map_btn li.btn_5 .txt{
		color:#ffa300;
	}
	.sp_map_btn li.btn_6 .txt{
		color:#f29e2f;
	}
	.sp_map_btn li.btn_7 .txt{
		color:#de6641;
	}
}
/*********************
	.bnr_area
*********************/
.bnr_area{
	width:100%;
	background:#f5f5f5;
	padding:60px 0 40px;
}
.bnr_area ul{
	width:80%;
	max-width:850px;
	margin:0 auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.bnr_area li{
	max-width:400px;
	width:47%;
	margin-bottom:20px;
}
.bnr_area li a{
	display:block;
	width:100%;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	color:#fff;
}
.bnr_area li a:hover{
	opacity:.7;
	transition:.3s;
}
.bnr_area li a > p {
	font-size: 13px;
	text-align: left;
	color: #333;
}
@media only screen and (max-width:767px) {
	.bnr_area{
		padding:40px 0 20px;
	}
	.bnr_area li{
		width:100%;
		margin-bottom:20px;
	}
	.bnr_area li a{
		font-size:13px;
	}
}

/*********************
	.access_area
*********************/
.access_area{
	width:100%;
	background:url("/assets/img/bg_top_access.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:50% 50%;
	padding:30px 0;
}
.access_area .ttl{
	width:100%;
	text-align:center;
	font-size:24px;
	font-weight:bold;
	color:#fff;
	margin:0 auto 20px;
}
.access_area ul{
	width:80%;
	max-width:1120px;
	margin:0 auto;
}
.access_area li{
	max-width:500px;
	width:47%;
}
.access_area li:nth-child(odd){
	float:left;
}
.access_area li:nth-child(even){
	float:right;
}
.access_area li a{
	display:block;
	width:100%;
	height:80px;
	line-height:80px;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	color:#cb000c;
	background:#fff;
}
.access_area li a:hover{
	background:#333;
	color:#fff;
	transition:.3s;
}
@media only screen and (max-width:767px) {
	.access_area{
		padding:30px 0 10px;
	}
	.access_area .ttl{
		font-size:20px;
	}
	.access_area li{
		width:100%;
		margin-bottom:20px;
	}
	.access_area li:nth-child(odd){
		float:none;
	}
	.access_area li:nth-child(even){
		float:none;
	}
	.access_area li a{
		font-size:13px;
		height:44px;
		line-height:44px;
	}
}

/*********************
	.banner_area
*********************/
.banner_area{
	width:100%;
	text-align:center;
	background-color: #f9f9f9;
	padding:40px 0;
	display: flex;
}
.banner_area .image{
	width: auto;
	margin: 0 auto;
}
.banner_area .image .banner{
	background-color: #ccc;
	border: 1px solid #000;
	padding: 15px;
	margin-bottom: 10px;
}
.banner_area .image a{
	display:block;
	color:#fff;
	max-width: 500px;
}
.banner_area .banner_title{
	font-size: 150%;
	margin-bottom: 5px;
}
.banner_area a:hover{
	opacity:0.7;
	transition:.3s;
}
.banner_area img {
	width: 100%;
}
@media only screen and (max-width:767px) {
	.banner_area{
		padding:30px 0;
	}
	.banner_area p{
		border: none;
	}
	.banner_area p a{
		font-size:13px;
		max-width: 98%;
	}
}
/*********************
	.res_area
*********************/
.res_area{
	width:100%;
	text-align:center;
	background-color: #000;
	padding:40px 0;
}
.res_area p{
	display:inline-block;
}
.res_area p a{
	display:inline-block;
	color:#fff;
}
.res_area p a:hover{
	opacity:0.7;
	transition:.3s;
}
.res_area p a img {
	width: 100%;
}
@media only screen and (max-width:767px) {
	.res_area{
		padding:30px 0;
	}
	.res_area p a{
		width: 80%;
		font-size:13px;
	}
}

/*********************
	.tic_area
*********************/
.tic_area{
	width:100%;
	text-align:center;
	padding:40px 0;
}
.tic_area p{
	display:inline-block;
}
.tic_area p a{
	display:inline-block;
	height:66px;
	line-height:66px;
	color:#fff;
}
.tic_area p a:hover{
	opacity:0.7;
	transition:.3s;
}
.tic_area p a img {
	width: 100%;
}
@media only screen and (max-width:767px) {
	.tic_area{
		padding:30px 0;
	}
	.tic_area p a{
		width: 80%;
		height:30px;
		line-height:30px;
		font-size:13px;
	}
}

/*********************
	.pr_banner_area
*********************/
.pr_banner_area {
    width: 100%;
    text-align: center;
    background-color: #F7F7F5;
    padding: 40px 0;
}
.pr_banner_area .pr_banner_inner {
    width: 1140px;
    max-width: 1140px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
/*    justify-content: space-around;*/
}
.pr_banner_area .ttl {
    width: 100%;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin: 0 auto 20px;
}
.pr_banner_area .pr_banner_inner .banner_content {
    width: 49%;
    border-radius: 5px;
    border: 1px solid #797979;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    padding: 15px 15px 12px 15px;
    margin: 0 0 1% 0;
    background-color: #fff;
    margin-right: 1%;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 10%);
    position: relative;
}
.pr_banner_area .pr_banner_inner .banner_content:before {
    content: "PR";
    background-color: #A80002;
    color: #fff;
    padding: 3px 8px 3px 11px;
    position: absolute;
    left: -8px;
    top: -10px;
    letter-spacing: .2rem;
}
.pr_banner_area .pr_banner_inner .banner_content:nth-child(2n) {
    margin-right: 0;
}
.pr_banner_area .pr_banner_inner .banner_content a {
    display: block;
    height: 100%;
    width: 100%;
}
.pr_banner_area .pr_banner_inner .banner_content a ul li {
    text-align: left;
}
.pr_banner_area .pr_banner_inner .banner_content a ul li img {
    width: 100%;
}
@media only screen and (max-width:767px) {
    .pr_banner_area .pr_banner_inner {
        width: 95%;
        margin: 0 auto;
    }
    .pr_banner_area .pr_banner_inner .banner_content {
        width: 100%;
        margin-bottom: 15px;
        padding: 15px 10px 12px 10px;
    }
    .pr_banner_area .pr_banner_inner .banner_content a ul li img {
        width: 100%;
    }
}

/*********************
	feature_bnr_area
*********************/
.feature_bnr_area {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
	padding: 100px 0;
	border-top: 1px dashed #cb000c;
}
.feature_bnr_area_link {
	width: 87%;
	margin: 0 auto;
}
@media only screen and (max-width:767px) {
	.feature_bnr_area {
		padding: 50px 0;
	}
}
