/* ==================================================================================================== */
/* 固定ページ汎用 */
/* ==================================================================================================== */

/* ファーストビュー（見出し） */
div.first-view { align-items:center; aspect-ratio:830/360; background-position:center; background-size:contain; background-image:url('../img/page/first-view-bg.png'); background-repeat:no-repeat; justify-content:center; margin:auto; margin-bottom:40px; height:auto; max-width:calc( 100% - 30px ); width:100%; }
div.first-view h2 { color:var(--pi); font-size:20px; font-weight:900; }

/* 見出し */
.top-midashi, .hana-midashi { font-size:20px; font-weight:900; margin:auto; margin-bottom:24px; }
.top-midashi { border-right:4px solid var(--pi); border-left :4px solid var(--pi); box-sizing:border-box; color:var(--pi); padding:0 32px; max-width:250px; width:100%; }
.hana-midashi { align-content:center; color:var(--or); display:flex; gap:8px; justify-content:center; }
.hana-midashi::before, .hana-midashi::after { aspect-ratio:35/38; background-size:contain; background-repeat:no-repeat; background-position:center; background-image:url('../img/page/hana-icon.svg'); content:''; display:inline-block; height:24px; width:24px; }
.ye-midashi { align-items:center; background-color:var(--ye-02); border-radius:20px; font-size:16px; font-weight:800; justify-content:center; line-height:200%; padding:0 24px; margin:auto; margin-bottom:8px; max-width:200px; }
.bl-midashi { color:var(--bl); font-size:20px; font-weight:900; text-align:center; margin-bottom:16px; }

/* コンテンツ */
.jigyosyo-page section.content-block { border-radius:20px 20px 0 0; }
section.content-block.top-content { border-radius:20px; margin-bottom:40px; }

/* 本文 */
section.top-content p, section.top-content li { font-size:14px; font-weight:400; line-height:24px; }
div.page-honbun p { font-size:16px; font-weight:400; line-height:200%; letter-spacing:-0.8px; margin-bottom:1rem; }

/* ページ系統括用 */
section.top-content div.flex { flex-direction:column; }

/* 事業所ページ汎用 */
dl.jigyosyo-info { align-content:center; flex-direction:column; gap:8px; justify-content:center; margin:auto; width:100%; }
dl.jigyosyo-info dt { align-items:center; background-color:var(--or); color:var(--bk); border-radius:20px; justify-content:center; margin:auto; height:32px; width:130px; }
dl.jigyosyo-info dd { font-size:16px; font-weight:400; line-height:200%; letter-spacing:-0.8px; }
dl.jigyosyo-info dd.center { justify-content:center; }

/* フォトギャラリー */
div.ph-gallery img { object-fit:cover; object-position:center center; height:100%; max-width:100%; width:100%; }
div.gallery-main, ul.gallery-list li { box-sizing:border-box; border:4px solid; }
div.ph-gallery { flex-direction:column; gap:6.5px; margin:auto; margin-bottom:40px; }
div.gallery-main { aspect-ratio:3/2; border-radius:5px; overflow:hidden; height:auto; max-width:100%; width:100%; }
ul.gallery-list { flex:1; flex-wrap:wrap; gap:6.5px; justify-content:center; }
ul.gallery-list li { aspect-ratio:3/2; border-radius:5px; cursor:pointer; overflow:hidden; height:auto; min-width:60px; max-width:60px; width:100%; }
.gallery-main.border-pink,
.gallery-list li.border-pink { border-color:var(--pi-02); }
.gallery-main.border-yellow,
.gallery-list li.border-yellow { border-color:var(--ye); }
.gallery-main.border-green-01,
.gallery-list li.border-green-01 { border-color:var(--gren); }
.gallery-main.border-green-02,
.gallery-list li.border-green-02 { border-color:var(--gren-02); }
.gallery-main.border-blue,
.gallery-list li.border-blue { border-color:var(--bl); }
.ph-gallery-main {
  position: relative;
  align-items: center;
}

/* 矢印ボタン */
.ph-gallery-main .arrow {
  background: #fff;
  border: 2px solid #ffb6d9; /* ピンク系 */
  color: #ff69b4;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  transition: 0.2s;
  z-index: 10;
}

/* 左右位置 */
.ph-gallery-main .arrow-left {
  left: -20px;
}
.ph-gallery-main .arrow-right {
  right: -20px;
}

/* ホバー */
.ph-gallery-main .arrow:hover {
  background: #ffe6f2;
  transform: translateY(-50%) scale(1.1);
}

/* SVGサイズ */
.arrow-icon {
  width: 22px;
  height: 22px;
}

/* 左矢印は向きを反転 */
.arrow-left .arrow-icon {
  transform: rotate(180deg);
}


/* 事業所ページアクセス部分 */
div.access-box { flex-direction:column; gap:8px; margin:auto; margin-bottom:40px; max-width:265px; width:100%; }
div.access-box address, div.access-box p { font-size:16px; font-weight:400; line-height:200%; letter-spacing:-0.8px; }
p.map-button { justify-content:flex-end; }
p.map-button a { align-items:center; border-radius:50px; background-color:var(--bl-02); color:var(--wh); font-size:16px; font-weight:800; justify-content:center; height:36px; width:85px; }

/* テキスト：項目リード文用 */
.jigyosyo-page p.read { font-size:16px; font-weight:400; line-height:200%; letter-spacing:-0.8px; margin-bottom:40px; }

/* 表組み */
table.hyo { border-collapse:separate; border-spacing:2px; margin-bottom:8px; width:100%; }
table.hyo td { font-size:16px; font-weight:400; text-align:center; line-height:1.2; letter-spacing:-0.8px; padding:5px 0; }
table.hyo td .small { font-size:12px; }
table.hyo td.bl-01 { background-color:#ecf7f9; }
table.hyo td.ye-01 { background-color:#fffeef; }
table.hyo td.bl-02 { background-color:#a1d8e2; }
table.hyo td.ye-02 { background-color:#fff9b1; }

/* 事業所ページページャー */
ul.jigyosyo-pager { align-items:center; gap:5px; justify-content:space-between; margin-bottom:80px; }
ul.jigyosyo-pager li { font-size:14px; font-weight:500; text-align:center; position:relative; width:calc( 50% - 5px ); z-index:1; }
ul.jigyosyo-pager li a { color:var(--or); display:inline-block; padding:0 15px; }
ul.jigyosyo-pager li:first-child a::before, ul.jigyosyo-pager li:last-child a::after { position:absolute; top:50%; transform:translateY(-50%); }
ul.jigyosyo-pager li:first-child a::before { content:'◀'; left:0; }
ul.jigyosyo-pager li:last-child a::after { content:'▶'; right:0; }

/* スケジュールコンテンツ */
div.schedule-block { align-items:center; flex-direction:column; justify-content:center; text-align:center; margin:40px auto 80px auto; }
div.schedule-block img { margin:auto; height:auto; max-width:90%; width:100%; }

@container( min-width:960px ) {

/* 背景 */
.page-content { position:relative; z-index:1; }
.page-content::before { aspect-ratio:1397/819; background-size:contain; background-position:top center; background-repeat:no-repeat; background-image:url(../img/page/fireworks.png); content:''; display:block; position:absolute; top:110px; left:50%; transform:translateX(-50%); height:auto; max-width:1397px; width:100%; z-index:-1; }

/* ファーストビュー（見出し） */
div.first-view { max-width:830px; width:100%; }
div.first-view h2 { font-size:34px; font-weight:900; letter-spacing:6.8px; }

/* 見出し */
.top-midashi, .hana-midashi { font-size:20px; font-weight:800; margin-bottom:40px; }
.top-midashi { padding:0 16px; margin-top:0; max-width:260px; width:100%; }

/* 本文 */
section.top-content p, section.top-content li { font-size:18px; line-height:32px; letter-spacing:-0.9px; }
div.page-honbun p { font-size:18px; line-height:32px; letter-spacing:-0.9px; }

/* コンテンツ */
section.content-block.top-content { align-items:flex-start; border-radius:20px; display:flex; gap:40px; justify-content:flex-start; padding:40px; position:relative; margin:auto; margin-bottom:80px; max-width:830px; width:100%; z-index:1; }
section.content-block.top-content::before { aspect-ratio:136/204; content:''; background-size:contain; background-position:center; background-repeat:no-repeat; background-image:url('../img/page/top-content-deco-pc.png'); display:inline-block; position:absolute; top:-20px; left:-110px; width:136px; height:204px; z-index:2; }

/* 事業所ページ系統括用 */
section.top-content div.flex { align-items:flex-start; flex-direction:row; gap:40px; justify-content:flex-start; }
section.top-content div.flex h2.top-midashi { margin:0; }

/* 事業所ページ汎用 */
dl.jigyosyo-info { flex-direction:row; flex-wrap:wrap; gap:16px 56px; justify-content:flex-start; }
dl.jigyosyo-info dd { font-size:18px; font-weight:400; line-height:32px; letter-spacing:-0.9px; width:calc( 100% - ( 56px + 130px ) ); }
dl.jigyosyo-info dd.center { justify-content:flex-start; }

/* フォトギャラリー */
div.ph-gallery { margin-bottom:80px; max-width:830px; width:100%; }
div.gallery-main, ul.gallery-list li { border:15px solid; border-radius:10px; }
div.ph-gallery { gap:24px; margin-bottom:80px; }
ul.gallery-list { flex-wrap:nowrap; }
ul.gallery-list li { min-width:auto; max-width:100%; width:100%; }

/* 事業所ページアクセス部分 */
div.access-box { align-content:flex-end; flex-direction:row; gap:16px; justify-content:center; margin-bottom:80px; max-width:830px; }
div.access-box address { font-size:18px; line-height:32px; letter-spacing:-0.9px; }
div.access-box address br { display:none; }

/* 表組み */
table.hyo td br { display:none; }
table.hyo td .small { font-size:16px; }
table.hyo td.bl-01 { font-size:18px; line-height:32px; letter-spacing:-0.9px; font-weight:500; }
table.hyo td.bl-02 { font-size:18px; line-height:32px; letter-spacing:-0.9px }

/* 事業所ページページャー */
ul.jigyosyo-pager { margin-bottom:250px; }
ul.jigyosyo-pager li { font-size:20px; font-weight:800; width:auto; }
ul.jigyosyo-pager li:first-child a { padding-left:20px; }
ul.jigyosyo-pager li:last-child a { padding-right:20px; }

}







