@charset "utf-8";

/* =========================================================
   IASO NEWS / JOURNAL | PC 1181px+
   Shared namespace for News List / News Detail.
   STEP 1: News List PC.
========================================================= */
:root {
    --news-navy:#183247;
    --news-blue:#6e9db8;
    --news-ivory:#f8f7f3;
    --news-sky:#f3f8fb;
    --news-text:#334652;
    --news-muted:#71818a;
    --news-line:#dbe4e9;
    --news-white:#ffffff;
}

.NewsListPage {
    color:var(--news-text);
    background:var(--news-white);
    overflow:hidden;
}

.NewsListPage *,
.NewsListPage *::before,
.NewsListPage *::after {
    box-sizing:border-box;
}

.NewsInner {
    width:min(1120px,calc(100% - 96px));
    margin:0 auto;
}

.NewsEyebrow {
    margin:0 0 18px;
    color:var(--news-blue);
    font-size:10px;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.2em;
}

/* HERO -------------------------------------------------- */
.NewsHero {
    position:relative;
    height:680px;
    min-height:680px;
    max-height:680px;
    overflow:hidden;
    background:linear-gradient(135deg,#f8f7f3 0%,#f3f8fb 56%,#edf5f8 100%);
}

.NewsHero::after {
    content:"";
    position:absolute;
    top:-180px;
    right:-110px;
    width:520px;
    height:520px;
    border:1px solid rgba(110,157,184,.12);
    border-radius:50%;
    pointer-events:none;
}

.NewsHero__inner {
    position:relative;
    z-index:1;
    height:100%;
    padding:148px 0 0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.NewsHero__inner > * {
    width:70%;
    max-width:760px;
}

.NewsHero h1 {
    margin:0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:clamp(44px,4vw,53px);
    font-weight:500;
    line-height:1.5;
    letter-spacing:.04em;
}

.NewsHero__lead {
    margin:28px 0 0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:21px;
    font-weight:500;
    line-height:1.9;
}

.NewsHero__text {
    max-width:680px;
    margin:20px 0 0;
    color:#536873;
    font-size:14px;
    line-height:2.1;
}

.NewsHero__meta {
    display:flex;
    gap:34px;
    margin-top:40px;
    padding-top:24px;
    border-top:1px solid var(--news-line);
    color:var(--news-muted);
    font-size:8px;
    line-height:1.4;
    letter-spacing:.16em;
}

/* CATEGORY NAV ----------------------------------------- */
.NewsCategoryNav {
    border-top:1px solid var(--news-line);
    border-bottom:1px solid var(--news-line);
    background:#fff;
}

.NewsCategoryNav__inner {
    display:flex;
    align-items:stretch;
    flex-wrap:wrap;
}

.NewsCategoryNav__link {
    position:relative;
    min-width:150px;
    min-height:78px;
    padding:20px 26px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    border-right:1px solid var(--news-line);
    color:var(--news-navy);
    text-decoration:none;
    transition:background-color .25s ease,color .25s ease;
}

.NewsCategoryNav__link:first-child {
    border-left:1px solid var(--news-line);
}

.NewsCategoryNav__link span {
    color:var(--news-blue);
    font-size:8px;
    font-weight:600;
    line-height:1.3;
    letter-spacing:.16em;
}

.NewsCategoryNav__link strong {
    font-size:12px;
    font-weight:500;
    line-height:1.55;
}

.NewsCategoryNav__link::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:2px;
    background:transparent;
    transition:background-color .25s ease;
}

.NewsCategoryNav__link.is-active {
    background:rgba(110,157,184,.055);
}

.NewsCategoryNav__link.is-active::after {
    background:var(--news-blue);
}

/* ARCHIVE ---------------------------------------------- */
.NewsArchive {
    padding:126px 0 138px;
    background:#fff;
}

.NewsArchive__head {
    margin-bottom:64px;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
    gap:80px;
    align-items:end;
}

.NewsArchive__head h2 {
    margin:0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:38px;
    font-weight:500;
    line-height:1.65;
    letter-spacing:.04em;
}

.NewsArchive__intro {
    margin:0;
    padding-bottom:7px;
    color:var(--news-muted);
    font-size:14px;
    line-height:2;
}

.NewsArchive__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:68px 30px;
}

.NewsCard {
    min-width:0;
}

.NewsCard__visual {
    position:relative;
    display:block;
    padding:7px;
    border:1px solid rgba(110,157,184,.28);
    text-decoration:none;
    transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}

.NewsCard__imageFrame {
    position:relative;
    display:block;
    overflow:hidden;
    background:var(--news-sky);
}

.NewsCard__visual img {
    display:block;
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    transition:transform .55s cubic-bezier(.2,.65,.3,1),filter .45s ease;
}

.NewsCard__imageShade {
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(24,50,71,0) 54%,rgba(24,50,71,.18) 100%);
    opacity:.58;
    pointer-events:none;
    transition:opacity .35s ease;
}

.NewsCard__imageArrow {
    position:absolute;
    right:13px;
    bottom:13px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.78);
    border-radius:50%;
    color:#fff;
    background:rgba(24,50,71,.34);
    -webkit-backdrop-filter:blur(7px);
    backdrop-filter:blur(7px);
    font-size:14px;
    line-height:1;
    transform:translateY(3px);
    opacity:.88;
    transition:background-color .35s ease,transform .35s ease,opacity .35s ease;
}

.NewsCard__body {
    padding-top:22px;
}

.NewsCard__meta {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px 18px;
    color:var(--news-muted);
    font-size:10px;
    line-height:1.5;
    letter-spacing:.08em;
}

.NewsCard__meta span {
    position:relative;
    padding-left:18px;
    color:var(--news-blue);
    font-weight:600;
}

.NewsCard__meta span::before {
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:8px;
    height:1px;
    background:#aac2cf;
}

.NewsCard h3 {
    margin:16px 0 0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:19px;
    font-weight:500;
    line-height:1.75;
    letter-spacing:.025em;
}

.NewsCard h3 a {
    color:inherit;
    text-decoration:none;
}

.NewsCard__link {
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:20px;
    padding-bottom:4px;
    border-bottom:1px solid #9eb5c2;
    color:var(--news-navy);
    font-size:10px;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.14em;
    text-decoration:none;
}

.NewsCard__link::after {
    content:"→";
    color:var(--news-blue);
    transition:transform .25s ease;
}

.NewsArchive__empty {
    padding:68px 0;
    border-top:1px solid var(--news-line);
    border-bottom:1px solid var(--news-line);
    text-align:center;
}

.NewsArchive__empty p {
    margin:0;
    color:var(--news-muted);
    font-size:14px;
    line-height:2;
}

.NewsArchive__empty a {
    display:inline-block;
    margin-top:20px;
    color:var(--news-navy);
    font-size:12px;
    text-underline-offset:4px;
}

/* PAGER ------------------------------------------------ */
.NewsPager {
    margin-top:88px;
    padding-top:34px;
    border-top:1px solid var(--news-line);
}

.NewsPager__inner {
    display:grid;
    grid-template-columns:120px minmax(0,1fr) 120px;
    align-items:center;
    gap:28px;
}

.NewsPager__pages {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    margin:0;
    padding:0;
    list-style:none;
}

.NewsPager__page {
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    color:var(--news-navy);
    background:transparent;
    font-family:Georgia,"Times New Roman",serif;
    font-size:13px;
    line-height:1;
    text-decoration:none;
    transition:border-color .25s ease,background-color .25s ease,color .25s ease;
}

.NewsPager__page.is-current {
    border-color:var(--news-navy);
    background:var(--news-navy);
    color:#fff;
}

.NewsPager__control {
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--news-navy);
    font-size:9px;
    font-weight:600;
    line-height:1;
    letter-spacing:.16em;
    text-decoration:none;
}

.NewsPager__prev {
    justify-self:start;
}

.NewsPager__next {
    justify-self:end;
}

.NewsPager__control.is-disabled {
    color:#b9c5cb;
}

.NewsPager__page:focus-visible,
.NewsPager__control:focus-visible {
    outline:1px solid rgba(110,157,184,.78);
    outline-offset:4px;
}

@media (hover:hover) and (pointer:fine) {
    .NewsPager__page:not(.is-current):hover {
        border-color:#b8ccd7;
        background:#f6fafc;
    }

    a.NewsPager__control:hover {
        color:var(--news-blue);
    }
}

/* CLOSING ---------------------------------------------- */
.NewsClosing {
    padding:138px 0 146px;
    background:var(--news-navy);
    text-align:center;
}

.NewsClosing__inner {
    max-width:900px;
}

.NewsClosing .NewsEyebrow {
    color:#9bc1d4;
}

.NewsClosing h2 {
    margin:0;
    color:#fff;
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:40px;
    font-weight:500;
    line-height:1.7;
    letter-spacing:.05em;
}

.NewsClosing__inner > p:not(.NewsEyebrow) {
    max-width:720px;
    margin:30px auto 0;
    color:#cbd8df;
    font-size:14px;
    line-height:2.1;
}

.NewsClosing__actions {
    display:flex;
    justify-content:center;
    gap:14px;
    margin-top:40px;
}

/* ACCESSIBILITY / INTERACTION -------------------------- */
.NewsCategoryNav__link:focus-visible,
.NewsCard a:focus-visible {
    outline:1px solid rgba(110,157,184,.78);
    outline-offset:4px;
}

@media (hover:hover) and (pointer:fine) {
    .NewsCategoryNav__link:hover {
        background:rgba(110,157,184,.055);
    }

    .NewsCard__visual:hover {
        transform:translateY(-4px);
        border-color:rgba(110,157,184,.48);
        box-shadow:0 20px 42px rgba(24,50,71,.11);
    }

    .NewsCard__visual:hover img {
        transform:scale(1.035);
        filter:saturate(.96) brightness(1.02);
    }

    .NewsCard__visual:hover .NewsCard__imageShade {
        opacity:.35;
    }

    .NewsCard__visual:hover .NewsCard__imageArrow {
        background:rgba(24,50,71,.58);
        transform:translateY(0) rotate(3deg);
        opacity:1;
    }

    .NewsCard h3 a:hover {
        color:#4f839e;
    }

    .NewsCard__link:hover::after {
        transform:translateX(4px);
    }
}


/* =========================================================
   NEWS DETAIL / PC
   Editorial article layout
========================================================= */
.NewsDetailPage {
    color:var(--news-text);
    background:#fff;
    overflow:hidden;
}

.NewsDetailPage *,
.NewsDetailPage *::before,
.NewsDetailPage *::after {
    box-sizing:border-box;
}

/* ARTICLE HERO ----------------------------------------- */
.NewsArticleHero {
    position:relative;
    min-height:620px;
    display:flex;
    align-items:stretch;
    overflow:hidden;
    background:
        linear-gradient(120deg,#faf9f6 0%,#f6fafc 52%,#edf5f8 100%);
}

.NewsArticleHero::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:1px;
    background:rgba(110,157,184,.16);
    pointer-events:none;
}

.NewsArticleHero__inner {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);
    gap:72px;
    align-items:center;
    padding:76px 0 68px;
}

.NewsArticleHero__copy {
    min-width:0;
    padding:10px 0;
}

.NewsArticleHero__meta {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px 24px;
    margin:0 0 24px;
    color:var(--news-muted);
    font-size:10px;
    line-height:1.5;
    letter-spacing:.09em;
}

.NewsArticleHero__meta a {
    position:relative;
    padding-left:18px;
    color:var(--news-blue);
    font-weight:600;
    text-decoration:none;
}

.NewsArticleHero__meta a::before {
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:8px;
    height:1px;
    background:#aac2cf;
}

.NewsArticleHero h1 {
    margin:0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:38px;
    font-weight:500;
    line-height:1.68;
    letter-spacing:.03em;
}

.NewsArticleHero__footer {
    margin-top:32px;
    padding-top:16px;
    display:flex;
    align-items:center;
    gap:25px;
    border-top:1px solid rgba(110,157,184,.22);
    color:#7b8f9a;
    font-size:8px;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.18em;
}

.NewsArticleHero__footer span + span {
    position:relative;
    padding-left:25px;
}

.NewsArticleHero__footer span + span::before {
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:10px;
    height:1px;
    background:#b8cad3;
}

.NewsArticleHero__visual {
    position:relative;
    width:100%;
    margin:0;
    padding:0 0 24px 24px;
}

.NewsArticleHero__visual::before {
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:76%;
    height:78%;
    background:rgba(110,157,184,.07);
    pointer-events:none;
}

.NewsArticleHero__visualFrame {
    position:relative;
    z-index:1;
    overflow:hidden;
    background:#eef4f7;
    box-shadow:0 22px 56px rgba(24,50,71,.10);
}

.NewsArticleHero__visualFrame::after {
    content:"";
    position:absolute;
    inset:0;
    border:1px solid rgba(255,255,255,.66);
    pointer-events:none;
}

.NewsArticleHero__visualFrame img {
    display:block;
    width:100%;
    height:440px;
    object-fit:cover;
}

.NewsArticleHero__visual figcaption {
    position:relative;
    z-index:1;
    margin:11px 0 0;
    color:#84949d;
    font-size:8px;
    line-height:1.4;
    letter-spacing:.17em;
    text-align:right;
}

.NewsArticleHero--noimage {
    min-height:500px;
}

.NewsArticleHero--noimage .NewsArticleHero__inner {
    display:block;
    padding-top:100px;
    padding-bottom:82px;
}

.NewsArticleHero--noimage .NewsArticleHero__copy {
    width:min(860px,82%);
}

/* ARTICLE ---------------------------------------------- */
.NewsArticle {
    padding:92px 0 126px;
    background:#fff;
}

.NewsArticle__layout {
    width:min(760px,100%);
    margin:0 auto;
}

.NewsArticle__content {
    min-width:0;
}

.NewsArticleBody {
    color:#344a56;
    font-size:15px;
    line-height:2.15;
    overflow-wrap:anywhere;
}

.NewsArticleBody > :first-child {
    margin-top:0;
}

.NewsArticleBody p {
    margin:0 0 28px;
}

.NewsArticleBody a {
    color:#477d99;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:4px;
}

.NewsArticleBody img {
    display:block;
    max-width:100%;
    height:auto;
    margin:42px auto;
}

.NewsArticleBody iframe {
    display:block;
    width:100%;
    max-width:100%;
    margin:42px auto;
}

.NewsArticleBody h2,
.NewsArticleBody .Newsdetailh2 {
    margin:72px 0 28px;
    padding:0 0 18px;
    border-bottom:1px solid #b9cbd5;
    color:var(--news-navy);
    background:transparent;
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:27px;
    font-weight:500;
    line-height:1.7;
    letter-spacing:.03em;
}

.NewsArticleBody h3,
.NewsArticleBody .Newsdetailh3,
.NewsArticleBody .subsubTi {
    margin:50px 0 22px;
    padding:0 0 0 17px;
    border-left:2px solid #8fb7ca;
    color:var(--news-navy);
    background:none;
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:20px;
    font-weight:500;
    line-height:1.75;
}

.NewsArticleBody .Heading {
    margin:48px 0;
    padding:28px 30px;
    border:1px solid var(--news-line);
    background:#f8fbfc;
    text-align:left;
}

.NewsArticleBody .HeadingT,
.NewsArticleBody .Heading0 {
    color:var(--news-navy);
    font-size:16px;
    font-weight:500;
}

.NewsArticleBody .Heading ol,
.NewsArticleBody .Heading ul {
    margin:18px 0 0;
    padding-left:22px;
}

.NewsArticleBody .mame {
    margin:34px 0;
    padding:24px 26px;
    border:1px solid #d5e6ed;
    background:#f3f9fb;
    border-radius:0;
    color:#526b78;
    font-size:13px;
    line-height:2;
}

.NewsArticleBody .mame strong {
    color:#5f91ad;
    font-size:inherit;
}

.NewsArticleBody .caution {
    margin:34px 0;
    padding:24px 26px;
    border:1px solid #eadfda;
    background:#fcf9f7;
    border-radius:0;
    color:#6d5a52;
    font-size:13px;
    line-height:2;
}

.NewsArticleBody .caution strong {
    color:#9b6757;
    font-size:inherit;
}

.NewsArticleBody .Emphasis2_borderline {
    color:var(--news-navy);
    background:linear-gradient(transparent 68%,rgba(110,157,184,.16) 0);
    font-size:inherit;
    font-weight:600;
}

.NewsArticleBody .number {
    color:#8db4c7;
    font-family:Georgia,"Times New Roman",serif;
    font-size:40px;
    line-height:1.2;
}

/* ARTICLE FOOTER --------------------------------------- */
.NewsArticle__footer {
    margin-top:78px;
    padding-top:30px;
    border-top:1px solid var(--news-line);
}

.NewsArticle__footerMeta {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.NewsArticle__footerMeta a {
    min-height:92px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    padding:20px 22px;
    border:1px solid var(--news-line);
    color:var(--news-navy);
    text-decoration:none;
}

.NewsArticle__footerMeta span {
    color:var(--news-blue);
    font-size:8px;
    font-weight:600;
    letter-spacing:.15em;
}

.NewsArticle__footerMeta strong {
    font-size:13px;
    font-weight:500;
    line-height:1.6;
}

/* RELATED ---------------------------------------------- */
.NewsRelated {
    padding:116px 0 126px;
    background:#f7fafb;
}

.NewsRelated__head {
    margin-bottom:52px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:40px;
}

.NewsRelated__head h2 {
    margin:0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:34px;
    font-weight:500;
    line-height:1.65;
    letter-spacing:.035em;
}

.NewsRelated__all {
    padding-bottom:5px;
    border-bottom:1px solid #9eb5c2;
    color:var(--news-navy);
    font-size:10px;
    font-weight:600;
    letter-spacing:.13em;
    text-decoration:none;
}

.NewsRelated__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:28px;
}

.NewsRelatedCard {
    min-width:0;
}

.NewsRelatedCard__visual {
    display:block;
    padding:6px;
    border:1px solid rgba(110,157,184,.26);
    background:#fff;
    text-decoration:none;
}

.NewsRelatedCard__imageFrame {
    position:relative;
    display:block;
    overflow:hidden;
}

.NewsRelatedCard__imageFrame img {
    display:block;
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    transition:transform .45s ease;
}

.NewsRelatedCard__arrow {
    position:absolute;
    right:11px;
    bottom:11px;
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.8);
    border-radius:50%;
    color:#fff;
    background:rgba(24,50,71,.34);
    -webkit-backdrop-filter:blur(6px);
    backdrop-filter:blur(6px);
    font-size:12px;
}

.NewsRelatedCard__body {
    padding-top:18px;
}

.NewsRelatedCard__meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:var(--news-muted);
    font-size:9px;
    line-height:1.5;
}

.NewsRelatedCard__meta span {
    color:var(--news-blue);
}

.NewsRelatedCard h3 {
    margin:12px 0 0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:17px;
    font-weight:500;
    line-height:1.75;
}

.NewsRelatedCard h3 a {
    color:inherit;
    text-decoration:none;
}

/* CLOSING ---------------------------------------------- */
.NewsDetailClosing {
    padding:128px 0 136px;
    background:var(--news-navy);
    text-align:center;
}

.NewsDetailClosing__inner {
    max-width:860px;
}

.NewsDetailClosing .NewsEyebrow {
    color:#9bc1d4;
}

.NewsDetailClosing h2 {
    margin:0;
    color:#fff;
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:38px;
    font-weight:500;
    line-height:1.72;
    letter-spacing:.04em;
}

.NewsDetailClosing__inner > p:not(.NewsEyebrow) {
    max-width:680px;
    margin:28px auto 0;
    color:#cbd8df;
    font-size:14px;
    line-height:2.05;
}

.NewsDetailClosing__actions {
    display:flex;
    justify-content:center;
    gap:14px;
    margin-top:38px;
}

.NewsArticleEmpty {
    min-height:680px;
    display:flex;
    align-items:center;
    text-align:center;
}

.NewsArticleEmpty h1 {
    margin:0;
    color:var(--news-navy);
    font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
    font-size:38px;
    font-weight:500;
}

.NewsArticleEmpty p {
    margin:22px 0 28px;
    color:var(--news-muted);
    font-size:14px;
}

@media (hover:hover) and (pointer:fine) {
    .NewsArticleHero__meta a:hover,
    .NewsRelated__all:hover {
        color:var(--news-blue);
    }

    .NewsArticle__footerMeta a:hover {
        border-color:#aac5d3;
        background:#f8fbfc;
    }

    .NewsRelatedCard__visual:hover img {
        transform:scale(1.025);
    }

    .NewsRelatedCard h3 a:hover {
        color:#4f839e;
    }
}
