body {
	font-family: "Noto Sans JP", serif;
}

/*
Theme Name: child
Theme URI:
Description:
Template: twentytwentyone
Author: makesview
Author URI: https://makes-view.co.jp/
Version: 1.0.0
*/

html,
button,
input,
select,
textarea { /* 不要な指定は消す */
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

a[href$=".pdf"] {
	-webkit-text-decoration: underline;
	align-items: center;
	color: #000;
	display: flex;
	flex-wrap: nowrap;
	line-height: 1.5;
	text-decoration: underline;
}

a[href$=".pdf"]::before {
	background-image: url(/wp-content/themes/child/image/icon/icon_pdf.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	flex-shrink: 0;
	height: 38px;
	margin-right: 15px;
	width: 30px;
}

a[href$=".pdf"]:hover {
	-webkit-text-decoration: none;
	text-decoration: none;
}

/* PC固定ページ 共通設定 */

.common_page_wrap {
	padding: 100px 0;
}

.not_found .text {
	text-align: center;
}

.reserve_text {
	font-size: 30px;
	text-align: center;
}

/* パンくず */

.breadcrumb {
	color: #3e3e3e;
	font-size: 12px;
	letter-spacing: 0.08em;
}

.breadcrumb a {
	-webkit-text-decoration: none;
	color: #3e3e3e;
	text-decoration: none;
}

/* PC固定ページ お問い合わせ */

.page_contact table {
	border-collapse: collapse;
	margin: 0 auto 50px;
	width: 74%;
}

.page_contact table th,
.page_contact table td {
	border: solid 1px #dfdfdf;
	font-size: 14px;
	padding: 20px;
	vertical-align: middle;
}

.page_contact table th {
	background: #f7f7f7;
	letter-spacing: 0.05em;
	white-space: nowrap;
	width: 25%;
}

.page_contact table th .hissu,
.page_contact table th .ninni {
	background: #c70000;
	border-radius: 30px;
	color: #fff;
	font-size: 10px;
	letter-spacing: 0.08em;
	margin-right: 15px;
	padding: 5px 15px;
}

.page_contact table th .ninni {
	background: #333;
}

.page_contact table td {
	width: 75%;
}

.page_contact input[type=text],
.page_contact input[type=email],
.page_contact #zip {
	border: 1px solid #a4a4a4;
	border-radius: 4px;
	height: 44px;
	padding: 1em;
	width: 85%;
}

.page_contact input.tel {
	border: 1px solid #a4a4a4;
	padding: 1em;
	width: 18.8%;
}

.page_contact .select_box {
	position: relative;
	width: 50%;
}

.page_contact .select_box::before {
	border: 1px solid currentColor;
	border-left: none;
	border-top: none;
	content: "";
	height: 0.5em;
	position: absolute;
	right: 1em;
	top: 47%;
	transform: translateY(-50%) rotate(45deg);
	width: 0.5em;
	z-index: 1;
}

.mw_wp_form_preview .select_box::before {
	display: none !important;
}

.page_contact select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: 1px solid #a4a4a4;
	outline: none;
	padding: 1em 2.2em 1em 1em;
	width: 100%;
}

.page_contact textarea {
	border: 1px solid #a4a4a4;
	height: 200px;
	padding: 1em;
	width: 85%;
}

.page_contact .attention {
	font-size: 12px;
}

.page_contact #btn_wrap {
	justify-content: center;
	margin: auto;
	text-align: right;
	width: 74%;
}

.page_contact #btn_wrap button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: #ff8001;
	border: none;
	border-radius: 5px;
	color: #fff;
	cursor: pointer;
	display: block;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 50px;
	margin: auto;
	outline: none;
	padding: 0;
	text-align: center;
	transition: 0.3s;
	width: 300px;
}

.page_contact #btn_wrap button[name=submitBack] {
	background: #333;
	margin-top: 20px;
}

.page_contact #btn_wrap button:hover {
	opacity: 0.8;
}

.contact_form_disc {
	font-size: 15px;
	letter-spacing: 0.02em;
	margin: 0 auto 50px;
	width: 74%;
}

.contact_form_disc .caution {
	color: #373636;
	font-size: 14px;
}

.contact_form_disc .text {
	margin-bottom: 10px;
}

.privacy_term_outer .privacy_term_inner {
	height: 138px;
	margin: auto;
	overflow: auto;
}

.privacy_term_outer .privacy_term_inner .privacy_index {
	font-size: 14px;
}

.privacy_term_outer .privacy_term_inner .main_text {
	font-size: 13px;
	margin-bottom: 25px;
}

.privacy_term_outer .privacy_term_inner dl dt {
	border-left: solid 3px #ccc;
	font-size: 13px;
	margin-bottom: 5px;
	padding-left: 1em;
}

.privacy_term_outer .privacy_term_inner dl dd {
	font-size: 13px;
}

.privacy_term_outer .privacy_term_inner dl + dl {
	margin-top: 30px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar {
	width: 8px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-track {
	background: transparent;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-thumb {
	background-color: #333;
	border-radius: 10px;
}

.privacy_term_outer {
	border-bottom: solid 1px #e3e3e3;
	border-top: solid 1px #e3e3e3;
	margin: 0 auto 50px;
	padding: 30px 0;
	width: 60%;
}

.privacy_check_list .mwform-checkbox-field-text {
	padding-right: 0;
}

.privacy_check_list .error {
	font-size: 12px;
}

.privacy_term_detail {
	font-size: 13px;
	font-weight: 600;
	margin: 20px 0;
	position: relative;
	text-align: center;
}

.privacy_term_detail::after {
	aspect-ratio: 1/1;
	border: solid #333;
	border-width: 2px 2px 0 0;
	content: "";
	display: block;
	margin: 5px auto 0;
	min-width: 0;
	rotate: 135deg;
	width: 10px;
}

.mw_wp_form_confirm .privacy_check_list,
.mw_wp_form_confirm .privacy_term_detail {
	display: none;
}

/* ラジオボタン デザイン */

/* ラジオボタンを隠す */

.radio_btns input[type=radio].radio_btns__item {
	display: none;
}

.radio_btns label {
	display: inline-block;
}

/* spanの左側にボタンを配置するスペースを作る */

.radio_btns .radio_btns__item + span {
	display: inline-block;
	padding-left: 2em;
	position: relative;
}

/* 各パーツを作成 */

.radio_btns .radio_btns__item + span::after,
.radio_btns .radio_btns__item + span::before {
	border: 1px solid #aaaaaa;
	border: 1.2px solid #a4a4a4;
	border-radius: 50%;
	bottom: 0;
	content: "";
	display: block;
	height: 20px;
	left: 0;
	margin: auto;
	position: absolute;
	top: 0;
	width: 20px;
}

/* after上書き */

.radio_btns .radio_btns__item + span::after {
	background: #333;
	border: none;
	height: 12px;
	left: 4px;
	top: 0px; /*--ここを0にすることで下線は非表示となる--*/ /*--ここを0にすることで下線は非表示となる--*/
	transform: scale(0);
	transition: all 0.3s;
	width: 12px; /*--0.3秒かけて下線が表示される--*/
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/

.radio_btns .radio_btns__item:checked + span {
	font-weight: 600;
}

.radio_btns .radio_btns__item:checked + span::after {
	transform: scale(1);
}

/* チェックボックス デザイン */

.page_contact input[type=checkbox] { /* デフォルトcheckボックス非表示*/
	display: none;
}

.mwform-checkbox-field-text {
	display: inline-block;
	padding: 0 0 0 30px;
	position: relative;
}

.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
	content: "";
	display: block;
	position: absolute;
}

.mwform-checkbox-field-text::before {
	aspect-ratio: 1/1;
	background: #fff;
	border: 2px solid #ccc;
	border-radius: 2px;
	left: 0;
	min-width: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

.mwform-checkbox-field-text::after {
	aspect-ratio: 2/1;
	border-color: transparent transparent #333 #333;
	border-style: solid;
	border-width: 3px;
	left: 0;
	margin-top: -0.2em;
	min-width: 0;
	opacity: 0;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	width: 20px;
}

input[type=checkbox]:checked + .mwform-checkbox-field-text::after {
	opacity: 1;
}

.mw_wp_form .horizontal-item {
	display: inline-block;
	margin-bottom: 10px;
	margin-right: 10px;
}

/* サンクスページ */

.page_contact .thanks_textArea .name {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 20px;
	text-align: center;
}

.page_contact .thanks_textArea .contact_text {
	margin: 0 auto 50px;
	width: 62%;
}

.page_contact .thanks_textArea .ichiran_link {
	-webkit-appearance: none;
	-moz-appearance: none;
	-webkit-text-decoration: none;
	appearance: none;
	background-color: #ff8001;
	border: none;
	border-radius: 4px;
	color: #fff;
	cursor: pointer;
	display: block;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 50px;
	margin: 0 auto;
	outline: none;
	padding: 0;
	text-align: center;
	text-decoration: none;
	transition: 0.3s;
	width: 300px;
}

.page_contact .thanks_textArea .ichiran_link:hover {
	opacity: 0.8;
}

.page_contact .thanks_textArea .contact_text .space {
	display: block;
}

.page_contact .thanks_textArea .contact_text .space {
	display: block;
	margin-top: 10px;
}

/* ステップバー デザイン */

.page_contact .progressbar {
	justify-content: center;
	margin-bottom: 60px;
}

.page_contact .progressbar .item {
	align-items: center;
	justify-content: center;
	letter-spacing: 0.05em;
	line-height: 1.5;
	padding: 43px 0 13px;
	position: relative;
	position: relative;
	text-align: center;
	width: 18%;
}

.page_contact .progressbar .item .en {
	color: #7b7b7b;
	display: block;
	font-size: 14px;
}

.page_contact .progressbar .item::before {
	aspect-ratio: 1/1;
	border: solid 1px #a5a5a5;
	border-radius: 50%;
	content: "";
	left: 0;
	margin: auto;
	min-width: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 30px;
}

.page_contact .progressbar .item.active::after {
	aspect-ratio: 1/1;
	background: #333;
	border-radius: 50%;
	content: "";
	left: 0;
	margin: auto;
	min-width: 0;
	position: absolute;
	right: 0;
	top: 8px;
	width: 15px;
}

.page_contact .progressbar #step_2 .en {
	position: relative;
}

.page_contact .progressbar #step_2 .en::before,
.page_contact .progressbar #step_2 .en::after {
	background: #a5a5a5;
	bottom: 0;
	content: "";
	height: 1px;
	left: -47px;
	margin: auto;
	position: absolute;
	top: 0;
	width: 100px;
}

.page_contact .progressbar #step_2 .en::after {
	left: auto;
	right: -47px;
}

.privacy_check_list {
	align-items: center;
	justify-content: center;
	margin-bottom: 25px;
}

.privacy_check_list .hissu {
	background: #c70200;
	border-radius: 30px;
	color: #fff;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	padding: 2px 15px;
}

.mw_wp_form .privacy_check_list .horizontal-item {
	margin: 0;
}

/* PC固定ページ 個人情報保護方針 */

.page_privacy .main_text {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 3em;
}

.page_privacy dl {
	margin-bottom: 50px;
}

.page_privacy dl:last-child {
	margin-bottom: 0;
}

.page_privacy dl dt {
	border-left: 3px solid #ccc;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 0.5em;
	padding-left: 1em;
}

.page_privacy dl dd {
	font-size: 14px;
	line-height: 2;
}

/* PC固定ページ 404ページ */

#page_404 {
	text-align: center;
}

#page_404 .num {
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
	font-size: 100px;
}

#page_404 .text {
	font-size: 16px;
	margin-bottom: 1em;
}

/* PC固定ページ アーカイブページ */

/* 投稿リスト表示 */

.archive_page_list > article {
	border-bottom: 1px dashed #eee;
	padding-bottom: 15px;
	padding-right: 30px;
	padding-top: 15px;
}

.archive_page_list > article:after {
	border: solid #ccc;
	border-width: 2px 2px 0 0;
	bottom: 0;
	content: "";
	height: 10px;
	margin: auto;
	position: absolute;
	right: 5px;
	top: 0;
	transform: rotate(45deg);
	width: 10px;
}

.archive_page_list > article .date {
	font-size: 80%;
	font-weight: bold;
	width: 100px;
}

.archive_page_list > article .content_area {
	width: calc(100% - 100px);
}

.archive_page_list > article .content_area .ttl {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	display: -webkit-box;
	font-weight: bold;
	overflow: hidden;
}

.archive_page_list > article .content_area .content {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 80%;
	overflow: hidden;
}

/* wp-pagenavi base */

.wp-pagenavi {
	clear: both;
	margin-top: 50px;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	-webkit-text-decoration: none;
	background-color: #fff;
	border: solid 1px #e0e0d2;
	border-radius: 3px;
	color: #999;
	margin: 0 2px;
	padding: 8px 15px;
	text-align: center;
	text-decoration: none;
	transition: 0.2s ease-in-out;
	white-space: nowrap;
}

.wp-pagenavi a:hover {
	background-color: #66cccc;
	border-color: #66cccc;
	color: #fff;
}

.wp-pagenavi .current {
	background-color: #66cccc;
	border-color: #66cccc;
	color: #fff;
	font-weight: bold;
}

/* PC投稿ページ シングルページ */

.single_page .single_flame {
	border: solid 1px #ccc;
	padding: 70px;
}

.single_main_img {
	height: 300px;
	margin: 0 auto 40px;
	width: 300px;
}

.singleContent .title_area {
	border-bottom: solid 1px #ccc;
	margin-bottom: 40px;
	padding-bottom: 30px;
	position: relative;
}

.singleContent .title_area .en::after {
	background: #333;
	border-radius: 50%;
	content: "";
	display: block;
	height: 11px;
	width: 11px;
}

.singleContent .title_area .en {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-size: 12px;
	gap: 10px;
	letter-spacing: 0.08em;
	margin-bottom: 30px;
	text-align: center;
	text-transform: uppercase;
}

.singleContent .title_area .single_title {
	font-size: 30px;
	font-weight: 600;
	line-height: 1.4;
}

.single_main_img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.singleContent .single_title time {
	font-size: 12px;
	font-weight: 600;
}

.singleContent .single_title time i {
	margin-right: 0.5em;
}

.singleContent .category_list ul {
	gap: 10px;
}

.singleContent .category_list ul li {
	background-color: #333;
	border-radius: 3px;
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.08em;
	padding: 2px 20px;
}

.singleContent article h2 {
	border: solid 1px #333;
	font-size: 20px;
	line-height: 1.4;
	margin: 1.5em 0 1em;
	padding: 15px;
	position: relative;
}

.site_single_latest {
	border-bottom: solid 3px #333;
	border-left: solid 1px #333;
	margin-bottom: 80px;
	padding: 0 0 35px 0;
}

.site_single_latest .en {
	font-size: 13px;
	letter-spacing: 0.08em;
	text-align: center;
}

.singleContent article h2::before {
	top: 0px;
}

.singleContent article h2::after {
	bottom: 0;
}

.singleContent article h3 {
	background-color: #ccc;
	font-size: 18px;
	margin: 1.5em 0 1.5em;
	padding: 0.7rem 1rem;
	position: relative;
}

.singleContent article h4 {
	border-left: 5px solid #5b5959;
	color: #333;
	font-size: 17px;
	margin: 1.5em 0 1em;
	padding: 2px 10px;
	position: relative;
}

.singleContent article h5:before {
	content: "■";
	padding-right: 10px;
}

.singleContent article h5 {
	font-size: 18px; /* padding-left: 1em; */
	margin: 1.5em 0;
}

.singleContent h6 {
	border-bottom: 1px solid;
	font-size: 17px;
	margin: 1.5em 0 1em;
	padding-bottom: 3px;
}

.singleContent p {
	font-size: 16px;
	line-height: 1.7;
}

.singleContent .addtoany_content {
	margin: 40px auto 0;
}

.single_page .singleContent .ichiran_link {
	border: solid 1px #333;
	border-radius: 6px;
	color: #333;
	display: block;
	font-size: 16px;
	line-height: 50px;
	margin: 50px auto 0 auto;
	text-align: center;
	transition: 0.3s;
	width: 300px;
}

.single_page .singleContent .ichiran_link:hover {
	opacity: 0.7;
}

.single_page aside#info_side {
	background-color: #fff;
	padding: 20px;
}

.single_page aside#info_side p#news-not_found {
	text-align: center;
}

.single_page aside#info_side ul li + li {
	margin-top: 12px;
}

.single_page aside#info_side ul li a {
	align-items: center;
	color: #000;
	color: initial;
	font-size: 14px;
	transition: 0.3s;
}

.single_page aside#info_side ul li a:hover {
	opacity: 0.7;
}

.single_page aside#info_side ul li a time {
	font-size: 12px;
	font-weight: 600;
}

.single_page aside#info_side ul li a time i {
	margin-right: 0.5em;
}

.single_page aside#info_side ul li a h3 {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	display: -webkit-box;
	font-size: 14px;
	overflow: hidden;
}

.singleContent .day_cat {
	align-items: center;
	margin-bottom: 40px;
}

#toc_container a {
	color: #333;
}

.singleContent .day_cat .day {
	border-right: solid 1px #ccc;
	color: #6c6c6c;
	font-size: 13px;
	margin-right: 20px;
	padding-right: 20px;
}

.site_single_latest .topic {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-align: center;
}

.site_single_latest .img {
	margin: 20px auto;
	width: 85px;
}

.site_single_latest .disc {
	font-size: 14px;
	text-align: center;
}

.aside_article_type .ttl {
	border-bottom: solid 2px;
	font-size: 15px;
	margin-bottom: 20px;
	padding-bottom: 5px;
}

.aside_article_type li .img {
	height: 70px;
	position: relative;
	width: 100px;
}

.aside_article_type .inner_ttl {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 13px;
	line-height: 1.4;
	margin-top: 2px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.aside_article_type li .img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.aside_article_type .cat_wrap {
	gap: 5px;
}

.aside_article_type .cat_wrap .label {
	background: #333;
	color: #fff;
	font-size: 10px;
	padding: 0px 10px;
}

.aside_article_type .cat_wrap ul {
	-moz-column-gap: 5px;
	column-gap: 5px;
	display: flex;
	padding-left: 0;
	row-gap: 5px;
}

.aside_article_type ul {
	padding-left: 20px;
	position: relative;
}

.aside_article_type .cat_wrap ul::before {
	display: none;
}

.aside_article_type ul::before {
	color: #333;
	content: "∟";
	font-size: 14px;
	left: 2px;
	position: absolute;
}

.latest_post_area {
	margin: 50px auto 0;
	width: 100%;
}

.latest_post_area ul {
	grid-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.latest_post_area .ttl {
	border-bottom: solid #ccc 1px;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.08em;
	margin-bottom: 30px;
	padding-bottom: 20px;
}

.latest_post_area .ttl .en {
	display: block;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
}

.latest_post_area a {
	color: #000;
}

.latest_post_area .inner_ttl {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 13px;
	line-height: 1.4;
	margin-bottom: 10px;
	margin-top: 2px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.latest_post_area .day_cat .day {
	border-right: solid 1px #ccc;
	color: #6c6c6c;
	font-size: 12px;
	margin-right: 10px;
	padding-right: 10px;
}

.latest_post_area .day_cat {
	align-items: flex-start;
	flex-wrap: nowrap;
	margin: auto 0 0;
}

.latest_post_area .category_list .cat_wrap {
	gap: 5px;
	padding: 0;
}

.latest_post_area .category_list .cat {
	background: #333;
	border-radius: 3px;
	color: #fff;
	font-size: 12px;
	padding: 0 10px;
	text-align: center;
}

.latest_post_area .category_list {
	width: 100%;
}

.latest_post_area .img {
	height: 145px;
	margin-bottom: 12px;
	overflow: hidden;
	position: relative;
}

.latest_post_area .img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	transition: 0.3s;
	width: 100%;
}

.latest_post_area a:hover .img img {
	transform: scale(1.1);
}

.aside_article_type + .aside_article_type {
	margin-top: 35px;
}

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style {
	top: 280px !important;
}

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style::before {
	background: #ccc;
	content: "";
	height: 100px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: -103px;
	width: 1px;
}

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style::after {
	content: "SHARE ON";
	font-size: 11px;
	left: 8px;
	margin: auto;
	position: absolute;
	right: 0;
	text-align: center;
	top: -169px;
	writing-mode: vertical-lr;
}

.singleContent_links {
	align-items: center;
	gap: 100px;
	justify-content: center;
	margin-top: 100px;
	position: relative;
}

.singleContent_links ul {
	width: 260px;
}

.singleContent_links ul.prev .btn {
	padding-left: 30px;
}

.singleContent_links ul.next .btn {
	padding-right: 30px;
}

.singleContent_links .btn {
	border-bottom: solid 1px #ccc;
	font-size: 15px;
	margin-bottom: 23px;
	position: relative;
}

.singleContent_links::before {
	background: #ccc;
	content: "";
	height: 100%;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 1px;
}

.singleContent_links a {
	color: #333;
	font-size: 14px;
}

.singleContent_links a .ttl {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;
}

.singleContent_links .img {
	height: 140px;
	margin-bottom: 15px;
	overflow: hidden;
	position: relative;
}

.singleContent_links .img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	transition: 0.3s;
	width: 100%;
}

.singleContent_links a:hover .img img {
	transform: scale(1.1);
}

.singleContent_links ul.next .btn {
	text-align: right;
}

.singleContent_links ul.next .img {
	margin-left: auto;
}

.breadcrumb.single {
	margin-top: 70px;
	text-align: right;
}

.aside_article_type .text_box {
	padding-left: 10px;
	width: calc(100% - 100px);
}

#toc_container li {
	padding-left: 20px;
	position: relative;
}

#toc_container li::before {
	background: url(/wp-content/themes/child/image/article_arrow.png) center no-repeat;
	background-size: contain;
	bottom: auto;
	content: "";
	height: 14px;
	left: 0;
	position: absolute;
	top: 6px;
	width: 13px;
}

.singleContent article h2::before,
.singleContent article h3::before {
	background: rgb(0, 0, 0);
	bottom: 0px;
	content: "";
	height: 1px;
	margin: auto;
	position: absolute;
	right: -35px;
	top: 0px;
	width: 50px;
}

.singleContent ol {
	background-image: url(/wp-content/themes/child/image/grid.gif);
	border: solid 1px #333;
	counter-reset: count 0;
	padding: 20px 10px;
	position: relative;
}

.singleContent ol li {
	position: relative;
}

.singleContent ol li::before {
	content: "";
	content: counter(count) ". ";
	counter-increment: count 1;
}

.singleContent ol li + li {
	margin-top: 7px;
}

.singleContent ol::before {
	border-color: #333 #fff #333;
	border-style: solid;
	border-width: 0 30px 30px 0;
	content: "";
	position: absolute;
	right: -2px;
	top: -2px;
}

.singleContent ol::after {
	content: "";
}

.singleContent #toc_container {
	margin-bottom: 50px;
}

.singleContent_links ul li.btn::before {
	background: url(/wp-content/themes/child/image/icon/arrow.svg) center no-repeat;
	background-position: center;
	background-size: contain;
	content: "";
	height: 20px;
	position: absolute;
	right: 0;
	top: 5px;
	width: 20px;
}

.singleContent_links ul.prev li.btn::before {
	left: 0;
	right: auto;
	transform: scale(-1, 1);
}

#toc_container.no_bullets li,
#toc_container.no_bullets ul,
#toc_container.no_bullets ul li,
.toc_widget_list.no_bullets,
.toc_widget_list.no_bullets li {
	border: none;
}

.singleContent .category_list ul li::before {
	display: none;
}

.singleContent .category_list ul {
	border: none;
	padding: 0;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

/* ホバー */

a {
	-webkit-text-decoration: none;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

body {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	line-height: normal;
	line-height: initial;
	margin: 0;
	min-height: 100vh;
	min-width: 1440px;
	text-rendering: optimizeLegibility;
}

body.fixed {
	height: 100%;
	position: fixed;
	width: 100%;
}

a[href^="tel:"] {
	pointer-events: none;
}

/* layout_top_flow. */

.layout_top_flow {
	margin-top: 150px;
}

/* layout_top_function */

.layout_top_function {
	margin-top: 150px;
}

/* layout_top_merit */

.layout_top_merit {
	margin-top: 150px;
}

/* layout_top_plan */

.layout_top_plan {
	margin-top: 86px;
}

/* layout_top_system */

.layout_top_system {
	margin-top: 165px;
}

/* layout_top_works */

.layout_top_works {
	margin-top: 130px;
}

/* layout_top_worries */

.layout_top_worries {
	margin-top: 52px;
}

/* common_accordion */

.common_accordion .common_accordion_item {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.0509803922);
	padding: 28px 51px 35px 50px;
}

.common_accordion_item + .common_accordion_item {
	margin-top: 9px;
}

.common_accordion .common_accordion_question_box {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 0 10px;
	position: relative;
}

.common_accordion .common_accordion_icon {
	align-content: center;
	display: grid;
	height: 20px;
	justify-content: center;
	place-content: center;
	width: 20px;
}

.common_accordion .common_accordion_icon_bar {
	background-color: #1b96a3;
	display: block;
	height: 2px;
	transition: all 0.3s ease;
	width: 20px;
}

.common_accordion .common_accordion_icon_bar:last-of-type {
	rotate: 90deg;
	translate: 0 -2px;
}

.common_accordion .common_accordion_question_box.is_open .common_accordion_icon_bar:first-of-type {
	rotate: -45deg;
}

.common_accordion .common_accordion_question_box.is_open .common_accordion_icon_bar:last-of-type {
	rotate: 45deg;
}

.common_accordion .common_accordion_question_box span {
	align-items: center;
	background-color: #1b96a3;
	border-radius: 3px;
	color: #fff;
	display: inline-flex;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.common_accordion .common_accordion_question {
	color: #1b96a3;
	flex: 1;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.6;
	margin-top: -8px;
}

.common_accordion .common_accordion_answer {
	border-top: 2px solid #ededed;
	color: #2b2b2b;
	display: none;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.6;
	margin-top: 18px;
	padding-top: 13px;
}

/* common_arrow */

.common_arrow {
	align-content: center;
	background-color: #fff;
	border-radius: 100vmax;
	display: grid;
	height: 30px;
	justify-content: center;
	place-content: center;
	transition: all 0.3s ease;
	width: 30px;
}

.common_arrow.common_arrow_reverse {
	background-color: #1b96a3;
	transition: all 0.3s ease;
}

.common_arrow.common_arrow_reverse .common_arrow_arrow::before,
.common_arrow.common_arrow_reverse .common_arrow_arrow::after {
	background-color: #fff;
	transition: all 0.3s ease;
}

.common_arrow_arrow {
	display: inline-block;
	height: 10px;
	position: relative;
	width: 5px;
}

.common_arrow_arrow::before,
.common_arrow_arrow::after {
	background-color: #1b96a3;
	content: "";
	height: 2px;
	position: absolute;
	right: 0;
	top: calc(50% - 1px);
	transform-origin: calc(100% - 1px) 50%;
	transition: all 0.3s ease;
	width: 7px;
}

.common_arrow_arrow::before {
	transform: rotate(53.15deg);
}

.common_arrow_arrow::after {
	transform: rotate(-53.15deg);
}

/* common_article_title */

.common_article_title:last-of-type .common_article_title_link {
	border-bottom: 2px solid #e3e3e3;
	transition: all 0.3s ease;
}

.common_article_title .common_article_title_link {
	background-color: transparent;
	border-top: 2px solid #e3e3e3;
	display: block;
	padding: 30px 30px 34px;
	transition: all 0.3s ease;
}

.common_article_title .common_article_title_body {
	align-items: center;
	display: flex;
	gap: 0 20px;
}

.common_article_title .common_article_title_posttime {
	background-color: #dfeff0;
	border-radius: 100vmax;
	color: #2b2b2b;
	display: inline-block;
	font-family: "neulis-cursive", sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	max-width: 100px;
	padding: 6px 0;
	text-align: center;
	width: 100%;
}

.common_article_title .common_article_title_title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	color: #2b2b2b;
	display: -webkit-box;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.6;
	overflow: hidden;
}

/* common_button */

.common_button {
	align-items: center;
	background-color: #fff;
	border: 2px solid #e3e3e3;
	border-radius: 100vmax;
	display: flex;
	gap: 0 23px;
	padding: 18px 0 18px 100px;
	transition: background-color 0.3s ease;
	width: 100%;
}

.common_button .common_button_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

.common_button.common_button_wide .common_button_arrow {
	background-color: #1b96a3;
}

.common_button.common_button_login {
	gap: 0 10px;
	padding: 19px 0 18px 60px;
}

.common_button.common_button_login .common_button_text {
	color: #1b96a3;
	font-size: 18px;
}

/* common_card */

.common_card .common_card_link {
	border-bottom: 2px solid #ededed;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding-bottom: 15px;
	transition: border-bottom 0.3s ease;
	width: 100%;
}

.common_card .common_card_image {
	border-radius: 5px;
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	width: 100%;
}

.common_card .common_card_image img {
	-o-object-fit: cover;
	aspect-ratio: 3/2;
	height: auto;
	object-fit: cover;
	transition: scale 0.3s ease;
	width: 100%;
}

.common_card .common_card_body {
	display: flex;
	flex: 1;
	flex-direction: column;
	margin-top: 15px;
}

.common_card .common_card_title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #2b2b2b;
	display: -webkit-box;
	flex: 1;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.6;
	overflow: hidden;
	transition: color 0.3s ease;
}

.common_card .common_card_posttime {
	color: #2b2b2b;
	display: block;
	font-family: #1b96a3;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 10px;
	position: relative;
	text-align: right;
	transition: color 0.3s ease;
}

/* common_cards */

.common_cards {
	display: flex;
	gap: 0 20px;
	margin: 0 auto;
	max-width: 1140px;
	width: 100%;
}

.common_cards .common_cards_card {
	display: flex;
	flex: 1 1 0;
}

/* common_contact_button */

.common_contact_button {
	align-items: center;
	background-color: #1b96a3;
	border-radius: 100vmax;
	display: flex;
	gap: 0 20px;
	padding: 0 42px 0 0;
	transition: all 0.3s ease;
	width: 100%;
}

.common_contact_button:hover .common_arrow.common_arrow_reverse .common_arrow_arrow::before,
.common_contact_button:hover .common_arrow.common_arrow_reverse .common_arrow_arrow::after {
	background-color: #1b96a3;
}

.common_contact_button .common_contact_button_mark {
	background-color: #138290;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 30px;
	padding: 20.5px 36px;
	transition: all 0.3s ease;
}

.common_contact_button .common_contact_button_box {
	align-items: center;
	display: flex;
	gap: 0 10px;
}

.common_contact_button .common_contact_button_text {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 30px;
	transition: all 0.3s ease;
}

.common_contact_button.common_contact_button_mv .common_contact_button_mark {
	padding: 21px 36px 20px;
}

.common_contact_button.common_contact_button_reverse {
	background-color: #fff;
}

.common_contact_button.common_contact_button_reverse .common_contact_button_mark {
	background-color: #d6eef0;
	color: #1b96a3;
}

.common_contact_button.common_contact_button_reverse .common_contact_button_text {
	color: #2b2b2b;
}

.common_contact_button.common_contact_button_border {
	border: 2px solid #fff;
	padding: 0 40px 0 0;
}

.common_contact_button.common_contact_button_border .common_contact_button_mark {
	padding: 18.5px 36px 18.5px 34px;
}

/* common_contact */

.common_contact {
	background: url(/wp-content/themes/child/image/bg_contact.jpg) no-repeat center center/cover;
	padding: 84px 0 64px;
	position: relative;
}

.common_contact::before {
	background: url(/wp-content/themes/child/image/robot_icon1.png) center center/contain no-repeat;
	content: "";
	height: 133px;
	left: 38.3%;
	position: absolute;
	top: -68px;
	width: 200px;
}

.common_contact .common_contact_bg_title {
	color: rgba(255, 255, 255, 0.3);
	font-family: "neulis-cursive", sans-serif;
	font-size: 287px;
	font-weight: 700;
	left: 50%;
	letter-spacing: 0.01em;
	line-height: 1;
	position: absolute;
	text-transform: capitalize;
	top: 50%;
	translate: -50% -60%;
}

.common_contact .common_contact_title_box {
	margin: 0 auto;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.common_contact .common_contact_title {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
}

.common_contact .common_contact_body {
	margin-top: 40px;
}

.common_contact .common_contact_text {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 48px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
}

.common_contact .common_contact_text:not(:first-of-type) {
	margin-top: 28px;
}

.common_contact .common_contact_text.common_contact_text_small {
	font-size: 24px;
}

.common_contact .common_contact_button_wrap {
	margin: 29px auto 0;
	max-width: 320px;
	width: 100%;
}

/* commmon_heading */

.common_heading {
	position: relative;
}

.common_heading .common_heading_main {
	color: #1b96a3;
	font-family: "Noto Sans JP", serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.001em;
	line-height: 1;
	margin: 0 auto;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.common_heading .common_heading_main::before,
.common_heading .common_heading_main::after {
	background-color: #1b96a3;
	border-radius: 100vmax;
	content: "";
	height: 10px;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 10px;
}

.common_heading .common_heading_main::before {
	left: -20px;
}

.common_heading .common_heading_main::after {
	right: -20px;
}

.common_heading .common_heading_sub {
	color: #1b96a3;
	display: block;
	font-family: "neulis-cursive", sans-serif;
	font-size: 56px;
	font-weight: 700;
	left: 50%;
	letter-spacing: 0.01em;
	line-height: 1;
	opacity: 0.1;
	position: absolute;
	text-align: center;
	top: 50%;
	translate: -50% -60%;
	width: 100%;
	z-index: -10;
	z-index: 10;
}

/* common_icon */

.common_icon {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 12px 0;
}

.common_icon .common_icon_image_box {
	align-content: center;
	background-color: #fff;
	border-radius: 100vmax;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.0509803922);
	display: grid;
	height: 160px;
	justify-content: center;
	place-content: center;
	width: 160px;
}

.common_icon .common_icon_image {
	width: 80px;
}

.common_icon .common_icon_image.space {
	margin-left: 16px;
}

.common_icon .common_icon_image img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.common_icon .common_icon_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.6;
	text-align: center;
}

/* common_icons */

.common_icons {
	grid-gap: 38px 84px;
	display: grid;
	gap: 38px 84px;
	grid-template-columns: repeat(5, 1fr);
}

/* common_item */

.common_item {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 15px 0;
}

.common_item .common_item_step {
	width: -moz-fit-content;
	width: fit-content;
}

.common_item .common_item_step span {
	background-color: #1b96a3;
	border-radius: 100vmax;
	color: #fff;
	display: inline-block;
	font-family: "neulis-cursive", sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 3px 0;
	text-align: center;
	width: 60px;
}

.common_item .common_item_number {
	color: #1b96a3;
	font-family: "neulis-cursive", sans-serif;
	font-size: 48px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
}

.common_item .common_item_image {
	align-content: center;
	background-color: #f9fbfc;
	border-radius: 100vmax;
	display: grid;
	height: 255px;
	justify-content: center;
	margin-top: -68px;
	place-content: center;
	width: 255px;
}

.common_item .common_item_image img {
	aspect-ratio: 1;
	width: 110px;
}

.common_item .common_item_image.common_item_image_space img {
	margin-left: 18px;
}

.common_item .common_item_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.6;
	text-align: center;
}

.common_item .common_item_text span {
	color: #1b96a3;
}

.common_item .common_item_text span.large {
	font-size: 20px;
}

/* common_media_stack */

.common_media_stack {
	display: flex;
	flex-direction: column;
	gap: 15px 0;
	width: -moz-fit-content;
	width: fit-content;
}

.common_media_stack .common_media_stack_header {
	position: relative;
}

.common_media_stack .common_media_stack_number {
	background-image: linear-gradient(to right, #1b96a3 5px, transparent 5px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 10px 2px;
	color: #1b96a3;
	font-family: "neulis-cursive", sans-serif;
	font-size: 32px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.3;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.common_media_stack .common_media_stack_image {
	align-content: center;
	background-color: #d6eef0;
	border-radius: 100vmax;
	display: grid;
	height: 200px;
	justify-content: center;
	margin-top: -42px;
	place-content: center;
	width: 200px;
}

.common_media_stack .common_media_stack_image img {
	-o-object-fit: contain;
	aspect-ratio: 1/1;
	height: auto;
	object-fit: contain;
	width: 80px;
}

.common_media_stack .common_media_stack_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.6;
	text-align: center;
}

.common_media_stack .common_media_stack_text span {
	color: #1b96a3;
}

/* common_panel */

.common_panel .common_panel_link {
	border-radius: 5px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.0509803922);
	display: flex;
	flex: 1;
	flex-direction: column;
	width: 100%;
}

.common_panel .common_panel_image {
	border-radius: 5px 5px 0 0;
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	width: 100%;
}

.common_panel .common_panel_image img {
	-o-object-fit: cover;
	aspect-ratio: 350/240;
	height: auto;
	object-fit: cover;
	transition: scale 0.3s ease;
	width: 100%;
}

.common_panel .common_panel_body {
	background-color: #fff;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 20px;
}

.common_panel .common_panel_title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #2b2b2b;
	display: -webkit-box;
	flex: 1;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.6;
	overflow: hidden;
	transition: all 0.3s ease;
}

.common_panel .common_panel_name {
	color: #888888;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 18px;
}

.common_panel .common_panel_box {
	background-color: #f9fbfc;
	border-radius: 3px;
	margin-top: 20px;
	padding: 24px 20px 18px;
}

.common_panel .common_panel_box p {
	color: #2b2b2b;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
}

.common_panel .common_panel_box p:last-child {
	margin-top: 18px;
}

/* common_panels */

.common_panels {
	display: flex;
	gap: 0 45px;
	width: 100%;
}

.common_panels .common_panels_panel {
	display: flex;
	flex: 1 1 0;
}

/* common_title */

.common_title {
	margin: 0 auto;
	width: -moz-fit-content;
	width: fit-content;
}

.common_title .common_title_sub {
	border: 2px solid #1b96a3;
	border-radius: 100vmax;
	color: #1b96a3;
	display: block;
	font-family: "neulis-cursive", sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin: 0 auto;
	max-width: 88px;
	padding: 6px 0;
	text-align: center;
	text-transform: capitalize;
	width: 100%;
}

.common_title .common_title_main {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 18px;
}

.common_title .common_title_main span {
	color: #1b96a3;
}

/* footer */

.footer {
	background: linear-gradient(to right, #1b96a3 0%, #1b96a3 41.7%, transparent 41.7%, transparent 100%);
	overflow: hidden;
	padding: 142px 0 60px;
	position: relative;
}

.footer .footer_inner {
	display: flex;
	gap: 0 151px;
}

.footer .footer_header {
	padding-left: 10px;
	width: 450px;
}

.footer .footer_logo {
	width: 100%;
}

.footer .footer_logo img {
	width: 320px;
}

.footer .footer_meta {
	margin-top: 20px;
}

.footer .footer_name {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
}

.footer .footer_address {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.6;
	margin-top: 30px;
}

.footer .footer_button_box {
	margin-top: 56px;
}

.footer .footer_button_contact {
	max-width: 320px;
	width: 100%;
}

.footer .footer_button_login {
	margin-top: 20px;
	max-width: 220px;
	width: 100%;
}

.footer .footer_copyright {
	color: #fff;
	display: block;
	font-family: "Noto Sans JP", serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 113px;
}

.footer .footer_bg_text {
	bottom: -15px;
	color: white;
	font-family: "neulis-cursive", sans-serif;
	font-size: 95px;
	font-weight: 700;
	left: 0;
	letter-spacing: 0.01em;
	line-height: 1.1;
	opacity: 0.08;
	position: absolute;
	text-transform: uppercase;
}

.footer .footer_body {
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: space-between;
}

.footer .footer_nav {
	display: flex;
	justify-content: space-between;
}

.footer .footer_nav_item_en {
	color: #1b96a3;
	display: block;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	position: relative;
}

.footer .footer_nav_item_en::after {
	background: url(/wp-content/themes/child/image/nav_arrow.svg) center center/contain no-repeat;
	bottom: -18px;
	content: "";
	display: none;
	height: 11px;
	left: 0;
	position: absolute;
	transition: all 0.3s ease;
	width: 8px;
}

.footer .footer_nav_item_jp {
	color: #2b2b2b;
	display: block;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 5px;
	transition: all 0.3s ease;
}

.footer .footer_nav_items {
	display: flex;
	flex-direction: column;
	gap: 30px 0;
}

.footer .footer_links {
	display: flex;
	gap: 0 30px;
}

.footer .footer_link {
	line-height: 1;
}

.footer .footer_link a {
	color: #2b2b2b;
	display: inline-block;
	font-family: "Noto Sans JP", serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1;
	position: relative;
}

/* globalMenuSp */

.globalMenuSp {
	background-color: #fff;
	height: 100vh;
	height: 100svh;
	left: 0;
	opacity: 0;
	overflow-y: scroll;
	position: fixed;
	top: 0;
	transition: opacity 0.3s ease;
	visibility: hidden;
	width: 100%;
	z-index: 90;
}

.globalMenuSp.active {
	opacity: 1;
	visibility: visible;
}

.globalMenuSp a:visited {
	color: #2b2b2b;
}

.globalMenuSp .globalMenuSp_wrapper {
	padding: 113px 0 95px;
}

.globalMenuSp .globalMenuSp_inner {
	padding: 0 20px;
}

.globalMenuSp .globalMenuSp_nav {
	display: flex;
	flex-direction: column;
	gap: 9.1vw 0;
}

.globalMenuSp .globalMenuSp_list {
	display: flex;
	flex-direction: column;
}

.globalMenuSp .globalMenuSp_list_item {
	align-items: center;
	border-top: 2px solid #ededed;
	display: flex;
	justify-content: space-between;
}

.globalMenuSp .globalMenuSp_list_item:last-of-type {
	border-bottom: 2px solid #ededed;
}

.globalMenuSp .globalMenuSp_list_item a {
	color: #2b2b2b;
	display: block;
	font-size: 4.1vw;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 5.9vw 0;
	width: 100%;
}

.globalMenuSp .globalMenuSp_icon {
	height: 5.1vw;
	width: 5.1vw;
}

.globalMenuSp .globalMenuSp_icon img {
	aspect-ratio: 1;
	width: 100%;
}

.globalMenuSp .globalMenuSp_box {
	align-items: center;
	background-color: #1b96a3;
	border-radius: 100vmax;
	display: flex;
	height: 5.1vw;
	justify-content: center;
	width: 5.1vw;
}

.globalMenuSp .globalMenuSp_arrow {
	display: inline-block;
	height: 1.9vw;
	position: relative;
	width: 1.3vw;
}

.globalMenuSp .globalMenuSp_arrow::before,
.globalMenuSp .globalMenuSp_arrow::after {
	background-color: #fff;
	content: "";
	height: 0.5vw;
	position: absolute;
	right: -0.1vw;
	top: calc(50% - 1px);
	transform-origin: calc(100% - 1px) 50%;
	width: 1.6vw;
}

.globalMenuSp .globalMenuSp_arrow::before {
	transform: rotate(42.5deg);
}

.globalMenuSp .globalMenuSp_arrow::after {
	transform: rotate(-42.5deg);
}

.globalMenuSp .globalMenuSp_list_subitem {
	-moz-column-gap: 22.6vw;
	align-items: center;
	column-gap: 22.6vw;
	display: flex;
	margin-left: 2.1vw;
	margin-top: 1vw;
}

.globalMenuSp .globalMenuSp_buttons {
	display: flex;
	flex-direction: column;
	row-gap: 2.6vw;
}

/* hamburger */

.hamburger {
	display: none;
}

.hamburger.active .hamburger_bar:nth-of-type(1) {
	rotate: 45deg;
	translate: 0 1.3vw;
}

.hamburger.active .hamburger_bar:nth-of-type(2) {
	display: none;
}

.hamburger.active .hamburger_bar:nth-of-type(3) {
	rotate: -45deg;
	translate: 0 -1.3vw;
}

/* header */

.header {
	background-color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	left: 0;
	min-width: 1440px;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 100;
}

.header .header_inner {
	align-items: center;
	display: grid;
	grid-template-columns: 290px 1fr;
	height: inherit;
	padding: 0 50px;
}

.header .header_logo {
	max-width: 290px;
	transition: opacity 0.3s ease;
	width: 100%;
}

.header .header_nav {
	align-items: center;
	display: flex;
	gap: 0 50px;
	justify-self: end;
	width: 100%;
}

.header .header_list {
	align-items: center;
	display: flex;
	flex: 1;
	gap: 0 45px;
	justify-content: end;
}

.header .header_list_item a {
	align-items: center;
	color: #2b2b2b;
	display: flex;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	height: inherit;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 43px 0;
	position: relative;
	transition: color 0.3s ease;
}

.header .header_list_item a:visited {
	color: #2b2b2b;
}

.header .header_list_item a:link {
	color: #2b2b2b;
}

.header .header_list_item a:hover {
	color: #1b96a3;
}

.header .header_list_item a::after {
	background-color: #1b96a3;
	bottom: 0;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	scale: 0;
	transition: scale 0.3s ease;
	width: 100%;
}

.header_button_box {
	align-items: center;
	display: flex;
	gap: 0 10px;
	max-width: 286px;
	padding: 30px 0;
	width: 100%;
}

.header_button_contact {
	max-width: 180px;
	width: 180px;
}

.header_button_contact_link {
	align-items: center;
	background-color: #1b96a3;
	border-radius: 100vmax;
	display: flex;
	gap: 0 10px;
}

.header_button_contact_mark {
	background-color: #138290;
	border-radius: 100vmax;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 14px 17px 13px;
}

.header_button_contact_text {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

.header_button_login {
	max-width: 96px;
	width: 100%;
}

.header_button_login_link {
	align-content: center;
	border: 2px solid #1b96a3;
	border-radius: 100vmax;
	display: grid;
	justify-content: center;
	padding: 11.5px 0;
	place-content: center;
}

.header_button_login_link span {
	color: #1b96a3;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

/* price_table */

.price_table {
	border-collapse: separate;
	border-spacing: 5px;
}

.price_table tr:nth-of-type(2) .price_table_data {
	height: 130px;
}

.price_table tr:nth-of-type(3) .price_table_data,
.price_table tr:nth-of-type(n + 5):nth-of-type(-n + 8) .price_table_data {
	height: 100px;
}

.price_table tr:nth-of-type(4) .price_table_data {
	height: 120px;
}

.price_table tr:nth-of-type(2n + 3) .price_table_data {
	background-color: #fafafa;
}

.price_table tr:nth-of-type(2n + 3) .price_table_data.price_table_data_emphasis {
	background-color: #dfeff0;
}

.price_table tr:last-of-type .price_table_data {
	height: 120px;
}

.price_table .price_table_head {
	background-color: #b9b9b9;
	border-radius: 10px;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 33px 0 27px;
	text-align: center;
	width: 340px;
}

.price_table .price_table_head.price_table_head_emphasis {
	background-color: #1b96a3;
}

.price_table .price_table_row_head {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	width: 201px;
}

.price_table .price_table_data {
	border-radius: 5px;
	padding: 17px 20px 22px;
	vertical-align: middle;
	width: 340px;
}

.price_table .price_table_data_box {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.price_table .price_table_data_box:last-of-type {
	margin-top: 10px;
}

.price_table .price_table_meta {
	background-color: #b9b9b9;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 7px 0 6px;
	text-align: center;
	width: 96px;
}

.price_table .price_table_meta.price_table_meta_emphasis {
	background-color: #1b96a3;
}

.price_table .price_table_price {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

.price_table .price_table_price span {
	font-size: 24px;
}

.price_table .price_table_price.price_table_price_emphasis span {
	color: #1b96a3;
}

.price_table .price_table_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.6;
	margin-left: 14px;
	padding-left: 16px;
	position: relative;
}

.price_table .price_table_text::before {
	background-color: #1b96a3;
	border-radius: 100vmax;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	top: 34%;
	width: 6px;
}

/* to_top */

.to_top {
	align-items: center;
	bottom: -25px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	height: 209px;
	opacity: 0;
	position: fixed;
	right: 50px;
	transition: all 0.3s ease;
	visibility: hidden;
	width: 149px;
	z-index: 100;
}

.to_top.js_show {
	opacity: 1;
	visibility: visible;
}

.to_top .to_top_image {
	transition: translate 0.3s ease;
	width: 100%;
	z-index: 10;
}

.to_top .to_top_image img {
	aspect-ratio: 100/144;
	margin-left: 14px;
	width: 100px;
}

.to_top .to_top_body {
	align-items: end;
	background: url(/wp-content/themes/child/image/half_circle.png) no-repeat center center/cover;
	display: flex;
	height: 65px;
	margin-top: -25px;
	width: 100%;
}

.to_top .to_top_text {
	color: #fff;
	font-family: "neulis-cursive", sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 0 0 12.5px 28.3px;
	position: relative;
}

.to_top .to_top_text::after {
	background: url(/wp-content/themes/child/image/page_top_arrow.svg) center center/contain no-repeat;
	bottom: 10px;
	content: "";
	height: 20px;
	position: absolute;
	right: -31px;
	transition: all 0.3s ease;
	width: 20px;
}

/* top_faq */

.top_faq {
	background-color: #f9fbfc;
	padding-top: 80px;
}

.top_faq_title {
	position: relative;
}

.top_faq_title::before {
	background: url(/wp-content/themes/child/image/robo_icon3.png) center center/contain no-repeat;
	bottom: -10px;
	content: "";
	height: 114px;
	left: -119px;
	position: absolute;
	width: 140px;
}

.top_faq_title .common_title_sub {
	max-width: 68px;
	text-transform: uppercase;
	width: 100%;
}

.top_faq_body {
	margin-top: 44px;
}

.top_faq_button {
	margin: 28px auto 0;
	max-width: 320px;
	width: 100%;
}

/* toop_flow */

.top_flow {
	padding-bottom: 40px;
	position: relative;
}

.top_flow::after {
	aspect-ratio: 1440/432;
	background: url(/wp-content/themes/child/image/bg_dot2.png) center center/contain no-repeat;
	bottom: 0;
	content: "";
	height: auto;
	position: absolute;
	right: 0;
	width: 100%;
	z-index: -10;
}

.top_flow .top_flow_title .common_title_sub {
	width: 74px;
}

.top_flow .top_flow_body {
	margin-top: 42px;
}

.top_flow .top_flow_items {
	display: flex;
	gap: 0 40px;
	position: relative;
}

.top_flow .top_flow_items::after {
	background-color: #1b96a3;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 36%;
	translate: -50% 0;
	width: 840px;
	z-index: -10;
}

.top_flow .top_flow_button {
	margin: 35px auto 0;
	max-width: 320px;
	width: 100%;
}

/* top_function */

.top_function {
	position: relative;
}

.top_function::before {
	-o-object-fit: cover;
	aspect-ratio: 1440/369.2;
	background: url(/wp-content/themes/child/image/bg_gear.png) no-repeat center center/cover;
	content: "";
	height: auto;
	left: 0;
	object-fit: cover;
	position: absolute;
	top: -73.8px;
	width: 100%;
}

.top_function .top_function_body {
	margin-top: 47px;
}

.top_function .top_function_media_stacks {
	align-items: center;
	display: flex;
	gap: 0 35px;
}

.top_function .top_function_media_stack {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 14px 0;
}

.top_function .top_function_button {
	margin: 25px auto 0;
	max-width: 320px;
	width: 100%;
}

/* top_information */

.top_information {
	background-color: #f9fbfc;
	padding: 107px 0 180px;
}

.top_information .top_information_title .common_title_sub {
	max-width: 124px;
	width: 100%;
}

.top_information .top_information_body {
	margin-top: 42px;
}

.top_information .top_information_button {
	margin: 35px auto 0;
	max-width: 320px;
	width: 100%;
}

/* top_mainview */

.top_mainview {
	background: url(./image/bg_mainview.jpg) no-repeat center center/cover;
	margin-top: 100px;
	padding: 93px 0;
}

.top_mainview .top_mainview_inner {
	align-items: center;
	display: flex;
	gap: 0 42px;
	justify-content: center;
	padding-left: 100px;
}

.top_mainview .top_mainview_box {
	display: flex;
	flex-direction: column;
}

.top_mainview .top_mainview_bubble-text {
	background-color: #fff;
	border-radius: 100vmax;
	color: #1b96a3;
	font-family: "Noto Sans JP", serif;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 13px 48px 11px;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.top_mainview .top_mainview_bubble-text::after {
	-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%);
	background: #fff;
	bottom: -12px;
	clip-path: polygon(0 0, 100% 0%, 100% 100%);
	content: "";
	height: 13px;
	left: 46%;
	position: absolute;
	width: 13px;
}

.top_mainview .top_mainview_title_box {
	align-items: center;
	display: flex;
	gap: 0 11px;
	margin-top: 16px;
}

.top_mainview .top_mainview_inner_box {
	align-items: center;
	display: flex;
	gap: 0 13px;
}

.top_mainview .top_mainview_inner_box span {
	align-content: center;
	background-color: #1b96a3;
	border-radius: 3px;
	color: #fff;
	display: grid;
	font-family: "Noto Sans JP", serif;
	font-size: 32px;
	font-weight: 700;
	height: 50px;
	justify-content: center;
	letter-spacing: 0.01em;
	line-height: 1;
	place-content: center;
	width: 50px;
}

.top_mainview .top_mainview_title {
	background-image: linear-gradient(to right, #fff 5px, transparent 5px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 10px 2px;
	color: #fff;
	display: flex;
	font-family: "Noto Sans JP", serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	margin-top: 11px;
	padding-bottom: 13px;
}

.top_mainview .top_mainview_title_image {
	max-width: 257px;
	width: 100%;
}

.top_mainview .top_mainview_title_image img {
	-o-object-fit: cover;
	aspect-ratio: 257/60;
	height: auto;
	object-fit: cover;
}

.top_mainview .top_mainview_logo {
	margin-top: 20px;
	max-width: 624px;
	width: 100%;
}

.top_mainview .top_mainview_logo img {
	-o-object-fit: cover;
	aspect-ratio: 624/74;
	height: auto;
	object-fit: cover;
}

.top_mainview .top_mainview_text {
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 38px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 25px;
}

.top_mainview .top_mainview_text:last-of-type {
	margin-top: 17px;
}

.top_mainview .top_mainview_buttons {
	align-items: center;
	display: flex;
	gap: 0 18px;
	margin-top: 34px;
}

.top_mainview .top_mainview_button_contact {
	max-width: 320px;
	width: 100%;
}

.top_mainview .top_mainview_button_login {
	max-width: 220px;
	width: 100%;
}

.top_mainview .top_mainview_image {
	max-width: 675px;
	width: 100%;
}

.top_mainview .top_mainview_image img {
	-o-object-fit: contain;
	aspect-ratio: 675/362;
	height: auto;
	object-fit: contain;
}

/* top_merit */

.top_merit {
	background-color: #f9fbfc;
	padding: 150px 0 204px;
}

.top_merit .top_merit_title {
	position: relative;
}

.top_merit .top_merit_title::before {
	-o-object-fit: cover;
	aspect-ratio: 150/175;
	background: url(/wp-content/themes/child/image/robot_icon5.png) center center/contain no-repeat;
	content: "";
	height: 100%;
	height: auto;
	left: 50%;
	object-fit: cover;
	position: absolute;
	top: -200px;
	translate: -50% 0;
	width: 150px;
}

.top_merit .top_merit_body {
	margin-top: 45px;
}

.top_merit .top_merit_button {
	margin: 30px auto 0;
	max-width: 320px;
	width: 100%;
}

/* top_news */

.top_news {
	background-color: #f9fbfc;
	padding-top: 99px;
}

.top_news .top_news_inner {
	align-items: center;
	display: flex;
	gap: 0 80px;
}

.top_news .top_news_box {
	margin-top: -50px;
	width: 280px;
}

.top_news .top_news_title.common_title {
	margin: 0;
}

.top_news .top_news_title .common_title_sub {
	margin: 0;
	width: 78px;
}

.top_news .top_news_button {
	margin-top: 62px;
	max-width: 280px;
	width: 100%;
}

.top_news .top_news_button .common_button {
	padding-left: 70px;
}

.top_news .top_news_body {
	flex: 1;
}

/* top_plan */

.top_plan {
	padding-left: 50px;
}

.top_plan .top_plan_body {
	align-items: center;
	display: flex;
	gap: 0 30px;
	margin-top: 54px;
}

.top_plan .top_plan_cards {
	display: flex;
	gap: 0 20px;
	width: 820px;
}

.top_plan .top_plan_card {
	border: 2px solid #1b96a3;
	border-radius: 5px;
	width: 400px;
}

.top_plan .top_plan_card_plan {
	background-color: #1b96a3;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin: -20px auto 0;
	max-width: 360px;
	padding: 13px 0;
	text-align: center;
	width: 100%;
}

.top_plan .top_plan_card_body {
	align-items: center;
	display: flex;
	flex-direction: column;
	padding: 47.5px 20px 26px;
}

.top_plan .top_plan_card_heading {
	color: #1b96a3;
	font-family: "Noto Sans JP", serif;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

.top_plan .top_plan_card_price {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 24px;
}

.top_plan .top_plan_card_price span {
	color: #1b96a3;
	font-size: 40px;
}

.top_plan .top_plan_discount {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 12px;
}

.top_plan .top_plan_card_box {
	background-color: #dfeff0;
	border-radius: 5px;
	margin-top: 40.5px;
	padding: 25px 10px 30px 24px;
	width: 100%;
}

.top_plan .top_plan_card_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding-left: 16px;
	position: relative;
}

.top_plan .top_plan_card_text::before {
	background-color: #1b96a3;
	border-radius: 100vmax;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 6px;
}

.top_plan .top_plan_card_text:last-of-type {
	margin-top: 9px;
}

.top_plan .top_plan_card.top_plan_card_gold {
	border: 2px solid #d9c05d;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_plan {
	background-color: #d9c05d;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_body {
	padding: 35px 20px 26px;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_heading {
	color: #d9c05d;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_box {
	background-color: #faf8ed;
	margin-top: 26px;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_price span {
	color: #d9c05d;
}

.top_plan .top_plan_card.top_plan_card_gold .top_plan_card_text::before {
	background-color: #d9c05d;
}

.top_plan .top_plan_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding-left: 35px;
	position: relative;
}

.top_plan .top_plan_text::before {
	background: url(/wp-content/themes/child/image/check_gray.svg) center center/contain no-repeat;
	content: "";
	height: 20px;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 20px;
}

.top_plan .top_plan_text:not(:first-of-type) {
	margin-top: 19px;
}

.top_plan .top_plan_text span {
	font-size: 32px;
}

.top_plan .top_plan_text_small {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 21px;
}

.top_plan .top_plan_inner_box {
	background-color: #e3e3e3;
	border-radius: 5px;
	margin-top: 16px;
	padding: 10px 30px 24px;
}

.top_plan .top_plan_inner_heading {
	background-color: #b9b9b9;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 7px 0;
	text-align: center;
}

.top_plan .top_plan_inner_text {
	align-items: center;
	color: #2b2b2b;
	display: flex;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 700;
	justify-content: space-between;
	letter-spacing: 0.01em;
	line-height: 1;
	margin-top: 19px;
}

.top_plan .top_plan_inner_text:last-of-type {
	margin-top: 15px;
}

.top_plan .top_plan_inner_text span:first-of-type {
	padding-left: 16px;
	position: relative;
}

.top_plan .top_plan_inner_text span:first-of-type::before {
	background-color: #b9b9b9;
	border-radius: 100vmax;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 6px;
}

/* top_price */

.top_price {
	padding-top: 150px;
	position: relative;
}

.top_price::before {
	-o-object-fit: cover;
	aspect-ratio: 1440/432;
	background: url(/wp-content/themes/child/image/bg_dot.png) center center/contain no-repeat;
	content: "";
	height: auto;
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	width: 1440px;
	z-index: -10;
}

.top_price .top_price_inner.wrap {
	max-width: 1390px;
}

.top_price .top_price_title .common_title_sub {
	width: 78px;
}

.top_price .top_price_body {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	margin-top: 42px;
	padding: 80px 50px;
}

/* top_system */

.top_system .top_system_inner.wrap {
	max-width: 1390px;
}

.top_system .top_system_body {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	margin-top: 38px;
}

.top_system .top_system_box {
	align-items: center;
	display: flex;
	gap: 0 25px;
	padding: 60px 50px 80px;
}

.top_system .top_system_wrap {
	align-items: center;
	display: flex;
	gap: 0 25px;
	margin-top: 20px;
}

.top_system .top_system_text {
	background-color: #b9b9b9;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 129px 14px 125px;
	text-orientation: mixed;
	writing-mode: vertical-rl;
}

.top_system .top_system_icon:nth-of-type(2) {
	margin-top: 10px;
}

.top_system .top_system_icon_title {
	background-color: #2b2b2b;
	border-radius: 100vmax;
	color: #fff;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	padding: 8px 0 6px;
	text-align: center;
	width: 120px;
}

.top_system .top_system_icon_image {
	align-content: center;
	background-color: #f9fbfc;
	border-radius: 100vmax;
	display: grid;
	height: 120px;
	justify-content: center;
	margin-top: -15px;
	place-content: center;
	position: relative;
	width: 120px;
	z-index: -10;
}

.top_system .top_system_icon_image img {
	width: 35px;
}

.top_system .top_system_arrow {
	margin-top: 20px;
	width: 120px;
}

.top_system .top_system_image {
	max-width: 780px;
	width: 100%;
}

.top_system .top_system_image img {
	-o-object-fit: cover;
	aspect-ratio: 780/500;
	height: auto;
	object-fit: cover;
}

.top_system .top_system_wrap.top_system_wrap_reverse {
	flex-direction: row-reverse;
}

.top_system .top_system_wrap.top_system_wrap_reverse .top_system_arrow {
	rotate: 180deg;
}

/* top_works */

.top_works .top_works_body {
	margin-top: 44px;
}

.top_works .top_works_button {
	margin: 30px auto 0;
	max-width: 320px;
	width: 100%;
}

/* top_worries */

.top_worries {
	background: transparent linear-gradient(180deg, rgba(177, 216, 221, 0) 0%, #e7eeef 100%) 0% 0% no-repeat padding-box;
	padding: 141px 0 132px;
	position: relative;
}

.top_worries::after {
	-o-object-fit: cover;
	aspect-ratio: 1440/320;
	background: url(/wp-content/themes/child/image/bg_worries.png) center center/contain no-repeat;
	bottom: 0;
	content: "";
	height: auto;
	height: auto;
	left: 0;
	object-fit: cover;
	position: absolute;
	right: 0;
	width: 100%;
}

.top_worries .top_worries_inner {
	display: flex;
	flex-direction: column;
}

.top_worries .top_worries_title_box {
	position: relative;
}

.top_worries .top_worries_title_box::before {
	background: url(/wp-content/themes/child/image/worries_icon.png) center center/contain no-repeat;
	content: "";
	height: 53px;
	left: 50%;
	position: absolute;
	top: -53px;
	translate: -50% 0;
	width: 50px;
}

.top_worries .top_worries_title {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 48px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	text-align: center;
}

.top_worries .top_worries_title span {
	color: #1b96a3;
	font-size: 64px;
}

.top_worries .top_worries_body {
	align-items: center;
	display: flex;
	margin-top: 26px;
	position: relative;
	z-index: 10;
}

.top_worries .top_worries_box {
	max-width: 100%;
	width: 856px;
}

.top_worries .top_worries_lists {
	background-color: #fff;
	border-radius: 10px;
	padding: 68px 80px 33px;
}

.top_worries .top_worries_list {
	align-items: center;
	display: flex;
	gap: 0 20px;
	padding-bottom: 29px;
}

.top_worries .top_worries_list:not(:first-of-type) {
	margin-top: 27px;
}

.top_worries .top_worries_list:not(:last-of-type) {
	background-image: linear-gradient(to right, #1b96a3 5px, transparent 5px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 10px 2px;
}

.top_worries .top_worries_image {
	max-width: 100%;
	width: 18px;
}

.top_worries .top_worries_image img {
	aspect-ratio: 1;
}

.top_worries .top_worries_text {
	color: #2b2b2b;
	font-family: "Noto Sans JP", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.8;
}

.top_worries .top_worries_text span {
	color: #1b96a3;
}

.top_worries .top_worries_button {
	margin: -30px auto 0;
	max-width: 100%;
	position: relative;
	width: 320px;
	z-index: 10;
}

.top_worries .top_worries_icon {
	flex: 1;
	margin-left: -48px;
	position: relative;
	width: 100%;
	z-index: 10;
}

.top_worries .top_worries_icon img {
	-o-object-fit: cover;
	aspect-ratio: 332/386;
	height: auto;
	object-fit: cover;
	width: 332px;
}

.wrap {
	margin-left: auto;
	margin-right: auto;
	max-width: 1190px;
	padding-left: 25px;
	padding-right: 25px;
	width: 100%;
}

@media (hover: hover) {

.common_article_title:last-of-type .common_article_title_link:hover {
	border: none;
}

.common_article_title .common_article_title_link:hover {
	background-color: #fff;
	border-top: none;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
}

.common_button:hover {
	background-color: #1b96a3;
}

.common_button:hover .common_button_text {
	color: #fff;
}

.common_button:hover .common_arrow {
	background-color: #fff;
}

.common_button.common_button_login:hover {
	background-color: #fff;
}

.common_button.common_button_login:hover .common_button_text {
	color: #1b96a3;
}

.common_button.common_button_login:hover .common_arrow {
	background-color: #1b96a3;
}

.common_button.common_button_login:hover .common_arrow_arrow::before,
.common_button.common_button_login:hover .common_arrow_arrow::after {
	background-color: #fff;
}

.common_card .common_card_link:hover {
	border-bottom: 2px solid #1b96a3;
}

.common_card .common_card_link:hover .common_card_image img {
	scale: 1.1;
}

.common_card .common_card_link:hover .common_card_title {
	color: #1b96a3;
}

.common_card .common_card_link:hover .common_card_posttime {
	color: #1b96a3;
}

.common_contact_button:hover .common_arrow.common_arrow_reverse {
	background-color: #fff;
}

.common_contact_button.common_contact_button_reverse:hover {
	background-color: #1b96a3;
}

.common_contact_button.common_contact_button_reverse:hover .common_contact_button_mark {
	background-color: #138290;
	color: #fff;
}

.common_contact_button.common_contact_button_reverse:hover .common_contact_button_text {
	color: #fff;
}

.common_panel .common_panel_link:hover .common_panel_image img {
	scale: 1.1;
}

.common_panel .common_panel_link:hover .common_panel_title {
	-webkit-text-decoration: underline;
	color: #1b96a3;
	text-decoration: underline;
	text-decoration-color: #1b96a3;
}

.footer .footer_nav_item a:hover .footer_nav_item_en::after {
	display: inline-block;
}

.footer .footer_nav_item a:hover .footer_nav_item_jp {
	color: #1b96a3;
	translate: 18px 0;
}

.footer .footer_link a:hover {
	opacity: 0.7;
}

.header .header_logo:hover {
	opacity: 0.5;
}

.header .header_list_item a:hover::after {
	scale: 1;
}

.to_top:hover .to_top_image {
	translate: 0 -5px;
}

.to_top:hover .to_top_text::after {
	background: url(/wp-content/themes/child/image/page_top_arrow_white.svg) center center/contain no-repeat;
}

}

@media (max-width: 750px) {

a[href$=".pdf"]::before {
	height: 8vw;
	margin-right: 2.5vw;
	width: 7vw;
}

a[href$=".pdf"]:hover {
	-webkit-text-decoration: underline;
	text-decoration: underline;
}

/* SPヘッダー */

#sp_header {
	background: #fff;
	box-shadow: 1px 1px #ccc;
	height: 55px;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
}

#sp_header .logo {
	left: 10px;
	line-height: 0;
	position: absolute;
	top: 10px;
}

#sp_header .logo img {
	height: 40px;
}

#sp_header .icon {
	color: #000;
	position: absolute;
}

#sp_header .mail {
	font-size: 25px;
	right: 70px;
	top: 13px;
}

#sp_header .tel {
	font-size: 20px;
	right: 110px;
	top: 15px;
}

/* SP固定ページ 共通設定 */

.common_page_wrap {
	padding: 20vw 0;
}

.reserve_text {
	font-size: 6vw;
}

/* パンくず */

.breadcrumb {
	font-size: 2.5vw;
}

/* SP固定ページ お問い合わせ */

.page_contact table {
	margin-bottom: 10vw;
	width: 100%;
}

.page_contact table th,
.page_contact table td {
	border-bottom: none;
	display: block;
	font-size: 4vw;
	padding: 5vw 4vw;
}

.page_contact table th {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 3vw;
	text-align: left;
	width: 100%;
}

.page_contact table td {
	width: 100%;
}

.page_contact input[type=text],
.page_contact input[type=email],
.page_contact #zip {
	height: 12vw;
	width: 100%;
}

.page_contact input.tel {
	width: 29%;
}

.page_contact .select_box {
	width: 100%;
}

.page_contact textarea {
	height: 60vw;
	width: 100%;
}

.page_contact #btn_wrap button {
	border-radius: 4px;
	font-size: 4vw;
	line-height: 12vw;
	width: 80%;
}

.page_contact #btn_wrap button[name=submitBack] {
	margin-top: 4vw;
}

.mwform-checkbox-field.horizontal-item {
	display: block;
}

.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0;
	margin-top: 2vw;
}

.page_contact .attention {
	font-size: 3vw;
}

.page_contact .progressbar #step_2 .en::before,
.page_contact .progressbar #step_2 .en::after {
	width: 8vw;
}

.page_contact .progressbar #step_2 .en::before {
	left: -4vw;
}

.page_contact .progressbar {
	margin-bottom: 7vw;
}

.contact_form_disc {
	font-size: 3.5vw;
	letter-spacing: 0.02em;
	margin: 0 auto 10vw;
	width: 100%;
}

.contact_form_disc .caution {
	font-size: 3.4vw;
}

.contact_form_disc .text {
	margin-bottom: 3vw;
}

.page_contact table th .hissu,
.page_contact table th .ninni {
	display: block;
	font-size: 3vw;
	margin-right: 0;
	order: 1;
	padding: 0.2vw 0;
	text-align: center;
	width: 13vw;
}

.page_contact table {
	border-bottom: solid 1px #dfdfdf;
}

.page_contact #btn_wrap {
	text-align: center;
	width: 100%;
}

.privacy_check_list .mwform-checkbox-field-text {
	font-size: 3.8vw;
	padding-left: 11vw;
}

.mw_wp_form .privacy_check_list .horizontal-item {
	margin-right: 4vw;
}

.privacy_check_list .hissu {
	padding: 0.3vw 4vw;
}

.privacy_check_list {
	margin-bottom: 6vw;
}

.privacy_term_detail {
	font-size: 3.4vw;
	margin: 5vw 0;
}

.privacy_term_outer {
	padding: 5vw 0;
	width: 96%;
}

.privacy_term_outer .privacy_term_inner .main_text {
	font-size: 3.4vw;
	line-height: 1.6;
	margin-bottom: 5vw;
}

.privacy_term_outer .privacy_term_inner dl dt {
	font-size: 3.5vw;
	margin-bottom: 1.5vw;
}

.privacy_term_outer .privacy_term_inner dl dd {
	font-size: 3.5vw;
	line-height: 1.6;
}

.privacy_term_outer .privacy_term_inner dl + dl {
	margin-top: 7vw;
}

.privacy_term_detail::after {
	margin: 1.5vw auto 0;
	width: 2.5vw;
}

/* サンクスページ */

.page_contact .thanks_textArea p {
	font-size: 4vw;
}

.page_contact .thanks_textArea .contact_text {
	margin-bottom: 2em;
	width: 100%;
}

.page_contact .thanks_textArea .ichiran_link {
	font-size: 4vw;
	line-height: 12vw;
	width: 80%;
}

/* ステップバー デザイン */

.page_contact .progressbar .item {
	font-size: 4vw;
	line-height: 1.4;
	padding: 13vw 0px 2vw;
	width: 31%;
}

.page_contact .progressbar .item .en {
	font-size: 3.5vw;
	margin-bottom: 1vw;
}

.page_contact .progressbar .item::before {
	width: 8vw;
}

.page_contact .progressbar .item.active::after {
	top: 2vw;
	width: 4vw;
}

.page_contact .progressbar #step_2 .en {
	position: relative;
}

.page_contact .progressbar #step_2 .en::before,
.page_contact .progressbar #step_2 .en::after {
	background: #a4a5a4;
	content: "";
	height: 1px;
	left: -47px;
	position: absolute;
	width: 100px;
}

.page_contact .progressbar #step_2 .en::after {
	left: auto;
	right: -4vw;
}

.page_contact .progressbar #step_2 .en::before,
.page_contact .progressbar #step_2 .en::after {
	width: 8vw;
}

.page_contact .progressbar #step_2 .en::before {
	left: -4vw;
}

/* SP固定ページ 個人情報保護方針 */

.page_privacy .main_text {
	font-size: 3.5vw;
}

.page_privacy dl {
	margin-bottom: 10vw;
}

.page_privacy dl dt {
	font-size: 4vw;
}

.page_privacy dl dd {
	font-size: 3.5vw;
	margin-left: 5vw;
}

/* SP固定ページ 404ページ */

#page_404 .num {
	font-size: 20vw;
	line-height: 1.5;
}

#page_404 .text {
	font-size: 3.5vw;
}

/* SP投稿ページ アーカイブページ */

.archive_page_list > article {
	padding-right: 20px;
}

.archive_page_list > article .date {
	width: 80px;
}

.archive_page_list > article .content_area {
	width: calc(100% - 80px);
}

.archive_page_list > article:after {
	height: 7px;
	width: 7px;
}

/* SP投稿ページ シングルページ */

.single_page .single_flame {
	border: none;
	padding: 0;
}

.singleContent .single_title::before {
	height: 3vw;
	top: 7vw;
	width: 3vw;
}

.singleContent .title_area .en {
	font-size: 3vw;
	gap: 2.5vw;
	margin-bottom: 5vw;
}

.singleContent .title_area .en::after {
	height: 2.5vw;
	width: 2.5vw;
}

.single_main_img {
	height: 47vw;
	margin: 0 auto 7vw;
	width: 47vw;
}

.singleContent .day_cat {
	flex-wrap: nowrap;
	margin-bottom: 10vw;
}

.singleContent .day_cat .day {
	flex-shrink: 0;
	font-size: 3.2vw;
	margin-right: 3vw;
	padding-right: 3vw;
}

.singleContent .day_cat ul {
	gap: 2vw;
}

.singleContent .day_cat .category_list {
	width: 100%;
}

.singleContent .title_area {
	margin-bottom: 10vw;
	padding-bottom: 5vw;
}

.singleContent .title_area .single_title {
	font-size: 4.5vw;
	letter-spacing: 0.05em;
}

.singleContent .single_title time {
	font-size: 3vw;
}

.singleContent .category_list ul li {
	font-size: 2.5vw;
	padding: 1vw 3vw;
}

.singleContent article h2 {
	font-size: 4.2vw;
	padding: 2vw;
}

.singleContent article h3 {
	font-size: 4vw;
	margin: 1.5em 0 1em;
	padding: 2vw;
}

.singleContent article h4 {
	font-size: 4vw;
	margin: 1.5em 0 1em;
	padding: 2vw;
}

.singleContent article h5 {
	font-size: 4vw;
}

.singleContent h6 {
	font-size: 3.8vw;
}

.singleContent p {
	font-size: 3.5vw;
	line-height: 1.8;
}

.single_page .singleContent .ichiran_link {
	font-size: 3.8vw;
	line-height: 11vw;
	margin: 10vw auto 0 auto;
	width: 80%;
}

.single_page .singleContent .ichiran_link:hover {
	opacity: 1;
}

.single_page .singleSidebar {
	display: none;
}

.singleContent_links {
	gap: 0;
	justify-content: space-between;
	margin-top: 20vw;
}

.singleContent_links .btn {
	font-size: 3.4vw;
	margin-bottom: 4vw;
}

.singleContent_links a .ttl {
	font-size: 3.2vw;
}

.singleContent_links ul {
	width: 40%;
}

.latest_post_area {
	margin: 15vw 0 0;
	width: 100%;
}

.latest_post_area .ttl {
	font-size: 4.2vw;
	letter-spacing: 0.05em;
	margin-bottom: 5vw;
	padding-bottom: 2vw;
}

.latest_post_area .ttl .en {
	font-size: 3vw;
}

.latest_post_area .img {
	height: 25vw;
}

.latest_post_area ul {
	-moz-column-gap: 3vw;
	column-gap: 3vw;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 5vw;
}

.latest_post_area .day_cat {
	display: block;
}

.latest_post_area .category_list .cat {
	font-size: 2vw;
	padding: 0 2vw;
}

.article_flame_wrap .text_box {
	height: auto;
	padding-top: 4vw;
	position: relative;
}

.latest_post_area .day_cat .day {
	border-right: none;
	font-size: 2.8vw;
	left: 0;
	margin-right: 0;
	padding-right: 0;
	position: absolute;
	top: 0;
}

.latest_post_area .inner_ttl {
	-webkit-line-clamp: 1;
	font-size: 3vw;
	height: 4.8vw;
	margin-top: 1vw;
}

.breadcrumb.single {
	text-align: left;
}

.singleContent_links .img {
	height: 25vw;
	margin-bottom: 3vw;
}

#toc_container li::before {
	height: 3vw;
	top: 1vw;
	width: 3vw;
}

#toc_container li {
	padding-left: 4vw;
}

.singleContent .singleContent_links ul li {
	padding: 0;
}

.singleContent_links ul li + li {
	margin-top: 3vw;
}

.singleContent_links ul li {
	padding-left: 6vw;
}

.singleContent article ul {
	padding: 4vw 3vw;
}

.singleContent_links ul::before {
	height: 4vw;
	width: 4vw;
}

.singleContent ol::before {
	border-width: 0 18px 18px 0;
}

.singleContent ol {
	padding: 6vw 3vw;
}

.singleContent #toc_container {
	margin-bottom: 8vw;
}

.singleContent .addtoany_content {
	margin: 10vw auto 0;
}

/* SP固定ページ サイトマップ */

ul#sitemap_list li {
	margin: 0;
}

body #sitemap_list li a {
	font-size: 4vw;
	line-height: 9vw;
	margin-bottom: 1vw;
	padding: 1vw 2vw;
}

body #sitemap_list li.home-item {
	margin-bottom: 4vw;
}

body #sitemap_list {
	padding: 0;
}

}

@media screen and (max-width: 750px) {

body {
	min-width: auto;
	padding-top: 0;
	width: 100%;
}

a[href^="tel:"] {
	pointer-events: auto;
}

.layout_top_flow {
	margin-top: 15.4vw;
}

.layout_top_function {
	margin-top: 15.4vw;
}

.layout_top_merit {
	margin-top: 26.2vw;
}

.layout_top_plan {
	margin-top: 14.4vw;
}

.layout_top_system {
	margin-top: 16.2vw;
}

.layout_top_works {
	margin-top: 15.4vw;
}

.layout_top_worries {
	margin-top: 7.7vw;
}

.common_accordion .common_accordion_item {
	padding: 5.1vw 4.1vw 5.9vw 5.1vw;
}

.common_accordion_item + .common_accordion_item {
	margin-top: 2.1vw;
}

.common_accordion .common_accordion_question_box {
	align-items: start;
	font-size: 3.8vw;
	gap: 0 2.6vw;
}

.common_accordion .common_accordion_icon {
	margin-top: 1.3vw;
}

.common_accordion .common_accordion_question_box span {
	height: 6.7vw;
	width: 6.7vw;
}

.common_accordion .common_accordion_question {
	font-size: 3.8vw;
	margin-top: 0;
}

.common_accordion .common_accordion_answer {
	font-size: 3.3vw;
	letter-spacing: 0.03em;
	margin-top: 2.8vw;
	padding-top: 1vw;
}

.common_arrow {
	height: 5.1vw;
	width: 5.1vw;
}

.common_arrow_arrow {
	height: 2.6vw;
	width: 1.3vw;
}

.common_arrow_arrow::before,
.common_arrow_arrow::after {
	height: 0.5vw;
	width: 1.8vw;
}

.common_article_title:last-of-type .common_article_title_link {
	border: none;
}

.common_article_title:not(:first-of-type) {
	margin-top: 2.6vw;
}

.common_article_title .common_article_title_link {
	background-color: #fff;
	border: none;
	padding: 3.8vw 3.8vw 5.1vw;
}

.common_article_title .common_article_title_body {
	align-items: start;
	flex-direction: column;
	gap: 2.6vw 0;
}

.common_article_title .common_article_title_posttime {
	font-size: 3.3vw;
	max-width: 25.6vw;
	padding: 1vw 0;
}

.common_article_title .common_article_title_title {
	-webkit-line-clamp: 2;
	font-size: 3.6vw;
}

.common_button {
	background-color: #1b96a3;
	border: 2px solid #1b96a3;
	max-width: 82.1vw;
	padding: 4.6vw 0 4.6vw 23.1vw;
}

.common_button .common_button_text {
	color: #fff;
	font-size: 4.1vw;
}

.common_button.common_button_wide {
	background-color: #fff;
	border: 2px solid #1b96a3;
	justify-content: space-between;
	max-width: 100%;
	padding: 6.2vw 4.6vw 5.6vw 5.4vw;
}

.common_button.common_button_wide .common_button_text {
	color: #12747e;
}

.common_button.common_button_wide .common_arrow::before,
.common_button.common_button_wide .common_arrow::after {
	background-color: #fff;
}

.common_card .common_card_link {
	padding-bottom: 2.6vw;
}

.common_card .common_card_image img {
	aspect-ratio: 250/170;
}

.common_card .common_card_body {
	margin-top: 3.8vw;
}

.common_card .common_card_title {
	font-size: 3.6vw;
	letter-spacing: 0.02em;
}

.common_card .common_card_posttime {
	font-size: 3.6vw;
	margin-top: 2.6vw;
}

.common_cards {
	gap: 0 2.6vw;
	overflow-x: scroll;
	overflow-y: clip;
}

.common_cards .common_cards_card {
	flex: auto 1 0;
	flex-shrink: 0;
	width: 71.4%;
}

.common_contact_button {
	gap: 0 2.6vw;
	padding: 0 3.6vw 0 0;
}

.common_contact_button .common_contact_button_mark {
	font-size: 4.1vw;
	line-height: 1.25;
	padding: 3.8vw 4.9vw;
}

.common_contact_button .common_contact_button_box {
	gap: 0 2.6vw;
}

.common_contact_button .common_contact_button_text {
	font-size: 4.1vw;
	line-height: 1.25;
}

.common_contact_button.common_contact_button_wide {
	gap: 0 5.1vw;
	padding: 0 5.1vw 0 0;
}

.common_contact_button.common_contact_button_wide .common_contact_button_mark {
	line-height: 1;
	padding: 7.2vw 7.4vw 6.7vw 7.4vw;
}

.common_contact_button.common_contact_button_wide .common_contact_button_box {
	flex: 1;
	justify-content: space-between;
}

.common_contact_button.common_contact_button_reverse {
	background-color: #1b96a3;
	color: #fff;
	gap: 0 5.1vw;
	padding-right: 10.8vw;
}

.common_contact_button.common_contact_button_reverse .common_contact_button_mark {
	background-color: #138290;
	color: #fff;
	font-size: 4.6vw;
	padding: 6.4vw 9.2vw;
}

.common_contact_button.common_contact_button_reverse .common_contact_button_text {
	color: #fff;
	font-size: 4.6vw;
}

.common_contact_button.common_contact_button_reverse .common_arrow {
	height: 7.7vw;
	width: 7.7vw;
}

.common_contact {
	background: url(/wp-content/themes/child/image/bg_contact_sp.jpg) no-repeat center center/cover;
	padding: 18.2vw 0 17.4vw;
}

.common_contact::before {
	height: 20.5vw;
	left: 23.6%;
	top: -7vw;
	width: 30.8vw;
}

.common_contact .common_contact_bg_title {
	font-size: 22.6vw;
	top: 25%;
	translate: -50% 0;
}

.common_contact .common_contact_title {
	font-size: 3.1vw;
}

.common_contact .common_contact_body {
	margin-top: 8.2vw;
}

.common_contact .common_contact_text {
	font-size: 6.2vw;
}

.common_contact .common_contact_text:not(:first-of-type) {
	margin-top: 4.1vw;
}

.common_contact .common_contact_text.common_contact_text_small {
	font-size: 3.6vw;
}

.common_contact .common_contact_button_wrap {
	margin: 7.4vw auto 0;
	max-width: 82.1vw;
}

.common_heading .common_heading_main {
	font-size: 6.2vw;
}

.common_heading .common_heading_sub {
	font-size: 9.2vw;
}

.common_icon {
	gap: 1.3vw 0;
}

.common_icon .common_icon_image_box {
	height: 28.2vw;
	width: 28.2vw;
}

.common_icon .common_icon_image {
	width: 12.8vw;
}

.common_icon .common_icon_text {
	font-size: 3.3vw;
}

.common_icons {
	gap: 5.1vw 2.6vw;
	grid-template-columns: repeat(3, 1fr);
}

.common_item {
	flex-direction: row;
	gap: 0 3.8vw;
}

.common_item .common_item_step span {
	font-size: 2.6vw;
	width: 10.3vw;
}

.common_item .common_item_number {
	font-size: 6.2vw;
	margin-top: 0.8vw;
}

.common_item .common_item_image {
	height: 30.8vw;
	margin-top: -11vw;
	width: 30.8vw;
}

.common_item .common_item_image img {
	width: 15.4vw;
}

.common_item .common_item_text {
	font-size: 3.6vw;
	margin-top: 1.3vw;
	text-align: left;
}

.common_item .common_item_text span.large {
	font-size: 4.6vw;
}

.common_media_stack {
	align-items: center;
	flex-direction: row;
	gap: 0 5.1vw;
}

.common_media_stack .common_media_stack_number {
	font-size: 6.2vw;
}

.common_media_stack .common_media_stack_image {
	height: 33.3vw;
	margin-top: -7.9vw;
	width: 33.3vw;
}

.common_media_stack .common_media_stack_image img {
	width: 15.4vw;
}

.common_media_stack .common_media_stack_text {
	font-size: 4.1vw;
	text-align: left;
}

.common_panel .common_panel_image img {
	aspect-ratio: 300/180;
}

.common_panel .common_panel_body {
	padding: 3.1vw 3.8vw 3.8vw;
}

.common_panel .common_panel_title {
	font-size: 4.1vw;
}

.common_panel .common_panel_name {
	font-size: 3.6vw;
}

.common_panel .common_panel_box {
	margin-top: 3.3vw;
	padding: 5.6vw 5.1vw 4.6vw;
}

.common_panel .common_panel_box p:last-child {
	margin-top: 4.4vw;
}

.common_panel .common_panel_box p {
	font-size: 3.6vw;
}

.common_panels {
	gap: 0 2.6vw;
	overflow-x: scroll;
	overflow-y: clip;
}

.common_panels .common_panels_panel {
	flex: auto 1 0;
	flex-shrink: 0;
	width: 85.7%;
}

.common_title .common_title_sub {
	font-size: 3.6vw;
	max-width: 22.6vw;
	padding: 1.5vw 0;
}

.common_title .common_title_main {
	font-size: 6.2vw;
	margin-top: 3.6vw;
}

.footer {
	background: linear-gradient(to bottom, #1b96a3 0%, #1b96a3 68%, transparent 68%, transparent 100%);
	padding: 15.4vw 0 23.6vw;
}

.footer .footer_inner {
	flex-direction: column;
}

.footer .footer_header {
	padding-bottom: 13.8vw;
	padding-left: 0;
	width: 100%;
}

.footer .footer_logo img {
	margin: 0 auto;
	width: 82.1vw;
}

.footer .footer_meta {
	margin-top: 3.6vw;
	text-align: center;
}

.footer .footer_name {
	font-size: 3.6vw;
}

.footer .footer_address {
	font-size: 3.6vw;
	margin-top: 7.7vw;
}

.footer .footer_button_box {
	display: none;
}

.footer .footer_copyright {
	margin-top: 16.9vw;
	text-align: center;
}

.footer .footer_bg_text {
	bottom: 35.9vw;
	font-size: 16.2vw;
	text-align: center;
}

.footer .footer_nav {
	display: none;
}

.footer .footer_links {
	grid-gap: 4.1vw 15.6vw;
	display: grid;
	gap: 4.1vw 15.6vw;
	grid-template-columns: repeat(2, 1fr);
}

.footer .footer_link a {
	font-size: 2.6vw;
	padding-left: 3.6vw;
}

.footer .footer_link a::before {
	background-color: #1b96a3;
	border-radius: 100vmax;
	content: "";
	height: 1.5vw;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 1.5vw;
}

.hamburger {
	-moz-column-gap: 3.8vw;
	align-items: center;
	border: 2px solid #2b2b2b;
	border-radius: 100vmax;
	column-gap: 3.8vw;
	display: flex;
	justify-content: center;
	padding: 4.1vw 0;
	position: absolute;
	right: 10px;
	top: 3.8vw;
	width: 25.6vw;
	z-index: 120;
}

.hamburger p {
	color: #2b2b2b;
	font-family: "neulis-cursive", sans-serif;
	font-size: 3.6vw;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	text-transform: capitalize;
}

.hamburger .hamburger_icon {
	display: flex;
	flex-direction: column;
	height: 3.1vw;
	justify-content: space-between;
	width: 4.6vw;
}

.hamburger .hamburger_bar {
	background-color: #2b2b2b;
	display: inline-block;
	height: 2px;
	transition: all 0.3s ease;
	width: 100%;
}

.hamburger.active {
	position: fixed;
}

.header {
	min-width: 0;
	min-width: initial;
	padding: 7.3vw 0;
}

.header .header_inner {
	grid-template-columns: 59vw 1fr;
	padding: 0 2.6vw;
}

.header .header_logo {
	max-width: 59vw;
}

.header .header_nav {
	display: none;
}

.price_table {
	width: 276.4vw;
}

.price_table .price_table_head {
	font-size: 1.125rem;
	padding: 27px 0 21px;
	width: 74.4vw;
}

.price_table .price_table_row_head {
	font-size: 3.6vw;
}

.price_table .price_table_meta {
	font-size: 3.3vw;
	padding: 1.8vw 0 1.3vw;
	width: 24.6vw;
}

.price_table .price_table_price {
	font-size: 3.6vw;
}

.price_table .price_table_price span {
	font-size: 5.1vw;
}

.price_table .price_table_text {
	font-size: 3.3vw;
}

.to_top {
	bottom: 0;
	height: 23.6vw;
	right: 0;
	width: 20.5vw;
}

.to_top .to_top_image img {
	aspect-ratio: 50/72;
	width: 12.8vw;
}

.to_top .to_top_body {
	background: url(/wp-content/themes/child/image/half_circle_sp.png) no-repeat center center/cover;
	height: 9.1vw;
	margin-top: -3.8vw;
}

.to_top .to_top_text {
	font-size: 3.1vw;
	padding: 0 0 0.9vw 2.1vw;
}

.to_top .to_top_text::after {
	background: url(/wp-content/themes/child/image/page_top_arrow_sp.svg) center center/contain no-repeat;
	bottom: 1.8vw;
	height: 1.3vw;
	right: -2.6vw;
	width: 1.9vw;
}

.top_faq {
	padding-top: 15.4vw;
}

.top_faq_title::before {
	bottom: 0;
	height: 18.7vw;
	left: -19.7vw;
	width: 23.1vw;
}

.top_faq_title .common_title_sub {
	max-width: 17.4vw;
}

.top_faq_body {
	margin-top: 6.4vw;
}

.top_faq_button {
	margin: 5.1vw auto 0;
	max-width: 76.9vw;
}

.top_flow {
	padding-bottom: 15.4vw;
}

.top_flow::after {
	aspect-ratio: 390/160;
	background: url(/wp-content/themes/child/image/bg_dot2_sp.png) center center/contain no-repeat;
	width: 100vw;
}

.top_flow .top_flow_title .common_title_sub {
	width: 19vw;
}

.top_flow .top_flow_body {
	margin-top: 6.2vw;
}

.top_flow .top_flow_items {
	flex-direction: column;
	gap: 3.8vw 0;
}

.top_flow .top_flow_items::after {
	height: 106.4vw;
	left: 16.7%;
	top: 14%;
	width: 3px;
}

.top_flow .top_flow_button {
	margin: 5.1vw auto 0;
	max-width: 76.9vw;
}

.top_function::before {
	top: -9vw;
}

.top_function .top_function_body {
	margin-top: 6.2vw;
}

.top_function .top_function_media_stacks {
	align-items: start;
	flex-direction: column;
	gap: 2.6vw 0;
}

.top_function .top_function_media_stack {
	flex-direction: row;
	gap: 0 5.1vw;
}

.top_function .top_function_button {
	margin: 5.1vw auto 0;
	max-width: 76.9vw;
}

.top_information {
	padding: 15.4vw 0;
}

.top_information .top_information_title .common_title_sub {
	max-width: 31.8vw;
}

.top_information .top_information_body {
	margin-top: 6.2vw;
}

.top_information .top_information_button {
	margin: 5.1vw auto 0;
	max-width: 76.9vw;
}

.top_mainview {
	margin-top: 20.5vw;
	padding: 17.9vw 0 15.4vw;
}

.top_mainview .top_mainview_inner {
	flex-direction: column;
	gap: 29px 0;
	padding-left: 0;
}

.top_mainview .top_mainview_bubble-text {
	font-size: 3.6vw;
	margin: 0 auto;
	padding: 2.6vw 10.5vw 2.1vw;
}

.top_mainview .top_mainview_bubble-text::after {
	left: 48%;
}

.top_mainview .top_mainview_title_box {
	flex-direction: column;
	gap: 3.3vw 0;
	margin-top: 2.1vw;
}

.top_mainview .top_mainview_inner_box {
	gap: 0 3.1vw;
}

.top_mainview .top_mainview_inner_box span {
	font-size: 6.2vw;
	height: 10.3vw;
	width: 10.3vw;
}

.top_mainview .top_mainview_title {
	background-image: linear-gradient(to right, #fff 1.3vw, transparent 1.3vw);
	background-size: 2.6vw 0.5vw;
	font-size: 6.2vw;
	margin-top: 2.3vw;
	padding-bottom: 2.3vw;
}

.top_mainview .top_mainview_title_image {
	max-width: 80.8vw;
}

.top_mainview .top_mainview_title_image img {
	aspect-ratio: 315/28;
}

.top_mainview .top_mainview_logo {
	margin-top: 5.1vw;
	max-width: 84.6vw;
}

.top_mainview .top_mainview_logo img {
	aspect-ratio: 330/141;
}

.top_mainview .top_mainview_text {
	font-size: 5.1vw;
	margin-top: 5.1vw;
	text-align: center;
}

.top_mainview .top_mainview_text:last-of-type {
	margin-top: 2.3vw;
}

.top_mainview .top_mainview_buttons {
	display: none;
}

.top_mainview .top_mainview_image {
	max-width: 94.9vw;
}

.top_mainview .top_mainview_image img {
	aspect-ratio: 370/184;
}

.top_merit {
	padding: 15.9vw 0 15.4vw;
}

.top_merit .top_merit_title::before {
	aspect-ratio: 80/93;
	top: -25.9vw;
	width: 20.5vw;
}

.top_merit .top_merit_body {
	margin-top: 6.4vw;
}

.top_merit .top_merit_button {
	margin: 5.1vw auto 0;
	max-width: 76.9vw;
}

.top_news {
	padding-top: 15.4vw;
}

.top_news .top_news_inner {
	flex-direction: column;
}

.top_news .top_news_box {
	display: contents;
}

.top_news .top_news_title {
	order: 1;
}

.top_news .top_news_title.common_title {
	margin: 0 auto;
}

.top_news .top_news_title .common_title_sub {
	margin: 0 auto;
	width: 20vw;
}

.top_news .top_news_button {
	margin: 3.3vw auto 0;
	max-width: 76.9vw;
	order: 3;
}

.top_news .top_news_button .common_button {
	gap: 0 4.6vw;
	padding-left: 23.1vw;
}

.top_news .top_news_body {
	flex: none;
	margin-top: 6.2vw;
	order: 2;
}

.top_plan {
	padding-left: 0;
}

.top_plan .top_plan_body {
	flex-direction: column;
	margin-top: 13.8vw;
}

.top_plan .top_plan_cards {
	flex-direction: column;
	gap: 9vw 0;
	width: 100%;
}

.top_plan .top_plan_card {
	width: 100%;
}

.top_plan .top_plan_card_plan {
	font-size: 6.2vw;
	max-width: 79.5vw;
	padding: 2.1vw 0;
}

.top_plan .top_plan_card_body {
	padding: 6.4vw 5.1vw 5.1vw;
}

.top_plan .top_plan_card_heading {
	font-size: 4.1vw;
}

.top_plan .top_plan_card_price {
	font-size: 3.6vw;
	margin-top: 3.8vw;
}

.top_plan .top_plan_card_price span {
	font-size: 8.2vw;
}

.top_plan .top_plan_discount {
	font-size: 3.3vw;
	margin-top: 2.8vw;
}

.top_plan .top_plan_card_box {
	margin-top: 4.6vw;
	padding: 3.8vw 2.6vw 5.1vw 3.6vw;
}

.top_plan .top_plan_card_text {
	font-size: 3.3vw;
}

.top_plan .top_plan_card_text:last-of-type {
	margin-top: 2.3vw;
}

.top_plan .top_plan_box {
	margin-top: 9vw;
}

.top_plan .top_plan_text:not(:first-of-type) {
	margin-top: 4.1vw;
}

.top_plan .top_plan_text {
	font-size: 3.6vw;
}

.top_plan .top_plan_text span {
	font-size: 6.2vw;
}

.top_plan .top_plan_text_small {
	font-size: 3.3vw;
	margin-top: 3.8vw;
}

.top_plan .top_plan_inner_box {
	margin-top: 4.1vw;
}

.top_plan .top_plan_inner_heading {
	font-size: 3.6vw;
}

.top_plan .top_plan_inner_text {
	font-size: 3.3vw;
}

.top_price {
	padding-top: 15.4vw;
}

.top_price .top_price_title .common_title_sub {
	width: 20vw;
}

.top_price .top_price_body {
	margin-top: 4.9vw;
	padding: 7.7vw 2.6vw;
}

.top_price .top_price_table_wrap {
	overflow-y: scroll;
}

.top_system .top_system_inner.wrap {
	padding-left: 2.6vw;
	padding-right: 2.6vw;
}

.top_system .top_system_body {
	margin-top: 6.2vw;
}

.top_system .top_system_box {
	align-items: normal;
	flex-direction: column;
	gap: 2.6vw 0;
	padding: 11.5vw 2.6vw;
}

.top_system .top_system_wrap {
	align-items: normal;
	flex-direction: column;
	gap: 3.8vw 0;
	margin-top: 0;
}

.top_system .top_system_text {
	font-size: 6.2vw;
	padding: 2.3vw 0 1.8vw;
	text-align: center;
	width: 100%;
	writing-mode: horizontal-tb;
}

.top_system .top_system_inner_box {
	align-items: center;
	display: flex;
	gap: 0 2.7vw;
	justify-content: center;
}

.top_system .top_system_icon:nth-of-type(2) {
	margin-top: 0;
	order: 3;
}

.top_system .top_system_icon_title {
	font-size: 3.6vw;
	padding: 2.1vw 0 1.5vw;
	width: 25.6vw;
}

.top_system .top_system_icon_image {
	height: 25.6vw;
	width: 25.6vw;
}

.top_system .top_system_icon_image img {
	width: 10.3vw;
}

.top_system .top_system_arrow {
	margin-top: 0;
	order: 2;
	width: 4.9vw;
}

.top_system .top_system_image {
	margin: 0 auto;
	max-width: 84.6vw;
}

.top_system .top_system_image img {
	aspect-ratio: 330/557;
}

.top_system .top_system_wrap.top_system_wrap_reverse {
	flex-direction: column-reverse;
}

.top_works .top_works_body {
	margin-top: 6.2vw;
}

.top_works .top_works_button {
	margin-top: 5.1vw;
	max-width: 76.9vw;
}

.top_worries {
	padding: 9.5vw 0 17.9vw;
}

.top_worries .top_worries_inner.wrap {
	padding-left: 10px;
	padding-right: 10px;
}

.top_worries .top_worries_title_box {
	margin-top: 11.5vw;
	order: 2;
}

.top_worries .top_worries_title_box::before {
	height: 5.4vw;
	top: -5.4vw;
	width: 5.1vw;
}

.top_worries .top_worries_title {
	font-size: 6.2vw;
}

.top_worries .top_worries_title span {
	font-size: 8.2vw;
}

.top_worries .top_worries_body {
	display: contents;
}

.top_worries .top_worries_box {
	margin-top: 6.4vw;
	order: 3;
}

.top_worries .top_worries_lists {
	padding: 6.4vw 2.6vw 15.6vw;
}

.top_worries .top_worries_list {
	padding-bottom: 5.4vw;
}

.top_worries .top_worries_list:not(:first-of-type) {
	margin-top: 3.8vw;
}

.top_worries .top_worries_image {
	width: 4.6vw;
}

.top_worries .top_worries_text {
	font-size: 3.6vw;
	line-height: 1.6;
}

.top_worries .top_worries_button {
	width: 76.9vw;
}

.top_worries .top_worries_icon {
	align-content: center;
	display: grid;
	justify-content: center;
	margin-left: 0;
	order: 1;
	place-content: center;
}

.top_worries .top_worries_icon img {
	aspect-ratio: 83.5/97.2;
	width: 21.4vw;
}

.wrap {
	padding-left: 20px;
	padding-right: 20px;
}

}


/*# sourceMappingURL=style.css.map */
