@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300&family=Open+Sans+Condensed:wght@300&display=swap');

/*======================================
  common
======================================*/

body, div, h1, h2, h3, h4, main, header, footer, div, ul, ol, li, dl, dt, dd, table, tr, th, td, iframe, section, article, a { box-sizing: border-box; }
ul, dl, ol { margin: 0; padding: 0; }
main { display: block; }
em {
	text-decoration: none;
	font-style: normal;
}
.pdg_b0 { padding-bottom: 0px !important; }
.mrg_b0 { margin-bottom: 0 !important; }
.mrg_b025em { margin-bottom: 0.25em !important; }
.mrg_b05em { margin-bottom: 0.5em !important; }
.mrg_b075em { margin-bottom: 0.75em !important; }
.mrg_b1em { margin-bottom: 1em !important; }
.mrg_b125em { margin-bottom: 1.25em !important; }
.mrg_b15em { margin-bottom: 1.5em !important; }
.mrg_b175em { margin-bottom: 1.75em !important; }
.mrg_b2em { margin-bottom: 2em !important; }
.mrg_b25em { margin-bottom: 2.5em !important; }
.mrg_b3em { margin-bottom: 3em !important; }
.mrg_b35em { margin-bottom: 3.5em !important; }
.mrg_b4em { margin-bottom: 4em !important; }
.mrg_b45em { margin-bottom: 4.5em !important; }
.mrg_b5em { margin-bottom: 5em !important; }
.flt_l { float: left; }
.flt_r { float: right; }
.clear { clear: both; }
.fw_nml { font-weight: normal !important }
.fw_bld { font-weight: bold !important }
.ff_en { font-family: 'Open Sans Condensed', sans-serif; }
.ff_en_bld { font-family: 'Open Sans Condensed', sans-serif; font-weight: bold; }
.ff_jp { font-family: 'Open Sans Condensed', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif; }
.fs_25p { font-size: 0.25em !important; }
.fs_40p { font-size: 0.4em !important; }
.fs_50p { font-size: 0.5em !important; }
.fs_65p { font-size: 0.65em !important; }
.fs_75p { font-size: 0.75em !important; }
.fs_80p { font-size: 0.80em !important; }
.fs_90p { font-size: 0.9em !important; }
.fs_125p { font-size: 1.25em !important; }
.fs_150p { font-size: 1.5em !important; }
.fs_175p { font-size: 1.75em !important; }
.fs_200p { font-size: 2em !important; }
.txt_red { color: #a91719 !important; }
.txt_pk { color: #ef6794 !important; }
.txt_wht { color: #fff !important; }
.txt_ylw { color: #ffd132 !important; }
.txt_blu { color: #194687 !important; }
.txt_grn { color: #2f795e !important; }
.txa_left { text-align: left !important; }
.txa_center { text-align: center !important; }
.txa_right { text-align: right !important; }
.ls_nlw { letter-spacing: -0.03em !important; }
.ls_1em { letter-spacing: 1em !important; }
.ls_nml { letter-spacing: normal !important; }
.lh_1 { line-height: 1; }
.lh_12 { line-height: 1.2; }
.bdr_all_wht { border: 1px solid #fff; }
.bdr_all_gry { border: 1px solid #666; }
.bdr_t_wht { border-top: 1px solid #fff !important; }
.bdr_b_wht { border-bottom: 1px solid #fff !important; }
.bdr_l_wht { border-left: 1px solid #fff !important; }
.bdr_r_wht { border-right: 1px solid #fff !important; }
.bdr_t_blk { border-top: 1px solid #000 !important; }
.bdr_b_blk { border-bottom: 1px solid #000 !important; }
.bdr_l_blk { border-left: 1px solid #000 !important; }
.bdr_r_blk { border-right: 1px solid #000 !important; }
.bdr_l_wht2 { border-left: 2px solid #fff !important; }
.bdr_r_wht2 { border-right: 2px solid #fff !important; }
.nobdr_l { border-left: 0 !important; }
.nobdr_r { border-right: 0 !important; }
.txt_ul { text-decoration: underline; }
.relative { position: relative; }
.imgcenter {
	display: block;
	margin: 0 auto;
}
.mw100p {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
/*
.movie-wrapper {
	width: 560px;
	max-width: 100%;
	margin: 0 auto 50px;
}
*/
.movie {
	position: relative;
	height: 0;
	margin: 0 auto;
	padding: 0 0 56.25%;
	overflow: hidden;
}
.movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.off {
	display: none;
}
.shadow {
	display: block;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
}

.dl-horizontal dt {
	float: left;
	width: 3rem;
	clear: left;
	white-space: nowrap;
}
.dl-horizontal dd {
	padding: 0 0 .25rem 3.5rem;
}
.dl-horizontal dt, .dl-horizontal dd {
	margin: 0;
	line-height: 1.42857143;
}
.col2 {
	width: 49%;
	flex-basis: 49%;
}
@media (max-width: 640px) {
	.col2 {
		width: 100%;
		flex-basis: 100%;
	}
}

.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { zoom:1; }
