.page-l-copy + .lead { text-align: center; margin-top: 4rem; }
.page-l-copy + .lead .note { display: block; margin-top: 2rem; }

@media screen and (max-width: 768px) { .page-l-copy + .lead { text-align: left; margin-top: 2rem; } }
.merit { margin: 6rem auto 0 auto; background: #fff; padding: 5rem; box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3); }
.merit .merit-list { margin-top: 4rem; display: grid; gap: 3rem; grid-template-columns: repeat(2, 1fr); }
.merit .merit-list li { background: #ECEAE9; border-radius: 14px; box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.3); padding: 3rem; text-align: center; }
.merit .merit-list li .lead { margin-top: 3rem; }
@media screen and (max-width: 768px) { .merit .merit-list { grid-template-columns: 1fr; } }
@media screen and (max-width: 480px) { .merit { padding: 3rem; } }

.needs { background: #fff; }
.needs .img01 .img { width: 100%; max-height: 600px; margin: 0 auto; overflow: hidden; }
.needs .img01 .img img { height: 100%; object-fit: cover; }
.needs .needs-contents .needs-item { margin-top: 6rem; }
.needs .needs-contents .needs-item .midashi-m { grid-area: h4; color: #8b7035; padding-bottom: 2rem; border-bottom: solid 1px rgba(0, 0, 0, 0.5); }
.needs .needs-contents .needs-item .lead { grid-area: lead; }
.needs .needs-contents .needs-item .img-box { grid-area: img; }
.needs .needs-contents .needs-item .img-box .img-ttl { font-size: 1.4rem; line-height: 1.6; }
.needs .needs-contents .needs-item .img-box .img-ttl + .img { margin-top: 1rem; }
.needs .needs-contents .needs-item .img-box .note { margin-top: 1rem; text-align: right; }
.needs .needs-contents .needs01 { display: grid; gap: 2rem 6rem; grid-template-columns: 55% 1fr; grid-template-rows: max-content 1fr; grid-template-areas: "h4 img" "lead img"; }
.needs .needs-contents .needs02 .img-box { max-width: 600px; margin: 3rem auto 0 auto; }
.needs .needs-contents .needs03 { display: grid; gap: 2rem 6rem; grid-template-columns: 55% 1fr; grid-template-rows: max-content 1fr; grid-template-areas: "h4 img" "lead img"; }
.needs .needs-contents .needs03 .img-box .note { text-align: left; }
@media screen and (max-width: 768px) { .needs .needs-contents .needs-item .midashi-m { text-align: center; }
  .needs .needs-contents .needs01 { gap: 3rem; grid-template-columns: 1fr; grid-template-rows: auto auto 1fr; grid-template-areas: "h4" "lead" "img"; }
  .needs .needs-contents .needs01 .img-box .img { max-width: 500px; margin: 0 auto; }
  .needs .needs-contents .needs03 { gap: 3rem; grid-template-columns: 1fr; grid-template-rows: auto auto 1fr; grid-template-areas: "h4" "lead" "img"; }
  .needs .needs-contents .needs03 .img-box .img { max-width: 500px; margin: 0 auto; } }

/* ================================== */
/* from Plan */
.plan-contaier { padding-bottom: 8rem; }

.plan { border-top: 3px solid #bdaf89; padding: 8rem 0; }

.plan-inner { max-width: 1100px; width: 90%; margin-inline: auto; display: grid; grid-template-columns: 0.84fr 1fr; grid-template-rows: repeat(3, auto) 1fr; column-gap: 2.2rem; position: relative; }
.plan-inner.include-btn { grid-template-rows: repeat(4, auto) 1fr; }
.plan-inner.include-btn .figure-list { grid-row: span 5 / span 5; }

.plan-illust-sec { position: absolute; left: 5%; bottom: 0%; width: 34%; }
.plan-illust-sec img { width: 100%; height: auto; }

.global-nav .plan { padding: 0rem 0 !important; }
.global-nav .plan:not(:first-child) { border-top: none !important; }

.spec { order: 1; position: relative; }
.spec .icon { position: absolute; left: -8rem; top: -1rem; width: 9.6rem; height: 9.6rem; }
.spec .icon img { width: 100%; height: auto; }

.figure-list { order: 2; grid-row: span 4 / span 4; }
.figure-list .tab { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 1rem; }
.figure-list .tab li { cursor: pointer; color: #ffffff; padding: 1.5rem 1rem; text-align: center; position: relative; font-size: 16px; line-height: 1; transition: filter 0.2s linear; }
.figure-list .tab li:hover { filter: brightness(110%); }
.figure-list .tab li:nth-child(1) { background-color: #b87865; }
.figure-list .tab li:nth-child(2) { background-color: #8e9db7; }
.figure-list .tab li.current::after { font-size: 10px; width: 100%; content: '\025bc'; color: #fff; position: absolute; bottom: calc((1rem + 2px) * -1); left: 0; }
.figure-list .tab li.current:nth-child(1)::after { background-color: #b87865; }
.figure-list .tab li.current:nth-child(2)::after { background-color: #8e9db7; }
.figure-list .figure { display: none; margin-top: 5rem; text-align: center; }
.figure-list .figure > img { width: 100%; max-width: 100%; height: auto; }
.figure-list .figure.show { display: block; }

.point { order: 3; font-size: 1.6rem; display: flex; flex-direction: column; row-gap: 2rem; margin-top: 5rem; }
.point li { padding-left: 1.8rem; position: relative; line-height: 1.4; font-feature-settings: "palt"; letter-spacing: 0.05em; }
.point li::before { position: absolute; left: 0; top: 0; content: '\025cf'; color: #9a854c; }

.print { order: 4; margin-top: 4rem; width: 100%; max-width: 220px; position: relative; }
.print::after { content: ''; background: url(../img/plan/arrow_print.png); background-size: 100% auto; width: 9px; height: 10px; display: block; position: absolute; right: 1rem; top: 50%; translate: 0 -50%; }
.print a { font-family: "bebas-neue-pro", sans-serif; font-weight: 600; font-style: normal; letter-spacing: 0.5em; background-color: #9a854c; border-radius: 1rem; color: #ffffff; display: flex; align-items: center; font-size: 1.7rem; padding: 1.5rem; transition: filter 0.2s linear; }
.print a:hover { filter: brightness(110%); }
.print a::before, .print a::after { content: ""; background-color: #ffffff; flex-grow: 1; height: 1px; }
.print a::before { margin-right: 1.5rem; }
.print a::after { margin-left: 0.5rem; }

.btn { order: 5; margin-top: 10rem; }
.btn a { background: #756122; background: linear-gradient(15deg, #756122 0%, #ae9758 47%, #ae9758 53%, #756122 100%); color: #fff; padding: 2rem 1rem 1.5rem; display: flex; flex-direction: column; justify-content: center; align-items: center; row-gap: 1rem; }
.btn a .text { font-size: 2.6rem; font-feature-settings: "palt"; }
.btn a .more { border: 1px solid #ffffff; font-size: 1.4rem; padding: 0.5rem 3rem; }
.btn a .more::after { content: '\025b6'; margin-left: 1rem; font-size: 1.2rem; }
.btn a:hover { filter: brightness(110%); }

.legend { font-size: 10px; display: flex; justify-content: center; gap: 2rem; }
.legend li { display: flex; align-items: center; gap: 5px; }

.figure-list2 .figure-box { order: 2; grid-row: span 4 / span 4; }
.figure-list2 .tab { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 1rem; }
.figure-list2 .tab li { cursor: pointer; color: #ffffff; padding: 1.5rem 1rem; text-align: center; position: relative; font-size: 16px; line-height: 1; transition: filter 0.2s linear; }
.figure-list2 .tab li:hover { filter: brightness(110%); }
.figure-list2 .tab li:nth-child(1) { background-color: #b87865; }
.figure-list2 .tab li:nth-child(2) { background-color: #8e9db7; }
.figure-list2 .tab li.current::after { font-size: 10px; width: 100%; content: '\025bc'; color: #fff; position: absolute; bottom: calc((1rem + 2px) * -1); left: 0; }
.figure-list2 .tab li.current:nth-child(1)::after { background-color: #b87865; }
.figure-list2 .tab li.current:nth-child(2)::after { background-color: #8e9db7; }
.figure-list2 .figure { display: none; margin-top: 5rem; text-align: center; }
.figure-list2 .figure > img { width: 100%; max-width: 100%; height: auto; }
.figure-list2 .figure.show { display: block; }
.figure-list2 .point-box { display: none; order: 3; margin-top: 5rem; }
.figure-list2 .point-box.show { display: block; }
.figure-list2 .point-box .ttl { display: flex; align-items: center; column-gap: 1rem; font-size: 3rem; }
.figure-list2 .point-box .ttl::after { flex-grow: 1; content: ''; display: block; border-top: 2px dotted; }
.figure-list2 .point-box .point { margin-top: 2rem; }
.figure-list2 .point-box.dinks .ttl { color: #b87865; }
.figure-list2 .point-box.family .ttl { color: #8e9db7; }
.figure-list2 .print { display: none; }
.figure-list2 .print.show { display: block; }

@media screen and (max-width: 1024px) { .spec .icon { left: -6rem; top: -0.5rem; width: 7.5rem; height: 7.5rem; } }
@media screen and (max-width: 768px) { .inner:has(.to-hanare) { width: 80%; }
  .to-hanare { max-width: 420px; }
  .plan { padding: 6rem 0; }
  .plan-inner { grid-template-columns: 1fr; grid-template-rows: inherit; width: 80%; max-width: 420px; }
  .plan-inner.include-btn { grid-template-rows: 1fr; }
  .plan-inner.include-btn .figure-list { grid-row: inherit; }
  .spec .icon { left: -5rem; top: -0.5rem; width: 6.5rem; height: 6.5rem; }
  .figure-list { order: 3; grid-row: inherit; margin-top: 6rem; }
  .figure-list .tab li.current::after { bottom: calc((1rem + 4px) * -1); }
  .plan-illust-sec { position: inherit; left: inherit; bottom: inherit; width: 70%; margin-left: 15%; margin-top: 5rem; display: block; order: 4; }
  .point { order: 2; font-size: 11px; row-gap: 1.5rem; }
  .print { max-width: 160px; margin-inline: auto; margin-top: 6rem; }
  .print a { padding: 1rem; }
  .btn { margin-top: 6rem; }
  .other .topic { padding: 5rem 2rem 4rem; }
  .other .topic .lead { text-align: left; }
  .figure-list2 .figure-box { order: 3; grid-row: inherit; margin-top: 6rem; }
  .figure-list2 .figure-box .tab li.current::after { bottom: calc((1rem + 4px) * -1); }
  .figure-list2 .point-box { order: 2; } }
.p-info-link { background: rgba(255, 255, 255, 0); display: block; width: 86%; max-width: 600px; margin: auto; margin-top: 8rem; box-sizing: border-box; padding: 1.5rem; transition: 0.5s; position: relative; border-radius: 0.4rem; box-shadow: 0 0 3rem rgba(0, 0, 0, 0); }
.p-info-link:after { content: ""; width: 1.5rem; height: 1.5rem; position: absolute; top: 50%; right: 3rem; transform: translate(-50%, -50%) rotate(-45deg); border-bottom: 2px solid #53001b; border-right: 2px solid #53001b; opacity: 0; transition: opacity 0.5s; }
.p-info-link:hover { background: rgba(255, 255, 255, 0.8); box-shadow: 0 0 3rem rgba(0, 0, 0, 0.1); }
.p-info-link:hover:after { opacity: 1; }

.p-info-sec { text-align: center; position: relative; font-feature-settings: "palt"; color: #53001b; }
.p-info-sec .p-info-txt1 { font-size: 2.8rem; letter-spacing: 20%; }
.p-info-sec .p-info-txt2 { font-size: 4.6rem; letter-spacing: 20%; margin-top: 1rem; }
.p-info-sec:before, .p-info-sec:after { content: ""; position: absolute; top: 0; bottom: 0; border: 1px solid #53001b; width: 5%; z-index: 3; }
.p-info-sec:before { left: 0; border-right: none; }
.p-info-sec:after { right: 0; border-left: none; }
@media screen and (max-width: 768px) { .p-info-sec .p-info-txt1 { font-size: 4.2vw; letter-spacing: 20%; }
  .p-info-sec .p-info-txt2 { font-size: 7.2vw; letter-spacing: 20%; margin-top: 1rem; } }

/* ================================== */
