@charset "UTF-8";

/* basic
------------------------------------------------------------ */
#gyousho{
	--color-main :#1a2f5c;
	--color-link :#2a6be3;

	--color-black :#323232;
	--color-white :#ffffff;
	--color-gray :#b5b5b5;
	--color-light_gray :#f8f8f8;
	--color-red :#cc111a;
	--color-blue :#1f529d;
	--color-light_blue :#f1f5f9;
	--color-orange :#f27d00;
	--color-light_orange :#fff8ea;
	--color-green :#099983;
	--color-pink :#fff;
	--color-yellow :#fff100;

	--fz-40: 40px;
	--fz-30: 30px;
	--fz-22: 22px;
	--fz-18: 18px;
	--fz-16: 16px;
	--fz-14: 14px;
	--fz-12: 12px;
	--fz-10: 10px;
}

#gyousho{
	box-sizing: border-box;
	background-color: var(--color-white);
	font-size: var(--fz-16);
	line-height: 1.6;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

#gyousho .pcOnly{ display: block; }
#gyousho :where(span).pcOnly{ display: inline-block; }
#gyousho .spOnly{ display: none; }
/* #gyousho .br{ display: block; } */

#gyousho .wrap{
	max-width: 1024px;
	margin-inline: auto;
}

#gyousho > section[id]{
	padding-block: 80px;
}

#gyousho hgroup{
	font-feature-settings: "palt";
}

:where(#gyousho .grid){
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: center;
	gap: 20px;
}
:where(#gyousho .grid).auto{
	grid-template-columns: repeat(2, auto);
}
:where(#gyousho .grid).col3{
	grid-template-columns: repeat(3, 1fr);
}
:where(#gyousho .grid).auto.col3{
	grid-template-columns: repeat(3, auto);
}

:where(#gyousho .flex){
	display: flex;
	flex-flow: row wrap;
	gap: 20px;
}
:where(#gyousho .flex) > *{
	width: calc( (100% - 20px) / 2 );
}
:where(#gyousho .flex).col3 > *{
	width: calc( (100% - 20px * 2) / 3 );
}

#gyousho h2,
#gyousho h2 span,
#gyousho h3,
#gyousho h3 span{
	font-weight: bold !important;
}

#gyousho ul,
#gyousho ol{
	list-style: none;
}

#gyousho ul.list{
	padding-left: 2px;
}
#gyousho ul.list li{
	padding-left: 1em;
	font-size: var(--fz-12);
	line-height: 1.4;
	text-indent: -1em;
}
#gyousho ul.list li:before{
	content: '・';
}
#gyousho ul.list + p{
	margin-top: 0;
}
#gyousho p + ul.list{
	margin-top: -2px;
}

#gyousho ul.list.notes{
	margin-top: 0;
	padding-left: 0;
}
#gyousho ul.list.notes > li:before{
	content: '※';
}

#gyousho ul.list.star{
	margin-top: 0;
	padding-left: 0;
}
#gyousho ul.list.star > li:before{
	content: '\02606';
	/* ☆ */
}
#gyousho ul.list.star.black > li:before{
	content: '\02605';
	/* ★ */
}

#gyousho ul.list.link{
	margin-block: 8px;
}
#gyousho ul.list.link li:before{
	content: '>';
}
#gyousho ul.list.link li a{
	font-size: var(--fz-16);
	line-height: 1.6;
}

#gyousho ul.tag_list{
	display: inline-flex;
	flex-flow: row wrap;
}
#gyousho ul.tag_list > li{
	padding: 4px;
	border-radius: 4px;
	background-color: #ccc;
	color: var(--color-white);
	font-size: var(--fz-10);
	font-weight: bold;
	line-height: 1.2;
}

#gyousho sup{
	vertical-align: super;
	font-size: 70%;
}

:where(#gyousho img),
#gyousho iframe{
	display: block;
	max-width: 100%;
	width: 100%;
	height: auto;
	margin-inline: auto;
}
#gyousho iframe{
	height: 100%;
	background-color: #000;
}

#gyousho a{
	color: var(--color-link);
	text-decoration: none;
}
#gyousho [target='_blank']{
	color: var(--color-link);
	text-decoration: none;
}
#gyousho a:hover img{
	opacity: 0.7;
}

#gyousho table{
	table-layout: fixed;
	border-collapse: collapse;
}

#gyousho .btn{
	width: auto;
	position: relative;
	display: inline-grid;
	grid-template-columns: repeat(2, auto);
	gap: 8px;
	align-items: center;
	justify-content: center;
	padding: 17px 20px 18px 20px;
	border-radius: 4px;
	border: none;
	font-size: var(--fz-18) !important;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: 1.4;
	font-feature-settings: "palt";
	cursor: pointer;
}
#gyousho a.btn:hover{
	filter: brightness(1.1) drop-shadow(0 3px 2px rgb(0 0 0 / 0.3));
}
#gyousho .btn:after{
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url('./image/gyosho-icon-arrow_down.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	vertical-align: bottom;
}

#gyousho .btn:where(.ico_book,.ico_youtube,.ico_download){
	padding: 12px;
	font-size: var(--fz-18);
	font-weight: bold;
	line-height: 1.2;
}
#gyousho .btn:where(.ico_book,.ico_youtube,.ico_download):before{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	vertical-align: bottom;
}
#gyousho .btn:where(.ico_book,.ico_youtube,.ico_download):after{
	display: none;
}
#gyousho .btn.ico_book:before{
	background-image: url('./image/gyosho-icon-book.svg');
}
#gyousho .btn.ico_youtube:before{
	background-image: url('./image/gyosho-icon-youtube.svg');
}
#gyousho .btn.ico_download:before{
	background-image: url('./image/gyosho-icon-download.svg');
}

#gyousho .btn.taiken{
	display: grid;
	gap: 4px;
	padding: 8px 21px;
	background-color: var(--color-main);
	border-radius: unset;
	color: #fff;
	font-size: var(--fz-16) !important;
	font-weight: bold;
	line-height: 1.4;
}
#gyousho .btn.taiken:after{
	width: 18px;
	height: 18px;
	background-image: url('./image/gyosho-icon-arrow_taiken.svg');
}

#gyousho .btn_red{
	display: block;
	padding: 11px 12px 13px 12px;
	border-radius: 50px;
	background: linear-gradient(180deg, #EC1C26 0%, #AF0F17 100%);
	color: var(--color-white);
	font-size: var(--fz-18) !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
	font-feature-settings: unset;
}
#gyousho .btn_red:after{
	width: 20px;
	height: 20px;
	background-image: url(./image/gyosho-icon-arrow_right.svg);
	position: absolute;
	right: 12px;
}

#gyousho .btn_black{
	display: block;
	padding: 12px;
	border-radius: 50px;
	background: linear-gradient(180deg, #4A4A4A 0%, #010101 100%);
	color: var(--color-white);
	font-size: var(--fz-18) !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
	font-feature-settings: unset;
}
#gyousho .btn_black:before{
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background-color: #fff;
	border-radius: 100%;
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
}
#gyousho .btn_black:after{
	width: 20px;
	height: 20px;
	background-image: url(./image/gyosho-icon-arrow_right.svg);
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	filter: brightness(0);
}
#gyousho .btn_black span {
	font-weight: inherit;
}

#gyousho .circle{
	display: grid;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
}

#gyousho .rounded{
	border-radius: 50px;
}

#gyousho .rounded_container.orange{
	--container-color: var(--color-orange);
}
#gyousho .rounded_container.blue{
	--container-color: var(--color-blue);
}
#gyousho .rounded_container + .rounded_container{
	margin-top: 40px;
}
#gyousho .sec_bonus .rounded_container + .rounded_container{
	margin-top: 20px;
}
#gyousho .rounded_container > .header{
	padding-block: 10px;
	border-radius: 20px 20px 0 0;
	background-color: var(--container-color);
	color: var(--color-white);
	text-align: center;
}
#gyousho .rounded_container > .header h3{
	margin-top: 4px;
}

#gyousho .rounded_container > .contents{
	border: 3px solid var(--container-color);
	border-top: none;
	border-radius: 0 0 20px 20px;
	background-color: #fff;
}

#gyousho .rounded_square{
	display: inline-block;
	border-radius: 5px;
}

#gyousho .logo_gyousho{
	display: inline-flex;
	align-items: center;
	column-gap: 13px;
}
#gyousho .logo_gyousho img{
	width: 74px;
}
#gyousho .logo_gyousho .txt_green{
	display: inline-block;
	margin-right: 8px;
	font-weight: bold;
}




#gyousho .mb40{
	margin-bottom: 40px;
}

#gyousho .fz_xxl{ font-size: var(--fz-40); font-weight: bold; line-height: 1.4; }
#gyousho .fz_xl { font-size: var(--fz-30); font-weight: bold; line-height: 1.4; }
#gyousho .fz_l  { font-size: var(--fz-22); font-weight: bold; line-height: 1.4; }
#gyousho .fz_m  { font-size: var(--fz-18); font-weight: bold; line-height: 1.4; }
#gyousho .fz_s  { font-size: var(--fz-16); font-weight: bold; line-height: 1.4; }
#gyousho .fz_xs { font-size: var(--fz-12); font-weight: bold; line-height: 1.4; }

#gyousho .fw_bold{ font-weight: bold; }
#gyousho .fw_normal{ font-weight: normal; }
#gyousho .lh_smaller{ line-height: 1.2; }

#gyousho .txt_link{ color: var(--color-link); }
#gyousho .txt_black{ color: var(--color-black); }
#gyousho .txt_white{ color: var(--color-white); }
#gyousho .txt_gray{ color: var(--color-gray); }
#gyousho .txt_light_gray{ color: var(--color-light_gray); }
#gyousho .txt_red{ color: var(--color-red); }
#gyousho .txt_blue{ color: var(--color-blue); }
#gyousho .txt_orange{ color: var(--color-orange); }
#gyousho .txt_green{ color: var(--color-green); }
#gyousho .txt_yellow{ color: var(--color-yellow); }

#gyousho .bg_black{ background-color: var(--color-black); }
#gyousho .bg_white{ background-color: var(--color-white); }
#gyousho .bg_gray{ background-color: var(--color-gray); }
#gyousho .bg_light_gray{ background-color: var(--color-light_gray); }
#gyousho .bg_red{ background-color: var(--color-red); }
#gyousho .bg_blue{ background-color: var(--color-blue); }
#gyousho .bg_light_blue{ background-color: var(--color-light_blue); }
#gyousho .bg_orange{ background-color: var(--color-orange); }
#gyousho .bg_light_orange{ background-color: var(--color-light_orange); }
#gyousho .bg_green{ background-color: var(--color-green); }

#gyousho .center{ text-align: center; }
#gyousho .right{ text-align: right; }
#gyousho .palt{ font-feature-settings: "palt"; }
#gyousho .justify{ text-align: justify; }


.winSP #wrapper {
	overflow: clip;
}


/* kv
------------------------------------------------------------ */
#gyousho #kv{
	padding-block: 28px 32px;
	background: linear-gradient(180deg, #EDEDED 0%, #FFFFFF 100%);
}

#gyousho #kv > .wrap > .grid{
	column-gap: 46px;
	align-items: end;
}
#gyousho #kv > .wrap > .grid > .cell:nth-of-type(1){
	width: 278px;
}


#gyousho #kv .header{
	margin-bottom: 16px;
}

#gyousho #kv .campaign{
	margin-top: 12px;
	margin-bottom: -8px;
	margin-inline: -8px;
}



/* anchor_links
------------------------------------------------------------ */
#gyousho #anchor_links{
	position: sticky;
	top: 182px;
	z-index: 9999;
	padding-block: 7px;
	border-top: 1px solid #D9D7DB;
	border-bottom: 1px solid #D9D7DB;
	background: #F8F8F8;
	@media (width < 1281px) {
		top: 190px;
	}
	@media (width < 1066px) {
		position: static;
	}
	@media (width < 768px) {
		position: sticky;
		top: 104px;
	}
}
#gyousho #anchor_links ul{
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-evenly;
	column-gap: 31px;
	width: 917px;
	margin-inline: auto;
}
#gyousho #anchor_links ul li{
	line-height: 1.2;
}
#gyousho #anchor_links ul li:before{
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 4px;
	background: url('./image/gyosho-icon-link.svg') no-repeat center;
	vertical-align: middle;
}
#gyousho #anchor_links ul li a{
	color: var(--color-black);
}




/* about
------------------------------------------------------------ */
#gyousho #about hgroup{
	padding-bottom: 40px;
}
#gyousho #about hgroup h2{
	margin-bottom: 8px;
}

#gyousho #about .contents{
	text-align: center;
}
#gyousho #about .contents img{
	max-width: 810px;
	margin-inline: auto;
	margin-block: 20px;
}
#gyousho #about .contents p + p{
	margin-top: 20px;
}

#gyousho #about .btns{
	max-width: 700px;
	margin-inline: auto;
	padding-top: 40px;
	font-feature-settings: "palt";
}
#gyousho #about .btns .btn{
	display: grid;
	margin-top: 8px;
}



/* feature
------------------------------------------------------------ */
#gyousho #feature{
	background-color: var(--color-light_gray);
}
#gyousho #feature hgroup{
	padding-bottom: 40px;
}

#gyousho #feature .flex{
	column-gap: 32px;
}
#gyousho #feature .flex .cell{
	width: calc( (100% - 32px * 2) / 3 );
	display: flex;
	flex-flow: column nowrap;
	gap: 20px;
}

#gyousho #feature .catchy{
	padding: 8px;
	background-color: var(--color-green);
	color: var(--color-white);
	text-align: center;
	font-feature-settings: "palt";
}
#gyousho #feature .header{
	font-feature-settings: "palt";
}
#gyousho #feature .contents{
	text-align: justify;
}



/* campaign
------------------------------------------------------------ */
#gyousho #early_campaign .wrap{
	background-color: #FFF4F4;
}

#gyousho #early_campaign hgroup h2{
	padding: 12px;
}

#gyousho #early_campaign .schedule{
	margin-top: 40px;
	margin-inline: 60px;
	padding: 20px 10px;
	border: 1px solid var(--color-red);
	border-radius: 12px;
	text-align: center;
	font-feature-settings: "palt";
}

#gyousho #early_campaign > .wrap > .contents{
	display: flex;
	flex-flow: column nowrap;
	gap: 80px;
	padding: 40px 60px;
}

#gyousho #early_campaign .sec_bonus > .header{
	justify-content: center;
	gap: 12px;
	margin-inline: auto;
	padding-bottom: 40px;
}
#gyousho #early_campaign .sec_bonus > .header .circle{
	width: 100px;
	height: 100px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.4;
	font-feature-settings: "palt";
}

.gyousho-course{
	max-width: 904px;
	margin-inline: auto;
	padding: 40px;
	border: 1px dashed #323232;
}
.gyousho-course + .gyousho-course,
[data-template*="gyousho_course_"] + [data-template*="gyousho_course_"]{
	margin-top: 40px !important;
}
.notes-accordion + .gyousho-course,
.notes-accordion + [data-template*="gyousho_course_"]{
	margin-top: 49px;
}
.gyousho-course.orange{
	--course-main-color: var(--color-orange);
	background-color: var(--color-light_orange);
}
.gyousho-course.blue{
	--course-main-color: var(--color-blue);
	background-color: var(--color-light_blue);
}
.gyousho-course .course_main_color{
	color: var(--course-main-color);
}

.gyousho-course hgroup{
	padding-bottom: 20px;
}
.gyousho-course hgroup .logo_gyousho + p{
	margin-top: -7px;
}

.gyousho-price_container .header{
	padding: 6px;
	background-color: var(--course-main-color);
	color: var(--color-white);
	text-align: center;
	font-feature-settings: "palt";
}
.gyousho-price_container .contents{
	padding: 12px 18px 20px 18px;
	border: 2px solid var(--course-main-color);
	border-top: none;
	background-color: #fff;
}
.gyousho-price_container .special{
	color: var(--color-red);
	font-feature-settings: "palt";
	white-space: nowrap;
}
.gyousho-price_container .price_before{
	padding-top: 5px;
	font-size: var(--fz-14);
	text-decoration: line-through;
}
.gyousho-price_container .price{
	margin-bottom: 5px;
	color: var(--color-red);
	font-size: var(--fz-40);
	font-weight: bold;
	line-height: 1.2;
}
.gyousho-price_container .price small{
	font-size: var(--fz-16);
}

.gyousho-fullpackage_details{
	margin-top: 20px;
	background-color: #fff;
	border: 1px solid #E6E6E6;
}
.gyousho-fullpackage_details .acc_btn{
	padding: 10px;
	border: 6px solid #fff;
	background-color: #F1F1F1;
	font-size: var(--fz-18);
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	position: relative;
}
.gyousho-fullpackage_details .acc_btn:after{
	content: '';
	display: inline-block;
	border: 6px solid transparent;
	border-top: 8px solid #A0A0A0;
	border-bottom: none;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
}
.gyousho-fullpackage_details.open .acc_btn:after{
	transform-origin: top;
	rotate: 180deg;
}
.gyousho-fullpackage_details .acc_cts .inner{
	display: flex;
	flex-flow: column nowrap;
	gap: 8px;
	padding: 20px 40px;
}
.gyousho-fullpackage_details .acc_cts p{
	font-feature-settings: "palt";
}
.gyousho-fullpackage_details .acc_cts ul.list + p{
	margin-top: 8px;
}

.gyousho-course .list.notes{
	margin-top: 20px !important;
}

#gyousho #early_campaign .rounded_container .grid{
	align-items: start;
	gap: 40px;
	padding: 40px;
}
#gyousho #early_campaign .rounded_container .grid > .cell:first-child{
	grid-column: 2 / 3;
	grid-row: 1;
	width: 141px;
}
#gyousho #early_campaign .rounded_container .grid > .cell:last-child{
	grid-column: 1 / 2;
	grid-row: 1;
	text-align: justify;
}
#gyousho #early_campaign .rounded_container .list.notes{
	margin-block: 20px;
}
#gyousho #early_campaign .rounded_container .fz_smaller{
	margin-top: 20px;
	font-size: var(--fz-14);
	font-weight: bold;
	line-height: 1.4;
}



/* course
------------------------------------------------------------ */
#gyousho #course{
	padding-block: 0;
}
#gyousho #course > hgroup{
	padding-bottom: 40px;
}

#gyousho #course .course_details.orange{
	--details-main-color: var(--color-orange);
	--details-sub-color: var(--color-light_orange);
}
#gyousho #course .course_details.blue{
	--details-main-color: var(--color-blue);
	--details-sub-color: var(--color-light_blue);
}

#gyousho #course .course_details{
	padding-block: 80px;
	background-color: var(--details-sub-color);
}
#gyousho #course .course_details > .wrap{
	max-width: 1024px;
	margin-inline: auto;
	border-radius: 20px;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
}

#gyousho #course .course_details > .wrap > .header{
	padding-block: 30px 27px;
	border-radius: 20px 20px 0 0;
	background-color: var(--details-main-color);
	color: var(--color-white);
	text-align: center;
	text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
	position: relative;
}
#gyousho #course .course_details.orange > .wrap > .header{
	background: linear-gradient(180deg, #FFA442 0%, #F27D00 100%);
}
#gyousho #course .course_details.blue > .wrap > .header{
	background: linear-gradient(180deg, #2F71D1 0%, #1F529D 100%);
}
#gyousho #course .course_details > .wrap > .header img{
	width: 180px;
	height: 200px;
	position: absolute;
	bottom: 0;
	left: 20px;
}

#gyousho #course .course_details > .wrap > .contents{
	padding: 40px 60px;
	border-radius: 0 0 20px 20px;
	background-color: #fff;
}
#gyousho #course .course_details > .wrap > .contents > .acc_cts > .header p{
	margin-bottom: 40px;
}
#gyousho #course .course_details > .wrap > .contents .btn_black.close{
	display: none;
}
#gyousho #course .course_details > .wrap > .contents.open .btn_black.open{
	display: none;
}
#gyousho #course .course_details > .wrap > .contents.open .btn_black.close{
	display: block;
	margin-top: 40px;
}

#gyousho #course .grid.plus_layout{
	margin-bottom: 40px;
}
#gyousho #course .grid.plus_layout .cell{
	display: flex;
	flex-flow: column nowrap;
	gap: 20px;
	padding: 28px;
	height: 100%;
	border: 1px solid var(--details-main-color);
	background-color: var(--details-sub-color);
	border-radius: 12px;
}
#gyousho #course .grid.plus_layout .cell:first-child{
	position: relative;
}
#gyousho #course .grid.plus_layout .cell:first-child:after{
	content: '+';
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	background-color: var(--details-main-color);
	border-radius: 100%;
	color: #fff;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.4;
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translate(-25%, -50%);
	z-index: 99;
}
#gyousho #course .grid.plus_layout .header{
	text-align: center;
	font-feature-settings: "palt";
}
#gyousho #course .grid.plus_layout .profiles{
	font-size: var(--fz-16);
	line-height: 1.4;
	font-feature-settings: "palt";
	text-align: justify;
}
#gyousho #course .grid.plus_layout .profiles:after{
	content: '';
	display: block;
	height: 1px;
	margin-top: -1px;
	clear: both;
}
#gyousho #course .grid.plus_layout .profiles img{
	width: 105px;
	margin-bottom: 17px;
	margin-right: 17px;
	float: left;
}
#gyousho #course .grid.plus_layout .profiles .fz_l{
	margin-bottom: 4px;
}
#gyousho #course .grid.plus_layout .profiles .fz_s{
	margin-bottom: 11px;
}
#gyousho #course .grid.plus_layout .profiles small{
	font-size: var(--fz-12);
}
#gyousho #course .grid.plus_layout .btns .btn{
	display: block;
	margin-inline: auto;
	max-width: 304px;
}
#gyousho #course .grid.plus_layout .btns .btn + .btn{
	margin-top: 16px;
}
#gyousho #course .grid.plus_layout .btns .grid{
	justify-content: center;
	gap: 8px;
	margin-top: 4px;
}
#gyousho #course .grid.plus_layout .btns .grid a{
	font-size: var(--fz-12);
	font-weight: bold;
	line-height: 1.2;
}
#gyousho #course .grid.plus_layout .btns .grid a img{
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 4px;
	vertical-align: text-bottom;
}

#gyousho #course .schedules{
	padding: 12px;
	border: 1px solid var(--color-red);
	border-radius: 12px;
	background-color: #fff;
	font-size: var(--fz-14);
	text-align: center;
	line-height: 1.4;
}
#gyousho #course .schedules a{
	display: block;
	margin-top: 4px;
	font-size: var(--fz-16);
	font-weight: bold !important;
	line-height: 1.2;
}
#gyousho #course .schedules p{
	font-weight: bold !important;
}

#gyousho #course .curriculum{
	padding: 40px 10px;
	color: var(--details-main-color);
	border-top: 2px solid var(--details-main-color);
	text-align: center;
	font-feature-settings: "palt";
}

#gyousho #course .curriculum + .grid{
	margin-bottom: 20px;
}
#gyousho #course .curriculum + .grid > .cell{
	align-content: center;
	padding: 20px;
	height: 100%;
	background-color: var(--color-light_gray);
	border-radius: 12px;
}
#gyousho #course .curriculum + .grid > .cell .grid{
	grid-template-columns: 96px auto;
	gap: 25px;
	font-size: var(--fz-12);
	line-height: 1.4;
}
#gyousho #course .curriculum + .grid > .cell .grid .tag_list li{
	background-color: var(--details-main-color);
}
#gyousho #course .curriculum + .grid > .cell .grid p{
	margin-top: 4px;
	text-align: justify;
}

#gyousho #course .rounded_container > .header{
	padding: 8px 20px;
	text-align: left;
}
#gyousho #course .rounded_container > .header h5{
	display: inline-block;
}
#gyousho #course .rounded_container > .header .rounded_square{
	margin-left: 20px;
	padding: 4px 10px;
	font-size: var(--fz-12);
	font-weight: bold;
	line-height: 1.2;
	vertical-align: text-top;
	font-feature-settings: unset;
}

#gyousho #course .rounded_container > .contents{
	display: flex;
	flex-flow: column nowrap;
	gap: 8px;
	padding: 8px;
	border: none;
	background-color: var(--color-light_gray);
	font-size: var(--fz-12);
	line-height: 1.4;
}
#gyousho #course .rounded_container > .contents > .grid{
	grid-template-columns: auto 1fr;
	gap: 40px;
	justify-items: stretch;
	padding: 20px;
	border-radius: 12px;
	text-align: justify;
}
#gyousho #course .rounded_container > .contents > .grid .inner{
	min-width: unset !important;
	padding: 0 !important;
}
#gyousho #course .rounded_container > .contents .grid.sec_book > .cell:first-child .grid{
	display: flex;
	flex-flow: row nowrap;
	gap: 15px;
	width: 292px;
}
#gyousho #course .rounded_container > .contents .grid:where(.sec_book, .sec_moshi) > .cell:last-child{
	display: flex;
	flex-flow: column nowrap;
	gap: 8px;
}
#gyousho #course .rounded_container > .contents .grid:where(.sec_book, .sec_moshi) > .cell:last-child .inner{
	padding: 0;
}
#gyousho #course .rounded_container > .contents .grid:where(.sec_book, .sec_moshi) > .cell:last-child p + p{
	margin-top: 4px;
}
#gyousho #course .rounded_container > .contents .grid:where(.sec_book, .sec_moshi) > .cell:last-child a{
	display: inline-block;
	margin-top: 4px;
	font-weight: bold;
}

#gyousho #course .rounded_container > .contents .grid.sec_muteki > .cell:first-child{
	display: block;
	width: 383px;
}
#gyousho #course .rounded_container > .contents .grid.sec_muteki > .cell:last-child{
	padding: 20px;
	background-color: var(--details-sub-color);
	border: 1px solid var(--details-main-color);
	border-radius: 8px;
}
#gyousho #course .rounded_container > .contents .grid.sec_muteki .box{
	display: flex;
	flex-flow: column nowrap;
	gap: 4px;
	text-align: justify;
}
#gyousho #course .rounded_container > .contents .grid.sec_muteki .box .txt_red{
	margin-bottom: 4px;
}

#gyousho #course .rounded_container > .contents .grid.sec_muteki > .cell:last-child .tag_list li{
	background-color: var(--details-main-color);
}

#gyousho #course .rounded_container > .contents .grid.sec_muteki .grid{
	gap: 20px;
	padding: 0;
}
#gyousho #course .rounded_container > .contents .grid.sec_muteki .grid > .cell:first-child{
	width: 90px;
}

#gyousho #course .rounded_container > .contents .grid.sec_moshi > .cell:first-child{
	width: 265px;
}
#gyousho #course .rounded_container > .contents .footer{
	padding: 12px;
	background: none;
}

#gyousho #course .pickup{
	margin-top: 20px;
}
#gyousho #course .pickup hgroup{
	padding: 4px 20px;
	background-color: var(--color-green);
	color: #fff;
	font-style: italic;
}
#gyousho #course .pickup .contents{
	padding: 27px 40px;
	background-color: #F3FAF9;
}
#gyousho #course .pickup .contents .header{
	font-feature-settings: "palt";
}

#gyousho #course .pickup .grid{
	grid-template-columns: auto 506px;
	gap: 37px;
	align-items: self-start;
	margin-top: 20px;
	text-align: justify;
}
#gyousho #course .pickup .grid .cell:first-child{
	display: flex;
	flex-flow: column nowrap;
	gap: 19px;
	text-align: justify;
}
#gyousho #course .pickup .grid .cell:first-child .fz_m{
	font-feature-settings: "palt";
}

#gyousho #course .pickup .btn{
	display: block;
}

#gyousho #course .pickup .pickup_list{
	margin-top: 41px;
	padding: 20px;
	background-color: #fff;
}
#gyousho #course .pickup .pickup_list dl{
	display: flex;
	flex-flow: column nowrap;
	gap: 8px;
	margin-bottom: 8px;
	text-align: justify;
}
#gyousho #course .pickup .pickup_list dt{
	margin-bottom: 4px;
	color: var(--color-green);
	font-size: var(--fz-18);
	font-weight: bold;
	line-height: 1.4;
	font-feature-settings: "palt";
}
#gyousho #course .pickup .pickup_list dd{
	font-size: var(--fz-12);
	line-height: 1.4;
}
#gyousho #course .pickup .pickup_list dl + p{
	font-feature-settings: "palt";
}
#gyousho #course .pickup .pickup_list + .list.notes{
	margin-top: 20px;
}

.notes-accordion{
	margin-top: 49px;
}
.notes-accordion > :where(hgroup, div){
	border: 1px solid var(--color-red);
	border-top: none;
}
.notes-accordion > hgroup{
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	gap: 35px;
	padding-block: 12px 14px;
	background-color: var(--color-red);
	color: #fff;
	text-align: center;
	position: relative;
}
.notes-accordion > hgroup img{
	width: 36px;
	height: 33px;
}

.notes-accordion .inner{
	padding: 0;
	min-width: unset !important;
}

.notes-accordion .notes_btn{
	display: grid;
	grid-template-columns: 230px auto 230px;
	align-items: center;
	justify-content: space-between;
	justify-items: center;
	padding-block: 11px;
	color: var(--color-red);
	font-feature-settings: "palt";
}
.notes-accordion .notes_btn > div:first-child{
	background-image: url('./image/gyosho-btn-notes_close.png');
	opacity: 0;
}
.notes-accordion .notes_btn > div:last-child{
	width: 158px;
	height: 66px;
	background: url('./image/gyosho-btn-notes_click.png') no-repeat center / contain;
}
.notes-accordion.open .notes_btn > div:last-child{
	background: url('./image/gyosho-btn-notes_close.png') no-repeat center / contain;
}

.notes-accordion > .inner:not(:has(.notes_btn)){
	padding-inline: 40px;
}



/* support
------------------------------------------------------------ */
#gyousho #support > .wrap > hgroup{
	padding-bottom: 40px;
}

#gyousho #support .rounded_container.support > hgroup{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px 7px;
	border-radius: 20px 20px 0 0;
	background-color: var(--color-green);
	color: var(--color-white);
	text-align: center;
}
#gyousho #support .rounded_container.support .bg_star{
	display: inline-flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
	margin-right: 12px;
	background: url('./image/gyosho-img-star.png') no-repeat center / contain;
	color: var(--color-black);
	font-size: var(--fz-12);
	font-weight: bold;
	line-height: 1;
}
#gyousho #support .rounded_container.support .bg_star .fz_xxl{
	line-height: 1;
}

#gyousho #support .rounded_container.support > .contents{
	display: flex;
	flex-flow: column nowrap;
	gap: 20px;
	padding: 28px 36px;
	border: 2px solid var(--color-green);
	border-top: none;
	border-radius: 0 0 20px 20px;
	font-feature-settings: "palt";
	text-align: justify;
}
#gyousho #support .rounded_container.support > .contents .inner{
	min-width: unset;
	padding-inline: 0;
}
#gyousho #support .rounded_container.support > .contents .inner > .fz_m{
	margin-bottom: 8px;
}

#gyousho #support .rounded_container:where(.orange, .blue) .header{
	padding: 8px;
}
#gyousho #support .rounded_container:where(.orange, .blue) .content{
	padding: 20px;
}
#gyousho #support .rounded_container.orange{
	background-color: var(--color-light_orange);
}
#gyousho #support .rounded_container.blue{
	background-color: var(--color-light_blue);
}

#gyousho #support .rounded_container.support .discount{
	gap: 27px;
}
#gyousho #support .rounded_container.support .discount > .grid{
	display: inline-grid;
	justify-content: center;
	gap: 27px;
}
#gyousho #support .rounded_container.support .discount > .grid .cell:first-child{
	width: 468px;
}
#gyousho #support .rounded_container.support .discount > .grid .cell:last-child{
		border-bottom: 1px solid var(--color-black);
}



/* voice
------------------------------------------------------------ */
#gyousho #voice{
	background-color: var(--color-light_gray);
}
#gyousho #voice hgroup{
	padding-bottom: 40px;
}
#gyousho #voice hgroup + .contents > .grid{
	margin-bottom: 40px;
}

#gyousho #voice .grid{
	align-items: self-start;
}

#gyousho #voice .voice_prof{
	height: 100%;
	border: 1px solid #D9D7DB;
	border-radius: 20px;
	background-color: #fff;
	font-size: var(--fz-12);
	line-height: 1.4;
}
#gyousho #voice .voice_prof .header{
	display: grid;
	grid-template-columns: 80px auto 50px;
	align-items: center;
	gap: 12px;
	padding: 20px;
}
#gyousho #voice .voice_prof .header ul.tag_list{
	margin-bottom: 8px;
}
#gyousho #voice .voice_prof .header ul.tag_list li{
	background-color: var(--color-blue);
}
#gyousho #voice .voice_prof .contents{
	padding: 0 20px 20px 20px;
	text-align: justify;
	position: relative;
}
#gyousho #voice .voice_prof .contents .inner{
	padding-top: 12px;
	border-top: 1px solid #D9D7DB;
	min-width: unset !important;
}



/* faq
------------------------------------------------------------ */
#gyousho #faq{
	padding-block: 0;
	background-color: var(--color-light_gray);
}
#gyousho #faq h2{
	padding: 16px;
	background-color: var(--color-green);
	color: var(--color-white);
	font-size: var(--fz-30);
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	font-feature-settings: "palt";
}
#gyousho #faq .wrap{
	padding-block: 40px;
}

#gyousho #faq .faq > li{
	border-radius: 16px;
	border: 1px solid #EAEAEA;
	background-color: var(--color-white);
	overflow: hidden;
}
#gyousho #faq .faq > li + li{
	margin-top: 8px;
}

#gyousho #faq .faq .faq_q{
	display: grid;
	grid-template-columns: 30px 1fr 86px;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 25px 28px 15px;
	text-align: justify;
	text-align-last: left;
	cursor: pointer;
}
#gyousho #faq .faq .faq_q:before{
	align-self: self-start;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: url(./image/gyosho-icon-faq_q.svg) no-repeat left top 5px;
}
#gyousho #faq .faq .faq_q:after{
	content: '見る＋';
	display: grid;
	justify-content: center;
	margin-left: 3px;
	padding: 5px 8px;
	border-radius: 50px;
	background-color: var(--color-green);
	color: var(--color-white);
	font-size: var(--fz-16);
	font-weight: bold;
	line-height: 1.2;
}
#gyousho #faq .faq > li.open .faq_q:after{
	content: '閉じるー';
}

#gyousho #faq .faq .faq_a{
	display: grid;
	grid-template-columns: 30px 1fr;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	max-height: 0;
	margin-inline: 28px;
	text-align: justify;
	text-align-last: left;
	position: relative;
}
#gyousho #faq .faq .faq_a:before{
	align-self: self-start;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: url(./image/gyosho-icon-faq_a.svg) no-repeat left top 25px;
}
#gyousho #faq .faq .faq_a:after{
	content: '';
	display: block;
	height: 1px;
	background-color: #D9D7DB;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

#gyousho #faq .faq .faq_a .inner{
	min-width: unset;
	padding-top: 20px;
	padding-bottom: 28px;
	padding-inline: 0 !important;
}



/* flow
------------------------------------------------------------ */
#gyousho #flow{
	padding-block: 0;
}
#gyousho #flow h2{
	padding: 16px;
	background-color: var(--color-green);
	color: var(--color-white);
	font-size: var(--fz-30);
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	font-feature-settings: "palt";
}
#gyousho #flow .wrap{
	padding-block: 40px;
}

#gyousho #flow .flow_list{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
#gyousho #flow .flow_list .cell{
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	padding: 16px;
	height: 100%;
	border: 1px solid var(--color-green);
	font-size: var(--fz-12);
	line-height: 1.4;
}
#gyousho #flow .flow_list .cell .contents{
	display: flex;
	flex-flow: column nowrap;
	gap: 12px;
}
#gyousho #flow .flow_list h3{
	padding: 8px;
	background-color: var(--color-green);
	color: #fff;
	text-align: center;
	font-feature-settings: "palt";
}
#gyousho #flow .flow_list .boxs{
	display: flex;
	flex-flow: column nowrap;
	gap: 4px;
}
#gyousho #flow .flow_list .boxs li{
	padding: 6px;
	border: 1px solid var(--color-green);
	background-color: #fff;
	color: var(--color-green);
	font-size: var(--fz-12);
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}
#gyousho #flow .flow_list .fz_bigger{
	font-size: var(--fz-14);
	font-weight: normal;
	line-height: 1.5;
}
#gyousho #flow .flow_list .schedule{
	gap: 1px;
}
#gyousho #flow .flow_list .schedule .cell{
	padding: 5px;
	justify-content: flex-start;
	border: none;
	color: #fff;
	font-size: var(--fz-12);
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}
#gyousho #flow .flow_list .schedule .cell.orange{
	background-color: #F6AB00;
}
#gyousho #flow .flow_list .schedule .cell.blue{
	background-color: #7BB5E2;
}
#gyousho #flow .flow_list .schedule a{
	font-size: var(--fz-10);
}
#gyousho #flow .flow_list .footer{
	margin-top: 12px;
	height: 122px;
}

#gyousho #flow .expiration{
	margin-top: 40px;
	text-align: center;
}



/* notes
------------------------------------------------------------ */
#gyousho #notes{
	padding-block: 0;
}
#gyousho #notes h2{
	padding: 16px;
	background-color: var(--color-green);
	color: var(--color-white);
	font-size: var(--fz-30);
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	font-feature-settings: "palt";
}
#gyousho #notes .wrap{
	padding-bottom: 40px;
}

.gyousho-notes{
	display: flex;
	flex-flow: column nowrap;
	gap: 20px;
	max-width: 904px;
	margin-inline: auto;
	padding-block: 40px;
}
.gyousho-notes .header{
	font-feature-settings: "palt";
}
.gyousho-notes .header a{
	display: block;
	margin-top: 20px;
	font-size: var(--fz-18);
}
.gyousho-notes .expiration > div:first-child{
	padding: 8px;
	background-color: var(--color-red);
	color: var(--color-white);
	text-align: center;
}
.gyousho-notes .expiration > div:first-child span{
	display: block;
	margin-top: 4px;
}
.gyousho-notes .expiration > div:last-child{
	padding: 16px;
	background-color: #F7F7F7;
	color: var(--color-red);
	text-align: center;
}
.gyousho-notes .inner .header{
	margin-bottom: 4px;
	padding: 2px;
	background-color: #F4696A;
	color: var(--color-white);
	font-size: var(--fz-18);
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}
.gyousho-notes ul.list li{
	font-size: var(--fz-12) !important;
	text-align: justify;
}

#gyousho #notes .gyousho-notes{
	padding-block: 49px;
}
#gyousho #notes .gyousho-notes .inner{
	min-width: unset;
	padding-inline: 0;
}

/* prices
------------------------------------------------------------ */
#gyousho #prices{
	background-color: var(--color-light_gray);
}
#gyousho #prices > .wrap > hgroup{
	padding-bottom: 80px;
}



/* licences
------------------------------------------------------------ */
#gyousho #licences{
	background-color: var(--color-light_gray);
}
#gyousho #licences .wrap{
	max-width: 1024px;
	margin-inline: auto;
}
















/* media for PC
------------------------------------------------------------ */
@media (max-width: 1024px){

	#gyousho{
		--fz-40: 26px;
		--fz-30: 22px;
		--fz-22: 18px;
		--fz-18: 16px;
		--fz-16: 14px;
		--fz-14: 14px;
		--fz-12: 12px;
		--fz-10: 10px;
	}

	#gyousho .wrap{
		max-width: 768px;
		margin-inline: auto;
	}
	#gyousho #course .course_details > .wrap{
		max-width: min(768px, calc(100% - 16px * 2));
		margin-inline: auto;
	}

	#gyousho .pcOnly{ display: none; }
	#gyousho .spOnly{ display: block; }
	#gyousho :where(span).spOnly{ display: inline-block; }
	/* #gyousho .br{
		display: inline-block;
		margin-left: 0.5em;
	} */

	#gyousho > section[id] {
		padding-block: 40px;
		padding-inline: 16px;
	}

	#gyousho .rounded_container > .header{
		padding: 16px 40px 16px 16px;
		text-align: left;
	}

	#gyousho .rounded_container > .header > .fz_l{
		font-size: 14px;
	}
	#gyousho .rounded_container > .header > .fz_xl{
		font-size: 18px;
	}

	#gyousho .logo_gyousho{
		column-gap: 10px;
	}
	#gyousho .logo_gyousho img{
		width: 47px;
	}



	/* kv
	------------------------------------------------------------ */
	#gyousho #kv{
		padding: 20px 16px 16px;
	}
	#gyousho #kv > .wrap > .grid{
		grid-template-columns: 1fr;
	}
	#gyousho #kv > .wrap > .grid > .cell:nth-of-type(1){
		display: none;
	}

	#gyousho #kv .header{
		max-width: 254px;
		margin-inline: auto;
	}
	#gyousho #kv .btns{
		gap: 8px;
		margin-top: 13px;
	}
	#gyousho #kv .btn{
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 2px;
		padding: 4px!important;
		font-size: var(--fz-12) !important;
	}
	#gyousho #kv .btn:after{
		width: 16px;
		height: 16px;
	}
	#gyousho #kv .campaign{
		margin-top: 0;
	}



	/* anchor_links
	------------------------------------------------------------ */
	#gyousho #anchor_links{
		padding: 8px 16px;
	}
	#gyousho #anchor_links ul{
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 2px 20px;
		width: auto;
	}



	/* about
	------------------------------------------------------------ */
	#gyousho #about .contents{
		text-align: justify;
	}
	#gyousho #about .btns{
		grid-template-columns: 1fr;
	}


	/* feature
	------------------------------------------------------------ */
	#gyousho #feature hgroup{
		padding-bottom: 20px;
	}

	#gyousho #feature .flex .cell{
		width: 100%;
	}



	/* campaign
	------------------------------------------------------------ */
	#gyousho #early_campaign{
		padding: 0;
		background-color: #FFF4F4;
	}
	#gyousho #early_campaign .schedule{
		margin-top: 20px;
		margin-inline: 16px;
		padding: 8px;
	}

	#gyousho #early_campaign > .wrap > .contents{
		gap: 20px;
		padding: 20px 16px 40px;
	}

	#gyousho #early_campaign .sec_bonus > .header{
		grid-template-columns: 1fr;
		justify-items: center;
		padding-bottom: 20px;
	}
	#gyousho #early_campaign .sec_bonus > .header .circle{
		min-width: 100px;
		width: auto;
		height: auto;
		padding: 4px;
		border-radius: 50px;
		font-size: 16px;
	}

	#gyousho #early_campaign .sec_bonus > .header hgroup p{
		font-size: 14px;
	}
	#gyousho #early_campaign .sec_bonus:last-child > .header hgroup :where(h3, h3 *){
		font-size: 18px;
	}

	.gyousho-course{
		padding: 16px;
	}
	.notes-accordion + .gyousho-course,
	.notes-accordion + [data-template*="gyousho_course_"]{
		margin-top: 20px;
	}
	.gyousho-course .grid{
		grid-template-columns: 1fr;
	}

	.gyousho-price_container .contents{
		padding: 12px 8px 20px;
	}
	.gyousho-price_container .special{
		margin-inline: -8px;
	}
	.gyousho-price_container .price{
		font-size: 40px;
	}
	.gyousho-price_container .price small{
		font-size: 16px;
	}

	.gyousho-fullpackage_details .acc_cts .inner{
		padding: 10px 20px;
	}

	#gyousho #early_campaign .rounded_container{
		position: relative;
	}
	#gyousho #early_campaign .rounded_container .grid{
		grid-template-columns: 1fr;
		padding: 20px 16px;
	}
	#gyousho #early_campaign .rounded_container .grid > .cell:first-child{
		width: 49px;
		position: absolute;
		top: 16px;
		right: -12px;
	}
	#gyousho #early_campaign .rounded_container .btns .btn{
		display: block;
	}


	/* course
	------------------------------------------------------------ */
	#gyousho #course{
		padding-inline: 0;
	}
	#gyousho #course > hgroup{
		padding-block: 40px 20px;
	}

	#gyousho #course .course_details{
		padding-block: 20px;
	}
	#gyousho #course .course_details > .wrap > .header{
		padding-block: 9px;
		padding-right: 5px;
		text-align: left;
	}
	#gyousho #course .course_details.orange > .wrap > .header{
		padding-left: 75px;
	}
	#gyousho #course .course_details.blue > .wrap > .header{
		padding-left: 91px;
	}
	#gyousho #course .course_details > .wrap > .header p{
		font-size: 12px;
	}
	#gyousho #course .course_details > .wrap > .header h3{
		font-size: 20px;
	}
	#gyousho #course .course_details > .wrap > .header img{
		left: 0;
	}
	#gyousho #course .course_details.orange > .wrap > .header img{
		width: 84px;
		height: 92px;
	}
	#gyousho #course .course_details.blue > .wrap > .header img{
		width: 91px;
		height: 102px;
	}
	#gyousho #course .course_details > .wrap > .contents{
		padding: 20px 16px 20px;
	}
	#gyousho #course .course_details > .wrap > .contents > .acc_cts > .header p{
		margin-bottom: 20px;
	}
	#gyousho #course .course_details > .wrap > .contents > .acc_cts > .header p:not(.center){
		text-align: justify;
	}

	#gyousho #course .curriculum{
		padding-block: 20px;
	}
	#gyousho #course .curriculum + .grid{
		grid-template-columns: 1fr;
	}
	#gyousho #course .curriculum + .grid > .cell{
		padding: 13px 16px;
	}

	#gyousho #course .rounded_container > .header{
		text-align: center;
	}
	#gyousho #course .rounded_container > .header h5{
		display: block;
		text-align: center;
	}
	#gyousho #course .rounded_container > .header .rounded_square{
		display: inline-block;
		margin: 8px auto 0;
	}
	#gyousho #course .rounded_container > .contents > .grid{
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 20px 16px;
	}
	#gyousho #course .rounded_container > .contents .grid.sec_book > .cell:first-child .grid{
		justify-content: center;
		gap: 14px;
		width: 100%;
	}
	#gyousho #course .rounded_container > .contents .grid.sec_muteki .grid{
		grid-template-columns: repeat(2, auto);
	}
	#gyousho #course .rounded_container > .contents .grid.sec_muteki > .cell:first-child{
		width: 100%;
	}
	#gyousho #course .rounded_container > .contents .grid.sec_muteki > .cell:last-child{
		padding: 12px;
	}
	#gyousho #course .rounded_container > .contents .grid.sec_moshi > .cell:first-child img{
		width: 100%;
	}

	#gyousho #course .grid.plus_layout{
		grid-template-columns: 1fr;
		margin-bottom: 20px;
	}
	#gyousho #course .grid.plus_layout .cell{
		padding: 20px 16px;
	}
	#gyousho #course .grid.plus_layout .cell:first-child:after{
		top: 100%;
		left: 50%;
		transform: translate(-50%, -25%);
	}
	#gyousho #course .grid.plus_layout .profiles{
		display: grid;
		grid-template-columns: 90px auto;
		grid-template-rows: 3fr 4fr auto;
		column-gap: 12px;
		row-gap: 4px;
	}
	#gyousho #course .grid.plus_layout .profiles img{
		grid-column: 1 / 2;
    grid-row: 1 / 3;
		width: 90px;
	}
	#gyousho #course .grid.plus_layout .profiles .fz_l{
		grid-column: 2 / 3;
		grid-row: 1 / 2;
		align-self: self-end;
	}
	#gyousho #course .grid.plus_layout .profiles .fz_s{
		grid-column: 2 / 3;
		grid-row: 2 / 3;
		align-self: self-start;
		line-height: 1.2;
	}
	#gyousho #course .grid.plus_layout .profiles > :last-child{
		grid-column: 1 / 3;
		grid-row: 3 / 4;
		margin-top: -14px;
	}
	#gyousho #course .grid.plus_layout .btns .grid{
		grid-template-columns: 1fr;
		justify-items: center;
	}

	#gyousho #course .pickup .contents{
		padding: 20px 16px;
	}
	#gyousho #course .pickup .grid{
		display: flex;
		flex-flow: column-reverse;
		gap: 20px;
	}
	#gyousho #course .pickup .pickup_list{
		margin-top: 20px;
	}


	.notes-accordion{
		margin-top: 20px;
	}
	.notes-accordion > hgroup{
		gap: 7px;
		padding-block: 10px 16px;
	}
	.notes-accordion > hgroup h4{
		font-size: 14px !important;
	}
	.notes-accordion .notes_btn{
		grid-template-columns: auto 60px;
		gap: 4px;
		padding: 16px;
	}
	.notes-accordion .notes_btn > div:first-child{
		display: none;
	}
	.notes-accordion .notes_btn > div:last-child{
		width: 100%;
		height: auto;
	}
	.notes-accordion > .inner:not(:has(.notes_btn)){
		padding-inline: 16px;
	}



	/* support
	------------------------------------------------------------ */
	#gyousho #support .rounded_container.support > hgroup h3{
		text-align: left;
	}

	#gyousho #support .rounded_container.support > .contents{
		padding: 20px 16px;
	}

	#gyousho #support .rounded_container.support:nth-of-type(1) .grid{
		display: grid;
		grid-template-columns: 1fr;
	}
	#gyousho #support .rounded_container:where(.orange, .blue) .header{
		text-align: center;
	}
	#gyousho #support .rounded_container:where(.orange, .blue) .content{
		gap: 0;
		padding: 16px;
	}

	#gyousho #support .rounded_container.support .discount > .grid{
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
	}
	#gyousho #support .rounded_container.support .discount > .grid .cell:first-child{
		width: 100%;
	}
	#gyousho #support .rounded_container.support .discount > .grid .cell:last-child .grid{
		justify-content: center;
	  gap: 4px;
	}


	/* voice
	------------------------------------------------------------ */
	#gyousho #voice hgroup{
		padding-bottom: 20px;
	}
	#gyousho #voice hgroup + .contents > .grid{
		grid-template-columns: 1fr;
	}


	/* faq
	------------------------------------------------------------ */
	#gyousho #faq{
		padding: 0;
	}
	#gyousho #faq > .wrap{
		padding: 20px 16px;
	}

	#gyousho #faq .faq .faq_q{
		padding: 16px;
	}
	#gyousho #faq .faq .faq_a{
		margin-inline: 16px;
	}
	#gyousho #faq .faq .faq_a .inner{
		padding-block: 16px;
	}


	/* flow
	------------------------------------------------------------ */
	#gyousho #flow{
		padding: 0;
	}
	#gyousho #flow > .wrap{
		padding: 20px 16px;
	}
	#gyousho #flow .flow_list{
		grid-template-columns: 1fr;
	}
	#gyousho #flow .flow_list .footer img{
		max-height: 100%;
		width: auto;
		margin-inline: auto;
	}

	#gyousho #flow .expiration{
		margin-top: 20px;
	}
	#gyousho #flow .expiration span{
		display: block;
	}


	/* notes
	------------------------------------------------------------ */
	#gyousho #notes{
		padding: 0;
	}
	#gyousho #notes > .wrap{
		padding: 20px 16px;
	}

	#gyousho #notes .gyousho-notes{
		padding-block: 0;
	}

	.gyousho-notes{
		padding-block: 16px;
	}
	.gyousho-notes .header br{
		display: none;
	}



	/* prices
	------------------------------------------------------------ */
	#gyousho #prices{
		padding: 0;
	}
	#gyousho #prices > .wrap{
		padding: 40px 16px;
	}
	#gyousho #prices > .wrap > hgroup{
		margin-inline: -16px;
		padding-bottom: 40px;
	}
	#gyousho #prices .gyousho-course hgroup{
	}


	/* licences
	------------------------------------------------------------ */








} /* @media (PC)*/


