@charset "UTF-8";
/*--------------------------
---------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}
img{
	height:auto;
}

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

---------------------------- */
/* [ PC - SP switch ] */
@media screen and (min-width: 768px) {
  .pcOFF {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  /* Smartphone */
  .spOFF {
    display: none !important;
  }
}
/* -------*/
* {
  box-sizing: border-box;
}

html {
  overflow-y: scroll;
  font-size:18px; /* 1rm = 16px*/
}


body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-style: normal;

    margin: 0;
    padding: 0;
    color: #153E0E;
    background-color: #fff;
	line-height:1.7;
}

a{
	color:#153E0E;
	text-decoration:none;
	text-underline-offset: 0.4ex;
}
a:hover{
	color:#0055aa;
}

a img:hover{
	opacity: 0.85;
}



/*
.jost-<uniquifier> {
  font-family: "jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-weight: 500;
  font-weight: 700;
  font-weight: 900;
}
*/


/* ----------
基本
   ---------- */
.tit01{
	font-size:32px;
	color:#258C56;
	padding-bottom:10px;
	border-bottom:solid 2px #258C56;
}



/* .setTitBlock */
.setTitBlock {
	display:flex;
	flex-flow: column;
	gap:35px 0;
	margin-bottom: clamp(30px, 8.0831vw + -31.9977px, 65px); /* Vary between 767px and 1200px */
	margin-left:auto;
	margin-right:auto;
}
.setTitBlock .setTitBlock__title {
	font-size: clamp(25px, 1.6166vw + 12.6005px, 32px); /* Vary between 767px and 1200px */
	font-weight:700;
	text-align:center;
	color:#258C56;
	position:relative;
}
.setTitBlock .setTitBlock__title:after{
	content:"";
	display:block;
	position:absolute;

	left: 50%;
	bottom:-10px;
	transform: translateX(-50%);

	width:70px;
	height:2px;
	background:#258C56;
}
.setTitBlock .setTitBlock__text {
	color:#153E0E;
	text-align:center;
}

/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
}

/* SP */
@media screen and (max-width: 767px) {
	.setTitBlock {
		gap:5px 0;
	}
	.setTitBlock .setTitBlock__title {
		line-height:1.5;
		margin-bottom:40px;
	}
}


/* flowSec__stepBtn */

.flowSec__stepBtn {
}

/* ---- */
.obj{
	background:url(../img/wave_top.png) repeat-x ;
	background-size:auto 100%;
	height:150px;
	width:auto;
}
.obj-wave-top{
	background-image:url(../img/wave_top.png) !important;
	background-position:100% top;
	height:250px;
	margin-top:-125px;
}
.obj-wave-top02{
	background-image:url(../img/wave_top02.png) !important;
	background-position:left top;
	height:100px;
}
.obj-wave-bottom{
	background-image:url(../img/wave_bottom.png) !important;
	background-position:240% top;
	height:120px;
}
.obj-wave-bottom02{
	background-image:url(../img/wave_bottom02.png) !important;
	background-position:180% top;
	height:120px;
}
.obj-wave-bottom03{
	background-image:url(../img/wave_bottom03.png) !important;
	background-position:left top;
	height:250px;
}
.obj-wave-bottom04{
	background-image:url(../img/wave_bottom04.png) !important;
	background-position:left top;
	height:105px;
}

@media screen and (max-width: 767px) {
	.obj{
		height:80px;
	}
	.obj-wave-top{
		margin-top:0px;
		height:60px;
	}
	.obj-wave-top02{
		height:80px;
	}
	.obj-wave-bottom{
		height:60px;
	}
	.obj-wave-bottom02{
		height:80px;
	}
	.obj-wave-bottom04{
		height:80px;
	}
}
/* ---- */
.btn {
	display:block;
	width:100%;
	color:#153E0E;
	border:solid 1px #258C56;
	border-radius:100px;
	background:#fff url(../img/btn--arrow--green.png) no-repeat right 5px center;
	background-size:32px 32px;
	/*text-align:center;*/
	font-weight:500;
	padding:5px 5px;
	padding-left:1.5em;
}
.btn span {
	display:inline-block;
}

.btn--arrow {
}
.btn--green{
	border:solid 1px #258C56;
	background:#258C56 url(../img/btn--arrow--white.png) no-repeat right 5px center;
	background-size:32px 32px;
	color:#fff;
}

.btn--outline {
}

.btn:hover {
  background-color: #258C56;
  color: #fff;
  border-color: #258C56;
  background-image: url(../img/btn--arrow--white.png);
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.btn--green:hover {
  background-color: #fff;
  color: #258C56;
  border-color: #258C56;
  background-image: url(../img/btn--arrow--green.png);
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.btn--arrow02.btn--green {
	border:solid 1px #258C56;
  background:#258C56 url(../img/btn--arrow--white02.png) no-repeat right 10px center;
  background-size:16px auto;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.btn--arrow02.btn--green:hover {
  background-color: #fff;
  color: #258C56;
  border-color: #258C56;
  background-image: url(../img/btn--arrow--green02.png);
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.btn--outline:hover {
  background-color: #258C56;
  color: #fff;
  border-color: #258C56;
  background-image: url(../img/btn--arrow--white.png);
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}


/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
}

/* SP */
@media screen and (max-width: 767px) {
}

a.outerlink{
}
a.outerlink span{
	display:inline-block;
	background:url(../img/target_link.png) no-repeat right 6px;
	background-size:18px 18px;
	padding-right:22px;
}

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

@media screen and (max-width: 950px) {
	#spheader.pcOFF {
		display:block !important;
	}
}

#spheader .header {
  position: sticky; /* headerを追従にする */
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
	background:rgba(255, 255, 255, 0.8);
	position:fixed;
  z-index: 1111111111111111111;
	box-shadow: 0px 6px 10px 0px rgba(209, 209, 209, 0.30);
}
#spheader .header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 10px;
}

/* ヘッダーのロゴ */
#spheader .logo {
	width:100%;
	padding-right:10px;
}

#spheader .logo {
	display:flex;
	justify-content:space-between;
	align-items: center;
}

#spheader .logoarea-logo {
}
#spheader .logoarea-logo img{
  width: auto;
  height: 50px;
  vertical-align:bottom;
}
#spheader .logoarea-tel{
}
#spheader .logoarea-tel img{
	width: auto;
	height:35px;
	vertical-align:bottom;
}








/* ハンバーガーボタンのデザイン */
#spheader .drawer__button {
  position: relative;
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  border: none;
  cursor: pointer;
  z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
}
/* ハンバーガーボタン内の線 */
#spheader .drawer__button > span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2rem;
  height: 1px;
  background-color: black;
  transform: translateX(-50%);
}
#spheader .drawer__button > span:first-child {
  transform: translate(-50%, calc(-50% - 0.5rem));
  transition: transform 0.3s ease;
}
#spheader .drawer__button > span:nth-child(2) {
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
#spheader .drawer__button > span:last-child {
  transform: translate(-50%, calc(-50% + 0.5rem));
  transition: transform 0.3s ease;
}
/* 展開時のデザイン */
#spheader .drawer__button.active > span:first-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}
#spheader .drawer__button.active > span:nth-child(2) {
  opacity: 0;
}
#spheader .drawer__button.active > span:last-child {
  transform: translate(-50%, -50%) rotate(45deg);
}


/* メニューのデザイン */
#spheader .drawer__nav {
  position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100vh + 40px);
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 0.3s ease;
  opacity: 0;
  visibility: hidden;
}
#spheader .drawer__nav.active {
  opacity: 1;
  visibility: visible;
}
#spheader .drawer__nav__inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: white;
  padding: 2rem 1.5rem 3rem;
  margin: 0 0 0 auto;
  overflow: scroll;
  transform: translateX(100%);
  transition: transform 0.3s ease;
}
#spheader .drawer__nav.active .drawer__nav__inner {
  transform: translateX(0);
}
/* ----- */
/* 既存の .drawer__nav__menu に対する基本スタイルはそのまま利用 */
#spheader .drawer__nav__menu {
  list-style: none;
  padding-left: 0;
  padding: 30px 0;
}

/* 既存の a ではなく、今回トリガーとなる <span> も同様に見せる */
#spheader .drawer__nav__menu .drawer__nav__link {
  display: block;
  text-decoration: none;
  font-size: 18px;
  letter-spacing: 0.1em;
  text-align: left;
  color: #258C56;
  padding: 10px;
  border-top: solid 1px #399D27;
  cursor: pointer; /* クリック可能に見せる */
}

/* ホバー時の色変化もおなじ */
#spheader .drawer__nav__menu .drawer__nav__link:hover {
  color: #153E0E;
}

/* サブメニュー（内包する ul）は初期状態で非表示 */
#spheader .drawer__nav__menu .sub-menu {
  display: none;
  padding-left: 1em; /* 必要に応じてインデント */
  margin: 0;
}
#spheader .drawer__nav__menu .sub-menu a{
	color:#153E0E;
	border:none;
}
/* JS で .is-open が付いたら表示する */
#spheader .drawer__nav__menu .sub-menu.is-open {
  display: block;
}

/* もし外部リンクアイコンを付けたい場合 */
/*
#spheader .drawer__nav__menu .drawer__nav__link.outerlink::after {
  content: "";
  display: inline-block;
  background: url(../img/target_link.png) no-repeat right center;
  background-size: 18px auto;
  padding-right: 2em;
}
*/

.drawer__nav__link.js-accordion-trigger{
  background:url(../img/js-accordion-trigger-down.png) no-repeat;
  background-position:right 5px top 20px;
  background-size:auto 7px;
}
.drawer__nav__link.js-accordion-trigger.is-open{
  background-image:url(../img/js-accordion-trigger-up.png);
}


/* ----- */
.accordion-content {
  display: none;
  padding-left: 15px;
}

.accordion-toggle::after {
  content: '＋';
  float: right;
  font-size: 16px;
  transition: transform 0.3s ease;
}

.accordion-toggle.active::after {
  content: '－';
}

/* ----- */
.spMenu-btn {
	display:flex;
	flex-direction:column;
	gap:10px;
}
.spMenu-btn li{
}
.spMenu-btn a{
	display:block;
	background:#258C56;
	border:solid 1px #258C56;
	border-radius:5px;
	padding:10px 15px;
	text-align:center;
	font-size:16px;
	color:#fff;
	border-radius:100px;
	font-weight:bold;
}
.spMenu-btn a span{
	display:block;
	width:100%;
}
.spMenu-btn a:hover {
  background: #fff; /* 少し濃いオレンジ */
  color:#153E0E;

  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* ふわっと影 */
  transition: background 0.3s, box-shadow 0.3s; /* アニメーション */
  cursor: pointer;
}


.spMenu-btn .item-banner a{
	background:none;
	box-shadow:none;
}



.spMenu-btn .item-crop a{
	color:#258C56;
	background:#fff;
}
.spMenu-btn .item-crop a span{
	background:url(../img/target_link.png) no-repeat right center;
	background-size:22px auto;
}
.spMenu-btn .item-crop a:hover{
	color:#153E0E;
}

#spheader .drawer__nav__menu-sub {
	margin-top:15px;
}

/* ----------
pcHeader
   ---------- */
.pcHeader {
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	background:#F9F8F4;
	z-index:9999999;
	padding:16px 10px 15px;
	font-size:16px;
	transition: background-color 0.4s ease; /* 0.4秒かけて色が変わる */
}


body.otherPage .pcHeader {
	background:none;
}
body.noPageTit .pcHeader {
	background:#F9F8F4;
}



body .pcHeader.invert {
 	background:#F9F8F4 !important;
    transition: all 0.3s ease;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); /* 下に軽い影 */
}
.pcHeader .inner {
	width:100%;
	height:65px;
	max-width:1350px;
	margin:0 auto;
}

/* ---- */
.pcHeader .headerLogo{
	position:absolute;
}
.pcHeader .headerLogo:has(img.is-vertical) {
	top:45%;
}
.pcHeader .headerLogo:has(img.is-horizontal) {
	top:6px;
}
.pcHeader .headerLogo .header__title {
}
.pcHeader .headerLogo .header__title img {
}
.pcHeader .headerLogo .header__title .visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


.pcHeader .headerLogo .header__title img.is-vertical{
	width:100%;
	max-width:150px;
	height:auto;
}

.pcHeader .headerLogo .header__title img.is-horizontal{
	width:135px;
	height:auto;
	margin-top:5px;
	top:0;
}
.pcHeader .headerLogo .header__title .js-logo-switch {
  transition: opacity 0.3s ease;
  opacity: 1;
}

.pcHeader .headerLogo .header__title .js-logo-switch.is-fading {
  opacity: 0.2; /* もしくは display: none; は避ける */
  transition: opacity 0.3s ease;
}

/* ---- */
.pcHeader .header__navArea {
	width:100%;
	margin:0 auto;

	display: flex;
	justify-content:flex-end;
	align-items: flex-start;
	gap:0 15px;
}
.pcHeader .header__navArea .header__nav {
	display: flex;
	align-items: flex-start;
	gap:0 15px;
}
.pcHeader .header__navArea .header__nav .header__navList {
	padding-top:12px;
	line-height:1.4;
	display: flex;
	gap:0 1em;
}
.pcHeader .header__navArea .header__nav .header__navList .header__navItem {
	display:inline;
	border-right:solid 1px #ccc;
	padding-right:1em;

	display: flex;
	align-items:center;
	gap:0 1em;

}
.pcHeader .header__navArea .header__nav .header__navList .header__navItem:last-child {
}
.pcHeader .header__navArea .header__nav .header__navList .header__navItem a {
	display:block;
	text-align:center;
	font-size:15px;
}
.pcHeader .header__navArea .header__nav .header__navList .header__navItem a br {
	display:none;
}

/* ---- */
.pcHeader .header__navArea .header__contact {
}
.pcHeader .header__navArea .header__contact a{
}
.pcHeader .header__navArea .header__contact a img{
	width:100%;
	max-width:235px;
	height:auto;
	vertical-align:bottom;
}

/* ---- */
.header__fontsize {
  display: flex;
  align-items: center;
}
.header__fontsize .header__fontsizeLabel{
	font-size:14px;
	text-align:right;
	padding:5px;
	line-height:1;
}
.header__fontsizeBtn {
  padding: 8px 15px;
  border: none;
  font-size: 14px;
  background: white;
  color: #004400;
  cursor: pointer;
  transition: all 0.3s;
}

button[data-size="normal"]{
	border-radius: 8px 0 0 8px;
}
button[data-size="large"]{
	border-radius: 0px 8px 8px 0px;
}



.header__fontsizeBtn.is-active {
  background-color: #2e8b57; /* 緑 */
  color: white;
  font-weight: bold;
}


@media screen and (max-width: 1250px) {
	.pcHeader .header__navArea .header__nav .header__navList .header__navItem a br {
		display:block;
	}
}


@media screen and (max-width: 1100px) {
	.pcHeader .header__navArea {
		gap:0 8px;
	}

	.pcHeader .headerLogo img.is-vertical {
		top:21% !important;
	}
	.pcHeader .header__navArea .header__nav .header__navList {
		padding-top:2px;
	}
	.header__fontsize .header__fontsizeLabel{
		font-size:13px;
		padding:5px;
	}
	.header__fontsizeBtn {
	  padding: 6px 5px;
	  font-size: 13px;
	}

	.pcHeader .headerLogo .header__title img.is-vertical { max-width:100px; }
	.pcHeader .header__navArea .header__contact a img{ max-width:185px; }


}
/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
  .example {
    width: calc(100% - 30px);
  }
}
/* SP */
@media screen and (max-width: 950px) {
	.pcHeader{
		display:none;
	}
}



/* ----------
wrapper
   ---------- */
#wrapper{
	margin-top:96px;
}
body#pageTop #wrapper{
	margin-top:94px;
}
@media screen and (max-width: 950px) {
	#wrapper{
		margin-top:66px;
	}
}
/* ----------
mainVisual
   ---------- */
.mainVisual{
	background:#F9F8F4;
}
.mainVisual .inner{
	width:100%;
	max-width:1350px;
	height:100%;
	margin:0 auto;
	aspect-ratio:135 / 74;
	position:relative;
}
/* ---- */
.mainVisual_content{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	min-width:255px;
	z-index:15;
}

/* ---- */
.mainVisual_content .mainVisual_content__tit{
	width:100%;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	font-size:33px;
	color:#258C56;
	line-height:1.2;
	padding-bottom:40px;

	display: flex;
	justify-content:center;
	align-items:center;
}
.mainVisual_content .mainVisual_content__txt{
	width:100%;
}
.mainVisual_content .mainVisual_content__txt .mainVisual_content__txt__btn{
}
.mainVisual_content .mainVisual_content__txt .mainVisual_content__txt__btn span{
	font-size:16px;
}
.mainVisual_content .mainVisual_content__txt .mainVisual_content__txt__lbl{
	margin-top:5px;
	display:block;
	text-align:center;
	font-size:15px;
}

/* ---- */
.mainVisual .inner picture{
	position:absolute;
	z-index:10;
}
.mainVisual .inner picture img{
	vertical-align:bottom;
}

.mainVisual_pic01{
	top:53%;
	left:2%;
	width:19%;
}
.mainVisual_pic01 img{
	width:100%;
	height:auto;
}
.mainVisual_pic02{
	top:9%;
	left:65%;
	width:28%;
}
.mainVisual_pic02 img{
	width:100%;
	height:auto;
}
.mainVisual_pic03{
	top:67%;
	left:72%;
	width:27%;
}
.mainVisual_pic03 img{
	width:100%;
	height:auto;
}

.mainVisual svg{
	position:absolute;
	z-index:1;
	width:auto;
	height:100%;
	margin-left:10%;
	margin-top:3%;
}
.mainVisual .draw {
  stroke: #E0DED9;        /* ご希望の線色 */
  stroke-width: 3;        /* ご希望の線幅 */
  fill: none;             /* 塗りつぶしなし */
  stroke-dasharray: 1200; /* パスの長さ。JSで自動化も可 */
  stroke-dashoffset: 1200;
  animation: drawLine 3s linear forwards;
}

@keyframes drawLine {
  to {
    stroke-dashoffset: 0;
  }
}

.mainVisual_spButton{
	display:none;
}


/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
	.mainVisual_content .mainVisual_content__tit{
		padding-bottom:15px !important;
	}
}

/* SP */
@media screen and (max-width: 780px) {
	.mainVisual{
	}
	.mainVisual .inner{
		width:100%;
		max-width:1350px;
		height:auto;
	}

	/* ---- */

	.mainVisual_cnt{
		width:100%;
		max-width:calc( 100% - 30px);
		margin:0 auto;
		display:flex;
		flex-wrap:wrap;
		gap:0 0%;
		position:relative;
		z-index:10;
	}
	.mainVisual_content{
		width:40%;
		min-width:auto;
	}
	.mainVisual_pic01{
		margin-top:15px;
		width:60%;
	}

	.mainVisual_spButton{
		display:block;
	}
	/* ---- */
	.mainVisual_content{
		position:static;
		top:auto;
		left:auto;
		bottom:auto;
		right:auto;
		transform:none !important;
	}




	.mainVisual_content .mainVisual_content__tit span{
		font-size:28px !important;
	}
	.mainVisual_pic02{ display:none; }
	.mainVisual_pic03{ display:none; }

	.mainVisual_pic01{
		position:static !important;
		top:auto;
		left:auto;
		bottom:auto;
		right:auto;
	}
	.mainVisual_pic01 img{
		width:100%;
		height:auto;
	}
	/* ---- */
	.mainVisual svg{
		width:95%;
		height:auto;
		margin-left:0;
		position:absolute;
		z-index:1;

		left: 50%;
		top:55%;
		transform: translateX(-50%);
	}

	/* ---- */
	.mainVisual_content .mainVisual_content__txt{
		display:none;
	}


	/* ---- */
	.mainVisual_spButton{
		width:100%;
		padding:20px 0;
	}
	.mainVisual_spButton a{
		width:249px;
		margin-left:auto;
		margin-right:auto;
	}
	.mainVisual_spButton span{
		font-size:16px;
	}
	.mainVisual_spButton .mainVisual_content__txt__lbl{
		display:block;
		text-align:center;
		font-size:13px;
	}




}


/* ----------
pageTit
  ---------- */
.pageTit{
	background:#fff;
	position:relative;
	z-index:1;
}
.pageTit:before {
	content: "";
    display: block;
    width: 100%;
    height: 176px;
    position: absolute;
    left: 0;
    top: -75%;
    background: url(../img/pageTit_bk.png) repeat-x;
    background-size: auto 100%;
    background-position: center bottom;
    /* background-attachment: fixed; */
    z-index: 1;
}

.pageTit .inner{
	width:100%;
	max-width:1180px;
	margin:0 auto;

	height:100px;

	display: flex;
	align-items: center;

	position:relative;
	z-index:10;
}
.pageTit .inner .tit{
	font-size:32px;
	font-weight:bold;
	color:#258C56;
}


/* Wide Breakpoint */
@media screen and (max-width: 1180px) {
	.pageTit .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.pageTit:before {
		content:none;
	}

	.pageTit .inner{
		height:80px;

	}
	.pageTit .inner .tit{
		font-size:18px;
	}
}

/* ----------
content-area
  ---------- */
.content-area{
	position:relative;
	z-index:10;
}

/* ----------
breadcrumb
  ---------- */
.breadcrumb {
	background:#E8E5D7;
	padding:10px 0;
}

body.otherPage .breadcrumb {
	background:#F9F8F4;
	padding-bottom:100px;
}
 

.breadcrumb .inner {
	width:100%;
	max-width:1180px;
	margin:0 auto;	width:100%;
	max-width:1180px;
}

/* ---- */
.breadcrumb__list {
	display: flex;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.breadcrumb .breadcrumb__list .breadcrumb__item {
	font-size:0.75rem;
}
.breadcrumb .breadcrumb__list .breadcrumb__item .breadcrumb__link {
}
.breadcrumb .breadcrumb__list .breadcrumb__item .breadcrumb__link:after {
	content:" 〉";
	margin-left:10px;
}
/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
	.breadcrumb .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {

	body.otherPage .breadcrumb {
		margin-bottom:0px;
		padding-bottom:30px;
	}
	.breadcrumb__list {
		overflow-x: auto;        /* 横スクロール */
		white-space: nowrap;     /* 改行しない */
		-webkit-overflow-scrolling: touch; /* iOSでスムーズ */
	}
	.breadcrumb__item {
		flex: 0 0 auto;          /* アイテムが縮まない */
	}
}

.breadcrumb-bottom{
	height:60px;
	margin-bottom:80px;
}

/* ----------
picupSec
   ---------- */
.picupSec {
	background:#F9F8F4;
	padding:80px 0;
	position:relative;
}



.picupSec .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;

	display:flex;
	gap:0 9%;
}

/* ---- */
.picupSec__titBox {
	width:220px;
	position:relative;
}
.picupSec__titBox .picup__title {
	position:relative;
	z-index:20;
}

.picup__title {
	font-size: clamp(25px, 1.6166vw + 12.6005px, 32px); /* Vary between 767px and 1200px */
	font-weight:700;
	color:#258C56;
	position:relative;
}
.picup__title:after{
	content:"";
	display:block;
	position:absolute;

	bottom:-10px;

	width:70px;
	height:2px;
	background:#258C56;
}



.picupSec__titBox .btn {
	position:absolute;
	bottom:0;
}
.picupSec__titBox .btn span {
}

/* ---- */
.picup__list {
	width:calc((100% -  9%) - 220px);

	background:#fff;
	width:calc((100% -  9%) - 220px);
	border-radius:10px;
	display:flex;
	flex-direction:column;
	gap:10px;
}
.picup__list .picup__item {
	width:100%;
	padding:20px ;
	border-bottom:solid 1px #DDDDDD;
	display:flex;
	gap:10px 20px;
}

/* ---- */
.picup__list .picup__item .picup__date {
	font-family: "Jost", sans-serif;
	font-size: 0.9375rem;  /* → 15px */
	color:#153E0E;
}

/* ---- */
.picup__list .picup__item .picup__text {
	font-size: 0.9375rem;  /* → 15px */
	transition: all 0.2s;
}
.picup__list .picup__item .picup__text:hover{
}


/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.picupSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.picupSec {
		padding-bottom:0;
	}
	.picupSec .inner {
		gap:15px;
		flex-direction:column;
	}

	.picupSec__titBox .picup__title {
		font-size: 23px;
		text-align:center;
		width:100%;
		margin-bottom:40px;

	}
	.picupSec__titBox .picup__title:after {
		position:absolute;
		bottom:-10px;
		left: 50%;
		bottom:-10px;
		transform: translateX(-50%);
	}

	/* ---- */
	.picupSec__titBox {
		width:100%;
	}
	.picup__list {
		width:100%;
		margin-bottom:30px;
	}
	.picup__list .picup__item {
		flex-direction:column;
		gap:5px;
	}
	.picup__list .picup__item .picup__date {
		display:block;
	}
	.picup__list .picup__item .picup__text {
		display:block;
	}
	.picupSec__titBox .picup__more {
		position:static;
		bottom:0;
	}
	.picup__more .btn{
		max-width:220px !important;
		margin-left:auto ;
		margin-right:auto;
		margin-bottom:35px;
	}
}



/* ----------
reasonSec
   ---------- */
.reasonSec {
	padding:80px 0 0;
	position:relative;
	z-index:10;
	background:#F9F8F4;
}
.reasonSec .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;
}

/* ---- */
.reasonSec .setTitBlock {
}
.reasonSec .setTitBlock .setTitBlock__title {
}
.reasonSec .setTitBlock .setTitBlock__text {
}


/* ---- */
.reasonSec__cntBox {
	display:flex;
	gap:40px 4.5%;
}

/* ---- */
.reasonSec__cntBox .reasonSec__content {
	width:50%;
}
.reasonSec__cntBox .reasonSec__content .reasonSec__heading {
	color:#258C56;
	/* font-size: 1.5rem;  → 24px */
	font-size: clamp(25px, 1.6166vw + 12.6005px, 32px);
	font-weight:bold;
	margin-bottom:25px;
}
.reasonSec__cntBox .reasonSec__content .reasonSec__list {
	display: flex;
	flex-direction: column;
	gap:15px;
	counter-reset: number; /* カウンター初期化 */
}
.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item {
	counter-increment: number;
	/* font-size: 1.25rem;  → 20px */
	font-size:20px;
	position: relative;
	padding-left:45px;
	font-weight:500;
}
.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item:before{
  content: counter(number, decimal-leading-zero);
  /* 2桁で0埋め（01, 02...） */

	/* font-size: 1.375rem;  → 22px */
	font-size:22px;

	position: absolute;
	top: 0;
	left:0px;
	font-family: inherit; /* フォント揃え */
	color:#258C56;
	border-bottom:solid 1px #258C56;
	font-family: "Jost", sans-serif;
}

/* ---- */
.reasonSec__cntBox .reasonSec__image {
	width:45.5%;
	text-align:center;
}
.reasonSec__cntBox .reasonSec__image img {
	width:100%;
	max-width:482px;
}



/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.reasonSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {

	.reasonSec {
		padding:40px 0 0;
	}
	.reasonSec__cntBox {
		flex-direction: column;
		gap:30px;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__heading {
		text-align:center;
	}
	.reasonSec__cntBox .reasonSec__content {
		width:100%;
	}
	.reasonSec__cntBox .reasonSec__image {
		width:100%;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__list {
		gap:5px;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item {
		font-size:18px;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item:before{
		font-size:18px;
	}
}
/* SP */
@media screen and (max-width: 400px) {


	.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item {
		padding-left:35px;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item {
		font-size:15px;
	}
	.reasonSec__cntBox .reasonSec__content .reasonSec__list .reasonSec__item:before{
		font-size:15px;
	}
}

.formPolicy {
  max-height: 200px; /* 固定の高さ（必要に応じて調整） */
  overflow-y: auto;  /* 縦スクロールを有効に */
  padding: 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  background-color: #f9f9f9;
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.6;
  text-align:left;
  margin-bottom:20px;
}

/* スクロールバーをスタイリッシュに（WebKit系） */
.formPolicy::-webkit-scrollbar {
  width: 8px;
}

.formPolicy::-webkit-scrollbar-thumb {
  background-color: #bbb;
  border-radius: 4px;
}

.formPolicy::-webkit-scrollbar-track {
  background-color: #eee;
}

.formPolicy__lst{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.formPolicy__lst dt,
.formPolicy__lst dd{
	width:100%;
}

.formPolicy_check {
	margin-bottom:30px;
}
.formPolicy_check input{
	margin-right:10px;
	display:inline-block;
}

/* ----------
pointSec
   ---------- */
.pointSec {
	padding:80px 0 0;
	background:#F9F8F4;
}
.pointSec .inner {
	width:100%;
	max-width:1040px;
	margin:0 auto;
}

/* ---- */
.pointSec .setTitBlock {
}
.pointSec .setTitBlock .setTitBlock__title {
	font-size:24px;
}
.pointSec .setTitBlock .setTitBlock__title:after{
	content:none;
}

/* ---- */
.pointSec .pointSec__items {
	display:flex;
	gap:0 4.5%;
	flex-wrap:wrap;
	margin-bottom:40px;
}
.pointSec .pointSec__items .pointSec__item {
	width:calc((100% - 13.5%) / 4);
}
.pointSec .pointSec__items .pointSec__item img {
	width:100%;
	height:auto;
	box-shadow: 0px 0px 15px 0px rgba(114, 114, 114, 0.25);
	border-radius:6px;
	margin-bottom:8px;
}
.pointSec .pointSec__items .pointSec__item .pointSec__text {
	text-align:center;
	font-size: 1.125rem;  /* → 18px */
}

/* ---- */
.pointSec .pointSec__more {
	padding:40px 0;
  display: flex;
  justify-content:center;
}
.pointSec .pointSec__more .btn {
	max-width:220px;
}
.pointSec .pointSec__more .btn span {
}

/* Wide Breakpoint */
@media screen and (max-width: 1040px) {
	.pointSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.pointSec {
		padding:40px 0 0;
	}
	.pointSec .pointSec__items {
		gap:18px 15px;
	}
	.pointSec .pointSec__items .pointSec__item {
		width:calc((100% - 15px) / 2);
	}
	.pointSec .pointSec__items .pointSec__item img {
		margin-bottom:1px;
	}
	.pointSec .pointSec__items .pointSec__item .pointSec__text {
		font-size: 16px;
	}
}


@media screen and (max-width: 400px) {
	.pointSec .pointSec__items {
		gap:18px 10px;
	}
	.pointSec .pointSec__items .pointSec__item {
		width:calc((100% - 10px) / 2);
	}
	.pointSec .pointSec__items .pointSec__item .pointSec__text {
		text-align:center;
		font-size: 14px;
	}
}

/* ----------
gardenListSec
   ---------- */
.gardenListSec {
	padding:80px 0;
	position:relative;
}
.gardenListSec .inner {
	position:relative;
}

/* ---- */
.gardenListSec svg{
	width:100%;
	max-width:900px;
	height:auto;
	position:absolute;
	top:-50px;
	left: 50%;
	transform: translateX(-50%);
	z-index:1;
}

.svgDraw02 path {
	stroke-dasharray: 0;
	stroke-dashoffset: 0;
}

/* アニメーション用のクラス */
.svgDraw02.is-animated path {
  animation: drawLine 3s linear forwards;
}

/* アニメーション本体 */
@keyframes drawLine {
  to {
    stroke-dashoffset: 0;
  }
}



/* ---- */
.gardenListSec .setTitBlock {
	position:relative;
	z-index:10;
}
.gardenListSec .setTitBlock .setTitBlock__title {
}
.gardenListSec .setTitBlock .setTitBlock__text {
}

/* ---- */
.gardenListSec .gardenListSec__btn {
	max-width:240px;
	margin:0 auto 50px; 
	position:relative;
	z-index:10;
}
.gardenListSec .gardenListSec__btn .btn {
}
.gardenListSec .gardenListSec__btn .btn span {
}




/* ---- */
.gardenListSec {
  width: 100%;
  box-sizing: border-box;
}

.gardenListSec__loop {
  overflow: hidden;
  width: 100%;
  position: relative;
}


/* gardenListSec__list */
.gardenListSec__list{
}
.gardenListSec__item{
}
.gardenListSec__item a{
	display:block;
}
.gardenListSec__item img{
	display:block;
	width:100%;
	height:auto;
	border-radius:10px;
	margin-bottom:10px;
}
.gardenListSec__item p{
	text-align:center;
	font-size: 18px;
}

.gardenListSec__list .slick-slide {
  margin: 0 10px; /* 左右に10pxの隙間を作る */
}
/* 矢印ボタンの位置調整 */
.gardenListSec .slick-prev,
.gardenListSec .slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: none;
  border: none;
}

.gardenListSec .slick-prev {
  left: 0px; /* 必要に応じて調整 */
}
.gardenListSec .slick-next {
  right: 0px;
}
.gardenListSec .slick-prev img{
	width:40px;
}
.gardenListSec .slick-next img{
	width:40px;
}


/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
  .gardenListSec .setTitBlock {
    width: calc(100% - 30px);
  }
}



/* ----------
flowSec
   ---------- */
.flowSec {
	padding:80px 0;
}
.flowSec .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;
}

/* ---- */
.flowSec .setTitBlock {
}
.flowSec .setTitBlock .setTitBlock__title {
}
.flowSec .setTitBlock .setTitBlock__text {
}

/* ---- */
.flowSec .flowSec__steps {
	display:flex;
	gap:0 4.5%;
}
.flowSec .flowSec__steps .flowSec__step {
	width:calc( (100% - 9% ) / 3);
	background:#FAF8F4;
	border-radius:10px;

	padding:25px;
	position:relative;
}

.flowSec .flowSec__steps .flowSec__step:after {
	position:absolute;
	top: 50%;
	right:-44px;
	transform: translateY(-50%);

	display:block;
	content:"";
	background:url(../img/flow_arrow01.png) no-repeat center center;
	background-size:auto 90%;
	width:44px;
	height:19px;
}
.flowSec .flowSec__steps .flowSec__step:last-child:after {
	content:none;
}
/* ---- */


/* ---- */

.flowSec__step-titBox{
	display:flex;
	justify-content:center;
	gap:0 10px;
}



.flowSec .flowSec__steps .flowSec__step .flowSec__stepNumber {
	font-family: "Jost", sans-serif;
	color:#258C56;

	text-decoration:underline;
	text-decoration-color:#258C56;
	text-underline-offset: 5px;

	font-size:28px;
}


.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent {
	display:flex;
	justify-content:center;
	gap:0 10px;
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader {
	padding-top:8px;
	color:#258C56;
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader .flowSec__stepTitle {
	font-size:20px;
	text-align:center;
	font-weight:bold;
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader .flowSec__stepSub {
	font-size:20px;
	text-align:center;
	font-weight:bold;
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader .flowSec__stepSub span{
	font-size:16px;
	display:block;
}
.flowSec__stepContent-step02{
	margin-bottom:20px;
}
.flowSec__stepContent-step03{
	margin-bottom:20px;
}




/* ---- */
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepIcon {
	margin-top:0px;
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepIcon img {
}

/* ---- */
.flowSec .flowSec__steps .flowSec__step .flowSec__stepBtn {
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepBtn .btn {
}
.flowSec .flowSec__steps .flowSec__step .flowSec__stepBtn .btn span {
}

/* ---- */
.flowSec .flowSec__steps .flowSec__step .flowSec__stepNote {
	color:#258C56;
}

/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.flowSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.flowSec {
		padding:40px 0;
	}
	.flowSec .flowSec__steps {
		display:flex;
		flex-direction:column;
		gap:35px
	}
	.flowSec .flowSec__steps .flowSec__step {
		width:calc( (100% - 0% ) / 1);

		padding:15px;
	}
	.flowSec .flowSec__steps .flowSec__step:after {
		bottom: -29px;
		top:auto;
		left:50%;
		right:auto;
		transform: translateX(-50%);

		background:url(../img/flow_arrow02.png) no-repeat center center;
		background-size:auto 90%;

		width:44px;
		height:20px;
	}
	.flowSec .flowSec__steps .flowSec__step:last-child:after {
		content:none;
	}




	.flowSec__step-titBox{
		gap:0 15px;
	}
	.flowSec__step{
		border: solid 1px #258C56;
	}
	.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader > *{
		display:inline-block;
	}
	.flowSec .flowSec__steps .flowSec__step .flowSec__stepContent .flowSec__stepHeader .flowSec__stepSub span{
		display:inline-block;
	}
	.flowSec__stepContent-step02{
		margin-bottom:0px;
	}
	.flowSec__stepContent-step03{
		margin-bottom:0px;
	}
	.flowSec .flowSec__steps .flowSec__step .flowSec__stepNote {
		text-align:center;
	}

}


/* ----------
contactSec
   ---------- */
.contactSec {
	padding:30px 0;
	margin-bottom:50px;
}
.contactSec .inner {
	width:100%;
	max-width:980px;
	margin:0 auto;
	background:#F9F8F4;
	border-radius:10px;
	overflow:hidden;
	box-shadow: 0px 6px 10px 0px rgba(158, 158, 158, 0.45);
	margin-bottom:35px;
}

/* ---- */
.contactSec .contactSec__head {
	background:#258C56;
}
.contactSec .contactSec__head .contactSec__title {
	text-align:center;
	color:#fff;
	padding:5px 0;
	font-size:20px;
}

/* ---- */
.contactSec .contactSec__body {
	display:flex;
	padding:20px;
}

/* ---- */
.contactSec .contactSec__body .contactSec__block {
	width:50%;
	padding:20px ;
	border-right:solid 2px #D9D9D9;
}
.contactSec .contactSec__body .contactSec__block .contactSec__block__inner{
	/*width:80%;*/
	margin:0 auto;
}
.contactSec__block--web{
}
.contactSec .contactSec__body .contactSec__block.contactSec__block--tel{
	border-right:none;
}
.contactSec .contactSec__body .contactSec__block .contactSec__label {
	border-radius:100px;
	text-align:center;
	padding:3px 10px;
	margin-bottom:20px;
}

/* ---- */

.contactSec__block__inner_btnArea{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.contactSec__block__inner_btnArea span{
	margin-right:10px;
}

.contactSec .contactSec__body .contactSec__block .btn {
	width:calc( (100% - 10px) / 2);
	text-align:center;
	padding-left:0;
}
.contactSec .contactSec__body .contactSec__block .btn span {
}

/* ---- */
.contactSec .contactSec__body .contactSec__block .contactSec__telBox {
}
.contactSec .contactSec__body .contactSec__block .contactSec__telBox a {
	display:block;
	text-align:center;
}
.contactSec .contactSec__body .contactSec__block .contactSec__telBox a img {
	width:100%;
	max-width:278px;
	height:auto;
	vertical-align:bottom;
}
.contactSec .contactSec__body .contactSec__block .contactSec__telBox a .contactSec__tel {
}

.contactSec .inner + .btn{
	max-width:545px;
	margin-left:auto;
	margin-right:auto;
}
.contactSec .inner + .btn span{
	font-size:20px;
}

/* Wide Breakpoint */
@media screen and (max-width: 980px) {
	.contactSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.contactSec .contactSec__head .contactSec__title {
		padding:5px 5px;
		font-size:16px;
	}
	.contactSec .contactSec__body {
		display:flex;
		flex-direction:column;
		gap:15px;
	}
	.contactSec .contactSec__body .contactSec__block {
		width:100%;
		padding:0;
		border:none;
	}
	.contactSec .contactSec__body .contactSec__block .contactSec__block__inner{
		width:100%;
	}
	.contactSec .inner + .btn{
		max-width:310px !important;
		margin-left:auto ;
		margin-right:auto;
	}
	
	.contactSec__block__inner_btnArea span{
		font-size:16px;
	}
}

@media screen and (max-width: 450px) {
	.contactSec .contactSec__body {
		padding:10px 10px 25px;
	}
	.contactSec .contactSec__body .contactSec__block .btn {
		width:100%;
	}
}

/* ----------
infoSec
   ---------- */
.infoSec {
	padding:0px 0 80px;
	background:#F9F8F4;
}
.infoSec .inner {
	width:100%;
	max-width:830px;
	margin:0 auto;
}

/* ---- */
.infoSec .setTitBlock {
}
.infoSec .setTitBlock .setTitBlock__title {
}
.infoSec .setTitBlock .setTitBlock__text {
}

/* ---- */
.infoSec .infoSec__list {
	display:flex;
	flex-wrap:wrap;
	gap:0 4.5%;
}
.infoSec .infoSec__list .infoSec__item {
	width:calc( (100% - 9%) / 3);
}
.infoSec .infoSec__list .infoSec__item a {
}

/* ---- */
.infoSec .infoSec__list .infoSec__item .infoSec__img {
	text-align:center;
	margin-bottom:5px;
}
.infoSec .infoSec__list .infoSec__item .infoSec__img img {
	width:100%;
	max-width:250px;
}

/* ---- */
.infoSec .infoSec__list .infoSec__item .infoSec__text {
	text-align:center;
}
.infoSec .infoSec__list .infoSec__item .infoSec__text span {
	background:url(../img/btn--arrow--green.png) no-repeat right 5px center;
	background-size:32px 32px;
	color:#153E0E;
	/* font-size: 1.5rem;  → 24px */
	font-size: 24px;
	font-weight:bold;
	padding-right:55px;
}
.infoSec .infoSec__list .infoSec__item a:hover .infoSec__text span{
  background-image:url(../img/btn--arrow--white.png);
  color:#000;
  transition: background 0.2s, color 0.2s;
}


/* Wide Breakpoint */
@media screen and (max-width: 830px) {
	.infoSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.infoSec {
		padding:30px 0 0;
	}
	.infoSec .infoSec__list {
		display:flex;
		gap:20px 15px;
	}
	.infoSec .infoSec__list .infoSec__item {
		width:calc( (100% - 15px) / 2);
	}

	/* ---- */

	.infoSec .infoSec__list .infoSec__item .infoSec__text span {
		background-size:auto 100%;
		font-size: 17px;
		padding-right:40px;
	}
	.infoSec .infoSec__list .infoSec__item a:hover .infoSec__text span{
	}


}
@media screen and (max-width: 500px) {
	/* ---- */

	.infoSec .infoSec__list .infoSec__item .infoSec__text span {
		background-size:auto 100%;
		font-size: 15px;
		padding-right:30px;
	}
	.infoSec .infoSec__list .infoSec__item a:hover .infoSec__text span{
	}


}


/* ----------
newsSec
   ---------- */
.newsSec {
	padding:80px 0;
	background:#F9F8F4;
}
.newsSec .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;

	display:flex;
	gap:0 9%;
}

/* ---- */
.newsSec__titBox {
	width:220px;
	position:relative;
}

.newsSec__titBox .news__title {
	font-size: clamp(25px, 1.6166vw + 12.6005px, 32px); /* Vary between 767px and 1200px */
	font-weight:700;
	color:#258C56;
	position:relative;
}
.newsSec__titBox .news__title:after {
	content:"";
	display:block;
	position:absolute;

	bottom:-10px;

	width:70px;
	height:2px;
	background:#258C56;
}


.newsSec__titBox .news__more {
	width:100%;
	position:absolute;
	bottom:0;
}
.newsSec__titBox .news__more .btn {
}
.newsSec__titBox .news__more .btn span {
}

/* ---- */

.news__list {
	background:#fff;
	width:calc((100% -  9%) - 220px);
	border-radius:10px;
	display:flex;
	flex-direction:column;
	gap:10px;
}
.news__list .news__item {
	width:100%;
	padding:20px ;
	border-bottom:solid 1px #DDDDDD;
}
.news__list .news__item:last-child{
	border:none;
}

/* ---- */
.news__list .news__item .news__meta {
	display:flex;
	flex:1;
	gap:5px 8px;
	margin-bottom:5px;
}
.news__list .news__item .news__meta .news__date {
	font-family: "jost", sans-serif;
}
.news__list .news__item .news__meta .news__categoryList {
	display:flex;
	flex:1;
	gap:5px 8px;
}
.news__list .news__item .news__meta .news__categoryList .news__category {
	background:#258C56;
	color:#fff;
	font-size: 0.9375rem;  /* → 15px */
	border-radius:100px;
	padding:0px 10px;
}

/* ---- */
.news__list .news__item .news__text {
}



/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.newsSec .inner {
		width: calc(100% - 30px);
	}
}



/* SP */
@media screen and (max-width: 767px) {

	.newsSec {
		padding-bottom:40px;
	}
	.newsSec .inner {
		gap:15px;
		flex-direction:column;
	}

	.newsSec__titBox .news__title {
		font-size: 23px;
		text-align:center;
		width:100%;
		margin-bottom:40px;
	}
	.newsSec__titBox .news__title:after {
		position:absolute;
		bottom:-10px;
		left: 50%;
		bottom:-10px;
		transform: translateX(-50%);
	}

	/* ---- */
	.newsSec__titBox {
		width:100%;
	}
	.news__list {
		width:100%;
		margin-bottom:30px;
	}
	.news__list .news__item .news__meta .news__categoryList .news__category {
		font-size: 13px;
		padding:2px 8px 0;
	}
	.newsSec__titBox .news__more {
		position:static;
		bottom:0;
	}
	.news__more .btn{
		max-width:220px !important;
		margin-left:auto ;
		margin-right:auto;
	}
}

/* ----------
infoCardSec
   ---------- */
.infoCardSec {
	padding:80px 0;
}
.infoCardSec .inner {
	width:100%;
	max-width:870px;
	margin:0 auto;
}

/* ---- */
.infoCardSec .infoCardSec__list {
	display:flex;
	gap:0px 8%;

}
.infoCardSec .infoCardSec__list .infoCardSec__item {
	width:calc( (100% - 8%) / 2 );
	background:#F3F3F3;
	border:solid 1px #258C56;
	border-radius:8px;
	padding:20px 20px;
}
.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link {
}

/* ---- */
.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body {
}
.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__title {
	color:#153E0E;
	font-size:25px;
	font-weight:bold;
	margin-bottom:10px;
}
.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__title span {
	display:block;
	background:url(../img/btn--arrow--green.png) no-repeat right center;
	background-size:30px 30px;
	padding-right:50px;
}
.infoCardSec__item__recruit .infoCardSec__title span{
	background-image:url(../img/target_link.png) !important;
}
.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__text {
	color:#258C56;
}

.infoCardSec .infoCardSec__list .infoCardSec__item:hover{
	background:#fff;
  transition: background 0.2s, color 0.2s;
}


/* Wide Breakpoint */
@media screen and (max-width: 870px) {
	.infoCardSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {

	.infoCardSec {
		padding:40px 0;
	}

	/* ---- */
	.infoCardSec .infoCardSec__list {
		display:flex;
		gap:15px;
		flex-direction:column;
	}
	.infoCardSec .infoCardSec__list .infoCardSec__item {
		width:calc( (100% - 0%) / 1 );
	}
	.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__title {
		font-size:23px;
	}
	.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__text {
	}
	.infoCardSec .infoCardSec__list .infoCardSec__item .infoCardSec__link .infoCardSec__body .infoCardSec__text br{
		display:none;
	}
}

/* ----------
serviceSec
   ---------- */
.serviceSec {
	background:#F9F8F4;
	padding:80px 0;
}
.serviceSec .inner {
}

/* ---- */
.serviceSec .setTitBlock {
	width:100%;
	max-width:1350px;
	margin-left:auto;
	margin-right:auto;
}
.serviceSec .setTitBlock .setTitBlock__title {
}
.serviceSec .setTitBlock .setTitBlock__text {
}

/* ---- */
.serviceSec__list {
  /* 100vwだと横にスクロールが発生しやすいので、幅は100%のままでOK */
  width: 100%;
  box-sizing: border-box;
  padding: 0;
  overflow:hidden;
}

.serviceSec .serviceSec__list .serviceSec__item {
  margin: 0 8px;
  /* 画像や中身に合わせて調整 */
}

.serviceSec__list .slick-list {
  margin: 0 -8px;
}


.serviceSec .serviceSec__list .serviceSec__item a {
	display:block;
}
.serviceSec .serviceSec__list .serviceSec__item a img {
	width:100%;
	height:auto;
	vertical-align:bottom;
}

/* Wide Breakpoint */
@media screen and (max-width: 1350px) {
	.serviceSec .setTitBlock {
		width: calc(100% - 30px);
  }
}

/* SP */
@media screen and (max-width: 767px) {
	.serviceSec {
		padding:40px:
	}
}


/* ----------
footer
   ---------- */
.footer {
	padding:100px 0 80px;
}
.footer .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;

	display:flex;
    justify-content: space-between;
    gap: 20px 20px;
}

/* ---- */
.footer .footer__brand {
	width:200px;
	position:relative;
}
.footer .footer__brand .footer__logo {
}
.footer .footer__brand .footer__logo a {
}
.footer .footer__brand .footer__logo a img {
	width:100%;
	max-width:180px;
	height:auto;
}
/* ---- */
.footer .footer__brand .footer__corpLink {
	width:178px;
	position:absolute;
	bottom:0;

	padding:0 10px;

}
.footer .footer__brand .footer__corpLink a {
	display:block;
	border:solid 1px #258C56;
	color:#258C56;
	border-radius:100px;
	padding:5px 5px;
	text-align:center;
	font-size:1rem;
}
.footer .footer__brand .footer__corpLink a span {
	display:block;
	margin:0 auto;
	width:90%;
	font-weight:bold;
	padding:0;

}


/* ---- */
.footer .footer__nav {
	width:calc( 100% - (200px + 20px));
	display:flex;
	justify-content:flex-end;
	flex-wrap:wrap;
	gap:0 100px;
}
.footer .footer__nav .footer__navList {
	display:flex;
	flex-direction:column;
	flex-items:flex-start;
	gap:10px;
}
.footer .footer__nav .footer__navList .footer__navItem {
}
.footer .footer__nav .footer__navList .footer__navItem a {
}
.footer .footer__nav .footer__navList .footer__navItem .footer__subNavList {
}
.footer .footer__nav .footer__navList .footer__navItem .footer__subNavList .footer__subNavItem {
}
.footer .footer__nav .footer__navList .footer__navItem .footer__subNavList .footer__subNavItem a {
}

/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.footer .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.footer {
		padding:40px 0 30px;
	}
	.footer .footer__nav {
		gap:0 20px;
	}


	.footer .footer__brand {
		width:100%;
		position:relative;
	}
	.footer .footer__brand .footer__logo {
		text-align:center;
		margin-bottom:20px;
	}
	/* ---- */
	.footer .footer__brand .footer__corpLink {
		width:100%;
		position:relative;
		bottom:auto;
		text-align:center;
	}
	.footer .footer__brand .footer__corpLink a {
		max-width:150px;
		margin-left:auto;
		margin-right:auto;
	}
	.footer .footer__brand .footer__corpLink a span {
		width:90%;

	}

	/*
	.footer .footer__nav .footer__navList {
		display:flex;
		flex-direction:row;
		flex-items:flex-start;
		gap:10px;
		flex-wrap:wrap;
	}
	.footer .footer__nav .footer__navList .footer__navItem:first-child {
		width:100%;
		margin-bottom:20px;
	}
	.footer .footer__nav .footer__navList .footer__navItem {
		width:calc( (100% - 10px) / 2 );
	}
	*/

}
@media screen and (max-width: 690px) {
	.footer .inner {
		flex-direction:column;
	}
	.footer .footer__nav {
		width:100%;
		display:flex;
		flex-direction:column;
		justify-content:flex-start;
		gap:0 0px;
	}
}

/* ----------
footer__bottom
   ---------- */
.footer__bottom {
	padding:15px 0;
}
.footer__bottom .inner {
	width:100%;
	max-width:1080px;
	margin:0 auto;

	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

/* ---- */
.footer__bottom .footer__policyList {
	display:flex;
	justify-content:flex-start;
	gap:1em;
}
.footer__bottom .footer__policyList .footer__policyItem {
}
.footer__bottom .footer__policyList .footer__policyItem a {
	font-size: 0.875em; /* 14px */
}

/* ---- */
.footer__bottom .footer__copyright {
	text-align:right;
	font-size: 0.875rem; /* 14px */
}
body.teienPage .footer__bottom .footer__copyright {
	padding-bottom:100px;
}

/* Wide Breakpoint */
@media screen and (max-width: 1080px) {
	.footer__bottom .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.footer__bottom .inner {
		  flex-direction: column;
		  gap:20px;
	}

	.footer__bottom .footer__policyList {
		flex-direction: column;
		justify-content:center;
		gap:1em;
	}
	.footer__bottom .footer__policyList .footer__policyItem {
		width:100%;
		text-align:center;
	}
	.footer__bottom .footer__copyright {
		text-align:center;
		padding-bottom:80px;
	}
}

/* ----------
footer-float-banner
   ---------- */
.footer-float-banner{
	display:none;
}
@media screen and (max-width: 950px) {
	body:not(#teienDetailPage):not(.formPage) .footer-float-banner {
		display: block !important;
	}
}
.footer-float-banner{
	position:fixed;
	bottom:0;
	left:0;
	background:#fff;
	width:100%;
	z-index:999999;
	box-shadow: 0px -2px 11px 0px rgba(0, 0, 0, 0.20);
}
.footer-float-banner ul{
	display: flex;
	gap:0;
}
.footer-float-banner li.item{
	padding:5px 0;
}
.footer-float-banner li.item a{
	display:block;
}
.footer-float-banner li.item a img{
	vertical-align:bottom;
}
/* --- */
.footer-float-banner li.item.tel{
	width:49%;
}
.footer-float-banner li.item.tel a{
	display:block;
	text-align:center;
	padding:0 10px;
}
.footer-float-banner li.item.tel a img{
	width:100%;
	max-width:170px;
	height:auto;
}

/* --- */
.footer-float-banner li.item-icon{
	width:25.5%;
	background:#258C56;

}
.footer-float-banner li.item-icon a{
	display: flex;
	flex-direction: column;
	gap: 0px 10px;
	color:#fff;
}
.footer-float-banner li.item-icon span{
	display:block;
	text-align:center;
}
.footer-float-banner li.item-icon span.i{
}
.footer-float-banner li.item-icon span.i img{
	width:100%;
	max-width:23px;
	height:auto;
}
.footer-float-banner li.item-icon span.txt{
	font-size:14px;
}


.footer-float-banner li.item-icon.kengaku a{
	border-right:solid 1px #fff;
}
.footer-float-banner li.item-icon.document{
}

/* ----------
.fixed-banner {
   ---------- */

.fixed-banner {
  position: fixed;

	right: 0%;
	top:50%;
	transform: translateY(-50%);


  display: flex;
  flex-direction: column;
  gap: 20px;
  z-index: 1000;
}



body#teienDetailPage .fixed-banner,
body.formPage .fixed-banner{
	display:none;
}



.banner-btn {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 60px;
  padding:10px 0;
  border: 4px solid #259259;
  border-right:none;
  border-radius: 6px 0 0 6px;
  background: #fff;
  text-decoration: none;
  color: #259259;
  font-weight:bold;

  transition: background 0.2s, color 0.2s;

	writing-mode: vertical-rl;
}

.banner-btn:hover {
  background: #f3f3f3;
  color: #259259;
}

.banner-icon {
  margin-bottom: 3px;
  font-size: 1rem;
  /* SVGならここでサイズ調整もOK */
}

.banner-text {
  font-size: 1.3rem;
}

/* ----------
.pageTop
   ---------- */
.pageTop a{
}
.pageTop a img{
	width:50px;
}
@media screen and (max-width: 767px) {
	.pageTop a img{
		width:35px;
	}
}

/* ----------
designStoryBox
   ---------- */
.designStoryBox{
	display:flex;
	flex-direction:column;
	gap:70px;
	background:#F9F8F4;
	padding-top:80px;
}

.storyBox .pic{
	width:33%;
}

/* ---- */
.storyBox .storyCnt{
	width:61%;
	display:flex;
	flex-direction:column;
	gap:20px;
}

.storyBox .storyCnt_tit{
	color:#399D27;
	font-size:22px;
	position:relative;
}
.storyBox .storyCnt_tit:before{
	font-family: "Jost", sans-serif;
	content:"01";
	display:block;
	color:#399D27;
	padding-left:4.5em;
}
.storyBox .storyCnt_tit:after{
	content:"";
	display:block;
	width:14.5%;
	height:1px;
	background:#399D27;
	position:absolute;
	top:20px;
	left:-25px;
}


.storyCnt_subtit{
	color:#AA9850;
	font-size:22px;
	text-align:center;
}

.storyCnt .txt{
}
/* SP */
@media screen and (max-width: 767px) {
	.designStoryBox{
		padding-top:30px;
	}


	.designStoryBox .setTitBlock__title{
		font-size:22px;
	}
	.storyBox{
		flex-direction:column;
	}
	.storyBox .pic{
		width:100%;
	}
	.storyBox .storyCnt{
		width:100%;
	}

	.storyBox .storyCnt_tit{
		color:#399D27;
		font-size:18px;
		position:relative;
	}
	.storyBox .storyCnt_tit:before{
		padding-left:2.5em;
	}
	.storyBox .storyCnt_tit:after{
		width:70px;
		top:15px;
		left:-37px;
	}

	.storyBox .storyCnt_tit{
		font-size:17px;
		font-weight:bold;
	}

	.storyCnt_subtit{
		font-size:17px;
	}
}

/* ----------
story01Sec：原風景に宿る、庭づくりの原点
  ---------- */
.story01Sec{
}
.story01Sec .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}


/* ---- */
.story01Sec .setTitBlock{
}
.story01Sec .setTitBlock__title{
}


/* ---- */
.story01Sec .storyBox{
}
.story01Sec .storyBox-01{
	margin-bottom:50px;
}
.story01Sec .storyBox-01,
.story01Sec .storyBox-02{
	display:flex;
	flex-wrap:wrap;
	gap:30px 6%;
}
.story01Sec .storyBox .pic{
}
.story01Sec .storyBox .pic img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}
.story01Sec .storyBox .pic span{
	display:block;
	text-align:center;
}
.story01Sec .storyCnt{
}

.story01Sec .storyBox-02 .pic{
	order:2;
}
.story01Sec .storyBox-02 .storyCnt{
	order:1;
}

.storyBox.storyBox-02 .storyCnt_tit:before{
	content:"02";
}

/* Wide Breakpoint */
@media screen and (max-width: 1200px) {
	.story01Sec .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.story01Sec .storyBox-02 .pic{
		order:1;
	}
	.story01Sec .storyBox-02 .storyCnt{
		order:2;
	}
}

/* ----------
story02Sec：命の循環を感じる、アンカレッジの樹木葬に託す想い
  ---------- */
.story02Sec{
}
.story02Sec .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}


/* ---- */
.story02Sec .setTitBlock{
}
.story02Sec .setTitBlock__title{
}


/* ---- */
.story02Sec .storyBox{
}
.story02Sec .storyBox-03{
	display:flex;
	flex-wrap:wrap;
}
.story02Sec .storyCnt{
	width:100%;
}

.story02Sec .storyCnt_tit:after{
	width:100px;
}
.story02Sec .storyBox-03 .storyCnt{
}

.storyBox.storyBox-03 .storyCnt_tit:before{
	content:"03";
}

/* Wide Breakpoint */
@media screen and (max-width: 1200px) {
	.story02Sec .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
}

/* ----------
story03Sec：原風景に宿る、庭づくりの原点
  ---------- */
.story03Sec{
}
.story03Sec .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}


/* ---- */
.story03Sec .setTitBlock{
}
.story03Sec .setTitBlock__title{
}


/* ---- */
.story03Sec .storyBox{
}
.story03Sec .storyBox-04{
	margin-bottom:50px;
}
.story03Sec .storyBox-04{
	display:flex;
	flex-wrap:wrap;
	gap:30px 6%;
}
.story03Sec .storyBox .pic{
}
.story03Sec .storyBox .pic img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}
.story03Sec .storyBox .pic span{
	display:block;
	text-align:center;
}
.story03Sec .storyCnt{
}

.story03Sec .storyBox-04 .storyCnt_tit:before{
	content:"04";
}

/* Wide Breakpoint */
@media screen and (max-width: 1200px) {
	.story03Sec .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.story03Sec .storyBox-02 .pic{
		order:1;
	}
	.story03Sec .storyBox-02 .storyCnt{
		order:2;
	}
	.story02Sec .storyCnt_tit-03:after{
		left:-65px;
	}

}
/* ----------
story04Sec：「庭の中にお寺がある」-新しい景色を描く-
  ---------- */
.story04Sec{
}
.story04Sec .inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}


/* ---- */
.story04Sec .setTitBlock{
}
.story04Sec .setTitBlock__title{
}


/* ---- */
.story04Sec .storyBox{
}
.story04Sec .storyBox-05{
	display:flex;
	flex-wrap:wrap;
}
.story04Sec .storyCnt{
	width:100%;
}

.story04Sec .storyCnt_tit:after{
	width:100px;
}
.story04Sec .storyBox-05 .storyCnt{
}

.storyBox.storyBox-05 .storyCnt_tit:before{
	content:"05";
}

/* Wide Breakpoint */
@media screen and (max-width: 1200px) {
	.story04Sec .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.story04Sec .storyCnt_tit-03:after{
		left:-65px;
	}
}
/* ----------
designerIntroSec
  ---------- */
.designerIntroSec{
	margin-bottom:100px;
}
.designerIntroSec .inner{
	width:100%;
	max-width:1240px;
	margin:0 auto;
}
.designerIntroSec .inner p{
	font-size:24px;
	text-align:center;
	line-height:2;
	color:#153E0E;
}


/* Wide Breakpoint */
@media screen and (max-width: 1240px) {
	.designerIntroSec .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.designerIntroSec{
		margin-bottom:40px;
	}
	.designerIntroSec .inner p{
		font-size:16px;
		line-height:2;
	}
}


/* ----------
designerGallerySec
  ---------- */
.designerGallerySec{
}
.designerGallerySec.gallery01{
	width:100%;
	background:#fff;
}
.designerGallerySec.gallery01 .inner{
	width:100%;
	max-width:1240px;
	margin:0 auto;
}


/* ---- */
.designerGallerySec.gallery01 .designergallerySec_lst{
	position:relative;
	aspect-ratio: 1240 / 430;
	width:100%;
	height:100%;
	margin-bottom:80px;
}
.designerGallerySec.gallery01 .designergallerySec_lst li{
	position:absolute;
	top:0;
	left:0;
}
.designerGallerySec.gallery01 .designergallerySec_lst li:nth-child(1){
	top:10%;
	left:0;
	width:29%;
}
.designerGallerySec.gallery01 .designergallerySec_lst li:nth-child(2){
	top:30%;
	left:34%;
	width:37%;
}
.designerGallerySec.gallery01 .designergallerySec_lst li:nth-child(3){
	top:0%;
	left:76%;
	width:24%;
}
.designerGallerySec.gallery01 .designergallerySec_lst li img{
	width:100%;
	height:auto;
}


/* Wide Breakpoint */
@media screen and (max-width: 1240px) {
	.designerGallerySec.gallery01 .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.designerGallerySec.gallery01 .designergallerySec_lst{
		margin-bottom:40px;
	}
}


/* ----------
designerGallerySec
  ---------- */
.designerGallerySec{
}
.designerGallerySec.gallery02{
	width:100%;
}
.designerGallerySec.gallery02 .inner{
	width:100%;
	max-width:1240px;
	margin:0 auto;
}


/* ---- */
.designerGallerySec.gallery02 .designergallerySec_lst{
	position:relative;
	aspect-ratio: 1290 / 600;
	width:100%;
	height:100%;
	margin-bottom:80px;
}
.designerGallerySec.gallery02 .designergallerySec_lst li{
	position:absolute;
	top:0;
	left:0;
}
.designerGallerySec.gallery02 .designergallerySec_lst li:nth-child(1){
	top:0%;
	left:0;
	width:34%;
}
.designerGallerySec.gallery02 .designergallerySec_lst li:nth-child(2){
	top:51%;
	left:10%;
	width:27%;
}
.designerGallerySec.gallery02 .designergallerySec_lst li:nth-child(3){
	top:16%;
	left:41%;
	width:23%;
}
.designerGallerySec.gallery02 .designergallerySec_lst li:nth-child(4){
	top:4%;
	left:68%;
	width:32%;
}
.designerGallerySec.gallery02 .designergallerySec_lst li img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}
.designerGallerySec.gallery02 .designergallerySec_lst li span{
	display:block;
	text-align:center;
	line-height:1.2;
}

/* Wide Breakpoint */
@media screen and (max-width: 1240px) {
	.designerGallerySec.gallery02 .inner{
		width: calc(100% - 30px);
	}
}


/* SP */
@media screen and (max-width: 767px) {
	.designerGallerySec.gallery02 .designergallerySec_lst{
		margin-bottom:40px;
	}
	.designerGallerySec.gallery02 .designergallerySec_lst li:nth-child(2){
		left:8%;
		top:57%;
		width:30%;
	}
	.designerGallerySec.gallery02 .designergallerySec_lst li span{
		font-size:13px;
	}
}

/* ----------
aboutDesignerSec
  ---------- */
.aboutDesignerSec {
	padding-top:80px;
	background:#F9F8F4;
}
.aboutDesignerSec .inner {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	background:#fff;
	padding:20px 0px 20px 0;
	border-radius:0 15px 15px 0;
	position:relative;
}
.aboutDesignerSec .inner:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 100vw;
	background-color: #fff;
}
.aboutDesignerSec .inner:after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 100%;
	width: 40px;
	background-color: #fff;
	border-radius:0 15px 15px 0;
}

/* ---- */
.aboutDesignerSec .aboutDesignerSec-cnt {
	position:relative;

	aspect-ratio:1100 / 530;
	width:100%;
	height:100;
}

/* ---- */
.aboutDesignerSec .aboutDesignerSec-cnt .picArea {
	width:43%;

	display:flex;
	flex-direction:column;
	gap:10px;

	order:2;
	position:absolute;
	top:-80px;
	right:0;
}
.aboutDesignerSec .aboutDesignerSec-cnt .picArea .pic img {
	width:100%;
	vertical-align:bottom;
	height:auto;
}
.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-name {
	color:#258C56;
	font-size:24px;
	text-align:right;
}
.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-name span{
	font-size:21px;
}
.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-info {
	background:#F9F8F4;
	padding:15px;
	border-radius:15px;
	color:#153E0E;
	font-size:18px;
	font-weight:bold;
	text-align:center;
}

/* ---- */
.aboutDesignerSec .aboutDesignerSec-cnt .cnt {
	width:100%;
	order:1;
	padding:25px;
	padding-left:0;
	padding-right:47%;

	display:flex;
	flex-direction:column;
	gap:40px;
}
.aboutDesignerSec .aboutDesignerSec-cnt .cnt .txt {
}


/* Wide Breakpoint */
@media screen and (max-width: 1100px) {
	.aboutDesignerSec .inner {
		width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {

	.aboutDesignerSec {
		padding-top:40px;
		padding-bottom:40px
		background:#F9F8F4;
	}
	.aboutDesignerSec .inner {
		padding:10px;
		border-radius:0;
		background:none;
	}
	.aboutDesignerSec .inner:before {
		content: none;
	}
	.aboutDesignerSec .inner:after{
		content: none;
	}

	/* ---- */
	.aboutDesignerSec .aboutDesignerSec-cnt {
		aspect-ratio:auto;
	}

	/* ---- */
	.aboutDesignerSec .aboutDesignerSec-cnt .picArea {
		width:100%;
		order:1;
		position:relative;
		top:0px;
		margin: 0 auto 30px;
	}
	.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-name{
		font-size:18px;
	}
	.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-name span{
		font-size:16px;
	}
	.aboutDesignerSec .aboutDesignerSec-cnt .picArea .designer-info {
		padding:10px;
	}

	/* ---- */
	.aboutDesignerSec .aboutDesignerSec-cnt .cnt {

		order:1;
		background:#fff;
		padding:15px !important;
		border-radius:10px;
	}
	.aboutDesignerSec .aboutDesignerSec-cnt .cnt .txt {
	}

}

/* ----------
faqSection
---------- */
.faqSection {
	background: #F9F8F4;
	padding: 0px 0;
}
body.teienPage .faqSection {
	padding: 80px 0;
}
.faqSection__inner {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
}

/* ---- */
.faqSection .setTitBlock {
}
.faqSection .setTitBlock .setTitBlock__title {
}

/* ---- */
.faqSection__list {
	display: flex;
	flex-direction: column;
	gap: 25px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.faqSection__item {
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
	background: #fff;
	transition: box-shadow 0.2s;
}

/* アコーディオンヘッダー */
.faqSection__question {
	background: #B9D0B5;
	color: #2A5023;
	padding: 25px 64px 25px 25px;
	font-size: 1.15rem;
	font-weight: 500;
	width: 100%;
	text-align: left;
	cursor: pointer;
	position: relative;
	border: none;
	outline: none;
	display: flex;
	align-items: center;
	gap: 16px;
	transition: background 0.2s;
}

.faqSection__question::before {
	content: "Q.";
	font-family: "Jost", sans-serif;
	font-weight: bold;
	font-size: 1.3em;
	color: #49774e;
	margin-right: 16px;
}

.faqSection__question::after {
	content: "↓";
	font-size: 14px;
	font-weight: bold;
	color: #2A5023;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
	transition: color 0.3s;
	border-left: solid 1px #2A5023;
	padding: 10px 0 10px 1em;
}

.faqSection__question[aria-expanded="true"] {
	background: #399D27;
	color: #fff;
}

.faqSection__question[aria-expanded="true"]::before {
	color: #fff;
}

.faqSection__question[aria-expanded="true"]::after {
	content: "↑";
	color: #fff;
	border-color: #fff;
}

/* アコーディオン本文 */
.faqSection__answer {
	background: #fff;
	border: solid 1px #399D27;
	border-radius: 0 0 11px 11px;
	padding: 25px;
	font-size: 1.05rem;
	color: #333;
	line-height: 1.8;
	border-top: 1px solid #e2e2e2;
	animation: fadeinAccordion 0.28s ease-in-out;

	display: flex;
	flex-direction: column;
	gap: 5px;
	position: relative;
	padding-left: 85px;
}

.faqSection__answer[hidden] {
	display: none;
}

/* A. の装飾 */
.faqSection__answer::before {
	position: absolute;
	left: 26px;
	top: 22px;
	display: inline-block;
	content: "A.";
	font-family: "Jost", sans-serif;
	font-size: 1.2rem;
	color: #49774e;
	font-weight: bold;
	margin-right: 4px;
}

.faqSection__link {
	display: inline-block;
	margin-top: 12px;
	color: #268764;
	font-weight: 500;
	text-decoration: underline;
	cursor: pointer;
	transition: color 0.2s;
}
.faqSection__link a {
	border-bottom: solid 1px #399D27;
	color: #399D27;
	display: inline-block;
	padding-bottom: 5px;
}

.faqSection__link span {
	background: #fff url(../img/btn--arrow--white.png) no-repeat right 5px center;
	background-size: auto 100%;
	display: inline-block;
	padding-right: 3rem;
}

/* アニメーション */
@keyframes fadeinAccordion {
	from {
		opacity: 0;
		transform: translateY(-5px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media screen and (max-width: 1080px) {
	.faqSection__inner {
		max-width: calc(100% - 30px);
	}
}

/* SP */
@media screen and (max-width: 767px) {
	.faqSection__item {
		border-radius: 8px;
	}
	.faqSection__question {
		padding: 8px 50px 10px 15px;
		font-size: 1rem;
	}
	.faqSection__question::before {
		margin-right: 0px;
	}
	.faqSection__answer {
		background: #fff;
		padding: 10px 10px;
		padding-left: 53px;
		font-size: 1rem;
	}
	.faqSection__answer::before {
		left: 16px;
		top: 8px;
	}
}

