@charset "utf-8";

/*------------------------------------------------
	共通
------------------------------------------------*/

::-webkit-input-placeholder {
    color:    #CCC;
}
:-moz-placeholder {
    color:    #CCC;
}

.page_top
{
	position		: fixed;
	right			: 20px;
	bottom			: 10px;
}
.ac_point
{
	padding-top 	: 149px;
	margin-top 		: -149px;
}
.countdown_area
{
	width 			: 100%;
	position 		: relative;
}
.countdown_area:before
{
	content 		: "";
	display 		: block;
	background 		: url("../images/common/base/bg_pattern03.gif") 0 0 repeat;
	height 			: 60%;
	width 			: 100%;
	position 		: absolute;
	left 			: 0px;
	bottom 			: 0px;
	top 			: 0px;
	margin 			: auto 0; 
}
.countdown_area .countdown_box
{
	width 				: 70%;
	margin 				: 0 auto; 
	text-align 			: center;
	border-radius 	: 3px;
	background 		: #FFF;
	border 			: 5px #CCC solid;
	position: relative;
	z-index 			: 3; 
}
.countdown_area .countdown_box p
{
	margin-bottom 		: 0px;
	padding 			: 1rem 2rem;
	background 			: #f7f7f7;
	font-weight 		: bold;
}
.countdown_area .countdown
{
	display: flex;
	justify-content: center;
	align-items: center;
	padding 			: 1rem; 
}
.countdown_area .countdown .yycountdown-box
{
	font-size 			: 2.5rem;
	color 				: #d22b15;
	font-weight 		: 600;
}
.fix_area
{
	width 				: 100%;
	position 			: static;
	visibility 			: hidden;
	opacity 			: 0; 
	bottom 				: 0px;
	left 				: 0px;
	background 			: #333;
	z-index 			: 1000;
	transition: all 0.5s ease;
	box-shadow:rgba(0, 0, 0, 0.0470588) 0px 0px 1px 3px;
	border-top 	 		: 1px #666 solid; 

}

.fix_point .fix_area
{
	position 			: fixed;
	visibility 			: visible;
	opacity 			: 1;
}



.fix_area .fix_area_inner
{
	padding 			: 1rem; 
}

.fix_area .fix_area_inner .fix_form
{
	display 			: flex;
	max-width 			: 1000px;
	margin 				: 0 auto;
	gap 				: 1rem;
}
.fix_area .contact_form
{
	background: none;
}
.fix_area .fix_area_inner .fix_form .form_mail
{
	flex 				: 1 1 auto; 
}


#main .fix_area .contact_form .cta_btn,
#tinymce .fix_area .contact_form .cta_btn
{
	padding 				: 1rem 5rem 1rem 2rem;
	background-size 		: 20px auto,auto auto,auto auto;
	min-width 				: auto;
	width 					: fit-content;
	flex 					: 0 0 auto;
}
#main .fix_area .cta_btn,
#tinymce .fix_area .cta_btn
{
	padding 			: 1.8rem 7rem 1.8rem 3rem;
	background-size 			: 20px auto,auto auto,auto auto;
	font-size 					: 1.6rem; 
	line-height 				: 1.3; 
}


/*▼form--------------------------------------------------------------*/
/*form:inputとtextareaは#contact_form経由で使う*/

.contact_form input.input_area,
.contact_form textarea.input_area,
.contact_form select{
    font-size:1.6rem;
    border: 1px solid #B9C9CE;
    padding: 1.5rem 2rem;
}

input[type="checkbox"] {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
    margin-right:0.3em;

}
input[type="radio"] {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
    margin-right:0.3em;

}


.form_name
{
	width			: 15em;
}
.form_tel
{
	width			: 15em;
}
.form_mail
{
	width			: 100%;
}
.form_add
{
	width			: 30em;
}
.form_team
{
	width			: 20em;
}
.form_other
{
	width			: 100%;
	height			: 10em;
}
.form_name_s
{
	width			: 10em;
}
.form_tel_s
{
	width			: 15em;
}
.form_mail_s
{
	width			: 16em;
}
.form_add_s
{
	width			: 16em;
}
.form_zip
{
	width			: 4em;
}


.req,
.any
{
	display 		: block;
	width 			: 100%;
	padding-right 	: 4em;
	box-sizing 		: border-box;
	position 		: relative;
}
.req:before,
.any:before
{	
	content: "";
	color 				: #FFF;
	padding 			: 3px 10px;
	position 			: absolute;
	right 				: 0px;
	top 				: 0px;
	border-radius 		: 3px; 
}
.req:before
{
	content: "必須";
	background 			: #333;
}
.any:before
{
	content: "任意";
	background 			: #CCC;
}

.check_input_set
{
	display 			: flex;
	flex-flow: row wrap;
	gap:1rem;
	margin-bottom 		: 2rem; 
}
.check_input_set label
{
	flex 				: 0 0 auto;
	background 			: #f7f7f7;
	border 				: 1px #EEE solid; 
	padding 			: 1rem; 
	display 			: flex;
	gap 				: .5rem;
	max-width 			: 100%; 
}




/*▼table--------------------------------------------------------------*/
.layout_table
{
	width			: 100%;
	border-collapse	: collapse;
	padding			: 0px;
	margin			: 0px;
}
.layout_table td,
.layout_table th
{
		padding:0;
}

.data_box table
{

	text-align      : left;
	width           : 100%;
	margin-left     : auto;
	margin-right    : auto;
}
.data_box th
{
	border-bottom	: 1px solid #ccc;
	border-right	: 1px solid #ccc;
	padding			: 1.5rem 2rem;
	background		: #f0f0f0;
	font-weight     : normal;
}
.data_box td
{
	border-bottom	: 1px solid #ccc;
	border-right	: 1px solid #ccc;
	padding			: 1.5rem 2rem;
	background		: #fff;
}

.data_box .form_table th,
.data_box .form_table td
{
	border-right 		: none;
	background: none;
	border-bottom: none;
	padding 			: .8rem 2rem; 
}
.data_box .form_table th
{
	width 				: 35%; 
}

.data_box .des_table td
{
	border-right 			: none; 
}
.data_box .des_table th
{
	border-right 			: none;
	background: url("../images/common/base/bg_pattern07.gif") 0 0 repeat;
	border-right 			: 1px #CCC dotted; 
}



.data_box .table_fit
{
	width: auto;
	margin-left: 0px;
}



.contact_form
{
	background 			: #f7f7f7;
	border-radius 		: 3px;
	overflow: hidden;
	max-width 			: 900px;
	margin-left 		: auto;
	margin-right 		: auto;
	text-align 			: left;
}
.contact_form .contact_form_title
{
	font-size 		: 1.8rem;
	font-weight 	: 600;
	background 		: #333;
	padding 		: 1.5rem 2rem;
	color 			: #FFF;
	margin 			: 0px; 
}
.contact_form .contact_form_inner
{
	padding 		: 2rem; 
}



.contact_form .hosoku_list
{
	font-size 			: 1.2rem;
	margin-top 			: 2rem; 
}
.contact_form .form_box
{
	margin-bottom 		: 2rem;
}
.contact_form .data_box .form_table th,
.contact_form .data_box .form_table td
{
	padding 			: 0px; 
}
.contact_form .data_box .form_table th
{
	text-align: left;
	width 			: 30%;
	font-size 		: 1.8rem; 
}
.contact_form.subm_form
{
	padding 			: 2rem;
	background 			: #FFF;
	border 				: 1px #CCC solid;
	border-radius 		: 15px; 
}

.contact_form.subm_form .subm_table th
{
	width 					: 25%; 
}

.contact_form.subm_form .subm_table th,
.contact_form.subm_form .subm_table td
{
	padding 			: 1.5rem; 
}
.contact_form.subm_form .subm_table
{
	margin-bottom 			: 2rem; 
}

.contact_form.subm_form .subm_table tr:nth-child(odd) th,
.contact_form.subm_form .subm_table tr:nth-child(odd) td
{
	background 			: #f7f7f7!important; 
}
.contact_form .submit_btn
{
    background-color 	: transparent;
    border 				: none;
    cursor 				: pointer;
    outline 			: none;
    padding 			: 0;
    appearance 			: none;
	display 			: block;
	width 				: fit-content;
	max-width 			: 690px;
	min-width 			: 350px; 
	margin-left 		: auto;
	margin-right 		: auto;
	text-decoration 	: none;
	color 				: #FFF;
	padding 			: 2rem 8rem 2rem 4rem;
	background 			: #222 url("../images/common/icon/btn_arr.png") right 2rem top 50% no-repeat;
	border-radius 		: 3px;
	font-size 			: 1.8rem;
	font-weight 		: 600; 
}




/*▼見出しタイトル--------------------------------------------------------------*/

#main .catch_title,
#tinymce .catch_title
{
	font-size 			: 2.5rem;
	font-weight 		: 500;
	line-height 		: 1.6;
	margin-bottom 		: 2.5rem; 
}
#main .arrow_text,
#tinymce .arrow_text
{
	background 			: #f7f7f7;
	padding 			: 1rem 2rem;
	margin 				: 0 -2rem;
	align-items 		: center;
	font-size 			: 1.8rem;
	display 			: flex;
	font-weight 		: 500;
	margin-bottom 		: 2.5rem; 
}
#main .arrow_text .icon,
#tinymce .arrow_text .icon
{
	margin-right 		: 1rem; 
}
#main .cta_btn,
#colorbox .cta_btn,
#tinymce .cta_btn
{
    background-color 	: transparent;
    border 				: none;
    cursor 				: pointer;
    outline 			: none;
    padding 			: 0;
    appearance 			: none;
	display 			: block;
	width 				: fit-content;
	max-width 			: 750px;
	min-width 			: 350px; 
	margin-left 		: auto;
	margin-right 		: auto;
	text-decoration 	: none;
	color 				: #FFF;
	padding 			: 2rem 8rem 2rem 4rem;
	background 			: #ce0063 url("../images/common/icon/btn_arr.png") right 1.5rem top 50% / 30px auto no-repeat;
	border-radius 		: 50px;
	font-size 			: 2rem;
	font-weight 		: 600; 
}

#main .cta_btn i,
#colorbox .cta_btn i,
#tinymce .cta_btn i
{
		margin-left 			: .5em;
}


#main .cta_btn:hover,
#colorbox .cta_btn:hover,
#tinymce .cta_btn:hover
{
	opacity 			: .8; 
}

.sub_title01
{
	margin 				: 0px;
	padding 			: 0px; 
	border-top 			: #eeeeee solid 3px;
	position 			: relative;
	padding 			: 1.5rem 2rem;
	margin-left 		: -2rem;
	margin-right 		: -2rem; 
	margin-bottom 		: 2rem;
	position 			: relative;
	font-size 			: 1.8rem; 
	border-bottom 		: 1px #EEE solid; 
	display 			: flex;
	align-items 		: center;
	margin-bottom 		: 2.5rem; 
}
.sub_title01:after
{
	content 			: "";
	display 			: block;
	width 				: 25%;
	height 				: 3px;
	background 			: #222;
	position 			: absolute;
	top 				: -3px;
	left 				: 0px;
}
.sub_title01:before
{
	content 			: "";
	display 			: inline-block;
	width 				: 8px;
	height 				: 8px;
	border-radius 		: 50%;
	border 				: 7px solid #222;
	margin-right 		: .5rem;
	vertical-align: middle;
	flex 				: 0 0 8px; 
}

.section_title_large
{
	font-size: clamp(2.4rem, 5vw, 3rem);
	border-top 				: 5px solid #333;
	border-bottom 			: 1px solid #CCC;
	padding 				: 2rem 1rem;
	text-align 				: center;
	background 				: #f7f7f7 url("../images/common/base/bg_pattern02.gif") top -15px center repeat-x; 
	margin-left 		: -2rem;
	margin-right 		: -2rem;
	margin-bottom 		: 3rem; 
}


.section_title
{
	margin 				: 0px;
	padding 			: 0px;
	margin-bottom 		: 3rem; 
	background 			: #333;
	font-weight 		: bold;
	padding 			: 1.6rem 2.5rem 1.6rem;
	position 			: relative;
	margin-left 		: -2rem;
	margin-right 		: -2rem;
	font-size: clamp(2rem, 4vw, 2.6rem);
	color 				: #FFF;
	line-height 		: 1.3;
	overflow 			: hidden;
	border-top 			: 5px solid #ce0063;
	font-weight 		: 300;
}

.section_title:before
{
	content 			: "Section Title";
	display 			: flex;
	justify-content: center;
	align-items: center;
	background: url("../images/common/base/bg_pattern03.gif") 0 0 repeat;
	height 				: 100%;
	width 				: 50%;
	color 				: #333;
	mix-blend-mode: color-burn;
	opacity 			: .5; 
	font-size: clamp(5rem, 5vw, 3rem);
	position: absolute;
	right 			: -.3em;
	top 			: 0;
	bottom 			: 0;
	margin 			: auto 0;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: italic;
  line-height: 1.0;
}
.section_title .nb_icon
{
	line-height 	: 1.0;
	display: inline-block;
	vertical-align: middle;
}
.section_title .nb_icon span
{
	display: inline-block;
	vertical-align: middle;
	margin-right 	: .5rem; 
	
}


.section_title span.inner
{
	position: relative;
	z-index 		: 2;
}
#main h3,
#tinymce h3,
#main .line_title,
#tinymce .line_title
{
	margin: 0px;
	padding: 0px;
	font-size: clamp(2rem, 3vw, 2.6rem);
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 2.5rem;
	border-left 		: 5px solid #ce0063;
	padding 			: .5rem 1.5rem;
	margin-bottom 		: 2.5rem; 
}
#main h4,
#tinymce h4
{
background: #f7f7f7;
    padding: 1.5rem 2rem 1.5rem 4.5rem;
    border-top: 2px solid #ce0063;
    position: relative;
}
#main h4:before,
#tinymce h4:before
{
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    border: 6px solid #ce0063;
    position: absolute;
    left: 1.5rem;
    top: 2rem;
    border-radius: 50%;
}




#main .gift_list,
#main .gift_list ul,
#main .gift_list ul li,
#tinymce .gift_list,
#tinymce .gift_list ul,
#tinymce .gift_list ul li
{
	margin 				: 0px;
	padding 			: 0px;
	list-style 			: none;
}
#main .gift_list ul,
#tinymce .gift_list ul
{
	display 			: flex;
	flex-flow 			: row wrap;
}
#main .gift_list ul li,
#tinymce .gift_list ul li
{
	display 			: flex;
	flex 				: 1 1 50%;
	font-weight 		: 500;
	line-height 		: 1.3;
	margin-bottom 		: 1rem; 
}
#main .gift_list ul li i,
#tinymce .gift_list ul li i
{
	color 			  	: #222;
	font-size 			: 1.8rem;
	margin-right 		: .5rem;

}
#main .catch_ft_img,
#tinymce .catch_ft_img
{
	margin		: 3rem -2rem;
}

#main .gift_set,
#tinymce .gift_set
{
	display 	: flex;
	flex-flow: row wrap;
	justify-content 	: space-between;
	gap 				: 2rem;
}


#main .gift_item,
#tinymce .gift_item
{
	background 			: #f7f7f7;
	border-radius 		: 3px;
	overflow 			: hidden;
	flex: 1 1 48%;
	min-width 			: 300px;
}
#main .gift_item .sub_title,
#tinymce .gift_item .sub_title
{
	font-size 			: 1.8rem;
	font-weight: bold;
	border-bottom 		: 1px #CCC solid;
	padding-bottom 		: 1rem;
	margin-bottom 		: 1rem; 
}
#main .gift_item .sub_title i,
#tinymce .gift_item .sub_title i
{
	margin-right 		: .3rem;
	color 				: #f19800;
}

#main .gift_item .gift_item_title,
#tinymce .gift_item .gift_item_title
{
	background 			: #111;
	color 				: #FFF;
	padding 			: 2rem 2rem;
	text-align 			: left;
	display 			: flex;
	flex-flow 			: row nowrap;
	font-weight 		: bold;
	line-height 		: 1.3;
	margin 				: 0px; 
}
#main .gift_item .gift_item_title .num,
#tinymce .gift_item .gift_item_title .num
{
    background-image: linear-gradient(135deg, #a6cefc 4%, #fe9dd2 43%, #d0376b 100%);
	flex 			 	: 0 0 auto;
	padding 			: .3rem 1rem;
	display 			: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	color: #000;
	font-weight: 900;
	font-style: normal;
}
#main .gift_item .gift_item_title .num:before,
#tinymce .gift_item .gift_item_title .num:before
{
	content 			: "";
	width 				: 0px;
	height 				: 0px;
		border-left: 8px solid transparent;
 	border-right: 8px solid transparent;
	border-top: 8px solid #f072b7;
	left 				: 0px;
	right 				: 0px;
	bottom 				: -8px;
	margin 				: 0 auto;
	position 			: absolute;

}

#main .gift_item .gift_item_title .text,
#tinymce .gift_item .gift_item_title .text
{
	margin-left 		: 1rem; 
}
#main .gift_item .gift_item_inner,
#tinymce .gift_item .gift_item_inner
{
	padding 			: 2rem;
}
#main .gift_item .gift_item_mid,
#tinymce .gift_item .gift_item_mid
{
	display 			: flex;
	flex-flow 			: row nowrap;
	gap 				: 2rem;
}
#main .gift_item .gift_item_mid .thum,
#tinymce .gift_item .gift_item_mid .thum
{
	flex 				: 0 0 47%;
}
#main .gift_item .gift_item_mid_col,
#tinymce .gift_item .gift_item_mid_col
{
	display 			: flex;
	flex-flow 			: column nowrap;
	gap 				: 2rem;
}
#main .gift_item .gift_item_mid .thum,
#main .gift_item .gift_item_mid_col .thum,
#tinymce .gift_item .gift_item_mid .thum,
#tinymce .gift_item .gift_item_mid_col .thum
{
	background 			: #FFF url("../images/common/base/gift_bg.jpg") 0 0 /cover no-repeat;
	display 			: flex;
	justify-content 	: center;
	align-items 		: center;
	padding 			: 1.5rem;
	border 				: 1px #CCC solid; 
}

#main .gift_item .gift_item_bot,
#tinymce .gift_item .gift_item_bot
{
	margin-top 			: 2rem; 
}
#main .gift_item .btn_Red,
#tinymce .gift_item .btn_Red
{
	display 			: flex;
	flex-flow 			: row nowrap;
	gap 				: 1rem;
	justify-content 	: center;
}
#main .gift_item .btn_Red i.fa-download,
#tinymce .gift_item .btn_Red i.fa-download
{
	font-size 			: 2rem; 
}
#main .line_entry_btn,
#tinymce .line_entry_btn
{
	font-size 			 	: 2rem;
	font-weight 			: bold;
	display 				: flex;
	justify-content 		: center;
	align-items 			: center;
	gap 					: 1rem;
	max-width 				: 500px;
	margin-left 			: auto;
	margin-right 			: auto; 
}
#main .line_entry_btn i.fa-line,
#tinymce .line_entry_btn i.fa-line
{
	font-size 			: 4rem;
}

/*動画特典*/

.page_title
{
	background 				: url("../images/common/base/page_title.jpg") top center/cover no-repeat;
	width 					: 100%;
	margin-bottom 			: min(7vw,4rem); 
	font-weight 			: bold;
	overflow 				: hidden;
	position 				: relative;

}

.page_title h1
{
	padding 				: 0px;
	margin 					: 0px;
	color 					: #FFF;
	font-size 				: clamp(2.4rem, 5vw, 3rem);
	padding 				: clamp(2.8rem, 3vw, 5rem) 0;
	max-width 				: 1000px;
	width 					: 90%;
	margin 					: 0 auto;
	text-align: center;
}

.lecture_box
{
	background 				: #333;
	border-radius 			: 3px;
	overflow 				: hidden;
	border-top 				: 4px solid #ce0063;
}
.lecture_box .mov_box
{
	margin-bottom 			: 2rem; 
}
.lecture_box .lecture_title
{
	font-size 				: clamp(1.8rem, 1.8vw, 2rem);
	border-bottom 			: 1px #444 solid;
	background 				: url("../images/common/base/bg_pattern09.gif") 0 0 repeat;
	color 				 	: #FFF; 
	padding 				: 1.5rem 2rem; 
	margin 					: 0px;
	text-align 				: center;
	font-weight 			: bold;
	
}
.lecture_box .lecture_box_inner
{
	padding 				: 2rem; 
}
.lecture_summary
{
	background 				: #f7f7f7;
	border-radius 			: 3px;
	padding 				: 1.5rem;
	border 					: 1px solid #444; 
}
.lecture_summary h2
{
	margin 					: 0px;
	margin-bottom 			: 1.5rem; 
	background 				: #333;
	color 					: #FFF;
	border-radius 			: 3px;
	padding 				: 1rem 1.5rem;
	font-size 				: 1.8rem;
	line-height 			: 1.3; 
}
.lecture_summary h2:before
{
	width 					: 5px;
	height 					: 5px;
	border 					: 6px solid #FFFBD8;
	display 				: inline-block;
	margin-right 			: .5em;
	content 				: "";
	border-radius 			: 50%;
	vertical-align: middle;
}
.lecture_nav,
.lecture_nav li
{
	margin 					: 0px;
	padding 				: 0px;
	list-style 				: none;
}
.lecture_nav
{
	display: flex;
	flex-flow: row wrap;
	gap:1rem;
}
.lecture_nav li
{
	flex: 1 1 48%;
	width 			: 48%;
	line-height 	: 1.3;
	display: flex;
	min-width: 300px;
}
.lecture_nav li a
{
	flex-shrink: 1;
	width: 100%;
	display 				: flex;
	flex-flow 				: row nowrap;
	color 					: #333;
	align-items: center;
	background 				: #f7f7f7 url("../images/common/icon/btn_icon02_s_off.png") right 1rem top 50% no-repeat;
	border-radius: 3px;
	margin-bottom 			: 3px; 
	padding 				: 1rem 5rem 1rem 1rem;
	text-decoration: none;
	border 				: 1px #EEE solid;
	transition: all 0.5s ease;

}
.lecture_nav li a:hover
{
	background 				: #333 url("../images/common/icon/btn_icon02_s_off.png") right 1rem top 50% no-repeat;
	color 					: #FFF; 
}
.lecture_nav li a i
{
	font-size 				: 4rem;
	color 					: #ce0063;
	margin-right 			: .3em; 
}
.lecture_nav li a:hover i
{
	color:#FFF;
}
.info_title
{
	border 				 		: #EEE;
	border 						: 1px #CCC solid;
	padding 					:  1rem 2rem;
	margin 						: 0 -2rem; 
	position 					: relative;
	overflow: hidden;
	margin-bottom 				: 2.5rem; 
	border-left:1px #CCC solid !important;
}
.info_title:before
{
	content 					: "";
	display 					: inline-block;
	height 						: 10px;
	background 					: #ce0063;
	width 						: 2rem;
	margin-right 				: .5rem;
	vertical-align: middle;
}
.info_title:after
{
	content 					: "INFORMATION";
	font-size 					: clamp(2rem, 20vw, 8rem);
	line-height 				: 1em;
	height 						: 1em; 
	position 					: absolute;
	right 						: 0px;
	top 						: 0px;
	bottom 						: 0px;
	margin 						: auto 0; 
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: italic;
	opacity 					: .1;  
}
.info_title.comments:after
{
	content: "COMMENTS";
}


.fxmg_box
{
	background 				: #f7f7f7;
	padding 				: 2rem; 
}


.fxmg_box .fxmg_box_header
{
	margin-bottom 			: 2rem; 
}
.fxmg_box .fxmg_box_summary
{
	margin-bottom 			: 2rem; 
}

.fxmg_box img
{
	border 					: 1px #CCC solid; 
}
.fxmg_box .fxmg_box_inner
{
	display 				: flex;
	flex-flow 				: row nowrap;
	gap 					: 2rem;
	justify-content: space-between;
}
.fxmg_box .fxmg_box_inner .fxmg_item
{
	flex 					: 0 0 49%;
	width 					: 49%;
	font-size 				: 1.3rem; 
}
.fxmg_box .fxmg_box_inner.col01 .fxmg_item
{
	flex 					: 0 0 100%;
	width 					: 100%;
}

.fxmg_box .fxmg_box_inner .fxmg_item img
{
	margin-bottom 			: 2rem;
	display 				: block;
}
.fxmg_box .fxmg_box_inner .wh_box
{
	padding 				: 1rem; 
}


.mg_list dl,
.mg_list dt,
.mg_list dd
{
	margin 			: 0px;
	padding 		: 0px; 
	list-style 		: none;
}
.mg_list dl
{
	display: flex;
	flex-flow: row nowrap;
	border-bottom: 1px #CCC solid;
	padding 		: 1rem; 
}
.mg_list dl:nth-child(odd)
{
	background 		: #EEE; 
}
.mg_list dl:last-child
{
	border-bottom: none;
}

.mg_list dl dt
{
	white-space: nowrap;
	border-right:  1px #CCC solid;
	padding-right 	: 1rem;
	margin-right 	: 1rem;
	min-width 		: 5rem; 
	flex 			: 0 0 5rem;
	text-align: center;
}
.mg_list dd i
{
	color 			: #15b1d2;
	margin-right 	: .5rem;
	font-size 		: 1.2em; 
}

.cta_limit
{
	width 					: fit-content;
	margin 					: 0 auto;
	padding 				: .8rem 45px .5rem 45px;
	position 				: relative;
	text-align 				: center;
	line-height 			: 1.3;
	margin-bottom 			: 1.5rem; 
}
.cta_limit:before,
.cta_limit:after
{
	content 				: "";
	width 					: 30px;
	height 					: 47px;
	position 				: absolute;
	bottom 					: 0px;
}
.cta_limit:before
{
	left 					: 0px;
	background: url("../images/common/icon/fuki_line_left.png") 0 0 /cover no-repeat;
}
.cta_limit:after
{
	right 					: 0px;
	background: url("../images/common/icon/fuki_line_right.png") 0 0 /cover no-repeat;
}


.cta_limit > span
{
	display 				: block;
}
.cta_limit span.main_tex
{
	font-size 				: 2.5rem;
	font-weight 			: bold;
	color 					: #f19800; 
}
.cta_limit span.sub_tex
{
	font-size 				: 1.8rem; 
}
/*コメント*/
.comments-area {
    margin-top: 40px;

    border-top: 2px solid #ddd;
}

.comment-list {
    list-style: none;
    padding: 0;
}

.comment-list li {
    padding: 15px;
    border-bottom: 1px solid #eee;
}

.comment-list .comment-author {
    font-weight: bold;
}

.comment-list .comment-meta {
    font-size: 0.9em;
    color: #666;
}

.comment-respond {
    margin-top: 20px;
}

.comment-form {
    display: flex;
    flex-direction: column;
}

.comment-form input,
.comment-form textarea {
    width: 100%;
    padding: 10px;
    margin-top: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
	font-size:1.6rem;
}

.comment-form .form-submit {
    margin-top: 10px;
    text-align: right;
}

.comment-list {
    list-style: none;
    padding: 0;
}

.comment-list li {
    padding: 15px;
    border-bottom: 1px solid #eee;
}

.comment-pagination {
    text-align: center;
    margin-top: 20px;
}

.comment-pagination ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
}

.comment-pagination li {
    margin: 0 5px;
}

.comment-pagination a {
    display: block;
    padding: 8px 12px;
    background: #f4f4f4;
    border-radius: 5px;
    text-decoration: none;
}

.comment-pagination a:hover {
    background: #ddd;
}
ul.comment-list,
ul.comment-list li,
ul.comment-list li ul
{
	margin:0px;
	padding:0px;
	list-style:none;
}
ul.comment-list li ul.children li
{
	background:#f7f7f7;
	border-radius:3px;
	padding:2rem;
	border-bottom:none;
	margin-top:1.5rem;
}

ul.comment-list li ul.children li .comment-reply-link
{
	background:#FFF;
}


.comment-list> li.comment
{
	background:#FFF;
	border:1px #CCC solid;
	border-radius:3px;
	padding:2rem;
	margin-bottom:1.5rem;
}

.comment-respond
{
		background:#f7f7f7;
	padding:2rem;
	border-radius:3px;
	margin-bottom:5rem;
}
.comment-respond .comment-reply-title
{
	font-size:2rem;
	border-left:none;
	display:flex;
	align-items:center;
	gap:.8rem;
	border-bottom:1px #CCC solid;
	padding:0px 0px 0rem;
	margin:0px 0px; 1rem;
	flex-flow:row wrap;
	border-left:0px!important;
}

.comment-respond .comment-reply-title:before {
  font-family: "Font Awesome 6 free";
  font-weight: 900; 
  content: '\f27a';
  font-size: 1.3em;
  color:  #ffb200;
}
.comment-form .form-submit
{
		margin-top:0px;
}
.comment-form .form-submit input#submit
{
	font-size:1.8rem;
	background:#333;
	padding:1.5rem;
	color:#FFFFFF;
	font-weight:bold;
    transition: all 0.5s ease;
	width:90%;
	max-width:300px;
	margin:0 auto;
	display:block;
}
.comment-form .form-submit input#submit:hover
{
	background:#EEE;
	color:#333;
}
#main h3#comments
{
		font-size:1.8rem;
	    background: url(../images/common/base/pt_img01.gif) 0 0 repeat;
	padding:1rem 2rem;
	border-radius:3px;
	margin-bottom:3rem;
	border-left:none;
}
ol.commentlist li ul
{
		border-top:1px #CCC solid;
		padding-top:2rem;
		margin-top:2rem;
}
.comment-author 
{
		display:flex;
	gap:1rem;
	align-items:center;
}
.comment-reply-link
{
	background:#f7f7f7;
	display:block;
	border-radius:3px;
	padding:.3rem 3rem;
	width:fit-content;
	text-decoration:none!important;
	margin-left: auto;
    transition: all 0.5s ease;
}
.comment-reply-link:hover
{
		background:#EEE;
}

.comment-reply-link:before
{
  font-family: "Font Awesome 6 free";
  font-weight: 900; 
  content: '\f3e5';
  font-size: 1.3em;
  color:  #CCC;
	margin-right:1rem;
}
.commentlist
{
		margin-bottom:5rem;
}
.comment-form-cookies-consent
{
	display:flex;
	gap:1rem;
	align-items:center;
}
.comment-form-cookies-consent input
{
	flex:0 0 auto;
	width:auto;
}
.comment-form input#author
{
	width:50%;
}
.comment-form input#email
{
	width:70%;
}
.comment-form-author,
.comment-form-email
{
	display:flex;
	gap:1rem;
	align-items:center;
}
#comments .required
{
	color:#ff2200;
}
#email-notes
{
	display:block;
}
span.required-field-message
{
	display:block;
}
cite
{
	font-style:normal;
}
.article_list dl,
.article_list dt,
.article_list dd
{
	padding:0px;
	margin:0px;
	list-style:none;
}

.article_list dl
{
	display:flex;
	border-bottom:1px #EEE solid;
	padding-bottom:1.5rem;
	margin-bottom:1.5rem;
	gap:1.5rem;
}
.article_list dd
{
		border-left:1px #CCC dotted;
	padding-left:1.5rem;
}
.article_list dl:last-child
{
	margin-bottom:0px;
}


.article_list dd .art_cat
{
	margin-right:.5rem;
	display:inline-block;
	padding:0 2rem;
	font-size:1.6rem;
	background:#ce0063;
	color:#FFF;
	font-weight:bold;
}


/*▼wp-pagenavi------------------------------------------------------------*/

.wp-pagenavi {
	clear: both;
	margin-bottom 		: 0px; 
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #FFFFF;
	padding: 3px 5px;
	margin: 2px;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border-color: #000;
}

.wp-pagenavi span.current {
	font-weight: bold;
}


.wp-pagenavi
{
	text-align		: center;
	display 		: flex;
	justify-content: center;
	flex-flow 		: row wrap;
	gap 			: .5rem; 
	margin-top:3rem;
}
.wp-pagenavi a,
.wp-pagenavi span
{

    display: inline-block;
    vertical-align : top;
	padding				: 10px 16px !important;
	background			: #EEEEEE;
font-weight:normal !important;
transition: all 0.5s ease;
	margin-bottom 	: 10px; 

}
.wp-pagenavi .pages
{

    display: inline-block;
    vertical-align : top;
	padding				: 5px 8px;
	border:none;
}

.wp-pagenavi .current
{
    display: inline-block;
    vertical-align : top;
	padding				: 5px 10px;
	background			: #333333;
	color				: #FFF;
	font-weight			: bold;
}
.wp-pagenavi a:hover
{
	background			: #333333;
	color				: #FFF;
	font-weight			: bold;	
}
.previouspostslink,
.nextpostslink
{
	background:#EEE!important;
}
.previouspostslink:hover,
.nextpostslink:hover
{
	background:#18234c!important;
}

ul.page-numbers,
ul.page-numbers > li
{
	margin:0px;
	padding:0px;
	list-style:none;
}
ul.page-numbers
{
	display:flex;
	flex-flow:row wrap;
	gap:1rem;
	justify-content:center;
}
ul.page-numbers span,
ul.page-numbers a
{
	display:block;
	border-radius:3px;
	padding:1rem 1.8rem;
	background:#EEE;
transition: all 0.5s ease;
}
ul.page-numbers span.current
{
	background:#ce0063;
	color:#FFF;
}
ul.page-numbers a:hover
{
	background:#ce0063;
	color:#FFF;
}
.point_box
{
		border:1px #CCC solid;
	border-radius:5px;
	padding:2rem;
}
.point_box .point_title
{
	display:flex;
	background:#ce0063;
	color:#FFF;
	padding 		: 1rem 3rem;
	width 			: fit-content;
	align-items:center;
	line-height:1.0;
	font-weight:bold;
	transform:translate(-16%,0%);
	position:relative;
	gap:1rem;
}
.point_box .point_title:before
{ 
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 15px #0e1d47;
}
.point_box h5
{
	padding 		: 0px;
	margin 			: 0px;
	margin-bottom:2.5rem;
	font-size 		: clamp(1.6rem, 2vw, 1.8rem);
		background 		: url("../images/common/base/bg_pattern06.gif") 0 0 repeat;
	padding:1.5rem 1.5rem;
	line-height:1.3;
	display:flex;
	gap:.5rem;
	align-items:center;
	border-radius:5px;
}
.point_box h5:before
{
    font-family: "Font Awesome 6 Free";
    content: "\f13a";
    font-weight: bold;
    left: .5em;
    color: #ce0063;
    font-size: 1.1em;
}
.point_box h6
{
	padding:0px;
	margin:0px;
	margin-bottom:2rem;
	border-left:3px solid #ce0063;
	padding:.5rem 0 .5rem 1.5rem;
	font-size 		: clamp(1.6rem, 2vw, 1.8rem);
	font-weight:bold;
}
.step_title
{
	display:flex;
	gap:1em;
	font-size:1.1em;
	background:#EEE;
	margin-bottom:2rem;
	font-weight:bold;
	line-height:1.3;
}
.step_title .num
{
	font-family: "Jost", sans-serif;
    font-style: italic;
    font-weight: 700;
	background:#ce0063;
    color: #FFF;
	padding:.8rem 1em;
}
.step_title .text
{
	padding:.8rem 0;
}

/*1024以下の指定（タブレット）*/
@media screen and (max-width: 1024px) {

.page_title
{
	line-height 			: 1.3; 
}

.ac_point
{
	padding-top 	: 70px;
	margin-top 		: -70px;
}

.page_top
{
	width 			: 40px;
	height 			: auto;
}
.page_top img
{
	width		: 100%;
	height  		: auto;
}
#main .catch_title,
#tinymce .catch_title
{
	font-size 		: 2.3rem; 
}

}

/*767以下の指定（スマホ横)*/
@media screen and (max-width: 767px) {


.section_title_large
{
	line-height 		: 1.3;
}

.data_box .des_table,
.data_box .des_table tbody,
.data_box .des_table tr,
.data_box .des_table th,
.data_box .des_table td
{
	display: block;
	width 			: 100%; 
}

.data_box .des_table th
{
	padding 			: .5rem 1.5rem;
	border-right: none;
}

.data_box .des_table td
{
	padding 			: 1.5rem 1.5rem 2rem;
	border-bottom: none;
}

#main .fix_area .contact_form .cta_btn,
#tinymce .fix_area .contact_form .cta_btn
{
	flex 			: 0 0 95px;
	width 			: 95px;
	padding 		: .5rem 1rem;
	background-image: none;
	font-size 		: 1.4rem;
	line-height 	: 1.2;
	text-align: left;
}
#main .fix_area .contact_form .form_mail,
#tinymce .fix_area .contact_form .form_mail
{
	padding 		: 1rem; 
}
.section_title
{
	margin-bottom 		: 2rem; 
}
#main h3,
#tinymce h3,
#main .line_title,
#tinymce .line_title
{
	margin-bottom 		: 1.5rem; 
}

.sub_title01
{
	padding 			: 1rem 1rem;
	line-height 		: 1.3;
	margin-bottom 		: 2rem; 
}


#main .catch_title,
#tinymce .catch_title
{
	font-size 			: 2rem;
	line-height 		: 1.3; 
}
#main .arrow_text,
#tinymce .arrow_text
{
	font-size 			: 1.6rem;
	line-height 		: 1.3; 
}
#main .cta_btn,
#colorbox .cta_btn,
#tinymce .cta_btn
{
	line-height 		: 1.3;
 	padding 			: 1.5rem 6rem 1.5rem 2rem;
	font-size 			: 1.6rem;
	background-size 	: 25px auto,auto auto,auto auto;
	min-width 			: 100%;
	text-align 			: center;
}
#main .arrow_text .icon
#tinymce .arrow_text .icon
{
	width 			: 55px; 
}
.section_title:before
{
	display: none;
}
.section_title .nb_icon
{
	display: block;
}

#main .gift_list ul li,
#tinymce .gift_list ul li
{
	flex 				: 1 1 100%; 
}
.contact_form .data_box .form_table table,
.contact_form .data_box .form_table tr,
.contact_form .data_box .form_table td,
.contact_form .data_box .form_table th
{
	display 			: block;
	width 				: 100%;
}
.contact_form .data_box .form_table th
{
	padding-bottom 		: .5rem;
	display: none;
}

.contact_form .contact_form_title
{
	padding 			: 1rem 1.5rem;
	line-height 		: 1.3; 
}
.contact_form .contact_form_inner
{
	padding 			: 1.8rem; 
}
.contact_form .form_box
{
	margin-bottom 		: 1.5rem; 
}
.countdown_area .countdown_box
{
	width 				: 90%; 
}
.countdown_area .countdown .yycountdown-box
{
	font-size 			: 1.8rem; 
}
.countdown_area .countdown_box p
{
	font-size 			: 1.4rem;
	line-height 		: 1.3; 
}
#main .gift_item .gift_item_mid,
#tinymce .gift_item .gift_item_mid
{
	flex-flow 			: row wrap;
}
#main .gift_item .gift_item_mid .thum,
#tinymce .gift_item .gift_item_mid .thum
{
	flex 				: 1 1 auto; 
}
#main .gift_item .gift_item_title,
#tinymce .gift_item .gift_item_title
{
	font-size 			: 1.6rem; 
}
#main .gift_item .gift_item_title .num,
#tinymce .gift_item .gift_item_title .num
{
	font-size 			: 1.8rem; 
}

#main .line_entry_btn,
#tinymce .line_entry_btn
{
	font-size 			: 1.8rem; 
}
.lecture_box .lecture_box_inner
{
	padding 			: 1rem; 
}
.lecture_box .lecture_title
{
	padding 			: 1.5rem;
	text-align: left;
}
#main .fix_area .cta_btn,
#tinymce .fix_area .cta_btn
{
	line-height 		: 1.2;
    padding 			: 1rem 6rem 1rem 2rem;
	text-align: left;
	font-size 			: 1.5rem; 
}
.info_title:after
{
	font-size 				: 4vw; 
	opacity 				: 1;
	color 					: #222;
	right 					: 1em; 
}
.info_title:before
{
	height 					: 8px; 
}
.contact_form.subm_form .subm_table,
.contact_form.subm_form .subm_table tbody,
.contact_form.subm_form .subm_table th,
.contact_form.subm_form .subm_table td,
.contact_form.subm_form .subm_table tr
{
	display 				: block;
	width 					: 100%;
	box-sizing: border-box;
}
.contact_form.subm_form
{
	padding 				: 0px 0px 2rem;
}
.contact_form.subm_form .subm_table th
{
	padding 				: 1rem 1.5rem .5rem; 
}
.contact_form.subm_form .subm_table td
{
	padding 				: 0 1.5rem 1.5rem; 
}
.contact_form.subm_form .subm_table td input
{
	max-width 				: 100%; 
}
#main .contact_form.subm_form .cta_btn,
#tinymce .contact_form.subm_form .cta_btn
{
	min-width 				: 85%; 
	margin 					: 0 auto; 
}
.fxmg_box
{
	padding 				: 1.5rem; 
}
.fxmg_box .fxmg_box_header
{
	margin-bottom 			: 1rem; 
}

.fxmg_box .fxmg_box_inner .fxmg_item
{
	flex 					: 0 0 100%;
	width 					: 100%;
	font-size 				: 1.4rem; 
}
.fxmg_box .fxmg_box_inner
{
	flex-flow: row wrap;
	gap 					: 1rem;
}


.cta_limit span.main_tex
{
	font-size 				: 2rem; 
}
.cta_limit
{
	padding 			: .8rem 35px .5rem 35px
}

.article_list dl
{
	display:block;
}
.article_list dd
{
    border-left: none;
    padding-left: 0;
}
.step_title
{
	gap:.5rem;
}

}
/*320以下の指定（スマホ縦)*/
@media screen and (max-width: 320px) {
}










/*---------------------------------------------------------*/
/*    copyright(C) CloudWorks.All rights reserved. Ver1.0    */
/*---------------------------------------------------------*/
