/* BAKERY FORT LEAF 2311 text version */
:root {
    --bakery-orange: #f89f36;
    --bakery-text: #555;
    --bakery-paper: url('../img/index/section-back.webp');
}

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.bakery-page,
.bakery-page section,
.bakery-social,
.bakery-news,
.bakery-access {
    background-image: var(--bakery-paper);
    background-size: 100% auto;
}
.bakery-page img { display: block; max-width: 100%; }
.bakery-page h1,
.bakery-page h2,
.bakery-page h3,
.bakery-page h4,
.bakery-page p,
.bakery-page dt,
.bakery-page dd,
.bakery-page a,
.bakery-social,
.bakery-news,
.bakery-access {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, sans-serif;
}
.bakery-section { position: relative; color: var(--bakery-text); }
.bakery-heading { text-align: center; color: var(--bakery-orange); padding: 3.5vw 0 2.5vw; }
.bakery-heading h2 { margin: 0; font-family: agenda, sans-serif; font-size: 3vw; font-weight: 400; letter-spacing: .04em; line-height: 1.1; }
.bakery-heading p { margin: .5vw 0 0; font-size: 1.45vw; font-weight: 700; letter-spacing: .15em; }
.bakery-copy h2,
.bakery-copy h3 { color: var(--bakery-orange); font-size: 2vw; line-height: 1.8; letter-spacing: .08em; }
.bakery-copy p { font-size: 1.23vw; line-height: 2.15; letter-spacing: .05em; }
.bakery-copy--center { width: 66%; margin: 0 auto; text-align: center; }

.bakery-fv { width: 100%; height: 100vh; overflow: hidden; }
.bakery-fv__movie { width: 100%; height: 100vh; object-fit: cover; }

/* concept */
.bakery-concept { min-height: 93vw; padding-top: 4vw; }
.bakery-concept__visual { position: relative; }
.bakery-concept__visual--top { height: 20vw; }
.bakery-concept__visual--bottom { height: 31vw; margin-top: 2vw; }
.bakery-concept__photo { position: absolute; object-fit: cover; }
.bakery-concept__photo--bread { width: 46%; height: 12.4vw; right: 0; top: 6vw; }
.bakery-concept__photo--lunchbox { width: 50%; height: 14vw; left: 0; top: 4vw; }
.bakery-deco { position: absolute; object-fit: contain; }
.bakery-deco--bear { width: 13vw; left: 25%; top: 0; }
.bakery-deco--melon { width: 13vw; left: 11%; top: 1vw; }
.bakery-deco--lunchbox { width: 13vw; right: 7%; top: -3vw; }
.bakery-deco--sandwich { width: 17vw; right: 17%; bottom: 0; }
.bakery-copy--concept { width: 34%; margin: 0 auto; }

/* amuleia */
.bakery-amuleia__hero img { width: 100%; height: 18.5vw; object-fit: cover; }
.bakery-amuleia .bakery-copy { padding: 2vw 0 0; }
.bakery-amuleia__sandwich { width: 55%; margin: 2vw auto 5vw; display: grid; grid-template-columns: 1fr 2.7fr 1fr; align-items: start; gap: 2vw; }
.bakery-amuleia__sandwich img { width: 100%; }
.bakery-balloon { border: .12vw solid var(--bakery-orange); border-radius: 50%; color: var(--bakery-orange); text-align: center; font-size: 1.2vw; line-height: 1.6; padding: 2.2vw .5vw; position: relative; }
.bakery-balloon::after { content: ""; position: absolute; bottom: -.9vw; left: 45%; border-width: .9vw .5vw 0; border-style: solid; border-color: var(--bakery-orange) transparent transparent; }
.bakery-amuleia__about { width: 66%; margin: 0 auto; }
.bakery-amuleia__about > h3 { color: var(--bakery-orange); text-align: center; font-size: 2vw; letter-spacing: .1em; }
.bakery-feature-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4vw; margin-top: 3vw; }
.bakery-feature { text-align: center; }
.bakery-feature__num { display: grid; place-items: center; width: 4vw; height: 4.8vw; margin: 0 auto 4vw; border-radius: 2vw 2vw .3vw .3vw; background: var(--bakery-orange); color: #fff; font-size: 1.6vw; font-weight: 700; position: relative; }
.bakery-feature__num::after { content: ""; position: absolute; bottom: -2.8vw; width: .12vw; height: 2vw; background: var(--bakery-orange); }
.bakery-feature h4 { font-size: 1.55vw; color: #444; }
.bakery-feature p { text-align: left; font-size: 1.2vw; line-height: 2; }
.bakery-award { text-align: center; padding: 5vw 0 2vw; }
.bakery-award img { width: 37%; margin: 0 auto 4vw; }
.bakery-award p { color: var(--bakery-orange); font-size: 1.8vw; font-weight: 700; line-height: 2; }
.bakery-round-link { width: 14vw; aspect-ratio: 1; margin: 2vw auto 6vw; border-radius: 50%; background: var(--bakery-orange); color: #fff !important; display: grid; place-items: center; text-align: center; text-decoration: none !important; font-size: 1.2vw; font-weight: 700; line-height: 1.7; position: relative; }
.bakery-round-link::after { content: ""; position: absolute; bottom: -3.4vw; border-width: 3.5vw 1.4vw 0; border-style: solid; border-color: var(--bakery-orange) transparent transparent; }

/* bread */
.bakery-bread { background-image: url('../img/bakery/text/bread-bg.webp'), var(--bakery-paper); background-size: cover, 100% auto; padding: 1vw 0 4vw; }
.bakery-product-slider { width: 94%; margin: 0 auto; }
.bakery-product { text-align: center; padding: 1vw 3vw; }
.bakery-product__image { height: 14vw; display: flex; align-items: center; justify-content: center; }
.bakery-product__image img { max-width: 85%; max-height: 100%; object-fit: contain; }
.bakery-product h3 { color: var(--bakery-orange); font-size: 1.45vw; }
.bakery-product p { font-size: 1.1vw; line-height: 1.8; }
.bakery-note { color: var(--bakery-orange); text-align: center; font-size: 1.25vw; font-weight: 700; }
.slick-prev,
.slick-next { z-index: 5; width: 3vw; height: 3vw; }
.slick-prev { left: 29%; }
.slick-next { right: 29%; }
.slick-prev::before,
.slick-next::before { display: grid; place-items: center; width: 3vw; height: 3vw; border-radius: 50%; background: var(--bakery-orange); color: #fff; opacity: 1; font-size: 1.7vw; }
.slick-prev::before { content: "‹"; }
.slick-next::before { content: "›"; }

/* service */
.bakery-service { padding: 5vw 0 0; }
.bakery-service__block { width: 53%; margin: 0 auto; display: grid; align-items: center; gap: 3vw; position: relative; padding: 2vw 0 4vw; border-top: .1vw solid var(--bakery-orange); }
.bakery-service__block--lunch { grid-template-columns: 1fr 1.35fr; }
.bakery-service__block--soup { grid-template-columns: 1.35fr 1fr; }
.bakery-service__block img { width: 100%; max-height: 20vw; object-fit: contain; }
.bakery-service__block h2 { margin: 0; color: var(--bakery-orange); font-family: agenda, sans-serif; font-size: 2.8vw; font-weight: 400; }
.bakery-service__block h3 { margin: .2vw 0 1.8vw; color: var(--bakery-orange); font-size: 1.35vw; }
.bakery-service__block p { font-size: 1.2vw; line-height: 1.9; }
.bakery-service__block .bakery-note { grid-column: 1 / -1; margin: -2vw 0 0; }
.bakery-label,
.bakery-hours span { background: var(--bakery-orange); color: #fff; padding: .25vw .8vw; font-size: 1vw; font-weight: 700; }
.bakery-eatin { width: 72%; min-height: 55vw; margin: 4vw auto; position: relative; }
.bakery-eatin::before { content: ""; position: absolute; width: 62%; height: 24vw; right: 0; top: 8vw; background: var(--bakery-orange); z-index: 0; }
.bakery-eatin__copy { width: 31%; position: absolute; left: 0; top: 7vw; z-index: 2; }
.bakery-lead { color: var(--bakery-orange); font-weight: 700; font-size: 1.25vw !important; line-height: 2 !important; }
.bakery-eatin__copy h2 { margin: 2vw 0 0; color: var(--bakery-orange); font-family: agenda, sans-serif; font-size: 2.8vw; font-weight: 400; }
.bakery-eatin__copy h3 { color: var(--bakery-orange); font-size: 1.4vw; }
.bakery-eatin__copy p { font-size: 1.1vw; line-height: 2; }
.bakery-eatin__gallery { position: relative; z-index: 1; }
.bakery-eatin__gallery img { position: absolute; object-fit: cover; }
.bakery-eatin__gallery img:nth-child(1) { width: 18%; height: 20vw; right: 26%; top: 4vw; }
.bakery-eatin__gallery img:nth-child(2) { width: 20%; height: 23vw; right: 44%; top: 13vw; }
.bakery-eatin__gallery img:nth-child(3) { width: 38%; height: 15vw; right: 12%; top: 39vw; }
.bakery-eatin__deco { position: absolute; z-index: 3; object-fit: contain; }
.bakery-eatin__deco--bread { width: 16%; left: 3%; top: 36vw; }
.bakery-eatin__deco--soup { width: 12%; left: 21%; top: 42vw; }
.bakery-morning { padding-top: 2vw; }
.bakery-morning .bakery-heading strong { display: block; width: fit-content; margin: 1vw auto; padding: .2vw .7vw; background: var(--bakery-orange); color: #fff; font-size: 2.4vw; }
.bakery-morning .bakery-heading time { display: block; color: #555; text-decoration: underline; font-size: 1.5vw; }
.bakery-morning__menu { background: var(--bakery-orange); display: flex; align-items: center; justify-content: center; gap: 2.5vw; padding: 2vw 0; color: #fff; }
.bakery-morning__menu figure { width: 16%; margin: 0; text-align: center; }
.bakery-morning__menu img { width: 100%; height: 13vw; object-fit: contain; }
.bakery-morning__menu figcaption { font-size: 1.2vw; font-weight: 700; }
.bakery-morning__menu > span { font-size: 2vw; }
.bakery-morning__copy { padding: 2vw 0 5vw; }

/* information */
.bakery-information__shop img { width: 100%; height: 30vw; object-fit: cover; }
.bakery-information__heading { width: 36%; margin: -4vw auto 0; padding: 4vw 0 2vw; border-radius: 50% 50% 0 0; position: relative; background-image: var(--bakery-paper); }
.bakery-information__body { width: 60%; margin: 0 auto; display: grid; grid-template-columns: 1fr 2fr; gap: 4vw; align-items: center; padding: 2vw 0 4vw; }
.bakery-information__logo { border-right: .12vw solid var(--bakery-orange); padding: 6vw 3vw; }
.bakery-information__logo img { width: 70%; margin: auto; }
.bakery-information dl { margin: 0; }
.bakery-information dl > div { display: grid; grid-template-columns: 8vw 1fr; gap: 2vw; margin-bottom: 1.5vw; }
.bakery-information dt,
.bakery-information dd { margin: 0; font-size: 1.15vw; line-height: 1.8; }
.bakery-information dd a { color: inherit; }
.bakery-reservation { text-align: center; padding: 2vw 0 5vw; }
.bakery-reservation h3 { font-size: 1.55vw; }
.bakery-reservation > p { color: var(--bakery-orange); font-size: 1.15vw; font-weight: 700; }
.bakery-reservation a { width: 34%; margin: 2vw auto 0; padding: 3vw 1vw; display: block; border: .1vw solid var(--bakery-orange); background: rgba(248,159,54,.12); color: var(--bakery-orange); text-decoration: none; }
.bakery-reservation small,
.bakery-reservation strong { display: block; }
.bakery-reservation small { font-size: 1.1vw; }
.bakery-reservation strong { margin-top: .8vw; font-size: 1.8vw; }

/* instagram / news / access */
.bakery-social { padding: 4vw 15%; }
.bakery-social__icon { display: block; width: 4vw; margin: 0 auto 3vw; }
.bakery-social .sb_instagram_header,
.bakery-social #sbi_load { display: none !important; }
.bakery-news { padding: 3vw 0 5vw; }
.bakery-news > h2 { width: 70%; margin: 0 auto 2vw; padding-bottom: 1vw; border-bottom: .2vw solid var(--bakery-orange); color: var(--bakery-orange); text-align: center; font-size: 2.8vw; font-weight: 400; }
#toukou-flex { width: 70%; margin: auto; display: flex; flex-wrap: wrap; gap: 2%; }
.news-region { width: 23.5%; margin-bottom: 2vw; color: #262626; text-decoration: none; }
.news-region img { width: 100%; aspect-ratio: 500 / 317; object-fit: cover; }
.news-region time,
.news-region h3 { display: block; font-size: 1vw; }
#news-more { display: block; width: fit-content; margin: 2vw auto 0; color: var(--bakery-orange); font-size: 1.55vw; font-weight: 700; }
.bakery-access { padding: 5vw 0; }
.bakery-access__inner { width: 60%; margin: auto; display: grid; grid-template-columns: 1fr 1.2fr; gap: 5vw; align-items: center; }
.bakery-access__copy h2 { color: var(--bakery-orange); font-family: agenda, sans-serif; font-size: 3vw; font-weight: 400; }
.bakery-access__copy p { font-size: 1.15vw; line-height: 1.9; }
.bakery-access__copy strong,
.bakery-access__copy a { color: var(--bakery-orange); }
.bakery-access__copy a { font-size: 1.5vw; font-weight: 700; }
.bakery-access__map iframe { width: 100%; aspect-ratio: 1.3; border: 0; }

@media (min-width: 751px) {
    .sp { display: none !important; }
}

@media (max-width: 750px) {
    .pc { display: none !important; }
    .bakery-heading { padding: 10vw 0 7vw; }
    .bakery-heading h2 { font-size: 8vw; }
    .bakery-heading p { font-size: 4.5vw; margin-top: 1.5vw; }
    .bakery-copy h2,
    .bakery-copy h3 { font-size: 5.2vw; line-height: 1.65; }
    .bakery-copy p { font-size: 3.8vw; line-height: 1.95; }
    .bakery-copy--center { width: 86%; }

    .bakery-concept { min-height: 205vw; padding-top: 0; }
    .bakery-concept__visual--top { height: 62vw; }
    .bakery-concept__visual--bottom { height: 54vw; margin-top: 10vw; }
    .bakery-concept__photo--bread { width: 77%; height: 34vw; right: 0; top: 18vw; }
    .bakery-concept__photo--lunchbox { width: 74%; height: 31vw; left: 0; top: 10vw; }
    .bakery-deco--bear { width: 22vw; left: 3%; top: 2vw; }
    .bakery-deco--melon { width: 21vw; left: 5%; top: 42vw; }
    .bakery-deco--lunchbox { width: 19vw; right: 3%; top: 0; }
    .bakery-deco--sandwich { width: 31vw; right: 2%; bottom: 0; }
    .bakery-copy--concept { width: 70%; margin-left: 15%; }

    .bakery-amuleia__hero img { height: 48vw; }
    .bakery-amuleia .bakery-copy { padding-top: 8vw; }
    .bakery-amuleia__sandwich { width: 90%; margin: 7vw auto 14vw; grid-template-columns: 1fr 2.4fr 1fr; gap: 1vw; align-items: center; }
    .bakery-balloon { font-size: 2.8vw; border-width: .3vw; padding: 5vw .5vw; }
    .bakery-amuleia__about { width: 82%; }
    .bakery-amuleia__about > h3 { font-size: 5.5vw; margin-bottom: 10vw; }
    .bakery-feature-list { display: block; }
    .bakery-feature { margin-bottom: 18vw; }
    .bakery-feature__num { width: 12vw; height: 14vw; border-radius: 6vw 6vw 1vw 1vw; font-size: 4.5vw; margin-bottom: 10vw; }
    .bakery-feature__num::after { bottom: -7vw; width: .3vw; height: 5vw; }
    .bakery-feature h4 { font-size: 4.5vw; }
    .bakery-feature p { font-size: 3.8vw; line-height: 1.9; }
    .bakery-award { padding: 2vw 0 5vw; }
    .bakery-award img { width: 84%; margin-bottom: 8vw; }
    .bakery-award p { font-size: 4.6vw; line-height: 2; padding: 0 8vw; }
    .bakery-round-link { width: 50vw; margin: 8vw auto 18vw; font-size: 4vw; }
    .bakery-round-link::after { bottom: -11vw; border-width: 12vw 5vw 0; }

    .bakery-bread { padding-bottom: 10vw; }
    .bakery-product-slider { width: 100%; }
    .bakery-product { padding: 2vw 3vw; }
    .bakery-product__image { height: 37vw; }
    .bakery-product h3 { font-size: 4.5vw; }
    .bakery-product p { font-size: 3.5vw; line-height: 1.7; }
    .bakery-note { font-size: 3.2vw; padding: 0 6vw; line-height: 1.7; }
    .slick-prev,
    .slick-next,
    .slick-prev::before,
    .slick-next::before { width: 8vw; height: 8vw; }
    .slick-prev { left: 4vw; }
    .slick-next { right: 4vw; }
    .slick-prev::before,
    .slick-next::before { font-size: 5vw; }

    .bakery-service { padding-top: 10vw; }
    .bakery-service__block { width: 84%; display: grid; gap: 4vw; padding: 8vw 0 12vw; }
    .bakery-service__block--lunch { grid-template-columns: 1fr 1.2fr; }
    .bakery-service__block--soup { grid-template-columns: 1.2fr 1fr; }
    .bakery-service__block img { max-height: 42vw; }
    .bakery-service__block h2 { font-size: 8vw; }
    .bakery-service__block h3 { font-size: 4.2vw; }
    .bakery-service__block p { font-size: 3.7vw; line-height: 1.9; }
    .bakery-service__block .bakery-note { margin: 0; padding: 0; grid-column: 1 / -1; }
    .bakery-label,
    .bakery-hours span { font-size: 3.5vw; padding: .8vw 2vw; }
    .bakery-eatin { width: 100%; min-height: 270vw; margin-top: 0; }
    .bakery-eatin::before { width: 100%; height: 76vw; top: 119vw; }
    .bakery-eatin__copy { width: 84%; left: 8%; top: 12vw; }
    .bakery-lead { font-size: 4.2vw !important; }
    .bakery-eatin__copy h2 { margin-top: 8vw; font-size: 8vw; }
    .bakery-eatin__copy h3 { font-size: 4.5vw; }
    .bakery-eatin__copy p { font-size: 3.8vw; line-height: 1.9; }
    .bakery-eatin__gallery img:nth-child(1) { width: 39%; height: 66vw; left: 8%; right: auto; top: 103vw; }
    .bakery-eatin__gallery img:nth-child(2) { width: 39%; height: 67vw; right: 7%; top: 145vw; }
    .bakery-eatin__gallery img:nth-child(3) { width: 88%; height: 55vw; right: 6%; top: 220vw; }
    .bakery-eatin__deco--bread { width: 29%; left: 47%; top: 86vw; }
    .bakery-eatin__deco--soup { width: 25%; left: 70%; top: 99vw; }
    .bakery-morning .bakery-heading strong { font-size: 7vw; margin: 3vw auto; }
    .bakery-morning .bakery-heading time { font-size: 4.5vw; }
    .bakery-morning__menu { display: block; padding: 8vw 0; }
    .bakery-morning__menu figure { width: 52%; margin: 0 auto; }
    .bakery-morning__menu img { height: 43vw; }
    .bakery-morning__menu figcaption { font-size: 4.2vw; }
    .bakery-morning__menu > span { display: block; text-align: center; font-size: 7vw; }
    .bakery-morning__copy { padding: 9vw 0 14vw; }

    .bakery-information__shop img { height: 70vw; }
    .bakery-information__heading { width: 92%; margin-top: -13vw; padding-top: 13vw; }
    .bakery-information__body { width: 88%; display: block; padding-bottom: 10vw; }
    .bakery-information__logo { border-right: 0; padding: 2vw 0 10vw; }
    .bakery-information__logo img { width: 42%; }
    .bakery-information dl > div { grid-template-columns: 24vw 1fr; gap: 1vw; margin-bottom: 4vw; }
    .bakery-information dt,
    .bakery-information dd { font-size: 3.55vw; line-height: 1.8; }
    .bakery-reservation { width: 90%; margin: auto; padding-bottom: 12vw; }
    .bakery-reservation h3 { font-size: 4.3vw; text-align: left; }
    .bakery-reservation > p { font-size: 3.4vw; text-align: left; }
    .bakery-reservation a { width: 100%; padding: 8vw 2vw; }
    .bakery-reservation small { font-size: 3.6vw; }
    .bakery-reservation strong { font-size: 5.5vw; }

    .bakery-social { padding: 10vw 5%; }
    .bakery-social__icon { width: 13vw; margin-bottom: 8vw; }
    .bakery-news { padding: 8vw 0 12vw; }
    .bakery-news > h2 { width: 90%; font-size: 6vw; border-bottom-width: .7vw; }
    #toukou-flex { width: 90%; gap: 2%; }
    .news-region { width: 49%; margin-bottom: 6vw; }
    .news-region time,
    .news-region h3 { font-size: 3.5vw; }
    #news-more { font-size: 4.6vw; }
    .bakery-access { padding: 10vw 0; }
    .bakery-access__inner { width: 90%; display: block; }
    .bakery-access__copy h2 { font-size: 8vw; }
    .bakery-access__copy p { font-size: 3.6vw; }
    .bakery-access__copy a { font-size: 4.6vw; }
    .bakery-access__map { margin-top: 7vw; }
    .bakery-access__map iframe { aspect-ratio: 1.55; }
}
