@charset "utf-8";
/*各ページ共通（温かみ・伴走）*/
.pagewrapper {margin-top:10vh;}
/* bg_header.jpg : ページタイトルエリア背景画像 */
.titlearea {padding:7vw 10vw;background:var(--brown) url(../img/cmn/bg_header.jpg) no-repeat center center;background-size:cover;position:relative;}
.titlearea::before {content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(74,63,53,0.6);}
.titlearea > * {position:relative;z-index:2;}
.titlearea h1 {font-size:2.8rem;margin-bottom:1rem;color:#fff;line-height:1.45;}
.titlearea h2 {font-size:1.6rem;margin-bottom:1rem;color:#FBF3E8;font-weight:500;}
.titlearea p {font-size:1.2rem;color:#FBF3E8;line-height:1.9;}
.pankuzuarea {padding-bottom:1.4rem;}
.pankuzu {color:#FBF3E8;font-size:0.95rem;}
.pankuzu span,.pankuzu a {color:#FBF3E8;}
.pankuzu a:hover {color:#fff;}
/*SP*/
@media (max-width: 896px){
	.titlearea {padding:9vh 7vw;}
	.titlearea h1 {font-size:1.7rem;}
	.titlearea h2 {font-size:1.25rem;}
	.titlearea p {font-size:1.1rem;}
}

.ariclepage {}
.ariclepage .contents01 {background:var(--cream);}
.ariclepage .contents01 h2 {font-size:2.0rem;margin-top:1.8em;margin-bottom:0.6em;color:var(--ink);
	padding-bottom:0.5rem;border-bottom:solid var(--border) 2px;}
.ariclepage .contents01 h2.mb0 {margin-bottom:0.2em;border-bottom:none;}
.ariclepage .contents01 h3 {font-size:1.5rem;margin-top:0.4em;margin-bottom:0.8em;color:var(--terra-dark);}
.ariclepage .contents01 p {margin-bottom:1.4em;}
.ariclepage .contents01 img {max-width:100%;width:100%;margin:1rem 0 1.6rem;border-radius:1.2rem;
	box-shadow:0 12px 28px rgba(74,63,53,0.1);}
.ariclepage .contents01 ul.dotlist {margin:0.5em 0 1.6em;}
.ariclepage .contents01 ul.dotlist li {font-size:1.2rem;line-height:1.9;padding:0.5em 0 0.5em 1.6em;position:relative;
	border-bottom:dashed var(--border) 1px;}
.ariclepage .contents01 ul.dotlist li::before {content:"●";color:var(--terra);position:absolute;left:0;top:0.5em;font-size:0.8em;}

/* 強調ボックス */
.notebox {background:#fff;border:solid var(--border) 1px;border-left:solid var(--terra) 5px;border-radius:1rem;
	padding:2rem 2.4rem;margin:1.8em 0;box-shadow:0 8px 20px rgba(74,63,53,0.05);}
.notebox h3 {margin-top:0 !important;color:var(--ink) !important;}
.notebox p {margin-bottom:0 !important;color:var(--ink-soft);}

/* サービスカード（service） */
.svc-card {background:#fff;border:solid var(--border) 1px;border-radius:1.5rem;padding:0;overflow:hidden;margin-bottom:2rem;
	box-shadow:0 12px 28px rgba(74,63,53,0.07);}
.svc-card .svc-img {width:100%;height:26vh;background-size:cover;background-position:center;margin:0;border-radius:0;box-shadow:none;}
.svc-card .svc-body {padding:2.4rem 2.6rem;}
.svc-card .svc-no {font-family:"Zen Maru Gothic",sans-serif;font-size:1.0rem;font-weight:700;color:var(--terra);letter-spacing:0.08em;}
.svc-card .svc-body h2 {border-bottom:none;margin:0.3rem 0 0.3rem;padding-bottom:0;font-size:1.7rem;}
.svc-card .svc-body h3 {margin-top:0;font-size:1.2rem;}
.svc-card .svc-body p {margin-bottom:0;}
/*SP*/
@media (max-width: 896px){
	.svc-card .svc-img {height:32vw;}
	.svc-card .svc-body {padding:2rem 1.8rem;}
}

/* ステップ（flow） */
.steplist {counter-reset:step;margin:1em 0;}
.stepitem {position:relative;background:#fff;border:solid var(--border) 1px;border-radius:1.5rem;padding:2.4rem 2.6rem 2.4rem 6.5rem;
	margin-bottom:1.2rem;box-shadow:0 8px 20px rgba(74,63,53,0.05);}
.stepitem::before {counter-increment:step;content:"0" counter(step);position:absolute;left:2rem;top:2.2rem;
	font-family:"Zen Maru Gothic",sans-serif;font-weight:700;font-size:1.8rem;color:var(--terra);}
.stepitem h3 {margin-top:0;margin-bottom:0.5em;color:var(--ink);}
.stepitem p {margin-bottom:0;font-size:1.15rem;color:var(--ink-soft);}
/*SP*/
@media (max-width: 896px){
	.stepitem {padding:4.6rem 1.8rem 1.8rem;}
	.stepitem::before {top:1.6rem;left:1.8rem;}
}

/*faqwrap*/
.faqwrap {padding-top:7vw;}
.faqwrap h1 {font-size:2.8rem;}

/*SP*/
@media (max-width: 896px){
	.ariclepage .contents01 h2 {font-size:1.6rem;}
	.ariclepage .contents01 h3 {font-size:1.3rem;}
}

/*会社情報テーブル*/
.company-table {width:100%;border-collapse:collapse;margin:1em 0 2em;background:#fff;border-radius:1rem;overflow:hidden;
	box-shadow:0 8px 20px rgba(74,63,53,0.05);}
.company-table th,.company-table td {text-align:left;padding:1.2rem 1.6rem;font-size:1.1rem;border-bottom:solid var(--border) 1px;vertical-align:top;}
.company-table th {width:14rem;background:var(--cream2);font-weight:700;color:var(--ink);font-family:"Zen Maru Gothic",sans-serif;}
.company-table td {color:var(--ink-soft);}
.company-table tr:last-child th,.company-table tr:last-child td {border-bottom:none;}
/*SP*/
@media (max-width: 896px){
	.company-table th,.company-table td {display:block;width:100%;}
	.company-table th {border-bottom:none;padding-bottom:0.4rem;}
	.company-table td {padding-top:0.4rem;}
}

/*privacy*/
.privacy .contents01 h2 {font-size:1.5rem;font-weight:700;margin-top:2em;margin-bottom:0.5em;border-bottom:solid var(--border) 2px;}
.privacy .contents01 li {list-style-type:disc;list-style-position:inside;font-size:1.15rem;line-height:1.9;}
.privacy .contents01 li ul {padding:8px 0px 8px 1.5em;}
/*SP*/
@media (max-width: 896px){
	.privacy .contents01 h2 {font-size:1.3rem;}
}

/*sitemap*/
.sitemap .contents01 h2 {font-size:1.6rem;}
.sitemap .contents01 p {font-size:1.15rem;line-height:2.6em;}
.sitemap .contents01 p a {color:var(--ink);text-decoration:none;border-bottom:solid var(--border) 1px;padding-bottom:2px;}
.sitemap .contents01 p a:hover {color:var(--terra-dark);border-color:var(--terra);}

/*faqarea*/
.faqpage .contents01 {background:var(--cream2);}
.faqpage .contents01 h2 {border-bottom:none;}
.faq {background:#fff;border:solid var(--border) 1px;border-radius:1.2rem;padding:1.8rem 2.6rem;margin-bottom:0.8rem;}
.faq > summary {cursor: pointer;list-style: none;font-size:1.25rem;font-weight:700;color:var(--ink);
	font-family:"Zen Maru Gothic",sans-serif;position:relative;padding-right:2rem;}
.faq > summary::-webkit-details-marker {display: none;}
.faq > summary::after {content: "+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--terra);font-size:1.6rem;}
.faq[open] > summary::after {content: "−";}
.faq .answer {margin-top:1.2rem;}
.faq .answer p {font-size:1.1rem;font-weight:normal;color:var(--ink-soft);line-height:1.95;margin-bottom:0;}
.faqarea {margin-bottom:2rem;}

/*SP*/
@media (max-width: 896px){
	.faqarea .faq {padding:1.4rem 1.6rem;}
	.faqarea .faq summary {font-size:1.15rem;}
}

/*formarea / 問い合わせ*/
.contactgrid {display:flex;flex-wrap:wrap;gap:1.2rem;margin:1.5em 0 2.5em;}
.contactgrid .ccard {flex:1 1 30%;min-width:14rem;background:#fff;border:solid var(--border) 1px;border-radius:1.5rem;
	padding:2.4rem 2rem;text-align:center;box-shadow:0 10px 24px rgba(74,63,53,0.06);}
.contactgrid .ccard .ico {font-size:2rem;margin-bottom:0.6rem;}
.contactgrid .ccard h3 {font-size:1.3rem;margin-bottom:0.6rem;color:var(--ink);}
.contactgrid .ccard p {font-size:1.05rem;color:var(--ink-soft);margin-bottom:1.2rem;line-height:1.8;}
.contactgrid .ccard .btn {margin:0;font-size:1.0rem;}
.gform-wrap {background:#fff;border:solid var(--border) 1px;border-radius:1.5rem;padding:1.5rem;margin:1.5em 0;
	box-shadow:0 10px 24px rgba(74,63,53,0.06);}
.gform-wrap iframe {width:100%;border:none;display:block;}
/*SP*/
@media (max-width: 896px){
	.contactgrid .ccard {flex:1 1 100%;}
}
