@charset "utf-8";
/* CSS Document */

.attention {
	color:#dc001e;
	margin-top: 20px;
	font-size: 20px;
	text-align: center;
}

@media screen and (max-width: 640px) {
	
	.attention {
		margin-top: 20px;
		font-size: 18px;
	}
	
}

.attention a , .mv__attention a , .mv__attention-sp a , #fix-attention a {
	text-decoration: underline;
}
.attention a::after , .mv__attention a::after , .mv__attention-sp a::after , #fix-attention a::after {
	content: "";
	width: 17px;
	height: 17px;
	display: inline-block;
	background-image: url("../img/external_link_red.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-left: 5px;
	margin-bottom: -1px;
}
.attention a::after {
	width: 20px;
	height: 20px;
}
.mv__attention a::after , .mv__attention-sp a::after {
	background-image: url("../img/external_link_white.png");
}

@media screen and (min-width: 640px) {
	
	#fix-attention a::after {
		margin: 5px 0 0;
	}
	#fix-attention {
		position: fixed;
		right: 80px;
		top: calc(50% - 187px);
		writing-mode: vertical-rl;
		text-orientation: upright;
		color: #FFFFFF;
		color: #dc001e;
		z-index: 9999;
	}
	#fix-attention span {
		text-combine-upright: all;
		display: inline-block;
		vertical-align: text-top;
	}

}

@media screen and (max-width: 640px) {
	
	#fix-attention {
		font-size: 14px;
		position: fixed;
		right: 0;
		left: 0;
		bottom: 50px;;
		text-align: center;
		color: #FFFFFF;
		background-color: #dc001e;
		padding: 10px;
		transition-duration: 0.2s;
		z-index: 9999;
	}
	
}

.mv__attention {
	width: 35%;
	top: 394px;
	left: 45.6vw;
	position: absolute;
	background-color: #dc001e;
	padding: 20px;
	color: #FFFFFF;

}
.mv__attention div {
	padding-left:1em;
	text-indent:-1em;
}
.mv__attention-sp {
	display: none;
}

@media screen and (max-width: 640px) {
	
	.mv__attention {
		display: none;
	}
	.mv__attention-sp {
		background-color: #dc001e;
		padding: 20px;
		color: #FFFFFF;
		display: block;
		font-size: 16px;
	}
	.mv__attention-sp div {
		padding-left:1em;
		text-indent:-1em;
	}
	
	
	.pagetop {
		bottom: 105px;
	}
	.l-footer {
		padding-block: 19px 120px;
	}
}

.busstop__biko {
	border: 1px solid #dc001e;
	text-align: center;
	padding: 15px;
	margin-top: 30px;
	color: #dc001e;
}

@media screen and (max-width: 640px) {

	.busstop__biko {
		text-align: left;
	}

}

/*******************************************************************************************

	汎用CSS
	
*******************************************************************************************/
/*div幅指定用*/


.w100 {width: 100%;}

.w80 {width: 80%;}
.w70 {width: 70%;}
.w60 {width: 60%;}
.w50 {width: 50%;}
.w40 {width: 40%;}
.w30 {width: 30%;}
.w33 {width: 33%;}

.w70-w100 {width: 70%;}
.w60-w100 {width: 60%;}
.w50-w100 {width: 50%;}
.w40-w100 {width: 40%;}
.w30-w100 {width: 30%;}

.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 5px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mt0 {margin-top: 0 !important;}
.mt10 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.ml10 {margin-left: 10px;}
.ml20 {margin-left: 20px;}
.ml30 {margin-left: 30px;}
.mr10 {margin-right: 10px;}
.mr20 {margin-right: 20px;}
.mr30 {margin-right: 30px;}

.mt40 , .mt50 , .mt60 , .mt70 , .mt80 , .mt90 , .mt100 {margin-top: 30px;}

.mb40 , .mb50 , .mb60 , .mb70 , .mb80 , .mb90 , .mb100 , .mb120 , .mb130 , .mb150 , .mb200 , .mb230 {margin-bottom: 30px;}
.pb50 , .pb60 , .pb70 , .pb80 {padding-bottom: 40px;}

.pb0{padding-bottom:0 !important;}

.margin-auto{margin: 0 auto;}

/* ------------------------ パソコン ------------------------ */
@media screen and (min-width: 768px) {

	/*マージン調整用*/

	.mb0-pc{margin-bottom: 0 !important;}

	.ml10 {margin-left: 10px;}
	.ml20 {margin-left: 15px;}

	.mr0 {margin-right: 0 !important;}

	.mt40 {margin-top: 40px;}
	.mt50 {margin-top: 50px;}
	.mt60 {margin-top: 60px;}
	.mt70 {margin-top: 70px;}
	.mt80 {margin-top: 80px;}
	.mt90 {margin-top: 90px;}
	.mt100 {margin-top: 100px;}

	.mb10-1000 {margin-bottom: 10px;}

	.mb15 {margin-bottom: 15px !important;}
	.mb40 {margin-bottom: 40px !important;}
	.mb50 {margin-bottom: 50px !important;}
	.mb60 {margin-bottom: 60px !important;}
	.mb70 {margin-bottom: 70px !important;}
	.mb80 {margin-bottom: 80px !important;}
	.mb90 {margin-bottom: 90px !important;}
	.mb100 {margin-bottom: 100px !important;}
	.mb120 {margin-bottom: 120px !important;}
	.mb130 {margin-bottom: 130px !important;}
	.mb150 {margin-bottom: 150px !important;}
	.mb200 {margin-bottom: 200px !important;}
	.mb230 {margin-bottom: 230px !important;}

	.pb15 {padding-bottom: 15px !important;}
	.pb40 {padding-bottom: 40px !important;}
	.pb50 {padding-bottom: 50px !important;}
	.pb60 {padding-bottom: 60px !important;}
	.pb70 {padding-bottom: 70px !important;}
	.pb80 {padding-bottom: 80px !important;}
	.pb90 {padding-bottom: 90px !important;}
	.pb100 {padding-bottom: 100px !important;}
	.pb110 {padding-bottom: 110px !important;}
	.pb120 {padding-bottom: 120px !important;}
	.pb130 {padding-bottom: 130px !important;}

	
	.mb120-pc {margin-bottom: 120px !important;}

	
	/*フォント用*/
	.fs80 {font-size: 80%;}
	.fs90 {font-size: 90%;}

	.talg_C_pc {
		text-align: center;
	}

}

.fs80{font-size: 80%;}
.fs90{font-size: 90%;}
.fs110{font-size: 110%;}
.fs115{font-size: 115%;}
.fs120{font-size: 120%;}
.fs125{font-size: 125%;}
.fs130{font-size: 130%;}
.fs135{font-size: 135%;}
.fs140{font-size: 140%;}
.fs145{font-size: 145%;}
.fs150{font-size: 150%;}

.fs13{font-size: 13px;}
.fs14{font-size: 14px;}
.fs15{font-size: 15px;}
.fs16{font-size: 16px;}
.fs17{font-size: 17px;}
.fs18{font-size: 18px;}
.fs19{font-size: 19px;}
.fs20{font-size: 20px;}
.fs21{font-size: 21px;}
.fs22{font-size: 22px;}
.fs23{font-size: 23px;}
.fs24{font-size: 24px;}
.fs25{font-size: 25px;}
.fs26{font-size: 26px;}
.fs27{font-size: 27px;}
.fs27{font-size: 27px;}
.fs28{font-size: 28px;}
.fs29{font-size: 29px;}
.fs30{font-size: 30px;}

.lh2{line-height: 2em;}

/* ------------------------ スマートフォン ------------------------ */
@media only screen and (max-width:768px){

	.w70-w100 , .w60-w100 , .w50-w100 , .w40-w100 , .w30-w100 {width: 100%;}
	
	.mb0-sp{margin-bottom: 0 !important;}
  .mb10-sp {margin-bottom: 10px !important;}
  .mb20-sp {margin-bottom: 20px !important;}
  .mb30-sp {margin-bottom: 30px !important;}
  .mb40-sp {margin-bottom: 40px !important;}
  .mb50-sp {margin-bottom: 50px !important;}
  .mb60-sp {margin-bottom: 60px !important;}
  .mb70-sp {margin-bottom: 70px !important;}
  .mb80-sp {margin-bottom: 80px !important;}

	.fs17, .fs18, .fs19, .fs20, .fs21, .fs22{
		font-size: 17px;
	}

	.fs23 , .fs24 , .fs25 , .fs26 , .fs27, .fs28 , .fs29 , .fs30{
		font-size: 16px;
	}
	
}

/*パディング調整用*/
.pl20 {padding-left: 20px;}
.pr20 {padding-right: 20px;}

.mincho , .mintyo{
	font-family: 'Noto Serif JP', serif,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,"ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝",メイリオ,Meiryo,serif !important;
}
.gothic{
	font-family: 'Noto Sans JP', sans-serif, '游ゴシック体', 'Yu Gothic', 'YuGothic', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif !important;
}

.red{
	color:#dc001e;
}
.blue{
	color:#03004c;
}
.bg-white {
  background-color: #FFFFFF;
}

/*フロート用*/
.fleft {
	float: left;
}
.fright {
	float: right;
}
/*text-align用*/
.talg_C {
	text-align: center !important;
}

.bg-blue{
	background-color: #e4eef3;
	padding: 120px 0 140px 0;
}

/* ------------------------ パソコン ------------------------ */
@media screen and (min-width: 768px) {

  .talg_C_pc{
    text-align: center !important;
  }
  .talg_R_pc {
    text-align: right !important;
  }

}

.talg_L {
	text-align: left !important;
}
.talg_R {
	width: 100%;
	text-align: right !important;
}

.talg_R_C {
	width: 100%;
	text-align: right !important;
}

/* ------------------------ スマートフォン ------------------------ */
@media only screen and (max-width:768px){

	.talg_R_C {
		text-align: center !important;
	}
	
	.bg-blue{
		padding: 50px 0 60px 0;
	}

}

.clear_both{
	clear:both;
}
.over-hidden{
	overflow: hidden;
}
.over-visible{
	overflow: visible;
}
.vertical{
	vertical-align:middle;
}
.border-none{
  border: none !important;
}
.palt{
  font-feature-settings: "palt";
}
.jisage , .jisage02 , .jisage03 , .jisage04{font-feature-settings: normal;}

/* 字下げ */
.jisage{
	padding-left:1em;
	text-indent:-1em;
}
.jisage02{
	padding-left:1.5em;
	text-indent:-1.5em;
}
.jisage03{
	padding-left:2em;
	text-indent:-2em;
}
.jisage04{
	padding-left:2.5em;
	text-indent:-2.5em;
}


.sp , .sp-block{display:none !important;}

@media screen and (max-width: 640px) {

.pc {display:none !important;}

.sp {display:inline !important;}

.sp-block {display:block !important;}

}