@charset "utf-8";
/* ------------------------------
FD toppage sz 2020/04/03 16:28
------------------------------ */

/*oc_desc*/
.oc_desc * {
	box-sizing: border-box;
}

.oc_desc {
	font-size: 62.5%;
	/*10px=1rem*/
	font-size: 14px;
	line-height: 140%;
	color: #222;
	background-color: #ffffff;
}

/* sp▽ */
@media only screen and (max-width: 768px) {
	.oc_desc {
		margin: 10px 2vw 10vw;
		padding: 0 2vw 5vw;
		font-size: 16px;
	}
}

/*△*/


/* PC */
@media only screen and (min-width: 768px) {
	.oc_desc {
		margin: 10px auto 50px;
		padding: 0px;
		max-width: 1000px;
		font-size: 16px;
	}
}

/*△*/



/*▼▼汎用********************************************************/


/*背景 bg*/
.oc_desc .non_bgimg {
	background-image: none;
}

.oc_desc .bg_black {
	background-color: #000000;
}

.oc_desc .bg_white {
	background-color: #ffffff;
}

.oc_desc .bg_dark {
	background-color: #4d3d32;
}

.oc_desc .bg_gray {
	background-color: #666666;
}

.oc_desc .bg_l_gray {
	background-color: #e5e0db;
}

.oc_desc .bg_silver {
	background-color: #f5f4f2;
}

.oc_desc .bg_red {
	background-color: #d31200;
}

.oc_desc .bg_orange {
	background-color: #f5ac32;
}

.oc_desc .bg_yellow {
	background-color: #fff100;
}

.oc_desc .bg_cream {
	background-color: #fcfbbb;
}

.oc_desc .half_bg_red {
	background: linear-gradient(to bottom, rgba(231, 174, 182, 0) 0%, rgba(231, 174, 182, 0) 70%, rgb(231, 174, 182) 70%, rgb(231, 174, 182) 100%);
}

.oc_desc .half_bg_yellow {
	background: linear-gradient(to bottom, rgba(250, 234, 0, 0) 0%, rgba(250, 234, 0, 0) 70%, rgb(250, 234, 0) 70%, rgb(250, 234, 0) 100%);
}


/* border*/
.oc_desc .border_radius {
	border-radius: 5px;
}

.oc_desc .border_non_radius {
	border-radius: unset;
}

/* まとめセット */
.oc_desc .border_s1_gray {
	border: 1px solid #e5e0db;
	border-radius: 5px;
}

.oc_desc .border_s2_dark {
	border: 2px solid #4d3d32;
	border-radius: 5px;
}

.oc_desc .border_s3_yellow {
	border: 3px solid #fff100;
	border-radius: 5px;
}


/* 個別 */
.oc_desc .border_w_1 {
	border-width: 1px;
	border-radius: 5px;
}

.oc_desc .border_w_2 {
	border-width: 2px;
	border-radius: 5px;
}

.oc_desc .border_w_3 {
	border-width: 3px;
	border-radius: 5px;
}

.oc_desc .border_color_silver {
	border-color: #f5f4f2;
}

.oc_desc .border_color_dark {
	border-color: #4d3d32;
}

.oc_desc .border_color_red {
	border-color: #d31200;
}

.oc_desc .border_color_cream {
	border-color: #fff0d1;
}

.oc_desc .border_color_gray {
	border-color: #e5e0db;
}

.oc_desc .border_color_yellow {
	border-color: #fff100;
}

.oc_desc .border_color_orange {
	border-color: #f5ac32;
}


.oc_desc .border_style_solid {
	border-style: solid;
}

.oc_desc .border_style_double {
	border-style: double;
}

.oc_desc .border_style_dotted {
	border-style: dotted;
}



/*見出し*****************************************/

.oc_desc h1,
.oc_desc h2,
.oc_desc h3,
.oc_desc h4,
.oc_desc h5,
.oc_desc h6 {
	font-weight: bold;
	margin: 3px 0 0;
	padding: 0 3px;
}

.oc_desc h1 {
	font-size: 18px;
}

.oc_desc h2 {
	font-size: 17px;
}

.oc_desc h3 {
	font-size: 16px;
}

.oc_desc h4 {
	font-size: 15px;
}

.oc_desc h5 {
	font-size: 14px;
}

.oc_desc h6 {
	font-size: 12px;
}

/* PC */
@media only screen and (min-width: 768px) {

	/*▽*/
	.oc_desc h1,
	.oc_desc h2,
	.oc_desc h3,
	.oc_desc h4,
	.oc_desc h5,
	.oc_desc h6 {
		margin: 0.5em 0 0;
		padding: 0 0.3em;
	}

	.oc_desc h1 {
		font-size: 24px;
	}

	.oc_desc h2 {
		font-size: 22px;
	}

	.oc_desc h3 {
		font-size: 18px;
	}

	.oc_desc h4 {
		font-size: 15px;
	}

	.oc_desc h5 {
		font-size: 14px;
	}

	.oc_desc h6 {
		font-size: 12px;
	}
}

/*△*/



/*普通のbox*****************/
.oc_desc .box_com,
.oc_desc .box_caution {
	margin: 5px auto;
	padding: 1vw 2vw;
	border-radius: 5px;
}

/* PC */
@media only screen and (min-width: 768px) {
	.oc_desc .box_com {
		padding: 5px 10px;
	}
}

/*△*/


/*flexなbox**********/
/*親要素*/
.oc_desc .flex_root,
.oc_desc .flex_root_inline {
	flex-flow: row wrap;
	justify-content: space-around;
	align-items: stretch;
	align-content: stretch;
}

.oc_desc .flex_root {
	display: flex;
}

.oc_desc .flex_root_inline {
	display: inline-flex;
}

/*子要素*/
.oc_desc .flex_box {
	flex: 1 1 auto;
}

.oc_desc .flex_box::after {
	content: "";
	clear: both;
	display: block;
	/*cf*/
}

/*横のbox数*/
.oc_desc .flex_col_1_1,
.oc_desc .flex_col_2_1,
.oc_desc .flex_col_3_1,
.oc_desc .flex_col_4_1 .oc_desc .flex_col_5_1 {
	width: 96%;
	margin: 0 2%;
}

.oc_desc .flex_col_2_2,
.oc_desc .flex_col_3_2,
.oc_desc .flex_col_4_2 {
	width: 47%;
	margin: 0 1.5%;
}

.oc_desc .flex_col_3_3,
.oc_desc .flex_col_4_3 {
	width: 31%;
	margin: 0 1.14%;
}

.oc_desc .flex_col_4_4,
.oc_desc .flex_col_5_4 {
	width: 24%;
	margin: 0 0.5%;
}

/* PC */
@media only screen and (min-width: 768px) {

	.oc_desc .flex_col_2_1,
	.oc_desc .flex_col_2_2 {
		width: 47%;
		margin: 0 1.5%;
	}

	.oc_desc .flex_col_3_3,
	.oc_desc .flex_col_3_2,
	.oc_desc .flex_col_3_1 {
		width: 31%;
		margin: 0 1.14%;
	}

	.oc_desc .flex_col_4_4,
	.oc_desc .flex_col_4_3,
	.oc_desc .flex_col_4_2,
	.oc_desc .flex_col_4_1 {
		width: 24%;
		margin: 0 0.5%;
	}

	.oc_desc .flex_col_5_4,
	.oc_desc .flex_col_5_1 {
		width: 19%;
		margin: 0 0.5%;
	}
}

/*△*/

/*append*/
/*画像x2,3,4 マージンなし用*/
.oc_desc .flex_root.img_2bn,
.oc_desc .flex_root.img_3bn,
.oc_desc .flex_root.img_4bn {
	justify-content: stretch;
}

.oc_desc .img_2bn>.flex_col_2_1,
.oc_desc .img_3bn>.flex_col_3_1,
.oc_desc .img_4bn>.flex_col_4_1 {
	margin: 0;
}

/* PC▽ */
@media only screen and (min-width: 768px) {
	.oc_desc .img_2bn>.flex_col_2_1 {
		margin: 0;
		width: 50%;
	}

	.oc_desc .img_3bn>.flex_col_3_1 {
		margin: 0;
		width: 33.33%;
	}

	.oc_desc .img_4bn>.flex_col_4_1 {
		margin: 0;
		width: 25%;
	}
}

/*△*/

/*行端処理*/
/*2列終端*/
.oc_desc .flex_col_2_2:nth-child(2n+1):last-child,
.oc_desc .flex_col_3_2:nth-child(2n+1):last-child,
.oc_desc .flex_col_4_2:nth-child(2n+1):last-child {
	margin-right: 50%;
}

/* PC */
@media only screen and (min-width: 768px) {

	.oc_desc .flex_col_2_1:nth-child(2n+1):last-child,
	.oc_desc .flex_col_2_2:nth-child(2n+1):last-child {
		margin-right: 50%;
	}
}

/*3列終端*/
.oc_desc .flex_col_3_3:nth-child(3n+1):last-child,
.oc_desc .flex_col_4_3:nth-child(3n+1):last-child {
	margin-right: 67.8%;
}

.oc_desc .flex_col_3_3:nth-child(3n+2):last-child,
.oc_desc .flex_col_4_3:nth-child(3n+2):last-child {
	margin-right: 34.5%;
}

/* PC */
@media only screen and (min-width: 768px) {

	.oc_desc .flex_col_3_3:nth-child(3n+1):last-child,
	.oc_desc .flex_col_3_2:nth-child(3n+1):last-child,
	.oc_desc .flex_col_3_1:nth-child(3n+1):last-child {
		margin-right: 67.8%;
	}

	.oc_desc .flex_col_3_3:nth-child(3n+2):last-child,
	.oc_desc .flex_col_3_2:nth-child(3n+2):last-child,
	.oc_desc .flex_col_3_1:nth-child(3n+2):last-child {
		margin-right: 34.5%;
	}
}

/*4列終端*/
/* sp▽ */
@media only screen and (max-width: 768px) {

	.oc_desc .flex_col_5_4:nth-child(4n+1):last-child,
	.oc_desc .flex_col_4_4:nth-child(4n+1):last-child {
		margin-right: 75%;
	}

	.oc_desc .flex_col_5_4:nth-child(4n+2):last-child,
	.oc_desc .flex_col_4_4:nth-child(4n+2):last-child {
		margin-right: 50%;
	}

	.oc_desc .flex_col_5_4:nth-child(4n+3):last-child,
	.oc_desc .flex_col_4_4:nth-child(4n+3):last-child {
		margin-right: 25%;
	}
}

/*△*/
/* PC */
@media only screen and (min-width: 768px) {

	.oc_desc .flex_col_4_4:nth-child(4n+1):last-child,
	.oc_desc .flex_col_4_3:nth-child(4n+1):last-child,
	.oc_desc .flex_col_4_2:nth-child(4n+1):last-child,
	.oc_desc .flex_col_4_1:nth-child(4n+1):last-child {
		margin-right: 75%;
	}

	.oc_desc .flex_col_4_4:nth-child(4n+2):last-child,
	.oc_desc .flex_col_4_3:nth-child(4n+2):last-child,
	.oc_desc .flex_col_4_2:nth-child(4n+2):last-child,
	.oc_desc .flex_col_4_1:nth-child(4n+2):last-child {
		margin-right: 50%;
	}

	.oc_desc .flex_col_4_4:nth-child(4n+3):last-child,
	.oc_desc .flex_col_4_3:nth-child(4n+3):last-child,
	.oc_desc .flex_col_4_2:nth-child(4n+3):last-child,
	.oc_desc .flex_col_4_1:nth-child(4n+3):last-child {
		margin-right: 25%;
	}
}

/*5列終端*/
/* PC */
@media only screen and (min-width: 768px) {

	.oc_desc .flex_col_5_4:nth-child(5n+1):last-child,
	.oc_desc .flex_col_5_1:nth-child(5n+1):last-child {
		margin-right: 80%;
	}

	.oc_desc .flex_col_5_4:nth-child(5n+2):last-child,
	.oc_desc .flex_col_5_1:nth-child(5n+2):last-child {
		margin-right: 60%;
	}

	.oc_desc .flex_col_5_4:nth-child(5n+3):last-child,
	.oc_desc .flex_col_5_1:nth-child(5n+3):last-child {
		margin-right: 40%;
	}

	.oc_desc .flex_col_5_4:nth-child(5n+4):last-child,
	.oc_desc .flex_col_5_1:nth-child(5n+4):last-child {
		margin-right: 20%;
	}
}




/*△flexなbox*****************************************/


/*cf*/
.oc_desc .clearfix::after {
	content: "";
	clear: both;
	display: block;
}

/* sp▽ */
@media only screen and (max-width: 768px) {
	.oc_desc .show_on_pc {
		display: none;
	}
}

/*△*/
/* PC▽ */
@media only screen and (min-width: 768px) {
	.oc_desc .show_on_sp {
		display: none;
	}
}

/*△*/

/* margin */
/*top*/
.oc_desc .m_top_00 {
	margin-top: 0;
}

.oc_desc .m_top_05 {
	margin-top: 5px;
}

.oc_desc .m_top_10 {
	margin-top: 10px;
}

.oc_desc .m_top_15 {
	margin-top: 15px;
}

.oc_desc .m_top_20 {
	margin-top: 20px;
}

.oc_desc .m_top_40 {
	margin-top: 40px;
}

.oc_desc .m_top_60 {
	margin-top: 60px;
}

.oc_desc .m_top_-2 {
	margin-top: -2px;
}

/*bottom*/
.oc_desc .m_btm_00 {
	margin-bottom: 0;
}

.oc_desc .m_btm_05 {
	margin-bottom: 5px;
}

.oc_desc .m_btm_10 {
	margin-bottom: 10px;
}

.oc_desc .m_btm_15 {
	margin-bottom: 15px;
}

.oc_desc .m_btm_20 {
	margin-bottom: 20px;
}

.oc_desc .m_btm_-2 {
	margin-bottom: -2px;
}

/*left*/
.oc_desc .m_left_00 {
	margin-left: 0;
}

.oc_desc .m_left_05 {
	margin-left: 5px;
}

.oc_desc .m_left_10 {
	margin-left: 10px;
}

.oc_desc .m_left_15 {
	margin-left: 15px;
}

.oc_desc .m_left_20 {
	margin-left: 20px;
}

/*right*/
.oc_desc .m_right_00 {
	margin-right: 0;
}

.oc_desc .m_right_05 {
	margin-right: 5px;
}

.oc_desc .m_right_10 {
	margin-right: 10px;
}

.oc_desc .m_right_15 {
	margin-right: 15px;
}

.oc_desc .m_right_20 {
	margin-right: 20px;
}

/*multi*/
.oc_desc .m_topbtm_00 {
	margin-top: 0;
	margin-bottom: 0;
}

.oc_desc .m_topbtm_05 {
	margin-top: 5px;
	margin-bottom: 5px;
}

.oc_desc .m_topbtm_10 {
	margin-top: 10px;
	margin-bottom: 10px;
}

.oc_desc .m_topbtm_15 {
	margin-top: 15px;
	margin-bottom: 15px;
}

.oc_desc .m_topbtm_20 {
	margin-top: 20px;
	margin-bottom: 20px;
}

.oc_desc .m_l_r_auto {
	margin-left: auto;
	margin-right: auto;
}

.oc_desc .m_l_r_00 {
	margin-right: 0;
	margin-left: 0;
}

.oc_desc .m_l_r_05 {
	margin-right: 5px;
	margin-left: 5px;
}

.oc_desc .m_l_r_10 {
	margin-right: 10px;
	margin-left: 10px;
}

.oc_desc .m_l_r_15 {
	margin-right: 15px;
	margin-left: 15px;
}

.oc_desc .m_l_r_20 {
	margin-right: 20px;
	margin-left: 20px;
}

.oc_desc .m_all_00 {
	margin: 0;
}

.oc_desc .m_all_05 {
	margin: 5px;
}

.oc_desc .m_all_10 {
	margin: 10px;
}

.oc_desc .m_all_15 {
	margin: 15px;
}

.oc_desc .m_all_20 {
	margin: 20px;
}

/*special/*/
.oc_desc .m_top_40_20 {
	margin-top: 20px;
}

.oc_desc .m_btm_40_20 {
	margin-bottom: 20px;
}

.oc_desc .m_topbtm_40_20 {
	margin-top: 20px;
	margin-bottom: 20px;
}

.oc_desc .m_l_r_40_20 {
	margin-right: 20px;
	margin-left: 20px;
}

.oc_desc .m_all_40_20 {
	margin: 20px;
}

.oc_desc .m_top_60_30 {
	margin-top: 30px;
}

.oc_desc .m_btm_60_30 {
	margin-bottom: 30px;
}

.oc_desc .m_topbtm_60_30 {
	margin-top: 30px;
	margin-bottom: 30px;
}

.oc_desc .m_l_r_60_30 {
	margin-right: 30px;
	margin-left: 30px;
}

.oc_desc .m_all_60_30 {
	margin: 30px;
}

.oc_desc .p_top_40_20 {
	padding-top: 20px;
}

.oc_desc .p_btm_40_20 {
	padding-bottom: 20px;
}

.oc_desc .p_topbtm_40_20 {
	padding-top: 20px;
	padding-bottom: 20px;
}

.oc_desc .p_l_r_40_20 {
	padding-right: 20px;
	padding-left: 20px;
}

.oc_desc .p_all_40_20 {
	padding: 20px;
}

.oc_desc .p_top_60_30 {
	padding-top: 30px;
}

.oc_desc .p_btm_60_30 {
	padding-bottom: 30px;
}

.oc_desc .p_topbtm_60_30 {
	padding-top: 30px;
	padding-bottom: 30px;
}

.oc_desc .p_l_r_60_30 {
	padding-right: 30px;
	padding-left: 30px;
}

.oc_desc .p_all_60_30 {
	padding: 30px;
}


/* PC▽ */
@media only screen and (min-width: 768px) {

	.oc_desc .m_top_40_20 {
		margin-top: 40px;
	}

	.oc_desc .m_btm_40_20 {
		margin-bottom: 40px;
	}

	.oc_desc .m_topbtm_40_20 {
		margin-top: 40px;
		margin-bottom: 40px;
	}

	.oc_desc .m_l_r_40_20 {
		margin-right: 40px;
		margin-left: 40px;
	}

	.oc_desc .m_all_40_20 {
		margin: 40px;
	}

	.oc_desc .m_top_60_30 {
		margin-top: 60px;
	}

	.oc_desc .m_btm_60_30 {
		margin-bottom: 60px;
	}

	.oc_desc .m_topbtm_60_30 {
		margin-top: 60px;
		margin-bottom: 60px;
	}

	.oc_desc .m_l_r_60_30 {
		margin-right: 60px;
		margin-left: 60px;
	}

	.oc_desc .m_all_60_30 {
		margin: 60px;
	}

	.oc_desc .p_top_40_20 {
		padding-top: 40px;
	}

	.oc_desc .p_btp_40_20 {
		padding-bottom: 40px;
	}

	.oc_desc .p_topbtm_40_20 {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.oc_desc .p_l_r_40_20 {
		padding-right: 40px;
		padding-left: 40px;
	}

	.oc_desc .p_all_40_20 {
		padding: 40px;
	}

	.oc_desc .p_top_60_30 {
		padding-top: 60px;
	}

	.oc_desc .p_btm_60_30 {
		padding-bottom: 60px;
	}

	.oc_desc .p_topbtm_60_30 {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.oc_desc .p_l_r_60_30 {
		padding-right: 60px;
		padding-left: 60px;
	}

	.oc_desc .p_all_60_30 {
		padding: 60px;
	}

}

/*△*/





/* padding */
/*top*/
.oc_desc .p_top_00 {
	padding-top: 0;
}

.oc_desc .p_top_05 {
	padding-top: 5px;
}

.oc_desc .p_top_10 {
	padding-top: 10px;
}

.oc_desc .p_top_15 {
	padding-top: 15px;
}

.oc_desc .p_top_20 {
	padding-top: 20px;
}

/*bottom*/
.oc_desc .p_btm_00 {
	padding-bottom: 0;
}

.oc_desc .p_btm_05 {
	padding-bottom: 5px;
}

.oc_desc .p_btm_10 {
	padding-bottom: 10px;
}

.oc_desc .p_btm_15 {
	padding-bottom: 15px;
}

.oc_desc .p_btm_20 {
	padding-bottom: 20px;
}

/*left*/
.oc_desc .p_left_00 {
	padding-left: 0;
}

.oc_desc .p_left_05 {
	padding-left: 5px;
}

.oc_desc .p_left_10 {
	padding-left: 10px;
}

.oc_desc .p_left_15 {
	padding-left: 15px;
}

.oc_desc .p_left_20 {
	padding-left: 20px;
}

/*right*/
.oc_desc .p_right_00 {
	padding-right: 0;
}

.oc_desc .p_right_05 {
	padding-right: 5px;
}

.oc_desc .p_right_10 {
	padding-right: 10px;
}

.oc_desc .p_right_15 {
	padding-right: 15px;
}

.oc_desc .p_right_20 {
	padding-right: 20px;
}

/*multi*/
.oc_desc .p_topbtm_00 {
	padding-top: 0;
	padding-bottom: 0;
}

.oc_desc .p_topbtm_05 {
	padding-top: 5px;
	padding-bottom: 5px;
}

.oc_desc .p_topbtm_10 {
	padding-top: 10px;
	padding-bottom: 10px;
}

.oc_desc .p_topbtm_15 {
	padding-top: 15px;
	padding-bottom: 15px;
}

.oc_desc .p_topbtm_20 {
	padding-top: 20px;
	padding-bottom: 20px;
}

.oc_desc .p_l_r_00 {
	padding-right: 0;
	padding-left: 0;
}

.oc_desc .p_l_r_05 {
	padding-right: 5px;
	padding-left: 5px;
}

.oc_desc .p_l_r_10 {
	padding-right: 10px;
	padding-left: 10px;
}

.oc_desc .p_l_r_15 {
	padding-right: 15px;
	padding-left: 15px;
}

.oc_desc .p_l_r_20 {
	padding-right: 20px;
	padding-left: 20px;
}

.oc_desc .p_all_00 {
	padding: 0;
}

.oc_desc .p_all_05 {
	padding: 5px;
}

.oc_desc .p_all_10 {
	padding: 10px;
}

.oc_desc .p_all_15 {
	padding: 15px;
}

.oc_desc .p_all_20 {
	padding: 20px;
}


/* width height*/
.oc_desc .w_p10 {
	width: 10%;
	height: auto;
}

.oc_desc .w_p20 {
	width: 20%;
	height: auto;
}

.oc_desc .w_p10_30,
.oc_desc .w_p20_30,
.oc_desc .w_p30 {
	width: 30%;
	height: auto;
}

.oc_desc .w_p20_40,
.oc_desc .w_p30_40,
.oc_desc .w_p40 {
	width: 40%;
	height: auto;
}

.oc_desc .w_p20_50,
.oc_desc .w_p30_50,
.oc_desc .w_p50 {
	width: 49.95%;
	height: auto;
}

.oc_desc .w_p60 {
	width: 60%;
	height: auto;
}

.oc_desc .w_p70 {
	width: 70%;
	height: auto;
}

.oc_desc .w_p80 {
	width: 80%;
	height: auto;
}

.oc_desc .w_p90 {
	width: 90%;
	height: auto;
}

.oc_desc .w_p30_100,
.oc_desc .w_p40_100,
.oc_desc .w_p50_100,
.oc_desc .w_p60_100,
.oc_desc .w_p70_100,
.oc_desc .w_p100 {
	width: 100%;
	height: auto;
}

.oc_desc .w_max_p10 {
	max-width: 10%;
	height: auto;
}

.oc_desc .w_max_p20 {
	max-width: 20%;
	height: auto;
}

.oc_desc .w_max_p30 {
	max-width: 30%;
	height: auto;
}

.oc_desc .w_max_p40 {
	max-width: 40%;
	height: auto;
}

.oc_desc .w_max_p50 {
	max-width: 50%;
	height: auto;
}

.oc_desc .w_max_p60 {
	max-width: 60%;
	height: auto;
}

.oc_desc .w_max_p70 {
	max-width: 70%;
	height: auto;
}

.oc_desc .w_max_p80 {
	max-width: 80%;
	height: auto;
}

.oc_desc .w_max_p90 {
	max-width: 90%;
	height: auto;
}

.oc_desc .w_max_p100 {
	max-width: 100%;
	height: auto;
}

.oc_desc .w_min_p60 {
	min-width: 60%;
	height: auto;
}

.oc_desc .w_min_p70 {
	min-width: 70%;
	height: auto;
}

.oc_desc .w_min_p80 {
	min-width: 80%;
	height: auto;
}

.oc_desc .w_min_p90 {
	min-width: 90%;
	height: auto;
}

.oc_desc .h_min_em5 {
	min-height: 5em;
	width: auto;
}

.oc_desc .h_min_em10 {
	min-height: 10em;
	width: auto;
}

.oc_desc .h_min_em20 {
	min-height: 20em;
	width: auto;
}

/* PC▽ */
@media only screen and (min-width: 768px) {
	.oc_desc .w_p10_30 {
		width: 10%;
		height: auto;
	}

	.oc_desc .w_p20_30,
	.oc_desc .w_p20_40,
	.oc_desc .w_p20_50 {
		width: 20%;
		height: auto;
	}

	.oc_desc .w_p30_40,
	.oc_desc .w_p30_50,
	.oc_desc .w_p30_100 {
		width: 30%;
		height: auto;
	}

	.oc_desc .w_p40_100 {
		width: 40%;
		height: auto;
	}

	.oc_desc .w_p50_100 {
		width: 50%;
		height: auto;
	}

	.oc_desc .w_p60_100 {
		width: 60%;
		height: auto;
	}

	.oc_desc .w_p70_100 {
		width: 70%;
		height: auto;
	}
}

/*△*/




/* underline*/
.oc_desc .f_underline,
.oc_desc a.f_underline,
.oc_desc a.a_under {
	text-decoration: underline;
}

/* font*/
/* weight*/
.oc_desc .f_bold {
	font-weight: bold;
}

.oc_desc .f_normal {
	font-weight: bold;
}

/*color*/
.oc_desc .f_white {
	color: white;
}

.oc_desc .f_black {
	color: black;
}

.oc_desc .f_dark {
	color: #4d3d32;
}

.oc_desc .f_red {
	color: #d31200;
}

.oc_desc .f_orange {
	color: #f5ac32;
}

.oc_desc .f_yellow {
	color: #fff100;
}

.oc_desc .f_glay,
.oc_desc .f_gray {
	color: #888888;
}


/*size*/
.oc_desc .f_5l {
	font-size: 24px;
}

.oc_desc .f_4l {
	font-size: 22px;
}

.oc_desc .f_3l {
	font-size: 20px;
}

.oc_desc .f_2l {
	font-size: 18px;
}

.oc_desc .f_l {
	font-size: 16px;
}

.oc_desc .f_small {
	font-size: 80%;
}

.oc_desc .f_p100 {
	font-size: 100%;
}

.oc_desc .f_p110 {
	font-size: 110%;
}

.oc_desc .f_p120 {
	font-size: 120%;
}

.oc_desc .f_p130 {
	font-size: 130%;
}

.oc_desc .f_p200 {
	font-size: 200%;
}

/* PC▽ */
@media only screen and (min-width: 768px) {
	.oc_desc .f_5l {
		font-size: 28px;
	}

	.oc_desc .f_4l {
		font-size: 24px;
	}
}

/*△*/


/*line-height*/
.oc_desc .f_lh130 {
	line-height: 130%;
}

.oc_desc .f_lh150 {
	line-height: 150%;
}

.oc_desc .f_lh180 {
	line-height: 180%;
}

.oc_desc .f_lh200 {
	line-height: 200%;
}

/*font-family*/
.oc_desc .f_mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Noto Serif JP", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transform: rotate(0.03deg);
}

.oc_desc .f_gothic {
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}


/* list */
/* (UL)※つき */
.oc_desc .list_kome {
	list-style: none;
	padding-left: 2em;
}

.oc_desc .list_kome li {
	position: relative;
}

.oc_desc .list_kome li::before {
	content: "※";
	position: absolute;
	left: -1em;
}

/* (DL)Q&A */

.oc_desc .list_dl_qa dt,
.oc_desc .list_dl_qa dd {
	text-indent: -2.5em;
	padding: 10px;
	padding-left: 2.5em;
}

.oc_desc .list_dl_qa dt {
	margin-bottom: 15px;
}

.oc_desc .list_dl_qa dt:nth-of-type(n+2) {
	margin-top: 1.5em;
	border-top: 1px dashed #ccc;
}


.oc_desc .list_dl_qa dt:first-letter,
.oc_desc .list_dl_qa dd:first-letter {
	font-size: 24px;
	margin-right: 10px;
}

.oc_desc .list_dl_qa dt:first-letter {
	color: #0F78E1;
}

.oc_desc .list_dl_qa dd:first-letter {
	color: #ff6767;
}

.oc_desc .list_dl_qa dd b {
	color: #d31200;
	text-decoration: underline;
}

/* (DL)Q&A2 */
.oc_desc .list_dl_qa2 {
	padding: 5px;
}

.oc_desc .list_dl_qa2 dt,
.oc_desc .list_dl_qa2 dd {
	position: relative;
	padding: 5px;
	padding-left: 30px;
}

.oc_desc .list_dl_qa2 dt:nth-of-type(n+2) {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed #ccc;
}

.oc_desc .list_dl_qa2 dt:before,
.oc_desc .list_dl_qa2 dd:before {
	position: absolute;
	left: 3px;
	display: block;
	font-size: 24px;
}

.oc_desc .list_dl_qa2 dt:before {
	content: "Q";
	color: #0F78E1;
}

.oc_desc .list_dl_qa2 dd:before {
	content: "A";
	color: #ff6767;
}

.oc_desc .list_dl_qa2 dd b {
	color: #d31200;
	text-decoration: underline;
}





/* position */
.oc_desc .t_center {
	text-align: center;
}

.oc_desc img.t_center {
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

.oc_desc .t_left {
	text-align: left;
}

.oc_desc .t_right {
	text-align: right;
}

.oc_desc .v_top {
	vertical-align: top;
}

.oc_desc .v_middle {
	vertical-align: middle;
}

.oc_desc .v_btm {
	vertical-align: bottom;
}


/* position*/
.oc_desc .po_z_xs {
	z-index: 1;
}

.oc_desc .po_z_sm {
	z-index: 5;
}

.oc_desc .po_z_md {
	z-index: 10;
}

.oc_desc .po_z_lg {
	z-index: 15;
}

.oc_desc .po_z_xl {
	z-index: 20;
}

.oc_desc .po_z_most {
	z-index: 9999;
}

/* display*/
.oc_desc .disp_inline {
	display: inline;
}

.oc_desc .disp_block {
	display: block;
}

.oc_desc .disp_inline-block {
	display: inline-block;
}



/* float */
.oc_desc .flol {
	float: left;
}

.oc_desc .flor {
	float: right;
}

.oc_desc img.flol,
.oc_desc img.flor {
	margin: 5px 10px;
}

.oc_desc img.flol {
	float: left;
	margin-right: 15px;
}

.oc_desc img.flor {
	float: right;
	margin-left: 15px;
}

/* sp▽ */
@media only screen and (max-width: 768px) {

	.oc_desc .w_p30_100.flol,
	.oc_desc .w_p40_100.flol,
	.oc_desc .w_p50_100.flol,
	.oc_desc .w_p70_100.flol,
	.oc_desc .w_p30_100.flor,
	.oc_desc .w_p40_100.flor,
	.oc_desc .w_p50_100.flor,
	.oc_desc .w_p70_100.flor {
		float: unset;
		margin-left: unset;
		margin-right: unset;
	}
}

/*△*/



/*other_utility*/

/*出し分け*/
/* sp▽ */
@media only screen and (max-width: 768px) {
	.u_show_on_pc {
		display: none;
	}
}

/*△*/
/* PC▽ */
@media only screen and (min-width: 768px) {
	.u_show_on_sp {
		display: none;
	}
}

/*△*/


/*▲を右に向けたい等*/
.oc_desc .t_rotate_90deg {
	display: inline-block;
	transform: rotate(90deg);
}





/*section_title*************************/
.oc_desc .section_title {
	margin-bottom: 0px;
	padding: 10px;
	color: #eee;
	background: #040000;
	line-height: 2rem;
	margin-bottom: 20px;
}

.oc_desc .header_logo {
width: 100%;
	margin-bottom: 20px;
}

.oc_desc .header_logo_img{
	width: 40%;
}


.oc_desc .section_title b:not([class]) {
	color: #fff100;
}

/* sp▽ */
@media only screen and (max-width: 768px) {
.oc_desc .header_logo_img{
	width: 70%;
}
}




/*▲▲汎用********************************************************/





/* fade-up js  *******/

.oc_desc .fade-up {
	opacity: 0;
	transform: translateY(30px);
	transition: all 2s ease;
}

.oc_desc .fade-up.active {
	opacity: 1;
	transform: translateY(0);
}




/**********************************/
/*main visual**********************/


.oc_desc .main_visual{
	background: url(../indeximg/top_bnr_pc.jpg) no-repeat top center;
	background-size: cover;
	  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: calc(-50vw + 0.5px); 
   height: 600px;
}


/* sp▽ */
@media only screen and (max-width: 768px) {
.oc_desc .main_visual{
	background: url(../indeximg/top_bnr_sp.jpg) no-repeat top center;
	background-size: cover;
	  width: 100vw;
  position: relative;
  left: 50%;
   height: 650px;
}
}




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

/**********************************/
/*FDlineup*************************/





.oc_desc .heading_red {
	border-bottom: 2px solid #9b1a1a;
	color: #9b1a1a;
	font-weight: bold;
	display: flex;
	padding-left: 4rem;
	position: relative;
}

.oc_desc .heading_red ::before {
	content: "";
	position: absolute;
	background: url(https://wine.old-vintage.com/img/lineup/red_icon.png) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 55px;
	left: 0.1rem;
	bottom: -0.3rem;
}


.oc_desc .heading_white {
	border-bottom: 2px solid #d8a664;
	color: #d8a664;
	font-weight: bold;
	display: flex;
	padding-left: 4rem;
	position: relative;
}

.oc_desc .heading_white ::before {
	content: "";
	position: absolute;
	background: url(https://wine.old-vintage.com/img/lineup/yellow_icon.png) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 55px;
	left: 0.1rem;
	bottom: -0.3rem;
}


.oc_desc .heading_awa {
	border-bottom: 2px solid #50a184;
	color: #50a184;
	font-weight: bold;
	display: flex;
	padding-left: 3.5rem;
	position: relative;
}

.oc_desc .heading_awa ::before {
	content: "";
	position: absolute;
	background: url(https://wine.old-vintage.com/img/lineup/green_icon.png) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 55px;
	left: 0.1rem;
	bottom: -0.3rem;
}



.oc_desc .heading_food {
	border-bottom: 2px solid #6d4177;
	color: #6d4177;
	font-weight: bold;
	display: flex;
	padding-left: 4rem;
	position: relative;
}

.oc_desc .heading_food ::before {
	content: "";
	position: absolute;
	background: url(https://wine.old-vintage.com/img/lineup/purple_icon.png) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 55px;
	left: 0.1rem;
	bottom: -0.3rem;
}





.oc_desc .heading .heading__span {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.8rem;
	margin-left: 0;
	margin-right: 1rem;
	text-transform: uppercase;
}


/* sp▽ */
@media only screen and (max-width: 768px) {
	.oc_desc .heading .heading__span {
		margin: 10px 0 0;
		order: 1;
	}

	.oc_desc .heading {
		flex-direction: column;
		font-size: 1.2rem;
		line-height: 1.5;
	}
}





.oc_desc .FDlineup .lineup_box {
	padding: 10px;
	background: #ebebeb;
}

.oc_desc .FDlineup .lineup_box a {
	display: block;
	color: inherit;
}

.oc_desc .FDlineup .lineup_box a p {
	display: block;
}

/* sp▽ */
@media only screen and (max-width: 768px) {
	.oc_desc .FDlineup .lineup_box a {
		margin-bottom: 30px;
	}

	.oc_desc .FDlineup .lineup_box a p {
		margin-top: 2px;
	}
}

/*△*/

/* PC▽ */
@media only screen and (min-width: 768px) {
	.oc_desc .FDlineup .lineup_box {
		padding: 20px;
	}

	.oc_desc .FDlineup .lineup_box a p {
		display: block;
		margin-top: unset;
		font-size: 80%;
	}
}

/*△*/





/**********************************/
/*hanpu ***************************/



.oc_desc .hanpu_box {
	padding: 15px;
	background: #f9f6ec;
}


.oc_desc .heading_hanpu {
	border-bottom: 2px solid #c87914;
	color: #c87914;
	font-weight: bold;
	display: flex;
	padding-left: 4rem;
	position: relative;
}

.oc_desc .heading_hanpu ::before {
	content: "";
	position: absolute;
	background: url(https://wine.old-vintage.com/img/lineup/cheers.png) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 40px;
	left: 0.1rem;
	bottom: -0.3rem;
}


.oc_desc .heading_hanpu .heading_hanpu_span {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5rem;
	margin-left: 0;
	margin-right: 1rem;
	text-transform: uppercase;
}




.oc_desc .point>div h5 {
	background: #b01c1c;
	color: white;
	padding: 0;
	font-size: 18px;
	line-height: 50px;
	font-weight: bold;
	text-align: left;
	letter-spacing: -1px;
	margin: 0;
}

.oc_desc .point>div h5 span {
	font-style: italic;
	padding: 0 20px;
	background: #760000;
	display: inline-block;
	text-align: left;
	margin-right: 2%;
}

.oc_desc .point>div .text_wrap {
	background: white;
	display: table;
	width: 100%;
	padding: 4% 0;
}



.oc_desc .point>div .text_wrap p {
	display: table-cell;
	vertical-align: middle;
	font-weight: bold;
	color: #9e0202;
	font-size: 18px;
	text-align: center;
	line-height: 25px;
	letter-spacing: -1px;
}


@media only screen and (max-width: 480px) {
	.oc_desc .point>div h5 {
		font-size: 0.9rem;
	}

	.oc_desc .point>div h5 span {
		font-style: italic;
		padding: 0 10px;
		background: #760000;
		display: inline-block;
		text-align: left;
		margin-right: 2%;
	}

	.oc_desc .point>div .text_wrap p {
		font-size: 1rem;
	}
}




/**********************************/
/*foot_info*************************/



.oc_desc #footer {
	margin: 80px auto 70px;
	text-align: center;

}

.oc_desc #footer .foot_info {
	padding: 20px 15px;
	color: #fff;
	font-size: 13px;
	line-height: 1.69em;
	background: #333;
	  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  margin-bottom: 30px;

}


.oc_desc #footer .foot_info .inner {
	width: 100%;
	margin: 0 auto;
}

.oc_desc #footer .lead {
    line-height: 1.3em;
    font-weight: normal;
}

.oc_desc #footer .info_tel {
    position: relative;
    margin: 0 auto 30px;
    border-bottom: 1px solid #fff;
    width: 45%;
}

.oc_desc #footer .info_tel .area_img_pc {
    position: absolute;
    bottom: 0;
    left: 30px;
	width: 13%;

}

.oc_desc #footer .info_tel .area_txt {
		padding: 10px 0px;
		letter-spacing: 0.2em;
	}

	
.oc_desc #footer .time {
	font-size: 1rem;
	}




.oc_desc #footer .info_tel .area_txt .number {
	font-size: 1.8rem;
	line-height: 10px;
	font-weight: bold;
}




.oc_desc #footer .company .logo {
	margin: 5px auto;
	display: inline-block;
	height: auto;
	vertical-align: top;
}

.oc_desc #footer .company .donate {
    font-size: 84.61538%;
    line-height: 1.36em;
    color: #ccc;
}





/* sp▽ */
@media only screen and (max-width: 768px) {
.oc_desc #footer .lead {
	line-height: 1.2;
	font-size: 1em;
    font-weight: normal;
	margin-bottom: 15px;
}

.oc_desc #footer .info_tel {
display: flex;
justify-content: center;
    margin-bottom: 16px;
    width: 100%;
    border-bottom: 1px solid #fff;

}


.oc_desc #footer .info_tel .area_img_pc{
   width: 75px;


}

.oc_desc #footer .info_tel .area_txt {
    min-height: 72px;
	letter-spacing: 0;
	padding-left: 70px;
	}


	.oc_desc #footer .info_tel .area_txt .number {
    margin-bottom: 8px;
	font-size: 18px;
    line-height: 1rem;
    font-weight: bold;
}

.oc_desc #footer .time {
	font-size: 10px;
	}



.oc_desc #footer .company .logo {
margin-bottom: 5px;
    width: 100%;
    height: auto;
    vertical-align: top;
}

.oc_desc #footer .company .donate {
    font-size: 80%;
    line-height: 1.36em;
    color: #ccc;
	text-align: left;
}

.oc_desc #footer .address {
    font-size: 70%;
}



}
/*△*/




/*トップへ戻るボタン*************************/
.scroll-to-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	width: 80px;
	height: 80px;
	background-color: #000;
	color: #fff;
	border: none;
	border-radius: 50%;
	font-size: 16px;
	line-height: 1.1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transition: all 1.5s ease;
	z-index: 1000;
}


.scroll-to-top.show {
	opacity: 0.5;
	pointer-events: auto;
}


/* sp▽ */
@media only screen and (max-width: 640px) {
	.scroll-to-top {
		position: fixed;
		bottom: 5px;
		right: 10px;
		width: 50px;
		height: 50px;
		background-color: #000;
		color: #fff;
		border: none;
		border-radius: 50%;
		font-size: 10px;
		line-height: 0.8rem;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		opacity: 0;
		pointer-events: none;
		transition: all 1.5s ease;
		z-index: 1000;
	}
}



/*△*/