@charset "utf-8";
/* ============================================
 *
 * Format Ver  : 20.7.20
 * Last UpDate : 2020/07/20
 * flexbox および レスポンシブに対応
 *
============================================ */

/*-----------------------------------------------
	general
--------------------------------------------- */
html { overflow-y: scroll;}


/* ---------------------------------------------
	font style
--------------------------------------------- */
.f_normal  { font-weight: normal;}
.f_bold   { font-weight: bold;}
.f_italic { font-style: italic;}

.f_s3 { font-size: 70%;}
.f_s2  { font-size: 78%;} /* base 12px =  8px */
.f_s1   { font-size: 85%;} /* base 12px = 10px */
.f_m   { font-size: 100%;}
.f_l1   { font-size: 115%;}/* base 12px = 14px */
.f_l2  { font-size: 130%;}/* base 12px = 16px */
.f_l3 { font-size: 143%;}/* base 12px = 18px */


/* ---------------------------------------------
	font color
--------------------------------------------- */
.f_red {
	color: #cc0000;
}
.f_gray {
	color: #999999;
}


/* ---------------------------------------------
	hover
--------------------------------------------- */

a {
	color: #520651;
	text-decoration: underline;
	word-break: break-all;
}
	a:hover {
		text-decoration: none;
	}

a:hover img {
	opacity : 0.8;
	filter: alpha(opacity=80);
}


/* ---------------------------------------------
	preset margin 
--------------------------------------------- */
.m0{ margin: 0!important; }
.m0-t{ margin-top: 0!important; }
.m0-r{ margin-right: 0!important; }
.m0-b{ margin-bottom: 0!important; }
.m0-l{ margin-left: 0!important; }

.m10{ margin: 10px!important; }
.m10-t{ margin-top: 10px!important; }
.m10-r{ margin-right: 10px!important; }
.m10-b{ margin-bottom: 10px!important; }
.m10-l{ margin-left: 10px!important; }

.m20{ margin: 20px!important; }
.m20-t{ margin-top: 20px!important; }
.m20-r{ margin-right: 20px!important; }
.m20-b{ margin-bottom: 20px!important; }
.m20-l{ margin-left: 20px!important; }

.m30{ margin: 30px!important; }
.m30-t{ margin-top: 30px!important; }
.m30-r{ margin-right: 30px!important; }
.m30-b{ margin-bottom: 30px!important; }
.m30-l{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.m40-t{ margin-top: 40px!important; }
.m40-r{ margin-right: 40px!important; }
.m40-b{ margin-bottom: 40px!important; }
.m40-l{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.m50-t{ margin-top: 50px!important; }
.m50-r{ margin-right: 50px!important; }
.m50-b{ margin-bottom: 50px!important; }
.m50-l{ margin-left: 50px!important; }

.m60{ margin: 60px!important; }
.m60-t{ margin-top: 60px!important; }
.m60-r{ margin-right: 60px!important; }
.m60-b{ margin-bottom: 60px!important; }
.m60-l{ margin-left: 60px!important; }


/* ---------------------------------------------
	preset padding 
--------------------------------------------- */
.p0{ padding: 0!important; }
.p0-t{ padding-top: 0!important; }
.p0-r{ padding-right: 0!important; }
.p0-b{ padding-bottom: 0!important; }
.p0-l{ padding-left: 0!important; }

.p10{ padding: 10px!important; }
.p10-t{ padding-top: 10px!important; }
.p10-r{ padding-right: 10px!important; }
.p10-b{ padding-bottom: 10px!important; }
.p10-l{ padding-left: 10px!important; }

.p20{ padding: 20px!important; }
.p20-t{ padding-top: 20px!important; }
.p20-r{ padding-right: 20px!important; }
.p20-b{ padding-bottom: 20px!important; }
.p20-l{ padding-left: 20px!important; }

.p30{ padding: 30px!important; }
.p30-t{ padding-top: 30px!important; }
.p30-r{ padding-right: 30px!important; }
.p30-b{ padding-bottom: 30px!important; }
.p30-l{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.p40-t{ padding-top: 40px!important; }
.p40-r{ padding-right: 40px!important; }
.p40-b{ padding-bottom: 40px!important; }
.p40-l{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.p50-t{ padding-top: 50px!important; }
.p50-r{ padding-right: 50px!important; }
.p50-b{ padding-bottom: 50px!important; }
.p50-l{ padding-left: 50px!important; }

.p60{ padding: 60px!important; }
.p60-t{ padding-top: 60px!important; }
.p60-r{ padding-right: 60px!important; }
.p60-b{ padding-bottom: 60px!important; }
.p60-l{ padding-left: 60px!important; }


/* ---------------------------------------------
	inline align
--------------------------------------------- */
.align_l { text-align: left;}
.align_c { text-align: center;}
.align_r { text-align: right;}


/* ---------------------------------------------
	vertical align
--------------------------------------------- */
.valign_t { vertical-align: top    !important;}
.valign_m { vertical-align: middle !important;}
.valign_b { vertical-align: bottom !important;}


/* ---------------------------------------------
	width
--------------------------------------------- */

.wid03 { width:  3% !important;}
.wid05 { width:  5% !important;}
.wid10 { width: 10% !important;}
.wid13 { width: 13% !important;}
.wid15 { width: 15% !important;}
.wid20 { width: 20% !important;}
.wid25 { width: 25% !important;}
.wid30 { width: 30% !important;}
.wid35 { width: 35% !important;}
.wid40 { width: 40% !important;}
.wid45 { width: 45% !important;}
.wid50 { width: 50% !important;}


/* ---------------------------------------------
	float
--------------------------------------------- */
.float_l {
	display: inline;
	float: left;
}
.float_r {
	display: inline;
	float: right;
}

/* ---------------------------------------------
	20200720追加
--------------------------------------------- */
.linkbox {
	position: relative;
}
.linkbox:hover {
	background-color: #FFF8E1;
}
.linkbox .more {
	position: absolute;
	width: 100%;
	height: 100%;
	left:0;
	top:0;
	text-indent: -100vw;
}
.d-flex {
	display: flex;
	flex-wrap: wrap;
}
.justify-content-between {
	justify-content: space-between;
}
.justify-content-center {
	justify-content: center;
}
.align-items-center {
	align-items: center;
}
.parent-4 > div,
.parent-4 > li {
	width: 25%;
	box-sizing: border-box;
}
.text-center {
	text-align: center;
}

@media(min-width:768px){
	.sp {
		display: none;
	}
	.d-md-flex {
		display: flex;
		flex-wrap: wrap;
	}
	.parent-md-4 > div,
	.parent-md-4 > li {
		width: 25%;
		box-sizing: border-box;
	}
}
@media(max-width:767px){
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
}

/* ---------------------------------------------
	img style
--------------------------------------------- */
img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}


/* ---------------------------------------------
	image box
--------------------------------------------- */
.imagebox_l,
.imagebox_r {
	display: block;
	min-height: 1%;
}
.imagebox_l:after,
.imagebox_r:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .imagebox_l,
* html .imagebox_r {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
	.imagebox_l .float_image {
		display: inline;
		float: left;
		margin-right: 10px;
	}
	.imagebox_r .float_image {
		display: inline;
		float: right;
		margin-left: 10px;
	}

.imagebox_c {
	text-align:center;
	margin-bottom:10px;
}

/* ---------------------------------------------
	clearfix
--------------------------------------------- */
.clearfix {
	display: block;
	min-height: 1%;
}
.clearfix:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/* ---------------------------------------------
	block align
--------------------------------------------- */
.block_c { text-align: center;}

	.block_c .block {
		margin-right: auto;
		margin-left: auto;
		text-align: left;
	}
	/* ie 6 Fix */
	* html .blockC .block {
		margin-right: 0;
		margin-left: 0;
	}
.block_r { text-align: right;}
	.block_r .block {
		margin-left: auto;
		text-align: left;
	}
	/* ie 6 Fix */
	* html .block_r .block {
		margin-left: 0;
	}


/* ---------------------------------------------
	tools
--------------------------------------------- */
.clear { 
	clear: both;
}

.block  { display: block;}
.inline { display: inline;}
.hide   { display: none;}

.nobg {
	background: none !important;
}

.underline { text-decoration: underline;}
.no_line    { text-decoration: none;}


/* ---------------------------------------------
	attention
--------------------------------------------- */
.attention { border: 2px solid #9966CC; padding: 10px; text-align: center; background-color: #FF99FF; font-size: 30px; color: #FFF;}



/* ---------------------------------------------
	JavaScript class
--------------------------------------------- */
.over            {/* ロールオーバー呼び出し用 */}
.heightLine-     {/* heightLine.js呼び出し用 */}
.png_bg             {/* DD_belatedPNG.js呼び出し用 */}



/* ---------------------------------------------
	プレゼントフォーム関連
--------------------------------------------- */
.presentform #header,
.presentform #globalnavi,
.presentform #foot_wrap {
	display: none;
}
.thanks #header,
.thanks #globalnavi,
.thanks #foot_wrap {
	display: none;
}
.single-com #header,
.single-com #globalnavi,
.single-com #sidebar,
.single-com #foot_wrap {
	display: none;
}
.present_btn{
	margin:10px 0px 10px 30px;
}

.table_presentform{
	max-width:700px;
	border:1px solid #ccc;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:30px;
}
.table_presentform th,
.table_presentform td{
	border:1px solid #ccc;
	padding:5px 10px 5px 10px;
}
.table_presentform th{
	background-color:#eee;
}
.table_presentform td{

}


.fError{
	color:#f00;
}
.fHissu{
	color:#f00;
	font-size:0.8em;
}


