@charset "UTF-8";

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

#sitemap_list {
	background: #fff;
	margin: 0;
	padding: 5px 10px;
}

#sitemap_list li.home-item {
	background: none;
	font-size: large;
	border-bottom: solid 2px #333;
	padding: 0;
	margin-bottom: 30px;
}

#sitemap_list li.home-item a {
	background: none;
	padding: 0;
	margin: 0;
	border: none;
}

#sitemap_list li {
	font-size: medium;
	text-indent: 0;
	padding: 0 0 12px 0px;
	margin: 10px 25px 0 0;
	list-style-type: none;
}

#sitemap_list li a {
	color: #333;
	font-weight: bold;
	background: #f8f8f8;
	padding: 0 25px;
	line-height: 32px;
	display: block;
	border: solid 1px #333;
	margin-bottom: 15px;
}

#sitemap_list li li {
	background: url(../images/index/line_dotted_glay.png) repeat-x left 0.5em;
	font-size: small;
	margin: 7px 30px 0 0;
	padding: 1px 0 0 0;
}

#sitemap_list li li a {
	background: #fff;
	font-weight: normal;
	padding: 0 25px;
	line-height: normal;
	display: inline-block;
	border: none;
	margin: 0;
}

#sitemap_list li li li {
	margin: 7px 0 0 30px;
}

#sitemap_list li li li li {
	font-style: italic; 
	margin-left: 30px;
}

#sitemap_list ul {
	padding: 0;
	margin: 0;
}

#sitemap_list li .posts_in_category {
	display: block;
	margin-top: -43px;
	padding-bottom: 12px;
	padding-right: 10px;
	min-height: 1em;
}

#sitemap_list li li .posts_in_category {
	margin-top: -20px;
	margin-right: -20px;
	padding-right: 0;
	padding-bottom: 0;
}

#sitemap_list li .posts_in_category a {
	background: #fff url(../images/index/ico_post_list.png) no-repeat center;
	text-indent: -9999px;
	display: block;
	width: 1.2em;
	height: 1.2em;
	border: solid 1px #ccc;
	padding: 0;
	float: right;
}

html,
button,
input,
select,
textarea {
	/* 不要な指定は消す */
	font-family: "Noto Sans JP", sans-serif;
	/*英語
	font-family: "Inter", serif;
	*/
}

body {
	color: #010101;
	font-size: 16px;
	line-height: 1.7;
	min-width: 1140px;
}

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

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

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

.wrap {
	width: 1160px;
	margin: 0 auto;
	padding-left: 10px;
	padding-right: 10px;
}

.wrap.mid {
	width: 1240px;
}

.wrap.lr {
	width: 1340px;
}

/* PC固定ページ 共通設定 */
.common_page_wrap {
	padding: 80px 0;
}

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

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

/* パンくず */
.breadcrumb {
	margin-top: 20px;
	margin-right: 100px;
	font-size: 12px;
	color: #010101;
	letter-spacing: .07em;
	text-align: right;
}

.breadcrumb a {
	text-decoration: none;
	color: #7B7B7B;
}

/* カテゴリーボタン等 */

.link_btn_wrapper {
	display: flex;
	gap: 20px;
	margin-top: 50px;
}

.link_btn_wrapper a {
	color: #010101;
}

.common_link_btn {
	position: relative;
	min-width: 200px;
	padding: 10px;
	display: inline-block;
	font-family: "Inter", sans-serif;
	font-style: italic;
	font-weight: 300;
	font-size: 16px;
	letter-spacing: 0;
	border-bottom: 1px solid #010101;
}

.common_link_btn::before {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #010101;
	border-right: 1px solid #010101;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(45deg);

}

/* PC固定ページ お問い合わせ */
.page_contact table {
	width: 74%;
	border-collapse: collapse;
	margin: 0 auto 50px;
}

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

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

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

.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 {
	width: 85%;
	height: 44px;
	border: 1px solid #a4a4a4;
	border-radius: 4px;
	padding: 1em;
}

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

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

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

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

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

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

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

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

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

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

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

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

.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 {
	font-size: 13px;
	border-left: solid 3px #ccc;
	padding-left: 1em;
	margin-bottom: 5px;
}

.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-top: solid 1px #e3e3e3;
	padding: 30px 0;
	border-bottom: solid 1px #e3e3e3;
	width: 60%;
	margin: 0 auto 50px;
}

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

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

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

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

.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 {
	padding-left: 2em;
	display: inline-block;
	position: relative;
}

/* 各パーツを作成 */
.radio_btns .radio_btns__item+span::after,
.radio_btns .radio_btns__item+span::before {
	content: '';
	display: block;
	position: absolute;
	border: 1px solid #AAAAAA;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	top: 0;
	left: 0;
	border: 1.2px solid #a4a4a4;
	bottom: 0;
	margin: auto;
}

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

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span {
	font-weight: 600;
}

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

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

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

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

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

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

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

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

/* サンクスページ */

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

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

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

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

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

/* ステップバー デザイン */
.page_contact .progressbar {
	margin-bottom: 60px;
	justify-content: center;
}

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

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

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

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

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

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

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

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

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

.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 {
	font-weight: 600;
	font-size: 16px;
	margin-bottom: .5em;
	border-left: 3px solid #ccc;
	padding-left: 1em;
}

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

/* PC固定ページ 404ページ */
#page_404 {
	text-align: center;
}

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

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

/* PC固定ページ アーカイブページ */
/* 投稿リスト表示 */
.archive_page_list>article {
	padding-bottom: 15px;
	padding-top: 15px;
	padding-right: 30px;
}


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

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

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

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


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

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


.wp-pagenavi .current {
	color: #FFF;
	background-color: #86BC2B;
	border-color: #86BC2B;
	font-weight: bold;
}

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.singleContent article h4 {
	padding: 2px 10px;
	margin: 1.5em 0 1em;
	color: #333;
	border-left: 5px solid #5b5959;
	font-size: 17px;
	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 {
	font-size: 17px;
	border-bottom: 1px solid;
	padding-bottom: 3px;
	margin: 1.5em 0 1em;
}

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

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

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

.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 {
	color: initial;
	align-items: center;
	font-size: 14px;
	transition: .3s;
}

.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: .5em;
}

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

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

#toc_container a {
	color: #333;
}

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

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

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

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

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

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

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

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

.aside_article_type .cat_wrap {
	gap: 5px;
}

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

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

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

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

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

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

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

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

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

.latest_post_area a {
	color: #000;
}

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

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

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

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


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

.latest_post_area .category_list {
	width: 100%;
}

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

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


.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 {
	content: "";
	width: 1px;
	height: 100px;
	background: #ccc;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: -103px;
}

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

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

.singleContent_links ul {
	width: 260px;
}

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

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

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

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

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

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

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

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

.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 {
	width: calc(100% - 100px);
	padding-left: 10px;
}

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

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

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

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

.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 {
	content: "";
	position: absolute;
	right: -2px;
	top: -2px;
	border-width: 0 30px 30px 0;
	border-style: solid;
	border-color: #333 #fff #333;
}

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

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

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

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

#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;
}

/********************
　　共通化パーツ
*********************/
.bg_line {
	position: relative;
}

.bg_line::before {
	content: "";
	position: absolute;
	width: calc(100% / 3);
	height: 100%;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	border-left: 1px solid #F2F2F2;
	border-right: 1px solid #F2F2F2;
	z-index: -1;
}

.common_section_title {
	position: relative;
	font-weight: 400;
	font-size: 18px;
	letter-spacing: 0.09em;
	padding-top: 124px;
}

.common_section_title::before {
	content: attr(data-en);
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 70px;
	top: 0;
	left: 0;
	line-height: 1.1;
	color: #86BC2B;
	text-transform: uppercase;
	white-space: nowrap;
}

.common_desktop {
	display: block;
}

.common_mobile {
	display: none;
}

.common_btn {
	min-width: 270px;
	display: inline-block;
	text-align: center;
	padding: 14px 30px 15px;
	background-color: #fff;
	border-radius: 35px;
}

.common_btn span {
	position: relative;
	display: block;
	font-family: "Inter", serif;
	font-size: 16px;
	font-style: italic;
	color: #86BC2B;
}

.common_btn span::before {
	content: "";
	position: absolute;
	background: url(./image/icon/arrow-green.png) no-repeat center center /contain;
	width: 15px;
	height: 14px;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.common_btn2 {
	min-width: 310px;
	display: inline-block;
	border-radius: 35px;
	background-color: #010101;
	text-align: center;
	padding: 20px 30px;
	transition: .3s;
}

.common_btn2 span {
	position: relative;
	display: block;
	color: #fff;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 18px;
	transition: .3s;
}

.common_btn2 span::before {
	content: "";
	position: absolute;
	background: url(./image/icon/arrow-green.png) no-repeat center center /contain;
	width: 15px;
	height: 14px;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.common_table {
	display: grid;
	grid-template-columns: repeat(23, 1fr);
	grid-template-rows: repeat(17, 1fr);
	gap: 6px;
	font-weight: 500;
	font-size: 16px;
	line-height: 2.06;
	letter-spacing: 0.09em;
	text-align: center;
	white-space: nowrap;
	padding-left: 10px;
	padding-right: 10px;
}

.common_table .small {
	font-family: "Inter", serif;
	font-size: 14px;
	line-height: 2.35;
	font-weight: 400;
}

.common_table .small_jp {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.09em;
	line-height: 2.53;
}

/* 旧テーブル */
/* .common_table .div1 {
	width: 40px;
	height: 40px;
}

.common_table .div2 {
	grid-row: span 14 / span 14;
	grid-column-start: 1;
	grid-row-start: 2;
	background-color: #86BC2B;
	font-weight: 500;
	font-size: 18px;
	color: #fff;
	writing-mode: vertical-rl;
	width: 40px;
	line-height: 2.26;
}

.common_table .div3 {
	grid-row: span 2 / span 2;
	grid-column-start: 1;
	grid-row-start: 16;
	width: 40px;
	background-color: #26880E;
	font-weight: 500;
	font-size: 18px;
	color: #fff;
	line-height: 2.26;
	writing-mode: vertical-rl;
}

.common_table .div4 {
	grid-column: span 3 / span 3;
	grid-column-start: 2;
	grid-row-start: 1;
}

.common_table .div5 {
	grid-column: span 3 / span 3;
	grid-column-start: 2;
	grid-row-start: 2;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div6 {
	grid-column: span 3 / span 3;
	grid-column-start: 2;
	grid-row-start: 3;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div7 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 2;
	grid-row-start: 4;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: normal;
}

.common_table .div8 {
	grid-column: span 3 / span 3;
	grid-row: span 10 / span 10;
	grid-column-start: 2;
	grid-row-start: 6;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: normal;
}

.common_table .div9 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 2;
	grid-row-start: 16;
	text-align: left;
	background-color: #EFFFEB;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: normal;
	line-height: 1.2;
}

.common_table .div10 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 1;
	width: 140px;
}

.common_table .div11 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 2;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 140px;
}

.common_table .div12 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 3;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div13 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 5;
	grid-row-start: 4;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div14 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 5;
	grid-row-start: 6;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div15 {
	grid-column: span 3 / span 3;
	grid-row: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div16 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 11;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div17 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 5;
	grid-row-start: 12;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div18 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 5;
	grid-row-start: 14;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div19 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 16;
	background-color: #EBFFE6;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div20 {
	grid-column: span 3 / span 3;
	grid-column-start: 5;
	grid-row-start: 17;
	background-color: #EBFFE6;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div21 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 1;
	background-color: #86BC2B;
	font-size: 16px;
	font-weight: normal;
	line-height: 2.06;
	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
}

.common_table .div21::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #86BC2B;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 2;
}

.common_table .div22 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 2;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div23 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 3;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div24 {
	grid-column: span 16 / span 16;
	grid-column-start: 8;
	grid-row-start: 4;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div25 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 5;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div26 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 6;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div27 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 7;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div28 {
	grid-column: span 16 / span 16;
	grid-column-start: 8;
	grid-row-start: 8;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div29 {
	grid-column: span 4 / span 4;
	grid-row: span 2 / span 2;
	grid-column-start: 8;
	grid-row-start: 9;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div30 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 11;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	padding-top: 4px;
}

.common_table .div31 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div32 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 13;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div33 {
	grid-column: span 12 / span 12;
	grid-column-start: 8;
	grid-row-start: 14;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div34 {
	grid-column: span 16 / span 16;
	grid-column-start: 8;
	grid-row-start: 15;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div35 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div36 {
	grid-column: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 17;
}

.common_table .div37 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 1;
	background-color: #78B70D;
	font-size: 16px;
	font-weight: normal;
	line-height: 2.06;
	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
	padding-left: 12px;
}

.common_table .div37::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #78B70D;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 2;
}

.common_table .div37::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: 1;
}

.common_table .div38 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 2;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div39 {
	grid-column: span 12 / span 8;
	grid-column-start: 12;
	grid-row-start: 3;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div40 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 5;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div41 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 6;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div42 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 7;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div43 {
	grid-column: span 4 / span 4;
	grid-row: span 2 / span 2;
	grid-column-start: 12;
	grid-row-start: 9;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div44 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 11;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	padding-top: 4px;
}

.common_table .div45 {
	grid-column: span 8 / span 8;
	grid-column-start: 12;
	grid-row-start: 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div46 {
	grid-column: span 8 / span 8;
	grid-column-start: 12;
	grid-row-start: 13;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div47 {
	grid-column: span 4 / span 4;
	grid-column-start: 12;
	grid-row-start: 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div48 {
	grid-column: span 12 / span 12;
	grid-column-start: 12;
	grid-row-start: 17;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div49 {
	grid-column: span 4 / span 4;
	grid-column-start: 16;
	grid-row-start: 1;
	background-color: #3FA227;
	font-size: 16px;
	font-weight: normal;
	line-height: 2.06;
	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
	padding-left: 12px;
}

.common_table .div49::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #3FA227;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 1;
}

.common_table .div49::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: 1;
}


.common_table .div50 {
	grid-column: span 4 / span 4;
	grid-column-start: 16;
	grid-row-start: 2;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div51 {
	grid-column: span 8 / span 8;
	grid-column-start: 16;
	grid-row-start: 5;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div52 {
	grid-column: span 4 / span 4;
	grid-column-start: 16;
	grid-row-start: 6;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div53 {
	grid-column: span 8 / span 8;
	grid-column-start: 16;
	grid-row-start: 7;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div54 {
	grid-column: span 8 / span 8;
	grid-column-start: 16;
	grid-row-start: 9;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div55 {
	grid-column: span 8 / span 8;
	grid-column-start: 16;
	grid-row-start: 10;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	padding-top: 4px;
}

.common_table .div56 {
	grid-column: span 4 / span 4;
	grid-column-start: 16;
	grid-row-start: 11;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div57 {
	grid-column: span 4 / span 4;
	grid-column-start: 16;
	grid-row-start: 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div58 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 1;
	background-color: #26880E;
	font-size: 16px;
	font-weight: normal;
	line-height: 2.06;
	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 5% 50%);
}

.common_table .div59 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 2;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div60 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 6;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div61 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 11;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div62 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div63 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 13;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div64 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 14;
	background-color: #F5F5F5;
	font-size: 12px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common_table .div65 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 16;
}

.common_table .div66 {
	grid-column: span 4 / span 4;
	grid-column-start: 20;
	grid-row-start: 3;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
} */

/* 新テーブル2025_7 */
.common_table {
	display: grid;
	grid-template-columns: repeat(23, 1fr);
	grid-template-rows: repeat(8, 1fr);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
	gap: 6px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.09em;
	text-align: center;
	white-space: wrap;
	padding-left: 10px;
	padding-right: 10px;
}

.common_table .small {
	font-family: "Inter", serif;
	font-size: 14px;
	line-height: 2.35;
	font-weight: 400;
}

.common_table .small_jp {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.09em;
	line-height: 2.53;
}

.common_table div {
	display: grid !important;
	place-content: center !important;
	line-height: 1.7;
}

.common_table .div1 {
	grid-area: 1 / 1 / 2 / 2;
	width: 40px;
	height: 40px;
}

.common_table .div2 {
	grid-area: 2 / 1 / 9 / 2;
	background-color: #86BC2B;
	font-weight: 500;
	font-size: 18px;
	color: #fff;
	writing-mode: vertical-rl;
	width: 40px;
	line-height: 2.26;
}

.common_table .div3 {
	grid-area: 9 / 1 / 10 / 2;
	width: 40px;
	background-color: #26880E;
	font-weight: 500;
	font-size: 18px;
	color: #fff;
	line-height: 2.26;
	writing-mode: vertical-rl;
	height: 110px;
}

.common_table .div4 {
	grid-area: 1 / 2 / 2 / 8;
	height: 80px;
}

.common_table .div5 {
	grid-area: 2 / 2 / 3 / 5;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;
	width: 100px;
}

.common_table .div6 {
	grid-area: 3 / 2 / 8 / 5;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;
}

.common_table .div7 {
	grid-area: 8 / 2 / 9 / 5;
	background-color: #F3FFE0;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;
}

.common_table .div8 {
	grid-area: 9 / 2 / 10 / 5;
	background-color: #EFFFEB;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 20px;
	letter-spacing: 0;
	font-weight: normal;

}

.common_table .div9 {
	grid-area: 2 / 5 / 3 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
	width: 140px;
}

.common_table .div10 {
	grid-area: 3 / 5 / 4 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div11 {
	grid-area: 4 / 5 / 5 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div12 {
	grid-area: 5 / 5 / 6 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div13 {
	grid-area: 6 / 5 / 7 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div14 {
	grid-area: 7 / 5 / 8 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div15 {
	grid-area: 8 / 5 / 9 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div16 {
	grid-area: 9 / 5 / 10 / 8;
	background-color: #EBFDCE;
	font-size: 16px;
	font-weight: 500;

	letter-spacing: 0.09em;
}

.common_table .div17 {
	grid-area: 1 / 8 / 2 / 12;
	background-color: #86BC2B;
	font-size: 16px;
	font-weight: normal;

	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
	height: 80px;
}

.common_table .div17::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #86BC2B;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 2;
}

.common_table .div18 {
	grid-area: 2 / 8 / 3 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div19 {
	grid-area: 3 / 8 / 4 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div20 {
	grid-area: 4 / 8 / 5 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div21 {
	grid-area: 5 / 8 / 6 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div22 {
	grid-area: 6 / 8 / 7 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div23 {
	grid-area: 7 / 8 / 8 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div24 {
	grid-area: 8 / 8 / 9 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div25 {
	grid-area: 9 / 8 / 10 / 12;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div26 {
	grid-area: 1 / 12 / 2 / 16;
	background-color: #78B70D;
	font-size: 16px;
	font-weight: normal;

	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
	padding-left: 12px;
	height: 80px;
}

.common_table .div26::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #78B70D;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 2;
}

.common_table .div26::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: 1;
}

.common_table .div27 {
	grid-area: 2 / 12 / 3 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div28 {
	grid-area: 3 / 12 / 4 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div29 {
	grid-area: 4 / 12 / 5 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div30 {
	grid-area: 5 / 12 / 6 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div31 {
	grid-area: 6 / 12 / 7 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div32 {
	grid-area: 7 / 12 / 8 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div33 {
	grid-area: 8 / 12 / 9 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div34 {
	grid-area: 9 / 12 / 10 / 16;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div35 {
	grid-area: 1 / 16 / 2 / 20;
	background-color: #3FA227;
	font-size: 16px;
	font-weight: normal;

	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	position: relative;
	padding-left: 12px;
	height: 80px;
}

.common_table .div35::before {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #3FA227;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: -10px;
	z-index: 1;
}

.common_table .div35::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 100%;
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: 1;
}

.common_table .div36 {
	grid-area: 2 / 16 / 3 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div37 {
	grid-area: 3 / 16 / 4 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div38 {
	grid-area: 4 / 16 / 5 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div39 {
	grid-area: 5 / 16 / 6 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;

}

.common_table .div40 {
	grid-area: 6 / 16 / 7 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div41 {
	grid-area: 7 / 16 / 8 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div42 {
	grid-area: 8 / 16 / 9 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div43 {
	grid-area: 9 / 16 / 10 / 20;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div44 {
	grid-area: 1 / 20 / 2 / 24;
	background-color: #26880E;
	font-size: 16px;
	font-weight: normal;

	letter-spacing: 0.06em;
	color: #fff;
	padding-top: 4px;
	width: 201px;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 5% 50%);
	height: 80px;
}

.common_table .div45 {
	grid-area: 2 / 20 / 3 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div46 {
	grid-area: 3 / 20 / 4 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div47 {
	grid-area: 4 / 20 / 5 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div48 {
	grid-area: 5 / 20 / 6 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div49 {
	grid-area: 6 / 20 / 7 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div50 {
	grid-area: 7 / 20 / 8 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div51 {
	grid-area: 8 / 20 / 9 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table .div52 {
	grid-area: 9 / 20 / 10 / 24;
	background-color: #F5F5F5;
	font-size: 16px;
	font-weight: 500;
}

.common_table div.active {
	background-color: #F3FFE0 !important;
}

.common_cta {
	position: relative;
	z-index: 1000;
}

.common_cta .container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.common_cta .card {
	display: inline-block;
	position: relative;
	aspect-ratio: 480 / 240;
	width: 100%;
	display: flex;
	align-items: end;
	transition: .5s;
}

.common_cta .card::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(1, 1, 1, 0.8);
	transition: .5s;
}

.common_cta .image {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.common_cta .image img {
	aspect-ratio: 480 / 240;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .5s;
	transform: scale(1.0);
}

.common_cta .body {
	display: block;
	flex-grow: 1;
	position: relative;
	padding-bottom: 19px;
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 20px;
}

.common_cta .body::before {
	content: "";
	position: absolute;
	width: 14%;
	height: 1px;
	background-color: #fff;
	bottom: 0;
	left: 0;
	transition: .5s;
}

.common_cta .card_title {
	position: relative;
	font-weight: normal;
	font-size: 16px;
	line-height: 2.06;
	letter-spacing: 0.09em;
	color: #fff;
}

.common_cta .en_title {
	position: relative;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 24px;
	line-height: 1.70;
	letter-spacing: 0;
	color: #fff;
}

.common_cta .en_title span {
	font-size: 38px;
	line-height: 1.07;
}

/********************
　　共通記事一覧
*********************/

.common_article .list {
	margin-top: 40px;
}

.common_article .title_box {
	position: relative;
	display: flex;
	border-left: 6px solid #86BC2B;
	align-items: center;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 20px;

}

.common_article .image {
	max-width: 95px;
	width: 100%;
	padding-right: 30px;

}

.common_article .image img {
	aspect-ratio: 95 / 29;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.common_article .list_title {
	font-weight: normal;
	font-size: 16px;
	line-height: 2.06;
	letter-spacing: 0.09em;
	padding-left: 30px;
	position: relative;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	/* 行数指定 */
}

.common_article .list_title::before {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	background-color: #B9B9B9;
	top: 0;
	left: 0;
}

.common_article .title_box::after {
	content: "";
	position: absolute;
	width: 10px;
	height: 10px;
	border-bottom: 1px solid #010101;
	border-right: 1px solid #010101;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	right: 0;
}

.common_article a {
	color: #010101;
	transition: .3s;
}

.common_article .text {
	margin-top: 12px;
	padding-left: 26px;
	padding-right: 62px;
	font-weight: normal;
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: 0.14em;
	color: #808080;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
}


/********************
　　共通FV
*********************/

.common_page_main {
	width: 100%;
	position: relative;
	margin-top: 130px;
	padding: 85px 0 85px 50px;
}

.common_page_main .image {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	padding-left: 100px;
	padding-right: 100px;
}

.common_page_main .image img {
	aspect-ratio: 1240 / 220;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.common_page_main .title_box {
	display: inline-block;
	position: relative;
}

.common_page_main .title {
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 40px;
	color: #fff;
	letter-spacing: 0;
	text-transform: uppercase;
	background-color: #86BC2B;
	padding: 7px 36px 10px 36px;
	clip-path: polygon(5% 0, 100% 0%, 95% 100%, 0% 100%);
}

/********************
　　共通FV
*********************/


/*アーカイブページカード*/

.common_archive a {
	color: #010101;
}

.common_archive .archive_cards {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 40px;
}

.common_archive .archive_cards .card {
	width: 100%;
	display: flex;
	align-items: center;
	transition: .5s;
}

.common_archive .archive_cards .card .image {
	position: relative;
	aspect-ratio: 270 / 154;
	flex: 0 0 270px;
	background-color: #fff;
	border: 1px solid #EFEFEF;
}

.common_archive .archive_cards .card .image::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(./image/images/logo-img.png) no-repeat center center /contain;
	aspect-ratio: 163 / 50;
	max-width: 143px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.common_archive .archive_cards .card .image img {
	position: relative;
	aspect-ratio: 270 / 154;
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.common_archive .archive_cards .card .body {
	position: relative;
	flex-grow: 1;
	padding-left: 40px;
	padding-right: 110px;
}

.common_archive .archive_cards .card .body::before {
	position: absolute;
	content: "";
	width: 10px;
	height: 10px;
	border-bottom: 1px solid #010101;
	border-right: 1px solid #010101;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(-45deg);
}

.common_archive .archive_cards .card .body .meta_box {
	display: flex;
	align-items: center;
}

.common_archive .archive_cards .card .body .category {
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.07em;
	color: #86BC2B;
	padding: 3px 15px;
	border-radius: 4px;
	border: 1px solid #86BC2B;
	background-color: #fff;
}

.common_archive .archive_cards .card .body .category:not(:first-child) {
	margin-left: 10px;
}

.common_archive .archive_cards .card .body .day {
	margin-left: 20px;
	font-family: "Inter", serif;
	font-weight: 400;
	font-size: 14px;
	letter-spacing: 0;
}

.common_archive .archive_cards .card .body .card_title {
	margin-top: 18px;
	font-weight: normal;
	font-size: 16px;
	letter-spacing: 0.09em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	/* 行数指定 */
}

.common_archive .archive_cards .card .body .card_content {
	margin-top: 16px;
	font-weight: normal;
	font-size: 12px;
	letter-spacing: 0.14em;
	color: #808080;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
}

.common_page_wrap .archive_navi .wp-pagenavi {
	text-align: right;
}

.archive_contact {
	padding-top: 74px;
	padding-bottom: 172px;
}

.archive_contact .contact_box {
	text-align: center;
}

.archive_contact .contact_box .title {
	font-family: "Inter", serif;
	font-weight: 300;
	font-size: 70px;
	color: #010101;
	letter-spacing: 0;
	line-height: 1.1;
	text-transform: uppercase;
}

.archive_contact .contact_box .text {
	margin-top: 9px;
	font-size: 16px;
	font-weight: normal;
	line-height: 2.25;
	letter-spacing: 0.14em;
}

.archive_contact .contact_box .btn {
	margin-top: 50px;
}

/********************
　　共通ボタン（カテゴリー）
*********************/
.common_contents {
	position: relative;

}

.common_contents .btn {
	min-width: 200px;
	position: relative;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 16px;
	letter-spacing: 0;
	padding: 10px;
	display: inline-block;
	border-bottom: 1px solid #010101;
}

.common_contents .btn::before {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #010101;
	border-left: 1px solid #010101;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(-45deg);
}

.common_contents ul {
	position: absolute;
	top: 100%;
	left: 0;
	display: flex;
	flex-direction: column;
	background-color: rgba(255, 255, 255, 0.95);
	z-index: 1000;
	max-width: 200px;
	width: 100%;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	padding-top: 20px;
}

.common_contents.is-active ul {
	opacity: 1;
	visibility: visible;
}

.common_contents ul li {
	display: inline-block;
	width: 100%;
	font-size: 16px;
	transition: .3s;
	padding: 5px;
}

.common_contents a {
	color: #010101;
}

/********************
　　共通インタビュー
*********************/
.common_introduction {
	margin-top: 57px;

}

.common_introduction .title_box {
	text-align: center;

}

.common_introduction .title {
	position: relative;
	display: inline-block;
	padding-top: 51px;
	font-weight: normal;
	font-size: 14px;
	line-height: 2.35;
	letter-spacing: 0.09em;
}

.common_introduction .title::before {
	content: attr(data-en);
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 30px;
	line-height: 2.56;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	text-transform: uppercase;
}

.common_introduction .wrapper {
	padding-top: 36px;
	padding-bottom: 80px;
}

.common_introduction .wrapper_bb {
	border-bottom: 1px solid #B9B9B9;
}


.common_introduction .common_cards {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 35px 16px;
}

.common_introduction .common_cards a {
	color: #010101;
}

.common_introduction .body {
	padding-top: 14px;
}

.common_introduction .image img {
	aspect-ratio: 215 / 155;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.common_introduction .name {
	color: #86BC2B;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: .05em;
	margin-block: 0 0.3em;
}

.common_introduction .position {
	font-size: 14px;
	letter-spacing: .05em;
	line-height: 1.5;
	margin-block: 0 0.5em;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.common_introduction .profile {
	color: #AAA;
	font-size: 14px;
	letter-spacing: .05em;
	line-height: 1.5;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.common_introduction .btn {
	margin-top: 60px;
	text-align: center;
}




/********************
　　ヘッダー
*********************/
.pc_header {
	width: 100%;
	background-color: transparent;
	padding: 40px 53px 30px 50px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}

.pc_header .container {
	display: flex;
	align-items: center;
}

.pc_header .logo {
	width: 163px;
	flex-shrink: 0;
}

.pc_header .logo img {
	aspect-ratio: 163 / 50;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.pc_header .nav {
	margin-left: auto;
}

.pc_header .nav ul {
	display: flex;
}

.pc_header .nav ul li {
	margin-left: 20px;
}

.pc_header .nav ul li:first-child {
	margin-left: 0;
}

.pc_header .nav ul li a {
	font-family: "Inter", serif;
	display: inline-block;
	padding: 5px 10px;
	font-size: 16px;
	font-weight: 300;
	font-style: italic;
	color: #010101;
	text-transform: uppercase;
	transition: .3s;
}

/********************
　　top-fv
*********************/
.top_fv {
	width: 100%;
	height: 100%;
	padding-top: 120px;
	aspect-ratio: 2/1;
	max-height: 900px;
}

.top_fv .slide {
	position: relative;
	width: 100%;
	height: 100%;
}

.top_fv .container {
	display: flex;
	width: 100%;
	height: 100%;
	padding-left: 50px;
	padding-right: 50px;
}

.top_fv .body {
	width: 49.3%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.top_fv .lead {
	position: relative;
	font-size: 60px;
	font-weight: 300;
	line-height: 1.45;
	letter-spacing: 0.38em;
	white-space: nowrap;
	z-index: 5;
}

.top_fv .lead .ruby {
	position: relative;
}

.top_fv .lead .ruby::before {
	content: "ヒト";
	position: absolute;
	top: -10px;
	left: 38%;
	transform: translateX(-50%);
	font-size: 18px;
	font-weight: 300;
	white-space: nowrap;
	letter-spacing: 0;
}

.top_fv .lead .green_color {
	color: #86BC2B;
}

.top_fv .lead_en {
	margin-top: 27px;
	font-family: "Inter", serif;
	font-weight: 400;
	font-size: 20px;
}

.top_fv .slide a {
	display: inline-block;
	color: #010101;
	transition: .3s;
}

.top_fv .slide .btn {
	margin-top: 60px;
	display: inline-block;
	max-width: 200px;
}

.top_fv .slide .btn span {
	position: relative;
	display: inline-block;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 18px;
	line-height: 4.27;
	padding-left: 70px;
}

.top_fv .slide .btn span::before {
	content: "";
	position: absolute;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #86BC2B;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.top_fv .slide .btn span::after {
	content: "";
	position: absolute;
	background: url(./image/icon/arrow-white.png) no-repeat center center /contain;
	width: 15px;
	height: 14px;
	top: 50%;
	transform: translateY(-50%);
	left: 18px;
	z-index: 1;
}

.top_fv .slide_image {
	width: 50.7%;
	height: 100%;
	position: relative;
}

.top_fv .slide_image::before {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	aspect-ratio: 114 / 125;
	max-width: 114px;
	width: 100%;
	top: 45%;
	transform: translateY(-50%);
	right: 0;
	z-index: 2;
}

.top_fv .slide_image::after {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	aspect-ratio: 91 / 99;
	max-width: 91px;
	width: 100%;
	bottom: 10%;
	right: 8%;
	z-index: 2;
}

.top_fv .slide_square {
	position: relative;
}

.top_fv .slide_square::before {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	aspect-ratio: 37 / 40;
	max-width: 37px;
	width: 100%;
	top: 32px;
	left: 13%;
	z-index: 2;
}

.slide_square-bottom {
	position: relative;
}

.slide_square-bottom::before {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	aspect-ratio: 41 / 45;
	max-width: 41px;
	width: 100%;
	bottom: 70px;
	left: 0;
	z-index: 2;
}

.top_fv .slide_image .image {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top_fv .slide_image .image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(./image/images/top-fv-white.png) no-repeat center center /cover;
	z-index: 1;
}

.top_fv .slide_image .image::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -50px;
	background: url(./image/images/top-fv2.png) no-repeat center center /cover;
	aspect-ratio: 213 / 233;
	max-width: 213px;
	width: 100%;
	z-index: 2;
}

.top_fv .slide_image img {
	aspect-ratio: 680 / 600;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.top_fv .slide_flex {
	display: flex;
	justify-content: end;
	align-items: end;
}

.top_fv .interview_image {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.top_fv .interview_image img {
	aspect-ratio: 1440 / 600;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}

.top_fv .box {
	position: relative;
	background-color: rgba(134, 188, 43, 0.9);
	display: inline-block;
	padding: 30px;
	margin-right: 50px;
	max-width: 590px;
	width: 100%;
}

.top_fv .interview_text {
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.15em;
	white-space: nowrap;
}

.top_fv .flex {
	align-items: center;
	flex-wrap: nowrap;
}

.top_fv .flex .line {
	width: 100%;
	height: 1px;
	background-color: #fff;
	margin-left: 20px;
}

.top_fv .interview_title {
	margin-top: 18px;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.07em;
	line-height: 1.54;
	color: #fff;
}

.interview_head {
	margin-top: 46px;
}

.interview_head,
.interview_name {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.62;
	color: #fff;
	letter-spacing: 0.17em;
}

.top_fv_pagination {
	right: initial;
	bottom: 30px;
	left: 60px;

}

.top_fv_page {
	width: 40px;
	height: 6px;
	background-color: #DEDEDE;
	border-radius: initial;
	opacity: 1;

}

.top_fv_page.is-active {
	background-color: #86BC2B;
	transform: scale(1);
}

.top_fv_arrow {
	top: initial;
	transform: initial;
	bottom: 20px;

}

.top_fv_prev {
	background-color: transparent;
	left: 40px;

}

.top_fv_prev::before {
	content: "";
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #010101;
	border-left: 2px solid #010101;
	transform: rotate(45deg);
}

.splide__arrow.black_color.top_fv_prev::before {
	border-bottom: 2px solid #010101;
	border-left: 2px solid #010101;
}


.splide__arrow.white_color.top_fv_prev::before {
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
}

.top_fv_next {
	background-color: transparent;
	right: initial;
	left: 310px;

}

.top_fv_next::before {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #010101;
	border-right: 2px solid #010101;
	transform: rotate(45deg);
}

.splide__arrow.white_color.top_fv_next::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.splide__arrow.black_color.top_fv_next::before {
	border-top: 2px solid #010101;
	border-right: 2px solid #010101;
}

.top_fv .slide_counter {
	position: absolute;
	left: 345px;
	bottom: 24px;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.2em;
	transition: .3s;
}

.top_fv .slide_counter.white_color {
	color: #fff;
}

.top_fv .splide {
	height: 100%;
}

.top_fv .splide__track {
	height: 100%;
}

/********************
　　top-私たちについて
*********************/
.top_about {
	width: 100%;
	padding-top: 192px;
}

.top_about .container {
	display: flex;
}

.top_about .title {
	max-width: 312px;
	width: 100%;
}

.top_about .body {
	padding-top: 124px;
	padding-left: 125px;
}

.top_about .lead {
	font-size: 22px;
	letter-spacing: 0.07em;
}

.top_about .text {
	margin-top: 60px;
	font-size: 16px;
	line-height: 2.25;
	letter-spacing: 0.14em;
}

.top_about .lead span {
	font-size: 14px;
	line-height: 2.78;
}

/********************
　　top-お知らせ
*********************/

.top_news {
	position: relative;
	width: 100%;
	padding-top: 150px;
}

.top_news::before {
	position: absolute;
	content: "";
	bottom: 30px;
	right: 0;
	width: 85%;
	height: 52%;
	z-index: -1;
	background-color: #FBFFF5;
}

.top_news .section_title {
	position: relative;
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0.09em;
	padding-left: 176px;
}

.top_news .section_title::before {
	content: attr(data-en);
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 50px;
	line-height: 1.54;
	left: 0;
	top: -30px;
	text-transform: uppercase;
}

.top_news .cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 45px;
	margin-top: 38px;
}

.top_news .card {
	transition: .3s;
}

.top_news a {
	color: #010101;
	transition: .3s;
}

.top_news .image {
	position: relative;
	aspect-ratio: 350 / 200;
	max-width: 350px;
	width: 100%;
	background-color: #fff;
	border: 1px solid #EFEFEF;
}

.top_news .image::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(./image/images/logo-img.png) no-repeat center center /contain;
	aspect-ratio: 163 / 50;
	max-width: 163px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.top_news .image img {
	position: relative;
	aspect-ratio: 350 / 200;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 2;
}

.top_news .body {
	margin-top: 18px;
}

.top_news .flex {
	justify-content: space-between;
	align-items: center;
}

.top_news .date {
	font-family: "Inter", serif;
	font-weight: 400;
	font-size: 14px;
}

.top_news .meta_box {
	display: flex;
	gap: 10px;
}

.top_news .category {
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.07em;
	color: #86BC2B;
	padding: 3px 5px;
	text-align: center;
	min-width: 120px;
	border-radius: 4px;
	border: 1px solid #86BC2B;
	background-color: #fff;
}

.top_news .title {
	margin-top: 26px;
	min-height: 55px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
	font-size: 16px;
	font-weight: normal;
	letter-spacing: 0.09em;
}

.top_news .text {
	margin-top: 16px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: 0.14em;
	color: #808080;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
	flex-grow: 1;

}

.top_news .btn {
	margin-top: 60px;
	text-align: center;
}

/********************
　　top-事業概要
*********************/
.top_service {
	padding-top: 146px;
}

.top_service .btn {
	margin-top: 62px;
	text-align: center;
}

/********************
　　top-コラム記事
*********************/
.top_column {
	padding-top: 139px;
	padding-bottom: 165px;
}

.top_column_sp {
	display: none;
}

.top_column a {
	color: #010101;
}

.top_column .title {
	position: relative;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.8;
	letter-spacing: 0.09em;
	padding-top: 82px;
	text-align: center;
}

.top_column .title::before {
	content: attr(data-en);
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 50px;
	line-height: 1.54;
	left: 50%;
	transform: translateX(-50%);
	top: 0;
	text-transform: uppercase;
	color: #86BC2B;
}

.top_column .slide {
	margin-top: 35px;
}

.top_column .cards {
	margin-top: 35px;
}

.top_column_sp .cards a {
	color: #010101;
}

/*以下　改修用*/
.top_column .card {
	display: block;
	box-shadow: 0 1px 2px #00000029;
	width: 100%;
	max-width: 370px;
}

.top_column .card .image {
	position: relative;
	aspect-ratio: 370 / 200;
	width: 100%;
	overflow: hidden;
	box-shadow: 0 1px 2px #00000029;
	background-color: #fff;
}

.top_column .card .image::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(./image/images/logo-img.png) no-repeat center center /contain;
	aspect-ratio: 163 / 50;
	max-width: 163px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 0;
}

.top_column .card .image img {
	position: relative;
	aspect-ratio: 370 / 200;
	object-fit: cover;
	width: 100%;
	height: 100% !important;
	z-index: 1;
}

.top_column .card .body {
	padding: 20px;
	background-color: #fff;
}

.top_column .card .body .card_title {
	color: #86BC2B;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.56;
	letter-spacing: 0.09em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.top_column .card .body .name {
	font-size: 16px;
	letter-spacing: .05em;
	font-weight: 700;
	margin-block: 0.5em 0;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_column .card .body .position {
	font-size: 14px;
	letter-spacing: .03em;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_column .card .body .profile {
	font-size: 14px;
	letter-spacing: .05em;
	margin-block: 0.5em 0;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.top_column .card {
	transition: .5s;
	transform: scale(0.725);
	transform-origin: center;
	position: relative;
}

.top_column .splide__slide .card::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(1, 1, 1, 0.4);
	z-index: 10;
	transition: .5s;
}


.top_column .splide__slide.is-active .card {
	transform: scale(1);
}

.top_column .splide__slide.is-prev .card,
.top_column .splide__slide.is-next .card {
	transform: scale(0.862);
}

.top_column .splide__track {
	padding-top: 8px;
	padding-bottom: 8px;
}

.top_column .splide__slide.is-active .card::before {
	background-color: initial;
}

.top_column .btn {
	margin-top: 80px;
	text-align: center;
}

.top_column .top_column_pagination {
	display: block !important;
	right: initial;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
}

.top_column .top_column_page {
	width: 60px;
	height: 6px;
	background-color: #DEDEDE;
	border-radius: initial;
	opacity: 1;
}

.top_column .top_column_page.is-active {
	background-color: #86BC2B;
	transform: scale(1);
}

.top_column .top_column_arrow {
	top: initial;
	transform: initial;
	bottom: -45px;
}

.top_column .top_column_prev {
	background-color: transparent;
	left: 37%;
}

.top_column .top_column_prev::before {
	content: "";
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #010101;
	border-left: 2px solid #010101;
	transform: rotate(45deg);
}

.top_column .top_column_next {
	background-color: transparent;
	right: 38%;
}

.top_column .top_column_next::before {
	content: "";
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #010101;
	border-right: 2px solid #010101;
	transform: rotate(-45deg);
}

/********************
　　フッター
*********************/

.footer {
	width: 100%;
	background-color: #010101;
	padding-top: 115px;
	padding-bottom: 50px;
	position: relative;
	z-index: 1000;
}

.footer .container_top {
	padding-bottom: 20px;
	border-bottom: 1px solid #fff;
}

.footer .logo {
	max-width: 276px;

}

.footer .logo img {
	aspect-ratio: 276 / 84;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.footer .container_top .head {
	margin-top: 30px;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.04em;
	color: #fff;
}

.footer .container_top .head_en {
	margin-top: 7px;
	font-family: "Inter", serif;
	font-weight: 300;
	font-size: 14px;
	color: #fff;
	line-height: 2.92;
}

.footer .container_top .text {
	margin-top: 63px;
	font-weight: normal;
	font-size: 12px;
	line-height: 1.75;
	letter-spacing: 0.04em;
	color: #fff;
}

.footer .nav_box {
	margin-left: auto;
	margin-right: 116px;
}

.footer .nav_lists+.nav_lists {
	margin-left: 77px;
}

.footer .nav_lists li+li {
	margin-top: 22px;
}

.footer .nav_lists li a {
	position: relative;
	padding: 5px 10px;
	font-family: "Inter", serif;
	font-style: italic;
	font-size: 18px;
	line-height: 2.27;
	letter-spacing: 0;
	color: #fff;
	text-transform: uppercase;
}

.footer .nav_lists li a::before {
	content: "";
	position: absolute;
	width: 0%;
	height: 1px;
	background-color: #fff;
	bottom: 0;
	left: 0;
	transition: .3s;
}

.footer .company_box {
	margin-top: 100px;
}

.footer .company_box .head {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.04em;
	color: #fff;
}

.footer .company_box .lists {
	margin-top: 12px;
}

.footer .company_box .lists .margin_left {
	margin-left: 30px;
}

.footer .company_box .lists li a {
	position: relative;
	display: inline-block;
	font-weight: normal;
	font-size: 12px;
	line-height: 2;
	letter-spacing: 0.04em;
	color: #fff;
	padding-right: 22px;
	transition: .3s;
}

.footer .company_box .lists li a::before {
	content: "";
	position: absolute;
	width: 12px;
	height: 12px;
	background: url(./image/icon/document-icon.png) no-repeat center center /contain;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.footer .container_bottom {
	padding-top: 19px;
	display: flex;
	align-items: end;
	justify-content: space-between;
	padding-right: 43px;
}

.footer .container_bottom .box {
	display: flex;
	flex-direction: column;
}

.footer .container_bottom .tel a {
	font-family: "Inter", serif;
	font-weight: 300;
	font-size: 14px;
	color: #fff;
	letter-spacing: 0;
	transition: .3s;
	pointer-events: none;
}


.footer .container_bottom .address {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.04em;
	color: #fff;
}

.footer .container_bottom .copyright {
	font-family: "Inter", serif;
	font-weight: 300;
	font-size: 14px;
	letter-spacing: 0;
	color: #fff;
}

/********************
　　事業概要
*********************/

.page_service {
	padding-top: 103px;
	padding-bottom: 155px;
}

.page_service .title {
	font-weight: 300;
	font-size: 26px;
	line-height: 2.11;
	letter-spacing: 0.33em;
	text-align: center;
}

.page_service .table {
	margin-top: 65px;
}

.page_service .search {
	margin-top: 134px;
}

.page_service .search_title {
	text-align: center;
}

.page_service .search_title span {
	display: inline-block;
	position: relative;
	padding-top: 48px;
	font-weight: normal;
	font-size: 14px;
	line-height: 2.35;
	letter-spacing: 0.09em;
}

.page_service .search_title span::before {
	content: "project search";
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 30px;
	line-height: 2.56;
	letter-spacing: 0;
	text-transform: uppercase;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}

.search_form {
	margin-top: 30px;
}


.search_field {
	padding: 17px 30px;
	background-color: #F2F2F2;
	border: 1px solid #CECECE;
	border-radius: 30px;
	width: 100%;
}

.search_box {
	position: relative;
}

.search_box::before {
	content: "";
	position: absolute;
	width: 22px;
	height: 22px;
	background: url(./image/icon/loupe-icon.png) no-repeat center center /contain;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	z-index: 4;

}

.search_form ::placeholder {
	font-weight: 500;
	font-size: 14px;
	line-height: 2.35;
	color: #B9B9B9;
	padding-left: 78px;
}

.search_btn {
	margin-top: 34px;
	text-align: center;
}

.search_submit {
	display: inline-block;
	min-width: 200px;
	padding-top: 13px;
	padding-bottom: 13px;
	color: #fff;
	background-color: #86BC2B;
	border-radius: 35px;
	font-size: 16px;
	font-weight: 500;
	line-height: 2.06;
	letter-spacing: 0.09em;
}

.page_service .project_lists {
	margin-top: 76px;
}

.page_service .project_lists_title {
	font-weight: normal;
	font-size: 18px;
	line-height: 1.83;
	letter-spacing: 0.09em;
}

/********************
　　オブジェクト一覧
*********************/
.archive_project {
	padding-top: 50px;
	padding-bottom: 160px;
}

.archive_project .lead {
	font-weight: normal;
	font-size: 18px;
	line-height: 2.16;
	letter-spacing: 0.07em;
	text-align: center;

}

.archive_project .btn_wrapper {
	margin-top: 93px;
	display: grid;
	grid-template-columns: repeat(3, 200px);
	justify-content: flex-end;
	gap: 10px;
	margin-left: auto;
}

.archive_project .project_lists {
	margin-top: 60px;
}

.archive_project .archive_navi .wp-pagenavi {
	text-align: right;
}

/********************
　　コンサルタント紹介
*********************/
.common_single {
	padding-top: 130px;
	padding-bottom: 180px;
}

.common_single .top_wrapper {
	padding-left: 100px;
	padding-right: 100px;
	display: flex;
}

.common_single .top_wrapper .image {
	flex: 0 0 500px;
}

.common_single .top_wrapper .image img {
	aspect-ratio: 500 / 420;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.common_single .top_wrapper .body {
	padding-top: 35px;
	padding-left: 80px;
}

.common_single .top_wrapper .body .name_title {
	font-weight: 500;
	font-size: 32px;
	line-height: 0.81;
	letter-spacing: 0.09em;
}

.common_single .top_wrapper .body .name_title span {
	display: inline-block;
	font-size: 20px;
	line-height: 1.3;
	letter-spacing: 0.09em;
	margin-left: 10px;
}

.common_single .top_wrapper .body .consultant_title {
	margin-top: 7px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.62;
	letter-spacing: 0.04em;
}

.common_single .top_wrapper .box {
	margin-top: 35px;
}

.common_single .top_wrapper .box .title {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.62;
	letter-spacing: 0.04em;
	color: #26880E;
}

.common_single .top_wrapper .box .text {
	margin-top: 14px;
	font-weight: normal;
	font-size: 13px;
	line-height: 1.76;
	letter-spacing: 0.14em;
	color: #262626;
}

.common_single .breadcrumb {
	padding-left: 100px;
	margin-top: 16px;
	text-align: left;
}

.common_single .bottom_wrapper {
	padding-top: 33px;
}

.common_single .bottom_wrapper .box {
	margin-top: 60px;
}

.common_single .bottom_wrapper .title_box {
	display: flex;
	align-items: center;
}

.common_single .bottom_wrapper .title_box .left_line {
	width: 40px;
	height: 1px;
	background-color: #86BC2B;
}

.common_single .bottom_wrapper .title_box .title {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.62;
	letter-spacing: 0.09em;
	padding-left: 10px;
	padding-right: 20px;
	white-space: nowrap;
}

.common_single .bottom_wrapper .title_box .right_line {
	width: 100%;
	height: 1px;
	background-color: #86BC2B;
}

.common_single .bottom_wrapper .head {
	margin-top: 24px;
	font-weight: 500;
	font-size: 22px;
	line-height: 1.18;
	letter-spacing: 0.09em;
	color: #26880E;
}

.common_single .bottom_wrapper .text {
	margin-top: 24px;
	font-weight: normal;
	font-size: 13px;
	line-height: 1.69;
	letter-spacing: 0.14em;
	color: #262626;
}

/********************
　　コラム
*********************/
.page_column {
	position: relative;
	padding-bottom: 150px;
	overflow: hidden;
}

.page_column_padding {
	padding-top: 36px;
	padding-bottom: 0;
}

.page_column .square1,
.page_column .square2,
.page_column .square3,
.page_column .square4 {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.page_column .square1 span,
.page_column .square2 span,
.page_column .square3 span,
.page_column .square4 span {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.page_column .square1 span::before {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	width: 185px;
	height: 202px;
	top: 180px;
	left: -70px;
	z-index: -1;
}

.page_column .square1 span::after {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	width: 222px;
	height: 242px;
	bottom: 0;
	left: 50px;
	z-index: -1;
}

.page_column .square2 span::before {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	width: 56px;
	height: 61px;
	top: 140px;
	left: 30%;
	z-index: -1;
}

.page_column .square2 span::after {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	width: 37px;
	height: 40px;
	bottom: 15%;
	left: 30%;
	z-index: -1;
}

.page_column .square3 span::before {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	width: 185px;
	height: 202px;
	top: 140px;
	right: 13%;
	z-index: -1;
}

.page_column .square3 span::after {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	width: 56px;
	height: 61px;
	bottom: 10%;
	right: 18%;
	z-index: -1;
}

.page_column .square4 span::before {
	content: "";
	position: absolute;
	background: url(./image/images/square1.png) no-repeat center center /cover;
	width: 37px;
	height: 40px;
	top: 200px;
	right: 50px;
	z-index: -1;
}

.page_column .square4 span::after {
	content: "";
	position: absolute;
	background: url(./image/images/square2.png) no-repeat center center /cover;
	width: 223px;
	height: 243px;
	bottom: 12%;
	right: 0;
	z-index: -1;
}

.page_column .main_visual {
	position: relative;
	aspect-ratio: 1440 / 720;
	width: 100%;
	height: 100%;
	padding-top: 140px;
	max-height: 720px;
}

.page_column .main_visual .title {
	position: relative;
	font-weight: normal;
	font-size: 14px;
	line-height: 2.35;
	letter-spacing: 0.09em;
	text-align: center;
	padding-top: 60px;
}

.page_column .main_visual .title::before {
	content: attr(data-en);
	position: absolute;
	font-family: "Inter", serif;
	font-style: italic;
	font-weight: 300;
	font-size: 30px;
	line-height: 2.56;
	letter-spacing: 0;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	text-transform: uppercase;
}

.page_column .introduction_wrapper {
	margin-top: 119px;
}

/********************
　　各インタビュー
*********************/

.page_interview {
	padding-top: 130px;
	padding-bottom: 180px;
}

/********************
　　プロジェクト詳細
*********************/
.single_project {
	padding-top: 130px;
	padding-bottom: 180px;
}

.single_project .wrapper {
	margin: 93px 0;
}

.single_project .table_wrapper {
	max-width: 1140px;
	width: 100%;
	overflow-x: scroll;
}

.single_project .table_wrapper::-webkit-scrollbar {
	display: none;
}

.single_project .mv {
	padding-left: 100px;
	padding-right: 100px;
}

.single_project .mv img {
	aspect-ratio: 1240 / 500;
	width: 100%;
	height: 100%;
	object-fit: cover;
	max-width: initial !important;
}

.single_project .table {
	border-collapse: separate;
	/* セルを分離 */
	border-spacing: 6px;
	/* セル間の隙間を指定 */
	border: none;
	width: 100%;
}

.single_project th {
	background-color: #86BC2B;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	line-height: 2.06;
	letter-spacing: 0.09em;
	width: 200px;
	text-align: center;
}


.single_project .top_head {
	padding-top: 18px;
	padding-bottom: 18px;
}

.single_project .head {
	padding-top: 48px;
	padding-bottom: 48px;
}

.single_project .top_content {
	font-weight: 500;
	font-size: 16px;
	line-height: 2.06;
	letter-spacing: 0.09em;
	padding-top: 18px;
	padding-bottom: 18px;
	text-align: center;
	background-color: #F5F5F5;
}

.single_project .top_content_first {
	width: 188px;
	clip-path: polygon(95% 0, 100% 50%, 95% 100%, 0 100%, 0 0);
}

.single_project .top_content_second {
	width: 188px;
	clip-path: polygon(0 0, 95% 0, 100% 50%, 95% 100%, 0 100%, 5% 50%);
}

.single_project .top_content_last {
	width: 178px;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 5% 50%);
}

.single_project .top_content.is-active {
	background-color: #F3FFE0;
}

.single_project .content {
	background-color: #FAFAFA;
	padding: 30px;
	font-weight: normal;
	font-size: 12px;
	line-height: 1.83;
	letter-spacing: 0.14em;
}

/********************
　　コンタクトフォーム
*********************/
.common-contactform tbody {
	background-color: #fff;
}


/* ホバーアクションまとめ */


.single_project .item_box {
	padding: 15px 30px;
	background-color: #FBFFF5;
}

.single_project .item_box .ttl {
	display: flex;
	align-items: center;
	gap: 0.5em;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-bottom: 0.6em;
	color: #86BC2B;
}

.single_project .item_box .ttl::before {
	content: "";
	width: 10px;
	height: 10px;
	background-color: #86BC2B;
	flex-shrink: 0;
}

.single_project .item_box .text {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.04em;
}

.single_project .item_box .link {
	color: #010101;
	text-decoration: underline;
}

.single_project .item_box:not(:last-child) {
	margin-bottom: 60px;
}

.single_project .item_box .item .sub_ttl {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 0.2em;
}

.single_project .item_box .item+.item {
	margin-top: 17px;
}

.single_project .table_cont {
	margin: 80px 0;
}

.single_project .wrapper .table_ttl {
	display: flex;
	align-items: center;
	gap: 0.5em;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-bottom: 1.5em;
	color: #86BC2B;
}

.single_project .wrapper .table_ttl::before {
	content: "";
	width: 10px;
	height: 10px;
	background-color: #86BC2B;
	flex-shrink: 0;
}

@media(hover: hover) {
	.common_article a:hover {
		opacity: 0.7;
	}

	.archive_project .btn:hover {
		cursor: pointer;
	}

	.footer .company_box .lists li a:hover {
		opacity: 0.7;
	}

	.footer .nav_lists li a:hover::before {
		width: 100%;
	}

	.top_column a:hover {
		opacity: 0.7;
	}

	.top_fv .slide a:hover {
		opacity: 0.7;
	}

	.pc_header .nav ul li a:hover {
		color: #86BC2B;
	}

	.common_contents ul li:hover {
		cursor: pointer;
		opacity: 0.7;
	}

	.common_archive a:hover {
		opacity: 0.7;
	}

	.common_cta .card:hover::before {
		background-color: transparent;
	}

	.common_cta .card:hover .image img {
		transform: scale(1.1);
	}

	.common_cta .card:hover .body::before {
		width: 100%;
	}

	.common_btn2:hover {
		background-color: #86BC2B;
	}

	.common_btn2:hover span {
		color: #010101;
	}

	.common_btn2:hover span::before {
		background: url(./image/icon/arrow-black.png) no-repeat center center /contain;
	}

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

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

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

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

	.wp-pagenavi a:hover {
		color: #FFF;
		background-color: #86BC2B;
		border-color: #86BC2B;
	}

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

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


}


@media (max-width: 750px) {
	.wrap {
		max-width: 90%;
	}

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

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

	body {
		font-size: 13px;
		min-width: unset;
	}

	/* SPヘッダー */
	#sp_header {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		background: transparent;
		z-index: 999;
		padding: 30px 20px 0;
		transition: .3s;
	}

	#sp_header.is-active {
		background-color: #000;
		padding: 30px 20px;
		z-index: 1101;
	}

	#sp_header .logo {
		width: 114px;
	}

	#sp_header .logo img {
		aspect-ratio: 114 / 35;
		object-fit: cover;
		width: 100%;
		height: 100%;
	}

	#sp_header .normal_image {
		display: none;
	}

	#sp_header .normal_image.is-active {
		display: block;
	}

	#sp_header .white_image {
		display: none;
	}

	#sp_header .white_image.is-active {
		display: block;
	}



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

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

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

	/* 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 {
		font-size: 4vw;
		display: block;
		border-bottom: none;
		padding: 5vw 4vw;
	}

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

	.page_contact table td {
		width: 100%;
	}

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

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

	.page_contact .select_box {
		width: 100%;
	}

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

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

	.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 {
		width: 100%;
		font-size: 3.5vw;
		letter-spacing: .02em;
		margin: 0 auto 10vw;
	}

	.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;
		width: 13vw;
		padding: 0.2vw 0;
		text-align: center;
		font-size: 3vw;
		margin-right: 0;
		order: 1;
	}

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

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

	.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 {
		width: 96%;
		padding: 5vw 0;
	}

	.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 {
		width: 2.5vw;
		margin: 1.5vw auto 0;
	}

	/* サンクスページ */
	.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 {
		width: 80%;
		line-height: 12vw;
		font-size: 4vw;
	}

	/* ステップバー デザイン */
	.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 {
		content: "";
		position: absolute;
		left: -47px;
		height: 1px;
		width: 100px;
		background: #a4a5a4;
	}

	.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: initial;
	}

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

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

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

	/* SP投稿ページ シングルページ */
	.single_page .single_flame {
		padding: 0;
		border: none;
	}

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

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

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

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

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

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

	.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: .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;
		padding: 2vw;
		margin: 1.5em 0 1em;
	}

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

	.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 {
		width: 80%;
		line-height: 11vw;
		margin: 10vw auto 0 auto;
		font-size: 3.8vw;
	}

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

	.single_page .singleSidebar {
		display: none;
	}

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

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

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

	.singleContent_links ul {
		width: 40%;
	}

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

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

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

	.latest_post_area .img {
		height: 25vw;
	}

	.latest_post_area ul {
		grid-template-columns: repeat(2, 1fr);
		column-gap: 3vw;
		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;
		position: relative;
		padding-top: 4vw;
	}

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

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

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

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

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

	#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 {
		width: 4vw;
		height: 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;
		padding: 1vw 2vw;
		line-height: 9vw;
		margin-bottom: 1vw;
	}

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

	body #sitemap_list {
		padding: 0;
	}

	/********************
　　	共通化パーツsp
	*********************/
	.common_desktop {
		display: none;
	}

	.common_mobile {
		display: block;
	}

	.common_section_title {
		font-size: 14px;
		padding-top: 76px;
	}

	.common_section_title::before {
		font-size: 46px;
	}

	.common_btn2 {
		min-width: 250px;
		padding: 15px 20px;
	}

	.js-trigger {
		position: relative;
		z-index: 20;
	}


	/* .js-trigger::before {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 14%;
		width: 100px;
		height: 100px;
		background: url(./image/icon/swipe-bg.png) no-repeat center center /cover;
		z-index: 10;
		transition: .5s;
	}

	.js-trigger::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 17%;
		width: 54px;
		height: 59px;
		background: url(./image/icon/swipe-icon.png) no-repeat center center /cover;
		z-index: 15;
		transition: .5s;
	} */

	.common_table.js-trigger::before {
		content: "";
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
		left: 50%;
		width: 100px;
		height: 100px;
		background: url(./image/icon/swipe-bg.png) no-repeat center center /cover;
		z-index: 10;
		transition: .5s;
	}

	.common_table.js-trigger::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
		left: 50%;
		width: 54px;
		height: 59px;
		background: url(./image/icon/swipe-icon.png) no-repeat center center /cover;
		z-index: 15;
		transition: .5s;
	}

	.single-project .common_table.js-trigger::before {
		transform: translateY(-50%);
		left: 13%;
	}

	.single-project .common_table.js-trigger::after {
		transform: translateY(-50%);
		left: 15%;
	}

	.js-trigger.hidden::before {
		opacity: 0;
		visibility: hidden;
	}

	.js-trigger.hidden::after {
		opacity: 0;
		visibility: hidden;
	}

	.common_table {
		position: relative;
		width: 100%;
		gap: 4px;
		padding-left: initial;
		padding-right: initial;
	}

	.common_table .small {
		font-size: 11px;
		line-height: 2.75;
	}

	.common_table .small_jp {
		font-size: 10px;
		font-weight: 500;
		letter-spacing: 0.09em;
		line-height: 2.53;
	}

	/* 旧テーブル */
	/* .common_table .div1,
	.common_table .div2,
	.common_table .div3 {
		position: sticky;
		left: 0;
		z-index: 10;
	}

	.common_table .div4,
	.common_table .div5,
	.common_table .div6,
	.common_table .div7,
	.common_table .div8,
	.common_table .div9 {
		position: sticky;
		left: 34px;
		z-index: 10;
	}

	.common_table .div1 {
		width: 100%;
		height: 100%;
		background-color: #fff;
	}

	.common_table .div2 {
		font-size: 16px;
		width: 34px;
	}

	.common_table .div3 {
		font-size: 14px;
		width: 34px;
		line-height: 2.5;
	}

	.common_table .div4 {
		width: 100%;
		height: 100%;
		background-color: #fff;
	}

	.common_table .div5 {
		font-size: 12px;
	}

	.common_table .div6 {
		font-size: 12px;
	}

	.common_table .div7 {
		font-size: 12px;
	}

	.common_table .div8 {
		font-size: 12px;
	}

	.common_table .div9 {
		font-size: 12px;
	}

	.common_table .div11 {
		font-size: 13px;
		width: initial;
	}

	.common_table .div12 {
		font-size: 13px;
	}

	.common_table .div13 {
		font-size: 13px;
	}

	.common_table .div14 {
		font-size: 13px;
	}

	.common_table .div15 {
		font-size: 13px;
	}

	.common_table .div16 {
		font-size: 13px;
	}

	.common_table .div17 {
		font-size: 13px;
	}

	.common_table .div18 {
		font-size: 13px;
	}

	.common_table .div19 {
		font-size: 13px;
	}

	.common_table .div20 {
		font-size: 13px;
	}

	.common_table .div21 {
		font-size: 14px;
		width: 160px;
	}

	.common_table .div22 {
		font-size: 13px;
	}

	.common_table .div23 {
		font-size: 13px;
	}

	.common_table .div24 {
		font-size: 13px;
	}

	.common_table .div25 {
		font-size: 13px;
	}

	.common_table .div26 {
		font-size: 13px;
	}

	.common_table .div27 {
		font-size: 13px;
	}

	.common_table .div28 {
		font-size: 13px;
	}

	.common_table .div29 {
		font-size: 13px;
	}

	.common_table .div30 {
		font-size: 13px;
	}

	.common_table .div31 {
		font-size: 13px;
	}

	.common_table .div32 {
		font-size: 13px;
	}

	.common_table .div33 {
		font-size: 13px;
	}

	.common_table .div34 {
		font-size: 13px;
	}

	.common_table .div35 {
		font-size: 13px;
	}
	
	.common_table .div37 {
		font-size: 13px;
	}

	.common_table .div38 {
		font-size: 13px;
	}

	.common_table .div39 {
		font-size: 13px;
	}

	.common_table .div40 {
		font-size: 13px;
	}

	.common_table .div41 {
		font-size: 13px;
	}

	.common_table .div42 {
		font-size: 13px;
	}

	.common_table .div43 {
		font-size: 13px;
	}

	.common_table .div44 {
		font-size: 13px;
	}

	.common_table .div45 {
		font-size: 13px;
	}

	.common_table .div46 {
		font-size: 13px;
	}

	.common_table .div47 {
		font-size: 13px;
	}

	.common_table .div48 {
		font-size: 13px;
	}
	
	.common_table .div49 {
		font-size: 13px;
	}

	.common_table .div50 {
		font-size: 13px;
	}

	.common_table .div51 {
		font-size: 13px;
	}

	.common_table .div52 {
		font-size: 13px;
	}

	.common_table .div53 {
		font-size: 13px;
	}

	.common_table .div54 {
		font-size: 13px;
	}

	.common_table .div55 {
		font-size: 13px;
	}

	.common_table .div56 {
		font-size: 13px;
	}

	.common_table .div57 {
		font-size: 13px;
	}

	.common_table .div58 {
		font-size: 14px;
		width: 180px;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 6% 50%);
	}

	.common_table .div59 {
		font-size: 13px;
		width: 180px;
	}

	.common_table .div60 {
		font-size: 13px;
	}

	.common_table .div61 {
		font-size: 13px;
	}

	.common_table .div62 {
		font-size: 13px;
	}

	.common_table .div63 {
		font-size: 13px;
	}

	.common_table .div64 {
		font-size: 10px;
	} */

	.common_table div {
		font-size: 3.4vw !important;
		line-height: 1.4 !important;
	}

	.common_table .div3 {
		height: 20vw;
	}

	.common_table .div5 {
		width: 25vw;
	}

	.common_table .div9 {
		width: 25vw;
	}

	.common_table .div17 {
		font-size: 3.6vw !important;
	}

	.common_cta {
		padding-bottom: 60px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.common_cta .container {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 10px;
	}

	.common_cta .card::before {
		background-color: rgba(1, 1, 1, 0.2);
	}

	.common_cta .body {
		padding-bottom: 14px;
	}

	.common_cta .body::before {
		width: 100%;
	}

	.common_cta .card_title {
		font-size: 12px;
		line-height: 2.75;
	}

	.common_cta .en_title {
		font-size: 16px;
		line-height: 1.93;
	}

	.common_cta .en_title span {
		font-size: 28px;
		line-height: 1.10;
	}

	/********************
　　	共通FVsp
	*********************/

	.common_page_sp {
		padding-top: 108px;
	}

	.common_page_sp .breadcrumb {
		margin-right: 20px;
	}

	.common_page_main {
		margin-top: 14px;
		text-align: center;
		padding: initial;
		padding-top: 150px;
	}

	.common_page_main .image {
		padding-left: 20px;
		padding-right: 20px;
	}

	.common_page_main .image img {
		aspect-ratio: 350 / 190;
		width: 100%;
		height: 88%;
		object-fit: cover;
	}

	.common_page_main .title {
		font-size: 26px;
		padding: 3vw 8vw 3vw;
		text-align: center;
	}

	/********************
	　　共通インタビューsp
	*********************/

	.common_introduction .common_cards {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px 10px;
	}

	.common_introduction .wrapper {
		padding-top: 30px;
		padding-bottom: 60px;
	}

	.common_introduction .body {
		padding-top: 8px;
	}

	.common_introduction .name {
		font-size: 14px;
		margin-block: 0 0.2em;
	}

	.common_introduction .position {
		font-size: 13px;
	}

	.common_introduction .profile {
		font-size: 13px;
		-webkit-line-clamp: 2;
	}

	.common_introduction .btn {
		margin-top: 40px;
	}



	/*アーカイブページカード*/

	.common_archive .archive_cards {}


	.common_archive .archive_cards .card {
		flex-direction: column;
	}

	.common_archive .archive_cards .card .image {
		flex: initial;
		width: 100%;
	}

	.common_archive .archive_cards .card .body {
		margin-top: 10px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.common_archive .archive_cards .card .body .category {
		padding: 4px 8px;
		font-size: 10px;
	}

	.common_archive .archive_cards .card .body .day {
		font-size: 10px;
		margin-left: 15px;
	}

	.common_archive .archive_cards .card .body .card_title {
		margin-top: 12px;
		font-size: 14px;
	}

	.common_archive .archive_cards .card .body .card_content {
		margin-top: 12px;
		font-size: 11px;
	}

	.archive_contact {
		padding-top: 10px;
		padding-bottom: 85px;
	}

	.archive_contact .contact_box .title {
		font-size: 40px;
	}

	.archive_contact .contact_box .text {
		font-size: 12px;
		line-height: 1.7;
	}

	.archive_contact .contact_box .btn {
		margin-top: 30px;
	}

	/* カテゴリーボタン等 */
	.link_btn_wrapper {
		gap: 10px;
	}

	.common_link_btn {
		min-width: 150px;
		font-size: 14px;
	}

	.common_link_btn::before {
		width: 6px;
		height: 6px;
	}

	/********************
	　　共通ボタン（カテゴリー）
	*********************/
	.common_contents .btn {
		min-width: 100px;
		font-size: 12px;
		padding: 6px;

	}


	/********************
	　　ヘッダーsp
	*********************/
	.pc_header {
		display: none;
	}

	/********************
　　　　top-fv-sp
	*********************/
	.top_fv {
		padding-top: 94px;
		aspect-ratio: initial;
		max-height: initial;
		height: 100%;
	}

	.top_fv .container {
		flex-direction: column-reverse;
		width: 100%;
		height: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}

	.top_fv .body {
		margin-top: 70px;
		width: 100%;
		height: 100%;
	}

	.top_fv .lead {
		font-size: 39px;
		letter-spacing: 0.30em;
	}

	.top_fv .lead .ruby::before {
		font-size: 14px;
	}

	.top_fv .lead_en {
		margin-top: 12px;
		font-size: 15px;
	}

	.top_fv .slide .btn {
		margin-top: 20px;
	}


	.top_fv .slide .btn span {
		font-size: 16px;
		line-height: 4.81;
		padding-left: 45px;
	}

	.top_fv .slide .btn span::before {
		width: 34px;
		height: 34px;
	}

	.top_fv .slide .btn span::after {
		width: 14px;
		height: 13px;
		left: 11px;
	}

	.top_fv .slide_image {
		width: 100%;
	}

	.top_fv .slide_image::before {
		background: url(./image/images/square1-sp.png) no-repeat center center /cover;
		aspect-ratio: 42 / 50;
		max-width: 42px;
		bottom: initial;
		top: 25px;
		right: 15%;
	}

	.top_fv .slide_image::after {
		background: url(./image/images/square2-sp.png) no-repeat center center /cover;
		aspect-ratio: 34 / 40;
		max-width: 34px;
		bottom: 15%;
		right: initial;
		left: 0;
		z-index: 2;
	}

	.top_fv .slide_image .image {
		padding-top: 20px;
		padding-left: 50px;
	}

	.top_fv .slide_image .image::before {
		background: url(./image/images/top-fv-white-sp.png) no-repeat center center /cover;
	}

	.top_fv .slide_image .image::after {
		background: url(./image/images/top-fv1-bg.png) no-repeat center center /cover;
		aspect-ratio: 290 / 400;
		max-width: 290px;
		width: 100%;
		top: 20px;
		left: initial;
		transform: initial;
		right: -10px;
		z-index: -1;
	}

	.slide_square-bottom::before {
		content: "";
		position: absolute;
		background: url(./image/images/square2.png) no-repeat center center /cover;
		aspect-ratio: 41 / 45;
		max-width: 41px;
		width: 100%;
		bottom: 70px;
		left: 0;
		z-index: 2;
	}

	.slide_square-bottom::before {
		background: url(./image/images/top-fv2-sp.png) no-repeat center center /cover;
		aspect-ratio: 170 / 200;
		max-width: 170px;
		width: 100%;
		top: initial;
		transform: initial;
		bottom: -50px;
		left: 0;
		z-index: 2;
	}

	.top_fv .slide_image img {
		aspect-ratio: 310 / 400;
	}

	.top_fv .slide_square::before {
		background: url(./image/images/square1-sp.png) no-repeat center center /cover;
		aspect-ratio: 98 / 116;
		max-width: 98px;
		width: 100%;
		left: 8%;
	}

	.top_fv .slide_flex {
		display: flex;
		flex-direction: column;
		justify-content: end;
		align-items: end;
	}

	.top_fv .interview_image {
		position: initial;
	}

	.top_fv .interview_image img {
		aspect-ratio: 390 / 430;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.top_fv .box {
		margin-right: initial;
		max-width: initial;
		padding: 30px 15px 40px;

	}

	.top_fv .interview_text {
		font-size: 12px;
	}

	.top_fv .flex .line {
		width: 100%;
		height: 1px;
		background-color: #fff;
		margin-left: 10px;
	}

	.top_fv .interview_title {
		margin-top: 20px;
		font-size: 17px;
		font-weight: bold;
	}

	.interview_head {
		margin-top: 38px;
	}

	.interview_head,
	.interview_name {
		font-size: 14px;
	}

	.top_fv .interview_btn {
		margin-top: 32px;
		text-align: center;
	}


	/********************
	　　top-私たちについてsp
	*********************/

	.top_about {
		width: 100%;
		padding-top: 50px;
	}

	.top_about .wrap {
		padding-left: initial;
		padding-right: initial;
	}

	.top_about .container {
		flex-direction: column;
	}

	.top_about .body {
		padding-top: 40px;
		padding-left: initial;
	}

	.top_about .lead {
		font-size: 16px;
		letter-spacing: 0.03em;
	}

	.top_about .text {
		font-size: 13px;
		line-height: 1.7;
		margin-top: 28px;
	}

	.top_about .lead span {
		font-size: 12px;
		line-height: 2.25;
	}

	/********************
　　	top-お知らせsp
	*********************/
	.top_news {
		padding-top: 137px;
	}

	.top_news::before {
		width: 100%;
		height: 78%;
	}


	.top_news .section_title {
		font-size: 13px;
		padding-left: 0;
	}

	.top_news .section_title::before {
		font-size: 36px;
		top: -45px;
	}

	.top_news .cards {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 25px;
		margin-top: 25px;
	}

	.top_news .body {
		margin-top: 10px;
	}

	.top_news .body .flex {
		justify-content: initial;
	}

	.top_news .date {
		font-size: 12px;
	}

	.top_news .body .meta_box {
		margin-left: auto;
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.top_news .category {
		font-size: 10px;
		min-width: 100px;
		padding: 3px 4px;
	}

	.top_news .title {
		margin-top: 14px;
		min-height: initial;
		font-size: 14px;
	}

	.top_news .text {
		margin-top: 8px;
		font-size: 10px;
	}

	.top_news .btn {
		margin-top: 30px;
	}

	/********************
	　　top-事業概要sp
	*********************/

	.top_service {
		padding-top: 90px;
	}

	.top_service .table {
		max-width: 1000px;
		width: 100%;
		overflow-x: scroll;
	}

	.top_service .wrap {
		padding-left: initial;
		padding-right: initial;
	}

	.top_service .table::-webkit-scrollbar {
		display: none;
	}

	/********************
	　　top-コラム記事sp
	*********************/
	.top_column {
		display: none;
	}

	.top_column_sp {
		display: block;
		padding: 90px 20px;
	}

	.top_column_sp .title {
		position: relative;
		font-size: 14px;
		font-weight: normal;
		line-height: 2.35;
		letter-spacing: 0.09em;
		padding-top: 57px;
		text-align: center;
	}

	.top_column_sp .title::before {
		content: attr(data-en);
		position: absolute;
		font-family: "Inter", serif;
		font-style: italic;
		font-weight: 300;
		left: 50%;
		transform: translateX(-50%);
		top: 0;
		text-transform: uppercase;
		color: #86BC2B;
		font-size: 36px;
		line-height: 2.13;
		letter-spacing: 0;
	}

	.top_column_sp .slide {
		margin-top: 24px;
	}

	.top_column_sp .cards {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 10px;
	}

	.top_column_sp .card {
		display: flex;
		align-items: center;
		border-bottom: 1px solid #00000029;
		padding-bottom: 10px;
	}

	.top_column_sp .card .image {
		position: relative;
		flex: 0 0 120px;
		background-color: #fff;
		aspect-ratio: 120 / 120;
		width: 100%;
		overflow: hidden;
	}

	.top_column_sp .card .image::before {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		background: url(./image/images/logo-img.png) no-repeat center center /contain;
		aspect-ratio: 163 / 50;
		max-width: 70px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 0;
	}

	.top_column_sp .card .image img {
		position: relative;
		aspect-ratio: 120 / 120;
		object-fit: cover;
		width: 100%;
		height: 100% !important;
		z-index: 1;
	}

	.top_column_sp .card .body {
		padding: 10px 20px;
		background-color: #fff;
	}

	.top_column_sp .card .body .card_title {
		color: #86BC2B;
		font-size: 14px;
		font-weight: 700;
		line-height: 1.69;
		letter-spacing: 0.09em;
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.top_column_sp .card .body .name {
		font-size: 13px;
		letter-spacing: .05em;
		font-weight: 700;
		margin-block: 0.5em 0;
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.top_column_sp .card .body .position {
		font-size: 12px;
		letter-spacing: .05em;
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.top_column_sp .card .body .profile {
		font-size: 12px;
		letter-spacing: .05em;
		margin-block: 0.3em 0;
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.top_column_sp_pagination {
		display: flex !important;
		flex-wrap: nowrap;
		right: initial;
		bottom: -35px;
		left: 50%;
		transform: translateX(-50%);
	}

	.top_column_sp_page {
		width: 60px;
		height: 6px;
		background-color: #DEDEDE;
		border-radius: initial;
		opacity: 1;
	}

	.top_column_sp_page.is-active {
		background-color: #86BC2B;
		transform: scale(1);
	}

	.top_column_sp .top_column_sp_arrow {
		top: initial;
		transform: initial;
		bottom: -42px;
	}

	.top_column_sp .top_column_sp_prev {
		background-color: transparent;
		left: 10%;
	}

	.top_column_sp .top_column_sp_prev::before {
		content: "";
		width: 8px;
		height: 8px;
		border-bottom: 2px solid #010101;
		border-left: 2px solid #010101;
		transform: rotate(45deg);
	}

	.top_column_sp .top_column_sp_next {
		background-color: transparent;
		right: 10%;
	}

	.top_column_sp .top_column_sp_next::before {
		content: "";
		width: 8px;
		height: 8px;
		border-bottom: 2px solid #010101;
		border-right: 2px solid #010101;
		transform: rotate(-45deg);
	}


	.top_column_sp .btn {
		margin-top: 89px;
		text-align: center;
	}

	/********************
		フッターsp
		*********************/
	.footer {
		padding-top: 80px;
		padding-bottom: 84px;
	}

	.footer .container_top {
		padding-bottom: 30px;
	}

	.footer .logo {
		max-width: 175px;
	}

	.footer .container_top .head {
		margin-top: 23px;
		font-size: 13px;
		line-height: 1.61;
	}

	.footer .container_top .head_en {
		margin-top: 5px;
		font-size: 13px;
	}

	.footer .container_top .text {
		margin-top: 32px;
		line-height: 1.5;
		color: #fff;
	}

	.footer .nav_box {
		display: none;
	}

	.footer .company_box {
		display: none;
	}

	.footer .container_bottom {
		padding-top: 30px;
		padding-right: initial;
		flex-direction: column;
		align-items: initial;
		justify-content: initial;
	}

	.footer .container_bottom .box {
		flex-direction: column-reverse;
	}

	.footer .container_bottom .address {
		font-size: 13px;
		line-height: 1.46;
		color: #fff;
		white-space: nowrap;
	}

	.footer .container_bottom .tel a {
		pointer-events: auto;
	}

	.footer .container_bottom .copyright {
		margin-top: 48px;
		font-size: 12px;
		color: #fff;
		line-height: 1.5;
	}


	@media(any-hover: hover) {
		.footer .container_bottom .tel a:hover {
			opacity: 0.7;
		}
	}

	/********************
		　　事業概要-sp
		*********************/

	.page_service {
		padding-top: 51px;
		padding-bottom: 60px;
	}

	.page_service .title {
		font-size: 22px;
		line-height: 2.5;
	}

	.page_service .table {
		margin-top: 23px;
		max-width: 1000px;
		width: 100%;
		overflow-x: scroll;
	}

	.page_service .table::-webkit-scrollbar {
		display: none;
	}


	.page_service .search {
		margin-top: 71px;
	}

	.page_service .search_title span {
		font-size: 13px;
		line-height: 2.53;
	}

	.page_service .search_title span::before {
		font-size: 22px;
		line-height: 3.5;
	}

	.search_form {
		margin-top: 25px;
	}

	.search_form ::placeholder {
		font-size: 13px;
		line-height: 2.53;
		color: #B9B9B9;
		padding-left: 42px;
	}

	.search_field {
		padding: 16px 20px;
		border-radius: 30px;
		width: 100%;
	}

	.search_box::before {
		width: 20px;
		height: 20px;
		left: 20px;
	}

	.search_btn {
		margin-top: 22px;
	}

	.search_submit {
		min-width: 130px;
		padding-top: 11px;
		padding-bottom: 10px;
		font-size: 13px;
	}

	.page_service .project_lists {
		margin-top: 48px;
	}

	.page_service .project_lists_title {
		font-size: 16px;
	}

	/********************
		　　共通記事一覧sp
		*********************/

	.common_article .list {
		margin-top: 28px;
	}

	.common_article .title_box {
		flex-direction: column;
		padding-top: initial;
		padding-bottom: initial;
		padding-left: initial;
		border-left: initial;
		align-items: start;

	}

	.common_article .image {
		position: relative;
		max-width: 136px;
		padding-top: 8px;
		padding-bottom: 8px;
		padding-left: 26px;
		padding-right: initial;
		border-left: 6px solid #86BC2B;
	}

	.common_article .list_title {
		margin-top: 16px;
		font-size: 14px;
		line-height: 1.5;
		-webkit-line-clamp: 2;
		/* 行数指定 */
		padding-left: initial;
	}

	.common_article .list_title::before {
		content: none;
	}

	.common_article .title_box::after {
		content: none;
	}

	.common_article .text {
		margin-top: 10px;
		padding-left: initial;
		padding-right: initial;
		letter-spacing: 0.12em;
	}

	.common_article .list {
		padding-bottom: 20px;
		border-bottom: 1px solid #B9B9B9;

	}

	/********************
		　　オブジェクト一覧sp
		*********************/

	.archive_project {
		padding-bottom: 80px;
	}

	.archive_project .btn_wrapper {
		margin-top: 50px;
		gap: 3vw;
		grid-template-columns: repeat(2, 1fr);
	}

	.archive_project .btn_wrapper .common_contents .btn {
		min-width: 100%;
	}

	.archive_project .lead {
		font-size: 13px;
		line-height: 1.69;
	}

	/********************
		　　コンサルタント紹介sp
		*********************/
	.common_single {
		padding-top: 70px;
		padding-bottom: 60px;
	}

	.common_single .top_wrapper {
		margin-top: 10px;
		padding-left: 20px;
		padding-right: 20px;
		flex-direction: column;
	}

	.common_single .top_wrapper .image {
		flex: initial;
		width: 100%;
	}

	.common_single .top_wrapper .body {
		padding-top: 15px;
		padding-left: initial;
	}

	.common_single .top_wrapper .body .name_title {
		font-size: 18px;
		line-height: 0.81;
		letter-spacing: 0.09em;
	}

	.common_single .top_wrapper .body .name_title span {
		font-size: 12px;
		margin-left: 6px;
	}

	.common_single .top_wrapper .body .consultant_title {
		font-size: 10px;
	}

	.common_single .top_wrapper .box {
		margin-top: 18px;
	}

	.common_single .top_wrapper .box .title {
		font-size: 13px;
	}

	.common_single .top_wrapper .box .text {
		margin-top: 6px;
		font-size: 10px;
	}

	.common_single .breadcrumb {
		padding-left: 20px;
	}

	.common_single .bottom_wrapper {
		padding-top: 20px;
	}

	.common_single .bottom_wrapper .box {
		margin-top: 30px;
	}

	.common_single .bottom_wrapper .title_box .left_line {
		display: none;
	}

	.common_single .bottom_wrapper .title_box .title {
		font-size: 12px;
		padding-left: 6px;
		padding-right: initial;
		position: relative;
		white-space: wrap;
	}

	.common_single .bottom_wrapper .title_box .title::before {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		width: 2px;
		height: 100%;
		background-color: #86BC2B;
	}

	.common_single .bottom_wrapper .title_box .right_line {
		display: none;
	}

	.common_single .bottom_wrapper .head {
		margin-top: 16px;
		font-size: 14px;
	}

	.common_single .bottom_wrapper .text {
		margin-top: 16px;
		font-size: 10px;
	}


	/********************
		　　コラム
		*********************/
	.page_column {
		padding-bottom: 60px;
	}

	.page_column .main_visual {
		position: relative;
		aspect-ratio: initial;
		width: 100%;
		height: 100%;
		padding-top: 80px;
		max-height: 100%;
	}


	.page_column_padding {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.page_column .square1 span::before {
		width: 100px;
		height: 109px;
		top: 100px;
		left: -30px;
	}

	.page_column .square1 span::after {
		content: none;
	}

	.page_column .square2 span::before {
		content: none;
	}

	.page_column .square2 span::after {
		content: none;
	}

	.page_column .square3 span::before {
		content: none;
	}

	.page_column .square3 span::after {
		content: none;
	}

	.page_column .square4 span::before {
		top: 125px;
		right: 20px;
	}

	.page_column .square4 span::after {
		content: none;
	}

	.page_column .introduction_wrapper {
		margin-top: 50px;
	}

	/********************
		　　プロジェクト詳細sp
		*********************/

	.single_project {
		padding-top: initial;
		padding-bottom: 90px;
	}

	.single_project .wrapper {
		margin: 45px 0;
	}

	.single_project .mv {
		padding-left: 16px;
		padding-right: 16px;
	}

	.single_project .table {
		width: 1000px;
		position: relative;
	}

	.single_project th {
		font-size: 13px;
		width: 150px;
	}

	.single_project .top_head {
		padding-top: 12px;
		padding-bottom: 12px;
	}

	.single_project .head {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.single_project .top_content {
		font-size: 13px;
		padding-top: 12px;
		padding-bottom: 12px;
	}


	.single_project .content {
		background-color: #FAFAFA;
		padding: 20px;
		font-size: 10px;
	}

	.single_project .table::before {
		display: none;
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 11%;
		width: 100px;
		height: 100px;
		background: url(./image/icon/swipe-bg.png) no-repeat center center /cover;
		z-index: 1;
		transition: .5s;
	}

	.single_project .table::after {
		display: none;
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 13.2%;
		width: 54px;
		height: 59px;
		background: url(./image/icon/swipe-icon.png) no-repeat center center /cover;
		z-index: 2;
		transition: .5s;
	}

	.single_project .item_box {
		padding: 4vw 5vw;
	}

	.single_project .item_box .ttl {
		font-size: 5vw;
	}

	.single_project .item_box .ttl::before {
		width: 2.5vw;
		height: 2.5vw;
	}

	.single_project .item_box .text {
		font-size: 3.4vw;
	}

	.single_project .item_box:not(:last-child) {
		margin-bottom: 6vw;
	}

	.single_project .item_box .item .sub_ttl {
		font-size: 4.2vw;
		font-weight: 700;
		margin-bottom: 0.2em;
	}

	.single_project .item_box .item+.item {
		margin-top: 17px;
	}

	.single_project .table_cont {
		margin: 13vw 0;
	}

	.single_project .wrapper .table_ttl {
		font-size: 5vw;
		margin-bottom: 1em;
	}

	.single_project .wrapper .table_ttl::before {
		width: 2.5vw;
		height: 2.5vw;
	}


}