/* 桐箱ブロック専用。既存のスタイルに影響しない独立したクラス。 */
.kiribako-story{position:relative;padding:110px 6%;background:#f7f5ef;color:#4c473f;}
.kiribako-story__inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;}
.kiribako-story__visual{margin:0;position:relative;}
.kiribako-story__visual img{display:block;width:100%;height:auto;}
.kiribako-story__visual figcaption{font-size:11px;letter-spacing:.12em;text-align:center;color:#827b70;margin-top:18px;}
.kiribako-story__eyebrow{font-size:13px;letter-spacing:.23em;margin:0 0 26px;color:#85765d;}
.kiribako-story__copy h2{font-size:clamp(32px,3.3vw,46px);font-weight:400;letter-spacing:.16em;line-height:1.6;margin:0 0 28px;}
.kiribako-story__lead{font-size:19px;line-height:2;letter-spacing:.08em;margin:0 0 28px;}
.kiribako-story__text{font-size:14px;line-height:2.25;letter-spacing:.04em;}
.kiribako-story__text p{margin:0 0 22px;}
.kiribako-story__detail{border-top:1px solid #d9d1c3;margin:32px 0 0;padding-top:22px;font-size:13px;line-height:2;letter-spacing:.08em;}
.kiribako-story__detail span{font-size:11px;letter-spacing:.04em;color:#7b7265;}
.kiribako-story__link{display:inline-flex;align-items:center;gap:32px;font-size:13px;letter-spacing:.08em;padding:15px 0 10px;border-bottom:1px solid #a9987b;color:inherit;text-decoration:none;}
.kiribako-story__link:hover{color:#95784b;}
.kiribako-story__link:focus-visible{outline:2px solid #95784b;outline-offset:6px;}
@media(max-width:767px){.kiribako-story{padding:64px 7%;}.kiribako-story__inner{grid-template-columns:1fr;gap:44px;max-width:460px;}.kiribako-story__visual{width:88%;margin:auto;}.kiribako-story__copy{padding:0 3%;}.kiribako-story__copy h2{font-size:34px;}.kiribako-story__eyebrow{margin-bottom:18px;}.kiribako-story__lead{font-size:17px;}.kiribako-story__text{font-size:13px;letter-spacing:0;}}

/* 2026-09-16: トップの桐箱は全端末で不透明度90%。 */
.c059 .c082{opacity:.9 !important;}
/* 背景と写真を分離し、あとからどちらも差し替え可能に。 */
.kiribako-photo-stage{display:flex;align-items:center;justify-content:center;min-height:320px;padding:32px 5%;background:radial-gradient(ellipse at 18% 8%,#fff 0%,rgba(255,255,255,0) 60%),linear-gradient(125deg,#f7f9f9 0%,#e7ebeb 58%,#f4f6f6 100%);}
.c047 .kiribako-photo-stage img{display:block;width:min(64%,900px);height:auto;max-height:660px;object-fit:contain;}
/* タブレットでもPCの横組み・縦書きを維持し、固定余白だけ縮める。 */
@media(min-width:768px) and (max-width:1100px){
 #i001 h1.c007{top:24px;left:24px;width:120px;}
 .c068 .c069{justify-content:center;padding-left:3%;padding-right:3%;}
 .c068 .c070{flex:0 0 65px;width:65px;margin-right:4vw;margin-left:3vw;}
 .c068 .c078{padding-top:130px;}
 .c068 .c078 + .c078{margin-right:2vw;}
 .c078 .c019{width:1.65rem;font-size:14px;margin-left:.4vw;margin-right:.4vw;}
 .c049 .c078 .c019,.c061 .c078 .c019{margin-left:3px;margin-right:3px;}
 .kiribako-story{padding:75px 4%;}
 .kiribako-story__inner{gap:5%;}
 .kiribako-story__text{font-size:13px;letter-spacing:0;}
 .kiribako-story__lead{font-size:17px;}
}
@media(max-width:767px){
 .kiribako-photo-stage{min-height:0;padding:28px 4%;}
 .c047 .kiribako-photo-stage img{width:100%;max-height:none;}
}

@media(min-width:768px) and (max-width:1100px){#i001 .hk-header-sns{top:18px;right:20px;}.hk-header-sns .hk-sns__link{width:36px;height:36px;}}

/* 写真と物語をひとつのブロックに統合。768px以上は横並び。 */
.kiribako-feature__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5%;align-items:center;padding:80px max(5%,calc((100% - 1200px)/2));background:radial-gradient(ellipse at 18% 8%,#fff 0%,rgba(255,255,255,0) 60%),linear-gradient(125deg,#f7f9f9 0%,#e7ebeb 58%,#f4f6f6 100%);color:#4c473f;}
.kiribako-feature .kiribako-photo-stage{background:none;padding:0;min-height:0;}
.kiribako-feature .kiribako-photo-stage img{width:100%;height:auto;max-height:none;}
.kiribako-feature .kiribako-story__detail{border:0;margin:12px 0 30px;padding:0;}
.kiribako-feature .kiribako-story__text p:last-child{margin-bottom:0;}
@media(min-width:768px) and (max-width:1100px){.kiribako-feature__row{gap:4%;padding:65px 4%;}.kiribako-feature .kiribako-story__copy h2{font-size:32px;}.kiribako-feature .kiribako-story__lead{font-size:16px;}.kiribako-feature .kiribako-story__text{font-size:12px;}}
@media(max-width:767px){.kiribako-feature__row{grid-template-columns:1fr;gap:40px;padding:48px 7%;}.kiribako-feature__photo{max-width:460px;margin:0 auto;}.kiribako-feature .kiribako-story__copy{padding:0;}.kiribako-feature .kiribako-story__copy h2{font-size:32px;}}

/* スマホFV: 幅に依存する絶対座標から、中央基準の縦配置へ。 */
@media(max-width:767px){
 .c046.c059 .c060{position:relative;left:auto;top:auto;transform:none;width:100%;height:auto;min-height:100svh;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:18px;padding:84px 16px 24px;}
 .c059 .c083{position:relative;top:auto;left:auto;width:clamp(110px,28vw,150px);max-width:none;margin:0;transform:none;}
 .c059 .c082{position: relative;
        top: auto;
        left: -54px;
        width: min(150%, 450px);
        max-width: none;
        margin: 0;
        transform: none;}
 .c059 .c082 picture,.c059 .c082 img{display:block;width:100%;height:auto;}
 .c046.c059 .c079.fv{position:absolute;inset:0;height:100%;min-height:0;}
 .c046.c059 .c079.fv picture{height:100%;}
 .c046.c059 .c079.fv .c080{height:100%;min-height:100svh;object-fit:cover;}
}

/* 供養の内容と安心を簡潔に伝えるコピー。 */
.kiribako-feature .kiribako-story__text--renewed{font-size:15px;line-height:2.2;letter-spacing:.025em;}
.kiribako-story__text--renewed span{display:inline-block;}
.kiribako-story__promise{font-size:17px;line-height:2;letter-spacing:.04em;margin:8px 0;}
.kiribako-story__promise strong{font-weight:600;}
.kiribako-story__facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 0;border-top:1px solid #cfcac0;padding-top:22px;margin-top:28px;font-size:12px;line-height:1.5;letter-spacing:0;color:#675d4d;}
.kiribako-story__facts span{display:block;padding:0 10px;white-space:nowrap;}
.kiribako-story__facts span+span{border-left:1px solid #bcb4a6;}



@media(min-width:768px) and (max-width:1100px){.kiribako-feature .kiribako-story__text--renewed{font-size:13px;}.kiribako-story__promise{font-size:15px;}.kiribako-story__facts{font-size:11px;}.kiribako-story__facts span{padding:0 6px;}}
@media(max-width:767px){.kiribako-feature .kiribako-story__text--renewed{font-size:13px;}.kiribako-story__promise{font-size:15px;}.kiribako-story__facts{font-size:11px;}.kiribako-story__facts span{padding:0 6px;}}

/* スマホの本文・強調文・料金に明確な間隔を設ける。 */
@media(max-width:767px){
 .kiribako-feature__row{gap:28px;padding:32px 6% 40px;}
 .kiribako-feature .kiribako-story__eyebrow{font-size:11px;letter-spacing:.16em;margin:0 0 14px;}
 .kiribako-feature .kiribako-story__copy h2{font-size:clamp(26px,7.4vw,32px);line-height:1.5;letter-spacing:.08em;margin:0 0 24px;}
 .kiribako-feature .kiribako-story__text--renewed{font-size:13px;line-height:2;letter-spacing:0;}
 .kiribako-feature .kiribako-story__promise{font-size:14px;line-height:1.9;letter-spacing:.015em;margin:26px 0 0;}
 .kiribako-feature .kiribako-story__facts{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:340px;margin:26px auto 0;padding:0;border-top:1px solid #cdc8bc;border-bottom:1px solid #cdc8bc;font-size:12px;line-height:1.6;}
 .kiribako-feature .kiribako-story__facts span{padding:11px 6px;border:0;white-space:nowrap;}
 .kiribako-feature .kiribako-story__facts span:nth-child(even){border-left:1px solid #d7d2c8;}
 .kiribako-feature .kiribako-story__facts span:nth-child(n+3){border-top:1px solid #d7d2c8;}
 .kiribako-feature .kiribako-story__facts span:first-child{font-size:15px;line-height:1.28;}
 .kiribako-feature .c016{padding:32px 6% 44px;}
 .kiribako-feature .kiribako-story__detail{margin:12px 0 24px;line-height:1.9;}
}
