/* CSS Document */

@charset "utf-8";

/*

浜木綿・四季亭共通CSS

（四季亭用のスタイルシートはshikitei.cssで別途作成）

PC　　：横1600
スマホ：横600

*/
/*
横幅
1600~			:PC
800~1600	:PC
640~799		:スマホ（横に余白をつける）
	 ~640		:スマホ
*/
/*
		IEでは	@media screen　の二重表記は使えない（@media screen{}の中に@media screenを入れられない）
*/


html{
	font-size:16px;
	line-height:100%;
}
/*
@media screen and (max-width: 799px) {
	html{
		font-size:2.5vw;
	}
}
*/
html *{
	/*
	line-height:100%;
	background-position:left top;
	background-repeat:no-repeat;
	*/
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	margin: 0px;
	padding: 0px;
	font-size:100%;
	color:#000;
	font-family:"メイリオ", sans-serif;
	line-height:100%;
}
h1,h2,h3,h4,h5,h6,p,form,hr{
	margin: 0px;
	padding: 0px;
}
a{
	color:inherit;
	text-decoration:none;
}
a:hover{
	/* color:#F00; */
}
a img{
	border:none;
}
a.bright125 img:hover,input.bright125:hover{
	/*
	filter:alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	*/
	-webkit-filter: brightness(1.25);
  -moz-filter: brightness(1.25);
  -o-filter: brightness(1.25);
  -ms-filter: brightness(1.25);
  filter: brightness(1.25);
}
ul,li{
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
hr{
	border-top:solid 2px #CCC;
	border-bottom:none;
	border-left:none;
	border-right:none;
	margin:auto;
	padding:0;
	max-width:1000px;
}
img{max-width:100%;min-width:2px;}

/* ----- */

/* 文字ベースカラー */
.col_base{color:#B41118!important;}

/* 背景ベースカラー */
.bg_col_base{background-color:#B41118;}
.bg_col_base.infotitle{background-color:#002742; color:#FDD100;}	
.bg_col_base.alpha90{background-color:rgba(180,17,24,0.9);}

/* ----- */

#main{}
.inner{
	background-color:#FFFFFF;
	margin:0 15px;
}
#header .inner{background-color:#FFFFFF;}
#main .inner{min-height:700px;}
@media screen and (max-width: 799px) {
	#main{
		margin-left:3.125vw;
		margin-right:3.125vw;
	}
	.inner{
		margin:0 1.5625vw;
	}
}

.H_head{height:105px;}
@media screen and (max-width: 639px) {
	.H_head{height:16.40625vw;}
}

#header{
	position: fixed;
	top: 0;
	left:0;
	right:0;
	margin:auto;
	z-index:1000;
}
@media screen and (max-width: 799px) {
	#header{
		margin:0 3.125vw;
	}
}
#header .h_menu{
	position:absolute;
	left:345px;
	width:1150px;
}
#header .h_menu a{
	display:block;
	float:left;
	width:20%;
	font-weight:bold;
	font-size:160%;
	line-height:100%;
}
@media screen and (max-width: 1599px) {
	#header .h_menu{
		left:-webkit-calc(0.4125 * (100vw - 800px) + 15px);
		left:calc(0.4125 * (100vw - 800px) + 15px);
		width:-webkit-calc(0.5375 * (100vw - 800px) + 720px);
		width:calc(0.5375 * (100vw - 800px) + 720px);
	}
	#header .h_menu a{
		font-size:-webkit-calc((16px + 1vw)*1.6 / 2);
		font-size:calc((16px + 1vw)*1.6 / 2);
	}
}
#header .h_menu a div{
	margin-top:42px;
	padding-bottom:12px;
}
#header .h_menu a:hover div,#header .h_menu a.current div{
	border-bottom:solid 5px #002742;
}

@media screen and (max-width: 799px) {
	#header .logo{
		display:block;
		position:absolute;
		top:0;
		bottom:0;
		left:48px;
		margin:auto;
	}
	#header .menubtn{
		display:block;
		position:absolute;
		top:22px;
		right:22px;
		max-width:70px;
		border-radius: 10px;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		cursor:pointer;
		z-index:900;
	}
}
@media screen and (max-width: 639px) {
	#header .logo{
		left:7.5vw;
		max-width:32.65625vw;
	}
	#header .menubtn{
		top:3.4375vw;
		right:3.4375vw;
		width:10.9375vw;
		border-radius: 1.5625vw;
		-webkit-border-radius: 1.5625vw;
		-moz-border-radius: 1.5625vw;
	}
}

.mainlogo{
	position:relative;
	z-index:900;
}
.mainlogo img{
	display:block;
	position:absolute;
	top:45px;
	left:65px;
	width:290px;
}
@media screen and (min-width: 800px) and (max-width: 1599px) {
	.mainlogo img{
		top:2.8125vw;
		left:4.0625vw;
		width:18.125vw;
	}
}
@media screen and (max-width: 799px) {
	.mainlogo img{
		top:5vw;
		left:0;
		right:0;
		margin:auto;
	}
}
@media screen and (max-width: 639px) {
	.mainlogo img{width:50%;}
}

#footer{
	color:#FFFFFF;
	padding:20px 15px;
}
@media screen and (max-width: 799px) {
	#footer{
		padding:20px 1.5625vw;
	}
}
#footer .f_logo{
	float:left;
	text-align:left;
}
#footer .f_logo a{
	display:inline-block;
}
#footer .f_menu{
	float:right;
	width:82%;
}
#footer .f_menu .menu{
	height:52px;
}
#footer .f_menu .menu a{
	display:inline-block;
}
#footer .f_menu .copy br{
	display:none;
}
@media screen and (max-width: 1419px) {
	#footer .f_menu{
		width:-webkit-calc(1 * (100vw - 1280px) + 926px);
		width:calc(1 * (100vw - 1280px) + 926px);
	}
}
@media screen and (max-width: 1279px) {
	#footer .f_logo a{
		width:15.9375vw;
	}
	#footer .f_menu{
		font-size:-webkit-calc(16 * (10vw / 128));
		font-size:calc(16 * (10vw / 128));
		width:-webkit-calc(0.8333 * (100vw - 800px) + 526px);
		width:calc(0.8333 * (100vw - 800px) + 526px);
	}
	#footer .f_menu .menu{
		height:-webkit-calc(52 * (10vw / 128));
		height:calc(52 * (10vw / 128));
	}
	#footer .f_menu .copy br{
		display:inline;
	}
}

.sp_menu{}
.sp_menu a{
	display:block;
	border-bottom:solid 1px rgba(255,255,255,0.5);
	text-align:left;
	padding:0.75em 0;
	font-size:-webkit-calc(20 * (10vw / 64));
	font-size:calc(20 * (10vw / 64));
	line-height:100%;
}
.sp_menu a:last-child{border-bottom:none;}
#header .sp_menu{
	display:none;
	color:#FFFFFF;
}
#header .sp_menu a{
	padding-left:0.75em;
}
.sp_copy{
	font-size:2vw;
	margin-top:30px;
}

.contentL{
	text-align:left;
}
.contentL a{
	display:block;
	font-size:120%;
	line-height:100%;
	margin-bottom:1em;
}
.contentL a span{
	display:inline-block;
	width:1.25em;
}
@media screen and (min-width: 800px) {
	.contentL{
		float:left;
		padding:45px 0;
		margin-left:65px;
		max-width:290px;
		width:100%;
	}
	.contentR{
		float:right;
		padding:45px 0;
		margin-right:135px;
		max-width:1000px;
		width:100%;
	}
	.contentR.w1075{
		float:left;
		margin-right:0;
		max-width:1075px;
	}
}
@media screen and (min-width: 800px) and (max-width: 1599px) {
		.contentL a{
			font-size:-webkit-calc((16px + 1vw * 2)*1.2 / 3);
			font-size:calc((16px + 1vw * 2)*1.2 / 3);
		}
		.contentL{
			padding:2.8125vw 0;
			margin-left:4.0625vw;
			width:18.125vw;
		}
		.contentR{
			padding:2.8125vw 0;
			margin-right:8.4375vw;
			max-width:63.69426752%;
		}
		.contentR.w1075{
			max-width:68.47133758%;
		}
	}
@media screen and (max-width: 799px) {
	.contentL{display:none;}
	.contentL.dpB{display:block;}
	.contentR{
		padding:5.625vw 8.125vw;
	}
}
.pan{
	text-align:left;
	margin-bottom:45px;
	font-size:110%;
}
.pan .pan_vanish{
	display:none!important;
}
@media screen and (min-width: 800px) and (max-width: 1599px) {
	.pan{
		margin-bottom:2.8125vw;
		font-size:-webkit-calc((16px + 1vw)*1.1 / 2);
		font-size:calc((16px + 1vw)*1.1 / 2);
	}
}
@media screen and (max-width: 799px) {
	.pan{
		font-size:-webkit-calc(18 * (10vw / 64));
		font-size:calc(18 * (10vw / 64));
	}
}

/* ----- */

.pc_vanish{}
.sp_vanish{}
.im_vanish{display:none!important;}
.pc_br_del{}
.sp_br_del{}
@media screen and (min-width: 800px) {
	.pc_vanish{display:none!important;}
	.pc_br_del br{display:none!important;}
}
@media screen and (max-width: 799px) {
	.sp_vanish{display:none!important;}
	.sp_br_del br{display:none!important;}
}

.W50per{width:50%;}
.W100per{width:100%;}
@media screen and (max-width: 799px) {
	.W100per_sp{width:100%;}
}
.Wmax600{max-width:600px;}
.Wmax800{max-width:800px;}
.Wmax1000{max-width:1000px;}
.Wmax1300{max-width:1300px;}
.Wmax1600{max-width:1600px;}
.Wmax82per{max-width:82.803%;}

.padT45{padding-top:45px;}
.padB45{padding-bottom:45px;}
.padL40{padding-left:40px;}
.padR40{padding-right:40px;}
@media screen and (min-width: 800px) {
	.padLRcontent.padTB{
		padding:45px 0;
	}
}
@media screen and (min-width: 800px) and (max-width: 1599px) {
	.padLRcontent{
		padding-left:40px;
		padding-right:40px;
	}
	.padLRcontent.padTB{
		padding:2.8125vw 40px;
	}
}
@media screen and (max-width: 799px) {
	.padLRcontent{
		padding-left:8.125vw;
		padding-right:8.125vw;
	}
	.padLRcontent.padTB{
			padding:5.625vw 8.125vw;
	}
}
.mgnT10{margin-top:10px;}
.mgnT0_25em{margin-top:0.25em;}
.mgnT0_5em{margin-top:0.5em;}
.mgnT1em{margin-top:1em;}
.mgnT2em{margin-top:2em;}
.mgnT3em{margin-top:3em;}
.mgnB10{margin-bottom:10px;}
.mgnB0_25em{margin-bottom:0.25em;}
.mgnB0_5em{margin-bottom:0.5em;}
.mgnB1em{margin-bottom:1em;}
.mgnLm0_5em{margin-left:-0.5em;}
.mgnAuto{margin:auto;}

.fontP050{font-size:50%;}
.fontP060{font-size:60%;}
.fontP070{font-size:70%;}
.fontP075{font-size:75%;}
.fontP080{font-size:80%;}
.fontP087{font-size:87.75%;}
.fontP090{font-size:90%;}
.fontP100{font-size:100%;}
.fontP110{font-size:110%;}
.fontP115{font-size:115%;}
.fontP120{font-size:120%;}
.fontP130{font-size:130%;}
.fontP140{font-size:140%;}
.fontP150{font-size:150%;}
.fontP160{font-size:160%;}
.fontP170{font-size:170%;}
.fontP180{font-size:180%;}
.fontP190{font-size:190%;}
.fontP200{font-size:200%;}
.fontP300{font-size:300%;}
.fontP400{font-size:400%;}
.sp_fontP050{}
.sp_fontP060{}
.sp_fontP070{}
.sp_fontP075{}
.sp_fontP080{}
.sp_fontP087{}
.sp_fontP090{}
.sp_fontP100{}
.sp_fontP110{}
.sp_fontP115{}
.sp_fontP120{}
.sp_fontP130{}
.sp_fontP140{}
.sp_fontP150{}
.sp_fontP160{}
.sp_fontP170{}
.sp_fontP180{}
.sp_fontP190{}
.sp_fontP200{}
@media screen and (max-width: 799px) {
	.sp_fontP050{font-size:50%;}
	.sp_fontP060{font-size:60%;}
	.sp_fontP070{font-size:70%;}
	.sp_fontP075{font-size:75%;}
	.sp_fontP080{font-size:80%;}
	.sp_fontP087{font-size:87.75%;}
	.sp_fontP090{font-size:90%;}
	.sp_fontP100{font-size:100%;}
	.sp_fontP110{font-size:110%;}
	.sp_fontP115{font-size:115%;}
	.sp_fontP120{font-size:120%;}
	.sp_fontP130{font-size:130%;}
	.sp_fontP140{font-size:140%;}
	.sp_fontP150{font-size:150%;}
	.sp_fontP160{font-size:160%;}
	.sp_fontP170{font-size:170%;}
	.sp_fontP180{font-size:180%;}
	.sp_fontP190{font-size:190%;}
	.sp_fontP200{font-size:200%;}
}
.font_thin{font-weight:normal;}
.font_bold{font-weight:bold;}
.font_gothic{font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.font_min{font-family:"A-OTF リュウミン Pr6N","A-OTF リュウミン Pr6","A-OTF リュウミン Pr5","A-OTF リュウミン Pro","A-OTF リュウミン Std","ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝",serif;}
.font_default{font-family:"メイリオ", sans-serif;}

.fontW75{
	-moz-transform:   scale(0.75,1);
	-webkit-transform:scale(0.75,1);
	-o-transform:     scale(0.75,1);
	-ms-transform:    scale(0.75,1);
	transform:        scale(0.75,1);
	word-break:keep-all;
}

.LH100,.LH100 *{line-height:100%;}
.LH125,.LH125 *{line-height:125%;}
.LH133,.LH133 *{line-height:133%;}
.LH150,.LH150 *{line-height:150%;}
.LH175,.LH175 *{line-height:175%;}
.LH200,.LH200 *{line-height:200%;}
.LH150.mgnTmn{margin-top:-0.25em;}
.LH175.mgnTmn{margin-top:-0.375em;}
.LH200.mgnTmn{margin-top:-0.5em;}

.dpB{display:block;}
.dpI{display:inline;}
.dpIB{display:inline-block;}
.dpN{display:none;}

.floatL{float:left;}
.floatR{float:right;}
.clear{clear:both;}
@media screen and (min-width: 800px) {
	.floatL_pc{float:left;}
	.floatR_pc{float:right;}
}

.textL{text-align:left;}
.textR{text-align:right;}
.textC{text-align:center;}
.textJ{text-align: justify;
text-align-last:justify;
text-justify:distribute;}
.sp_textL{}
@media screen and (max-width: 799px) {
	.sp_textL{text-align:left;}
}
.valignT{vertical-align:top;}
.valignM{vertical-align:middle;}
.valignB{vertical-align:bottom;}

.col_000{color:#000;}
.col_F00{color:#F00;}
.col_FFF{color:#FFF;}
.col_red{color:#B41118;}
.col_yellow{color:#F2D118;}

.bg_cover,.bg_cover *{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
.bg_contain,.bg_contain *{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
}

.pos_rel{position:relative;}
.pos_abs{position:absolute;}
.pos_fix{position:fixed;}

.radius05{
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;}
.radius10{
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;}
.radius20{
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;}
.radius30{
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;}
.radius50{
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;}
.radius100per{
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;}

.shadow01{
	box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);}
.shadow02{
	box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);}
.shadow04{
	box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);}
.shadow04bo{
	box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.1);
	-webkit-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.1);}

.rotation90{
	-moz-transform:matrix(0, 1, -1, 0, 0, 0);
	-webkit-transform:matrix(0, 1, -1, 0, 0, 0);
	-o-transform:matrix(0, 1, -1, 0, 0, 0);
	transform:matrix(0, 1, -1, 0, 0, 0);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
}
/*
-moz-transform:    rotate(-45deg);
-webkit-transform: rotate(-45deg);
-ms-transform:     rotate(-45deg);
transform:         rotate(-45deg);
*/

.borderbox,.borderbox *{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
