@charset "utf-8";
@font-face {
    font-family: "ITALIANPLATENO2-BOLD";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/ITALIANPLATENO2-BOLD.woff) format('woff')
}
@font-face {
    font-family: "Roboto Condensed";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/RobotoCondensed-Bold.woff) format('woff')
}
@font-face {
    font-family: 'icomoon';
    font-weight: normal;
    font-style: normal;
    font-display: block;
    src: url('../fonts/icomoon.woff?lgj1hn') format('woff');
}
[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-arrow {
    text-decoration: none;
    margin-right: 2px;
}
.icon-arrow:before {
    content: "\e900";
    text-decoration: none;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	■共通スタイル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, fieldset, form, label, legend, table, caption, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    border: 0;
    outline: 0;
    font-size: 100%;
    font-style: normal;
    vertical-align: baseline;
    background: transparent;
    margin: 0;
    padding: 0;
}
main, article, aside, details, summary, blockquote, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}
h1, h2, h3, h4, h5, dl, dt, dd, ol, ul, li, p, figure {
    margin: 0;
    padding: 0;
}
ul {
    list-style: none;
}
img, iframe, select, textarea {
    vertical-align: top;
}
img {
    max-width: 100%;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
html {
    height: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
}
body {
    height: 100%;
    font-family: "icomoon", "Meiryo UI", Meiryo, "メイリオ", sans-serif;
    line-height: 1;
    letter-spacing: 0;
    font-feature-settings: "palt";
    -webkit-text-size-adjust: 100%;
    background: #000;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    margin: 0;
    padding: 0;
}
p {
    line-height: 1.5;
    margin-bottom: 16px;
}
p:last-of-type {
    margin-bottom: 0;
}
li {
    line-height: 1.5;
}
dt {
    line-height: 1.5;
}
a {
    color: #000;
    font-size: 100%;
    vertical-align: baseline;
    text-decoration: none;
}
.fadein {
    opacity: 0;
    transform: translateY(24px);
    transform: translateY(0);
    transition: all 1s;
}
.indent {}
.indent.level1 {
    padding-left: 1em;
    text-indent: -1em;
}
.indent.level2 {
    padding-left: 1.5em;
    text-indent: -1.5em;
}
.indent.level3 {
    padding-left: 2em;
    text-indent: -2em;
}
.center {
    text-align: center;
}
/*-------------------------------------------------------------------------
	top
-------------------------------------------------------------------------*/
/*------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
    .sp {
        display: none !important
    }
    body {
        font-size: 16px;
    }
    a[href^="tel:"] {
        pointer-events: none;
        text-decoration: none;
    }
    main {
        margin: 0;
    }
    section {
        padding: 60px 0;
    }
    .inner {
        width: calc(100% - 64px);
        max-width: 1024px;
        margin: 0 auto;
    }
    .inner.wide {
        max-width: 1200px;
    }
    .inner.thin {
        max-width: 890px;
    }
}
/*------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
    .pc {
        display: none !important
    }
    body {
        font-size: 14px;
    }
    main {}
    section {
        padding: 10px 0;
    }
    main p {
        margin-bottom: 16px;
    }
    .inner {
        width: calc(100% - 32px);
        margin: 0 16px;
    }
    .inner.wide {}
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	■anniversary
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#anniversary {
    background: #140f0a;
    background-image: url("../img/bg-starlight-tile.webp");
    background-position: center top;
    background-repeat: repeat;
    background-size: 512px;
    color: #fff;
    margin: 0;
    padding: 80px 0 40px;
    position: relative;
}
/* 上部のメイン背景（下端をタイルへフェード） */
#anniversary::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    aspect-ratio: 1920 / 1080;
    background: url("../img/bg-starlight-pc.webp") center top / cover no-repeat;
    -webkit-mask-image: linear-gradient(#000 60%, transparent);
    mask-image: linear-gradient(#000 60%, transparent);
}
#anniversary > * {
    position: relative;
}
@media screen and (max-width: 767px) {
    #anniversary {
        background-size: 256px;
    }
    #anniversary::before {
        aspect-ratio: 750 / 1624;
        background-image: url("../img/bg-starlight-sp.webp");
    }
}
#anniversary .special {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px;
}
#anniversary .special p {
    width: 48%;
    margin: 0;
}
@media screen and (max-width: 767px) {
    #anniversary .special p {
        width: 98%;
    }
}
/*-------------------------------------------------------------------------
	benefit（文字で編集できる特典カード）
	画像（742×1290）と同じ比率で、カード幅を基準に全体を拡大縮小する
	--u = 元画像の1px 相当
-------------------------------------------------------------------------*/
#anniversary .special .benefit {
    width: 46.5%;
}
@media screen and (max-width: 767px) {
    #anniversary .special .benefit {
        width: 98%;
    }
}
.benefit {
    --u: calc(100cqw / 742);
    --red: #b21c24;
    --scoop: calc(30 * var(--u));
    position: relative;
    aspect-ratio: 742 / 1290;
    container-type: inline-size;
    color: #111;
    font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
    font-feature-settings: normal;
    text-align: center;
}
#anniversary .benefit p {
    width: auto;
    font-size: inherit;
    margin: 0;
    line-height: 1.3;
}
/* リボン */
.benefit::before, .benefit::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: calc(50 * var(--u));
    width: calc(170 * var(--u));
    height: calc(82 * var(--u));
    background: linear-gradient(180deg, #6e450b 0%, #c99a3a 40%, #f0d68c 55%, #a5731d 100%);
}
/* 切り込みが枠の外に出るよう、左右に少しはみ出させる */
.benefit::before {
    left: calc(-22 * var(--u));
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 13% 50%);
}
.benefit::after {
    right: calc(-22 * var(--u));
    clip-path: polygon(0 0, 100% 0, 87% 50%, 100% 100%, 0 100%);
}
.benefit-ribbon {
    position: absolute;
    z-index: 2;
    top: calc(22 * var(--u));
    left: calc(107 * var(--u));
    width: calc(528 * var(--u));
    height: calc(95 * var(--u));
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        linear-gradient(90deg, rgba(60, 35, 0, .35) 0%, rgba(60, 35, 0, 0) 14%, rgba(60, 35, 0, 0) 86%, rgba(60, 35, 0, .35) 100%),
        linear-gradient(180deg, #7b4f0e 0%, #c8962e 16%, #f6e2a0 42%, #e2b955 62%, #a8741a 86%, #6e450b 100%);
    box-shadow: inset 0 calc(3 * var(--u)) 0 rgba(255, 240, 190, .45), inset 0 calc(-3 * var(--u)) 0 rgba(255, 240, 190, .3);
    font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
    font-weight: 900;
    font-size: calc(52 * var(--u));
    letter-spacing: 0.06em;
    color: var(--red);
    text-shadow: 0 calc(1 * var(--u)) 0 rgba(255, 245, 210, .6);
}
.benefit-ribbon::before, .benefit-ribbon::after {
    content: "";
    position: absolute;
    bottom: calc(-15 * var(--u));
    width: calc(42 * var(--u));
    height: calc(15 * var(--u));
    background: #3e2706;
}
.benefit-ribbon::before {
    left: 0;
    clip-path: polygon(0 0, 100% 0, 100% 100%);
}
.benefit-ribbon::after {
    right: 0;
    clip-path: polygon(0 0, 100% 0, 0 100%);
}
/* 金の枠（四隅を内側に丸くえぐる） */
.benefit-body {
    position: absolute;
    top: calc(95 * var(--u));
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    padding: calc(62 * var(--u)) calc(40 * var(--u)) calc(44 * var(--u));
    background: linear-gradient(135deg, #a8741a 0%, #f1d78a 30%, #c8952e 55%, #f6e6a8 75%, #9a6814 100%);
}
.benefit-body, .benefit-body::before {
    -webkit-mask:
        radial-gradient(circle at 0 0, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) top left,
        radial-gradient(circle at 100% 0, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) top right,
        radial-gradient(circle at 0 100%, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) bottom left,
        radial-gradient(circle at 100% 100%, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) bottom right;
    -webkit-mask-size: 51% 51%;
    -webkit-mask-repeat: no-repeat;
    mask:
        radial-gradient(circle at 0 0, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) top left,
        radial-gradient(circle at 100% 0, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) top right,
        radial-gradient(circle at 0 100%, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) bottom left,
        radial-gradient(circle at 100% 100%, #0000 var(--scoop), #000 calc(var(--scoop) + .5px)) bottom right;
    mask-size: 51% 51%;
    mask-repeat: no-repeat;
}
.benefit-body::before {
    content: "";
    position: absolute;
    inset: calc(5 * var(--u));
    background: #fff;
}
.benefit-body > * {
    position: relative;
}
/* 最大100回払い */
#anniversary .benefit .benefit-max {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-weight: 900;
    color: var(--red);
}
.benefit-max .max {
    font-size: calc(68 * var(--u));
    line-height: 1.04;
}
.benefit-max .num {
    font-family: "Roboto Condensed", "Noto Sans JP", sans-serif;
    font-size: calc(214 * var(--u));
    letter-spacing: -0.03em;
    line-height: .8;
    margin: 0 calc(12 * var(--u)) 0 calc(6 * var(--u));
}
.benefit-max .unit {
    font-size: calc(84 * var(--u));
    color: #111;
    text-align: left;
    line-height: 1;
    white-space: nowrap;
}
.benefit-max .unit small {
    display: block;
    font-size: calc(46 * var(--u));
    line-height: 1.08;
    margin-bottom: calc(8 * var(--u));
}
/* 本文 */
#anniversary .benefit .benefit-lead {
    position: relative;
    margin-top: calc(16 * var(--u));
    padding-bottom: calc(18 * var(--u));
    font-size: calc(35 * var(--u));
    font-weight: 700;
    letter-spacing: 0.02em;
    background: linear-gradient(var(--red), var(--red)) center bottom / calc(100% - 12 * var(--u)) calc(2 * var(--u)) no-repeat;
}
.benefit-lead::before, .benefit-lead::after {
    content: "";
    position: absolute;
    bottom: calc(-3 * var(--u));
    width: calc(8 * var(--u));
    height: calc(8 * var(--u));
    background: var(--red);
}
.benefit-lead::before { left: 0; }
.benefit-lead::after { right: 0; }
#anniversary .benefit .benefit-period {
    margin-top: calc(22 * var(--u));
    font-size: calc(24 * var(--u));
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.02em;
}
.benefit-period small {
    font-size: calc(18 * var(--u));
}
#anniversary .benefit .benefit-notice {
    margin-top: calc(12 * var(--u));
    font-size: calc(19 * var(--u));
    font-weight: 700;
    color: var(--red);
    letter-spacing: -0.01em;
}
#anniversary .benefit .benefit-note {
    margin-top: calc(10 * var(--u));
    font-size: calc(16.5 * var(--u));
    line-height: 1.5;
    letter-spacing: -0.01em;
}
#anniversary .benefit .benefit-sim {
    margin-top: calc(20 * var(--u));
    height: calc(56 * var(--u));
    line-height: calc(56 * var(--u));
    background: var(--red);
    color: #fff;
    font-size: calc(28 * var(--u));
    font-weight: 500;
    letter-spacing: 0.04em;
}
.benefit-sim sup, .benefit-plan sup {
    font-size: .52em;
    vertical-align: .8em;
    margin-left: .2em;
    font-weight: 500;
}
#anniversary .benefit .benefit-item {
    margin-top: calc(16 * var(--u));
    font-size: calc(25 * var(--u));
    font-weight: 500;
    line-height: 1.4;
}
.benefit-item span {
    font-size: calc(21 * var(--u));
}
.benefit-item small {
    font-size: calc(15 * var(--u));
}
/* 横の配列：左に時計、右に支払い例 */
.benefit-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: auto 0;
    padding: calc(14 * var(--u)) 0;
}
.benefit-row img {
    flex: none;
    width: calc(236 * var(--u));
    margin-left: calc(14 * var(--u));
}
.benefit-plan {
    width: calc(352 * var(--u));
    border: calc(1.5 * var(--u)) solid var(--red);
    padding: calc(22 * var(--u)) calc(18 * var(--u)) calc(18 * var(--u));
}
.benefit-plan h3 {
    font-size: calc(30 * var(--u));
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.3;
}
#anniversary .benefit .benefit-plan .first {
    margin-top: calc(12 * var(--u));
    font-size: calc(20 * var(--u));
    font-weight: 500;
}
.benefit-plan .first small {
    font-size: calc(16 * var(--u));
}
#anniversary .benefit .benefit-plan .monthly {
    margin-top: calc(6 * var(--u));
    color: var(--red);
    font-size: calc(26 * var(--u));
    font-weight: 700;
    line-height: 1.1;
}
.benefit-plan .monthly b {
    font-size: calc(50 * var(--u));
    font-weight: 900;
    letter-spacing: 0.01em;
}
#anniversary .benefit .benefit-plan .times {
    text-align: right;
    font-size: calc(20 * var(--u));
    font-weight: 700;
}
.benefit-foot {
    padding-left: calc(20 * var(--u));
    text-align: left;
    font-size: calc(16.5 * var(--u));
    line-height: 1.6;
}
.benefit-foot li {
    line-height: 1.6;
}
/* 特典2：お買上げプレゼント */
#anniversary .benefit .benefit-present {
    font-size: calc(68 * var(--u));
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: -0.03em;
    color: var(--red);
}
#anniversary .benefit .benefit-present-sub {
    margin-top: calc(4 * var(--u));
    font-size: calc(29 * var(--u));
    color: var(--red);
    letter-spacing: 0.01em;
}
.benefit-rule {
    position: relative;
    flex: none;
    height: calc(2 * var(--u));
    margin: calc(18 * var(--u)) calc(6 * var(--u)) 0;
    background: var(--red);
}
.benefit-rule::before, .benefit-rule::after {
    content: "";
    position: absolute;
    top: calc(-3 * var(--u));
    width: calc(8 * var(--u));
    height: calc(8 * var(--u));
    background: var(--red);
}
.benefit-rule::before { left: calc(-6 * var(--u)); }
.benefit-rule::after { right: calc(-6 * var(--u)); }
#anniversary .benefit .benefit-cond {
    margin-top: calc(18 * var(--u));
    font-size: calc(24 * var(--u));
    font-weight: 700;
    line-height: 1.45;
}
.benefit-cond small {
    font-size: calc(16 * var(--u));
}
/* 条件ごとのブロック（1・2段目は横並び、3段目は全幅） */
.benefit-tiers {
    display: flex;
    margin: calc(18 * var(--u)) calc(-18 * var(--u)) 0;
}
.benefit-tier {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.benefit-tiers .benefit-tier + .benefit-tier {
    margin-left: calc(12 * var(--u));
}
.benefit-tier.is-wide {
    flex: 1 1 auto;
}
#anniversary .benefit .benefit-tiers .benefit-cond {
    margin-top: 0;
    font-size: calc(24 * var(--u));
    letter-spacing: -0.03em;
    white-space: nowrap;
}
#anniversary .benefit .benefit-tier.is-wide .benefit-cond {
    font-size: calc(24 * var(--u));
}
#anniversary .benefit .benefit-photo {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: calc(12 * var(--u)) 0;
}
.benefit-photo img {
    display: block;
    max-width: 100%;
    max-height: calc(200 * var(--u));
}
.benefit-tier.is-wide .benefit-photo img {
    max-height: calc(260 * var(--u));
}
.benefit-foot.is-large {
    padding-left: calc(10 * var(--u));
}
.benefit-foot.is-large li {
    line-height: 1.5;
}
/*-------------------------------------------------------------------------
	head
-------------------------------------------------------------------------*/
#anniversary .head {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
}
#anniversary .head > div {
    width: 100%;
}
#anniversary .brand {
    margin-bottom: 40px;
}
#anniversary .logo {
    display: inline-block;
    width: 50%;
    max-width: 280px;
}
#anniversary h1 {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin-top: 0;
    margin-bottom: 64px;
}
#anniversary .head .hero {
    width: 60%;
}
#anniversary .head h1 strong {
    display: flex;
    align-items: center;
    color: #E64B4A;
    margin-bottom: 16px;
}
#anniversary .head h1 strong i {
    flex: none;
    width: 56px;
    height: 56px;
    background: #E64B4A;
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
#anniversary .head h1 strong i + i {
    margin-left: 6px;
}
#anniversary .head h1 strong b {
    font-size: 56px;
    font-weight: bold;
    margin-left: 20px;
}
#anniversary .head h1 u {
    color: #DA8E00;
    background: -webkit-linear-gradient(-45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-decoration: none;
    padding-bottom: 8px;
    margin-bottom: 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: center;
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "Hiragino Mincho ProN", serif;
    font-weight: bold;
}
#anniversary .head h1 u b {
    font-size: 88px;
    line-height: 1.1;
    letter-spacing: -0.02em;
}
#anniversary .head h1 .days {
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    letter-spacing: 0.04em;
    padding: 20px 120px 18px;
    background: linear-gradient(90deg, rgba(218, 175, 8, 0) 0%, rgba(218, 175, 8, .22) 22%, rgba(218, 175, 8, .22) 78%, rgba(218, 175, 8, 0) 100%);
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-image: linear-gradient(90deg, rgba(218, 175, 8, 0) 0%, rgba(218, 175, 8, .8) 22%, rgba(218, 175, 8, .8) 78%, rgba(218, 175, 8, 0) 100%) 1;
}
#anniversary .head h1 .days b {
    font-size: 64px;
    margin: 0 4px;
}
#anniversary .head h1 .days b span {
    font-weight: normal;
    margin: 0 12px;
}
#anniversary p {
    font-size: 24px;
    font-weight: normal;
    margin-bottom: 16px;
}
#anniversary .message {
    font-size: 20px;
    line-height: 2.1;
    letter-spacing: 0.04em;
    margin-bottom: 72px;
}
#anniversary .message .sign {
    display: inline-block;
    margin-top: 24px;
    font-size: 18px;
    letter-spacing: 0.12em;
}
#anniversary .link a {
    width: 100%;
    min-height: 64px;
    padding: 12px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: clamp(18px, 2.4vw, 28px);
    line-height: 1.4;
    font-weight: bold;
    margin: 0 auto;
    box-sizing: border-box;
    background: #DAA520;
    color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    transition: .25s;
}
#anniversary .link a .icon-arrow {
    flex: none;
    margin-right: .5em;
}
#anniversary .link a:hover {
    background: #fff;
    color: #007A55;
}
#anniversary .attention {
    font-size: 14px;
}
/*------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
    #anniversary .head {
        flex-wrap: wrap;
        /*flex-direction: column-reverse;*/
    }
    #anniversary .head h1 strong {
        margin-bottom: 8px;
    }
    #anniversary .head h1 strong i {
        width: 28px;
        height: 28px;
        font-size: 24px;
    }
    #anniversary .head h1 strong i + i {
        margin-left: 4px;
    }
    #anniversary .head h1 strong b {
        font-size: 24px;
        margin-left: 8px;
    }
    #anniversary {
        padding-top: 48px;
    }
    #anniversary .brand {
        margin-bottom: 28px;
    }
    #anniversary .logo {
        width: 50%;
    }
    #anniversary .head h1 {
        margin-top: 0;
        margin-bottom: 40px;
    }
    #anniversary .head h1 u {
        text-decoration: none;
        margin-bottom: 24px;
        text-align: center;
    }
    #anniversary .head h1 u b {
        width: 100%;
        font-size: 42px;
        line-height: 1.15;
        margin-right: 0;
    }
    #anniversary .head h1 .days {
        align-self: stretch;
        font-size: 14px;
        padding: 14px 0 12px;
        letter-spacing: 0.02em;
        background: linear-gradient(90deg, rgba(218, 175, 8, 0) 0%, rgba(218, 175, 8, .22) 12%, rgba(218, 175, 8, .22) 88%, rgba(218, 175, 8, 0) 100%);
        border-image: linear-gradient(90deg, rgba(218, 175, 8, 0) 0%, rgba(218, 175, 8, .8) 12%, rgba(218, 175, 8, .8) 88%, rgba(218, 175, 8, 0) 100%) 1;
    }
    #anniversary .head h1 .days b {
        font-size: 30px;
        margin: 0 2px;
    }
    #anniversary .head h1 .days b span {
        margin: 0 4px;
    }
    #anniversary .message {
        font-size: 18px;
        line-height: 2;
        letter-spacing: 0.02em;
        text-align: left;
        margin: 0 20px 48px;
    }
    #anniversary .message .sign {
        display: block;
        text-align: center;
        margin-top: 18px;
        font-size: 17px;
    }
    #anniversary .head .hero {
        width: 80%;
    }
    #anniversary p {
        font-size: 18px;
        margin: 0 5px 24px;
    }
    #anniversary .link a {
        min-height: 72px;
        padding: 10px 12px;
        font-size: clamp(14px, 4.2vw, 18px);
    }
    #anniversary .attention {
        font-size: 12px;
    }
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	■information
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#information {
    background: #eee;
    padding-top: 64px;
}
/*-------------------------------------------------------------------------
	store
-------------------------------------------------------------------------*/
.store {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
    margin-bottom: 48px;
}
.store li {
    width: calc(50% - 20px);
    margin: 0 10px;
    padding: 40px;
    box-sizing: border-box;
    background: #fff;
    text-align: center;
}
.store h3 {
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 16px;
}
.store dl {}
.store dt {
    margin-bottom: 16px;
}
.store dd {}
.store dd p b {
    font-size: 24px;
}
.store dd p small {
    font-size: 14px;
}
.store dd .red {
    color: #9A3433;
    font-weight: bold;
}
.store dd .link a {
    width: 100%;
    max-width: 234px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
    margin: 0 auto;
    border: 2px solid #007A55;
    box-sizing: border-box;
    color: #007A55;
    transition: .25s;
}
.store dd .link a:hover {
    background: #007A55;
    color: #fff;
}
.map {
    position: relative;
    width: 100%;
    padding-top: 75%;
    margin-bottom: 16px;
}
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
.store + .link a {
    width: 100%;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin: 0 auto;
    border: 2px solid #007A55;
    box-sizing: border-box;
    background: #007A55;
    color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    transition: .25s;
}
.store + .link a:hover {
    background: #fff;
    color: #007A55;
}
/*------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
    .store {
        display: block;
        margin: 0 0 24px 0;
    }
    .store li {
        width: 100%;
        margin: 0 0 16px 0;
        padding: 16px;
    }
    .store li:last-child {
        margin-bottom: 0;
    }
    .store h3 {
        font-size: 20px;
        margin-bottom: 12px;
    }
    .store dd p b {
        font-size: 18px;
    }
    .store dd p small {
        font-size: 13px;
    }
    .store dd .link a {
        font-size: 16px;
    }
    .store + .link a {
        height: 72px;
        font-size: 16px;
    }
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	■footer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
footer {
    background: #fff;
    padding: 64px 0 32px 0;
}
footer dl {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
footer dt {
    flex: none;
    width: 302px;
}
footer dd {
    font-size: 14px;
    font-family: "Roboto Condensed";
}
/*------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
    footer {
        padding: 24px 0;
    }
    footer dt {
        width: 160px;
    }
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
	■ pagetop
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.pagetop {
    width: 80px;
    height: 80px;
    position: fixed;
    right: 0;
    bottom: 40px;
    margin-left: auto;
    margin-right: 40px;
    z-index: 2;
}
.pagetop a {}
.pagetop img {
    width: 100%;
    transition: .25s;
}
.pagetop a:hover {
    opacity: 1;
}
/*------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
    .pagetop {
        width: 40px;
        height: 40px;
        bottom: 16px;
        margin-right: 16px;
    }
}