@charset "utf-8";

/* 共通 */

/* ============================
   common
*/
body {
    font-family: ヒラギノ角ゴシック, "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	color: #333;
}

button:hover,
a:hover{
	opacity: .7;
}
.tel_num:hover{
	opacity: 1;
}

html.noscroll{
	overflow: hidden;
}
html.noscroll body{
	overflow-y: scroll;
}

.for_pc{
	display: none;
}
.for_sp{
	display: block;
}
.ff-en{
	font-family: "din-condensed", "DIN",'ヒラギノ角ゴシック', 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}


/* form */
input[type="checkbox"]{
	display: none;
}
input[type="checkbox"] + label{
	position: relative;
	padding-left: 25px;
}
input[type="checkbox"] + label:before{
	content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
	bottom: 0;
    width: 20px;
    height: 20px;
	margin: auto;
    border: 1px solid #ccc;
	background: #fff;
}
input[type="checkbox"]:checked + label:before{
	background: #E6001B;
}
input[type="checkbox"]:checked + label:after{
	content: "";
    display: inline-block;
    position: absolute;
    width: 7px;
    height: 13px;
    top: 2px;
    left: 7px;
	bottom: 0;
	margin: auto;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
	transform: rotate(45deg);
}
::placeholder{
	color: #CCCCCC;
}
::-webkit-placeholder{
	color: #CCCCCC;
}
::-moz-placeholder{
	color: #CCCCCC;
}
:-ms-input-placeholder{
	color: #CCCCCC;
}

select{
	outline: none;
}

.ico_blank:after{
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 10px;
	height: 10px;
	margin-left: 10px;
	background: url(/shared/images/ico_blank.svg) center/ contain no-repeat;
}

/* swiper */
.swiper{
	overflow: hidden;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev,
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next{
	background: none;
}

.wrapper{
	display: flex;
	flex-flow: column nowrap;
	min-height: 100vh;
	padding-top: 70px;
}
.main_content{
	flex: 1 1 auto;
	min-height: 500px; /* test */
}

.inner{
	max-width: 1110px;
	width: 90%;
	margin: 0 auto;
}

.con_cen_til{
	font-size: 30px;
    font-weight: normal;
    text-align: center;
}
.w_r_box{
	display: flex;
    align-items: center;
    justify-content: center;
	position: relative;
    max-width: 240px;
    width: 100%;
	padding: 11px 5px;
    color: #E6001B;
    border: 2px solid #E6001B;
    border-radius: 5px;
    font-size: 14px;
    font-weight: bold;
}
.w_r_box:after{
    content: "";
    display: inline-block;
    position: absolute;
	top: 0;
    right: 10px;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: auto;
    border-right: 2px solid #E6001B;
    border-bottom: 2px solid #E6001B;
    transform: rotate(-45deg);
}

.r_w_box{
	display: flex;
    align-items: center;
    justify-content: center;
	position: relative;
    max-width: 240px;
    width: 100%;
	padding: 13px 5px;
    color: #FFF;
    background: #E6001B;
    border-radius: 5px;
    font-size: 14px;
    font-weight: bold;
}
.r_w_box:after{
    content: "";
    display: inline-block;
    position: absolute;
	top: 0;
    right: 10px;
	bottom: 0;
    width: 10px;
    height: 10px;
	margin: auto;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: rotate(-45deg);
}
.r_w_box.ico_mail{
	padding-left: 15px;
}
.r_w_box.ico_mail:before{
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 10px;
	bottom: 0;
	width: 24px;
	height: 18px;
	margin: auto;
	background: url(/shared/images/ico_contact.svg) center / contain;
}

.rb_til{
	position: relative;
	padding-left: 16px;
	margin-bottom: 20px;
	font-size: 20px;
	color: #E6001B;
}
.rb_til:before{
	content: "";
	display: inline-block;
	position: absolute;
	top: 4px;
	left: 0;
	width: 6px;
	height: 24px;
	background: #E6001B;
}
.about_til{
    padding: 30px 0 40px;
    margin-bottom: 40px;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3;
    font-weight: normal;
    text-align: center;
    background: #F2F2F2;
    color: #E6001B;
}
.about_til .en_til{
    display: block;
    font-size: 20px;
    font-family: "din-condensed", "DIN",'ヒラギノ角ゴシック', 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    line-height: 1.4;
}
.dl_box{
	margin-bottom: 40px;
}
.stand_dl{
	padding: 12px 8px;
	border-top: 1px solid #E5E5E5;
}
.dl_box .stand_dl:last-child{
	border-bottom: 1px solid #E5E5E5;
}
.dl_box .stand_dl dt{
	flex: 0 0 190px;
	width: 190px;
	font-weight: bold;
	margin-bottom: 5px;
}
.dl_box .stand_dl dd{
	flex: 1 1 auto;
}
.dl_box .in_stand_dl{
	margin-bottom: 5px;
}
.dl_box .in_stand_dl:last-child{
	margin: 0;
}
.dl_box .in_stand_dl dt{
	flex: 0 0 124px;
	width: 124px;
	font-weight: normal;
}
.dl_box .in_stand_dl dd{
	flex: 1 1 auto;
}
.dl_box dd .atten{
	/* display: block; */
	/* color: #999; */
	color: #E6001B;
    font-size: 14px;
}
.shop_name{
    padding: 20px 0;
    background: #F2F2F2;
    text-align: center;
}
.shop_name img{
    max-width: 117px;
    margin-right: 10px;
    vertical-align: -11px;
}
.shop_name span{
    font-size: 38px;
    font-weight: 300;
}
.bread{
	display: none;
    max-width: 1920px;
    width: 100%;
    padding: 15px 15px 45px;
	margin: 0 auto;
}
.bread li{
	position: relative;
	font-size: 14px;
}
.bread li a{
	position: relative;
	margin-right: 28px;
	color: #E6001B;
	text-decoration: underline;
}
.bread li a:after{
	content: "";
    display: inline-block;
    position: absolute;
    width: 6px;
    height: 6px;
    top: 7px;
    right: -15px;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
	transform: rotate(-45deg);
}
.back_link{
	display: inline-block;
	position: relative;
	padding-left: 40px;
	color: #E6001B;
	font-weight: bold;
	font-size: 18px;
}
.back_link:hover{
	opacity: 0.8;
}
.back_link:before{
	content: "";
	display: inline-block;
	position: absolute;
	top: -2px;
	left: 0;
	width: 32px;
	height: 32px;
	border: 2px solid #E6001B;
	border-radius: 100%;
}
.back_link:after{
	content: "";
    display: inline-block;
    position: absolute;
    top: 9px;
    left: 14px;
    width: 9px;
    height: 9px;
    border-right: 2px solid #E6001B;
    border-bottom: 2px solid #E6001B;
    transform: rotate(135deg);
}

@media screen and (min-width: 560px){
	.for_pc{
        display: block;
    }
    .for_sp{
        display: none;
    }
	.wrapper{
		padding-top: 100px;
	}
	.rb_til{
		padding-left: 20px;
		font-size: 26px;
	}
	.rb_til:before{
		width: 8px;
		height: 32px;
	}
	.about_til{
        padding: 40px 0 50px;
        margin-bottom: 100px;
        font-size: 40px;
    }
	.dl_box{
		margin-bottom: 80px;
	}
	.dl_box .stand_dl dt{
		margin-bottom: 0;
	}
    .stand_dl,
    .dl_box .in_stand_dl{
        display: flex;
    }
	.stand_dl{
		padding: 20px 15px;
	}
	.bread{
		display: flex;
	}
}

@media screen and (min-width: 960px){

    .shop_name img{
        padding: 30px 0 20px;
        max-width: 207px;
        vertical-align: -40px;
    }
    .shop_name span {
        font-size: 68px;
    }
}  /* (min-width: 960px) */

@media screen and (min-width: 1240px){
}  /* (min-width: 1240px) */



/* ============================
   header
*/

.header{
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
}
.header .h_inner{
	position: relative;
	width: 100%;
	margin: auto;
}

.header a:hover{
	opacity: 1;
}

/* __ h_logo_area */
.header .h_logo_area{
	position: absolute;
	z-index: 20;
	top: 0;
	left: 0;
	width: 140px;
	height: 70px;
	transition: width .2s ease, height .2s ease;
}
.header .h_logo_area .h_logo{
	height: 100%;
	width: 100%;
}
.header .h_logo_area .h_logo a{
	display: flex;
	width: 100%;
	height: 100%;
	align-items: flex-end;
	padding: 0 20px 22px 20px;
	background: #E6001B;
}
.header .h_logo_area .h_logo a img{
	width: 100%;
}

/* __ h_gnavi_area */
.header .h_gnavi_area{
	height: 70px;
	background: #FFF;
	transition: height .1s ease;
}
.header .h_gnavi_area .h_gnavi_list{
	display: none;
}

/* .drawer-hamburger  */
.header .drawer-hamburger{
	position: fixed;
	z-index: 25;
	top: 25px;
	right: 20px;
	display: block;
	width: 30px;
	height: 22px;
	outline: none;
	border: none;
	cursor: pointer;
	transform: translate3d(0, 0, 0);
	transition: .2s;
}

.drawer-hamburger > div{
	position: absolute;
	top: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 2px;
	margin: auto;
	background: #E6001B;
	transition: opacity .2s;
}
.drawer-hamburger:before,
.drawer-hamburger:after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	background: #E6001B;
	transition: .3s;
}
.drawer-hamburger:before{ top: 0; }
.drawer-hamburger:after{ bottom: 0; }

.drawer-bg{
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
	background-color: rgba(0,0,0,.7);
}

.h_sp_gnavi{
	position: fixed;
	z-index: 23;
	top: 0;
	left: 0;
	right: 0;
	padding: 80px 0 20px;
	background: rgba(230,0,27,.9);
	box-shadow: 0 4px 14px 0 #3336;
	transform: translate(0, -105%);
	transition: transform .2s ease;
}
.h_sp_gnavi .h_sp_gnavi_list{
	width: 95%;
	margin: auto;
}
.h_sp_gnavi .h_sp_gnavi_list > li{
	border-bottom: 1px solid rgba(255,255,255,.4);
}
.h_sp_gnavi .h_sp_gnavi_list > li > a{
	position: relative;
	display: block;
	padding: 18px;
	font-weight: bold;
	font-size: 18px;
	color: #FFF;
	transition: color .1s ease;
}
.h_sp_gnavi .h_sp_gnavi_list > li > a:after{
	content: "";
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	display: block;
	width: 12px;
	height: 12px;
	margin: auto;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	transform: rotateZ(45deg);
}

.h_sp_gnavi .h_sp_gnavi_list .level02{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 15px;
	padding-left: 20px;
}
.h_sp_gnavi .h_sp_gnavi_list .level02 > li{
	flex: 0 0 48%;
	padding: 5px 0;
}
.h_sp_gnavi .h_sp_gnavi_list .level02 > li > a{
	color: #FFF;
}
.h_sp_gnavi .h_sp_gnavi_list_other{
	width: 95%;
    margin: 20px auto 0;
    padding: 0 18px;
}
.h_sp_gnavi .h_sp_gnavi_list_other li a{
	display: block;
	padding: 5px 0;
	font-size: 14px;
	line-height: 2;
	color: #fff;
}
.h_sp_gnavi .h_sp_gnavi_list_other li a.ico_blank:after{
	background-image: url(/shared/images/ico_blank_w.svg);
}
/* .drawer-open */
/* __ .drawer-open .drawer-hamburger */

.drawer-open .header .drawer-hamburger{
	width: 40px;
	height: 40px;
	border: 2px solid #FFF;
	background: #d6071f;
}
.drawer-open .drawer-hamburger div{
	opacity: 0;
}
.drawer-open .drawer-hamburger:before,
.drawer-open .drawer-hamburger:after{
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 70%;
	margin: auto;
	background: #FFF;
}
.drawer-open .drawer-hamburger:before{
	transform: rotate(45deg);
}
.drawer-open .drawer-hamburger:after{
	transform: rotate(-45deg);
}

/* __ .drawer-open .drawer-bg */
.drawer-open .drawer-bg {
    display: block;
}

/* __ .drawer-open .h_sp_gnavi */
.drawer-open .h_sp_gnavi{
	overflow: auto;
	max-height: 100%;
	transform: translate(0, 0);
}
.drawer-open .h_sp_gnavi .h_sp_logo{
	position: absolute;
	top: 0;
	left: 0;
	width: 140px;
	height: 70px;
}
.drawer-open .h_sp_gnavi .h_sp_logo a{
	display: flex;
	width: 100%;
	height: 100%;
	align-items: flex-end;
	padding: 0 12px 10px 15px;
}
.drawer-open .h_sp_gnavi .h_sp_logo a img{
	width: 100%;
}

.drawer-open .header .h_logo_area{
	opacity: 0;
}


@media screen and (min-width: 560px){

	/* __ h_logo_area */

	/* __ header.is_top */
	.header.is_top .h_logo_area{
		width: 180px;
		height: 180px;
	}
	.header.is_top .h_gnavi_area{
		height: 100px;
	}
	.header.is_top .h_gnavi_area .h_gnavi_list a{
		padding-top: 16px;
	}

	/* __ h_gnavi_area */

	.header .h_gnavi_area .h_sp_menu{
		display: none;
	}

	.header .h_gnavi_area .h_gnavi_list{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		height: 100%;
		padding-right: 20px;
	}
	.header .h_gnavi_area .h_gnavi_list li{
		height: 100%;
	}
	.header .h_gnavi_area .h_gnavi_list a{
		display: flex;
		align-items: center;
		height: 100%;
		padding: 0 20px;
		font-weight: bold;
		color: #333;
		transition: color .1s ease, padding .1s ease;
	}
	.header .h_gnavi_area .h_gnavi_list a:hover{
		color: #E6001B;
	}

}  /* (min-width: 560px) */

@media screen and (min-width: 960px){

	.header .h_gnavi_area .h_gnavi_list a{
		 padding-left: 30px;
		 padding-right: 30px;
	}

}  /* (min-width: 860px) */


/* topbanner_area */
.topbanner_area{
	background: #F2F2F2;
}
/* __  sw_topbanner-next -prev */
.topbanner_area .sw_topbanner-next,
.topbanner_area .sw_topbanner-prev{
	position: absolute;
	z-index: 1;
	top: 50%;
	width: 30px;
	height: 30px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}
.topbanner_area .sw_topbanner-prev{ left: -15px;}
.topbanner_area .sw_topbanner-next{ right: -15px;}
.topbanner_area .sw_topbanner-prev:after,
.topbanner_area .sw_topbanner-next:after{
	content: "";
	position: absolute;
	top: 0;
	left: auto;
	right: auto;
	bottom: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	border-top: 3px solid #E6001B;
	border-right: 3px solid #E6001B;
}
.topbanner_area .sw_topbanner-prev:after{ transform: rotateZ(-135deg); right: -7px;}
.topbanner_area .sw_topbanner-next:after{ transform: rotateZ(45deg);   left: -7px;}
/* __  sw_topbanner */
.sw_topbanner_wrap{
	position: relative;
	width: 90%;
	max-width: 1260px;
	margin: auto;
	padding: 40px 20px 30px;
}
.sw_topbanner .swiper-slide a{
	color: #333;
}
.sw_topbanner .swiper-slide .img{
	margin-bottom: 12px;
	box-shadow: 5px 5px 10px rgba(0,0,0,.16);
}
.sw_topbanner .swiper-slide .title{
	font-size: 18px;
	font-weight: bold;
	color: #E6001B;
}
.sw_topbanner .swiper-slide .title:after{
	vertical-align: -2px;
    width: 16px;
    height: 16px;
	background-image: url(/shared/images/ico_blank_r.svg);
}
.sw_topbanner .swiper-slide .description{
	margin-top: 6px;
	font-size: 14px;
	color: #888888;
}

@media screen and (min-width: 960px){
	/* __  sw_topbanner */
	.sw_topbanner_wrap{
		padding: 30px 60px 35px;
	}
}

/* ============================
   footer
*/

.footer{
	padding: 40px 0;
	background: #333;
	color: #FFF;
}
.footer a{
	color: #FFF;
	transition: opacity .2s ease;
}
.footer a:hover{
	opacity: .8;
}

.footer .f_inner{
	width: 90%;
	max-width: 1240px;
	margin: auto;
}
/* __  f_top */
.footer .f_top{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
/* ___  f_calender_area */
/* .footer .f_top .f_calender_area{
	flex: 0 1 320px;
	width: 320px;
	padding: 20px 18px;
	background: #000;
} */
/* ___  f_navi_area */
.footer .f_top .f_navi_area{
	display: none;
}
.footer .f_top .f_navi_area .step01 > li > a:after{
	width: 16px;
	height: 16px;
	vertical-align: -2px;
}

/* f_bottom */
.footer .f_bottom{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: center;
	text-align: center;
}
.footer .f_bottom .f_logo_area{
	flex: 0 0 160px;
	width: 160px;
	margin-bottom: 20px;
}
.footer .f_bottom .f_copylight{
	flex: 0 0 100%;
	width: 100%;
	font-size: 12px;
	color: #999999;
}


@media screen and (min-width: 560px){

	/* ___  f_navi_area */
	.footer .f_top .f_navi_area{
		flex: 1 1 100%;
		display: flex;
		justify-content: space-between;
		margin-top: 30px;
	}
	/* ____  level01 */
	.footer .f_top .f_navi_area .level01{
		flex: 1 1 50%;
	}
	/* ____  step01 */
	.footer .f_top .f_navi_area .step01{
		padding: 0 2%;
	}
	.footer .f_top .f_navi_area .step01 > li > a{
		display: block;
		font-weight: bold;
		padding: 10px 12px;
		border-bottom: 1px solid #666;
	}

	.footer .f_top .f_navi_area .step01.-parent > li > a{
		border-bottom: none;
	}

	.footer .f_top .f_navi_area .step02{
		display: flex;
		flex-wrap: wrap;
		padding: 0 10px;
	}
	.footer .f_top .f_navi_area .step02 > li{
		flex: 0 0 50%;
		font-size: 14px;
	}
	.footer .f_top .f_navi_area .step02 > li > a{
		display: block;
		padding: 3px 0;
	}

	/* f_bottom */
	.footer .f_bottom{
		flex-wrap: nowrap;
		justify-content: space-between;
		margin-top: 70px;
	}
	.footer .f_bottom .f_logo_area{
		flex-basis: auto;
		width: 160px;
		margin-right: 20px;
		margin-bottom: 0;
	}
	.footer .f_bottom .f_copylight{
		flex-basis: auto;
		width: auto;
	}
}/*  min-width: 560px */


@media screen and (min-width: 960px){

	.footer{
		padding: 80px 0;
	}
	.con_cen_til{
		font-size: 40px;
	}

	.footer .f_top{
		flex-wrap: nowrap;
	}
	/* ___  f_navi_area */
	.footer .f_top .f_navi_area{
		flex: 1 1 auto;
		margin-top: 0;
		margin-left: 4%;
	}

	/* ____  step02 */
	.footer .f_top .f_navi_area .step02{
		display: flex;
		flex-wrap: wrap;
		padding: 0 12px;
	}

}/*  min-width: 960px */


@media screen and (min-width: 1240px){		/* ____  step01 */
	.footer .f_top .f_navi_area .level01.-left{
		flex: 1 1 66.6%;
		display: flex;
	}
	.footer .f_top .f_navi_area .level01.-left .step01{
		flex: 1 1 50%;
	}

	.footer .f_top .f_navi_area .level01.-right{
		flex: 1 1 33.3%;
	}
}  /* (min-width: 1240px) */



/* calender * /
.footer .f_calender_area .cal_head{
	margin-bottom: 20px;
	text-align: center;
}
.footer .f_calender_area .cal_head .title{
	font-size: 14px;
}
.footer .f_calender_area .cal_head .cal_select{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer .f_calender_area .cal_head .cal_select .date{
	flex: 1 1 auto;
	font-weight: bold;
	font-size: 18px;
}
.footer .f_calender_area .cal_head .cal_select .prev,
.footer .f_calender_area .cal_head .cal_select .next{
	flex: 0 0 24px;
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
	outline: none;
	cursor: pointer;
}
.footer .f_calender_area .cal_head .cal_select .prev:before,
.footer .f_calender_area .cal_head .cal_select .next:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	border-top: 2px solid #E6001B;
	border-right: 2px solid #E6001B;
}
.footer .f_calender_area .cal_head .cal_select .prev:before{
	transform: rotateZ(-135deg);
}
.footer .f_calender_area .cal_head .cal_select .next:before{
	transform: rotateZ(45deg);
}

.footer .f_calender_area .cal_head .cal_select .prev.disabled:hover,
.footer .f_calender_area .cal_head .cal_select .next.disabled:hover{
	opacity: 1;
}
.footer .f_calender_area .cal_head .cal_select .prev.disabled:before,
.footer .f_calender_area .cal_head .cal_select .next.disabled:before{
	border-top-color: #666;
	border-right-color: #666;
	cursor: default;
}

.footer .f_calender_area .cal_body{
	margin: auto;
}
.footer .f_calender_area .cal_body th,
.footer .f_calender_area .cal_body td{
	vertical-align: middle;
	text-align: center;
}
.footer .f_calender_area .cal_body th{
	padding: 5px 0;
	font-weight: normal;
	font-size: 12px;
}
.footer .f_calender_area .cal_body td{
	width: 40px;
	height: 40px;
	border: 2px solid #000;
	background: #FFF;
	color: #333;
}
.footer .f_calender_area .cal_body .space{
	background: #000;
}
.footer .f_calender_area .cal_body .holiday{
	background: #E6001B;
	color: #FFF;
}
.footer .f_calender_area .cal_body .sp_bus_day{
	background-color: #73ABE6;
}
.footer .f_calender_area .cal_body .sat_bus_day{
	background: #FCD9DD;
	color: #E6001B;
}

.footer .f_calender_area .cal_body .now{
	position: relative;
	color: #E6001B;
}
.footer .f_calender_area .cal_body .now:after{
	content: "";
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 4px;
    bottom: 0;
    left: 0;
    background: #E6001B;
}

.footer .f_calender_area .cal_body .holiday.now{
	color: #FFF;
}
.footer .f_calender_area .cal_body .holiday.now:after{
    background: #FFF;
}

.footer .f_calender_area .cal_body .sp_bus_day.now:after{
    background: #E6001B;
}




.footer .f_calender_area .cal_foot{
	margin-top: 20px;
}
.footer .f_calender_area .cal_foot .holiday{
	color: #E6001B;
}
.footer .f_calender_area .cal_foot .holiday:after{
    background: #E6001B;
}
.footer .f_calender_area .cal_foot .sp_bus_day{
	color: #73ABE6;
}
.footer .f_calender_area .cal_foot .sp_bus_day.note{
	font-size: 13px;
}
*/

.calender_area{
	margin: 0 auto;
	padding: 30px 7%;
	background: #F5F5F5;
	scroll-margin-top: 70px;
}
.calender_area .cal_inner{
	max-width: 375px;
	margin: 0 auto;
}

.calender_area .cal_head{
	margin-bottom: 20px;
	text-align: center;
}
.calender_area .cal_head .title{
	font-size: 14px;
}
.calender_area .cal_head .cal_select{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.calender_area .cal_head .cal_select .swiper-slide{
	font-size: 24px;
	font-weight: bold;
}
.calender_area .cal_head .cal_select .date{
	flex: 1 1 auto;
	font-weight: bold;
	font-size: 18px;
}
.calender_area .cal_head .cal_select .prev,
.calender_area .cal_head .cal_select .next{
	flex: 0 0 24px;
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
	outline: none;
	cursor: pointer;
}
.calender_area .cal_head .cal_select .prev:before,
.calender_area .cal_head .cal_select .next:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	border-top: 2px solid #E6001B;
	border-right: 2px solid #E6001B;
}
.calender_area .cal_head .cal_select .prev:before{
	left: 5px;
	transform: rotateZ(-135deg);
}
.calender_area .cal_head .cal_select .next:before{
	right: 5px;
	transform: rotateZ(45deg);
}

.calender_area .cal_head .cal_select .prev.disabled:hover,
.calender_area .cal_head .cal_select .next.disabled:hover{
	opacity: 1;
}
.calender_area .cal_head .cal_select .prev.disabled:before,
.calender_area .cal_head .cal_select .next.disabled:before{
	border-top-color: #CCC;
	border-right-color: #CCC;
	cursor: default;
}

.calender_area .cal_body{
	margin: auto;
}
.calender_area .cal_body th,
.calender_area .cal_body td{
	vertical-align: middle;
	text-align: center;
}
.calender_area .cal_body th{
	padding: 5px 0;
	font-weight: normal;
	font-size: 12px;
}
.calender_area .cal_body td{
	width: 45px;
	height: 45px;
	border: 2px solid #F5F5F5;
	background: #FFF;
	color: #333;
}
.calender_area .cal_body .space{
	background: transparent;
}
.calender_area .cal_body .holiday{
	background: #E6001B;
	color: #FFF;
}
.calender_area .cal_body .sp_bus_day{
	background-color: #73ABE6;
	color: #FFF;
}
.calender_area .cal_body .sat_bus_day{
	background: #FCD9DD;
	color: #E6001B;
}
.calender_area .cal_body .temporary {
    background: #aaa;
    color: #FFF;
}
.calender_area .cal_body .now{
	position: relative;
	color: #E6001B;
}
.calender_area .cal_body .now:after{
	content: "";
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 4px;
    bottom: 0;
    left: 0;
    background: #E6001B;
}

.calender_area .cal_body .holiday.now{
	color: #FFF;
}
.calender_area .cal_body .holiday.now:after{
    background: #FFF;
}

.calender_area .cal_body .sp_bus_day.now:after{
    background: #E6001B;
}


.calender_area .cal_foot{
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #D5d5d5;
	font-weight: bold;
}

.calender_area .cal_foot .holiday{
	display: inline-block;
	color: #E6001B;
}
.calender_area .cal_foot .holiday:after{
    background: #E6001B;
}
.calender_area .cal_foot .sp_bus_day{
	display: inline-block;
	color: #73ABE6;
}
.calender_area .cal_foot .sp_bus_day.note{
	font-size: 13px;
	font-weight: normal;
}

.calender_area .cal_foot .temporary {
    display: inline-block;
    color: #aaa;
}

@media screen and (min-width: 960px){

	.calender_area{
		max-width: 375px;
		padding-left: 30px;
		padding-right: 30px;
	}
	.calender_area .cal_inner{
		max-width: none;
	}

}


/* map_inner_flex_box */
.map_inner_flex_box .img{
	width: 100%;
	margin-bottom: 5px;
}
.map_inner_flex_box .img img{
	max-width: 100%;
}
.map_inner_flex_box .txt a{
	outline: none;
	color: #E6001B;
    font-size: 14px;
	font-weight: bold;
}
.map_inner_flex_box .txt span{
	display: block;
}

@media screen and (min-width: 560px){

	.map_inner_flex_box{
		display: flex;
	}
	.map_inner_flex_box .img{
		flex: 0 0 75px;
		width: 75px;
		margin-right: 10px;
		margin-bottom: 0;
	}
	.map_inner_flex_box .txt{
		flex: 1 1 auto;
	}
}
