@charset "utf-8";
@import "cmn_reset.css";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');

/* ---------------------------------------------------------

	dekirubiyori.com
	Date: 2020.04.01

	01. 基礎設計
	02. ページ構成
	03. ヘッダー
	04. ナビゲーション
	05. フッター
	06. モジュール
	07. ホームページ
	08. 商品紹介
	09. セミナー紹介
	10. ひろば
	11. 会社概要
	12. フォーム
	13. プライバシーポリシー
	14. 教材業者様
	15. モニター募集要項

--------------------------------------------------------- */

/* ---------------------------------------------------------

	01. 基礎設計

--------------------------------------------------------- */
html {
	color: #333;
	font-size: 2.667vw; /* 10/375px*100 */
	font-family: 'Noto Sans JP', sans-serif;
	height: 100%;
	position: relative;
	-webkit-font-smoothing: antialiased;
}

body {
	background-color: #fff;
	font-size: 1.7rem;
	height: 100%;
}

main a {
	color: #ed9944;
}
.device_pc main a:hover {
	text-decoration: none;
}
.device_pc main a[href^="tel:"] {
	color: inherit;
	pointer-events: none;
	text-decoration: none;
}
.page_products a,
.products_child a {color: #62b1d8;}
.page_seminar a,
.seminar_child a {color: #e3bd3c;}
.page_hiroba a,
.hiroba_child a {color: #71c39e;}

.font_serif {
	font-family: 'Noto Serif JP', serif;
}

/*===============================================
	基礎設計：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.only_pc {display: none;} /* PC時のみ表示する要素に */
}

/*===============================================
	基礎設計：768px以上
===============================================*/
@media screen and (min-width:768px) {
	html {font-size: 0.7142vw;} /* 10/768px*100 */
	.only_sp {display: none;} /* SP時のみ表示する要素に */
}

/*===============================================
	基礎設計：1400px以上
===============================================*/
@media screen and (min-width:1400px) {
	html {font-size: 10px;}
}



/* ---------------------------------------------------------

	02. ページ構成

--------------------------------------------------------- */
.wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	overflow: hidden;
	padding-top: 5.6rem;
	position: relative;
	width: 100%;
}

main {
	flex: 1;
}

.cmn_container {
	margin: 0 auto;
	padding: 0 2.5rem;
	position: relative;
	width: 100%;
}

/*===============================================
	ページ構成：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.wrapper {
		min-height: 100%;
		min-width: 100%;
		padding-top: 9.8rem;
	}

	.cmn_container {
		padding: 0 20.0rem;
	}

	.cmn_contents_wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.cmn_contents_wrap .cmn_title_page {width: 100%;}
	.cmn_contents_main {width: 67%;}
	.cmn_contents_side {width: 26%;}
}

/*===============================================
	ページ構成：1400px以上
===============================================*/
@media screen and (min-width:1400px) {
	.cmn_container {
		max-width: 1400px;
	}
}



/* ---------------------------------------------------------

	03. ヘッダー

--------------------------------------------------------- */
header {
	background-color: #fff;
	border-bottom: 0.1rem solid #efefef;
	display: flex;
	align-items: center;
	height: 5.6rem;
	padding: 0 0 0.3rem 1.8rem;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
}

.header_logo {
	width: 52%;
}
.header_logo a {
	background: url(../img/common/cmn_logo.svg?data=20220822) center/contain no-repeat;
	display: block;
	height: 0;
	overflow: hidden;
	padding-top: 18.87%;
	text-indent: 100%;
	white-space: nowrap;
}
.device_pc .header_logo a {transition: opacity 0.25s;}
.device_pc .header_logo a:hover {opacity: 0.7;}

.header_switch {
	background: transparent;
	border: none;
	display: block;
	font-size: 1.2rem;
	height: calc(3rem + 1em);
	padding: 2.6rem 0 0;
	position: absolute;
	top: 0.6em;
	right: 1.8rem;
	width: 3.6rem;
}
.header_switch::before,
.header_switch::after,
.header_switch span::before,
.header_switch span::after {
	content: '';
	background-color: #f7ad6d;
	border-radius: 0.4rem;
	display: block;
	height: 0.4rem;
	position: absolute;
	left: 10%;
	transition: opacity 0.2s, transform 0.2s;
	width: 90%;
}
.header_switch::before,
.header_switch::after {top: 1.2rem;}
.header_switch span::before {top: 0.4rem;}
.header_switch span::after {top: 2rem;}

.header_switch.is-open::before {transform: rotate(-45deg);}
.header_switch.is-open::after {transform: rotate(45deg);}
.header_switch.is-open span::before,
.header_switch.is-open span::after {opacity: 0;}

/*===============================================
	ヘッダー：768px以上
===============================================*/
@media screen and (min-width:768px) {
	header {
		justify-content: space-between;
		height: 9.8rem;
		padding: 0 0 0 3.5rem;
	}
	.header_logo {
		width: 28.7rem;
	}

	.header_switch {display: none;}
}



/* ---------------------------------------------------------

	04. ナビゲーション

--------------------------------------------------------- */
nav {
	background-color: #fcfbf9;
	height: calc(100vh - 5.6rem);
	opacity: 0;
	overflow-y: auto;
	padding: 2.5rem 2.0rem 5.0rem;
	position: fixed;
	top: 5.6rem;
	left: 0;
	transition: opacity 0.2s, visibility 0.2s;
	visibility: hidden;
	width: 100%;
}
nav.is-open {
	opacity: 1;
	visibility: visible;
}

.header_menu > li {
	border-bottom: 0.1rem solid #efefef;
}
.header_menu > li > a {
	color: #333;
	display: flex;
	align-items: center;
	font-size: 1.8rem;
	font-weight: bold;
	height: 3.0em;
	position: relative;
	text-decoration: none;
}
.header_menu > li.header_acc > a::before,
.header_menu > li.header_acc > a::after {
	content: '';
	background-color: #f7ad6d;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.header_menu > li.header_acc > a::before {
	height: 0.1rem;
	right: 0.5rem;
	width: 1.6rem;
}
.header_menu > li.header_acc > a::after {
	height: 1.6rem;
	right: 1.2rem;
	transition: transform 0.25s;
	width: 0.1rem;
}
.header_menu > li.header_acc > a.is-open::after {
	transform: translateY(-50%) rotate(90deg);
	transform-origin: center;
}

.header_menu > li.header_noacc > a::before {
	content: '';
	border-top: 0.1rem solid #f7ad6d;
	border-right: 0.1rem solid #f7ad6d;
	display: block;
	height: 1.0rem;
	position: absolute;
	top: 50%;
	right: 1.0rem;
	transform: rotate(45deg) translate(-20%, -40%);
	width: 1.0rem;
}

.header_submenu_wrap {display: none;}
.header_submenu {
	padding: 0.5rem 0 2.5rem;
}
.header_submenu a {
	color: #333;
	line-height: 2.0;
	text-decoration: none;
}
.header_submenu a::before {
	content: '・';
}
.header_submenu a img {display: none;}

.header_utility {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 3.5rem;
}
.header_utility li {
	background-color: #fff;
	border: 0.1rem solid #efefef;
	width: 31%;
}
.header_utility a {
	background-position: center 1.0rem;
	background-repeat: no-repeat;
	background-size: auto 3.0rem;
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	font-weight: bold;
	height: 100%;
	line-height: 1.2;
	padding: 4.5rem 0 1.0rem;
	text-align: center;
	text-decoration: none;
}
.header_shop a {background-image: url(../img/common/cmn_ico_shop.svg);}
.header_contact a {background-image: url(../img/common/cmn_ico_contact.svg);}
.header_distributor a {background-image: url(../img/common/cmn_ico_distributor.svg);}

/*===============================================
	ナビゲーション：768px以上
===============================================*/
@media screen and (min-width:768px) {
	nav {
		background-color: transparent;
		display: flex;
		align-items: center;
		height: 100%;
		opacity: 1;
		overflow-y: visible;
		padding: 0;
		position: static;
		transition: none;
		visibility: visible;
		width: auto;
	}

	.header_menu {
		display: flex;
		align-items: flex-end;
		height: 100%;
		margin-right: 2.5em;
	}
	.header_menu > li {
		border-bottom: none;
		display: flex;
		height: 60%;
	}
	.header_menu > li > a {
		align-items: flex-start;
		height: 100%;
		padding: 0 1.2em;
	}
	.header_menu > li.header_acc > a::before,
	.header_menu > li.header_acc > a::after,
	.header_menu > li.header_noacc > a::before {display: none;}

	.device_pc .header_menu > li > a {transition: color 0.25s;}
	.device_pc .header_products:hover > a {color: #62b1d8;}
	.device_pc .header_seminar:hover > a {color: #e3bd3c;}
	.device_pc .header_yomimono:hover > a {color: #fab670;}
	.device_pc .header_hiroba:hover > a {color: #71c39e;}
	.device_pc .header_faq:hover > a {color: #777;}

	.header_submenu_wrap {
		display: flex;
		justify-content: center;
		opacity: 0;
		padding: 1.5rem 0;
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		transition: opacity 0.25s, visibility 0.25s;
		visibility: hidden;
		width: 100%;
	}
	.header_acc:hover .header_submenu_wrap {
		opacity: 1;
		visibility: visible;
	}
	.header_products .header_submenu_wrap {background-color: rgba(155,206,230,0.9);}
	.header_seminar .header_submenu_wrap {background-color: rgba(245,212,102,0.9);}
	.header_hiroba .header_submenu_wrap {background-color: rgba(163,215,192,0.9);}

	.header_submenu {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 auto;
		max-width: 1207px;
		padding: 0;
		width: 100%;
	}
	.header_products .header_submenu {
		justify-content: flex-start;
	}
	.header_submenu li {
		flex-basis: 17.5%;
		margin: 0 1.08%;
	}
	.header_submenu li:nth-child(n+6) {
		margin-top: 2rem;
	}
	.header_submenu a {
		display: block;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.0;
		text-align: center;
	}
	.header_submenu a::before {display: none;}
	.header_submenu a img {
		display: block;
		margin-bottom: 0.6em;
	}
	.device_pc .header_submenu a {transition: opacity 0.25s;}
	.device_pc .header_submenu a:hover {opacity: 0.8;}

	.header_utility {
		display: flex;
		justify-content: flex-start;
		height: 100%;
		margin-top: 0;
	}
	.header_utility li {
		border: none;
		border-left: 0.1rem solid #efefef;
		height: 100%;
		width: 9.8rem;
	}
	.header_utility a {
		background-position: center 1.5rem;
		font-size: 1.4rem;
		height: 100%;
		padding: 4.5rem 0 0.5rem;
	}
	.device_pc .header_utility a {transition: color 0.25s, opacity 0.25s;}
	.device_pc .header_utility a:hover {
		color: #f7ad6d;
		opacity: 0.8;
	}
}

/*===============================================
	ナビゲーション：1200px以上
===============================================*/
@media screen and (min-width:1200px) {
	.header_submenu li {
		flex-basis: 14.5%;
	}
	.header_submenu li:nth-child(n+6) {
		margin-top: 0;
	}
	.header_submenu li:nth-child(n+7) {
		margin-top: 2rem;
	}
}



/* ---------------------------------------------------------

	05. フッター

--------------------------------------------------------- */
footer {
	margin-top: 7.0rem;
}
.footer_index {
	padding: 3.0rem 0;
	position: relative;
	z-index: 0;
}
.footer_index::before {
	content: '';
	background-color: #fdf6ef;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	z-index: -1;
}

.footer_logo {
	margin-bottom: 2.0rem;
	width: 52%;
}
.footer_logo a {
	background: url(../img/common/cmn_logo.svg) center/contain no-repeat;
	display: block;
	height: 0;
	overflow: hidden;
	padding-top: 18.87%;
	text-indent: 100%;
	white-space: nowrap;
}
.device_pc .footer_logo a {transition: opacity 0.25s;}
.device_pc .footer_logo a:hover {opacity: 0.7;}

.footer_utility {
	margin-bottom: 3.0rem;
}
.footer_utility a {
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 70%;
	color: #333;
	font-size: 1.6rem;
	line-height: 2.0;
	padding-left: 1.7em;
	text-decoration: none;
}
.footer_mm a {background-image: url(../img/common/cmn_ico_mm.svg);}
.footer_shop a {background-image: url(../img/common/cmn_ico_shop.svg);}
.footer_contact a {background-image: url(../img/common/cmn_ico_contact.svg);}
.footer_distributor a {background-image: url(../img/common/cmn_ico_distributor.svg);}

.footer_menu > li:not(:last-child) {display: none;}
.footer_menu a {
	color: #333;
	font-size: 1.4rem;
	text-decoration: none;
}

.footer_submenu li a::before {
	content: '・';
}

.footer_other .footer_submenu {
	display: flex;
}
.footer_other .footer_submenu li + li {
	margin-left: 2em;
}

.footer_history {
	margin-top: 2.0rem;
}
.footer_history a {
	background: #fff url(../img/common/cmn_ico_history.svg) 90% center/auto 4.0rem no-repeat;
	border: 0.2rem solid #ed9944;
	border-radius: 0.6rem;
	color: #ed9944;
	display: block;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 1.2rem 2.0rem;
	width: 19.0rem;
}
.footer_history a::before {display: none;}
.footer_history strong {
	display: block;
	font-size: 1.9rem;
}
.device_pc .footer_history a {transition: opacity 0.25s;}
.device_pc .footer_history a:hover {opacity: 0.8;}

.footer_copyright {
	font-size: 1.2rem;
	padding: 2.0rem 0;
	text-align: center;
}

/*===============================================
	フッター：768px以上
===============================================*/
@media screen and (min-width:768px) {
	footer {
		margin-top: 14.0rem;
	}

	.footer_index {
		display: flex;
		justify-content: space-between;
		padding: 5.0rem 0;
	}

	.footer_logo {
		margin-bottom: 2.5rem;
		width: 16.4rem;
	}

	.footer_utility {
		margin-bottom: 0;
	}
	.device_pc .footer_utility a:hover {color: #f7ba86;}

	.footer_menu {
		display: flex;
		justify-content: space-between;
	}
	.footer_menu > li:not(:last-child) {display: block;}
	.footer_menu > li + li {
		margin-left: 3.0em;
	}
	.footer_menu h3 {
		margin-bottom: 0.6em;
	}
	.footer_menu h3:not(:first-child) {
		margin-top: 1.2em;
	}
	.device_pc .footer_menu a:hover {color: #f7ba86;}

	.footer_submenu a {
		line-height: 2.0;
	}

	.footer_other .footer_submenu {display: block;}
	.footer_other .footer_submenu li + li {margin-left: 0;}

	.footer_history {
		margin-top: 3.0rem;
	}

	.footer_copyright {
		padding: 3.0rem 0;
	}
}



/* ---------------------------------------------------------

	06. モジュール

--------------------------------------------------------- */

/* タイトル類
--------------------------------------------------------- */
.cmn_title_page {
	color: #ed9944;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin: 6.0rem 0;
	text-align: center;
}
.page_products .cmn_title_page,
.products_child .cmn_title_page {color: #62b1d8;}
.page_seminar .cmn_title_page,
.seminar_child .cmn_title_page {color: #e3bd3c;}
.page_hiroba .cmn_title_page,
.hiroba_child .cmn_title_page,
.tax-column_category .cmn_title_page,
.tax-column_keyword .cmn_title_page,
.tax-column_author .cmn_title_page,
.single-hiroba_column .cmn_title_page,
.single-hiroba_qanda .cmn_title_page {color: #71c39e;}
.page_qanda .cmn_title_page,
.tax-qanda_category .cmn_title_page,
.tax-qanda_keyword .cmn_title_page,
.tax-qanda_author .cmn_title_page,
.single-hiroba_qanda .cmn_title_page,
.single-hiroba_qanda .cmn_title_page {color: #86b74c;}

.cmn_title_tryangle,
.temp_page h2 {
	background: left top/3.8rem no-repeat;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.7;
	margin: 6.0rem 0 2.0rem;
	padding: 1.0rem 0 0 2.0rem;
}
.cmn_title_tryangle,
.temp_page h2,
.cmn_title_tryangle {background-image: url(../img/common/ico_triangle_biyori.svg);}
.page_products .cmn_title_tryangle,
.page_products .temp_page h2,
.products_child .cmn_title_tryangle,
.products_child .temp_page h2 {background-image: url(../img/common/ico_triangle_products.svg);}
.page_seminar .cmn_title_tryangle,
.page_seminar .temp_page h2,
.seminar_child .cmn_title_tryangle,
.seminar_child .temp_page h2 {background-image: url(../img/common/ico_triangle_seminar.svg);}
.page_hiroba .cmn_title_tryangle,
.page_hiroba .temp_page h2,
.hiroba_child .cmn_title_tryangle,
.hiroba_child .temp_page h2 {background-image: url(../img/common/ico_triangle_hiroba.svg);}

.temp_page h3 {
	color: #ed9944;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.6;
}
.temp_page h3:not(:first-child) {margin-top: 0.8em;}
.temp_page .wp-block-columns + h3,
.temp_page .wp-block-image + h3 {margin-top: 2em;}
:where(.page_products) .temp_page h3,
:where(.products_child) .temp_page h3 {color: #62b1d8;}
:where(.page_seminar) .temp_page h3,
:where(.seminar_child) .temp_page h3 {color: #e3bd3c;}
:where(.page_hiroba) .temp_page h3,
:where(.hiroba_child) .temp_page h3 {color: #71c39e;}
.page_seminar .temp_page h3 {color: #333;}

.temp_page h4 {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 1.0em;
}

/*===============================================
	タイトル類：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_title_page {
		font-size: 4.5rem;
		margin: 10.0rem 0 14.0rem;
	}

	.cmn_title_tryangle,
	.temp_page h2 {
		font-size: 3.0rem;
		line-height: 1.5;
		margin: 12.0rem 0 5.0rem;
	}

	.temp_page h3 {
		font-size: 2.4rem;
		line-height: 1.7;
	}
	.temp_page h3:not(:first-child) {margin-top: 1em;}
	.temp_page .wp-block-columns + h3,
	.temp_page .wp-block-image + h3 {margin-top: 2.5em;}
	.temp_page p + h3 {margin-top: 1.2em;}

	.temp_page h4 {
		font-size: 2.0rem;
		line-height: 1.7;
		margin-bottom: 1.25em;
	}
}

/* テキスト類
--------------------------------------------------------- */
.cmn_contents p {
	line-height: 2.0;
}
.cmn_contents * + p,
.cmn_contents h3 + .wp-block-columns {
	margin-top: 0.75em;
}
.cmn_contents * + ul,
.cmn_contents * + .wp-block-image,
.cmn_contents ul + .wp-block-columns {
	margin-top: 1.5em;
}
.cmn_contents p + .wp-block-columns {
	margin-top: 2em;
}
.cmn_contents h3 + p {
	margin-top: 0.8em;
}

.cmn_list li {
	line-height: 1.6;
	padding-left: 1em;
	text-indent: -1em;
}
.cmn_list li + li {
	margin-top: 0.6em;
}

.wp-block-image figcaption {
	line-height: 1.6;
}

/* ボタン：標準・商品・セミナー・ひろば
--------------------------------------------------------- */
.cmn_btn {
	margin-top: 3.0rem;
	text-align: center;
}
.cmn_btn a {
	background-color: #fab670;
	border-radius: 0.6rem;
	color: #333;
	display: inline-block;
	font-weight: bold;
	line-height: 1.4;
	min-width: 27.8rem;
	padding: 1.6rem 3.0rem;
	position: relative;
	text-align: center;
	text-decoration: none;
}
.cmn_btn_products a {background-color: #9bcee6;}
.cmn_btn_seminar a {background-color: #f5d466;}
.cmn_btn_hiroba a {background-color: #a3d7c0;}
.cmn_btn a::before {
	content: '';
	border-top: 0.1rem solid #333;
	border-right: 0.1rem solid #333;
	display: block;
	height: 0.8rem;
	position: absolute;
	top: 50%;
	right: 1.2rem;
	transform: translateY(-40%) rotate(45deg);
	width: 0.8rem;
}
.device_pc .cmn_btn a {transition: opacity 0.25s;}
.device_pc .cmn_btn a:hover {opacity: 0.8;}

/* 番号リスト
--------------------------------------------------------- */
.temp_page ol {
	line-height: 1.5;
	margin-left: 2em;
}
.temp_page ol li {
	list-style: decimal;
	list-style-position: outside;
}
.temp_page ol li::marker {
	font-weight: bold;
}

/*===============================================
	記事：リスト：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.temp_page ol {line-height: 1.7;}
}

/* 記事：リスト
--------------------------------------------------------- */
.cmn_news_list li {
	border-bottom: 0.1rem dotted #b2b2b2;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.6rem;
	padding: 1em 0;
}
.cmn_news_list li:first-child {
	border-top: 0.1rem dotted #b2b2b2;
}
.cmn_news_list p {
	line-height: 1;
}
.cmn_news_list li p + p {
	margin-top: 0;
}
.cmn_news_date {
	border-right: 0.1rem solid #b2b2b2;
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	padding-right: 0.5em;
	width: 6em;
}
.cmn_news_category {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	font-weight: bold;
	padding: 0 0.5em;
	width: calc(100% - 6em);
}
.cmn_news_category_inner {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.cmn_news_list .cmn_news_title {
	line-height: 1.6;
	margin-top: 0.5em;
	width: 100%;
}
.cmn_news_title a {
	color: #333;
	text-decoration: none;
}
.device_pc .cmn_news_title a {transition: opacity 0.25s;}
.device_pc .cmn_news_title a:hover {opacity: 0.8;}

.cmn_img_border img {
	border: 1px solid #ccc;
}

/*===============================================
	記事：リスト：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_news_list li {
		flex-wrap: nowrap;
		font-size: 1.7rem;
		padding: 1.2em 0.6em;
	}
	.cmn_news_list p {
		line-height: 1.6;
	}
	.cmn_news_date {
		padding-right: 1em;
		width: auto;
	}
	.cmn_news_category {
		border-right: 0.1rem solid #b2b2b2;
		padding: 0 1em;
	}
	.home_news_list .cmn_news_category {
		border-right: none;
		max-width: 11.1em;
		width: auto;
	}
	.news_news_list .cmn_news_category {width: 8.1em;}
	.yomimono_news_list .cmn_news_category {width: 11.1em;}
	.cmn_news_list .cmn_news_title {
		margin-top: 0;
		padding-left: 1em;
	}
}

/* 記事：ページネーション
--------------------------------------------------------- */
.cmn_news_pagination {
	margin-top: 3em;
}
.cmn_news_pagination ul {
	letter-spacing: -.5em;
	text-align: center;
}
.cmn_news_pagination li {
	display: inline-block;
	letter-spacing: normal;
	margin-bottom: 0.5rem;
}
.cmn_news_pagination li + li {
	margin-left: 0.5rem;
}
.cmn_news_pagination li > a,
.cmn_news_pagination li > span {
	background-color: #fdf6ef;
	border-radius: 0.6rem;
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 4rem;
	min-width: 4rem;
	padding: 0 1rem;
	text-decoration: none;
}
.cmn_news_pagination .current,
.device_com .cmn_news_pagination a:hover {
	background-color: #fab670;
	color: #fff;
}

/* 記事：サイドメニュー
--------------------------------------------------------- */
.cmn_contents_side {
	margin-top: 5.0rem;
}
.cmn_contents_side .cmn_side_title {
	border-bottom: 0.1rem solid #ed9944;
	color: #ed9944;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0 0 1em;
	padding: 0 0 0.5em;
}
.cmn_contents_side .cmn_side_list + .cmn_side_title {
	margin-top: 3em;
}
.cmn_contents_side .cmn_side_list {
	margin-top: 1em;
}
.cmn_side_list li + li {
	margin-top: 0.5em;
}
.cmn_side_list a {
	color: #333;
	display: inline-block;
	font-feature-settings: 'palt';
	line-height: 1.4;
	padding-left: 2.0rem;
	position: relative;
	text-decoration: none;
}
.cmn_side_list a::before {
	content: '';
	border-top: 0.3rem solid #ed9944;
	border-right: 0.3rem solid #ed9944;
	display: block;
	height: 0.8rem;
	position: absolute;
	top: 0.6em;
	left: 0;
	transform: rotate(45deg);
	width: 0.8rem;
}

.cmn_side_banner_wrap {
	margin-top: 3em;
}
.cmn_side_banner a {
	background-position: right center;
	background-repeat: no-repeat;
	background-size: auto 102%;
	border: 0.4rem solid;
	border-radius: 0.6rem;
	display: block;
	padding: 0.8em;
	text-decoration: none;
}
.cmn_side_banner a {
	font-size: 2.4rem;
	font-weight: bold;
}

.cmn_side_column a {
	background-image: url(../img/hiroba/bg_bnr_column.jpg);
	border-color: #afddc6;
	color: #6fbea6;
}
.cmn_side_qanda a {
	background-image: url(../img/hiroba/bg_bnr_qanda.jpg);
	border-color: #bfde9b;
	color: #86b74c;
}
.cmn_side_hiroba a {
	background-image: url(../img/hiroba/bg_bnr_examples.jpg);
	border-color: #afddc6;
	color: #6fbea6;
}

.cmn_side_mm_wrap {
	margin: 0 0 2em;
}
.cmn_side_mm a {
	background-image: url(../img/mail-magazine/mm_bnr.jpg);
	border-color: #fab670;
	color: #ed9944;
}

/*===============================================
	記事：サイドメニュー：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_contents_side {
		margin-top: 0;
	}
	.cmn_contents_side .cmn_side_title {
		font-size: 2rem;
		margin: -0.2em 0 1em;
	}
	.cmn_contents_side .cmn_side_list + .cmn_side_title {
		margin-top: 3em;
	}
	.cmn_side_list li + li {
		margin-top: 0.8em;
	}
}

/* 記事：詳細
--------------------------------------------------------- */
.cmn_post_wrap {
	border-bottom: 0.1rem dotted #b2b2b2;
	margin-bottom: 4.0rem;
	padding-bottom: 4.0rem;
}
.cmn_post_heading {
	background-color: #fffdfa;
	border-top: 0.1rem dotted #b2b2b2;
	border-bottom: 0.1rem dotted #b2b2b2;
	margin-bottom: 2em;
	padding: 2rem 1.5rem 2.5rem;
}
.cmn_post_heading_info {
	display: flex;
	align-items: center;
	font-size: 1.6rem;
	line-height: 1.6;
}
.cmn_post_cat {
	border-right: 0.1rem solid #707070;
	border-left: 0.1rem solid #707070;
	font-size: 1.5rem;
	margin-left: 0.8em;
	padding: 0 0.8em;
}
.cmn_post_title {
	color: #ed9944;
	font-feature-settings: 'palt';
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.7;
	margin-bottom: 0.8em;
}

.cmn_post_wrap h2 {
	border-bottom: 0.1rem dotted #b2b2b2;
	font-size: 2.0rem;
	font-weight: bold;
	padding-bottom: 0.8em;
}
.cmn_post_wrap * + h2 {margin-top: 2em;}
.yomimono_post_wrap h2 {color: #ed9944;}
.hiroba_post_wrap h2 {color: #71c39e;}

.cmn_post_wrap h3 {
	border-left: 6px solid #fab670;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.8;
	margin-block: 1.5em 0.5em;
	padding-left: 0.5em;
	padding-bottom: 0.15em;
}

.cmn_post_wrap ul,
.cmn_post_wrap ol {
	line-height: 1.75;
	margin-block: 1.5em;
}
.cmn_post_wrap ul li {
	padding-left: 1em;
	text-indent: -1em;
}
.cmn_post_wrap ul li::before {
	content: '・';
	color: #ed9944;
	font-weight: bold;
}
.cmn_post_wrap ul li:not(:first-child),
.cmn_post_wrap ol li:not(:first-child) {margin-top: 0.5em;}

.cmn_post_wrap ol {
	counter-reset: ol_number;
}
.cmn_post_wrap ol li {
	counter-increment: ol_number;
	padding-left: 2em;
	text-indent: -2em;
}
.cmn_post_wrap ol li::before {
	content: counter(ol_number);
	background-color: #ed9944;
	border-radius: 1em;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	font-weight: bold;
	height: 1.5em;
	margin-right: 0.5em;
	text-indent: 0;
	width: 1.5em;
}

.cmn_post_wrap figure {
	margin-block: 1.5em;
}
.cmn_post_wrap figcaption {
	color: #666;
	font-size: 1.5rem;
	line-height: 1.5;
	margin-top: 0.5em;
	text-align: left;
}

.cmn_post_wrap table {
	font-size: 1.6rem;
	line-height: 1.6;
	text-align: left;
	width: 100%;
}
.cmn_post_wrap table thead th {
	background-color: #ffe8d2;
	border-color: #ed9944;
	font-weight: normal;
	padding: 0.5em;
}
.cmn_post_wrap table tbody td {
	background-color: #fff;
	border-color: #ed9944;
	padding: 0.5em;
}
.cmn_post_wrap .is-style-stripes table tbody tr:nth-child(even) td {background-color: #f2f2f2;}
.cmn_post_wrap table tfoot td {
	background-color: #ffdddd;
	border-color: #ed9944;
	padding: 0.5em;
}

/*===============================================
	記事：詳細：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_post_heading {margin-bottom: 2.3em;}

	.cmn_post_title {font-size: 2.4rem;}

	.cmn_post_wrap * + h2 {margin-top: 2.5em;}

	.cmn_post_wrap h3 {margin-block: 1.75em 0.75em;}
	.cmn_post_wrap figure {margin-block: 2em;}
	.cmn_post_wrap table {font-size: 1.7rem;}
	.cmn_post_wrap table thead th,
	.cmn_post_wrap table tbody td,
	.cmn_post_wrap table tfoot td {padding: 0.75em;}
}

/* ボタン：ページトップ
--------------------------------------------------------- */
.cmn_pagetop {
	background-color: #fff;
	border-radius: 50%;
	height: 4.0rem;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	bottom: 0.5rem;
	right: 1.0rem;
	transition: opacity 0.25s;
	z-index: 10;
	width: 4.0rem;
}
.cmn_pagetop.is-show {
	opacity: 1;
	pointer-events: auto;
}
.cmn_pagetop a {
	background-color: #f7ad6d;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.cmn_pagetop img {
	max-width: 2.0rem;
}
.device_pc .cmn_pagetop a {transition: opacity 0.25s;}
.device_pc .cmn_pagetop a:hover {opacity: 0.8;}

/*===============================================
	ボタン：ページトップ：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_pagetop {
		height: 5.0rem;
		bottom: 1.0rem;
		right: 2.0rem;
		width: 5.0rem;
	}
}

/* YouTube埋め込み
--------------------------------------------------------- */
.cmn_contents .wp-block-embed-youtube {
	margin: 2.6rem 0 0;
}
.cmn_contents .wp-block-embed-youtube:not(:last-child) {
	margin-bottom: 2.6rem;
}
.cmn_contents .wp-block-embed-youtube .wp-block-embed__wrapper {
	height: 0;
	padding-top: 56.25%;
	position: relative;
}
.cmn_contents .wp-block-embed-youtube .wp-block-embed__wrapper iframe {
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

/* accordion
--------------------------------------------------------- */
.js-acc_panel {display: none;}

/* tab
--------------------------------------------------------- */
.js-tab_panel {display: none;}
.js-tab_panel.is-active {display: block;}

/* ブロックエディタ：カラム
--------------------------------------------------------- */
.cmn_contents .wp-block-group {
	margin-top: 3.2rem;
}
.cmn_contents .wp-block-columns {
	margin-bottom: 0;
}
.cmn_contents .wp-block-columns + .wp-block-columns {
	margin-top: 4rem;
}
.cmn_contents .wp-block-column:nth-child(2n) {
	margin-left: 0;
}
.cmn_contents .wp-block-column + .wp-block-column {
	/* margin-top: 3rem; */
}

.cmn_contents .wp-block-columns .wp-block-image {
	margin: 0;
}
.cmn_contents .wp-block-columns .wp-block-image + .wp-block-image {
	margin-top: 1em;
}

/*===============================================
	ブロックエディタ：カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_contents .wp-block-column {
		flex-basis: 100% !important;
	}
}

/*===============================================
	ブロックエディタ：カラム：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_contents .wp-block-columns {
		margin-bottom: 0;
	}
	.cmn_contents .wp-block-column {
		flex-basis: 48%;
	}
	.cmn_contents .wp-block-columns + .wp-block-columns {
		margin-top: 6.0rem;
	}
	.cmn_contents .wp-block-column:nth-child(2n) {
		/* margin-left: 4%; */
	}
	.cmn_contents .wp-block-column + .wp-block-column {
		margin-top: 0;
	}
}

/* ブロックエディタ：ボタン
--------------------------------------------------------- */
.cmn_contents .wp-block-button {
	margin-top: 3.0rem;
}
.cmn_contents .wp-block-button__link {
	font-size: 1.8rem;
	font-weight: bold;
	padding: 1.6rem 3rem 1.6rem 2rem;
}
.device_pc .cmn_contents .wp-block-button__link {transition: opacity 0.25s;}
.device_pc .cmn_contents .wp-block-button__link:hover {opacity: 0.8;}

.cmn_contents .wp-block-image {
	margin-right: 0;
	margin-left: 0;
}

.cmn_contents .wp-block-buttons .wp-block-button__link.cmn_button_pdf {
	padding: 0 0.5em;
}
.cmn_contents .cmn_button_pdf::before {
	content: '';
	background: url(../img/common/cmn_ico_pdf.svg) center/contain no-repeat;
	height: 1.5em;
	margin-right: 0.3em;
	width: 1.5em;
}

/*===============================================
	ブロックエディタ：ボタン：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_contents .wp-block-button {
		margin-top: 5.0rem;
	}
}

/* コラム
--------------------------------------------------------- */
.cmn_contents .cmn_note {
	background-color: #eef9fd;
	border-radius: 1.5rem;
	margin-left: -0.5rem;
	padding: 2rem;
	width: calc(100% + 1rem);
}

.cmn_contents .cmn_note .cmn_note_heading {
	align-items: center;
	justify-content: space-between;
}
.cmn_contents .cmn_note .cmn_note_heading_image {
	flex: 0 0 25% !important;
}
.cmn_contents .cmn_note .cmn_note_heading_text {
	flex: 0 0 70% !important;
	margin-top: 0;
}
.cmn_contents .cmn_note .cmn_note_heading_text p {
	font-size: 1.4rem;
	line-height: 1.5;
}
.cmn_contents .cmn_note .cmn_note_heading_text strong {
	font-size: 1.3em;
	font-weight: bold;
	margin-right: 0.3em;
}

.temp_page .cmn_note h2 {
	background: none;
	color: #62b1d8;
	margin-top: 0;
	margin-bottom: 1.6rem;
	padding: 0;
}

.temp_page .cmn_note h3 {
	color: #333;
	font-size: 1.8rem;
	margin-top: 1.2em;
	padding-left: 1em;
	text-indent: -1em;
}
.temp_page .cmn_note h3::before {
	content: '■';
	color: #62b1d8;
}

/*===============================================
	コラム：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_contents .cmn_note {
		margin-top: 10rem;
		padding: 4rem;
	}

	.cmn_contents .cmn_note .cmn_note_heading_image {
		flex: 0 0 18% !important;
	}
	.cmn_contents .cmn_note .cmn_note_heading_text {
		flex: 0 0 78% !important;
	}
	.cmn_contents .cmn_note .cmn_note_heading_text p {
		font-size: 2.2rem;
		line-height: 1.6;
	}
	.cmn_contents .cmn_note .cmn_note_heading_text strong {
		font-size: 1.4em;
	}

	.temp_page .cmn_note h2 {
		margin-bottom: 3.2rem;
	}

	.temp_page .cmn_note h3 {
		font-size: 2rem;
		margin-top: 1.6em;

	}
}



/* ---------------------------------------------------------

	07. ホームページ

--------------------------------------------------------- */

/* ホームページ：メインビジュアル
--------------------------------------------------------- */
.home_mv {
	background: url(../img/home/mv_img_sp.jpg) center/cover no-repeat;
	height: 0;
	padding-top: 107%;
	position: relative;
}
.home_mv_title {
	position: absolute;
	bottom: -3%;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.home_mv_title span {
	background: url(../img/home/mv_title.png) center/contain no-repeat;
	display: block;
	height: 0;
	overflow: hidden;
	padding-top: 60%;
	text-indent: 100%;
	white-space: nowrap;
}

.home_banner_container.swiper-container {
	display: none;
	margin-top: 1.5rem;
	padding-bottom: 3.0rem;
	width: calc(100% - 5rem);
}
.home_banner_container.swiper-container-initialized {
	display: block;
}
.home_banner_container.swiper-container-horizontal .swiper-pagination-bullets {
	bottom: 1.0rem;
}
.home_banner_container .swiper-pagination-bullet {
	background-color: #f4eee1;
	height: 0.8rem;
	opacity: 1;
	width: 0.8rem;
}
.home_banner_container .swiper-pagination-bullet-active {
	background-color: #f7ad6d;
}
.home_banner {
	background-color: #fff;
}
.home_banner a {
	display: block;
}
.device_pc .home_banner a {transition: opacity 0.25s;}
.device_pc .home_banner a:hover {opacity: 0.8;}

.home_banner_movie::after {
	content: '';
	background: url(../img/common/ico_movie_play.png) center/contain no-repeat;
	display: block;
	height: 8rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 8rem;
}

/*===============================================
	ホームページ：メインビジュアル：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.home .modaal-video-wrap {margin: auto;}
}

/*===============================================
	ホームページ：メインビジュアル：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_mv_wrap {
		position: relative;
	}
	.home_mv {
		background-image: url(../img/home/mv_img_pc.jpg);
		padding-top: 40.7%;
	}
	.home_mv_title {
		top: 0;
		bottom: auto;
		left: 1.5rem;
		transform: none;
		width: 60rem;
	}

	.home_banner_container.swiper-container {
		margin-top: 0;
		max-width: 33.0rem;
		position: absolute;
		bottom: 0;
		left: 4.5rem;
		width: 100%;
	}
}

/*===============================================
	ホームページ：メインビジュアル：1400px以上
===============================================*/
@media screen and (min-width:1400px) {
	.home_mv {
		height: 570px;
		padding-top: 0;
	}
}

/* ホームページ：お知らせ
--------------------------------------------------------- */
.home_news {
	margin-top: 2.0rem;
	margin-bottom: 7.0rem;
}
.home_news_inner {
	border: 0.2rem solid #fab670;
	border-radius: 0.6rem;
	padding: 1.2em;
}
.home_news_hiroba {
	border-color: #a3d7c0;
	margin-top: 1rem;
}
.home_news .cmn_news_list li {
	border: none;
	padding: 0;
}
.home_news_inner .cmn_news_category {
	min-width: inherit;
}
.home_news_hiroba .cmn_news_date {
	border-right: none;
}
.home_news_archive {
	margin-top: 1.5rem;
}
.home_news_archive a {
	min-width: 24rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

/*===============================================
	ホームページ：お知らせ：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_news {
		display: flex;
		justify-content: space-between;
		margin-bottom: 8.0rem;
	}
	.home_news_inner {
		position: relative;
		width: 49%;
	}
	.home_news_hiroba {margin-top: 0;}
	.home_news_inner li {flex-wrap: wrap;}
	.home_news_inner .cmn_news_title {
		margin-top: 0.5em;
		padding-left: 0;
	}
	.home_news .cmn_news_list .news_list_nopost {
		padding-top: 2em;
	}
	.home_news_archive {
		margin-top: 0;
		max-width: 14rem;
		position: absolute;
		top: 0;
		right: 0;
	}
	.home_news_archive a {
		border-radius: 0 0 0 0.6rem;
		font-size: 1.4rem;
		min-width: 14rem;
		padding: 0.6rem 2.0rem;
	}
}

/* ホームページ：できるびよりとは
--------------------------------------------------------- */
.home_about {
	margin-bottom: 4em;
}
.home_about_title {
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: 1.0em;
}
.home_about_title strong {
	font-size: 1.5em;
}
.home_about_img {
	margin: 0 auto;
	max-width: 66%;
}
.home_about p {
	line-height: 2.0;
}
.home_about p + p {
	margin-top: 1.0em;
}

/*===============================================
	ホームページ：できるびよりとは：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_about {
		margin-bottom: 6em;
		position: relative;
	}
	.home_about_title {
		font-size: 3.0rem;
	}
	.home_about_img {
		max-width: 40%;
		position: absolute;
		bottom: 0;
		right: 0;
	}
}

/* ホームページ：インデックス
--------------------------------------------------------- */
.home_index {
	margin-bottom: 10.0rem;
}
.home_index_list li {
	display: flex;
	flex-direction: column;
}
.home_index_list li + li {
	margin-top: 4em;
}
.home_index_title {
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 0.8em;
	width: 100%;
}
.home_index_title span {
	font-size: 4.0rem;
	margin-right: 0.25em;
	vertical-align: text-bottom;
}
.home_index_products .home_index_title span {color: #9bcee6;}
.home_index_seminar .home_index_title span {color: #f5d466;}
.home_index_yomimono .home_index_title span {color: #fab670;}
.home_index_hiroba .home_index_title span {color: #a3d7c0;}
.home_index_text {
	order: 3;
}
.home_index_subtitle {
	font-feature-settings: 'palt';
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.6;
	margin: 0.8em 0 0.5em;
}
.home_index_subtitle + p {
	line-height: 2.0;
}
.home_index_img {
	order: 2;
}

/*===============================================
	ホームページ：インデックス：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_index {
		margin-bottom: 15.0rem;
	}
	.home_index_list li {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.home_index_list li:nth-child(even) {
		flex-direction: row-reverse;
	}
	.home_index_list li + li {
		margin-top: 5em;
	}
	.home_index_title {
		font-size: 3.5rem;
	}
	.home_index_list li:nth-child(even) .home_index_title {
		padding-left: 52%;
	}
	.home_index_title span {
		font-size: 8.0rem;
	}
	.home_index_text {
		order: 2;
		width: 48%;
	}
	.home_index_subtitle {
		font-size: 2.6rem;
		margin-top: 0;
	}
	.home_index_text .cmn_btn {
		text-align: left;
	}
	.home_index_img {
		order: 3;
		width: 48%;
	}
}

/* ホームページ：SNS
--------------------------------------------------------- */
.home_sns h3 {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 5.0rem;
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: 1.5rem;
	padding-top: 5.5rem;
	text-align: center;
}
.home_twitter h3 {
	background-image: url(../img/home/sns_ico_twitter.svg);
	color: #1da1f2;
}
.home_facebook h3 {
	background-image: url(../img/home/sns_ico_facebook.svg);
	color: #1977f3;
}

.home_twitter_timeline {
	border-bottom: 0.1rem solid #ebedf0;
	height: 20.0rem;
	margin: 0 auto 4.0rem;
	max-width: 500px;
	overflow-y: auto;
}
.home_facebook_timeline {
	height: 20.0rem;
	margin: 0 auto;
	max-width: 500px;
}

/*===============================================
	ホームページ：SNS：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_sns {
		display: flex;
		justify-content: space-between;
	}
	.home_sns > div {
		width: 48%;
	}
	.home_sns h3 {
		margin-bottom: 2.5rem;
		padding-top: 6.0rem;
	}

	.home_twitter_timeline {
		height: calc(33.3rem - 2px);
		margin: 0;
	}
	.home_facebook_timeline {
		height: 33.3rem;
		margin: 0;
	}
}

/* ホームページ：追従バナー
--------------------------------------------------------- */
.home_history {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: bottom;
	column-gap: 1rem;
	position: fixed;
	bottom: 0.5rem;
	left: 1.0rem;
	transition: opacity 0.25s;
	z-index: 11;
	width: calc(100% - 2.0rem);
}
.home_history.is-stop {
	opacity: 0;
}
.home_banner_history {
	background-color: #fff;
	border: 0.2rem solid #ed9944;
	border-radius: 0.6rem;
	color: #ed9944;
	display: inline-block;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 0.4rem 4rem 0.4rem 1.0rem;
	position: relative;
	text-decoration: none;
}
.home_banner_history::after {
	content: '';
	background: url(../img/common/cmn_ico_history.svg) center/contain no-repeat;
	display: block;
	height: 4.0rem;
	position: absolute;
	top: 1.0rem;
	right: 0.5rem;
	width: 4.0rem;
}
.home_banner_history strong {
	font-size: 1.3em;
}
.home_banner_festa picture {
	border-radius: 0.6rem;
	display: block;
	overflow: hidden;
}
.home_banner_festa img {
	width: 100%;
}
.device_pc .home_history a {transition: opacity 0.25s;}
.device_pc .home_history a:hover {opacity: 0.8;}

/*===============================================
	ホームページ：追従バナー：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.home_history {
		grid-template-columns: auto;
		row-gap: 0.5em;
		max-width: 19rem;
		bottom: 7.5rem;
		right: 0;
		left: auto;
		width: auto;
	}
	.home_banner_history {
		border-right: none;
		border-radius: 0.6rem 0 0 0.6rem;
		order: 1;
		padding: 1.5rem 5.0rem 1.5rem 2.0rem;
	}
	.home_banner_history::after {
		height: 4.5rem;
		top: 2.0rem;
		right: 1.0rem;
		width: 4.4rem;
	}
	.home_banner_history strong {
		display: block;
	}
	.home_banner_festa picture {
		border-radius: 0.6rem 0 0 0.6rem;
	}
}



/* ---------------------------------------------------------

	08. 商品紹介

--------------------------------------------------------- */

/* 共通：商品一覧
--------------------------------------------------------- */
.products_list {
	margin-top: 2.0rem;
}
.products_list_item + .products_list_item {
	margin-top: 5.0rem;
}
.products_list_image {
	background-color: #eef9fd;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.2em;
}
.products_list_image a {
	padding: 1.5em;
}
.products_list_title {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 0.5em;
}
.products_list_item .products_text {
	margin-top: 0;
}
.products_list_item a {
	text-decoration: none;
}
.device_pc .products_list_item a {transition: opacity 0.25s;}
.device_pc .products_list_item a:hover {opacity: 0.8;}

/*===============================================
	共通：商品一覧：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.products_list .wp-block-group__inner-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.products_list_item {
		width: 48%;
	}
	.products_list_item + .products_list_item {
		margin-top: 0;
	}
	.products_list_item:nth-child(n+3) {
		margin-top: 6%;
	}
	.products_list_title {
		font-size: 2.4rem;
	}
}

/* 共通：ファイルダウンロード
--------------------------------------------------------- */

/*===============================================
	共通：ファイルダウンロード：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.download_list .wp-block-group__inner-container {
		justify-content: flex-start;
	}
	.download_list_item {
		width: 30%;
	}
	.download_list_item:nth-child(3) {margin-top: 0;}
	.download_list_item:nth-child(n+4) {margin-top: 5%;}
	.download_list_item:not(:nth-child(3n)) {margin-right: 5%;}
}

/* 共通：教材使用者の声
--------------------------------------------------------- */
.uservoice_list {
	border-top: 0.1rem solid #b2b2b2;
}
.uservoice_list_item {
	border-bottom: 0.1rem solid #b2b2b2;
	padding: 1.2em 0;
}
.uservoice_list_title {
	font-weight: bold;
}
.uservoice_list_title + .uservoice_text {
	margin-top: 0.5em;
}

/* 共通：その他の商品（インデックスメニュー）
--------------------------------------------------------- */
.products_index_list .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
}
.products_index_item {
	width: 48%;
}
.products_index_item:nth-child(odd) {
	margin-right: 4%;
}
.products_index_item:nth-child(n+3) {
	margin-top: 4%;
}

.products_index_item a {
	color: #62b1d8;
	display: block;
	font-feature-settings: 'palt';
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
}
.products_index_image {
	background-color: #eef9fd;
	margin-bottom: 0.2em;
	padding: 1.2rem;
}
.products_index_item .products_index_title {
	margin-top: 0;
}
.device_pc .products_index_item a {transition: opacity 0.25s;}
.device_pc .products_index_item a:hover {opacity: 0.8;}

/*===============================================
	共通：その他の商品（インデックスメニュー）：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.products_index_item {
		width: 23.5%;
	}
	.products_index_item:nth-child(odd) {margin-right: 0;}
	.products_index_item:not(:nth-child(4n)) {
		margin-right: 2%;
	}
	.products_index_item:nth-child(n+3) {margin-top: 0;}
	.products_index_item:nth-child(n+5) {
		margin-top: 2%;
	}

	.products_index_item a {
		font-size: 1.6rem;
	}
	.products_index_image {
		margin-bottom: 0.4em;
		padding: 2.0rem;
	}
}

/* 共通：特集ページ追従バナー
--------------------------------------------------------- */
.cmn_banner_special_wrap {
	display: flex;
	justify-content: space-between;
	position: fixed;
	bottom: 0.5rem;
	left: 1.0rem;
	transition: opacity 0.25s;
	z-index: 10;
	width: calc(100% - 7.0rem);
}
.cmn_banner_special {
	flex-basis: 49%;
}
.cmn_banner_special.is-stop {
	opacity: 0;
}
.cmn_banner_special a {
	background: #66accd url(../img/common/ico_attention.svg) 0.5em center/1.6em no-repeat;
	border-radius: 0.6rem;
	box-shadow: 0 0 1.2em rgba(1,1,1,0.15);
	color: #fff;
	display: inline-block;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 0.4rem 0.5em 0.4rem 2.5em;
	position: relative;
	text-decoration: none;
}
.cmn_banner_special strong {
	font-size: 1.4em;
	margin: 0 0.1em;
}
.device_pc .cmn_banner_special a {transition: opacity 0.25s;}
.device_pc .cmn_banner_special a:hover {opacity: 0.8;}

/*===============================================
	共通：特集ページ追従バナー：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_banner_special_wrap {
		display: block;
		top: 14rem;
		right: 0;
		left: auto;
		width: auto;
	}
	.cmn_banner_special + .cmn_banner_special {
		margin-top: 1em;
	}
	.cmn_banner_special a {
		background-position: 0.6em center;
		background-size: 2.2em;
		border-radius: 0.6rem 0 0 0.6rem;
		font-size: 1.5rem;
		padding: 1.5rem 0.5em 1.5rem 3.2em;
	}
	.cmn_banner_special a::after {
		height: 4.5rem;
		top: 2.0rem;
		right: 1.0rem;
		width: 4.4rem;
	}
}

/* 商品一覧：リード部
--------------------------------------------------------- */
.products_index_lead_heading {
	margin: 0 auto;
	max-width: 820px;
}
.page_products .products_index_lead_heading h3 {
	color: #333;
	font-weight: bold;
	margin-bottom: 0.4em;
	text-align: center;
}
.page_products .products_index_lead_heading .wp-block-columns {
	justify-content: center;
}
.page_products .products_index_lead_heading .wp-block-column {
	flex-basis: 40% !important;
	flex-grow: 0;
	margin: 0 0.5rem;
}
.page_products .products_index_lead_heading h4 {
	font-size: 1.4em;
	margin-top: 0.8em;
	text-align: center;
}

.products_index_lead_column {
	align-items: flex-end;
	margin-top: 1.5em;
}
.products_index_lead_column > .wp-block-column:first-child {
	background-color: #eff9fd;
	border-radius: 2rem;
	padding: 1em 2em;
	position: relative;
}
.products_index_lead_column > .wp-block-column:first-child::after {
	content: '';
	border: 3rem solid transparent;
	border-top: 2em solid #eff9fd;
	height: 0;
	position: absolute;
	top: 100%;
	right: 40%;
	width: 0;
}
.products_index_lead_column > .wp-block-column:last-child {
	flex-basis: 60% !important;
	flex-grow: 0;
	margin-left: auto;
	padding-right: 2rem;
	position: relative;
}
.products_index_lead_column h3 strong {
	font-feature-settings: 'palt';
	font-size: 1.25em;
}
.products_index_lead_column .wp-block-image figcaption {
	margin-bottom: 0;
	position: absolute;
	bottom: 0;
	right: 70%;
	text-align: right;
	width: 200%;
}

.cmn_contents .products_index_lead_figure {
	margin: 5rem 0;
}
.products_index_lead_figure h3 {
	font-size: 1.5em;
	text-align: center;
}
.products_index_lead_figure figure.wp-block-image {margin: 0;}

.products_index_lead_figure .sp_scroll_wrapper {
	margin-top: 1rem;
}
.sp_scroll_wrapper figure {
	overflow-x: auto;
}
.sp_scroll_wrapper figure img {
	max-width: 700px;
	width: 700px;
}

/*===============================================
	商品一覧：リード部：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.page_products .products_index_lead_heading .wp-block-column {
		flex-basis: 35% !important;
		margin: 0 1.5rem;
	}
	.page_products .products_index_lead_heading h4 {
		font-size: 2.5em;
		margin-top: 0.6em;
	}

	.products_index_lead_column > .wp-block-column:first-child {
		flex-basis: 75% !important;
	}
	.products_index_lead_column > .wp-block-column:first-child::after {
		border: 3rem solid transparent;
		border-left: 3.5em solid #eff9fd;
		top: 50%;
		right: 0;
		transform: translateX(100%);
	}
	.products_index_lead_column > .wp-block-column:last-child {
		flex-basis: 20% !important;
		padding-right: 0;
	}
	.products_index_lead_column .wp-block-image figcaption {
		position: static;
		width: auto;
	}

	.cmn_contents .products_index_lead_figure {margin: 6rem 0 8rem;}
	.products_index_lead_figure h3 {font-size: 2em;}
	.products_index_lead_figure .sp_scroll_wrapper {margin-top: 0;}
	.sp_scroll_wrapper figure {overflow-x: hidden;}
	.sp_scroll_wrapper figure img {
		max-width: 100%;
		width: auto;
	}
}


/* 凹凸書字教材シリーズ：リード部
--------------------------------------------------------- */
.outotsu_lead .wp-block-column:last-child p:last-child {
	font-size: 0.8em;
	margin-top: 0;
	margin-left: -0.5em;
	text-indent: 0.5em;
}

.outotsu_lead .outotsu_kamoshita {
	margin-top: 0.5em;
}

.page_outotsu .temp_page h3 {
	margin-top: 0;
}

/*===============================================
	凹凸書字教材シリーズ：リード部：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.outotsu_lead .wp-block-column:last-child {
		flex-basis: 50% !important;
		flex-grow: 0;
		margin: 3.0rem auto 0;
	}

	.outotsu_book div:first-child {
		flex-basis: 50% !important;
		flex-grow: 0;
		margin: 0 auto;
	}
	.outotsu_book .wp-block-column + .wp-block-column {
		margin-top: 1em;
	}
}

/*===============================================
	凹凸書字教材シリーズ：リード部：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.outotsu_lead .wp-block-column:first-child {
		padding-right: 4%;
	}
	.outotsu_lead .wp-block-column:last-child {
		margin: 0;
	}
	.outotsu_lead .wp-block-column:last-child p:last-child {
		font-size: 0.9em;
	}

	.outotsu_book {
		display: flex;
		align-items: center;
	}
}

/* 凹凸書字教材シリーズ：こんな子どもにオススメ！
--------------------------------------------------------- */
.outotsu_recommend {
	border: 0.2rem solid #9bcee6;
	border-radius: 1.0rem;
	font-weight: bold;
	padding: 1.0em;
}
.outotsu_recommend li {
	background: url(../img/common/ico_check_products.svg) left 0.5em/1.0em auto no-repeat;
	line-height: 1.5;
	padding-left: 1.5em;
}
.outotsu_recommend li + li {
	margin-top: 0.8em;
}

.outotsu_recommend_modest {
	border: none;
	border-radius: 0;
	font-weight: normal;
	padding: 0;
}

/*===============================================
	凹凸書字教材シリーズ：こんな子どもにオススメ！：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.outotsu_recommend {
		border-radius: 2.0rem;
		font-size: 2.2rem;
		padding: 1.8em 2.0em;
	}
	.outotsu_recommend li {
		line-height: 1.7;
	}

	.outotsu_recommend_modest {
		border-radius: 0;
		font-size: 1em;
		padding: 0;
	}
}

/* 凹凸書字教材シリーズ：学習の進め方
--------------------------------------------------------- */
.products_step_item + .products_step_item {
	position: relative;
}
.products_step_item + .products_step_item::before {
	content: '';
	background: url(../img/common/ico_arrow_products.svg) center/3.0rem auto no-repeat;
	display: block;
	height: 8.0rem;
}
.products_step_heading {
	display: flex;
	align-items: flex-start;
	margin-bottom: 0.8em;
}
.products_step_heading .products_step_num {
	color: #62b1d8;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1;
	padding-top: 0.3em;
}
.products_step_num span {
	font-size: 3.5rem;
}
.products_step_heading_inner {
	font-weight: bold;
	line-height: 1.4;
	padding-left: 1.0em;
}
.products_step_title {
	font-size: 2.4rem;
	margin-bottom: 0.5em;
	text-indent: -0.5em;
}
.products_step_heading_inner .products_step_subtitle {
	line-height: 1.5;
	margin-top: 0;
}
.products_step_text {
	margin-bottom: 1.0em;
}

/*===============================================
	凹凸書字教材シリーズ：学習の進め方：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.products_step_item + .products_step_item::before {
		height: 16.0rem;
	}
	.products_step_heading {
		display: flex;
		align-items: flex-start;
		margin-bottom: 1em;
	}
	.products_step_heading .products_step_num {
		color: #62b1d8;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1;
		padding-top: 0.5em;
	}
	.products_step_num span {
		font-size: 5.0rem;
	}
	.products_step_heading_inner {
		font-weight: bold;
		line-height: 1.4;
		padding-left: 1.5em;
	}
	.products_step_title {
		font-size: 3.0rem;
		margin-bottom: 0.1em;
		text-indent: -0.5em;
	}
	.products_step_heading_inner .products_step_subtitle {
		line-height: 2.0;
	}
	.products_step_text {
		margin-bottom: 0;
	}
	.products_step_2column {
		display: flex;
		justify-content: space-between;
	}
	.products_step_2column > * {
		width: 48%;
	}
}

/* 凹凸書字ドリル
--------------------------------------------------------- */
.drill_step_wrap .wp-block-columns {
	position: relative;
}
.drill_step_wrap .wp-block-columns + .wp-block-columns {
	margin-top: 9rem;
}
.drill_step_wrap .wp-block-columns + .wp-block-columns::before {
	content: '';
	background: url(../img/common/ico_arrow_products.svg) center/contain no-repeat;
	display: block;
	height: 2.8rem;
	position: absolute;
	top: -6rem;
	left: 50%;
	transform: translateX(-50%);
	width: 3rem;
}
.drill_step_wrap .wp-block-column + .wp-block-column {
	margin-top: 1.6rem;
}

.drill_step_wrap .wp-block-column:last-child h3 span {
	font-size: 0.8em;
}
.drill_step_wrap .wp-block-column:last-child h3 strong {
	font-size: 2em;
	line-height: 1;
	margin: 0 0.3em 0 0.05em;
}
.drill_step1 .wp-block-column:last-child h3 {color: #e8382f;}
.drill_step2 .wp-block-column:last-child h3 {color: #d95097;}
.drill_step3 .wp-block-column:last-child h3 {color: #ed6b00;}
.drill_step4 .wp-block-column:last-child h3 {color: #009e84;}
.drill_step5 .wp-block-column:last-child h3 {color: #005fac;}

.drill_step_wrap .wp-block-column:last-child p + p {
	margin-top: 1em;
}

.drill_sheet_modal_wrap .modaal-content-container {
	padding: 2.5rem;
}
.drill_sheet_modal {display: none;}
.drill_sheet_modal_wrap .cmn_title_tryangle {
	line-height: 1.4;
	margin: 0 0 1.5rem;
}
.drill_sheet_list {
	display: flex;
	flex-wrap: wrap;
}
.drill_sheet_list li {
	flex-basis: 47%;
}
.drill_sheet_image img {
	border: 0.1rem solid #cdcdcd;
}
.drill_sheet_title {
	font-size: 0.8em;
	line-height: 1.4;
	margin-top: 0.5em;
}

/*===============================================
	凹凸書字ドリル：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.drill_step_wrap .wp-block-column:last-child h3 {
		font-feature-settings: 'palt';
	}

	.drill_sheet_list li:nth-child(odd) {margin-right: 6%;}
	.drill_sheet_list li:nth-child(n+3) {margin-top: 6%;}
}

/*===============================================
	凹凸書字ドリル：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.drill_step_wrap .wp-block-column + .wp-block-column {
		margin-top: -0.3em;
	}

	.drill_sheet_modal_wrap .modaal-content-container {padding: 4rem;}
	.drill_sheet_modal_wrap .cmn_title_tryangle {
		line-height: 1.7;
		margin: 0 0 4rem;
	}
	.drill_sheet_list li {flex-basis: 31.5%;}
	.drill_sheet_list li:not(:nth-child(3n)) {margin-right: 2.75%;}
	.drill_sheet_list li:nth-child(n+4) {margin-top: 2.75%;}
	.drill_sheet_title {font-size: 0.9em;}
}

/* マス目ボコボコシート
--------------------------------------------------------- */
.bokoboko_dot h3 {
	margin-bottom: 0.5em;
}
.bokoboko_dot p {
	margin-bottom: 0.3em;
	text-align: center;
}

/* 意味のある漢字カード
--------------------------------------------------------- */
.kanji_img03.wp-block-image figcaption {
	background-color: #94cfca;
	margin: -4% 0 0;
	padding: 0.5em 1em;
	position: relative;
	text-align: center;
	z-index: 1;
}

/*===============================================
	意味のある漢字カード：タブレット近辺
===============================================*/
@media (min-width: 600px) and (max-width: 781px) {
	.cmn_columns_6-3 .wp-block-column:first-child {
		flex-basis: 65% !important;
	}
	.cmn_columns_6-3 .wp-block-column:last-child {
		flex-basis: 30% !important;
	}
}

/* 絵文字カードと文字チップ
--------------------------------------------------------- */
.wp-block-columns.emoji_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 2em;
}
.emoji_list .wp-block-column {
	flex: 0 1 48% !important;
}
.emoji_list .wp-block-column + .wp-block-column {margin-top: 0;}
.emoji_list .wp-block-column:nth-child(n+3) {margin-top: 5%;}
.emoji_list .wp-block-image figcaption {
	font-size: 0.9em;
	font-weight: bold;
	margin-bottom: 0;
	text-align: center;
}

/*===============================================
	絵文字カードと文字チップ：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.emoji_list .wp-block-column {
		flex: 0 1 30% !important;
		margin-left: 0 !important;
	}
	.emoji_list .wp-block-column:nth-child(n+3) {margin-top: 0;}
	.emoji_list .wp-block-column:nth-child(n+4) {margin-top: 4%;}
	.emoji_list .wp-block-image figcaption {font-size: 1em;}
}

/* 凹凸書字教材 使用事例
--------------------------------------------------------- */
.products_examples_tab {
	border-bottom: 0.2rem solid #a3d7c0;
	display: flex;
	margin-bottom: 3.0rem;
}
.products_examples_tab li + li {
	margin-left: 0.4em;
}
.products_examples_tab a {
	background-color: #e5f8f1;
	border-radius: 0.6rem 0.6rem 0 0;
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0.8em;
	text-decoration: none;
}
.products_examples_tab a span {
	display: none;
}
.products_examples_tab li.is-active a {
	background-color: #a3d7c0;
	color: #333;
}
.device_pc .products_examples_tab a {transition: opacity 0.25s;}
.device_pc .products_examples_tab a:hover {opacity: 0.8;}

.products_examples_panel {
	display: none;
}
.products_examples_panel.is-active {
	display: block;
}

.products_examples_list {
	line-height: 1.6;
}
.products_examples_list dt {
	font-weight: bold;
}
.products_examples_list dd + dt {
	margin-top: 0.8em;
}

.products_examples_photo_list {
	margin-top: 3.0rem;
}
.products_examples_photo_list .wp-block-group__inner-container {
	counter-reset: exPhotoNum;
}
.products_examples_photo_item {
	background-color: #e5f8f1;
	position: relative;
}
.products_examples_photo_item::after {
	content: counter(exPhotoNum);
	counter-increment: exPhotoNum;
	background-color: #a3d7c0;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.0rem;
	font-weight: bold;
	height: 2.0em;
	position: absolute;
	top: 0.5em;
	left: 0.5em;
	width: 2.0em;
}
.products_examples_photo_item + .products_examples_photo_item {
	margin-top: 2.0em;
}
.products_examples_photo_item .products_examples_explain {
	line-height: 1.7;
	padding: 0.8em 1.2em;
}

/*===============================================
	凹凸書字教材 使用事例：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.products_examples_tab {
		margin-bottom: 5.0rem;
	}
	.products_examples_tab a {
		font-size: 2.0rem;
		padding: 0.8em 1.0em;
	}
	.products_examples_tab li.is-active a span {
		display: inline;
	}

	.products_examples_list {
		display: flex;
		flex-wrap: wrap;
		line-height: 2.0;
	}
	.products_examples_list dt {
		display: flex;
		width: 5em;
	}
	.products_examples_list dt::after {
		content: '：';
		margin-left: auto;
	}
	.products_examples_list dd + dt {
		margin-top: 0;
	}
	.products_examples_list dd {
		width: calc(100% - 5em);
	}

	.products_examples_photo_list {
		margin-top: 6.0rem;
	}
	.products_examples_photo_list .wp-block-group__inner-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.products_examples_photo_item {
		width: 48%;
	}
	.products_examples_photo_item::after {
		font-size: 2.4rem;
		height: 2.5em;
		width: 2.5em;
	}
	.products_examples_photo_item + .products_examples_photo_item {margin-top: 0;}
	.products_examples_photo_item:nth-child(n+3) {
		margin-top: 3em;
	}
}

/* 魔法のザラザラ下じき
--------------------------------------------------------- */
.shitajiki_nayami.wp-block-columns {justify-content: space-between;}
.shitajiki_nayami .wp-block-column {flex-basis: 45% !important;}
.shitajiki_nayami .wp-block-column:not(:first-child) {margin-left: 0;}
.shitajiki_nayami .wp-block-column:nth-child(even) {margin-left: 10%;}
.shitajiki_nayami .wp-block-column + .wp-block-column {margin-top: 0;}
.shitajiki_nayami .wp-block-column:nth-child(n+3) {margin-top: 8%;}
.shitajiki_nayami .wp-block-image {
	display: flex;
	flex-direction: column-reverse;
}
.shitajiki_nayami .wp-block-image figcaption {
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 0.5em;
	text-align: center;
}
.shitajiki_nayami .wp-block-column p {
	font-size: 0.85em;
	line-height: 1.6;
	margin-top: 0.3em;
}

.cmn_contents .shitajiki_note {
	margin-top: 6rem;
}
.cmn_contents .shitajiki_note .wp-block-group__inner-container {
	display: flex;
	justify-content: center;
}
.cmn_contents .shitajiki_note .outotsu_recommend {
	border: 0.1rem solid #9bcee6;
	border-radius: 1rem;
	padding: 1.5em;
}

/*===============================================
	魔法のザラザラ下じき：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.shitajiki_nayami .wp-block-column {flex-basis: 20% !important;}
	.shitajiki_nayami .wp-block-column:not(:first-child) {margin-left: 6%;}
	.shitajiki_nayami .wp-block-column:nth-child(even) {margin-left: 6%;}
	.shitajiki_nayami .wp-block-column:nth-child(n+3) {margin-top: 0;}
	.shitajiki_nayami .wp-block-image figcaption {
		font-size: 2.5rem;
	}
	.shitajiki_nayami .wp-block-column p {
		font-size: 0.9em;
		line-height: 1.8;
		margin-top: 0.3em;
	}

	.cmn_contents .shitajiki_note {
		margin-top: 10rem;
	}
}

/* 凹凸ぬりえ
--------------------------------------------------------- */
.page_outotsu-nurie h3 {
	color: #333;
	display: flex;
}
.page_outotsu-nurie h3 strong {
	color: #62b1d8;
	flex: 0 0 auto;
	margin-right: 0.5em;
}

/* よくある質問
--------------------------------------------------------- */
.cmn_faq_item {
	border-bottom: 0.1rem dotted #b2b2b2;
	line-height: 1.5;
	padding: 1.5em 0 2.0em;
}
.cmn_faq_item:first-child {
	border-top: 0.1rem dotted #b2b2b2;
}
.cmn_faq_question {
	color: #ed9944;
	font-weight: bold;
	margin-bottom: 1.5em;
	padding: 1.0rem 0 0 5.5rem;
	position: relative;
}
.cmn_faq_question::before {
	content: 'Q';
	border: 0.2rem solid #ed9944;
	border-radius: 50%;
	color: #ed9944;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 2.5em;
	position: absolute;
	top: 0;
	left: 0;
	width: 2.5em;
}
.cmn_faq_answer {
	padding: 1.0rem 0 0 5.5rem;
	position: relative;
}
.cmn_faq_answer::before {
	content: 'A';
	background-color: #f7bf7b;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 2.5em;
	position: absolute;
	top: 0;
	left: 0;
	width: 2.5em;
}

.page_products-faq .cmn_faq_question {color: #62b1d8;}
.page_products-faq .cmn_faq_question::before {
	border-color: #62b1d8;
	color: #62b1d8;
}
.page_products-faq .cmn_faq_answer::before {background-color: #9bcee6;}

.page_seminar-faq .cmn_faq_question {color: #e3bd3c;}
.page_seminar-faq .cmn_faq_question::before {
	border-color: #e3bd3c;
	color: #e3bd3c;
}
.page_seminar-faq .cmn_faq_answer::before {background-color: #f5d466;}

/*===============================================
	よくある質問：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_faq_item {
		line-height: 1.7;
		padding: 1.5em 0 2.0em;
	}
	.cmn_faq_question {
		font-size: 2.4rem;
		margin-bottom: 1.2em;
		padding-left: 7.5rem;
	}
	.cmn_faq_answer {
		padding-left: 7.5rem;
	}
	.cmn_faq_answer::before {
		font-size: 2.4rem;
	}
}



/* ---------------------------------------------------------

	09. セミナー紹介

--------------------------------------------------------- */

/* セミナー紹介
--------------------------------------------------------- */
.seminar_intro_heading a {
	background-color: #fdfcf8;
	border: 0.4rem solid;
	border-radius: 0.6rem;
	color: #333;
	display: block;
	padding: 1.5rem 1.5rem 5.5rem;
	position: relative;
	text-align: center;
	text-decoration: none;
}
.seminar_intro_image {
	border: 0.3rem solid;
	border-radius: 50%;
	display: block;
	flex: 0 0 auto;
	height: 8.0rem;
	margin: 0 auto 1.0rem;
	overflow: hidden;
	width: 8.0rem;
}
.seminar_intro_heading_inner {
	font-feature-settings: 'palt';
	font-weight: bold;
	line-height: 1.4;
}
.seminar_intro_heading_inner h3 {
	font-size: 1.7rem;
	line-height: 1.4;
}
.seminar_intro_heading_inner h3 strong {
	display: block;
	font-size: 1.7em;
}
.seminar_intro_heading_inner h3 strong span {
	display: block;
	font-size: 0.7em;
}
.seminar_intro_heading_inner p {
	font-size: 1.6rem;
	line-height: 1.5;
	margin-top: 0.5em;
}
.seminar_intro_arrow {
	border-radius: 0 0 0.6rem 0.6rem;
	height: 4.0rem;
	position: absolute;
	bottom: -0.4rem;
	left: -0.4rem;
	width: calc(100% + 0.8rem);
}
.seminar_intro_arrow::after {
	content: '';
	border-right: 0.3rem solid #fff;
	border-bottom: 0.3rem solid #fff;
	display: block;
	height: 1.8rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: rotate(45deg) translate(-90%, -20%);
	width: 1.8rem;
}
.page_seminar .seminar_intro_archive {
	margin: 3.0em 0 4.0em;
}

.seminar_book {
	margin: 2.5em 0;
}
.seminar_book figcaption {
	display: flex;
	justify-content: center;
	font-feature-settings: 'palt';
	font-size: 0.9em;
	line-height: 1.6;
}

.wp-block-buttons-single .wp-block-button.cmn_btn {
	display: block;
	margin-right: 0;
	margin-bottom: 0;
}

.seminar_goods {
	margin-top: 0.5em;
}
.seminar_goods .wp-block-column + .wp-block-column {
	margin-top: 0;
}
.seminar_goods h3 {
	margin-bottom: 0.5em;
}

.cmn_contents .seminar_children {
	margin-top: 2rem;
}
.seminar_children h3 {
	margin-bottom: 1em;
}
.seminar_children h4 {
	margin: 1em 0 -1em;
}

/*===============================================
	セミナー紹介：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.seminar_intro_heading a {
		display: flex;
		align-items: center;
		padding: 1.5rem 6.5rem 1.5rem 3.0rem;
		text-align: left;
	}
	.device_pc .seminar_intro_heading a {transition: opacity 0.25s;}
	.device_pc .seminar_intro_heading a:hover {opacity: 0.8;}

	.seminar_intro_image {
		height: 14.0rem;
		margin: 0;
		width: 14.0rem;
	}
	.seminar_intro_heading_inner {
		font-feature-settings: normal;
		padding-left: 1.5em;
	}
	.seminar_intro_heading_inner h3 {
		font-size: 2.2rem;
	}
	.seminar_intro_heading_inner h3 strong {
		font-size: 2.0em;
		text-indent: -0.5em;
	}
	.seminar_intro_heading_inner h3 strong span {
		display: inline;
	}
	.seminar_intro_heading_inner p {
		font-size: 1.8rem;
	}
	.seminar_intro_heading_inner p br {display: none;}
	.seminar_intro_arrow {
		border-radius: 0 0.6rem 0.6rem 0;
		height: calc(100% + 0.8rem);
		position: absolute;
		bottom: -0.4rem;
		left: auto;
		right: -0.4rem;
		width: 6.0rem;
	}

	.seminar_book .aligncenter > figcaption {text-align: center;}

	.seminar_goods {margin-top: 2em;}

	.cmn_contents .seminar_children {margin-top: 4rem;}
}

/* セミナー一覧
--------------------------------------------------------- */
ul.seminar_selecter {
	margin: 2em 0 3em;
}
.seminar_selecter li {
	height: 4.5rem;
	position: relative;
}
.seminar_selecter li + li {
	margin-top: 3.0rem;
}
.seminar_selecter li + li::after {
	content: '×';
	font-size: 2.5rem;
	position: absolute;
	top: -1.6rem;
	left: 50%;
	transform: translate(-50%, -50%);
}
.seminar_selecter_button {
	-webkit-appearance: none;
		 -moz-appearance: none;
					appearance: none;
	background-color: #fdfcf8;
	border: 0.2rem solid #e3bc3c;
	border-radius: 0.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	height: 100%;
	position: relative;
}
.seminar_selecter_button::after {
	content: '';
	border: 0.7rem solid transparent;
	border-top-color: #e3bc3c;
	display: block;
	height: 0;
	position: absolute;
	top: 50%;
	right: 2.0rem;
	transform: translateY(-22%);
	width: 0;
}
.seminar_selecter select {
	-webkit-appearance: none;
		 -moz-appearance: none;
					appearance: none;
	border: none;
	cursor: pointer;
	height: 100%;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	width: 100%;
}
.seminar_selecter select::-ms-expand {
	display: none;
}

.seminar_list_heading {display: none;}
.seminar_list {
	margin-bottom: 4.0rem;
}
.seminar_list_item {
	border-bottom: 0.1rem dotted #b2b2b2;
	display: flex;
	flex-wrap: wrap;
	padding: 1em 0;
}
.seminar_list_item:first-child {
	border-top: 0.1rem dotted #b2b2b2;
}
.seminar_list_item p {
	line-height: 1.4;
}
.seminar_list_item p + p {
	margin-top: 0;
}
.seminar_list_location {
	font-weight: bold;
	margin-left: 1.0em;
}
.seminar_list_title {
	padding-top: 0.5em;
	width: 100%;
}
.seminar_list_item a {
	color: #e3bd3C;
	text-decoration: none;
}

.seminar_more {display: none;}

/*===============================================
	セミナー一覧：768px以上
===============================================*/
@media screen and (min-width:768px) {
	ul.seminar_selecter {
		display: flex;
		justify-content: center;
		margin: 3em 0 4em;
	}
	.seminar_selecter li {
		cursor: pointer;
		height: 5.0rem;
		max-width: 30.0rem;
		width: 50%;
	}
	.seminar_selecter li + li {
		margin-top: 0;
		margin-left: 8.0rem;
	}
	.seminar_selecter li + li::after {
		font-size: 3.0rem;
		top: 50%;
		left: -4.0rem;
	}
	.seminar_selecter_button {
		border-width: 0.3rem;
		font-size: 2.0rem;
	}

	.seminar_list_heading {
		background-color: #fdfcf8;
		border-top: 0.1rem dotted #b2b2b2;
		border-bottom: 0.1rem dotted #b2b2b2;
		display: flex;
		font-size: 1.8rem;
		text-align: center;
	}
	.seminar_list_heading p + p {
		margin-top: 0;
	}
	.seminar_list_heading_date,
	.seminar_list_date {width: 25%;}
	.seminar_list_heading_location,
	.seminar_list_location {width: 10%;}
	.seminar_list_heading_title,
	.seminar_list_title {width: 63%;}

	.seminar_list_item {
		flex-wrap: nowrap;
		padding: 1.2em 0;
	}
	.seminar_list_item:first-child {border-top: none;}
	.seminar_list_date {
		padding: 0 1.2em;
	}
	.seminar_list_location {
		margin-left: 0;
		padding: 0;
		text-align: center;
	}
	.seminar_list_title {
		margin-left: auto;
		padding: 0 1.2em;
	}
}

/* 講師陣紹介
--------------------------------------------------------- */
.seminar_teacher_item + .seminar_teacher_item,
p + .seminar_teacher_item {
	margin-top: 5rem;
}

.seminar_teacher_image {
	margin: 0 auto 2rem;
	max-width: 18rem;
}

.seminar_teacher_name {
	color: #e3bd3c;
	font-size: 2rem;
	font-weight: bold;
}
.seminar_teacher_profile .seminar_teacher_belong {
	margin-top: 0.4em;
}
.seminar_teacher_profile .seminar_teacher_text {
	margin-top: 0.5em;
}

.seminar_teacher_archive .cmn_btn {
	margin-top: 1.5rem;
}
.seminar_teacher_archive .cmn_btn a {
	min-width: 100%;
}

/*===============================================
	講師陣紹介：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.seminar_teacher_item {
		display: flex;
		justify-content: space-between;
		position: relative;
	}

	.seminar_teacher_image {
		flex: 0 0 20rem;
		margin-bottom: 0;
		margin-right: 3.5rem;
	}

	.seminar_teacher_profile {
		margin-top: -0.5em;
	}
	.seminar_teacher_name {
		font-size: 2.4rem;
	}

	.seminar_teacher_archive {
		position: absolute;
		top: 18.5rem;
		left: 0;
		width: 18rem;
	}
	.seminar_teacher_archive .cmn_btn a {
		font-size: 1.6rem;
	}
}



/* ---------------------------------------------------------

	10. よみもの

--------------------------------------------------------- */

/* よみもの：MV
--------------------------------------------------------- */
#yomimono_index .cmn_title_page,
#yomimono_single .cmn_title_page  {
	background-image: url(../img/yomimono/title_mv_sp.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	height: 0;
	margin: 3rem 0;
	overflow: hidden;
	padding-top: 44%;
	text-indent: 100%;
	white-space: nowrap;
}

.yomimono_index_lead {
	font-feature-settings: 'palt';
	margin: -1.5rem 0 3rem;
	width: 100%;
}

/*===============================================
	よみもの：MV：768px以上
===============================================*/
@media screen and (min-width:768px) {
	#yomimono_index .cmn_title_page,
	#yomimono_single .cmn_title_page {
		background-image: url(../img/yomimono/title_mv_sp.png);
		background-size: 60rem auto;
		margin: 5rem 0;
		padding-top: 26%;
	}

	.yomimono_index_lead {
		font-feature-settings: normal;
		margin: 0 0 5rem;
		text-align: center;
	}
}

/* よみもの：執筆者
--------------------------------------------------------- */
.yomimono_writer_wrap {
	background-color: #fdf6ef;
	border-radius: 1.5em;
	margin-bottom: 3em;
	padding: 2rem;
}
.yomimono_writer_image {
	border-radius: 6px;
	display: block;
	margin-inline: auto;
	max-width: 15rem;
}
.yomimono_writer_name {
	color: #ed9944;
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 1em;
}
.yomimono_writer_kana {
	font-size: 0.8em;
}
.yomimono_writer_wrap .yomimono_writer_career {
	line-height: 1.8;
	margin-top: 0.8em;
}
.yomimono_writer_wrap .yomimono_writer_profile {
	line-height: 1.8;
}

.yomimono_writer_list_title {
	font-size: 1.6rem;
	font-weight: bold;
	margin: 2em 0 0.5em;
}
.yomimono_writer_wrap .cmn_news_list {
	background-color: #fff;
	margin-top: 1em;
}
.yomimono_writer_wrap .cmn_news_list li {
	padding-inline: 0.6em;
}

.yomimono_writer_wrap .yomimono_archive_btn {margin-top: 1em;}

/*===============================================
	よみもの：執筆者：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.yomimono_writer_wrap {padding: 3rem;}
	.yomimono_writer_inner {
		display: flex;
		align-items: flex-start;
		gap: 1.5em;
	}
	.yomimono_writer_image {flex: 0 0 20%;}
	.yomimono_writer_text {flex: 1 1 80%;}
	.yomimono_writer_name {
		font-size: 2.0rem;
		margin-top: 0;
	}
	.yomimono_writer_wrap .yomimono_writer_profile {margin-top: 1em;}

	.yomimono_writer_list_title {margin: 1.5em 0 0.5em;}
}

/* よみもの：詳細：見出し部
--------------------------------------------------------- */
.yomimono_post_heading {background-color: #fdf6ef;}
.yomimono_post_heading .cmn_post_title {color: #ed9944;}

.yomimono_post_heading_image_wrap {
	display: flex;
	align-items: center;
	margin-top: 1em;
}
.yomimono_post_heading_image {
	background-color: #d2d5d4;
	border-radius: 50%;
	flex: 0 0 auto;
	height: 10.0rem;
	overflow: hidden;
	margin-right: 1em;
	position: relative;
	width: 10.0rem;
}
.yomimono_post_heading_image img {
	aspect-ratio: 1 / 1;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.yomimono_post_heading_image_name {
	font-size: 1.6rem;
	font-weight: normal;
	margin-top: 0.5em;
	text-align: center;
}

/*===============================================
	よみもの：詳細：見出し部：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.yomimono_post_heading {
		display: flex;
		justify-content: space-between;
	}
	.yomimono_post_heading_text {
		display: flex;
		flex-direction: column;
	}
	.yomimono_post_heading_text .cmn_post_heading_info {
		margin-top: auto;
	}
	.yomimono_post_heading_image_wrap {
		display: block;
		flex: 0 0 auto;
		margin-top: 0;
		margin-left: 1em;
	}
	.yomimono_post_heading_image {
		margin-inline: auto;
	}
}

/* よみもの：詳細：キーワード
--------------------------------------------------------- */
.cmn_tag_wrap {
	border-bottom: 0.1rem dotted #b2b2b2;
	margin-bottom: 5rem;
	padding-bottom: 4rem;
}

.cmn_tag_list {
	letter-spacing: -.5em;
}
.cmn_tag_list li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0.2em 0.4em 0.2em 0;
}
.cmn_tag_list a {
	background-position: 0.5em 45%;
	background-repeat: no-repeat;
	background-size: auto 50%;
	border-radius: 0.6rem;
	color: #333;
	display: block;
	font-size: 1.5rem;
	padding: 0.8em 0.8em 0.8em 1.8em;
	text-decoration: none;
}
.yomimono_tag_wrap a {
	background-color: #fdf6ef;
	background-image: url(../img/common/cmn_ico_tag_yomimono.svg);
}
.device_pc .cmn_tag_list a {transition: opacity 0.25s;}
.device_pc .cmn_tag_list a:hover {opacity: 0.8;}

/*===============================================
	よみもの：詳細：キーワード：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_tag_list a {
		background-size: 1em 45%;
		font-size: 1.5rem;
		padding: 0.8em 0.8em 0.8em 2em;
	}
}



/* ---------------------------------------------------------

	11. ひろば

--------------------------------------------------------- */

/* ひろば：トップページMV
--------------------------------------------------------- */
#hiroba_index .cmn_title_page {
	background-image: url(../img/hiroba/title_mv_sp.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	height: 0;
	margin: 3rem 0;
	overflow: hidden;
	padding-top: 44%;
	text-indent: 100%;
	white-space: nowrap;
}

.hiroba_index_lead {
	font-feature-settings: 'palt';
	margin: -1.5rem 0 3rem;
	width: 100%;
}

/*===============================================
	ひろば：トップページMV：768px以上
===============================================*/
@media screen and (min-width:768px) {
	#hiroba_index .cmn_title_page {
		background-image: url(../img/hiroba/title_mv_pc.png);
		background-size: 60rem auto;
		margin: 5rem 0;
		padding-top: 26%;
	}

	.hiroba_index_lead {
		font-feature-settings: normal;
		margin: -3rem 0 5rem;
		text-align: center;
	}
}

/* ひろば：記事一覧
--------------------------------------------------------- */
.hiroba_news_list li {
	border-bottom: 0.1rem dotted #b2b2b2;
	font-size: 1.6rem;
}
.hiroba_news_list li:first-child {
	border-top: 0.1rem dotted #b2b2b2;
}
.hiroba_news_list a {
	color: #333;
	display: block;
	padding: 1.5em 0;
	text-decoration: none;
}
.hiroba_news_list figure {
	margin: 0;
}
.hiroba_news_list .hiroba_news_date {
	line-height: 1;
	margin-top: 0.8em;
}
.hiroba_news_list .hiroba_news_title {
	font-size: 1.125em;
	line-height: 1.5;
	margin-top: 0.6em;
}
.hiroba_news_list .hiroba_news_excerpt {
	font-size: 0.925;
	line-height: 1.7;
	margin-top: 0.8em;
}

.hiroba_news_list .news_list_nopost {
	padding: 2em 1em;
}

/*===============================================
	ひろば：記事一覧：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.hiroba_news_list a {
		display: flex;
		justify-content: space-between;
	}

	.hiroba_news_list figure {flex-basis: 42%;}
	.hiroba_news_inner {flex-basis: 55%;}
	.hiroba_news_list .hiroba_news_date {margin-top: 0;}

	.hiroba_news_list .news_list_nopost {padding: 3em 1.2em;}
}

/* ひろば：インデックスメニュー
--------------------------------------------------------- */
.cmn_banner_wrap {
	margin: 6rem 0;
}
.cmn_banner_item + .cmn_banner_item {
	margin-top: 1.0rem;
}
.cmn_banner_item a {
	background-position: right center;
	background-repeat: no-repeat;
	background-size: auto 102%;
	border: 0.4rem solid;
	border-radius: 0.6rem;
	display: block;
	min-height: 11.5rem;
	padding: 0.8em;
	text-decoration: none;
}
.cmn_banner_item h2.cmn_banner_title {
	background: none;
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0;
	padding: 0;
	text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}
.cmn_banner_item .cmn_banner_text {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	margin-top: 0.8em;
	text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

.page_products. .cmn_banner_item a,
.products_child .cmn_banner_item a {border-color: #9bcee6;}
.page_seminar .cmn_banner_item a,
.seminar_child .cmn_banner_item a {border-color: #f5d466;}

.hiroba_banner_column a {
	background-image: url(../img/hiroba/bg_bnr_column.jpg);
	border-color: #afddc6;
}
.hiroba_banner_column .cmn_banner_title,
.hiroba_banner_column .cmn_banner_text {color: #6fbea6;}

.hiroba_banner_qanda a {
	background-image: url(../img/hiroba/bg_bnr_qanda.jpg);
	border-color: #bfde9b;
}
.hiroba_banner_qanda .cmn_banner_title,
.hiroba_banner_qanda .cmn_banner_text {color: #86b74c;}

.device_pc .cmn_banner_item a {transition: opacity 0.25s;}
.device_pc .cmn_banner_item a:hover {opacity: 0.8;}

/*===============================================
	ひろば：インデックスメニュー：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_banner_wrap,
	.products_child .cmn_banner_wrap {
		margin: 10rem 0;
	}
	.cmn_banner_wrap .wp-block-group__inner-container {
		display: flex;
		justify-content: center;
		width: 100%;
	}
	.cmn_banner_item {
		width: 42%;
	}
	.cmn_banner_item + .cmn_banner_item {
		margin-top: 0;
	}
	.cmn_banner_item a {
		border-width: 0.6rem;
		min-height: 15rem;
		padding: 1.5em;
	}
	.cmn_banner_item .cmn_banner_title {
		font-size: 3.2rem;
	}
	.cmn_banner_item .cmn_banner_text {
		font-size: 1.8rem;
	}

	.hiroba_banner_wrap {
		display: flex;
		justify-content: space-between;
		margin: 6rem 0 10rem;
	}
}

/* ひろば：ページネーション
--------------------------------------------------------- */
.hiroba_pagination li > a,
.hiroba_pagination li > span {
	background-color: #e5f8f1;
}
.hiroba_pagination .current,
.device_com .hiroba_pagination a:hover {
	background-color: #a3d7c0;
}

/* ひろば：サイドメニュー
--------------------------------------------------------- */
.hiroba_side .cmn_side_title {
	border-color: #71c39e;
	color: #71c39e;
}
.hiroba_side .cmn_side_list a::before {
	border-color: #71c39e;
}

/* ひろば：詳細：コンテンツ部
--------------------------------------------------------- */
.hiroba_post_heading {background-color: #f5faf8;}
.hiroba_post_heading .cmn_post_title {color: #71c39e;}



/* ---------------------------------------------------------

	12. 会社概要

--------------------------------------------------------- */
#company_overview {
	padding-top: 10rem;
}

.page_company p + .wp-block-columns {
	margin-top: 1.5em;
}

.company_list {
	line-height: 1.6;
	margin-top: -1em;
}
.company_list + .company_list {
	margin-top: 3em;
}
.company_list dt {
	font-weight: bold;
}
.company_list dt:not(:first-child) {
	padding-top: 1em;
}
.company_list dd {
	border-bottom: 0.1rem dotted #b2b2b2;
	padding: 1em 0;
}

.company_kamon_info h3 {margin-bottom: 0.5em;}
.company_kamon_info .wp-block-columns + h3 {margin-top: 1.65em;}
.company_kamon_info .cmn_list {margin-top: 0;}

/*===============================================
	会社概要：768px以上
===============================================*/
@media screen and (min-width:768px) {
	#company_overview {
		margin-top: 0;
		padding-top: 15rem;
	}

	.company_list {
		display: flex;
		flex-wrap: wrap;
	}
	.company_list + .company_list {
		margin-top: 5em;
	}
	.company_list dt {
		border-bottom: 0.1rem dotted #b2b2b2;
		padding: 1em 0;
		width: 10em;
	}
	.company_list dd {
		width: calc(100% - 10em);
	}
}



/* ---------------------------------------------------------

	13. フォーム

--------------------------------------------------------- */
.cmn_form_wrap,
.mailpoet_form {
	background-color: #fffdfa;
	margin-top: 2em;
}
.cmn_form_wrap li,
.mailpoet_paragraph {
	padding: 1.5rem 1rem 2rem;
}
.cmn_form_wrap li + li,
.mailpoet_paragraph + .mailpoet_paragraph {
	border-top: 0.1rem dotted #b2b2b2;
}

.cmn_form_wrap dl,
.mailpoet_paragraph {
	line-height: 1.6;
}
.cmn_form_wrap dt,
.mailpoet_paragraph label {
	font-weight: bold;
	margin-bottom: 0.5em;
}
.cmn_form_wrap dt.cmn_form_require::after,
.mailpoet_text_label::after {
	content: '[必須]';
	color: #ed9944;
	margin-left: 0.5em;
}
.mailpoet_regist_belong .mailpoet_text_label::after {display: none;}
.mailpoet_required {display: none;}

.cmn_form_wrap input[type="text"],
.mailpoet_text {
	background-color: #fff;
	border: 0.1rem solid #f7ad6d;
	max-width: 55.0rem;
	padding: 0.6em;
	width: 100%;
}
.cmn_form_wrap textarea {
	background-color: #fff;
	border: 0.1rem solid #f7ad6d;
	height: 20rem;
	line-height: 1.8;
	padding: 0.6em;
	width: 100%;
}
.cmn_form_select_wrap {
	max-width: 25rem;
	position: relative;
}
.cmn_form_select_wrap::after {
	content: '';
	border: 0.7rem solid transparent;
	border-top-color: #f7ad6d;
	display: block;
	height: 0;
	position: absolute;
	top: 50%;
	right: 1.5rem;
	transform: translateY(-25%);
	width: 0;
}
.page_confirm .cmn_form_select_wrap::after {display: none;}
.cmn_form_wrap select {
	-webkit-appearance: none;
		 -moz-appearance: none;
					appearance: none;
	background-color: #fff;
	border: 0.1rem solid #f7ad6d;
	border-radius: 0;
	line-height: 1.5;
	max-width: 25rem;
	padding: 0.6em;
	width: 100%;
}
.cmn_form_wrap select::-ms-expand {display: none;}

.cmn_form_wrap :-ms-input-placeholder,
.mailpoet_form :-ms-input-placeholder {color: #a3a3a3;}
.cmn_form_wrap :-ms-input-placeholder, .mailpoet_form :-ms-input-placeholder {color: #a3a3a3;}
.cmn_form_wrap ::placeholder,
.mailpoet_form ::placeholder {color: #a3a3a3;}

.cmn_form_submit {
	display: flex;
	justify-content: center;
	margin-top: 2.5em;
}
.mailpoet_form .cmn_form_submit {
	background-color: #fff;
	border-top: none;
	margin-top: 0;
}
.cmn_form_submit input + input {
	margin-left: 4%;
}
.cmn_form_submit input,
.mailpoet_submit {
	background-color: #fab670;
	border: none;
	border-radius: 0.6rem;
	color: #333;
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	padding: 1.6rem 3.0rem;
	position: relative;
	text-align: center;
	text-decoration: none;
}
.page_contact .cmn_form_submit input {
	min-width: 27.8rem;
}
.cmn_form_submit .cmn_form_back {
	background-color: #ddd;
}
.device_pc .cmn_form_submit input {transition: opacity 0.25s;}
.device_pc .cmn_form_submit input:hover {opacity: 0.8;}

.cmn_form_none {
	display: none;
}

/*===============================================
	フォーム：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.cmn_form_wrap li,
	.mailpoet_paragraph {
		padding: 2.5rem 4rem;
	}

	.cmn_form_wrap dl,
	.mailpoet_paragraph {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.cmn_form_wrap dt,
	.mailpoet_paragraph label {
		margin-bottom: 0;
		width: 14em;
	}
	.cmn_form_wrap dd {
		width: calc(100% - 14em);
	}

	.cmn_form_wrap textarea {
		height: 25rem;
	}

	.cmn_form_submit input {min-width: 27.8rem;}
	.cmn_form_submit .cmn_form_back {min-width: inherit;}
}



/* ---------------------------------------------------------

	14. プライバシーポリシー

--------------------------------------------------------- */
.privacy_list h2 {
	background: none;
	border-top: 0.1rem dotted #b2b2b2;
	color: #ed9944;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 2em 0 1em;
	padding: 2em 0 0;
}



/* ---------------------------------------------------------

	15. 教材業者様

--------------------------------------------------------- */
.distributor_list_download {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 2.4em;
}
.distributor_list_download.wp-block-buttons .wp-block-button {
	display: block;
	margin: 0;
	width: 48%;
}
.distributor_list_download.wp-block-buttons .wp-block-button:nth-child(n+3) {
	margin-top: 4%;
}
.distributor_list_download.wp-block-buttons .wp-block-button__link {
	background-color: #fab670;
	border-radius: 0.6rem;
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.7rem;
	height: 4em;
	line-height: 1.4;
	padding: 0;
	text-align: center;
}

.distributor_flow h3 {
	border-top: 0.1rem dotted #b2b2b2;
	color: #ed9944;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 2em 0 1em;
	padding: 2em 0 0;
}
.distributor_flow h3:first-child {
	border-top: none;
	padding-top: 0;
}
.distributor_flow h3:not(:first-child) {margin-top: 2em;}
.distributor_flow h4 {
	margin-top: 1.5rem;
}
.distributor_flow li {
	line-height: 2.0;
	padding-left: 1em;
	text-indent: -1em;
}
.distributor_flow li::before {content: '・';}

/*===============================================
	教材業者様：768px以上
===============================================*/
@media screen and (min-width:768px) {
	.distributor_list_download {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		margin-top: 2.4em;
	}
	.distributor_list_download.wp-block-buttons .wp-block-button {width: 24%;}
	.distributor_list_download.wp-block-buttons .wp-block-button:nth-child(n+3) {margin-top: 0;}
	.distributor_list_download.wp-block-buttons .wp-block-button__link br {display: none;}
}



/* ---------------------------------------------------------

	16. モニター募集要項

--------------------------------------------------------- */
.monitor_btn {
	border-top: 0.1rem dotted #b2b2b2;
	margin-top: 2em;
	padding-top: 0.5em;
}
.monitor_btn .cmn_btn {margin-right: 0;}
