.detail sup {
    font-size: .6em;
    line-height: 1;
    vertical-align: super
}

@media (min-width: 1400px),print {
    :root {
        --font_serif:"Noto Serif JP",serif;
        --col_primary: #6da24e;
        --col_primary-pale: rgba(109,162,78,.1);
        --base_line-height: 2.25
    }

    .page-report .serif {
        font-family: var(--font_serif)
    }

    .report__tag {
        border: 2px solid #38a459;
        border-radius: 100px;
        color: #38a459;
        display: inline-block;
        font-size: .875rem;
        font-weight: 700;
        letter-spacing: .15em;
        padding: 4px 20px 6px
    }

    .report__tag .icon {
        bottom: -2px;
        font-size: .875rem;
        font-weight: 400;
        left: -6px;
        position: relative
    }

    .article {
        height: auto;
        width: 100%
    }

    .article__intro {
        border-bottom: 1px solid #ccc;
        padding: 16px 0 32px
    }

    .article__intro-title {
        -webkit-box-align: end;
        -ms-flex-align: end;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        align-items: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: flex-start;
        padding: 0 0 20px
    }

    .article__intro-title .title-img {
        height: auto;
        width: 397px
    }

    .article__intro-title .vol {
        color: var(--col_primary);
        font-size: 1.5rem;
        letter-spacing: .1em;
        line-height: 1;
        margin-left: 32px
    }

    .article__intro-title .vol em {
        font-size: 2.4375rem
    }

    .article__intro-text {
        font-size: 1rem;
        font-weight: 500
    }

    .article__head {
        padding: 40px 0 48px
    }

    .article__head-above {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0 0 24px
    }

    .article__head-above .date {
        color: #888;
        font-family: Chillax,sans-serif;
        font-size: 1rem;
        letter-spacing: .05em;
        margin-left: 20px
    }

    .article__title {
        font-size: 2.125rem;
        letter-spacing: .1em;
        line-height: 1.4
    }

    .article__body .video-wrap {
        border-radius: 10px;
        height: auto;
        margin-top: 40px;
        overflow: hidden;
        padding-top: 56.25%;
        position: relative;
        width: 100%;
        will-change: opacity
    }

    .article__body .video-wrap iframe {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .article__body .profile {
        background-color: var(--col_primary-pale);
        border-radius: 10px;
        margin-top: 80px;
        padding: 32px 40px
    }

    .article__body .profile__title {
        color: var(--col_primary);
        font-size: 1.5rem;
        font-weight: 500;
        letter-spacing: .15em;
        padding: 0 0 32px
    }

    .article__body .profile__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 40px
    }

    .article__body .profile__item+.profile__item {
        margin-top: 30px
    }

    .article__body .profile__avatar {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 144px;
        flex: 0 0 144px
    }

    .article__body .profile__description {
        padding: 12px 0 0
    }

    .article__body .profile__name {
        color: var(--col_primary);
        font-size: .875rem;
        font-weight: 500;
        padding: 0 0 16px
    }

    .article__body .profile__name em {
        font-size: 1.25rem;
        letter-spacing: .1em;
        margin: 0 6px 0 0
    }

    .article__body .profile__detail {
        font-size: 1rem;
        letter-spacing: .1em;
        line-height: 1.9
    }

    .article__body .detail {
        padding: 0 0 112px
    }

    .article__body .detail:has(+.circular-list-wrap) {
        padding-bottom: 0
    }

    .article__body .detail>:first-child {
        margin-top: 0!important
    }

    .article__body .detail h2 {
        color: var(--col_primary);
        font-size: 1.875rem;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.4;
        margin-bottom: 32px;
        margin-top: 72px
    }

    .article__body .detail hr {
        border: 0;
        border-top: 1px solid #ddd;
        height: 0;
        margin: 32px 0;
        padding: 0
    }

    .article__body .detail a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 8px;
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .detail a:hover {
        opacity: .7
    }

    .article__body .detail p {
        font-size: 1rem;
        letter-spacing: .1em;
        line-height: var(--base_line-height);
        margin-top: 32px
    }

    .article__body .detail p.mt-0 {
        margin-top: 0
    }

    .article__body .detail p.text-right {
        text-align: right
    }

    .article__body .detail p.text-center {
        text-align: center
    }

    .article__body .detail ul {
        display: -ms-grid;
        display: grid;
        gap: .5em
    }

    .article__body .detail ul>li {
        font-size: 1rem;
        line-height: var(--base_line-height);
        padding: 0 0 0 1.5em;
        position: relative
    }

    .article__body .detail ul>li:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        height: 4px;
        left: .6em;
        position: absolute;
        top: calc(var(--base_line-height)*1em/2 - 1px);
        width: 4px
    }

    .article__body .detail ul.mg {
        margin: 1.5em 0
    }

    .article__body .detail ul.mg-b {
        margin: 0 0 1.5em
    }

    .article__body .detail ul+p {
        margin-top: 0
    }

    .article__body .detail .img-center {
        margin-top: 32px
    }

    .article__body .detail .img-center img {
        display: block;
        margin: auto;
        max-width: 100%;
        width: auto
    }

    .article__body .detail .img-center img+img {
        margin-top: 8px
    }

    .article__body .detail .img-center figcaption {
        font-size: .875rem;
        line-height: 1.4;
        margin-top: 12px
    }

    .article__body .detail .img-center figcaption a {
        line-height: 1.6;
        text-underline-offset: 2px
    }

    .article__body .detail .img-center figcaption:first-child {
        margin-bottom: 8px;
        margin-top: 0
    }

    .article__body .detail .img-center figcaption.right {
        text-align: right
    }

    .article__body .detail .img-center.full-width img {
        width: 100%
    }

    .article__body .detail .img-center.with-caption {
        margin: 32px auto 0;
        max-width: 100%;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .article__body .detail .img-center.vertical {
        margin: 32px auto 0;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .article__body .detail .img-center.vertical img {
        max-height: 800px
    }

    .article__body .detail .img-center.mg-0 {
        margin-top: 0
    }

    .article__body .detail .bg-box {
        background-color: var(--col_primary-pale);
        border-radius: 10px;
        margin-top: 32px;
        padding: 32px 40px
    }

    .article__body .detail .bg-box>:first-child {
        margin-top: 0
    }

    .article__body .detail .faq {
        display: -ms-grid;
        display: grid;
        gap: 48px;
        margin-top: 32px
    }

    .article__body .detail .faq__item {
        display: -ms-grid;
        display: grid
    }

    .article__body .detail .faq__answer,.article__body .detail .faq__question {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 20px
    }

    .article__body .detail .faq__answer .icon,.article__body .detail .faq__question .icon {
        -ms-flex-negative: 0;
        border-radius: 50%;
        display: -ms-grid;
        display: grid;
        flex-shrink: 0;
        font-family: var(--font_serif);
        font-size: 1.125rem;
        height: 60px;
        place-items: center;
        width: 60px
    }

    .article__body .detail .faq__question {
        font-size: 1.375rem;
        font-weight: 500;
        letter-spacing: .1em;
        line-height: 1.6;
        margin-bottom: 32px
    }

    .article__body .detail .faq__question .icon {
        background-color: var(--col_primary);
        color: #fff
    }

    .article__body .detail .faq__question .question {
        display: -ms-grid;
        display: grid;
        min-height: 60px;
        place-items: center
    }

    .article__body .detail .faq__answer .icon {
        background-color: var(--col_primary-pale);
        color: var(--col_primary)
    }

    .article__body .detail .faq__answer .answer {
        display: -ms-grid;
        display: grid;
        font-size: 1rem;
        letter-spacing: .1em;
        line-height: 1.9;
        min-height: 60px;
        place-items: center
    }

    .article__body .detail .dialogue {
        -ms-grid-columns: auto 8px 1fr;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -ms-grid;
        display: grid;
        font-size: 1rem;
        gap: 8px;
        grid-template-columns: auto 1fr;
        letter-spacing: .1em;
        min-height: 60px
    }

    .article__body .detail .dialogue:not(:first-child) {
        margin-top: 2em
    }

    .article__body .detail .dialogue:has(p) {
        line-height: var(--base_line-height)
    }

    .article__body .detail .dialogue__row {
        -ms-grid-column-span: 2;
        -ms-grid-columns: subgrid;
        --person-color: currentColor;
        display: -ms-grid;
        display: grid;
        gap: 12px 16px;
        grid-column: span 2;
        grid-template-columns: subgrid;
        width: 100%
    }

    .article__body .detail .dialogue__row dt {
        -ms-flex-negative: 0;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        color: var(--person-color);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-shrink: 0;
        font-weight: 700;
        height: 100%;
        justify-content: flex-start;
        text-align: left
    }

    .article__body .detail .dialogue__row dd p:first-child {
        margin-top: 0
    }

    .article__body .detail .dialogue__row.--pink {
        --person-color: #eb7875
    }

    .article__body .detail .dialogue__row.--blue {
        --person-color: #5db4cc
    }

    .article__body .detail .note-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
        margin-top: 2em
    }

    .article__body .detail .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 6px
    }

    .article__body .detail .note:after {
        clear: both;
        content: "";
        display: table
    }

    .article__body .detail .note-asterisk {
        font-size: 1rem;
        line-height: 1.8
    }

    .article__body .detail .note-inner p {
        line-height: 1.8;
        margin-top: 0
    }

    .article__body .detail .note-fig {
        float: left;
        margin-right: 16px
    }

    .article__body .detail .note-fig img {
        width: auto
    }

    .article__body .detail blockquote {
        font-size: 1rem;
        font-style: italic;
        font-weight: 700;
        line-height: var(--base_line-height);
        margin-top: 1em
    }

    .article__body .present {
        background-color: var(--col_primary-pale);
        border-radius: 10px;
        font-size: 1rem;
        letter-spacing: .1em;
        line-height: 1.9;
        margin-bottom: 48px;
        padding: 32px 40px 44px
    }

    .article__body .present__title {
        color: var(--col_primary);
        font-size: 1.5rem;
        font-weight: 500;
        letter-spacing: .15em;
        line-height: 1.4;
        padding-bottom: 28px
    }

    .article__body .present__row {
        border-bottom: 1px solid var(--col_primary);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0 0 32px
    }

    .article__body .present__img {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin-right: 40px;
        width: 360px
    }

    .article__body .present__img .note {
        display: block;
        font-size: .75rem;
        line-height: 1.5;
        margin-top: 8px
    }

    .article__body .present__info em {
        display: block;
        font-weight: 500;
        padding: 0 0 .5em
    }

    .article__body .present__description {
        padding: 32px 0 0
    }

    .article__body .present__description a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 8px;
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .present__description a:hover {
        opacity: .7
    }

    .article__body .present__description em {
        font-weight: 700
    }

    .article__body .broadcast__title {
        font-size: 1.375rem;
        font-weight: 700;
        padding: 0 0 16px
    }

    .article__body .broadcast__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: 15px;
        margin-right: .5em;
        position: relative;
        vertical-align: 2px;
        width: 15px
    }

    .article__body .broadcast__description {
        font-size: 1rem;
        letter-spacing: .1em;
        line-height: 1.8
    }

    .article__body .broadcast__description a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 8px;
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .broadcast__description a:hover {
        opacity: .7
    }

    .article__body .circular-list-wrap {
        padding-bottom: 112px
    }

    .article__body .circular {
        background-color: #f4f4f4;
        border-radius: 10px;
        margin-bottom: 40px;
        margin-top: 112px
    }

    .article__body .circular--list {
        margin-bottom: 20px;
        margin-top: 20px
    }

    .article__body .circular__link {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 40px
    }

    .article__body .circular__link:after {
        -ms-flex-negative: 0;
        background: url(../images/common/icon_arrow_right.svg?vdf88be302a9925603bb6e1a34a2f6ec8) 50%/7px auto no-repeat;
        background-color: #323232;
        border-radius: 50%;
        content: "";
        flex-shrink: 0;
        height: 62px;
        margin-left: 40px;
        -webkit-transition: background-color .3s ease;
        transition: background-color .3s ease;
        width: 62px;
        will-change: background-color
    }

    .article__body .circular__link:hover:after {
        background-color: var(--col_primary)
    }

    .article__body .circular__img {
        -webkit-box-flex: 0;
        border-radius: 20px;
        -ms-flex: 0 0 252px;
        flex: 0 0 252px;
        margin-right: 40px;
        overflow: hidden;
        will-change: opacity
    }

    .article__body .circular__box {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
        flex: 1 1 100%
    }

    .article__body .circular__catch {
        color: var(--col_primary);
        font-size: 1.125rem;
        font-weight: 500;
        letter-spacing: .1em;
        padding: 0 0 16px
    }

    .article__body .circular__title {
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        display: -webkit-inline-box;
        font-size: 1.5rem;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.6;
        max-height: 76px;
        overflow: hidden
    }

    .article__body .purchase {
        margin-top: 32px
    }

    .article__body .purchase__title {
        font-size: 1.375rem!important;
        font-weight: 700
    }

    .article__body .purchase__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: 15px;
        margin-right: .5em;
        position: relative;
        vertical-align: 2px;
        width: 15px
    }

    .article__body .purchase__title+p {
        margin-top: 0!important
    }

    .article__back-btn {
        padding: 80px 0 0
    }

    .article__back-btn .back-btn:hover .arrow {
        background-color: var(--col_primary)
    }

    .article__bnr {
        --bnr_gap: 24px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -24px -56px 0;
        padding: 100px 0
    }

    .article__bnr .bnr__item {
        margin: 0 24px 56px 0
    }

    .article__bnr .bnr__item .bnr-blurb {
        color: var(--col_primary);
        font-size: 1rem;
        font-weight: 500;
        margin-bottom: 20px;
        position: relative;
        text-align: center;
        width: 100%
    }

    .article__bnr .bnr__item .bnr-blurb:after,.article__bnr .bnr__item .bnr-blurb:before {
        background-color: var(--col_primary);
        bottom: -10%;
        content: "";
        height: 110%;
        opacity: .5;
        position: absolute;
        width: 2px
    }

    .article__bnr .bnr__item .bnr-blurb:before {
        left: 28px;
        -webkit-transform: rotate(-30deg);
        transform: rotate(-30deg)
    }

    .article__bnr .bnr__item .bnr-blurb:after {
        right: 28px;
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg)
    }

    .article__bnr .bnr__item--lg {
        width: 100%
    }

    .article__bnr .bnr__item--sm {
        width: calc(50% - 24px)
    }

    .reports-modal {
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 100%;
        justify-content: center;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10000
    }

    .reports-modal__bg {
        background-color: rgba(0,0,0,.3);
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .reports-modal__window {
        background-color: #fff;
        height: auto;
        max-width: 900px;
        padding: 40px;
        position: relative;
        width: 100%
    }

    .reports-modal__window .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 6px
    }

    .reports-modal__window .note:after {
        clear: both;
        content: "";
        display: table
    }

    .reports-modal__window .note-asterisk {
        font-size: 1rem;
        line-height: 1.8
    }

    .reports-modal__window .note-inner p {
        line-height: 1.8;
        margin-top: 0
    }

    .reports-modal__window .note-fig {
        float: left;
        margin-right: 16px
    }

    .reports-modal__window .note-fig img {
        width: auto
    }

    .reports-modal__close {
        color: #fff;
        cursor: pointer;
        height: 32px;
        position: absolute;
        right: 0;
        top: -50px;
        width: 32px
    }

    .reports-modal__close:after,.reports-modal__close:before {
        background-color: currentColor;
        content: "";
        display: block;
        height: 2px;
        left: 50%;
        margin-left: -22px;
        margin-top: -1px;
        position: absolute;
        top: 50%;
        width: 44px
    }

    .reports-modal__close:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .reports-modal__close:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .announcement {
        margin: 90px 0 40px
    }

    .announcement__sub {
        color: #79a95d;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.6
    }

    .announcement .parent {
        margin-top: 8px
    }

    .announcement .grid__title {
        color: #79a95d;
        font-size: 22px;
        font-weight: 700
    }

    .parent {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .announcement .purchase__title {
        margin-bottom: 15px
    }

    .announcement_text {
        font-size: 17px;
        line-height: 1.7
    }

    .parent {
        -webkit-column-gap: 24px;
        -moz-column-gap: 24px;
        column-gap: 24px
    }

    .parent__left {
        min-width: 40%;
        position: relative
    }

    .parent__left .grid2 {
        display: none
    }

    .parent__left .grid3 {
        margin-top: .5em
    }

    .parent__left .grid3 .present__description {
        bottom: 4px;
        padding: 0;
        position: absolute
    }
}

@media (-ms-high-contrast:none) {
    .article__body .detail .faq {
        margin-top: 32px
    }

    .article__body .detail .faq__item+.faq__item {
        margin-top: 40px
    }

    .article__body .detail .faq__answer .icon,.article__body .detail .faq__question .icon {
        margin-right: 20px
    }

    .article__body .detail .faq__question {
        margin-bottom: 32px
    }

    .article__body .detail .faq__answer .answer .dialogue__row+.dialogue__row {
        margin-top: 12px
    }

    .article__body .detail .faq__answer .answer .dialogue__row dt {
        margin-right: 12px
    }

    .article__body .detail .faq {
        display: block;
        margin-top: calc(var(--vw)*2.28571)
    }

    .article__body .detail .faq__item {
        display: block;
        width: 100%
    }

    .article__body .detail .faq__item+.faq__item {
        margin-top: calc(var(--vw)*2.85714)
    }

    .article__body .detail .faq__answer,.article__body .detail .faq__question {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%
    }

    .article__body .detail .faq__answer .icon,.article__body .detail .faq__question .icon {
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: center;
        margin-right: calc(var(--vw)*1.42857)
    }

    .article__body .detail .faq__question {
        margin-bottom: calc(var(--vw)*2.28571)
    }

    .article__body .detail .faq__answer {
        width: 100%
    }

    .article__body .detail .faq__answer .answer {
        display: block;
        width: 100%
    }

    .article__body .detail .faq__answer .answer .dialogue {
        display: block
    }

    .article__body .detail .faq__answer .answer .dialogue__row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .article__body .detail .faq__answer .answer .dialogue__row+.dialogue__row {
        margin-top: calc(var(--vw)*.85714)
    }

    .article__body .detail .faq__answer .answer .dialogue__row dt {
        margin-right: calc(var(--vw)*.85714);
        min-width: 0
    }

    .article__body .detail .faq__answer .answer .dialogue__row dd {
        min-width: 0
    }
}

@media (min-width: 768px) and (max-width:1399px) {
    :root {
        --font_serif:"Noto Serif JP",serif;
        --col_primary: #6da24e;
        --col_primary-pale: rgba(109,162,78,.1);
        --base_line-height: 2.25
    }

    .page-report .serif {
        font-family: var(--font_serif)
    }

    .report__tag {
        border: calc(var(--vw)*.14286) solid #38a459;
        border-radius: calc(var(--vw)*7.14286);
        color: #38a459;
        display: inline-block;
        font-size: calc(var(--vw)*1);
        font-weight: 700;
        letter-spacing: .15em;
        padding: calc(var(--vw)*.28571) calc(var(--vw)*1.42857) calc(var(--vw)*.42857)
    }

    .report__tag .icon {
        bottom: calc(var(--vw)*-.14286);
        font-size: calc(var(--vw)*1);
        font-weight: 400;
        left: calc(var(--vw)*-.42857);
        position: relative
    }

    .article {
        height: auto;
        width: 100%
    }

    .article__intro {
        border-bottom: 1px solid #ccc;
        padding: calc(var(--vw)*1.14286) 0 calc(var(--vw)*2.28571)
    }

    .article__intro-title {
        -webkit-box-align: end;
        -ms-flex-align: end;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        align-items: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: flex-start;
        padding: 0 0 calc(var(--vw)*1.42857)
    }

    .article__intro-title .title-img {
        height: auto;
        width: calc(var(--vw)*28.35714)
    }

    .article__intro-title .vol {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1.71429);
        letter-spacing: .1em;
        line-height: 1;
        margin-left: calc(var(--vw)*2.28571)
    }

    .article__intro-title .vol em {
        font-size: calc(var(--vw)*2.78571)
    }

    .article__intro-text {
        font-size: calc(var(--vw)*1.14286);
        font-weight: 500
    }

    .article__head {
        padding: calc(var(--vw)*2.85714) 0 calc(var(--vw)*3.42857)
    }

    .article__head-above {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0 0 calc(var(--vw)*1.71429)
    }

    .article__head-above .date {
        color: #888;
        font-family: Chillax,sans-serif;
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .05em;
        margin-left: calc(var(--vw)*1.42857)
    }

    .article__title {
        font-size: calc(var(--vw)*2.42857);
        letter-spacing: .1em;
        line-height: 1.4
    }

    .article__body .video-wrap {
        border-radius: calc(var(--vw)*.71429);
        height: auto;
        margin-top: calc(var(--vw)*2.85714);
        overflow: hidden;
        padding-top: 56.25%;
        position: relative;
        width: 100%;
        will-change: opacity
    }

    .article__body .video-wrap iframe {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .article__body .profile {
        background-color: var(--col_primary-pale);
        border-radius: calc(var(--vw)*.71429);
        margin-top: calc(var(--vw)*5.71429);
        padding: calc(var(--vw)*2.28571) calc(var(--vw)*2.85714)
    }

    .article__body .profile__title {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1.71429);
        font-weight: 500;
        letter-spacing: .15em;
        padding: 0 0 calc(var(--vw)*2.28571)
    }

    .article__body .profile__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: calc(var(--vw)*2.85714)
    }

    .article__body .profile__item+.profile__item {
        margin-top: calc(var(--vw)*2.14286)
    }

    .article__body .profile__avatar {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(var(--vw)*10.28571);
        flex: 0 0 calc(var(--vw)*10.28571)
    }

    .article__body .profile__description {
        padding: calc(var(--vw)*.85714) 0 0
    }

    .article__body .profile__name {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1);
        font-weight: 500;
        padding: 0 0 calc(var(--vw)*1.14286)
    }

    .article__body .profile__name em {
        font-size: calc(var(--vw)*1.42857);
        letter-spacing: .1em;
        margin: 0 calc(var(--vw)*.42857) 0 0
    }

    .article__body .profile__detail {
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .1em;
        line-height: 1.9
    }

    .article__body .detail {
        padding: 0 0 calc(var(--vw)*8)
    }

    .article__body .detail:has(+.circular-list-wrap) {
        padding-bottom: 0
    }

    .article__body .detail>:first-child {
        margin-top: 0!important
    }

    .article__body .detail h2 {
        color: var(--col_primary);
        font-size: calc(var(--vw)*2.14286);
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.4;
        margin-bottom: calc(var(--vw)*2.28571);
        margin-top: calc(var(--vw)*5.14286)
    }

    .article__body .detail hr {
        border: 0;
        border-top: 1px solid #ddd;
        height: 0;
        margin: calc(var(--vw)*2.28571) 0;
        padding: 0
    }

    .article__body .detail a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: calc(var(--vw)*.57143);
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .detail a:hover {
        opacity: .7
    }

    .article__body .detail p {
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .1em;
        line-height: var(--base_line-height);
        margin-top: calc(var(--vw)*2.28571)
    }

    .article__body .detail p.mt-0 {
        margin-top: 0
    }

    .article__body .detail p.text-right {
        text-align: right
    }

    .article__body .detail p.text-center {
        text-align: center
    }

    .article__body .detail ul {
        display: -ms-grid;
        display: grid;
        gap: .5em
    }

    .article__body .detail ul>li {
        font-size: calc(var(--vw)*1.14286);
        line-height: var(--base_line-height);
        padding: 0 0 0 1.5em;
        position: relative
    }

    .article__body .detail ul>li:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        height: calc(var(--vw)*.28571);
        left: .6em;
        position: absolute;
        top: calc(var(--base_line-height)*1em/2 - 1px);
        width: calc(var(--vw)*.28571)
    }

    .article__body .detail ul.mg {
        margin: 1.5em 0
    }

    .article__body .detail ul.mg-b {
        margin: 0 0 1.5em
    }

    .article__body .detail ul+p {
        margin-top: 0
    }

    .article__body .detail .img-center {
        margin-top: calc(var(--vw)*2.28571)
    }

    .article__body .detail .img-center img {
        display: block;
        margin: auto;
        max-width: 100%;
        width: auto
    }

    .article__body .detail .img-center img+img {
        margin-top: calc(var(--vw)*.57143)
    }

    .article__body .detail .img-center figcaption {
        font-size: calc(var(--vw)*1);
        line-height: 1.4;
        margin-top: calc(var(--vw)*.85714)
    }

    .article__body .detail .img-center figcaption a {
        line-height: 1.6;
        text-underline-offset: calc(var(--vw)*.14286)
    }

    .article__body .detail .img-center figcaption:first-child {
        margin-bottom: calc(var(--vw)*.57143);
        margin-top: 0
    }

    .article__body .detail .img-center figcaption.right {
        text-align: right
    }

    .article__body .detail .img-center.full-width img {
        width: 100%
    }

    .article__body .detail .img-center.with-caption {
        margin: calc(var(--vw)*2.28571) auto 0;
        max-width: 100%;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .article__body .detail .img-center.vertical {
        margin: calc(var(--vw)*2.28571) auto 0;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .article__body .detail .img-center.vertical img {
        max-height: calc(var(--vw)*57.14286)
    }

    .article__body .detail .img-center.mg-0 {
        margin-top: 0
    }

    .article__body .detail .bg-box {
        background-color: var(--col_primary-pale);
        border-radius: calc(var(--vw)*.71429);
        margin-top: calc(var(--vw)*2.28571);
        padding: calc(var(--vw)*2.28571) calc(var(--vw)*2.85714)
    }

    .article__body .detail .bg-box>:first-child {
        margin-top: 0
    }

    .article__body .detail .faq {
        display: -ms-grid;
        display: grid;
        gap: calc(var(--vw)*3.42857);
        margin-top: calc(var(--vw)*2.28571)
    }

    .article__body .detail .faq__item {
        display: -ms-grid;
        display: grid
    }

    .article__body .detail .faq__answer,.article__body .detail .faq__question {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: calc(var(--vw)*1.42857)
    }

    .article__body .detail .faq__answer .icon,.article__body .detail .faq__question .icon {
        -ms-flex-negative: 0;
        border-radius: 50%;
        display: -ms-grid;
        display: grid;
        flex-shrink: 0;
        font-family: var(--font_serif);
        font-size: calc(var(--vw)*1.28571);
        height: calc(var(--vw)*4.28571);
        place-items: center;
        width: calc(var(--vw)*4.28571)
    }

    .article__body .detail .faq__question {
        font-size: calc(var(--vw)*1.57143);
        font-weight: 500;
        letter-spacing: .1em;
        line-height: 1.6;
        margin-bottom: calc(var(--vw)*2.28571)
    }

    .article__body .detail .faq__question .icon {
        background-color: var(--col_primary);
        color: #fff
    }

    .article__body .detail .faq__question .question {
        display: -ms-grid;
        display: grid;
        min-height: calc(var(--vw)*4.28571);
        place-items: center
    }

    .article__body .detail .faq__answer .icon {
        background-color: var(--col_primary-pale);
        color: var(--col_primary)
    }

    .article__body .detail .faq__answer .answer {
        display: -ms-grid;
        display: grid;
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .1em;
        line-height: 1.9;
        min-height: calc(var(--vw)*4.28571);
        place-items: center
    }

    .article__body .detail .dialogue {
        -ms-grid-columns: auto calc(var(--vw)*.57143) 1fr;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -ms-grid;
        display: grid;
        font-size: calc(var(--vw)*1.14286);
        gap: calc(var(--vw)*.57143);
        grid-template-columns: auto 1fr;
        letter-spacing: .1em;
        min-height: calc(var(--vw)*4.28571)
    }

    .article__body .detail .dialogue:not(:first-child) {
        margin-top: 2em
    }

    .article__body .detail .dialogue:has(p) {
        line-height: var(--base_line-height)
    }

    .article__body .detail .dialogue__row {
        -ms-grid-column-span: 2;
        -ms-grid-columns: subgrid;
        --person-color: currentColor;
        display: -ms-grid;
        display: grid;
        gap: calc(var(--vw)*.85714) calc(var(--vw)*1.14286);
        grid-column: span 2;
        grid-template-columns: subgrid;
        width: 100%
    }

    .article__body .detail .dialogue__row dt {
        -ms-flex-negative: 0;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        color: var(--person-color);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-shrink: 0;
        font-weight: 700;
        height: 100%;
        justify-content: flex-start;
        text-align: left
    }

    .article__body .detail .dialogue__row dd p:first-child {
        margin-top: 0
    }

    .article__body .detail .dialogue__row.--pink {
        --person-color: #eb7875
    }

    .article__body .detail .dialogue__row.--blue {
        --person-color: #5db4cc
    }

    .article__body .detail .note-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(var(--vw)*1.14286);
        margin-top: 2em
    }

    .article__body .detail .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: calc(var(--vw)*.42857)
    }

    .article__body .detail .note:after {
        clear: both;
        content: "";
        display: table
    }

    .article__body .detail .note-asterisk {
        font-size: calc(var(--vw)*1.14286);
        line-height: 1.8
    }

    .article__body .detail .note-inner p {
        line-height: 1.8;
        margin-top: 0
    }

    .article__body .detail .note-fig {
        float: left;
        margin-right: calc(var(--vw)*1.14286)
    }

    .article__body .detail .note-fig img {
        width: auto
    }

    .article__body .detail blockquote {
        font-size: calc(var(--vw)*1.14286);
        font-style: italic;
        font-weight: 700;
        line-height: var(--base_line-height);
        margin-top: 1em
    }

    .article__body .present {
        background-color: var(--col_primary-pale);
        border-radius: calc(var(--vw)*.71429);
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .1em;
        line-height: 1.9;
        margin-bottom: calc(var(--vw)*3.42857);
        padding: calc(var(--vw)*2.28571) calc(var(--vw)*2.85714) calc(var(--vw)*3.14286)
    }

    .article__body .present__title {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1.71429);
        font-weight: 500;
        letter-spacing: .15em;
        line-height: 1.4;
        padding-bottom: calc(var(--vw)*2)
    }

    .article__body .present__row {
        border-bottom: 1px solid var(--col_primary);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0 0 calc(var(--vw)*2.28571)
    }

    .article__body .present__img {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin-right: calc(var(--vw)*2.85714);
        width: calc(var(--vw)*25.71429)
    }

    .article__body .present__img .note {
        display: block;
        font-size: calc(var(--vw)*.85714);
        line-height: 1.5;
        margin-top: calc(var(--vw)*.57143)
    }

    .article__body .present__info em {
        display: block;
        font-weight: 500;
        padding: 0 0 .5em
    }

    .article__body .present__description {
        padding: calc(var(--vw)*2.28571) 0 0
    }

    .article__body .present__description a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: calc(var(--vw)*.57143);
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .present__description a:hover {
        opacity: .7
    }

    .article__body .present__description em {
        font-weight: 700
    }

    .article__body .broadcast__title {
        font-size: calc(var(--vw)*1.57143);
        font-weight: 700;
        padding: 0 0 calc(var(--vw)*1.14286)
    }

    .article__body .broadcast__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: calc(var(--vw)*1.07143);
        margin-right: .5em;
        position: relative;
        vertical-align: calc(var(--vw)*.14286);
        width: calc(var(--vw)*1.07143)
    }

    .article__body .broadcast__description {
        font-size: calc(var(--vw)*1.14286);
        letter-spacing: .1em;
        line-height: 1.8
    }

    .article__body .broadcast__description a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: calc(var(--vw)*.57143);
        -webkit-transition: opacity .2s;
        transition: opacity .2s;
        will-change: opacity
    }

    .article__body .broadcast__description a:hover {
        opacity: .7
    }

    .article__body .circular-list-wrap {
        padding-bottom: calc(var(--vw)*8)
    }

    .article__body .circular {
        background-color: #f4f4f4;
        border-radius: calc(var(--vw)*.71429);
        margin-bottom: calc(var(--vw)*2.85714);
        margin-top: calc(var(--vw)*8)
    }

    .article__body .circular--list {
        margin-bottom: calc(var(--vw)*1.42857);
        margin-top: calc(var(--vw)*1.42857)
    }

    .article__body .circular__link {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: calc(var(--vw)*2.85714)
    }

    .article__body .circular__link:after {
        -ms-flex-negative: 0;
        background: url(../images/common/icon_arrow_right.svg?vdf88be302a9925603bb6e1a34a2f6ec8) 50%/calc(var(--vw)*.5) auto no-repeat;
        background-color: #323232;
        border-radius: 50%;
        content: "";
        flex-shrink: 0;
        height: calc(var(--vw)*4.42857);
        margin-left: calc(var(--vw)*2.85714);
        -webkit-transition: background-color .3s ease;
        transition: background-color .3s ease;
        width: calc(var(--vw)*4.42857);
        will-change: background-color
    }

    .article__body .circular__link:hover:after {
        background-color: var(--col_primary)
    }

    .article__body .circular__img {
        -webkit-box-flex: 0;
        border-radius: calc(var(--vw)*1.42857);
        -ms-flex: 0 0 calc(var(--vw)*18);
        flex: 0 0 calc(var(--vw)*18);
        margin-right: calc(var(--vw)*2.85714);
        overflow: hidden;
        will-change: opacity
    }

    .article__body .circular__box {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
        flex: 1 1 100%
    }

    .article__body .circular__catch {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1.28571);
        font-weight: 500;
        letter-spacing: .1em;
        padding: 0 0 calc(var(--vw)*1.14286)
    }

    .article__body .circular__title {
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        display: -webkit-inline-box;
        font-size: calc(var(--vw)*1.71429);
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.6;
        max-height: calc(var(--vw)*5.42857);
        overflow: hidden
    }

    .article__body .purchase {
        margin-top: calc(var(--vw)*2.28571)
    }

    .article__body .purchase__title {
        font-size: calc(var(--vw)*1.57143)!important;
        font-weight: 700
    }

    .article__body .purchase__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: calc(var(--vw)*1.07143);
        margin-right: .5em;
        position: relative;
        vertical-align: calc(var(--vw)*.14286);
        width: calc(var(--vw)*1.07143)
    }

    .article__body .purchase__title+p {
        margin-top: 0!important
    }

    .article__back-btn {
        padding: calc(var(--vw)*5.71429) 0 0
    }

    .article__back-btn .back-btn:hover .arrow {
        background-color: var(--col_primary)
    }

    .article__bnr {
        --bnr_gap: calc(var(--vw)*1.71429);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 calc(var(--vw)*-1.71429) calc(var(--vw)*-4) 0;
        padding: calc(var(--vw)*7.14286) 0 calc(var(--vw)*7.14286)
    }

    .article__bnr .bnr__item {
        margin: 0 calc(var(--vw)*1.71429) calc(var(--vw)*4) 0
    }

    .article__bnr .bnr__item .bnr-blurb {
        color: var(--col_primary);
        font-size: calc(var(--vw)*1.14286);
        font-weight: 500;
        margin-bottom: calc(var(--vw)*1.42857);
        position: relative;
        text-align: center;
        width: 100%
    }

    .article__bnr .bnr__item .bnr-blurb:after,.article__bnr .bnr__item .bnr-blurb:before {
        background-color: var(--col_primary);
        bottom: -10%;
        content: "";
        height: 110%;
        opacity: .5;
        position: absolute;
        width: calc(var(--vw)*.14286)
    }

    .article__bnr .bnr__item .bnr-blurb:before {
        left: calc(var(--vw)*2);
        -webkit-transform: rotate(-30deg);
        transform: rotate(-30deg)
    }

    .article__bnr .bnr__item .bnr-blurb:after {
        right: calc(var(--vw)*2);
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg)
    }

    .article__bnr .bnr__item--lg {
        width: 100%
    }

    .article__bnr .bnr__item--sm {
        width: calc(50% - var(--vw)*1.71429)
    }

    .reports-modal {
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 100%;
        justify-content: center;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10000
    }

    .reports-modal__bg {
        background-color: rgba(0,0,0,.3);
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .reports-modal__window {
        background-color: #fff;
        height: auto;
        max-width: calc(var(--vw)*64.28571);
        padding: calc(var(--vw)*2.85714);
        position: relative;
        width: 100%
    }

    .reports-modal__window .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: calc(var(--vw)*.42857)
    }

    .reports-modal__window .note:after {
        clear: both;
        content: "";
        display: table
    }

    .reports-modal__window .note-asterisk {
        font-size: calc(var(--vw)*1.14286);
        line-height: 1.8
    }

    .reports-modal__window .note-inner p {
        line-height: 1.8;
        margin-top: 0
    }

    .reports-modal__window .note-fig {
        float: left;
        margin-right: calc(var(--vw)*1.14286)
    }

    .reports-modal__window .note-fig img {
        width: auto
    }

    .reports-modal__close {
        color: #fff;
        cursor: pointer;
        height: calc(var(--vw)*2.28571);
        position: absolute;
        right: 0;
        top: calc(var(--vw)*-3.57143);
        width: calc(var(--vw)*2.28571)
    }

    .reports-modal__close:after,.reports-modal__close:before {
        background-color: currentColor;
        content: "";
        display: block;
        height: calc(var(--vw)*.14286);
        left: 50%;
        margin-left: calc(var(--vw)*-1.57143);
        margin-top: calc(var(--vw)*-.07143);
        position: absolute;
        top: 50%;
        width: calc(var(--vw)*3.14286)
    }

    .reports-modal__close:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .reports-modal__close:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .announcement {
        margin: calc(var(--vw)*6.42857) 0 calc(var(--vw)*2.85714)
    }

    .announcement__sub {
        color: #79a95d;
        font-size: calc(var(--vw)*1.28571);
        font-weight: 700;
        line-height: 1.6
    }

    .announcement .parent {
        margin-top: calc(var(--vw)*.57143)
    }

    .announcement .grid__title {
        color: #79a95d;
        font-size: calc(var(--vw)*1.57143);
        font-weight: 700
    }

    .parent {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .announcement .purchase__title {
        margin-bottom: calc(var(--vw)*1.07143)
    }

    .announcement_text {
        font-size: calc(var(--vw)*1.21429);
        line-height: 1.7
    }

    .parent {
        -webkit-column-gap: calc(var(--vw)*1.71429);
        -moz-column-gap: calc(var(--vw)*1.71429);
        column-gap: calc(var(--vw)*1.71429)
    }

    .parent__left {
        min-width: 40%;
        position: relative
    }

    .parent__left .grid2 {
        display: none
    }

    .parent__left .grid3 {
        margin-top: .5em
    }

    .parent__left .grid3 .present__description {
        bottom: calc(var(--vw)*.28571);
        padding: 0;
        position: absolute
    }
}

@media only screen and (max-width: 767px) {
    :root {
        --font_serif:"Noto Serif JP",serif;
        --col_primary: #6da24e;
        --col_primary-pale: rgba(109,162,78,.1);
        --base_line-height: 2.0
    }

    .page-report .serif {
        font-family: var(--font_serif)
    }

    .report__tag {
        border: .26041666666666663vw solid #38a459;
        border-radius: 13.020833333333334vw;
        color: #38a459;
        display: inline-block;
        font-size: 2.864583333333333vw;
        font-weight: 700;
        letter-spacing: .15em;
        padding: 1.0416666666666665vw 3.6458333333333335vw 1.5625vw
    }

    .report__tag .icon {
        bottom: -.5208333333333333vw;
        font-size: 3.125vw;
        font-weight: 400;
        left: -1.0416666666666665vw;
        position: relative
    }

    .article {
        height: auto;
        width: 100%
    }

    .article__intro {
        border-bottom: 1px solid #ccc;
        padding: 2.083333333333333vw 0 5.46875vw
    }

    .article__intro-title {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 3.125vw;
        padding: 0 0 4.166666666666666vw
    }

    .article__intro-title .title-img {
        height: auto;
        width: 68.09895833333334vw
    }

    .article__intro-title .vol {
        color: var(--col_primary);
        font-size: 3.90625vw;
        letter-spacing: .1em;
        line-height: 1
    }

    .article__intro-title .vol em {
        font-size: 6.510416666666667vw
    }

    .article__intro-text {
        font-size: 3.6458333333333335vw;
        font-weight: 500;
        line-height: 1.7;
        text-align: center
    }

    .article__head {
        padding: 8.072916666666668vw 0 6.770833333333333vw
    }

    .article__head-above {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 2.604166666666667vw;
        justify-content: space-between;
        padding: 0 0 4.166666666666666vw
    }

    .article__head-above .date {
        color: #888;
        font-family: Chillax,sans-serif;
        font-size: 3.6458333333333335vw;
        letter-spacing: .05em
    }

    .article__title {
        font-size: 5.729166666666666vw;
        letter-spacing: .1em;
        line-height: 1.6
    }

    .article__body .video-wrap {
        aspect-ratio: 16/9;
        border-radius: 1.3020833333333335vw;
        height: auto;
        margin-top: 7.291666666666667vw;
        overflow: hidden;
        width: 100%;
        will-change: opacity
    }

    .article__body .video-wrap iframe {
        height: 100%;
        width: 100%
    }

    .article__body .profile {
        background-color: var(--col_primary-pale);
        border-radius: 1.3020833333333335vw;
        margin-top: 9.375vw;
        padding: 7.291666666666667vw 5.208333333333334vw 9.375vw
    }

    .article__body .profile__title {
        color: var(--col_primary);
        font-size: 5.729166666666666vw;
        font-weight: 500;
        letter-spacing: .15em;
        padding: 0 0 8.333333333333332vw
    }

    .article__body .profile__item {
        -ms-grid-rows: auto 5.208333333333334vw auto;
        -ms-grid-columns: 28.125vw 3.90625vw 1fr;
        display: -ms-grid;
        display: grid;
        gap: 5.208333333333334vw 3.90625vw;
        grid-template-areas: "avatar name" "detail detail";
        grid-template-columns: 28.125vw 1fr
    }

    .article__body .profile__item+.profile__item {
        margin-top: 7.291666666666667vw
    }

    .article__body .profile__avatar {
        grid-area: avatar
    }

    .article__body .profile__description {
        display: contents
    }

    .article__body .profile__name {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        color: var(--col_primary);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        font-size: 3.125vw;
        font-weight: 500;
        grid-area: name;
        padding: 0 0 2.083333333333333vw
    }

    .article__body .profile__name .name {
        vertical-align: bottom
    }

    .article__body .profile__name em {
        font-size: 4.427083333333334vw;
        letter-spacing: .1em;
        margin: 0 1.5625vw 0 0
    }

    .article__body .profile__detail {
        font-size: 3.3854166666666665vw;
        grid-area: detail;
        letter-spacing: .1em;
        line-height: 1.7
    }

    .article__body .detail {
        padding: 0 0 14.583333333333334vw;
        word-break: break-all
    }

    .article__body .detail:has(+.circular-list-wrap) {
        padding-bottom: 0
    }

    .article__body .detail>:first-child {
        margin-top: 0!important
    }

    .article__body .detail h2 {
        color: var(--col_primary);
        font-size: 5.208333333333334vw;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.5;
        margin-bottom: 6.25vw;
        margin-top: 14.583333333333334vw
    }

    .article__body .detail hr {
        border: 0;
        border-top: 1px solid #ddd;
        height: 0;
        margin: 8.333333333333332vw 0 7.291666666666667vw;
        padding: 0
    }

    .article__body .detail a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 1.5625vw
    }

    .article__body .detail p {
        font-size: 3.6458333333333335vw;
        letter-spacing: .1em;
        line-height: var(--base_line-height);
        margin-top: 4.166666666666666vw
    }

    .article__body .detail p.mt-0 {
        margin-top: 0
    }

    .article__body .detail p.text-right {
        text-align: right
    }

    .article__body .detail p.text-center {
        text-align: center
    }

    .article__body .detail ul {
        display: -ms-grid;
        display: grid;
        gap: 1em
    }

    .article__body .detail ul>li {
        font-size: 3.6458333333333335vw;
        line-height: var(--base_line-height);
        padding: 0 0 0 1em;
        position: relative
    }

    .article__body .detail ul>li:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        height: .6510416666666667vw;
        left: .2em;
        position: absolute;
        top: calc(var(--base_line-height)*1em/2 - .26042vw);
        width: .6510416666666667vw
    }

    .article__body .detail ul.mg {
        margin: 1.5em 0
    }

    .article__body .detail ul.mg-b {
        margin: 0 0 1.5em
    }

    .article__body .detail ul+p {
        margin-top: 0
    }

    .article__body .detail .img-center {
        margin-top: 8.333333333333332vw
    }

    .article__body .detail .img-center img {
        margin: auto;
        max-width: 100%;
        width: auto
    }

    .article__body .detail .img-center img+img {
        margin-top: 1.0416666666666665vw
    }

    .article__body .detail .img-center figcaption {
        font-size: 2.864583333333333vw;
        line-height: 1.4;
        margin-top: 2.083333333333333vw
    }

    .article__body .detail .img-center figcaption a {
        line-height: 1.6;
        text-underline-offset: .5208333333333333vw
    }

    .article__body .detail .img-center figcaption:first-child {
        margin-bottom: 1.5625vw;
        margin-top: 0
    }

    .article__body .detail .img-center.full-width img {
        width: 100%
    }

    .article__body .detail .img-center.mg-0 {
        margin-top: 0
    }

    .article__body .detail .img-center.with-caption {
        margin: 32px auto 0;
        max-width: 100%;
        text-align: center;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content
    }

    .article__body .detail .img-center.with-caption figcaption {
        text-align: left
    }

    .article__body .detail .bg-box {
        background-color: var(--col_primary-pale);
        border-radius: 1.3020833333333335vw;
        margin-top: 8.333333333333332vw;
        padding: 8.333333333333332vw 5.208333333333334vw
    }

    .article__body .detail .bg-box>:first-child {
        margin-top: 0
    }

    .article__body .detail .faq {
        display: -ms-grid;
        display: grid;
        gap: 10.416666666666668vw;
        margin-top: 5.208333333333334vw
    }

    .article__body .detail .faq__item {
        display: -ms-grid;
        display: grid
    }

    .article__body .detail .faq__answer,.article__body .detail .faq__question {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 5.208333333333334vw
    }

    .article__body .detail .faq__answer .icon,.article__body .detail .faq__question .icon {
        -ms-flex-negative: 0;
        border-radius: 50%;
        display: -ms-grid;
        display: grid;
        flex-shrink: 0;
        font-family: var(--font_serif);
        font-size: 3.6458333333333335vw;
        height: 10.15625vw;
        padding-bottom: .78125vw;
        place-items: center;
        width: 10.15625vw
    }

    .article__body .detail .faq__question {
        font-size: 3.6458333333333335vw;
        font-weight: 500;
        letter-spacing: .1em;
        line-height: 1.8;
        margin-bottom: 4.166666666666666vw
    }

    .article__body .detail .faq__question .icon {
        background-color: var(--col_primary);
        color: #fff
    }

    .article__body .detail .faq__question .question {
        display: -ms-grid;
        display: grid;
        min-height: 10.15625vw;
        place-items: center
    }

    .article__body .detail .faq__answer .icon {
        background-color: var(--col_primary-pale);
        color: var(--col_primary)
    }

    .article__body .detail .faq__answer .answer {
        font-size: 3.6458333333333335vw;
        letter-spacing: .1em;
        line-height: 1.8;
        padding-top: 1.0416666666666665vw
    }

    .article__body .detail .dialogue {
        display: -ms-grid;
        display: grid;
        font-size: 3.6458333333333335vw;
        letter-spacing: .1em;
        line-height: 1.8
    }

    .article__body .detail .dialogue:not(:first-child) {
        margin-top: 1.5em
    }

    .article__body .detail .dialogue:has(p) {
        line-height: var(--base_line-height)
    }

    .article__body .detail .dialogue__row:not(:first-child) {
        margin-top: 1em
    }

    .article__body .detail .dialogue__row>dt {
        -ms-flex-negative: 0;
        color: var(--person-color);
        flex-shrink: 0;
        font-weight: 700;
        padding-bottom: 1.0416666666666665vw
    }

    .article__body .detail .dialogue__row>dt:not(:first-child) {
        margin-top: 1em
    }

    .article__body .detail .dialogue__row dd p:first-child {
        margin-top: 0
    }

    .article__body .detail .dialogue__row.--pink {
        --person-color: #eb7875
    }

    .article__body .detail .dialogue__row.--blue {
        --person-color: #5db4cc
    }

    .article__body .detail .dialogue:has(+p) {
        border-bottom: 1px solid #ccc;
        padding-bottom: 1.2em
    }

    .article__body .detail .dialogue>dt {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        font-weight: 700;
        padding-bottom: 1.0416666666666665vw
    }

    .article__body .detail .dialogue>dt:not(:first-child) {
        margin-top: 1em
    }

    .article__body .detail .note-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 4.166666666666666vw;
        margin-top: 2em
    }

    .article__body .detail .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5625vw
    }

    .article__body .detail .note:after {
        clear: both;
        content: "";
        display: table
    }

    .article__body .detail .note-asterisk {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        font-size: 3.125vw;
        line-height: 1.8
    }

    .article__body .detail .note-inner p {
        font-size: 3.125vw;
        line-height: 1.8;
        margin-top: 0
    }

    .article__body .detail .note-fig {
        float: left;
        margin-right: 2.604166666666667vw
    }

    .article__body .detail blockquote {
        font-size: 3.3854166666666665vw;
        font-style: italic;
        font-weight: 700;
        line-height: var(--base_line-height);
        margin-top: 1em
    }

    .article__body .present {
        background-color: var(--col_primary-pale);
        border-radius: 1.3020833333333335vw;
        font-size: 3.6458333333333335vw;
        letter-spacing: .1em;
        line-height: 2;
        margin-bottom: 6.25vw;
        padding: 7.291666666666667vw 5.208333333333334vw
    }

    .article__body .present__title {
        color: var(--col_primary);
        font-size: 5.729166666666666vw;
        font-weight: 500;
        letter-spacing: .15em;
        line-height: 1.4;
        padding-bottom: 7.291666666666667vw
    }

    .article__body .present__row {
        border-bottom: 1px solid var(--col_primary);
        padding: 0 0 6.25vw
    }

    .article__body .present__img {
        margin-bottom: 4.166666666666666vw;
        width: 100%
    }

    .article__body .present__img .note {
        display: block;
        font-size: 2.734375vw;
        line-height: 1.5;
        margin-top: 1.5625vw
    }

    .article__body .present__info em {
        display: block;
        font-weight: 500;
        padding: 0 0 1em
    }

    .article__body .present__description {
        padding: 6.25vw 0 0
    }

    .article__body .present__description a {
        color: var(--col_primary);
        font-size: 4.166666666666666vw;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 2.083333333333333vw
    }

    .article__body .present__description em {
        font-weight: 700
    }

    .article__body .broadcast__title {
        font-size: 4.6875vw;
        font-weight: 700;
        padding: 0 0 3.125vw
    }

    .article__body .broadcast__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: 2.864583333333333vw;
        margin-right: .5em;
        position: relative;
        vertical-align: .5208333333333333vw;
        width: 2.864583333333333vw
    }

    .article__body .broadcast__description {
        font-size: 3.6458333333333335vw;
        letter-spacing: .1em;
        line-height: 2
    }

    .article__body .broadcast__description a {
        color: var(--col_primary);
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 2.083333333333333vw
    }

    .article__body .circular-list-wrap {
        padding-bottom: 14.583333333333334vw
    }

    .article__body .circular {
        background-color: #f4f4f4;
        border-radius: 1.3020833333333335vw;
        margin-bottom: 3.125vw;
        margin-top: 15.625vw
    }

    .article__body .circular--list {
        margin-bottom: 5.208333333333334vw;
        margin-top: 5.208333333333334vw
    }

    .article__body .circular__link {
        display: block;
        padding: 5.208333333333334vw 4.947916666666666vw
    }

    .article__body .circular__img {
        border-radius: 2.604166666666667vw;
        overflow: hidden;
        width: 100%;
        will-change: opacity
    }

    .article__body .circular__box {
        padding: 4.166666666666666vw 0 0
    }

    .article__body .circular__catch {
        color: var(--col_primary);
        font-size: 3.6458333333333335vw;
        font-weight: 500;
        letter-spacing: .1em;
        padding: 0 0 2.083333333333333vw
    }

    .article__body .circular__title {
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        display: -webkit-inline-box;
        font-size: 3.90625vw;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.6;
        max-height: 18.229166666666664vw;
        overflow: hidden;
        padding-right: 14.583333333333334vw;
        position: relative
    }

    .article__body .circular__title:after {
        -ms-flex-negative: 0;
        background: url(../images/common/icon_arrow_right.svg?vdf88be302a9925603bb6e1a34a2f6ec8) 50%/1.0416666666666665vw auto no-repeat;
        background-color: #323232;
        border-radius: 50%;
        bottom: 0;
        content: "";
        flex-shrink: 0;
        height: 10.026041666666668vw;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 10.026041666666668vw
    }

    .article__body .purchase {
        margin-top: 32px
    }

    .article__body .purchase__title {
        font-size: 4.6875vw!important;
        font-weight: 700;
        padding: 0 0 3.125vw
    }

    .article__body .purchase__title:before {
        background-color: var(--col_primary);
        border-radius: 50%;
        content: "";
        display: inline-block;
        height: 2.864583333333333vw;
        margin-right: .5em;
        position: relative;
        vertical-align: .5208333333333333vw;
        width: 2.864583333333333vw
    }

    .article__body .purchase__title+p {
        margin-top: 0!important
    }

    .article__back-btn {
        padding: 10.416666666666668vw 0 0
    }

    .article__bnr {
        --bnr_gap: 3.125vw;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 7.291666666666667vw 3.125vw;
        padding: 13.020833333333334vw 0
    }

    .article__bnr .bnr__item {
        display: -ms-grid;
        display: grid;
        gap: 2.604166666666667vw
    }

    .article__bnr .bnr__item .bnr-blurb {
        color: var(--col_primary);
        display: -ms-grid;
        display: grid;
        font-size: 2.604166666666667vw;
        font-weight: 500;
        line-height: 1.2;
        min-height: 12.239583333333332vw;
        place-items: center;
        position: relative;
        text-align: center;
        width: 100%
    }

    .article__bnr .bnr__item .bnr-blurb:after,.article__bnr .bnr__item .bnr-blurb:before {
        background-color: var(--col_primary);
        bottom: 0;
        content: "";
        height: 100%;
        opacity: .5;
        position: absolute;
        width: .26041666666666663vw
    }

    .article__bnr .bnr__item .bnr-blurb:before {
        left: 2.083333333333333vw;
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg)
    }

    .article__bnr .bnr__item .bnr-blurb:after {
        right: 2.083333333333333vw;
        -webkit-transform: rotate(18deg);
        transform: rotate(18deg)
    }

    .article__bnr .bnr__item--lg {
        width: 100%
    }

    .article__bnr .bnr__item--sm {
        width: calc((100% - var(--bnr_gap))/2)
    }

    .reports-modal {
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 100vh;
        justify-content: center;
        left: 0;
        padding: 5.208333333333334vw;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10000
    }

    .reports-modal__bg {
        background-color: rgba(0,0,0,.3);
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .reports-modal__window {
        background-color: #fff;
        height: auto;
        padding: 5.208333333333334vw;
        position: relative;
        width: 100%
    }

    .reports-modal__window .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 1.5625vw
    }

    .reports-modal__window .note:after {
        clear: both;
        content: "";
        display: table
    }

    .reports-modal__window .note-asterisk {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        font-size: 3.125vw;
        line-height: 1.8
    }

    .reports-modal__window .note-inner p {
        font-size: 3.125vw;
        line-height: 1.8;
        margin-top: 0
    }

    .reports-modal__window .note-fig {
        float: left;
        margin-right: 2.604166666666667vw
    }

    .reports-modal__close {
        color: #fff;
        cursor: pointer;
        height: 7.8125vw;
        position: absolute;
        right: 0;
        top: -7.8125vw;
        width: 7.8125vw
    }

    .reports-modal__close:after,.reports-modal__close:before {
        background-color: currentColor;
        content: "";
        display: block;
        height: .5208333333333333vw;
        position: absolute;
        width: 100%
    }

    .reports-modal__close:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .reports-modal__close:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .announcement {
        margin-top: 11.458333333333332vw
    }

    .announcement__sub {
        color: #79a95d;
        font-size: 3.6458333333333335vw;
        font-weight: 700;
        line-height: 1.6
    }

    .announcement .parent {
        margin-top: 1.0416666666666665vw
    }

    .announcement .grid__title {
        color: #79a95d;
        font-size: 4.427083333333334vw;
        font-weight: 700
    }

    .announcement .purchase__title {
        margin-bottom: 0
    }

    .announcement_text {
        font-size: 3.6458333333333335vw;
        line-height: 1.7
    }

    .parent__left {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 3.125vw
    }

    .parent__right .grid2 {
        display: none
    }
}

@media only screen and (max-width: 767px) {
    .article__body .profile__avatar {
        -ms-grid-column:1;
        -ms-grid-row: 1
    }

    .article__body .profile__name {
        -ms-grid-column: 3;
        -ms-grid-row: 1
    }

    .article__body .profile__detail {
        -ms-grid-column-span: 3;
        -ms-grid-column: 1;
        -ms-grid-row: 3
    }
}
