@charset "UTF-8";
/*==========================
common
==============================*/
html, body {
	width: 100%;
	margin: 0;
	padding: 0;
	scroll-behavior: smooth;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	color: #4d4d4d;
	position: relative;
}
p {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6rem;
}
img {
	max-width: 100% !important;
}
a {
	text-decoration: none;
	color: #0bd;
}
a:hover {
	color: #8c6239;
}

@media screen and ( min-width: 640px ) {
a:hover img {
	opacity: .5;
	-webkit-opacity: .5;
	-moz-opacity: .5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
}
a img {
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE Mac \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
input[type="text"], input[type="email"], input[type="tel"], textarea, input[type="submit"], input[type="button"] {
	font-family: 'Noto Sans JP', sans-serif;
}
.wrapper {
	width: 100%;
	overflow: hidden;
}
/*==========================
header
==============================*/
.sticky-top {
	width: 100%;
	height: 100px;
	justify-content: space-between;
	padding: 0 40px;
}
header {
	background: #fff;
}
.logo {
	/* 	width: 300px; */
	/* float: left; */
	/* margin: 0.7% 0 0 1%; */
	display: flex;
	justify-content: center;
	align-items: center;
}
.logo a {
	background: url(../images/common/logo.png) no-repeat center left / 100% auto;
	width: 154px;
	height: 60px;
	overflow: hidden;
	padding-top: 35px;
	display: block;
}
.main_nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
}
.main_nav li {
	width: auto;
	/* width: 140px; */
	/* border-bottom-style: solid;
	border-bottom-width: 3px; */
	text-align: center;
	padding: 1rem 0;
	position: relative;
}
.main_nav li.nav_toggle_btn {
	width: 70px;
	height: 70px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
	border-radius: 50%;
}

/* .main_nav li.nav_toggle_btn::after {
	background: none;
} */

/* 枠線だけ金色の円をつける */
.main_nav li.nav_toggle_btn::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	padding: 3px; /* 枠の太さ */
	background: conic-gradient(
		from 0deg,
		#d4af37,
		#f5e089,
		#fff8dc,
		#f5e089,
		#d4af37
	);
	-webkit-mask: 
		radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
	mask: 
		radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
	pointer-events: none;
}

.main_nav li a {
	display: block;
	color: #333333 !important;
	text-decoration: none;
	font-family: 'Zen Old Mincho', serif;
}
.nav_tokyo {
	border-bottom-color: #728f7b;
}
.nav_yokohama {
	border-bottom-color: #46dbdb;
}
.nav_osaka {
	border-bottom-color: #e7c1b4;
}
.nav_nagoya {
	border-bottom-color: #aa7f54;
}
.nav_kyoto {
	border-bottom-color: #b074ac;
}
.nav_hystory {
	border-bottom-color: #c7b299;
}
.nav_contact {
	border-bottom-color: transparent;
}
.nav_toggle_btn {
	border-bottom: none !important;
	background: #fdf5ec;
}
.overlay {
	content: "";
	display: block;
	width: 0;
	height: 0;
	background-color: rgba(0, 0, 0, 0.5);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	transition: opacity .5s;
}
.overlay.open {
	width: 100%;
	height: 100%;
	opacity: 1;
}
.menu-trigger {
	display: inline-block;
	width: 36px;
	height: 28px;
	vertical-align: middle;
	cursor: pointer;
	position: relative;
	z-index: 100;
	transform: translateX(0);
	transition: transform .5s;
}
/* .menu-trigger.active {
  transform: translateX(-250px);
}*/
.menu-trigger span {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #460000;
}
.menu-trigger.active span {
	background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(12px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
	top: 12px;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-12px) rotate(45deg);
}
nav {
	width: 350px;
	height: 100%;
	padding: 5% 2%;
	background-color: rgb(0, 0, 0, 0.8);
	position: fixed;
	top: 0;
	right: -300px;
	overflow-y: auto;
	z-index: 10;
	transform: translate(350px);
	transition: all .5s;
}

@media all and (-ms-high-contrast: none) {
nav {
	background-color: #000;
}
}
nav.open {
	/* transform: translateZ(0); */
	left: 50%;
    transform: translateX(-50%);
}
nav ul {
	margin-bottom: 5%;
}
nav li {
	color: #fff;
	text-align: center;
	padding: 10px 0;
	width: 100% !important;
	text-align: left !important;
	border-bottom-width: 1px !important;
}
nav a {
	color: #fff !important;
}
nav p {
	margin-bottom: 3%;
}
/*==========================
common
==============================*/
section {
	/* padding: 5% 0; */
}
.bg_gray {
	background: url(../images/common/bg_gray.jpg) repeat;
}
.txt_mincho {
	font-family: 'Noto Serif SC', serif;
}
.txt_eng {
	font-family: 'Old Standard TT', serif;
}
/*==========================
tite
==============================*/
.main_title {
	background-image: url(../images/common/title_bg_left.png), url(../images/common/title_bg_right.png);
	background-repeat: no-repeat, no-repeat;
	background-position: center left, center right;
	padding: 0 32px;
	text-align: center;
	display: inline-block;
	min-height: 100px;
	font-family: 'Noto Serif SC', serif;
	font-size: 45px;
	color: #c69c6d;
	text-align: center;
	background-size: auto 100%;
}
.main_title span {
	display: block;
	font-size: 14px;
	color: #4d4d4d;
	letter-spacing: 2px;
	margin-top: 6%;
}
.page_main_title {
	background-image: url(../images/common/title_bg_left.png), url(../images/common/title_bg_right.png);
	background-repeat: no-repeat, no-repeat;
	background-position: center left, center right;
	background-size: auto 100%;
	padding: 0 6%;
	text-align: center;
	display: inline-block;
	min-height: 100px;
	font-size: 30px;
	color: #c69c6d;
	text-align: center;
}
.page_main_title span {
	display: block;
	font-size: 12px;
	color: #4d4d4d;
	letter-spacing: 2px;
	margin-top: 6%;
}
.mdl_title {
	position: relative;
	display: inline-block;
	margin-bottom: 1.6em;
	font-size: 24px;
	color: #c69c6d;
	text-align: center;
}
.mdl_title:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -15px;/*線の上下位置*/
	display: inline-block;
	width: 60px;/*線の長さ*/
	height: 3px;/*線の太さ*/
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);/*位置調整*/
	background-color: #c7b299;/*線の色*/
	border-radius: 2px;/*線の丸み*/
}
/*==========================
btn
==============================*/

/* Global Button Styles */
a.animated-button:link, a.animated-button:visited {
	position: relative;
	display: block;
	width: 250px;
	margin: auto 0;
	padding: 14px 15px;
	color: #fff;
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	overflow: hidden;
	letter-spacing: .08em;
	border-radius: 0;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
a.animated-button:link:after, a.animated-button:visited:after {
	content: "";
	position: absolute;
	height: 0%;
	left: 50%;
	top: 50%;
	width: 150%;
	z-index: -1;
	-webkit-transition: all 0.75s ease 0s;
	-moz-transition: all 0.75s ease 0s;
	-o-transition: all 0.75s ease 0s;
	transition: all 0.75s ease 0s;
}
a.animated-button:link:hover, a.animated-button:visited:hover {
	color: #FFF;
	text-shadow: none;
}
a.animated-button:link:hover:after, a.animated-button:visited:hover:after {
	height: 450%;
}
a.animated-button:link, a.animated-button:visited {
	position: relative;
	display: block;
	margin: auto;
	padding: 14px 15px;
	color: #fff;
	font-size: 14px;
	border-radius: 0;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	overflow: hidden;
	letter-spacing: .08em;
	border-radius: 250px;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
/* 白ボタン */

a.animated-button.w_btn {
	border: 1px solid #fff;
}
a.animated-button.w_btn:after {
	background: #c7b299;
	-moz-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	transform: translateX(-50%) translateY(-50%) rotate(-25deg);
}
a.animated-button.w_btn::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 5%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	margin-top: -5px;
}
/* 赤ボタン */

a.animated-button.b_btn {
	border: 1px solid #fc0d1b;
	background: #fc0d1b;
}
a.animated-button.b_btn:after {
	background: #c7b299;
	-moz-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	transform: translateX(-50%) translateY(-50%) rotate(-25deg);
}
a.animated-button.b_btn::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 5%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	margin-top: -5px;
}
/* マルチボタン */

.mulch-button {
	position: relative;
	display: inline-block;
	margin: auto;
	padding: 14px 15%;
	color: #fff;
	font-size: 14px;
	border-radius: 0;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	overflow: hidden;
	letter-spacing: .08em;
	border-radius: 250px;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
.mulch-button:after {
	background: #c7b299;
	-moz-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	transform: translateX(-50%) translateY(-50%) rotate(-25deg);
}
.mulch-button::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 5%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	margin-top: -5px;
}
.mulch-button:hover {
	color: #fff;
	text-decoration: none;
}
.tokyo_btn {
	background: #728f7b;
}
.osaka_btn {
	background: #e7c1b4;
}
.nagoya_btn {
	background: #eeda9d;
}
.kyoto_btn {
	background: #b072ac;
}
.contact_btn {
	background: #808080;
}
.entry_btn {
	background: #a67c52;
}
/*==========================
footer
==============================*/
footer {
	text-align: center;
	position:relative;
	background-color: #f2efe9;
	/* padding-top: 80px; */
}
.footer_logo {
	width: 30%;
	max-width: 300px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 15px;
	margin-right: 105px;
}
.footer_logo img {

	margin-bottom: 2%;
}

 .footer_mene1 {
	width: 40%;
	max-width: 360px;
	margin-right: 40px;
	margin-top: 2px;
}

 .footer_mene1 p.footer_mene1_title {
	width: 100%;
	padding-right: 5px ;
	display: inline-flex;
	align-items: center;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	font-size: 30px;
	margin-bottom: 30px;
}

 .footer_mene1 p.footer_mene1_title::after {
	content: "";
	display: inline-block;
	height: 2px;                     /* 線の太さ */
	width: 100%;                    /* 線の長さ（必要に応じて調整） */
	background-color: #a48466;       /* 線の色 */
	margin-left: 10px;               /* テキストとの間の余白 */
}

 .footer_mene1 .footer_mene1_text {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
}

 .footer_mene1 .footer_mene1_text ul {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap:40px;
}

 .footer_mene1 .footer_mene1_text ul li {
	display: block;
	width: 100%;
	text-align: left;
	font-family: 'Zen Old Mincho', serif;
	font-size: 16px;
}

 .footer_mene2 {
	width: 30%;
	margin-top: 32px;
}


 .footer_mene2 ul.footer_mene2_text  {
	width: 100%;
	display: flex;
	flex-direction: column;
}

 .footer_mene2 ul.footer_mene2_text  li {
	display: block;
	width: 100%;
	text-align: left;
	font-family: 'Zen Old Mincho', serif;
	font-size: 16px;
	border-top: 2px solid #a48466;
	padding: 22px 0;
	position: relative;
}
.footer_mene2_text li::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	background-image: url('images/common/icon-01.png'); /* ここに矢印画像のURLを指定 */
	background-size: contain;
	background-repeat: no-repeat;
  }


 .footer_mene2 ul.footer_mene2_text  li:last-child {
	border-bottom: 2px solid #a48466;
}

 .area-title {
	width: 100%;
	text-align: left;
	font-size: 30px;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	margin-top: 100px;
	margin-bottom: 20px;
}


footer a {
	color: #333333;
}

 ul.foot_btn {
	display: flex;
	gap: 25px;
	margin-bottom: 100px !important;
}

 ul.foot_btn li {
	width: auto;
	max-width: 200px;

}

 ul.foot_btn li p {
	border: 0.5px solid #333;
	/* padding: 15px 35px; */
	padding: 10px;
	margin-bottom: 20px;
}

 ul.foot_btn li span {
	font-size: 16px;
	font-family: 'Zen Old Mincho', serif;
	color: #333;
}

 ul.foot_nav {
	display: flex;
	justify-content: center;
	align-items: center;

}

 ul.foot_nav li {
	border-right: solid 1px #4d4d4d;
	line-height: .6rem;
	font-size: 16px;
	font-family: 'Zen Old Mincho', serif;
	color: #333;
	padding: 0 10px;
	margin: 20px 0;
}
 ul.foot_nav li:last-child {
	border-right: none;
}

/* footer li {
	display: inline-block;
	padding: 0 2%;
}


footer .foot_nav, footer .foot_btn {
	margin-bottom: 3%;
}
footer .foot_nav li {
	border-right: solid 1px #4d4d4d;
	line-height: .6rem;
}
footer .foot_nav li:last-child {
	border-right: none;
}
footer hr {
	border-color: #4d4d4d;
	margin: 2rem 0;
} */

 .col-md-12-1{
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 80px;
}

.copy {
	background: #5b241d;
	color: #fff;
	line-height: 2rem;
	text-align: center;
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
}
#page-top {
	position:absolute;
    top: 110px;
    right: 50px;
    /* font-size: 130%; */
}
#page-top a {
    width: 10px;
    display: block;
}
#page-top a:hover {
    /* text-decoration: none;
    background: #999; */
}
/*==========================
top
==============================*/
.container-fluid {
}
.slid_wrap img {
	display: block;
	width: 100%;
}
#top_lead {
	background: url(../images/common/bg_gray.jpg) repeat;
	text-align: center;
	font-family: 'Noto Serif SC', serif;
}
#top_lead h2 {
	font-size: 28px;
	color: #c69c6d;
	margin-bottom: 3%;
	font-weight: 200;
}
#top_lead p {
	line-height: 2.3rem;
}
.top_3menu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.top_3menu li {
	width: 32%;
	margin-bottom: 3%;
}
#charm {
	background: #fff;
	text-align: center;
}
#charm img {
	width: 100%;
}
.detail_wrap {
	background: #c7b299;
	color: #fff;
	padding: 5% 3%;
}
.detail_wrap h3 {
	font-size: 30px;
	font-family: 'Old Standard TT', serif;
}
.detail_wrap h4 {
	font-size: 16px;
	font-family: 'Noto Serif SC', serif;
	margin-bottom: 3%;
	letter-spacing: 2px;
}
.full_banner_wrap ul {
	color: #fff;
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.full_banner_wrap li {
	width: 50%;
	position: relative;
	text-align: center;
	height: 250px;
}
.full_banner_wrap li.beginner {
	background: url(../images/top/beginner_bg.png) no-repeat center center / cover;
}
.full_banner_wrap li.dual_life {
	background: url(../images/top/dual_life_bg.png) no-repeat center center / cover;
}
.full_banner_wrap li.flow {
	background: url(../images/top/flow_bg.png) no-repeat center center / cover;
}
.full_banner_wrap li.work {
	background: url(../images/top/work_bg.png) no-repeat center center / cover;
}
.full_banner_wrap li .banner_title {
	height: 100%;
	width: 100%;
	background: rgba(0,0,0,0.5);
}
.full_banner_wrap li .banner_title div {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
}
.full_banner_wrap .mdl_title {
	color: #fff;
	font-size: 40px;
	font-family: 'Noto Serif SC', serif;
	margin-bottom: 0.6em;
}
.full_banner_wrap .mdl_title:before {
	background-color: #fff;/*線の色*/
}
.blog_post {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.blog_post li {
	width: 23%;
	margin-bottom: 5%;
	background: url(../images/common/bg_gray.jpg) repeat;
}
.blog_post li img {
	width: 100%;
	height: 300px;
	object-fit: cover;
}
.blog_post li figcaption {
	padding: 5%;
}
.blog_post li figcaption .data {
	font-size: 11px;
	margin-bottom: 5px;
}
.blog_post li figcaption h4 a {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
	color: #4d4d4d;
	display: inline-block;
}
#recruie_wrap {
	background: url(../images/common/recruite_bg.jpg) no-repeat center center / cover;
	text-align: center;
}
#recruie_wrap ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 16px;
	margin: 0 auto;
}
#recruie_wrap li a {
	display: block;
	padding: 4%;
	color: #fff;
	text-decoration: none;
	border-radius: 250px;
	font-family: 'Noto Serif SC', serif;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
#recruie_wrap li a:hover {
	opacity: .8;
}
/*==========================
page_common
==============================*/
.page_title_sp {
	/* background: #f4ebe2; */
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
	/* margin-bottom: 5%; */
	/* padding-left: 15%; */
}

.page_title_sp h2 {
	font-size: 60px;
	font-family: zen;
	color: #333;
	font-family: 'Zen Old Mincho', serif;
}
.page_title_sp p {
	width: 80%;
	max-width: 700px;
}
.page_title_sp span {
	font-family: 'Montserrat', sans-serif;
	font-weight:200;
	font-size: 25px;
	letter-spacing: 5px;
}

.page_title {
	/* background: #f4ebe2; */
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
	/* margin-bottom: 5%; */
	padding-left: 15%;
}
.page_title h2 {
	font-size: 60px;
	font-family: zen;
	color: #333;
	font-family: 'Zen Old Mincho', serif;
}
.page_title p {
	width: 60%;
	max-width: 700px;
}
.page_title span {
	font-family: 'Montserrat', sans-serif;
	font-weight:200;
	font-size: 25px;
	letter-spacing: 5px;
}

.page_title_sp {
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
	/* margin-bottom: 5%; */
	padding-left: 40px;
}

@media screen and (max-width: 570px) {
	.page_title_sp {
		padding-left: 20px;
	}
}

.contant_wrap {
	margin-bottom: 5%;
	width: 100%;
}
.box_2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.box_2 li {
	width: 48%;
	margin-bottom: 3%;
}
.box_3 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.box_3 li {
	width: 32%;
	margin-bottom: 3%;
}
/*==========================
remuneration
==============================*/
#remuneration .page_title, #remuneration-claude .page_title {
	background-image: url(../images/page/remuneration_bg.jpg);
}
.box_cont {
	background: none;
	border: double 4px #c7b299;
	padding: 3% 5%;
}
.box_cont2 {
	background: none;
	border: double 4px #666666;
	padding: 3% 5%;
}
.example_post {
	display: flex;
	justify-content: space-around;
}
.example_post li {
	width: 31%;
}
.example_post li figcaption {
	background: url(../images/common/bg_gray.jpg) repeat;
	padding: 5%;
}
.example_post li figcaption .data {
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 5px;
}
.example_post li figcaption h4 {
	font-size: 16px !important;
	font-weight: bold;
	margin-bottom: 10px;
	color: #ed1e79;
	font-size: 12px;
}
.example_post li figcaption h4 span {
	font-size: 18px;
}
/*==========================
environment
==============================*/

#environment .page_title {
	background-image: url(../images/page/environment_bg.jpg);
}
/*==========================
staff
==============================*/

#staff .page_title {
	background-image: url(../images/page/staff_bg.jpg);
}
.president_comment {
	display: flex;
	justify-content: space-around;
	align-items: center;
	background: url(../images/common/bg_gray.jpg) repeat;
	flex-wrap: wrap;
}
.president_comment li {
	width: 50%;
}
.president_comment li:last-child {
	padding: 3%;
}
.president_comment li p {
	margin-bottom: 15px;
}
/*==========================
proportion
==============================*/

#proportion .page_title {
	background-image: url(../images/page/proportion_bg.jpg);
}
.size {
}
.size dt {
	display: inline-block;
	width: 5%;
	font-size: 16px;
}
.size dd {
	display: inline-block;
	width: 27%;
	font-size: 18px;
}
.size dd input[type="text"] {
	width: 80%;
	margin-right: 2%;
	text-align: right;
}
input[type="text"], input[type="email"], input[type="tel"], textarea {
	background: #f2f2f2;
	padding: 10px;
	border-radius: 5px;
	border: none;
}
input[type="submit"], input[type="button"] {
	background: #a67c52;
	color: #fff;
	display: inline-block;
	margin: auto;
	padding: 14px 15%;
	color: #fff;
	font-size: 14px;
	border-radius: 30px;
	border: none;
}
.keisokukekka input[type="text"] {
	width: 75%;
	text-align: right;
	color: #ed1e79;
}
.arrow_box input[type="text"] {
	background:none;
	border:none;
	color: #ed1e79;
	text-align:center;
	width:100%;
	word-break : break-all;
}
.arrow_box textarea {
	background:none;
	border:none;
	color: #ed1e79;
	width:100%;
	font-size:1rem;
	overflow: visible;
	resize: none;
}
.kekka_txt{
	font-size:2rem;
	color: #ed1e79;
	background:#fff;
	padding:2%;
	margin-bottom:2%;
}
.keisokukekka2 input[type="text"]{
	width:15%;
}
.keisokukekka3 input[type="text"]{
	width:15%;
}
.check input[type="text"]{
	max-width:80%;
	background:none;
	border:none;
	text-align: right;
}
.taikei input[type="text"]{
	max-width: 40%;
background: #fff;
text-align: right;
margin-bottom: 10px;
}
table td, table th {
	border: solid 1px #c69c6d;
	padding: 10px;
}
table th {
	background: #f8f3ee;
}
.measurement table {
	width: 60%;
	margin: auto;
}
.measurement table th {
	width: 50%;
}
.measurement p {
	font-size: 16px;
}
.measurement span {
	font-size: 150%;
	font-weight: 400;
	color: #ed1e79;
	padding-right: 10px;
}
.arrow_box {
	position: relative;
	background: #f4ebe2;
	margin-top: 5%;
	padding: 5%;
	text-align: center;
}
.arrow_box:after {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(244, 235, 226, 0);
	border-bottom-color: #f4ebe2;
	border-width: 10px;
	margin-left: -10px;
}
.comment_wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-bottom: 5%;
}
.comment_wrap .coment {
	width: 70%;
	position: relative;
	background: #fff;
	padding: 5%;
	text-align: left;
}
.comment_wrap .coment:after {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(244, 235, 226, 0);
	border-right-color: #fff;
	border-width: 10px;
	margin-top: -10px;
}
.arrow_box a.animated-button.b_btn span, .scout_box a.animated-button.b_btn span {
	color: #fff !important;
	font-size: 16px !important;
}
.balance {
	background: url(../images/page/proportion_img_01.jpg) no-repeat center center;
	position: relative;
	height: 800px;
}
.balance .check {
	position: absolute;
	background: #c69c6d;
	text-align: center;
	width: 260px;
	color: #fff;
	padding: 1%;
}
.balance .check h4 {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 15px;
}
.balance .check p {
	font-size: 18px;
}
.check span {
	background: #fff;
	padding: 0 5px;
	margin-right: 5px;
	border-radius: 5px;
}
.check01 {
	left: 0%;
	top: 20%;
}
.check02 {
	left: 0%;
	top: 35%;
}
.check03 {
	left: 0%;
	top: 50%;
}
.check04 {
	left: 0%;
	bottom: 5%;
}
.check05 {
	right: 0%;
	top: 25%;
}
.check06 {
	right: 0%;
	top: 55%;
}
.check07 {
	right: 0%;
	bottom: 15%;
}
.taikei {
	background: #c69c6d;
	padding: 5%;
	color: #fff;
	margin-bottom: 2%;
}
.box_cont2>.taikei {
	background: #999999;
}
.taikei_type {
	background-position: 2% center;
	background-repeat: no-repeat;
	background-size: auto 90%;
}
.taikei_01 {
	background-image: url(../images/page/proportion_img_02.png);
}
.taikei_02 {
	background-image: url(../images/page/proportion_img_03.png);
}
.taikei_03 {
	background-image: url(../images/page/proportion_img_04.png);
}
.taikei_04 {
	background-image: url(../images/page/proportion_img_05.png);
}
.taikei_05 {
	background-image: url(../images/page/proportion_img_06.png);
}
.scout_box {
	background: #f4ebe2;
	padding: 5%;
	text-align: center;
	margin-bottom: 5%;
}
.scout_box h5 {
	font-size: 18px;
	font-weight: bold;
	color: #333;
	line-height: 2rem;
	margin-bottom: 3%;
}
.claude_wrap{
	background-image: url(../images/page/claude_01.png),
		url(../images/page/claude_02.png),
		url(../images/page/claude_03.png),
		url(../images/page/claude_04.png);
	background-repeat: no-repeat;
	background-position: left top,
		right top,
		left bottom,
		right bottom;
	text-align: center;
	padding: 5rem;
	
}
.claude_wrap p{
	font-family: 'Noto Serif SC', serif;
	line-height: 2rem;
	letter-spacing: 2px;
}
.claudebg_wrap{
	background: url(../images/page/claude_06.png) no-repeat center center;
	margin-bottom: 30px;
}
/*==========================
inexperienced
==============================*/

#inexperienced .page_title {
	background-image: url(../images/page/inexperienced_bg.jpg);
}
.faq dl {
	margin-bottom: 1%;
}
.faq dt {
	background: #f4ebe2;
	position: relative;
	min-height: 60px;
	color: #754c24;
	font-size: 15px;
	padding: 1.5% 0 0 7%;
	cursor: pointer;
}
.faq .qa_bg {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	color: #fff;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	font-size: 24px;
}
.faq dt span {
	background: #754c24;
}
.faq dd span {
	background: #c69c6d;
}
.faq dd {
	background: #fbf7f3;
	position: relative;
	padding: 1.5% 1.5% 1.5% 7%;
}
/*==========================
content
==============================*/

#content .page_title {
	background-image: url(../images/page/content_bg.jpg);
}
.flow {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	background: url(../images/common/bg_gray.jpg) repeat;
}
.flow dt, .flow dd {
	width: 50%;
	align-items: center;
}
.flow_txt {
	padding: 5%;
}
.flow_txt h3 {
	font-size: 18px;
	margin-bottom: 10px;
}
.flow_txt h3 img {
	vertical-align: middle;
	margin-right: 5px;
}
.flow_txt p {
	line-height: 1.6rem;
	font-size: 14px;
}
/*==========================
work
==============================*/

#work .page_title {
	background-image: url(../images/page/work_bg.jpg);
}
.img_map {
	background: url(../images/common/bg_gray.jpg) repeat;
	padding: 5%;
	text-align: center;
	margin-bottom: 5%;
}
.modal-body .cp_ipselect {
	width: 30%;
	display: inline-block;
	vertical-align: middle;
}
.jikan {
	text-align: left;
	margin-top: 3%;
}
.jikan h4 {
	background: #f8f3ee;
	padding: 10px;
	margin-bottom: 15px;
}
.jikan p {
	font-size: 18px;
	margin-bottom: 10px;
}
.jikan span {
	font-size: 120%;
	font-weight: bold;
	color: #ed1e79;
}
/*==========================
flow
==============================*/

#flow .page_title {
	background-image: url(../images/page/flow_bg.jpg);
}

/*==========================
contact
==============================*/

#contact .page_title, #contact1 .page_title, #contact2 .page_title, #tcont .page_title, #ocont .page_title {
	background-image: url(../images/page/contact_bg.jpg);
	background-position: center center;
}
.contact_menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 20px;
	margin-bottom: 5%;
}
.contact_menu li {
	width: 35%;
}
.contact_title {
	background: #c69c6d;
	padding: 2%;
	text-align: center;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 3%;
	line-height: 2.5rem;
}
.area_box {
	padding: 5%;
	text-align: center;
}
.area_box img {
	max-width: 60% !important
}
.tokyo_box {
	border: solid 1px #728f7b;
}
.tokyo_box .mdl_title {
	color: #728f7b;
}
.tokyo_box .mdl_title::before {
	background: #728f7b;
}
.osaka_box {
	border: solid 1px #e7c1b4;
	margin-bottom: 3%;
}
.osaka_box .mdl_title {
	color: #c9a3a3;
}
.osaka_box .mdl_title::before {
	background: #c9a3a3;
}
.nagoya_box {
	border: solid 1px #c5ad5c;
	margin-bottom: 3%;
}
.nagoya_box .mdl_title {
	color: #c5ad5c;
}
.nagoya_box .mdl_title::before {
	background: #c5ad5c;
}
.yokohama_box {
	border: solid 1px #48afad;
	margin-bottom: 3%;
}
.yokohama_box .mdl_title {
	color: #48afad;
}
.yokohama_box .mdl_title::before {
	background: #48afad;
}
.kyoto_box {
	border: solid 1px #a969a6;
	margin-bottom: 3%;
}
.kyoto_box .mdl_title {
	color: #a969a6;
}
.kyoto_box .mdl_title::before {
	background: #a969a6;
}
blockquote {
	border: solid 1px #999;
	border-radius: 3px;
	padding: 3%;
}
.badge-danger {
	background: #ed1e79;
}
.scloll_wrap {
	margin-top: -80px;
	padding-top: 80px;
}
.wpcf7c-conf{
	background:#fff !important;
	border:none !important;
	font-size:14px !important
}
.wpcf7c-btn-back{
	background:#999 !important;
}
span.wpcf7-not-valid-tip {
    background: #fff;
    text-align: left;
}
div.wpcf7-response-output {
    margin: 0 auto 5% !important;
    border: 2px solid #ff0000;
	text-align:center;
}
@media(min-width: 768px) {
a[href^="tel:"] {
	pointer-events: none;
}
}
.form_wrap {
	width: 80%;
	margin: auto;
	border-bottom: solid 1px #999;
}
.form_wrap dt, .form_wrap dd {
	padding: 2%;
	display: inline-block;
	vertical-align: middle;
}
.form_wrap dt {
	width: 30%;
	text-align: right;
	font-size: 17px;
	vertical-align: middle;
}
.form_wrap dd {
	width: 60%;
	text-align: left;
	vertical-align: middle;
}
.form_wrap dd input[type="text"], textarea {
	width: 100%;
}
.form_wrap dd .renraku_select input[type="text"] {
	width: 60%;
}
.form_wrap dd input[type="radio"] {
	background: #f2f2f2;
	border: none;
	vertical-align: middle;
	margin-right: 5px;
}
.form_wrap dd label {
	margin-right: 15px;
}
.cp_ipselect {
	overflow: hidden;
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
 display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: none;
	background: #f2f2f2;
	border-radius: 2px;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 1.2em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}
#aaa, #bbb, #ccc {
	display: inline-block;
}
.renraku_select p {
	display: inline;
}
/*==========================
entry
==============================*/

#entry .page_title {
	background-image: url(../images/page/entry_bg.jpg);
	background-position: center center;
}
/*==========================
hystory
==============================*/

#hystory .page_title {
	background-image: url(../images/page/hystory_bg.jpg);
	background-position: center center;
}
#hystory .page_title h2 {
	color: #fff;
	text-shadow: none;
}
#hystory .flow {
	background: none;
}
#hystory .flow {
	margin-bottom: 5%;
}
#hystory .flow dt, #hystory .flow dd {
	width: 48%;
}
#hystory .flow dd {
	padding: 0.5em;
	background: #fff;/*背景色*/
	border-top: double 7px #000;/*左線*/
	border-bottom: double 7px #000;/*右線*/
}
#hystory .flow_txt h3 {
	font-size: 28px;
	font-family: 'Noto Serif SC', serif;
	letter-spacing: 3px;
}
/*==========================
tokyo
==============================*/
#tokyo .page_title {
	background-image: url(../images/page/tokyo_bg.jpg);
}
#tokyo .page_title h2 {
	color: #fff;
	text-shadow: none;
}
.bukken li {
	display: inline-block;
	width: 18.8%;
	margin-right: 1%;
}
.bukken li:last-child {
	margin-right: 0;
}
.youtube_wrap {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%;
}
.youtube_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.entry .mulch-button {
	width: 50%;
}
.lb-outerContainer, .lb-outerContainer img {
	 width: 60% !important;
	height: auto !important;
	margin:auto;
}
#remuneration .lb-outerContainer, .lb-outerContainer img {

}
.lb-nav a.lb-next, .lb-nav a.lb-prev {
    opacity: 1 !important;
}
/*==========================
osaka
==============================*/
#osaka .page_title {
	background-image: url(../images/page/osaka_bg.jpg);
}
/*==========================
nagoya
==============================*/
#nagoya .page_title {
	background-image: url(../images/page/nagoya_bg.jpg);
}
/*==========================
kyoto
==============================*/
#kyoto .page_title {
	background-image: url(../images/page/kyoto_bg.jpg);
}
/*==========================
yokohama
==============================*/
#yokohama .page_title {
	background-image: url(../images/page/yokohama_bg.jpg);
}

/*==========================
sitemap
==============================*/

#sitemap_list li {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	border-bottom: dotted 1px #c7b299;
	position: relative;
	line-height: 2rem;
	padding-left: 1rem;
}
#sitemap_list li::after {
	display: block;
	content: '';
	position: absolute;
	top: 1em;
	left: 0;
	width: 6px;
	height: 6px;
	background-color: #c7b299;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/*==========================
blog
==============================*/
#blog .page_title {
	background-image: url(../images/page/blog_bg.jpg);
}
.blog_post_wrap .box_cont {
	padding: 2%;
	color: #c69c6d;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 3%;
}
.blog_box {
	margin-bottom: 5%;
}
.blog_box p {
	margin-bottom: 10px;
}
.blog_box h1, .blog_box h2, .blog_box h3, .blog_box h4, .blog_box h5 {
	font-weight: 800;
}
.blog_box h1 {
	font-size: 180%;
}
.blog_box h2 {
	font-size: 160%;
}
.blog_box h3 {
	font-size: 140%;
}
.blog_box h4 {
	font-size: 120%;
}
.blog_box h5 {
	font-size: 100%;
}
.prev-next-link {
	display: flex;
	border-top: solid 1px #f6f6f6;
}
.prev-next-link a {
	display: block;
	text-decoration: none;
	padding: 14px 40px;
}
.prev-next-link a:hover {
	background-color: #f6f6f6;
}
.prev-next-label {
	font-size: .825rem;
	color: #000;
	margin-bottom: 10px;
	width: 50%;
}
/* Arrows */
.next-label a {
	background: url(http://www.webcreatorbox.com/sample/images/arrow-prev.svg) no-repeat 10px center;
}
.prev-label a {
	background: url(http://www.webcreatorbox.com/sample/images/arrow-next.svg) no-repeat right 10px center;
	text-align: right;
}
#sidebar .widget_title {
	border-bottom: solid 2px #c7b299;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
#sidebar-in ul {
	margin-bottom: 10%;
}
#sidebar-in li {
	border-bottom: dotted 1px #c7b299;
	padding-bottom: 2%;
	margin-bottom: 3%;
}
#blog .blog_post li img {
	height: 200px;
}
/*==========================
404
==============================*/
.error {
	padding: 5rem 0;
	text-align: center;
}
.error h2 {
	font-size: 10rem;
	line-height: 20rem;
	font-weight: 800;
}

/*==========================
thanks
==============================*/
.thanks {
	padding-bottom:5rem;
	text-align: center;
}
.thanks h2 {
	font-size: 2rem;
	line-height: 5rem;
	font-weight: 800;
	margin-bottom:2rem;
}

/*==========================
PC common
==============================*/
@media screen and (min-width: 768px) {
.main_nav li::after {
	background-color: #fff;
	bottom: -3px;
	content: '';
	display: block;
	height: 3px;
	left: 0;
	position: absolute;
	transition: .5s all;
	width: 0;
}
.main_nav li:hover::after {
	width: 100%;
}
.sp {
	display: none;
}
/* .check01::before {
	content: "";
	-moz-transform: rotate(10deg);
	-webkit-transform: rotate(10deg);
	-o-transform: rotate(10deg);
	-ms-transform: rotate(10deg);
	transform: rotate(10deg);
	right: -7rem;
	width: 120px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
}
.check02::before {
	content: "";
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	right: -7rem;
	width: 120px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
}
.check03::before {
	content: "";
	-moz-transform: rotate(-20deg);
	-webkit-transform: rotate(-20deg);
	-o-transform: rotate(-20deg);
	-ms-transform: rotate(-20deg);
	transform: rotate(-20deg);
	right: -7rem;
	width: 125px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: -5%;
}
.check04::before {
	content: "";
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	right: -8rem;
	width: 150px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
}
.check05::before {
	content: "";
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	left: -5rem;
	width: 100px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
}
.check06::before {
	content: "";
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	left: -7rem;
	width: 120px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
}
.check07::before {
	content: "";
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	left: -7rem;
	width: 120px;
	position: absolute;
	border: solid 3px #c69c6d;
	top: 50%;
} */
.flow:nth-child(odd) dt {
	order: 2;
}
.flow:nth-child(odd) dd {
	order: 1;
}
div.wpcf7-response-output {
    width: 50%;
}
}

.sp_btm_set {
	display: none;
}

/*==========================
SP common
==============================*/
@media screen and (max-width: 667px) {

}

/*==========================
iphone5
==============================*/
@media screen and (device-aspect-ratio: 40/71) {
}

/*==========================
ipad
==============================*/
@media only screen and (min-device-width:768px) and (max-device-width:1280px) and (orientation:portrait) {
.logo {
	width: 200px;
}
.main_nav li a {
	font-size: 12px;
}
.page_main_title {
	font-size: 20px;
}
.faq .qa_bg {
	width: 50px;
	height: 50px;
	line-height: 50px;
	font-size: 20px;
}
.faq dt {
	min-height: 50px;
	padding: 1.5% 0 0 9%;
}
.faq dd {
	padding: 1.5% 1.5% 1.5% 9%;
}
}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:landscape) {
}




/* ====== 横はみ出し調査用デバッグ CSS ======
   使い方: <body class="debug-x"> を付けると有効
================================================ */

/* 0) ベース：全要素の枠線を可視化（薄青） */
body.debug-x *:not(script):not(style) {
	outline: 1px dashed rgba(30, 120, 255, .35);
	outline-offset: -1px;
  }
  
  /* 1) 典型的な“はみ出し犯”に強い赤枠を付ける */
  body.debug-x img,
  body.debug-x svg,
  body.debug-x video,
  body.debug-x iframe,
  body.debug-x table,
  body.debug-x [class*="table"],
  body.debug-x [class*="slider"],
  body.debug-x [class*="slide"],
  body.debug-x [class*="carousel"] {
	outline: 2px solid rgba(255, 60, 60, .85) !important;
  }
  
  /* 2) 固定幅/最小幅が暴れている候補を視覚化（黄色背景） */
  body.debug-x [style*="width:"],
  body.debug-x [style*="min-width:"],
  body.debug-x [class*="w-"],
  body.debug-x [class*="min-w"],
  body.debug-x [class*="container"] {
	background-image: repeating-linear-gradient(
	  45deg, rgba(255, 210, 0, .18) 0 6px, transparent 6px 12px
	);
  }
  
  /* 3) フレックス/グリッドの“折り返さない”問題を露出させる */
  body.debug-x [style*="display:flex"],
  body.debug-x .flex,
  body.debug-x [class*="flex"] {
	/* 子要素のはみ出し抑止が効いていないのを見つけるための補助 */
	outline: 2px dotted rgba(255, 0, 200, .6);
  }
  body.debug-x [style*="display:grid"],
  body.debug-x .grid,
  body.debug-x [class*="grid"] {
	outline: 2px dotted rgba(0, 200, 150, .6);
  }
  /* min-width の不足を炙る（子に長文や大きい画像があると溢れやすい） */
  body.debug-x .flex > *, 
  body.debug-x .grid > * {
	/* あえて min-width: auto にして溢れを可視化 */
	min-width: auto !important;
  }
  
  /* 4) 長い英数字やURLの改行不足を検出（紫背景で強調） */
  body.debug-x * {
	overflow-wrap: normal !important;   /* 本来の改行不足を露出 */
	word-break: normal !important;
  }
  body.debug-x .__wraptest__ * {
	/* ↑を一時的に解除したい領域に .__wraptest__ を付与 */
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
  }
  
  /* 5) 表・コードなど横長コンテンツの挙動を確認しやすく */
  body.debug-x table,
  body.debug-x pre,
  body.debug-x code,
  body.debug-x .code,
  body.debug-x .table-wrap {
	box-shadow: 0 0 0 3px rgba(255, 120, 0, .7) inset;
  }
  
  /* 6) セクション境界を見やすく（ストライプ帯） */
  body.debug-x section, 
  body.debug-x header, 
  body.debug-x main, 
  body.debug-x footer, 
  body.debug-x .container {
	background-image:
	  linear-gradient(to right, rgba(0,0,0,.06), rgba(0,0,0,0)),
	  repeating-linear-gradient(90deg, transparent 0 99px, rgba(0,0,0,.07) 99px 100px);
	background-size: 100% 100%, 100% 100%;
  }
  
  /* 7) “一旦封じ込め”スイッチ（必要時のみ一時使用）
	 本質原因の調査が終わったら必ず外すこと！ */
  body.debug-x.__temporary_clip html,
  body.debug-x.__temporary_clip body {
	overflow-x: hidden !important;
  }


  	/*==========================
safe-supportive
==============================*/

	.lady-card-sub {
		background-color: #fff;
		padding: 150px 0 100px;
	}

	.lady-card-sub.end {
		padding: 150px 0 200px;
	}

	.sp_mode {
		display: none;
	}

	.page_title_sp {
		display: none;
	}

	.lady-card {
		width: auto;
		max-width: 1080px;
		/* background: #fffefb; */
		/* border-radius: 12px; */
		/* border: 1px solid #f0e6d5; */
		/* overflow: hidden; */
		margin: 20px auto;
		/* box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); */
		/* display: flex;
		flex-direction: row; */
		position: relative;
		margin-bottom: 100px;

	}

	.text-section {
		width: 50%;
		flex: 1;
		padding: 24px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		font-family: 'Zen Old Mincho', serif;
		color: #5b241d;
		text-align: left;
		background: #fff;
		border-radius: 20px;


	}

	.text-section h3 {
		margin: 30px 0;
		text-align: left;

	}

	.text-section h3 span {
		font-family: 'Montserrat', sans-serif;
		color: #69797e;
		font-weight: 100;
		font-size: 60px;
		letter-spacing: 5px;
		line-height: 1;
	}

	.text-section h3 span:first-child::after {
		content: " ";
	}

	.image-section {
		width: auto;
		max-width: 560px;
		position: absolute;
		top: 0px;
		right: -20px;
		flex: 1;
	}

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


	.reward {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 20px;
		margin-bottom: 20px;
	}

	.reward p {
		font-size: 30px;
	}

	.price {
		font-weight: 500;
		font-size: 18px;
	}

	.max-price {
		font-weight: bold;
		font-size: 40px;
	}

	.note {
		font-size: 16px;
		color: #333;
		text-align: left;
	}

	.style-link {
		display: inline-flex;
		align-items: center;
		text-decoration: none;
		font-weight: bold;
		padding-bottom: 4px;
		gap: 8px;
		/* アイコンと文字の間隔 */
		margin: 80px 0 40px;
	}

	.style-link a {
		font-size: 18px;
		color: #5c2b21;
		font-family: 'Zen Old Mincho', serif;
	}

	.style-link a span {
		border-bottom: 2px solid #a48466;
		line-height: 2;
		padding-bottom: 5px;
	}

	.style-link .icon {
		width: 28px;
		height: 28px;
		object-fit: contain;
	}

	/* 金の枠 */
	.gold-circle {
		width: 80px;
		height: 80px;
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-family: 'Zen Old Mincho', serif;
		color: #5b241d;
		font-weight: bold;
	}

	.gold-circle::before {
		content: '';
		position: absolute;
		inset: 0;
		border-radius: 50%;
		background: conic-gradient(from 0deg,
				#d4af37,
				#f5e089,
				#fff8dc,
				#f5e089,
				#d4af37);
		-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
		mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
		z-index: 0;
	}

	.gold-circle .main {
		font-size: 30px;
		line-height: 1;
		position: relative;
		z-index: 1;
	}

	.gold-circle .sub {
		font-size: 20px;
		font-weight: normal;
		position: relative;
		z-index: 1;
	}


	.page_title_sub {
		padding: 7% 0;
		background-repeat: no-repeat;
		background-size: cover;
		text-align: left;
	}

	.page_title_sub h3 span {
		font-size: 60px;
		color: #333;
		font-family: 'Zen Old Mincho', serif;
	}

	.page_title_sub p {
		width: 80%;
		max-width: 800px;
	}

	.page_title_sub span {
		font-family: 'Montserrat', sans-serif;
		font-weight: 200;
		font-size: 25px;
		letter-spacing: 5px;
	}


	.growth-block {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		min-height: 100vh;
		position: relative;
	}

	.growth-image {
		flex: 1;
		width: 100%;

	}

	.growth-image picture,
	.growth-image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}

	.growth-content {
		position: absolute;
		top: 5vw;
		left: 15vw;
		transform: translate(0, 0);
		display: flex;
		flex-direction: column;
		justify-content: center;
		/* background-color: #fff; */
	}

	.page_title_sub h3 {
		font-size: clamp(26px, 3vw, 36px);
		font-family: 'Zen Old Mincho', serif;
		color: #2b2b2b;
		margin-bottom: 10px;
	}

	.en-title {
		font-family: 'Montserrat', sans-serif;
		font-size: clamp(14px, 1.5vw, 18px);
		color: #333;
		letter-spacing: 1px;
		margin-bottom: 30px;
		display: inline-block;
		position: relative;
	}

	.growth-text p {
		font-size: clamp(14px, 1.3vw, 18px);
		line-height: 2;
		color: #444;
		margin-bottom: 1.5em;
		font-family: 'Zen Old Mincho', serif;
	}

	.workflow-section {
		text-align: center;
		padding: 80px 5%;
		font-family: 'Zen Old Mincho', serif;
	}

	.workflow-title h2 {
		font-size: clamp(28px, 5vw, 60px);
		position: relative;
		display: inline-block;
		padding-bottom: 10px;
	}

	.workflow-title h2::after {
		content: '';
		display: block;
		width: 500px;
		height: 30px;
		margin: 10px auto 5px;
		background-image: url("../images/page/07/line2.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
	}

	.workflow-title .subtitle {
		display: block;
		font-family: 'Montserrat', sans-serif;
		font-size: clamp(12px, 2.2vw, 30px);
		color: #999;
	}

	.workflow-content {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 60px;
		gap: 60px;
		flex-wrap: wrap;
	}

	.workflow-text {
		text-align: left;
		max-width: 400px;
		font-size: clamp(16px, 2vw, 20px);
		line-height: 2;
		color: #5c2b21;
	}

	.workflow-text p {
		font-size: 30px;
		line-height: 1.5;
	}

	.workflow-text hr {
		border: none;
		border-top: 1px solid #bba98f;
		margin: 5px 0px;
	}

	.workflow-text .caption {
		font-size: 14px;
		color: #888;
		font-family: 'Montserrat', sans-serif;
		margin-top: 40px;
	}

	.workflow-video .video-thumbnail {
		position: relative;
		width: 360px;
		max-width: 100%;
		border-radius: 10px;
		overflow: hidden;
	}

	.workflow-video img {
		width: 100%;
		display: block;
		border-radius: 10px;
	}

	.video-overlay {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.35);
		color: #fff;
		font-size: clamp(14px, 2vw, 18px);
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		text-align: center;
	}

	.play-button {
		margin-top: 10px;
		font-size: 32px;
		background: #fff;
		color: #000;
		width: 48px;
		height: 48px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
	}


	.support-section {
		padding: 200px 200px;
		font-family: "Noto Serif JP", serif;
	}


	.support-section2 {
		padding: 0px 20px;
		font-family: "Noto Serif JP", serif;
	}

	.container {
		max-width: 1200px;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
	}

	.container.slider {
		/* max-width: unset !important; */
		max-width: 1800px;
	}



	.container p {
		color: #333;
		font-family: 'Zen Old Mincho', serif;
		position: relative;
		font-size: 15px;
		text-align: center;
		line-height: 2;
		margin-top: 15px;
	}

	.main-text {
		font-size: 30px;
		text-align: center;
		color: #5b241d;
		margin-bottom: 60px;
	}

	.container p.checktext {
		font-size: 20px;
	}

	.checklist {
		list-style: none;
		padding: 0;
		margin: 0 auto;
		width: 100%;
		max-width: 1200px;
		display: flex;
		/* flex-direction: column; */
		justify-content: center;
		align-items: center;
		gap: 50px;
		margin-top: 100px;
	}

	.checklist li {
		width: calc(100% /2);
		min-width: 560px;
		position: relative;
		font-size: 20px;
		line-height: 1.6;
		margin-bottom: 0px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 30px;
	}

	.checklist li p {
		margin-bottom: 0px;
	}

	.checklist li p:nth-of-type(2) {
		font-size: 25px;
		color: #5b241d;
	}

	.button-wrapper {
		text-align: center;
		margin-bottom: 120px;
		background-image: url("../images/page/07/btn.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding: 2.8vw 4vw;
		padding-left: clamp(30px, 5vw, 56px);
		padding-right: clamp(30px, 5vw, 56px);
	}

	.button-wrapper a.gold-button {
		display: inline-block;
		color: #f2efe9;
		font-family: 'Zen Old Mincho', serif;
		position: relative;
		font-size: clamp(16px, 2vw, 25px);
	}

	.voice-box {
		background: white;
		border: 2px solid #f4c77f;
		border-radius: 12px;
		display: flex;
		padding: 60px 40px;
		gap: 20px;
		align-items: flex-start;
		flex-wrap: wrap;
		position: relative;
	}

	.voice-text {
		/* flex: 1 1 60%; */
		font-size: 14px;
		line-height: 1.8;
		width: 55%;
	}

	.voice-text h3 {
		font-size: 30px;
		margin-bottom: 10px;
		color: #5a2e1f;
	}

	.voice-text .profile {
		font-weight: bold;
		margin-bottom: 10px;
		font-family: 'Zen Old Mincho', serif;
		font-size: clamp(15px, 2.0vw, 20px);
	}

	.voice-text p.profile-text {
		font-size: 16px;
		line-height: 2;
		margin-top: 40px
	}

	.voice-box2 {
		display: flex;
		padding: 0px 40px;
		gap: 100px;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}

	.voice-text2 {
		font-size: 14px;
		line-height: 1.8;
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		gap: 30px
	}

	.voice-text2 h3 {
		font-size: 30px;
		margin-bottom: 10px;
		color: #5a2e1f;
	}

	.voice-text2 .profile {
		font-weight: bold;
		margin-bottom: 10px;
		font-family: 'Zen Old Mincho', serif;
		font-size: clamp(15px, 2.0vw, 20px);
	}

	.voice-text2 p.profile-text {
		font-size: 20px;
		line-height: 2;
		margin-top: 40px;
	}

	.voice-text2.set2 p.profile-text {
		margin-bottom: 100px;
	}

	.voice-image {
		position: absolute;
		/* flex: 1 1 35%; */
		top: -20px;
		right: -20px;
		width: 40%;
	}

	.voice-image img {
		width: 100%;
		border-radius: 12px;
		object-fit: cover;
	}

	.br-pc {
		display: block;
	}

	.br-sp {
		display: none;
	}

	/* ラッパー：2カラム（モバイルは1カラム） */
	.office {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 60px;
		max-width: 1100px;
		margin: 0 auto;
		margin-bottom: 100px
	}

	/* 各ブロック */
	.office-content {
		padding: 0 0 18px;
	}

	/* 見出し */
	.office-content h3 {
		margin: 0 0 8px;
		font-weight: 500;
		font-size: clamp(18px, 2.2vw, 30px);
		line-height: 1.6;
		letter-spacing: 0.06em;
		color: #8a4f44;
		font-family: "Noto Serif JP", "Shippori Mincho", serif;
		border-bottom: 2px solid #b99179;
	}

	/* 見出し下の細ライン画像（sub-title.png） */
	.office-content span {
		display: block;
		line-height: 0;
		margin: 0 0 12px;
	}

	.office-content span img {
		display: block;
		width: 100%;
		height: 2px;
		object-fit: cover;
	}

	/* 説明文 */
	.office-content p {
		margin: 0;
		font-size: 20px;
		line-height: 1.9;
		letter-spacing: 0.03em;
		color: #6b6f72;
		font-family: 'Zen Old Mincho', serif;
	}

	/* レスポンシブ：タブレット以下は1カラム */
	@media (max-width: 900px) {
		.office {
			grid-template-columns: 1fr;
			gap: 28px;
		}
	}

	.prefectures {
		width: calc(40% - 60px);
		max-width: 453px;
		position: relative;
		display: inline-block;
		padding: 0;
	}

	.prefectures picture {
		position: relative;
		display: block;
		width: 100%;
	}

	.prefectures img {
		width: 100%;
		height: auto;
		display: block;
	}

	.prefectures-content {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		color: #333;
		text-align: center;
		width: 80%;
		padding: 40px 0 30px 0;
	}

	.prefectures-content h3 {
		font-size: 22px;
		margin-bottom: 10px;
		line-height: 1;
	}

	.prefectures-content span {
		display: block;
		width: 80%;
		margin: 0 auto;
	}

	.prefectures-content ul {
		list-style: none;
		padding: 0;
		margin: 60px 0 0;
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: left;
	}

	.prefectures-content li {
		width: max-content;
		font-size: 16px;
		position: relative;
	}

	.prefectures-content li::after {
		content: "/";
		margin-left: 6px;
	}

	.prefectures-content li:last-child::after {
		content: "";
	}


	/* ====== ボタンセット ====== */
	.btn-set {
		width: auto;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 30px;
	}

	.btn-set a,
	.btn-set p {
		display: block;
		width: calc(100% / 3 );
		min-width: 400px;
	}

	.btn-set picture,
	.btn-set img {
		display: block;
		width: 100%;
		height: auto;
	}


	@media screen and (max-width: 1320px) {
		.btn-set {
			width: auto;
			display: flex;
			flex-direction: row;
			gap: 30px;
			margin-left: 0;
			margin: 0 auto;
			flex-wrap: wrap;
			justify-content: center;
		}

		.btn-set picture,
		.btn-set img {
			width: 100%;
		}

		.btn-set a,
		.btn-set p {
			width: calc(100% / 2 - 30px);
		}
	}


	/* タブレット対応 */
	@media screen and (max-width: 1080px) {
		.text-section {
			width: fit-content;
		}

		.image-section {
			width: 70%;
			max-width: unset;
		}

		.lady-card {
			/* flex-direction: column; */
			margin: 0 40px;
			margin-bottom: 100px;
		}

		.reward {}

		.reward:first-of-type {
			margin-top: 25vw;
		}

		.text-section {
			padding: 10px;
		}

		.text-section h3 {
			width: fit-content;
			margin: 30px 0;
		}

		.text-section h3 span {
			display: block;
			font-size: 8vw;
		}

		.text-section h3 span:first-child::after {
			content: "";
		}

		.reward p {
			font-size: 30px
		}

		.max-price {
			font-size: 40px
		}

		.page_title h2 {
			/* font-size: 60px; */
			font-family: zen;
			color: #333;
			font-family: 'Zen Old Mincho', serif;
		}


		.page_title {
			margin-bottom: 0;
		}

		.voice-text .profile {

			font-size: clamp(15px, 2.5vw, 20px);
		}

		.voice-text2 {
			flex-direction: column;
		}

		.prefectures {
			width: fit-content;
		}
	}

	@media screen and (max-width: 725px) {
		.sp_mode {
			display: block;
		}

		.page_title_sp {
			display: block;
		}

		#safe-supportive .page_title {
			display: none;
		}

		.lady-card-main {
			padding: 50px 0 50px;
			max-height: 80%;

		}

		.br-pc {
			display: none;
		}

		.br-sp {
			display: block;
		}

		.main-text {
			font-size: 20px;
			line-height: 2;
		}

		.support-section {
			/* padding-top: 0px; */
			padding: 0 20px;
		}

		.page_title_sp {
			padding: 10% 0;
			padding-left: 20px;
		}

		.button-wrapper {
			margin-bottom: 100px;
			padding: 4.8vw 4vw;
			background-image: url("../images/page/07/btn-sp.png");
		}

		.button-wrapper a.gold-button {
			/* font-size: 24px; */
		}

		.voice-box {
			padding: 30px 20px;
		}

		.voice-text {
			width: 100%;
		}

		.voice-text h3 {
			font-size: 20px;
		}

		.container {
			padding: 0;
		}

		.voice-image {
			width: 50%;
			top: -20px;
			right: -10px;
		}

		.voice-text p.profile-text {
			margin-top: 60px;
		}

		.checklist li {
			width: 100%;
			font-size: 15px;
			min-width: unset;
		}

		.page_title_sp.sub01 h2,
		.page_title_sp.sub02 h2 {
			text-align: center;
		}

		.page_title_sp.sub01 .sub-titel,
		.page_title_sp.sub02 .sub-titel {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
		}

		.checklist {
			flex-direction: column;
			gap: 30px;
			margin-top: 30px;
		}

		.checklist li p:nth-of-type(2) {
			font-size: 18px;
		}

		.checklist li {
			padding-left: 0px;
			gap: 0;
			flex-direction: column-reverse;
			min-width: unset;
		}

		.checklist li::before {
			left: 0;
			top: 0.2em;
			width: 0px;
			height: 0px;
			background-image: nuset;
		}

		.main-text {
			margin-bottom: 30px;
		}

		.lady-card-sub {
			padding: 50px 0 50px;
		}

		.page_title_sp.sub01,
		.page_title_sp.sub02 {
			padding-top: 0;
			padding-left: 0;
		}

		.voice-box2 {
			padding: 0;
			gap: 50px
		}

		.voice-text2 h3 {
			font-size: 20px;
		}

		.voice-text2 p.profile-text {
			font-size: 15px;
			margin-top: 20px;
		}

		.voice-text2.set2 p.profile-text {
			margin-bottom: 50px;
		}

		.office-content p {
			font-size: 15px;
		}

		.office-content {
			padding: 0;
		}

		.prefectures-content {
			width: 85%;
			padding: 30px 0;
		}

		.prefectures-content ul {
			margin-top: 15px;
			gap: 5px;
		}

		.prefectures-content li {
			font-size: 13px
		}

		.container p {
			margin-top: 10px;
			font-size: 15px;
			text-align: left;
		}

		.btn-set {
			gap: 25px;
			margin-top: 0px;
			margin-left: 0;
		}
		.btn-set {
			flex-direction: column;
		}

		.btn-set a, .btn-set p {
			min-width: unset;
			width: 80%;
		}
	}



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

		.lady-card {
			margin: 0 20px;
			margin-bottom: 80px;
		}

		.image-section {
			width: 60%;
			top: -10px;
			right: -10px;
		}

		.text-section h3 span {
			font-size: 10vw;
		}

		.text-section h3 {
			margin-top: 20px;
			z-index: 1;
		}

		.reward:first-of-type {
			margin-top: clamp(8vw, 11vw, 16vw);
		}

		.gold-circle {
			width: clamp(60px, 10vw, 80px);
			height: clamp(60px, 10vw, 80px);
		}

		.gold-circle .main {
			font-size: clamp(20px, 4vw, 30px);
		}

		.gold-circle .sub {
			font-size: clamp(14px, 2.5vw, 20px);
		}

		.reward p {
			font-size: clamp(20px, 5vw, 30px);
		}

		.max-price {
			font-size: clamp(28px, 6vw, 40px);
			display: inline-block;
		}

		.reward {
			gap: 10px;
			margin-bottom: 10px;
		}

		.style-link {
			margin: 40px 0 20px;
		}

		.note {
			font-size: 14px;
		}

		.style-link .icon {
			width: 35px;
			height: 35px;
		}

		.style-link a span {
			border-bottom: 1.5px solid #a48466;
			line-height: 3;
			padding-bottom: 5px;
			font-size: 15px;
		}

		.page_title_sub h3 span {
			font-size: 30px;
		}

		.page_title_sub span {
			font-size: 16px;
		}

		.growth-content {
			top: 8vw;
			left: 5vw;
		}

		.workflow-title h2::after {
			width: 300px;
			height: 20px;
		}

		.workflow-content {
			flex-direction: column-reverse;
			margin-top: 60px;
			gap: 30px;
		}

		.workflow-video .video-thumbnail {
			width: auto;
		}

		.workflow-text p {
			font-size: 20px;
		}

		.workflow-text {
			margin-right: auto;
		}

		.page_title_sp h2 {
			font-size: 28px;
		}

		.page_title_sp span {
			font-size: 13px;
		}

		.page_title_sp {
			/* padding: 15% 0; */
			padding-left: 20px;
		}
		.checklist p.video-box-text {
			line-height: 1.5;
			margin-bottom: 5px;
		}
	}

	/* モバイル対応 */
	@media screen and (max-width: 430px) {}

	/* 対応ブラウザは aspect-ratio を使う */
	@supports (aspect-ratio: 16 / 9) {
		.video-box {
			aspect-ratio: 16 / 9;
		}

		.video-box iframe {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			border: 0;
			display: block;
			z-index: 0;
			/* 擬似要素の下に配置 */
		}
	}

	/* 非対応ブラウザ向けフォールバック（padding-bottom方式） */
	@supports not (aspect-ratio: 16 / 9) {
		.video-box {
			height: 0;
			padding-bottom: 56.25%;
		}

		.video-box iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			border: 0;
			display: block;
			z-index: 0;
		}
	}

	.checklist p.video-box-text {
		font-size: 30px;
		color: #5b241d;
		width: 100%;
		text-align: center;
		min-width: 400px;

	}

	@media screen and (max-width: 725px) {
		.checklist p.video-box-text {
			font-size: 23px;
			max-width: 500px;
			min-width: unset;
			text-align: left;
		}
	}

	.center-slide .slick-slide {
		margin: 0 15px;
	}

	/* iframeをラッパなしで16:9レスポンシブ化 */
	.video-box {
		position: relative;
		width: 100%;
		max-width: 500px;
		border-radius: 10px;
		/* ←角丸 */
		overflow: hidden;
		/* ←iframeはみ出し防止 */
	}

	/* 金色グラデーション枠 */
	.video-box::before {
		content: "";
		position: absolute;
		inset: 0;
		/* 全体を覆う */
		padding: 5px;
		/* 枠の太さ */
		border-radius: 0px;
		/* 角丸を合わせる */
		background: conic-gradient(from 0deg,
				#d4af37,
				#f5e089,
				#fff8dc,
				#f5e089,
				#d4af37);
		-webkit-mask:
			linear-gradient(#fff 0 0) content-box,
			linear-gradient(#fff 0 0);
		-webkit-mask-composite: xor;
		mask-composite: exclude;
		pointer-events: none;
		/* 枠は操作に干渉しない */
		z-index: 1;
	}

		/*==========================
WorkStyle
==============================*/
#awordfromthemanager .page_title {
	background-image: url("../images/page/02-02/02-02-main-title_img-bk.png");
}

#awordfromthemanager .page_img_sp {
	background-image: url("../images/page/02-02/02-02-main-title_img-bk_sp.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	aspect-ratio: 1.872;
}

#awordfromthemanager .lady-card-main {
	background-image: url("../images/page/02-02/content-1-bk-img.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 100px 0 100px;
}

#awordfromthemanager .lady-card-main2 {
	background-image: url("../images/page/02-02/content-1-bk-img.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 100px 0 100px;
}

#awordfromthemanager .lady-card-main3 {
	background-image: url("../images/page/02-02/content-3-bk-img.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 100px 0 200px;
}

#awordfromthemanager .lady-card-main4 {
	background-image: url("../images/page/02-02/content-4-bk-img.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 100px 0 300px;
}


#awordfromthemanager .page_title.sub03 {
	background-image: url("../images/page/02-02/sub-title-01.png");
	padding: 100px 0 100px;
}

#awordfromthemanager .page_title.sub04 {
	background-image: url("../images/page/02-02/sub-title-02.png");
	padding: 100px 0 100px;
}

#awordfromthemanager .page_img_sp.sub03 {
	background-image: url("../images/page/02-02/sub-title-01-sp.png");
}

#awordfromthemanager .page_img_sp.sub04 {
	background-image: url("../images/page/02-02/sub-title-02-sp.png");
}


#awordfromthemanager .sp_mode {
	display: none;
}

#awordfromthemanager .page_title_sp {
	display: none;
}

#awordfromthemanager .page_title_sub {
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
}

#awordfromthemanager .page_title_sub h3 {
	font-size: clamp(26px, 3vw, 36px);
	font-family: 'Zen Old Mincho', serif;
	color: #2b2b2b;
	margin-bottom: 10px;
}

#awordfromthemanager .page_title_sub h3 span {
	font-size: 60px;
	color: #333;
	font-family: 'Zen Old Mincho', serif;
}

#awordfromthemanager .page_title_sub p {
	width: 80%;
	max-width: 800px;
}

#awordfromthemanager .page_title_sub span {
	font-family: 'Montserrat', sans-serif;
	font-weight: 200;
	font-size: 25px;
	letter-spacing: 5px;
}

.page_title {
	margin-bottom: 0;
	padding-left: 0;
}

.page_title.sub01 .sub-titel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: fit-content;
	margin: 0 auto;
}

.page_title.sub01 .sub-titel h2 {
	text-align: center;
	width: fit-content;
}

.page_title.sub01 .sub-titel h2 span {
	display: block;
	color: #333;
	font-family: 'Zen Old Mincho', serif;
	line-height: 80px;
	font-size: 60px;
}


.page_title.sub01 .sub-titel span {
	font-family: 'Montserrat', sans-serif;
	font-weight: 300;
}

.page_title.sub01 .sub-titel h2 span.small {
	display: inline;
	font-size: 40px;
}

.page_title.sub01 .sub-titel p {
	width: 90%;
}


#awordfromthemanager .lady-card {
	width: auto;
	max-width: 1200px;
	margin: 0px auto;
	/* margin-bottom: 100px; */
}

.lady-profile {
	display: flex;
	gap: 40px;
	align-items: flex-start;
	flex-direction: column;
	padding: 60px 40px;
	font-family: 'Zen Old Mincho', serif;
}

.lady-card:nth-child(odd) .lady-profile {
	/* flex-direction: row-reverse; */
}

.lady-image {
	width: 50%;
	max-width: 520px;
}

.lady-text {
	flex: 1;
	color: #fff;
	font-size: 15px;
	line-height: 2;
}

.lady-text h3 {
	margin-bottom: 16px;
	line-height: 1.5;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	font-size: 30px;
}

.lady-text h3 small {
	display: block;
	color: #5b241d;
	font-weight: 100;
	margin-top: 4px;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	font-size: 20px;
}

.lady-text h3 small span {
	font-size: 30px;
}

.lady-text p {
	margin-bottom: 1em;
	font-size: 20px;
	line-height: 2.0;
}

.lady-text .number-set {
	position: relative;
}

.lady-text .number-set p.border-set {
	border-bottom: 2px solid #a48466;
}

.lady-text .number-set .lady-number {
	width: 200px;
	height: auto;
	position: absolute;
	right: 10px;
	bottom: 10px;
}


/* contents1 */
/* ===============================
STORY SECTION  — full CSS
背景：ダマスク＋薄い黒のオーバーレイ
PC：左 縦書きタイトル／右 写真／下 本文
SP：タイトル→写真→本文の縦並び
================================= */

/* セクション全体（背景と余白） */
.story {
	--ink: #e9e3dc;
	/* 本文用の明るめ文字色 */
	--ink-soft: #a48466;
	/* タイトル用の少し淡い色 */
	--maxw: 1200px;
	/* コンテンツ最大幅 */

	position: relative;
	/* padding: clamp(40px, 1vw, 80px) 16px; */
	color: var(--ink);
}

.lady-card-main2 .story {
	--ink: #333;
}

/* 中央揃えのラッパー */
.story__inner {
	max-width: var(--maxw);
	margin: 0 auto;
	display: grid;
	grid-template-rows: auto auto;
	/* 上部ヘッダー／本文 */
	row-gap: clamp(18px, 3vw, 28px);
}

/* ===============================
上部：タイトル＋写真のセット
PC：タイトル(縦書き) 80px + 画像 1fr
================================= */
.story__header {
	display: flex;
	align-items: flex-start;
	gap: 2vw;
}

.story__header.fast {}

.story__header.fast .story__title {
	font-size: 40px;
}

.story__header.fast .title-set {
	width: auto;
}

.story__header.fast .story__image {
	width: auto;
	max-width: 750px;
	margin-right: 0;
}

.title-set {
	width: 50%;
	max-width: 550px;
	margin: 0;
	font-family: 'Zen Old Mincho', serif;
}

.title-set p.set1 {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	margin-bottom: 20px;
}

.title-set p.set1 span {
	display: block;
	background: #a48466;
	padding: 11px;
	color: #fff;
	font-family: 'Zen Old Mincho', serif;
	font-size: 20px;
}

.title-set p.set2 {
	font-family: 'Zen Old Mincho', serif;
	font-size: 20px;
}

/* 縦書きタイトル */
.story__title {
	width: auto;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	font-family: 'Zen Old Mincho', serif;
	font-size: 30px;
	letter-spacing: .12em;
	line-height: 1.9;
	color: var(--ink-soft);
	/* margin: 0 2vw 0 5vw; */
	position: relative;
	padding-block: 8px;
}

.story__title.yoko {
	writing-mode: unset;
	display: block;
}

.sp-title .story__title.yoko {
	display: none;
}

/* 画像枠 */
.story__image {
	width: 50%;
	margin: 0 auto;
	margin-bottom: auto;
	max-width: 750px;
}

.story__image picture,
.story__image img {
	display: block;
	width: 100%;
	height: auto;
}

/* ===============================
下部：本文
================================= */
.story__text {
	margin-top: 50px;
}

.story__text p.manager {
	text-align: right;
	width: fit-content;
	margin-left: auto;
}

.story__text p.manager span {
	display: block;
	color: #5b241d;
}

.story__text p.manager span:nth-of-type(1) {
	font-size: 20px;
	line-height: 1.5;
	text-align: left;
	width: fit-content;
	padding-bottom: 10px;
}

.story__text p.manager span:nth-of-type(2) {
	font-size: 30px;
	line-height: 1;
	width: fit-content;
}


.story__text p {
	margin: 0 auto;
	font-family: 'Zen Old Mincho', serif;
	line-height: 2.1;
	font-size: 20px;
	color: var(--ink);
	width: 100%;

}

.story__text p {
	margin: 0 0 1.2em;
}

.story__text p:last-of-type {
	margin-bottom: 0;
}

.story__text p strong {
	color: #fff;
	font-weight: 600;
}

.story__text p span {
	color: var(--ink);
}


.story__header.flex {}

.story__header.flex .story__text {
	width: 50%;
}

.story__header.flex .story__image {
	width: 50%;
}

.story__header.river {
	flex-direction: row-reverse;
}

.story__header.river .story__title {
	/* margin: 0 5vw 0 2vw; */
}

.sine {
	width: 20%;
	text-align: right;
	margin-left: auto;
}

/* ===============================
レスポンシブ（スマホ）
タイトル横書き化・縦並び・余白調整
================================= */
@media (max-width: 725px) {


	/* .story__title {
		writing-mode: horizontal-tb;
		text-orientation: initial;
		text-align: center;
		font-size: 16px;
	} */

	/* 金線を横向きのセンターラインに */
	.story__title::before,
	.story__title::after {
		width: 28px;
		height: 1px;
		left: 50%;
		transform: translateX(-50%);
	}

	.story__title::before {
		top: -8px;
	}

	.story__title::after {
		bottom: -8px;
	}

	.story__image {
		width: 100%;
		margin: 0 auto 4px;
	}

	.title-set {
		width: 100%;
		max-width: none;
	}

	.story__text {
		padding: 0 4px;
	}
}

/* さらに小さい端末の余白微調整（任意） */
@media (max-width: 430px) {


	.story__title {
		font-size: 15px;
	}
}


.area {
	width: 60%;
	max-width: 1080px;
	display: flex;
	flex-wrap: wrap;
	gap: 50px 50px;
	justify-content: center;
	padding: 6px 0;
	margin: 0 auto;
}

.area a {
	display: block;
	width: calc(100% / 3.5);
	border-radius: 12px;
	overflow: hidden;
}

.date {
	width: 80%;
	margin: 0 auto;
	max-width: 1000px;
}

.page_title.sub03,
.page_title.sub04 {
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
	padding-left: 15%;
}

.page_title.sub03 .sub-titel,
.page_title.sub04 .sub-titel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: fit-content;
}

.page_title.sub03 h2,
.page_title.sub04 h2 {
	text-align: center;
	width: fit-content;
}


.blog {
	width: auto;
	max-width: 1100px;
	margin: 100px auto 200px;
}

/* スタップブログ */
.blog-list {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	width: auto;
}

/* 各行 */
.blog-list__item {
	position: relative;
	padding: 14px 48px 14px 0;
	/* 右にアイコン分の余白 */
	border-bottom: 1.5px solid #a48466;
	/* 上の細線 */
}

/* .blog-list__item:last-child {
	border-bottom: 1px solid #d7c6b7;
} */

/* 行の中身（横並び） */
.blog-list__link {
	display: grid;
	grid-template-columns: 110px 1fr;
	/* 左：日付 / 右：タイトル */
	align-items: center;
	gap: 16px;
	/* text-decoration: none; */
	color: #6b6b6b;
	/* 本文色 */
}

/* 日付 */
.blog-list__date {
	font-family: "Zen Old Mincho", serif;
	/* 雰囲気に合わせて */
	font-size: 12px;
	letter-spacing: .02em;
	color: #7f7f7f;
}

/* タイトル */
.blog-list__title {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: .02em;
	color: #6b6b6b;
}

/* 右端の丸アイコン（画像バージョン） */
.blog-list__item::after {
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	width: 16px;
	/* 画像サイズに合わせて調整 */
	height: 16px;
	transform: translateY(-50%);
	background-image: url("../images/page/02-02/btn.png");
	background-size: contain;
	/* 画像の比率を維持 */
	background-repeat: no-repeat;
	background-position: center;
}

/* もっと見る */
.blog-list__more {
	width: auto;
	max-width: 1100px;
	margin: 0 auto;
	margin-top: 60px;
}

.btn-more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6b3b2a;
	text-decoration: none;
	position: relative;
	front-size: 16px;
}

.btn-more__dot {
	display: inline-block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: radial-gradient(circle at 30% 30%, #6b3b2a 0 40%, #4a2318 60% 100%);
	box-shadow: 0 0 0 2px #e5d7ca inset;
}

/* もっと見る先頭の丸アイコンを画像にする */
.btn-more__dot {
	display: inline-block;
	width: 24px;
	/* 画像サイズに合わせて */
	height: 24px;
	background-image: url("../images/page/02-02/btn.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* .btn-more:hover {
	opacity: .85;
} */


.br-pc {
	display: block;
}

.br-sp {
	display: none;
}




/* タブレット対応 */
@media screen and (max-width: 1080px) {
	#awordfromthemanager .page_title {
		margin-bottom: 0;
	}

	#awordfromthemanager .page_title h2 {
		font-size: 60px;
		font-family: zen;
		color: #333;
		font-family: 'Zen Old Mincho', serif;
	}

	#awordfromthemanager .lady-card {
		/* flex-direction: column; */
		margin: 0 40px;
		margin-bottom: 100px;
	}

}

@media screen and (max-width: 725px) {
	#awordfromthemanager .sp_mode {
		display: block;
	}

	#awordfromthemanager .page_title {
		display: none;
	}

	#awordfromthemanager .page_title.spdis {
		display: block;
	}

	#awordfromthemanager .page_title.spdis .sub-titel h2 span {
		font-size: 30px;
		line-height: 40px;
	}

	#awordfromthemanager .page_title.spdis .sub-titel span {
		font-size: 15px;
		line-height: 30px;
	}

	#awordfromthemanager .page_title_sp {
		display: block;
	}

	#awordfromthemanager .lady-card-main {
		padding: 100px 0 100px;
	}

	#awordfromthemanager .lady-card {
		margin: 60px 20px;
		margin-top: 0;
	}

	#awordfromthemanager .lady-card:last-child {
		margin-bottom: 0;
	}

	.lady-profile {
		display: flex;
		gap: 40px;
		align-items: flex-start;
		padding: 0px;
		flex-direction: column;
	}

	.lady-card:nth-child(odd) .lady-profile {
		flex-direction: column;
	}

	.lady-image {
		width: 100%;
	}

	.lady-text .number-set .lady-number {
		width: 30vw;
	}

	.lady-text h3 {
		font-size: 6vw;
		line-height: 1.2;
		margin-bottom: 7px;
	}

	.lady-text p {
		font-size: 16px;
	}

	.lady-text p span {
		font-size: 14px;
	}

	.br-pc {
		display: none;
	}

	.br-sp {
		display: block;
	}

	.story__title {
		/* font-size: clamp(16px, 2vw, 30px); */
		font-size: 20px;
		letter-spacing: 0px;
		margin: 0 auto;
	}

	.story__header.river .story__title {
		margin: 0 auto;
	}

	.story {
		padding: 15px 0px;
	}

	.story__text p {
		font-size: 16px;
	}

	.story__header {
		grid-template-columns: 1fr;
		row-gap: 12px;
		align-items: flex-start;

	}

	.story__header.set3 {
		flex-direction: column-reverse;
	}

	.story__header.flex {
		flex-direction: column-reverse;
	}

	.story__header.flex .story__image {
		width: 100%;
	}

	.story__header.flex .story__text {
		width: 100%;
	}

	.area {
		flex-direction: column;
		width: 100%;
	}

	.area a {
		width: 100%;
	}

	.blog-list__link {
		/* grid-template-columns: 65px 1fr; */
		grid-template-columns: none;
		grid-template-rows: auto auto;
		/* 上下2行 */
		gap: 4px;
		/* 行間調整 */
	}

	.blog-list {
		margin: 0 15px;
	}

	.blog-list__more {
		margin: 20px 15px;
	}

	.blog {
		margin: 10px auto 20px;
	}

	.page_title_sp p {
		margin: 0 auto;
	}

	#awordfromthemanager .page_title_sp .sub-titel {
		text-align: center;
	}

	#awordfromthemanager .page_title_sp {
		padding: 15% 0;
	}

	.blog-list__item::after {
		width: 30px;
		height: 30px;
	}

	.btn-more__dot {
		width: 30px;
		height: 30px;
	}


	#awordfromthemanager .lady-card-main2 {
		padding: 50px 0 100px;
	}

	#awordfromthemanager .lady-card-main3 {
		padding: 50px 0 100px;
	}

	#awordfromthemanager .lady-card-main4 {
		padding: 50px 0 100px;
	}

	.story__header.river {
		flex-direction: column-reverse;
	}

	.story__title.yoko {
		display: none;
	}

	.sp-title .story__title.yoko {
		display: block;
	}

	.story__header.fast .story__title {
		font-size: 20px;
	}

	.title-set p.set1 span {
		font-size: 15px;
	}

}

@media screen and (max-width: 570px) {
	#awordfromthemanager.lady-card {
		margin: 0 20px;
		margin-bottom: 80px;
	}

	#awordfromthemanager .page_title_sub h3 span {
		font-size: 30px;
	}

	#awordfromthemanager .page_title_sub span {
		font-size: 16px;
	}

	#awordfromthemanager .page_title_sp {
		padding: 10% 0;
	}

	#awordfromthemanager .page_title_sp h2 {
		font-size: 35px;
	}

	#awordfromthemanager .page_title_sp span {
		font-size: 14px;
	}


}

.lady-card-main {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/* background: #fff; */

	background-image: url("../images/page/03/back-image.png");
	background-size: cover;
	background-repeat: no-repeat;
	/* background-position: center center; */
	padding: 220px 0 200px;
	z-index: 9999;
	padding: 20px;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2);
	width: 90%;
	max-width: 90%;
	max-height: 90%;
	overflow-y: auto;
  }

@media screen and (max-width: 725px) {
	.lady-card-main {
		padding: 80px 0 40px;
	}

	.popup-close {
		top: 30px !important;
	}
}

body.no-scroll {
	overflow: hidden;
	position: fixed;
	width: 100%;
  }


      /* ==========================
           ヘッダー・ナビ差分
    =========================== */

    a:hover {
        text-decoration: none;
    }

    /* sticky-top に高さや余白を追加 */
    .sticky-top {
        height: 100px;
        justify-content: space-between;
        padding: 0 40px;
        background: unset;
    }

    /* logo のフレックス化 */
    .logo {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .logo a {
        /* background: url(images/common/logo.png) no-repeat center left / 100% auto; */
        width: 154px;
        height: 60px;
    }

    /* ナビの中央寄せ & 間隔追加 */
    .main_nav {
        justify-content: center;
        align-items: center;
        gap: 40px;
    }

    /* li を auto 幅に */
    .main_nav li {
        width: auto;
        border-bottom: none;
    }

    /* トグルボタンを丸型＋装飾 */
    .main_nav li.nav_toggle_btn {
        width: 70px;
        height: 70px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        background: #fdf5ec;
    }

    .main_nav li.nav_toggle_btn::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: 50%;
        padding: 3px;
        background: conic-gradient(from 0deg,
                #d4af37,
                #f5e089,
                #fff8dc,
                #f5e089,
                #d4af37);
        -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
        mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
        pointer-events: none;
    }

    /* リンクの書体・色 */
    .main_nav li a {
        color: #333333 !important;
        font-family: 'Zen Old Mincho', serif;
    }

    .menu-trigger {
        z-index: 10001;
    }

    /* ハンバーガーボタン線色 */
    .menu-trigger span {
        background-color: #460000;

    }

    /* サイドナビ開閉の動作変更 */
    /* nav {
    right: -300px;
} */

    /* nav.open {
    left: 50%;
    transform: translateX(-50%);
} */

    /* オーバーレイのフェード */
    .overlay {
        transition: opacity .5s;
    }

    /* ==========================
           ページタイトル周り
    =========================== */

    .page_title {
        /* padding: 7% 0; */
        padding: 4vw 0 2vw;
        background-repeat: no-repeat;
        background-size: cover;
        text-align: left;
        padding-left: 15%;
    }

    .page_title h2 {
        /* font-size: 60px; */
        font-size: clamp(32px, 4.5vw, 80px);
        color: #333;
        font-family: 'Zen Old Mincho', serif;
    }

    .page_title h2 span {
        font-size: ;
        font-size: clamp(16px, 2vw, 30px);
    }

    .page_title p {
        width: 30vw;
        max-width: 700px;
    }

    .page_title p {
        width: 30vw;
        max-width: 700px;
    }

    .sub-titel.mine p {
        width: 35vw;
        max-width: 500px;
    }

    .page_title span {
        font-family: 'Montserrat', sans-serif;
        font-weight: 200;
        font-size: clamp(16px, 2vw, 25px);
        letter-spacing: 5px;
    }

    /* SP 用ページタイトル */
    .page_title_sp {
        padding: 7% 0;
        background-repeat: no-repeat;
        background-size: cover;
        text-align: left;
        padding-left: 40px;
    }

    .page_title_sp h2 {
        font-size: 60px;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
    }

    .page_title_sp span {
        font-family: 'Montserrat', sans-serif;
        font-weight: 200;
        font-size: 25px;
        letter-spacing: 5px;
    }

    @media screen and (max-width: 720px) {
        .logo {
            justify-content: flex-start;
        }
    }

    @media screen and (max-width: 570px) {
        .page_title_sp {
            padding-left: 20px;
        }
    }

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

    footer {
        background-color: #f2efe9;
    }

    /* ロゴ部分をフレックスに */
    .footer_logo {
        width: 30%;
        max-width: 300px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 15px;
        margin-right: 105px;
    }

    /* メニュー1 */
    .footer_mene1 {
        width: 40%;
        max-width: 360px;
        margin-right: 40px;
        margin-top: 2px;
    }

    .footer_mene1 p.footer_mene1_title {
        display: inline-flex;
        align-items: center;
        font-family: 'Zen Old Mincho', serif;
        color: #5b241d;
        font-size: 30px;
        margin-bottom: 30px;
    }

    .footer_mene1 p.footer_mene1_title::after {
        content: "";
        flex: 1;
        height: 2px;
        background-color: #a48466;
        margin-left: 10px;
    }

    .footer_mene1 .footer_mene1_text {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 15px;
    }

    .footer_mene1 .footer_mene1_text ul {
        display: flex;
        flex-direction: column;
        gap: 40px;
    }

    /* メニュー2 */
    .footer_mene2 {
        width: 30%;
        margin-top: 32px;
    }

    .footer_mene2 ul.footer_mene2_text li {
        border-top: 2px solid #a48466;
        padding: 22px 0;
        position: relative;
        font-family: 'Zen Old Mincho', serif;
    }

    .footer_mene2 ul.footer_mene2_text li::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        width: 30px;
        height: 30px;
        background-image: url("../images/common/icon-01.png");
        background-size: contain;
        background-repeat: no-repeat;
    }

    .footer_mene2 ul.footer_mene2_text li:last-child {
        border-bottom: 2px solid #a48466;
    }

    /* コピーライト */
    .copy {
        background: #5b241d;
        line-height: 2rem;
        font-size: 14px;
        font-family: 'Noto Sans JP', sans-serif;
    }

    /* ページトップボタン位置変更 */
    #page-top {
        top: 110px;
        right: 50px;
    }

    #page-top a {
        width: 10px;
        display: block;
    }

    /* ==========================
           プロポーション関連
    =========================== */

    .balance .check {
        width: 260px;
    }

    .check01 {
        left: 0%;
        top: 20%;
    }

    .check02 {
        left: 0%;
        top: 35%;
    }

    .check03 {
        left: 0%;
        top: 50%;
    }

    .check04 {
        left: 0%;
        bottom: 5%;
    }

    .check05 {
        right: 0%;
        top: 25%;
    }

    .check06 {
        right: 0%;
        top: 55%;
    }

    .check07 {
        right: 0%;
        bottom: 15%;
    }

    .vmiwoerjfoa.pc-only {
        display: flex !important;
    }

    .vmiwoerjfoa.sp-only {
        display: none !important;
    }


    /* ===== SPドロワー最優先オーバーライド（styleの一番下に貼る） ===== */

    /* 旧 left/transform を無効化して右スライドに統一 */
    .sp-only nav {
        position: fixed !important;
        top: 0 !important;
        right: -100vw !important;
        /* 閉：画面外（十分に外へ） */
        left: auto !important;
        /* ← 旧指定の打ち消し */
        transform: none !important;
        /* ← 旧指定の打ち消し */
        width: 100% !important;
        height: 100dvh !important;
        overflow-y: auto !important;
        z-index: 1001 !important;
        /* ヘッダーより前に */
        transition: right .3s ease !important;
    }

    /* 開：右0 に固定（left/transform は使わない） */
    .sp-only nav.open {
        right: 0 !important;
        left: auto !important;
        transform: none !important;
    }

    /* オーバーレイは nav の一段下に */
    .overlay {
        position: fixed !important;
        inset: 0 !important;
        background: rgba(0, 0, 0, .45) !important;
        opacity: 0;
        pointer-events: none;
        transition: opacity .3s ease;
        z-index: 1000 !important;
    }

    .overlay.show {
        opacity: 1;
        pointer-events: auto;
    }

    /* メニュー展開中は背面スクロール禁止（任意） */
    body.nav-open {
        overflow: hidden !important;
    }



    @media screen and (max-width: 720px) {
        .vmiwoerjfoa.pc-only {
            display: none !important;
        }

        .vmiwoerjfoa.sp-only {
            display: flex !important;
            width: 100%;
            padding: 0 20px;
        }
    }

    nav.open {
        padding: 0px 3%;
    }

    .open .container {
        padding-right: 0px;
        padding-left: 0px;
    }

    .open .col-md-12-1 {
        padding-top: 0;
    }

    .open .footer_mene1 {
        width: 100%;
    }

    .open .footer_logo {
        width: 50%;
        margin-left: 0;
        margin-right: auto;
        margin-top: 20px;
    }

    .open .footer_mene1 .footer_mene1_text ul {
        gap: 10px;
        margin-bottom: 0;
    }

    .main_nav .open li a {
        font-size: 14px;
        text-align: center;
        width: fit-content;
        display: block;
    }

    .open .footer_mene1 p.footer_mene1_title {
        font-size: 20px;
    }

    .open .footer_mene1 p.footer_mene1_title::after {
        width: 50%;
    }

    .open .footer_mene1 .footer_mene1_text ul li {
        padding: 0.5rem 0;
    }

    .open .sp_btm_set {
        margin-top: 30px;
        gap: 15px;
    }

    .open .footer_mene2_text li::after {
        display: none;
    }

    .open .footer_mene2 ul.footer_mene2_text {
        flex-direction: row;
    }

    .open .footer_mene2 ul.footer_mene2_text li:last-child {
        /* border-bottom: unset; */
        border-right: 1px solid #A48466 !important;
    }

    .open .footer_mene2 ul.footer_mene2_text li {
        width: calc(100% / 4);
        border-top: unset;
        border: 1px solid #a48466;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 10px 0;
    }

    .open .footer_mene2 {
        width: 100%;
        margin-top: 20px;
    }


    /* 透明ナビ */
    .sticky-top.transparent {
        background: transparent;
        transition: background 0.3s ease;
    }

    /* 白ナビ */
    .sticky-top.white {
        background: #fff;
        transition: background 0.3s ease;
    }

    @media screen and (max-width: 720px) {
        .footer_mene1 {
            width: 90%;
            max-width: unset;
            margin: 0 auto;
            /*margin-right: 40px;
        margin-top: 2px; */
        }

        .footer_mene2 {
            width: 90%;
            max-width: unset;
            margin-top: 60px;
        }

        #page-top {
            display: none !important;
        }

        .footer_mene1 .footer_mene1_text ul li {
            font-size: 14px;
        }

        .footer_logo {
            width: 70%;
            margin-right: 0;
            margin-bottom: 60px;
        }
    }

    #entry,
    #staffInterviews,
    #staff,
    #support,
    #workstyle,
    #candidate,
    #carrierup {
        scroll-margin-top: 100px;
        /* 上から50px余白を残してスクロール */
    }


    .entry-fab {
        position: fixed;
        right: clamp(12px, 2.5vw, 28px);
        bottom: calc(clamp(12px, 2.5vw, 28px) + env(safe-area-inset-bottom, 0px));
        /* iPhone下部余白 */
        z-index: 10;
        display: inline-block;
        text-decoration: none;
        line-height: 0;
        /* 画像の下余白対策 */
    }

    .entry-fab picture,
    .entry-fab img {
        display: block;
        width: 80%;
        margin: 0 auto;
        height: auto;
    }

    /* PCは少し大きく */
    @media (min-width: 769px) {

        .entry-fab picture,
        .entry-fab img {
            width: clamp(72px, 8vw, 220px);
        }
    }

    /* ホバーアニメはポインタがある環境だけ */
    @media (hover:hover) {
        .entry-fab {
            transition: transform .15s ease, filter .15s ease;
        }

        .entry-fab:hover {
            transform: translateY(-2px) scale(1.03);
            filter: drop-shadow(0 6px 12px rgba(0, 0, 0, .18));
        }
    }

    .pc_btm_set {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 20px;
    }

    ul.foot_btn li {
        width: calc(100% / 5);
        max-width: unset;
    }

    @media only screen and (max-width: 720px) {
        .pc_btm_set {
            display: none;
        }

        #vmaiwerjv li {
            text-align: center;
            width: auto;
            max-width: 120px;
        }

        ul.foot_btn {
            margin-bottom: 0px !important;
        }

        .col-md-12.set03 {
            margin-bottom: 80px;
        }
    }

    /*==========================
WorkStyle
==============================*/
    a:hover {
        text-decoration: none;
    }

    .wrapper {}

    .page_title {
        background-image: url("../images/page/01/01-main-title_img-bk.png");
    }

    .page_img_sp {
        background-image: url("../images/page/01/01-main-title_img-bk_sp.png");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        aspect-ratio: 1.872;
    }

    .lady-card-main {
        /* background-image: url("../images/page/01/content-1-bk-img.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        padding: 100px 0 100px; */
    }

    .lady-card-main2 {
        background-image: url("../images/page/01/content-02-bk.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        padding: 100px 0 100px;
    }

    .lady-card-main3 {
        background-image: url("../images/page/01/content-3-bk-img.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        padding: 100px 0 200px;
    }

    .lady-card-main4 {
        background-image: url("../images/page/01/content-4-bk-img.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        padding: 100px 0 300px;
    }


    .page_title.sub03 {
        background-image: url("../images/page/01/sub-title-01.png");
        padding: 100px 0 100px;
        height: 12vw;
        display: flex;
    }

    .page_title.sub04 {
        background-image: url("../images/page/01/sub-title-02.png");
        padding: 100px 0 100px;
        height: 12vw;
        display: flex;
    }

    .page_title.sub05 {
        background-image: url("../images/page/01/sub-title-03.png");
        padding: 100px 0 100px;
        height: 12vw;
        display: flex;
    }

    .page_title.sub06 {
        background-image: url("../images/page/01/sub-title-04.png");
        padding: 100px 0 100px;
        height: 12vw;
        display: flex;
    }

    .page_img_sp.sub03 {
        background-image: url("../images/page/01/sub-title-01-sp.png");
    }

    .page_img_sp.sub04 {
        background-image: url("../images/page/01/sub-title-02-sp.png");
    }

    .page_img_sp.sub05 {
        background-image: url("../images/page/01/sub-title-03-sp.png");
    }

    .page_img_sp.sub06 {
        background-image: url("../images/page/01/sub-title-04-sp.png");
    }

    .sp_mode {
        display: none;
    }

    .page_title_sp {
        display: none;
    }

    .page_title_sub {
        /* padding: 7% 0; */
        background-repeat: no-repeat;
        background-size: cover;
        text-align: left;
    }

    .page_title_sub h3 {
        font-size: clamp(26px, 3vw, 36px);
        font-family: 'Zen Old Mincho', serif;
        color: #2b2b2b;
        margin-bottom: 10px;
    }

    .page_title_sub h3 span {
        font-size: 60px;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
    }

    .page_title_sub p {
        width: 80%;
        max-width: 800px;
    }

    .page_title_sub span {
        font-family: 'Montserrat', sans-serif;
        font-weight: 200;
        font-size: 25px;
        letter-spacing: 5px;
    }

    .page_title {
        margin-bottom: 0;
        padding-left: 0;
    }

    .page_title.sub01 .sub-titel {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: fit-content;
        margin: 0 auto;
    }

    .page_title.sub01 .sub-titel h2 {
        text-align: center;
        width: fit-content;
    }

    .page_title.sub01 .sub-titel h2 span {
        display: block;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
        line-height: 80px;
        font-size: 60px;
    }


    .page_title.sub01 .sub-titel span {
        font-family: 'Montserrat', sans-serif;
        font-weight: 300;
    }

    .page_title.sub01 .sub-titel h2 span.small {
        display: inline;
        font-size: 40px;
    }

    .page_title.sub01 .sub-titel p {
        width: 90%;
    }


    .lady-card {
        width: auto;
        max-width: 1200px;
        margin: 50px auto;
        /* margin-bottom: 100px; */
    }

    .lady-profile {
        display: flex;
        gap: 40px;
        align-items: flex-start;
        flex-direction: column;
        padding: 60px 40px;
        font-family: 'Zen Old Mincho', serif;
    }

    .lady-card:nth-child(odd) .lady-profile {
        /* flex-direction: row-reverse; */
    }

    .lady-image {
        width: 50%;
        max-width: 520px;
    }

    .lady-text {
        flex: 1;
        color: #fff;
        font-size: 15px;
        line-height: 2;
    }

    .lady-text h3 {
        margin-bottom: 16px;
        line-height: 1.5;
        font-family: 'Zen Old Mincho', serif;
        color: #5b241d;
        font-size: 30px;
    }

    .lady-text h3 small {
        display: block;
        color: #5b241d;
        font-weight: 100;
        margin-top: 4px;
        font-family: 'Zen Old Mincho', serif;
        color: #5b241d;
        font-size: 20px;
    }

    .lady-text h3 small span {
        font-size: 30px;
    }

    .lady-text p {
        margin-bottom: 1em;
        font-size: 20px;
        line-height: 2.0;
    }

    .lady-text .number-set {
        position: relative;
    }

    .lady-text .number-set p.border-set {
        border-bottom: 2px solid #a48466;
    }

    .lady-text .number-set .lady-number {
        width: 200px;
        height: auto;
        position: absolute;
        right: 10px;
        bottom: 10px;
    }


    /* contents1 */
    /* ===============================
   STORY SECTION  — full CSS
   背景：ダマスク＋薄い黒のオーバーレイ
   PC：左 縦書きタイトル／右 写真／下 本文
   SP：タイトル→写真→本文の縦並び
================================= */

    /* セクション全体（背景と余白） */
    .story {
        --ink: #e9e3dc;
        /* 本文用の明るめ文字色 */
        --ink-soft: #a48466;
        /* タイトル用の少し淡い色 */
        --maxw: 1200px;
        /* コンテンツ最大幅 */

        position: relative;
        /* padding: clamp(40px, 6vw, 80px) 16px; */
        color: var(--ink);
    }

    .lady-card-main2 .story {
        --ink: #333;
    }

    /* 中央揃えのラッパー */
    .story__inner {
        max-width: var(--maxw);
        margin: 0 auto;
        display: grid;
        grid-template-rows: auto auto;
        /* 上部ヘッダー／本文 */
        row-gap: clamp(18px, 3vw, 28px);
    }

    /* ===============================
   上部：タイトル＋写真のセット
   PC：タイトル(縦書き) 80px + 画像 1fr
	================================= */
    .story__header {
        display: flex;
        align-items: center;
        gap: 3vw;
    }

    /* 縦書きタイトル */
    .story__title {
        width: auto;
        writing-mode: vertical-rl;
        text-orientation: mixed;
        font-family: 'Zen Old Mincho', serif;
        font-size: 30px;
        letter-spacing: .12em;
        line-height: 1.9;
        color: var(--ink-soft);
        margin: 0 2vw 0 5vw;
        position: relative;
        padding-block: 8px;
    }

    /* 画像枠 */
    .story__image {
        width: 70%;
        margin: 0 auto;
        margin-bottom: auto;
        max-width: 750px;
    }

    .story__image picture,
    .story__image img {
        display: block;
        width: 100%;
        height: auto;
    }

    /* ===============================
   下部：本文
================================= */
    .story__text p {
        margin: 0 auto;
        font-family: 'Zen Old Mincho', serif;
        line-height: 2.1;
        font-size: 20px;
        color: var(--ink);
        width: 100%;
    }

    .story__text p {
        margin: 0 0 1.2em;
    }

    .story__text p:last-of-type {
        margin-bottom: 0;
    }

    .story__text p strong {
        color: #fff;
        font-weight: 600;
    }

    .story__text p span {
        color: var(--ink);
    }


    .story__header.flex {}

    .story__header.flex .story__text {
        width: 50%;
    }

    .story__header.flex .story__image {
        width: 50%;
    }

    .story__header.river {
        flex-direction: row-reverse;
    }

    .story__header.river .story__title {
        margin: 0 5vw 0 2vw;
    }

    .sine {
        width: 20%;
        text-align: right;
        margin-left: auto;
    }

    /* ===============================
   レスポンシブ（スマホ）
   タイトル横書き化・縦並び・余白調整
================================= */
    @media (max-width: 725px) {


        /* .story__title {
			writing-mode: horizontal-tb;
			text-orientation: initial;
			text-align: center;
			font-size: 16px;
		} */

        /* 金線を横向きのセンターラインに */
        .story__title::before,
        .story__title::after {
            width: 28px;
            height: 1px;
            left: 50%;
            transform: translateX(-50%);
        }

        .story__title::before {
            top: -8px;
        }

        .story__title::after {
            bottom: -8px;
        }

        .story__image {
            margin: 0 auto 4px;
        }

        .story__text {
            padding: 0 4px;
        }
    }

    /* さらに小さい端末の余白微調整（任意） */
    @media (max-width: 430px) {


        .story__title {
            font-size: 15px;
        }
    }


    .area {
        width: 60%;
        max-width: 1080px;
        display: flex;
        flex-wrap: wrap;
        gap: 50px 50px;
        justify-content: center;
        padding: 6px 0;
        margin: 0 auto;
    }

    .area a {
        display: block;
        width: calc(100% / 3.5);
        border-radius: 12px;
        overflow: hidden;
    }

    .date {
        width: 80%;
        margin: 0 auto;
        max-width: 1000px;
    }

    .page_title.sub03,
    .page_title.sub04,
    .page_title.sub05,
    .page_title.sub06 {
        padding: 7% 0;
        background-repeat: no-repeat;
        background-size: cover;
        text-align: left;
        padding-left: 15%;
    }

    .page_title.sub03 .sub-titel,
    .page_title.sub04 .sub-titel,
    .page_title.sub05 .sub-titel,
    .page_title.sub06 .sub-titel {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: fit-content;
    }

    .page_title.sub03 h2,
    .page_title.sub04 h2,
    .page_title.sub05 h2,
    .page_title.sub06 h2 {
        text-align: center;
        width: fit-content;
    }


    .blog {
        width: auto;
        max-width: 1100px;
        margin: 100px auto 200px;
    }

    /* スタップブログ */
    .blog-list {
        list-style: none;
        margin: 0 auto;
        padding: 0;
        width: auto;
    }

    /* 各行 */
    .blog-list__item {
        position: relative;
        padding: 24px 48px 24px 0;
        /* 右にアイコン分の余白 */
        border-bottom: 1.5px solid #a48466;
        /* 上の細線 */
    }

    /* .blog-list__item:last-child {
		border-bottom: 1px solid #d7c6b7;
	} */

    /* 行の中身（横並び） */
    .blog-list__link {
        display: grid;
        grid-template-columns: 110px 1fr;
        /* 左：日付 / 右：タイトル */
        align-items: center;
        gap: 16px;
        /* text-decoration: none; */
        color: #6b6b6b;
        /* 本文色 */
    }

    /* 日付 */
    .blog-list__date {
        font-family: "Zen Old Mincho", serif;
        font-size: 16px;
        letter-spacing: .02em;
        color: #7f7f7f;
    }

    /* タイトル */
    .blog-list__title {
        font-size: 16px;
        line-height: 1.9;
        letter-spacing: .02em;
        color: #6b6b6b;
    }

    /* 右端の丸アイコン（画像バージョン） */
    .blog-list__item::after {
        content: "";
        position: absolute;
        right: 16px;
        top: 50%;
        width: 30px;
        /* 画像サイズに合わせて調整 */
        height: 30px;
        transform: translateY(-50%);
        background-image: url("../images/page/01/btn.png");
        background-size: contain;
        /* 画像の比率を維持 */
        background-repeat: no-repeat;
        background-position: center;
    }

    /* もっと見る */
    .blog-list__more {
        width: auto;
        max-width: 1100px;
        margin: 0 auto;
        margin-top: 100px;
        margin-left: 0;
        font-size: 20px;
    }

    .btn-more {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #6b3b2a;
        font-size: 20px;
        font-family: "Zen Old Mincho", serif;
    }

    .btn-more__dot {
        display: inline-block;
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background: radial-gradient(circle at 30% 30%, #6b3b2a 0 40%, #4a2318 60% 100%);
        box-shadow: 0 0 0 2px #e5d7ca inset;
    }

    /* もっと見る先頭の丸アイコンを画像にする */
    .btn-more__dot {
        display: inline-block;
        width: 40px;
        height: 40px;
        background-image: url("../images/page/01/btn.png");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .more__dot_texf {
        border-bottom: 2px solid #6b3b2a;
    }

    /* .btn-more:hover {
		opacity: .85;
	} */


    .br-pc {
        display: block;
    }

    .br-sp {
        display: none;
    }


    /* マダム麗奈独自のキャリアアップ */

    .workflow-section {
        background-image: url("../images/page/01/content-02-bk.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        padding: 100px 0 100px;
    }


    .workflow-section.set2 {
        background-image: url("../images/page/01/content-03-bk.png");
    }

    .workflow-section.set3 {
        background-image: unset;
        background-color: #fff;
    }

    .section {
        padding: 3vw 0 3vw;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 85%;
        max-width: 1200px;
    }

    .section-title {
        font-size: 18px;
        margin-bottom: 30px;
        position: relative;
        font-size: clamp(20px, 2.5vw, 35px);
        display: inline-block;
        /* padding-bottom: 20px; */
        color: #460000;
    }

    .section-title::after {
        content: '';
        display: block;
        width: 35vw;
        height: 30px;
        margin: 20px auto 0px;
        background-image: url("../images/page/03/line2.png");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
    }

    .card-wrapper {
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 20px;
    }

    .card-wrapper.v1 {
        flex-direction: column;
        gap: 120px;
        margin-top: 100px;
    }

    /* 2番目の .section にだけダミー要素追加 */
    .section:nth-of-type(3) .card-wrapper::before,
    .section:nth-of-type(3) .card-wrapper::after {
        content: "";
        display: block;
        /* ← これ重要。擬似要素を「要素化」 */
        flex: 1 1 0%;
        width: calc((100% / 3));
        max-width: 300px;
        /* .card-set の幅と揃える */
        height: 0;
        /* 見た目に影響なし */
    }

    .card-set {
        padding: 10px;
        width: calc(100% / 3);
        text-align: center;
        gap: 3vw;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .v1 .card-set {
        width: auto;
        display: flex;
        flex-direction: row;
    }

    .v1 .card-set .card-set-img {
        width: 45%;
        /* justify-content: space-between; */
        max-width: 500px;
        height: fit-content;

    }

    .v1 .card-set:nth-of-type(1) .card-set-img,
    .v1 .card-set:nth-of-type(2) .card-set-img,
    .v1 .card-set:nth-of-type(3) .card-set-img {
        position: relative;
    }

    .v1 .card-set:nth-of-type(1) .card-set-img::before,
    .v1 .card-set:nth-of-type(2) .card-set-img::before,
    .v1 .card-set:nth-of-type(3) .card-set-img::before {
        content: "";
        position: absolute;
        top: -35px;
        left: 15px;
        font-size: clamp(25px, 5.5vw, 80px);
        font-family: 'Montserrat', sans-serif;
        color: rgba(105, 121, 126, 0.6);
        line-height: 1;
        font-weight: 200;
        z-index: 2;
        background: transparent;
    }

    .v1 .card-set:nth-of-type(1) .card-set-img::before {
        content: "01";
    }

    .v1 .card-set:nth-of-type(2) .card-set-img::before {
        content: "02";
    }

    .v1 .card-set:nth-of-type(3) .card-set-img::before {
        content: "03";
    }

    .v1 .card-set .disp {
        width: 55%;
    }

    .disp h4 {
        font-size: 30px;
        font-family: 'Zen Old Mincho', serif;
        color: #5b241d;
        margin-bottom: 30px;
        text-align: left;
        line-height: 50px;
    }

    .disp p {
        font-size: 18px;
        font-family: 'Zen Old Mincho', serif;
        color: #333;
        line-height: 2;
        text-align: left;
        letter-spacing: 2px;
        margin-bottom: 30px;
    }

    .card-set .card-set-img {
        width: 100%;
        border-radius: 4px;
        position: relative;
    }

    .card-set-img span.en {
        font-size: clamp(25px, 2.5vw, 60px);
        font-family: 'Montserrat', sans-serif;
        color: rgba(105, 121, 126, 0.6);
        line-height: 1;
        font-weight: 200;
        position: absolute;
        bottom: -20px;
        right: 10px;
    }

    .content-name {
        margin-top: -70px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 20px;
        height: 130px;
        z-index: 1;
    }

    .card-set .content-name .en {
        font-size: clamp(25px, 3.5vw, 60px);
        font-family: 'Montserrat', sans-serif;
        color: rgba(105, 121, 126, 0.6);
        line-height: 1;
        font-weight: 200;
        margin-bottom: auto;
        text-align: left;
        display: flex;
        flex-direction: column;
    }

    .card-set .content-name .ja {
        font-size: clamp(15px, 1.7vw, 30px);
        font-family: 'Zen Old Mincho', serif;
        font-weight: 200;
        border-radius: 4px;
        background-color: #a48466;
        color: white;
        padding: 1vw 5px;
        margin-top: 5px;
    }

    .notice {
        text-align: left;
        margin: 0 auto;
        width: 85%;
        margin-bottom: 100px;
    }


    .workflow-section {
        text-align: center;
        padding: 80px 5%;
        font-family: 'Zen Old Mincho', serif;
    }

    .workflow-title h2 {
        font-size: clamp(28px, 5vw, 60px);
        position: relative;
        display: inline-block;
        padding-bottom: 10px;
    }

    .workflow-title h2 span {
        display: block;
    }

    .workflow-title h2 span.s1 {
        font-size: clamp(28px, 5vw, 60px);
    }

    .workflow-title h2 span.s2 {
        font-size: clamp(18px, 3vw, 40px);
    }

    .workflow-title h2::after {
        content: '';
        display: block;
        width: 500px;
        height: 30px;
        margin: 10px auto 5px;
        background-image: url("../images/page/03/line2.png");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
    }

    .workflow-title .subtitle {
        display: block;
        font-family: 'Montserrat', sans-serif;
        font-size: clamp(12px, 2.2vw, 30px);
        color: #999;
    }

    .sub-titel {
        width: 100%;
        text-align: left;
    }

    .sub-titel h3 {
        font-size: 60px;
        font-family: 'Zen Old Mincho', serif;
        color: #2b2b2b;
        margin-bottom: 10px;
    }

    .sub-titel h3 span {
        font-size: 50px;
        font-family: 'Zen Old Mincho', serif;
    }

    .sub-titel span.mine {
        font-family: 'Montserrat', sans-serif;
        font-weight: 200;
        font-size: 30px;
        letter-spacing: 5px;
    }

    .sub-titel p {
        width: 100%;
        max-width: 920px;
    }

    /* .sub-titel.mine p {
		max-width: 500px;
	} */

    .sub-text {
        width: auto;
        text-align: left;
        font-size: 20px;
        font-family: 'Zen Old Mincho', serif;
        color: #2b2b2b;
        margin-top: 30px;
        margin-bottom: 60px;
        margin-right: auto;
        line-height: 2;
    }

    .btn {
        width: auto;
        display: flex;
        justify-content: center;
        gap: 40px;
        margin: 100px 0;
    }

    .btn-all {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 40px;
    }

    .btn-all p {
        width: auto;
        max-width: 500px;
        margin: 0 auto;
    }

    .support-text {
        width: fit-content;
        max-width: 1200px;
        margin: 100px auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 20px;
    }

    .support-text p {
        width: fit-content;
        text-align: left;
        font-size: 20px;
        line-height: 40px;
        font-family: 'Zen Old Mincho', serif;
        color: #333;
    }

    /* .workflow-content {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 60px;
		gap: 60px;
		flex-wrap: wrap;
	} */

    /* .workflow-text {
		text-align: left;
		max-width: 400px;
		font-size: clamp(16px, 2vw, 20px);
		line-height: 2;
		color: #5c2b21;
	}

	.workflow-text p {
		font-size: 30px;
		line-height: 1.5;
	}

	.workflow-text hr {
		border: none;
		border-top: 1px solid #bba98f;
		margin: 5px 0px;
	} */

    /* .workflow-text .caption {
		font-size: 14px;
		color: #888;
		font-family: 'Montserrat', sans-serif;
		margin-top: 40px;
	} */

    /* .workflow-video .video-thumbnail {
		position: relative;
		width: 360px;
		max-width: 100%;
		border-radius: 10px;
		overflow: hidden;
	}

	.workflow-video img {
		width: 100%;
		display: block;
		border-radius: 10px;
	} */

    /* .video-overlay {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.35);
		color: #fff;
		font-size: clamp(14px, 2vw, 18px);
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		text-align: center;
	} */

    /* .play-button {
		margin-top: 10px;
		font-size: 32px;
		background: #fff;
		color: #000;
		width: 48px;
		height: 48px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
	} */

    /* .sub-text {
		margin-top: 100px;
		margin-bottom: 80px;
		font-size: clamp(15px, 1.5vw, 25px);
		color: #666;
	} */

    /* .highlight {
		background-color: #b89f7b;
		color: #fff;
		padding: 2px 6px;
		border-radius: 4px;
		font-size: clamp(15px, 1.5vw, 25px);
	} */


    /* あなたの魅力が輝く場所へ。 */
    /* ====== ベースの安定化 ====== */
    .contents-01 {
        position: relative;
    }

    .contents-01 .bk-img {
        position: relative;
        /* 既存 */
        overflow: hidden;
        /* はみ出し防止 */
    }

    .contents-01 .bk-img picture,
    .contents-01 .bk-img img {
        display: block;
        width: 100%;
        height: auto;
        /* 背景画像の縦つぶれ防止 */
    }

    /* ====== オーバーレイ（中央配置） ====== */
    .contents-01 .view-01 {
        width: 100%;
        /* max-width: 1200px; */
        position: absolute;
        z-index: 1;
        top: 35%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-top: 100px;
    }


    .contents-01 .view-02 {
        width: 30%;
        max-width: 200px;
        position: absolute;
        z-index: 2;
        top: 1%;
        left: 2%;
    }


    /* ====== 横並びレイアウト（PC） ====== */
    .contents-01 .view-01 section {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        gap: 40px;
        padding: 3% 0;
    }

    .contents-01 .view-01 section .view-01-text {
        width: 40%;
        min-width: 320px;
        margin-left: 10vw;
    }

    .contents-01 .view-01 section .view-01-img {
        width: 50%;
    }

    .contents-01 .view-01 section .view-01-text h2 {
        font-size: 60px;
        line-height: 1.5;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
        margin: 0;
    }

    .contents-01 .view-01 section .view-01-text h2 span {
        font-size: 40px;
    }

    .contents-01 .view-01 section .view-01-text .text {
        margin-top: 40px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .contents-01 .view-01 section .view-01-text .text p {
        font-size: 16px;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
        margin: 0;
        line-height: 36px;
    }

    /* ====== ボタンセット ====== */
    .btn-set {
        width: auto;
        display: flex;
        flex-direction: column;
        gap: 30px;
        /* margin-top: 40px; */
        margin-left: 17vw;
    }

    .btn-set a,
    .btn-set p {
        display: block;
        width: 90%;
        max-width: 520px;
    }

    .btn-set picture,
    .btn-set img {
        display: block;
        width: 100%;
        height: auto;
    }



    @media (max-width: 1425px) {

        .contents-01 .view-01 section .view-01-text h2 {
            font-size: 45px;
        }

        .contents-01 .view-01 section .view-01-text .text p {
            font-size: 15px;
            line-height: 26px;
        }

    }

    @media (max-width: 1320px) {
        .btn-set {
            width: auto;
            display: flex;
            flex-direction: row;
            gap: 30px;
            margin-left: 0;
            margin: 0 auto;
            flex-wrap: wrap;
            justify-content: center;
        }

        .btn-set picture,
        .btn-set img {
            width: 100%;
        }

        .btn-set a,
        .btn-set p {
            width: calc(100% / 2 - 30px);
        }
    }

    @media (max-width: 1300px) {
		.image-section {
			top: -20px;
			right: -20px;
			flex: 1;
		}
    }

    @media (max-width: 1200px) {

    }


    /* ====== SP最適化（～725px） ====== */
    @media (max-width: 725px) {

        .contents-01 .view-01 section {
            flex-direction: column-reverse;
            gap: 24px;
            padding: 10% 0 15%;
        }

        .contents-01 .view-01 section .view-01-text {
            width: calc(100%);
            min-width: 0;
            margin-left: 0;
            margin-top: -150px;
            z-index: 10;
        }

        .contents-01 .view-01 section .view-01-img {
            width: 60%;
            min-width: 0;
            margin: 0 auto;
            margin-right: 0;
        }

        .contents-01 .view-01 section .view-01-text h2 {
            font-size: clamp(28px, 7vw, 40px);
            padding-bottom: 50px;
        }

        .contents-01 .view-01 section .view-01-text h2 span {
            font-size: clamp(18px, 4.2vw, 24px);
        }

        .contents-01 .view-01 section .view-01-text .text {
            padding: 0 10px;
            margin-top: 24px;
            gap: 16px;
        }

        .contents-01 .view-01 {
            /* position: static; */
            transform: none;
            margin: 0 auto;
            padding: 24px 0px;
            top: 10%;
            left: 0%;

        }

        .btn-set {
            gap: 25px;
            margin-top: 0px;
            margin-left: 0;

        }

        .btn-set a,
        .btn-set p {
            width: 100%;
        }

        .sub-titel h3 {
            font-size: 30px;
        }

        .sub-titel h3 span {
            font-size: 20px;
            letter-spacing: 5px;
        }

        .sub-titel span.mine {
            font-size: 18px;
        }

        .section {
            width: 100%;
        }

        .card-wrapper {
            flex-direction: column;
        }

        .card-set {
            width: 100%;
            flex-direction: row-reverse;
        }
    }

    /* ====== PCの高解像度微調整（任意） ====== */
    @media (min-width: 1200px) {

        .contents-01 .view-01 section .view-01-text h2 span {
            font-size: 42px;
        }
    }

    /* タブレット対応 */
    @media screen and (max-width: 1080px) {
        .page_title {
            margin-bottom: 0;
        }

        .page_title h2 {
            /* font-size: 60px; */
            font-family: zen;
            color: #333;
            font-family: 'Zen Old Mincho', serif;
        }

        .lady-card {
            /* flex-direction: column; */
            margin: 0 40px;
            margin-bottom: 100px;
        }

    }

    @media screen and (max-width: 725px) {
        .sp_mode {
            display: block;
        }

        .page_title {
            display: none;
        }

        .page_title.sub03,
        .page_title.sub04,
        .page_title.sub05,
        .page_title.sub06 {
            display: none;
        }

        .page_title.spdis {
            display: block;
        }

        .page_title.spdis .sub-titel h2 span {
            font-size: 30px;
            line-height: 40px;
        }

        .page_title.spdis .sub-titel span {
            font-size: 15px;
            line-height: 30px;
        }

        .page_title_sp {
            display: block;
            padding-left: 0;
        }

        /* .lady-card-main {
            padding: 100px 0 100px;
        } */

        .lady-card {
            margin: 60px 20px;
            margin-top: 0;
        }

        .lady-card:last-child {
            margin-bottom: 0;
        }

        .lady-profile {
            display: flex;
            gap: 40px;
            align-items: flex-start;
            padding: 0px;
            flex-direction: column;
        }

        .lady-card:nth-child(odd) .lady-profile {
            flex-direction: column;
        }

        .lady-image {
            width: 100%;
        }

        .lady-text .number-set .lady-number {
            width: 30vw;
        }

        .lady-text h3 {
            font-size: 6vw;
            line-height: 1.2;
            margin-bottom: 7px;
        }

        .lady-text p {
            font-size: 16px;
        }

        .lady-text p span {
            font-size: 14px;
        }

        .br-pc {
            display: none;
        }

        .br-sp {
            display: block;
        }

        .story__title {
            font-size: clamp(16px, 2vw, 30px);
            margin: 0 auto;
        }

        .story__header.river .story__title {
            margin: 0 auto;
        }

        .story {
            padding: 15px 0px;
        }

        .story__text p {
            font-size: 16px;
        }

        .story__header {
            grid-template-columns: 1fr;
            row-gap: 12px;
            align-items: flex-start;
        }

        .story__header.flex {
            flex-direction: column-reverse;
        }

        .story__header.flex .story__image {
            width: 100%;
        }

        .story__header.flex .story__text {
            width: 100%;
        }

        .area {
            flex-direction: column;
            width: 100%;
        }

        .area a {
            width: 100%;
        }

        .blog-list__link {
            /* grid-template-columns: 65px 1fr; */
            grid-template-columns: none;
            grid-template-rows: auto auto;
            /* 上下2行 */
            gap: 4px;
            /* 行間調整 */
        }

        .blog-list {
            margin: 0 15px;
        }

        .blog-list__more {
            margin: 20px 15px;
            width: 100%;
            text-align: left;
        }

        .blog {
            margin: 10px auto 100px;
        }

        .page_title_sp p {
            margin: 0 auto;
        }

        .page_title_sp .sub-titel {
            text-align: center;
        }

        .page_title_sp {
            padding: 15% 0;
        }

        .blog-list__item::after {
            width: 30px;
            height: 30px;
        }

        .btn-more__dot {
            width: 50px;
            height: 50px;
        }


        .lady-card-main2 {
            padding: 50px 0 100px;
        }

        .lady-card-main3 {
            padding: 50px 0 100px;
        }

        .lady-card-main4 {
            padding: 50px 0 100px;
        }

        .card-set .card-set-img {
            width: 60%;
            position: relative;
        }

        .content-name {
            margin-top: 0;
            position: absolute;
            left: 30px;
            margin-top: -10px;
        }

        .card-set .content-name .en {
            font-size: clamp(40px, 3.5vw, 60px);
        }

        .card-set .content-name .ja {
            font-size: clamp(20px, 1.7vw, 30px);
        }

        .card-set:nth-of-type(even) {
            flex-direction: row;
        }

        .card-set:nth-of-type(even) .content-name {
            position: absolute;
            left: auto;
            right: 30px;
        }

        .v1 .card-set {
            flex-direction: column;
        }

        .v1 .card-set .card-set-img {
            width: 100%;
        }

        .v1 .card-set .disp {
            width: 100%;
            margin-top: 30px;
            align-items: flex-start;
        }

        .v1 .card-set:nth-of-type(1) .card-set-img::before,
        .v1 .card-set:nth-of-type(2) .card-set-img::before,
        .v1 .card-set:nth-of-type(3) .card-set-img::before {
            font-size: clamp(50px, 5.5vw, 80px);
        }

        .card-set-img span.en {
            font-size: clamp(40px, 2.5vw, 60px);
        }

        .card-wrapper.v1 {
            gap: 40px;
        }

        .btn {
            flex-direction: column-reverse;
            margin: 0 0 100px;
        }

        .disp {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

        .disp p {
            /* text-align: center;	 */
        }

        .btn-all {
            gap: 20px;
        }

        .support-text {
            margin: 0 0 100px;
            padding: 0 5%;
        }

        .disp h4 {
            font-size: 25px;
        }


    }

    @media screen and (max-width: 570px) {
        .lady-card {
            margin: 0 20px;
            margin-bottom: 80px;
        }

        .page_title_sub h3 span {
            font-size: 30px;
        }

        .page_title_sub span {
            font-size: 16px;
        }

        .page_title_sp {
            padding: 10% 0;
        }

        .page_title_sp h2 {
            font-size: 28px;
        }

        .page_title_sp span {
            font-size: 14px;
        }

        .workflow-title h2::after {
            width: 300px;
            height: 20px;
        }

    }

    /* モバイル対応 */
    @media screen and (max-width: 430px) {}


    /* --- Fast View: 画像の上にキラキラ動画を合成表示 --- */
    .fast-view {
        position: relative;
        overflow: clip;
        /* 古い環境は overflow:hidden; */
        isolation: isolate;
        /* ブレンドの影響をこの箱の中に閉じ込める */
    }

    .fast-view h2,
    .fast-view picture,
    .fast-view img {
        display: block;
        width: 100%;
        height: auto;
    }

    /* キラキラ動画（画像の上に重ねる） */
    .fv__sparkle {
        position: absolute;
        inset: 0;
        /* 上下左右ピッタリ */
        width: 100%;
        height: 100%;
        object-fit: cover;
        /* KVに合わせてトリミング */

        /*
		object-position の書き方は object-position: X Y;
		X = 左右位置（水平方向）
			0%   = 左寄せ
			50%  = 中央
			100% = 右寄せ
		Y = 上下位置（垂直方向）
			0%   = 上寄せ
			50%  = 中央
			100% = 下寄せ
		*/

        /* サンプル -----------------
		object-position: 0%   0%;   左上
		object-position: 100% 0%;   右上
		object-position: 0%   100%; 左下
		object-position: 100% 100%; 右下
		object-position: 50%  50%;  中央（標準）
		-------------------------- */
        object-position: 100% 0%;
        /* 例：右下を見せる */

        /* さらに微妙に寄せたい/端切れを防ぎたいとき用 */
        transform: translate(var(--fv-x, 0), var(--fv-y, 0)) scale(var(--fv-scale, 1.06));
        transform-origin: center;

        pointer-events: none;
        /* クリック透過 */
        mix-blend-mode: screen;
        /* 黒=透過/白=発光 */
        opacity: 0.4;
        /* 強ければ 0.6–0.8 に */
    }

    /* 省電力設定のユーザーには非表示 */
    @media (prefers-reduced-motion: reduce) {
        .fv__sparkle {
            display: none;
        }
    }

    @media (min-width:1081px) {
        .fv__sparkle {
            object-position: 60% 40%;
        }
    }

    @media (max-width:1080px) {
        .fv__sparkle {
            object-position: 55% 30%;
        }
    }

    @media (max-width:430px) {
        .fv__sparkle {
            top: 300px;
        }
    }

    /* ベースのスタイル */
    .c-anime-heading-en {
        position: relative;
        display: inline-block;
        overflow: hidden;
    }

    /* 光のエフェクト */
    .c-anime-heading-en::after {
        content: "";
        position: absolute;
        top: 0;
        left: -75%;
        width: 50%;
        height: 100%;
        background: linear-gradient(120deg,
                rgba(255, 255, 255, 0) 0%,
                rgba(255, 255, 255, 0.6) 50%,
                rgba(255, 255, 255, 0) 100%);
        transform: skewX(-20deg);
        animation: shine 1.5s ease-in-out 1;
        /* 1回だけ再生 */
    }

    /* アニメーション定義 */
    @keyframes shine {
        0% {
            left: -75%;
        }

        100% {
            left: 125%;
        }
    }



    /* 土台 */
    .c-link-reflection {
        position: relative;
        display: block;
        overflow: hidden;
        /* はみ出しカット */
        isolation: isolate;
        /* ブレンドの漏れ防止（任意） */
    }

    .c-link-reflection-img {
        position: relative;
        margin: 0;
    }

    .c-link-reflection-img img {
        display: block;
        /* width: 100%; */
        height: auto;
    }

    /* 光レイヤー（画像の上に乗る） */
    .c-link-reflection-light {
        pointer-events: none;
        position: absolute;
        inset: -20% -60%;
        /* 斜めに走らせるので広めに確保 */
    }

    /* 動いて見える“光の帯” */
    .c-link-reflection-light-inner {
        position: absolute;
        top: 0;
        left: 0;
        width: 28%;
        height: 140%;
        transform: translateX(-120%) rotate(20deg);
        /* 中央だけ明るい斜めグラデーション */
        background: linear-gradient(115deg,
                rgba(255, 255, 255, 0) 0%,
                rgba(255, 255, 255, 0) 44%,
                rgba(255, 255, 255, .85) 50%,
                rgba(255, 255, 255, 0) 56%,
                rgba(255, 255, 255, 0) 100%);
        /* “光だけ”を合成 */
        mix-blend-mode: screen;
        filter: blur(2px);
        opacity: .9;
        will-change: transform;
        transition: transform .9s cubic-bezier(.22, .61, .36, 1);
        /* ＝easeOut */
    }

    /* ホバーで左→右へスイープ */
    .c-link-reflection:hover .c-link-reflection-light-inner,
    .c-link-reflection:focus-visible .c-link-reflection-light-inner {
        transform: translateX(220%) rotate(20deg);
    }

    /* 連続アニメにしたい場合（hover不要） */
    @keyframes _sweep {
        from {
            transform: translateX(-120%) rotate(20deg);
        }

        to {
            transform: translateX(220%) rotate(20deg);
        }
    }

    .c-link-reflection.is-auto .c-link-reflection-light-inner {
        animation: _sweep 1.4s cubic-bezier(.22, .61, .36, 1) 1 both;
    }

    /* 低モーション配慮（ユーザー設定でアニメを抑制） */
    @media (prefers-reduced-motion: reduce) {
        .c-link-reflection-light-inner {
            transition: none;
            animation: none;
        }
    }


    .workflow-section {
        text-align: center;
        padding: 80px 5%;
        font-family: 'Zen Old Mincho', serif;
    }

    .workflow-title h2 {
        font-size: clamp(28px, 5vw, 60px);
        position: relative;
        display: inline-block;
        padding-bottom: 10px;
    }

    .workflow-title .subtitle {
        display: block;
        font-family: 'Montserrat', sans-serif;
        font-size: clamp(12px, 2.2vw, 30px);
        color: #999;
    }

    .workflow-content-main {
        width: 60%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 30px;
    }

    .workflow-content {
        width: 50%;
        min-width: 530px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column-reverse;
        margin-top: 60px;
        gap: 60px;
        flex-wrap: wrap;
    }

    .workflow-text {
        text-align: left;
        width: 100%;
        /* max-width: 400px; */
        font-size: clamp(16px, 2vw, 20px);
        line-height: 2;
        color: #5c2b21;
    }

    .workflow-text p {
        font-size: 30px;
        line-height: 1.5;
    }

    .set3 .workflow-text p {
        height: 60px;
    }

    .workflow-text hr {
        border: none;
        border-top: 1px solid #a48466;
        margin: 5px 0px;
    }

    .workflow-text .caption {
        font-size: 20px;
        color: #333;
        font-family: 'Zen Old Mincho', serif;
        margin-top: 20px;
    }

    .set3 .workflow-text .caption {
        margin-top: 40px;
    }

    /* iframeをラッパなしで16:9レスポンシブ化 */
    .workflow-video {
        position: relative;
        width: 100%;
        /* max-width: 500px; */
        /* margin: 0 auto; */
        border-radius: 15px;
        /* ← 好きな数値に調整 */
        overflow: hidden;
        /* ← iframeがはみ出さないように必須 */
    }

    /* 金色グラデーション枠 */
    .workflow-video::before {
        content: "";
        position: absolute;
        inset: 0;
        /* 全体を覆う */
        padding: 1px;
        /* 枠の太さ */
        border-radius: 0px;
        /* 角丸を合わせる */
        background: conic-gradient(from 0deg,
                #d4af37,
                #f5e089,
                #fff8dc,
                #f5e089,
                #d4af37);
        -webkit-mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
        -webkit-mask-composite: xor;
        mask-composite: exclude;
        pointer-events: none;
        /* 枠は操作に干渉しない */
        z-index: 1;
    }


    /* 対応ブラウザは aspect-ratio を使う */
    @supports (aspect-ratio: 16 / 9) {
        .workflow-video {
            aspect-ratio: 16 / 9;
        }

        .workflow-video iframe {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            border: 0;
            display: block;
        }
    }

    /* 非対応ブラウザ向けフォールバック（padding-bottom方式） */
    @supports not (aspect-ratio: 16 / 9) {
        .workflow-video {
            height: 0;
            padding-bottom: 56.25%;
        }

        .workflow-video iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: 0;
            display: block;
        }
    }

    @media screen and (max-width: 1000px) {
        .workflow-content-main {
            flex-wrap: wrap;
        }
    }

    @media screen and (max-width: 720px) {
        .workflow-content-main {
            width: 100%;
        }

        .workflow-content {
            width: 100%;
            min-width: unset;
            gap: 20px;
        }

        .workflow-text p {
            font-size: 20px;
        }

        .workflow-text .caption {
            font-size: 15px;
            margin-top: 0;
        }

        .set3 .workflow-text .caption {
            margin-top: 10px;
        }
    }

    #area {
        scroll-margin-top: 2000px;
        /* ヘッダーの高さ分 */
    }




/*==========================
contact
==============================*/
#contact .page_title {
	background-image: url("../images/page/08/08-main-title_img-bk.png");
	/* margin-top: -100px; */
	height: 20vw;
}


#contact .page_title.sub02 {
	background-image: none;
	margin-top: -100px;
	margin: 7% 0;
	padding: 0;
}

#contact .page_title.sub01 .sub-titel,
#contact .page_title.sub02 .sub-titel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	/* width: fit-content; */
}

.page_title.sub02 .sub-titel {
	text-align: center;
}

#contact .page_title.sub01 h2,
#contact .page_title.sub02 h2 {
	text-align: center;
	width: fit-content;
}

#contact .page_title.sub01 p,
.page_title.sub02 p {
	width: 90%;
	text-align: center;
    margin: 0 auto;
}

#contact .page_title h2 span,
#contact .page_title_sp h2 span {

	color: #333;
	font-family: 'Zen Old Mincho', serif;
	line-height: 2;
	margin-left: -10px;
}

#contact .page_title h2 span {
	font-size: 30px;
}

#contact .page_title_sp h2 span {
	font-size: 15px;
	letter-spacing: 3px;

}

#contact .page_img_sp {
	background-image: url(../images/page/08/08-main-title_img-bk-sp.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	aspect-ratio: 1.872;
}

#contact .page_img_sp.sub01 {
	background-image: url(../images/page/08/title-img-01-sp.png);
}

#contact .page_img_sp.sub02 {
	background-image: url(../images/page/08/title-img-02-sp.png);
}

#contact .lady-card-main {
	background-image: url(../images/page/08/back-image.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 50px 0 50px;
}

#contact .lady-card-sub {
	background-color: #fff;
	padding: 100px 0 200px;
}

#contact .sp_mode {
	display: none;
}

#contact .page_title_sp {
	display: none;
}

#contact .lady-card {
	width: auto;
	max-width: 1080px;
	background: #fffefb;
	border-radius: 12px;
	border: 1px solid #f0e6d5;
	/* overflow: hidden; */
	margin: 20px auto;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	/* display: flex;
	flex-direction: row; */
	position: relative;
	margin-bottom: 100px;

}

#contact .text-section {
	width: 50%;
	flex: 1;
	padding: 24px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	text-align: left;
	background: #fff;
	border-radius: 20px;


}

#contact .text-section h3 {
	margin: 30px 0;
	text-align: left;

}

#contact .text-section h3 span {
	font-family: 'Montserrat', sans-serif;
	color: #69797e;
	font-weight: 100;
	font-size: 60px;
	letter-spacing: 5px;
	line-height: 1;
}

#contact .text-section h3 span:first-child::after {
	content: " ";
}

#contact .image-section {
	width: auto;
	max-width: 560px;
	position: absolute;
	top: -20px;
	right: -20px;
	flex: 1;
}

#contact .image-section img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


#contact .reward {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
	margin-bottom: 20px;
}

#contact .reward p {
	font-size: 30px;
}

#contact .price {
	font-weight: 500;
	font-size: 18px;
}

#contact .max-price {
	font-weight: bold;
	font-size: 40px;
}

#contact .note {
	font-size: 16px;
	color: #333;
	text-align: left;
}

#contact .style-link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	font-weight: bold;
	padding-bottom: 4px;
	gap: 8px;
	/* アイコンと文字の間隔 */
	margin: 80px 0 40px;
}

#contact .style-link a {
	font-size: 18px;
	color: #5c2b21;
	font-family: 'Zen Old Mincho', serif;
}

#contact .style-link a span {
	border-bottom: 2px solid #a48466;
	line-height: 2;
	padding-bottom: 5px;
}

#contact .style-link .icon {
	width: 28px;
	height: 28px;
	object-fit: contain;
}

/* 金の枠 */
#contact .gold-circle {
	width: 80px;
	height: 80px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-family: 'Zen Old Mincho', serif;
	color: #5b241d;
	font-weight: bold;
}

#contact .gold-circle::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: conic-gradient(from 0deg,
			#d4af37,
			#f5e089,
			#fff8dc,
			#f5e089,
			#d4af37);
	-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
	mask: radial-gradient(farthest-side, transparent calc(100% - 3px), white 100%);
	z-index: 0;
}

#contact .gold-circle .main {
	font-size: 30px;
	line-height: 1;
	position: relative;
	z-index: 1;
}

#contact .gold-circle .sub {
	font-size: 20px;
	font-weight: normal;
	position: relative;
	z-index: 1;
}


#contact .page_title_sub {
	padding: 7% 0;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: left;
}

#contact .page_title_sub h3 span {
	font-size: 60px;
	color: #333;
	font-family: 'Zen Old Mincho', serif;
}

#contact .page_title_sub p {
	width: 80%;
	max-width: 800px;
}

#contact .page_title_sub span {
	font-family: 'Montserrat', sans-serif;
	font-weight: 200;
	font-size: 25px;
	letter-spacing: 5px;
}


#contact .growth-block {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	min-height: 100vh;
	position: relative;
}

#contact .growth-image {
	flex: 1;
	width: 100%;

}

#contact .growth-image picture,
#contact .growth-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

#contact .growth-content {
	position: absolute;
	top: 5vw;
	left: 15vw;
	transform: translate(0, 0);
	display: flex;
	flex-direction: column;
	justify-content: center;
	/* background-color: #fff; */
}

#contact .page_title_sub h3 {
	font-size: clamp(26px, 3vw, 36px);
	font-family: 'Zen Old Mincho', serif;
	color: #2b2b2b;
	margin-bottom: 10px;
}

#contact .en-title {
	font-family: 'Montserrat', sans-serif;
	font-size: clamp(14px, 1.5vw, 18px);
	color: #333;
	letter-spacing: 1px;
	margin-bottom: 30px;
	display: inline-block;
	position: relative;
}

#contact .growth-text p {
	font-size: clamp(14px, 1.3vw, 18px);
	line-height: 2;
	color: #444;
	margin-bottom: 1.5em;
	font-family: 'Zen Old Mincho', serif;
}

#contact .workflow-section {
	text-align: center;
	padding: 80px 5%;
	font-family: 'Zen Old Mincho', serif;
}

#contact .workflow-title h2 {
	font-size: clamp(28px, 5vw, 60px);
	position: relative;
	display: inline-block;
	padding-bottom: 10px;
}

#contact .workflow-title h2::after {
	content: '';
	display: block;
	width: 500px;
	height: 30px;
	margin: 10px auto 5px;
	background-image: url('<?php bloginfo("template_url"); ?>/images/page/08/line2.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

#contact .workflow-title .subtitle {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: clamp(12px, 2.2vw, 30px);
	color: #999;
}

#contact .workflow-content {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 60px;
	gap: 60px;
	flex-wrap: wrap;
}

#contact .workflow-text {
	text-align: left;
	max-width: 400px;
	font-size: clamp(16px, 2vw, 20px);
	line-height: 2;
	color: #5c2b21;
}

#contact .workflow-text p {
	font-size: 30px;
	line-height: 1.5;
}

#contact .workflow-text hr {
	border: none;
	border-top: 1px solid #bba98f;
	margin: 5px 0px;
}

#contact .workflow-text .caption {
	font-size: 14px;
	color: #888;
	font-family: 'Montserrat', sans-serif;
	margin-top: 40px;
}

#contact .workflow-video .video-thumbnail {
	position: relative;
	width: 360px;
	max-width: 100%;
	border-radius: 10px;
	overflow: hidden;
}

#contact .workflow-video img {
	width: 100%;
	display: block;
	border-radius: 10px;
}

#contact .video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.35);
	color: #fff;
	font-size: clamp(14px, 2vw, 18px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
}

#contact .play-button {
	margin-top: 10px;
	font-size: 32px;
	background: #fff;
	color: #000;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}


#contact .support-section {
	padding: 200px 200px;
	font-family: "Noto Serif JP", serif;
}


#contact .support-section2 {
	padding: 0px 20px;
	font-family: "Noto Serif JP", serif;
}

#contact .container {
	width: fit-content;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}

#contact .container p {
	color: #333;
	font-family: 'Zen Old Mincho', serif;
	position: relative;
	font-size: 16px;
	text-align: left;
	line-height: 2;
	margin-top: 30px;
}

#contact .container p.em {
	background: #a48466;
	color: #fff;
	padding: 10px;
	border-radius: 10px;
	text-align: center;

}

#contact .main-text {
	font-size: 30px;
	text-align: center;
	color: #5b241d;
	margin-bottom: 60px;
}

#contact .checklist {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	max-width: 1200px;
	display: flex;
	/* flex-direction: column; */
	justify-content: center;
	align-items: center;
	gap: 50px;
}

#contact .checklist li {
	width: 50%;
	position: relative;
	font-size: 20px;
	line-height: 1.6;
	margin-bottom: 0px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

#contact .checklist li p {
	margin-bottom: 0px;
}

#contact .checklist li p:nth-of-type(2) {
	font-size: 25px;
	color: #5b241d;
}

/* .checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.2em;
	width: 20px;
	height: 20px;
	background-image: url('<?php bloginfo("template_url"); ?>/images/page/08/check.png');
	background-repeat: no-repeat;
	background-size: contain;
} */

#contact .button-wrapper {
	text-align: center;
	margin-bottom: 120px;
	background-image: url('<?php bloginfo("template_url"); ?>/images/page/08/btn.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	padding: 2.8vw 4vw;
	padding-left: clamp(30px, 5vw, 56px);
	padding-right: clamp(30px, 5vw, 56px);
}

#contact .button-wrapper a.gold-button {
	display: inline-block;
	color: #f2efe9;
	font-family: 'Zen Old Mincho', serif;
	position: relative;
	font-size: clamp(16px, 2vw, 25px);
}

#contact .voice-box {
	background: white;
	border: 2px solid #f4c77f;
	border-radius: 12px;
	display: flex;
	padding: 60px 40px;
	gap: 20px;
	align-items: flex-start;
	flex-wrap: wrap;
	position: relative;
}

#contact .voice-text {
	/* flex: 1 1 60%; */
	font-size: 14px;
	line-height: 1.8;
	width: 55%;
}

#contact .voice-text h3 {
	font-size: 30px;
	margin-bottom: 10px;
	color: #5a2e1f;
}

#contact .voice-text .profile {
	font-weight: bold;
	margin-bottom: 10px;
	font-family: 'Zen Old Mincho', serif;
	font-size: clamp(15px, 2.0vw, 20px);
}

#contact .voice-text p.profile-text {
	font-size: 16px;
	line-height: 2;
	margin-top: 40px
}

#contact .voice-box2 {
	display: flex;
	padding: 0px 40px;
	gap: 100px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

#contact .voice-text2 {
	font-size: 14px;
	line-height: 1.8;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 30px
}

#contact .voice-text2 h3 {
	font-size: 30px;
	margin-bottom: 10px;
	color: #5a2e1f;
}

#contact .voice-text2 .profile {
	font-weight: bold;
	margin-bottom: 10px;
	font-family: 'Zen Old Mincho', serif;
	font-size: clamp(15px, 2.0vw, 20px);
}

#contact .voice-text2 p.profile-text {
	font-size: 20px;
	line-height: 2;
	margin-top: 40px;
}

#contact .voice-text2.set2 p.profile-text {
	margin-bottom: 100px;
}

#contact .voice-image {
	position: absolute;
	/* flex: 1 1 35%; */
	top: -20px;
	right: -20px;
	width: 40%;
}

#contact .voice-image img {
	width: 100%;
	border-radius: 12px;
	object-fit: cover;
}

#contact .br-pc {
	display: block;
}

#contact .br-sp {
	display: none;
}

/* ラッパー：2カラム（モバイルは1カラム） */
#contact .office {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px 60px;
	max-width: 1100px;
	margin: 0 auto;
	margin-bottom: 100px
}

/* 各ブロック */
#contact .office-content {
	padding: 0 0 18px;
}

/* 見出し */
#contact .office-content h3 {
	margin: 0 0 8px;
	font-weight: 500;
	font-size: clamp(18px, 2.2vw, 30px);
	line-height: 1.6;
	letter-spacing: 0.06em;
	color: #8a4f44;
	font-family: "Noto Serif JP", "Shippori Mincho", serif;
	border-bottom: 2px solid #b99179;
}

/* 見出し下の細ライン画像（sub-title.png） */
#contact .office-content span {
	display: block;
	line-height: 0;
	margin: 0 0 12px;
}

#contact .office-content span img {
	display: block;
	width: 100%;
	height: 2px;
	object-fit: cover;
}

/* 説明文 */
#contact .office-content p {
	margin: 0;
	font-size: 20px;
	line-height: 1.9;
	letter-spacing: 0.03em;
	color: #6b6f72;
	font-family: 'Zen Old Mincho', serif;
}

/* レスポンシブ：タブレット以下は1カラム */
@media (max-width: 900px) {
	#contact .office {
		grid-template-columns: 1fr;
		gap: 28px;
	}
}

#contact .prefectures {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 1200px;
	padding: 0;
}

#contact .prefectures picture {
	position: relative;
	display: block;
	width: 100%;
}

#contact .prefectures img {
	width: 100%;
	height: auto;
	display: block;
}

#contact .prefectures p {
	/* padding: 20px 24px; */
	width: 70%;
	margin: 0 auto;
	margin-top: 50px;
	margin-bottom: 10px;
	font-size: 20px;


}

#contact .prefectures-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #333;
	text-align: center;
	width: 100%;
	/* padding: 60px 0 30px 0; */
}

#contact .prefectures-content h3 {
	font-size: 25px;
	margin-bottom: 10px;
}

#contact .prefectures-content span {
	display: block;
	width: 80%;
	margin: 0 auto;
}

#contact .prefectures-content ul {
	list-style: none;
	padding: 0;
	margin: 60px 0 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: left;
}

#contact .prefectures-content li {
	width: max-content;
	font-size: 16px;
	position: relative;
}

#contact .prefectures-content li::after {
	content: "/";
	margin-left: 6px;
}

.prefectures-content li:last-child::after {
	content: "";
}

/* カード全体 */
#contact .contact-card {
	width: 80%;
	/* max-width: 800px; */
	margin: 0 auto;
	background: #fff;
	border-radius: 14px;
	padding: 20px 24px;
	box-shadow: 0 6px 16px rgba(0, 0, 0, .06);
	border: 1px solid rgba(0, 0, 0, .06);
	margin-bottom: 50px;

}

/* 1ブロック（必須事項 / あれば） */
#contact .contact-card dl {
	margin: 18px 0 26px;
}

/* タイトル（dt） */
#contact .contact-card dt {
	color: #c45a57;
	/* 見出しの赤 */
	font-weight: 700;
	letter-spacing: .02em;
	margin-bottom: 10px;
	position: relative;
	text-align: left;
	font-size: 15px;
}

/* 見出しの下線 */
#contact .contact-card dt::after {
	content: "";
	display: block;
	height: 2px;
	background: #a97b62;
	/* 茶色いライン */
	/* margin-top: 8px; */
	width: 100%;
	opacity: .9;
}

/* 説明（dd） */
#contact .contact-card dd {
	color: #6b6b6b;
	line-height: 1.9;
	margin: 0;
	text-align: left;
	font-size: 16px;
}

/* 最後のdlだけ余白を少し詰める */
#contact .contact-card dl:last-child {
	margin-bottom: 0;
}

/* スマホ微調整 */
@media (max-width: 480px) {
	#contact .contact-card {
		padding: 6px 18px;
	}

	#contact .contact-card dt::after {
		height: 1px;
	}
}

.line-text {
	width: 70%;
	margin: 0 auto;
}

/* 画像カードの並び */
.line-links {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 22px;
	/* 行間・列間 */
	justify-content: center;
	/* 3枚+2枚で中央寄せ */
	padding: 6px 0;
	margin: 0 auto;
}

.line-links.sub {
	margin-top: 50px;

}

/* カード（画像リンク） */
.line-links a {
	display: block;
	width: calc(100% / 3.5);
	/* 画像の見た目サイズに合わせて調整 */
	border-radius: 12px;
	overflow: hidden;
	/* box-shadow: 0 4px 14px rgba(0, 0, 0, .08); */
	transition: transform .18s ease, box-shadow .18s ease;
}

/* 画像を100%で表示 */
.line-links img {
	display: block;
	width: 100%;
	height: auto;
}

/* ホバー演出（任意） */
.line-links a:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 22px rgba(0, 0, 0, .12);
}

.line-links.sp {
	display: none;
}

.line-links.sub.sp {
	display: none;
}

.line-title-01,
.line-title-02 {
	display: inline-flex;
	/* テキストとアイコンを横並びに */
	align-items: center;
	gap: 6px;
}

.line-title-01::before {
	content: "";
	display: inline-block;
	width: 20px;
	/* アイコンサイズ */
	height: 20px;
	background-image: url("../images/page/08/bs-01.png");
	background-size: contain;
	/* アイコンの比率維持 */
	background-repeat: no-repeat;
}

.line-title-02::before {
	content: "";
	display: inline-block;
	width: 20px;
	/* アイコンサイズ */
	height: 20px;
	background-image: url("../images/page/08/bs-02.png");
	background-size: contain;
	/* アイコンの比率維持 */
	background-repeat: no-repeat;
}

/* タブレット対応 */
@media screen and (max-width: 1080px) {
	#contact .text-section {
		width: 100%;
	}

	#contact .image-section {
		width: 70%;
		max-width: unset;
	}

	#contact .lady-card {
		/* flex-direction: column; */
		margin: 0 40px;
		margin-bottom: 100px;
	}

	#contact .reward {}

	#contact .reward:first-of-type {
		margin-top: 25vw;
	}

	#contact .text-section {
		padding: 10px;
	}

	#contact .text-section h3 {
		width: fit-content;
		margin: 30px 0;
	}

	#contact .text-section h3 span {
		display: block;
		font-size: 8vw;
	}

	#contact .text-section h3 span:first-child::after {
		content: "";
	}

	#contact .reward p {
		font-size: 30px
	}

	#contact .max-price {
		font-size: 40px
	}

	#contact .page_title h2 {
		/* font-size: 60px; */
		font-family: zen;
		color: #333;
		font-family: 'Zen Old Mincho', serif;
	}


	#contact .page_title {
		margin-bottom: 0;
	}

	#contact .voice-text .profile {

		font-size: clamp(15px, 2.5vw, 20px);
	}

	#contact .voice-text2 {
		flex-direction: column;
	}

	#contact .prefectures {
		width: fit-content;
	}
}

@media screen and (max-width: 725px) {
	#contact .sp_mode {
		display: block;
	}

	#contact .page_title_sp {
		display: block;
	}

	#contact .page_title {
		display: none;
	}

	#contact .lady-card-main {
		padding: 0px 0 60px;
	}

	#contact .br-pc {
		display: none;
	}

	#contact .br-sp {
		display: block;
	}

	#contact .main-text {
		font-size: 20px;
		line-height: 2;
	}

	#contact .support-section {
		/* padding-top: 0px; */
		padding: 0 20px;
	}

	#contact .page_title_sp {
		padding: 10% 0;
		padding-left: 20px;
	}

	#contact .button-wrapper {
		margin-bottom: 100px;
		padding: 4.8vw 4vw;
		background-image: url('<?php bloginfo("template_url"); ?>/images/page/08/btn-sp.png');
	}

	#contact .button-wrapper a.gold-button {
		/* font-size: 24px; */
	}

	#contact .voice-box {
		padding: 30px 20px;
	}

	#contact .voice-text {
		width: 100%;
	}

	#contact .voice-text h3 {
		font-size: 20px;
	}

	#contact .container {
		padding: 0;
	}

	#contact .voice-image {
		width: 50%;
		top: -20px;
		right: -10px;
	}

	#contact .voice-text p.profile-text {
		margin-top: 60px;
	}

	#contact .checklist li {
		width: auto;
		font-size: 15px
	}

	#contact .page_title_sp.sub01 h2,
	#contact .page_title_sp.sub02 h2 {
		text-align: center;
	}

	#contact .page_title_sp.sub01 .sub-titel,
	#contact .page_title_sp.sub02 .sub-titel {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	#contact .checklist {
		flex-direction: column;
		gap: 30px;
		margin-top: 30px;
	}

	#contact .checklist li p:nth-of-type(2) {
		font-size: 18px;
	}

	#contact .checklist li {
		padding-left: 0px;
		gap: 0;
		flex-direction: column-reverse;
	}

	#contact .checklist li::before {
		left: 0;
		top: 0.2em;
		width: 0px;
		height: 0px;
		background-image: nuset;
	}

	#contact .main-text {
		margin-bottom: 30px;
	}

	#contact .lady-card-sub {
		padding: 50px 0 100px;
	}

	#contact .page_title_sp.sub01,
	#contact .page_title_sp.sub02 {
		padding-top: 0;
		padding-left: 0;
	}

	#contact .voice-box2 {
		padding: 0;
		gap: 50px
	}

	#contact .voice-text2 h3 {
		font-size: 20px;
	}

	#contact .voice-text2 p.profile-text {
		font-size: 15px;
		margin-top: 20px;
	}

	#contact .voice-text2.set2 p.profile-text {
		margin-bottom: 50px;
	}

	#contact .office-content p {
		font-size: 15px;
	}

	#contact .office-content {
		padding: 0;
	}

	#contact .prefectures-content {
		width: 85%;
		padding: 30px 0;
	}

	#contact .prefectures-content ul {
		margin-top: 15px;
		gap: 5px;
	}

	#contact .prefectures-content li {
		font-size: 13px
	}

	#contact .container p {
		margin-top: 0px;
		font-size: 9px;
		text-align: left;
		width: 100%;
		margin-bottom: 15px;
	}

	#contact .line-text {
		width: 100%;
	}

	#contact .contact-card {
		width: fit-content;
		margin-bottom: 15px;
	}

	#contact .contact-card dl {
		margin: 0 0 5px
	}

	#contact .line-links {
		display: none;
	}

	#contact .line-links.sp {
		display: flex;
		width: 70%;
	}

	#contact .line-links.sp a {
		width: 100%;
	}

	#contact .line-links.sub.sp {
		display: flex;
		width: 100%;
	}

	#contact .contact-card dd {
		font-size: 12px;
	}

	#contact .prefectures-content h3 {
        font-size: 16px;
        margin-bottom: 0;
        margin-top: 10px;
	}

}

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

	#contact .lady-card {
		margin: 0 20px;
		margin-bottom: 80px;
	}

	#contact .image-section {
		width: 60%;
		top: -10px;
		right: -10px;
	}

	#contact .text-section h3 span {
		font-size: 10vw;
	}

	#contact .text-section h3 {
		margin-top: 20px;
		z-index: 1;
	}

	#contact .reward:first-of-type {
		margin-top: clamp(8vw, 11vw, 16vw);
	}

	#contact .gold-circle {
		width: clamp(60px, 10vw, 80px);
		height: clamp(60px, 10vw, 80px);
	}

	#contact .gold-circle .main {
		font-size: clamp(20px, 4vw, 30px);
	}

	#contact .gold-circle .sub {
		font-size: clamp(14px, 2.5vw, 20px);
	}

	#contact .reward p {
		font-size: clamp(20px, 5vw, 30px);
	}

	#contact .max-price {
		font-size: clamp(28px, 6vw, 40px);
	}

	#contact .reward {
		gap: 10px;
		margin-bottom: 10px;
	}

	#contact .style-link {
		margin: 40px 0 20px;
	}

	#contact .note {
		font-size: 14px;
	}

	#contact .style-link .icon {
		width: 35px;
		height: 35px;
	}

	#contact .style-link a span {
		border-bottom: 1.5px solid #a48466;
		line-height: 3;
		padding-bottom: 5px;
		font-size: 15px;
	}

	#contact .page_title_sub h3 span {
		font-size: 30px;
	}

	#contact .page_title_sub span {
		font-size: 16px;
	}

	#contact .growth-content {
		top: 8vw;
		left: 5vw;
	}

	#contact .workflow-title h2::after {
		width: 300px;
		height: 20px;
	}

	#contact .workflow-content {
		flex-direction: column-reverse;
		margin-top: 60px;
		gap: 30px;
	}

	#contact .workflow-video .video-thumbnail {
		width: auto;
	}

	#contact .workflow-text p {
		font-size: 20px;
	}

	#contact .workflow-text {
		margin-right: auto;
	}

	#contact .page_title_sp h2 {
		font-size: 30px;
	}

	#contact .page_title_sp span {
		font-size: 15px;
	}

	#contact .page_title_sp {
		/* padding: 15% 0; */
		padding-left: 20px;
	}
}