@charset "utf-8";

@media (max-width: 389px) {/*dev*/}
@media (min-width: 390px) {/*dev*/}
@media (max-width: 767px) {/*dev*/}
@media (max-width: 889px) {/*dev*/}
@media (min-width: 890px) {/*dev*/}
@media (max-width: 1512px) {/*dev*/}

/*----------------------------------------------------------
  ress@4.0.0 | github.com/filipelinhares/ress
----------------------------------------------------------*/
html{-webkit-text-size-adjust:100%;box-sizing:border-box;-moz-tab-size:4;tab-size:4;word-break:normal}
*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}
:after,:before{text-decoration:inherit;vertical-align:inherit}
*{margin:0;padding:0}
hr{color:inherit;height:0;overflow:visible}
details,main{display:block}
summary{display:list-item}
small{font-size:80%}
[hidden]{display:none}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
a{background-color:transparent}
a:active,a:hover{outline-width:0}
code,kbd,pre,samp{font-family:monospace,monospace}
pre{font-size:1em}
b,strong{font-weight:bolder}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-.25em}
sup{top:-.5em}
table{border-color:inherit;text-indent:0}
iframe{border-style:none}
[aria-busy=true]{cursor:progress}
[aria-controls]{cursor:pointer}
input{border-radius:0}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
[type=search]::-webkit-search-decoration{-webkit-appearance:none}
textarea{overflow:auto;resize:vertical}
button,input,optgroup,select,textarea{font:inherit}
optgroup{font-weight:700}
button{overflow:visible}
button,select{text-transform:none}
[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}
[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}
button,input,select,textarea{background-color:transparent;border-style:none}
a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}
select{-moz-appearance:none;-webkit-appearance:none}
select::-ms-expand{display:none}
select::-ms-value{color:currentColor}
legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}
::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}
[aria-disabled=true],[disabled]{cursor:default}
img{border-style:none}
progress{vertical-align:baseline}

/* reset
----------------------------------------------------------*/
li { list-style: none;}
img { vertical-align: top; background-color: rgba(255, 255, 255, .01);}
table { border-collapse: collapse; border-spacing: 0;}
input, select, textarea { font-size: max(1.8rem, 18px); -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0;}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color: transparent;}
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder { color: transparent;}
input:focus::-ms-input-placeholder, textarea:focus::-ms-input-placeholder { color: transparent;}
input:focus::placeholder, textarea:focus::placeholder { color: transparent;}
button { border: 0; outline: none; background: transparent; box-shadow: 0 0 0 0 transparent; cursor: pointer;}

/*----------------------------------------------------------
  custom
----------------------------------------------------------*/
:root {
  --w_max: 1103;
  --w_full: 1512;
  --w_tb: 768;
  --w_sp: 390;
  --c_white: #fff;
  --c_black: #000;
  --c_gray: #7a7a7a;
  --c_primary: #ff5d45;
  --c_second: #e72c1a;
  --c_link_hover: #cf2e2e;
}

/*----------------------------------------------------------
  base
----------------------------------------------------------*/
html {
  position: relative;
  height: 100dvh;
  font-size: min(2.6667vw, 62.5%);
  font-family: "Inter", "LINE Seed JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Droid Sans", "Yu Gothic", YuGothic, "\30E1\30A4\30EA\30AA", Meiryo, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", "Hiragino Kaku Gothic ProN", "\FF2D\FF33 \FF30\30B4\30B7\30C3\30AF", sans-serif;
  -webkit-font-smoothing: antialiased;
}
body {
  text-align: center;
  position: relative;
  min-height: 100dvh;
  background-color: var(--c_white);
  color: var(--c_text);
  font-size: 1.5rem;
  line-height: 1.8;
  font-weight: 400;
  -webkit-tap-highlight-color: transparent;
}
.font-en { font-family: "Instrument Serif", serif; font-weight: 400;}

a, button {
  position: relative;
  display: inline-block;
  color: inherit;
  text-decoration: none;
  outline: none;
  opacity: 1;
  transition: all .3s ease;
  backface-visibility: hidden;
}
a::after, button::after,
a::before, button::before {
  transition: all .3s ease;
  backface-visibility: hidden;
}
a img {
  vertical-align: top;
  background-color: rgba(255, 255, 255, .01);
}
a[aria-current="page"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: inherit;
}
img { width: 100%; height: auto;}
:not(.post) :where(.image, .photo, .illust, figure, picture) img { width: 100%;}
.skip { position: absolute; left: -9999px;}
.hide { display: none;}
.cf::after { clear: both; content: ""; display: block;}
.ib { display: inline-block;}
.txt-right { text-align: right;}
.txt-center { text-align: center;}
.txt-up { text-transform: uppercase;}
.txt-br { word-break: keep-all; overflow-wrap: break-word; line-break: normal;}
.em { color: var(--c_em);}
.note { color: #585a60; font-size: 1.2rem;}

.mt-01 { margin-top: .5em !important;}
.mt-02 { margin-top: 1em !important;}
.mt-03 { margin-top: 1.5em !important;}
.mt-04 { margin-top: 2em !important;}
.mt-05 { margin-top: 2.5em !important;}

.sp-show { display: block;}
.pc-show { display: none;}
.noscript-text { padding: 1em;}

@media (width >= 768px) {
  html { font-size: clamp(50%, 50% + ((1vw - 7.68px) * 0.463), 62.5%);} /* 768px => 1200px | 8px => 10px */
  .sp-show { display: none;}
  .pc-show { display: block;}
}

/*----------------------------------------------------------
  js
----------------------------------------------------------*/
/* fade */
.js-fade { opacity: 0; transition: opacity .8s cubic-bezier(.4, 0, .2, 1);}
.js-fade.is-active { opacity: 1;}

/* loading */
#l-wrap { opacity: 0; transition: opacity .5s cubic-bezier(0.4, 0, 1, 1);}
#l-loading { z-index: calc(Infinity); display: flex; align-items: center; justify-content: center; position: fixed; top: 0; left: 0; width: calc(var(--vw, 1vw) * 100); height: calc(var(--vh, 1vh) * 100); visibility: visible; opacity: 1; transition: visibility .3s linear, opacity .3s cubic-bezier(0, 0, 0.2, 1);}
.is-loaded #l-wrap { opacity: 1; transition-delay: .25s;}
.is-loaded #l-loading { visibility: hidden; opacity: 0;}

#l-loading .loader {
  width: 4.0rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(farthest-side, var(--c_primary) 94%, #0000) top/0.5rem 0.5rem no-repeat,
    conic-gradient(#0000 30%, var(--c_primary));
  -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 0.5rem), #000 0);
  mask: radial-gradient(farthest-side, #0000 calc(100% - 0.5rem), #000 0);
  animation: loading 1.2s infinite linear;
}
@keyframes loading {
  100% { transform: rotate(1turn);}
}

/*----------------------------------------------------------
  module
----------------------------------------------------------*/
/* title */
.page__title {
  position: fixed;
  top: 2.2rem;
  left: 2.5rem;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  rotate: 180deg;
  font-size: clamp(4.7rem, 92 / var(--w_full) * 100vw, 92px);
  line-height: 1;

  @media (width < 890px), (max-aspect-ratio: 3/2) {
    top: 1.5rem;
    left: 1.0rem;
  }
}

/* list */
ul.list-disc {
  margin-right: -0.3em;
  padding-left: 1.2em;

  li {
    margin-top: 0.75em;
    list-style: disc;
  }
}

/* link */
a.link__line {
	--link__line_bg_h: 1px;
	display: inline;
	padding-bottom: 1px;
	background: linear-gradient(0deg, var(--c_primary), var(--c_primary)) no-repeat right bottom / 100% var(--link__line_bg_h);
	transition: background-size .35s;

  &:focus-visible {
    background-size: 0 var(--link__line_bg_h);
    background-position-x: right;
  }
  @media (any-hover: hover) {
    &:hover {
      background-size: 0 var(--link__line_bg_h);
      background-position-x: right;
    }
  }
}

/* sns */
.link__sns {
  --link__sns_h: 1.8rem;
  font-size: 0;
  line-height: 1;

  a {
    width: var(--link__sns_h);
    height: var(--link__sns_h);
  }
  a i {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: var(--c_gray);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    transition: all .3s ease;
  }
  a:focus-visible i {
    background-color: var(--c_link_hover);
  }
  @media (any-hover: hover) {
    a:hover i {
      background-color: var(--c_link_hover);
    }
  }
  .link-sns__x a {
    width: calc(16.2 / 18 * var(--link__sns_h));
  }
  .link-sns__x i { mask-image: url(../images/ico_sns_x.svg);}
  .link-sns__facebook a {
    width: calc(9.6 / 18 * var(--link__sns_h));
  }
  .link-sns__facebook i { mask-image: url(../images/ico_sns_f.svg);}
  .link-sns__instagram a {
    width: calc(15.8 / 18 * var(--link__sns_h));
  }
  .link-sns__instagram i { mask-image: url(../images/ico_sns_i.svg);}
  .link-sns__youtube a {
    width: calc(19.2 / 18 * var(--link__sns_h));
  }
  .link-sns__youtube i { mask-image: url(../images/ico_sns_yt.svg);}
  .link-sns__tiktok a {
    width: calc(15.8 / 18 * var(--link__sns_h));
  }
  .link-sns__tiktok i { mask-image: url(../images/ico_sns_tt.svg);}
  .link-sns__line a {
    width: calc(15.8 / 18 * var(--link__sns_h));
  }
  .link-sns__line i { mask-image: url(../images/ico_sns_li.svg);}
  .link-sns__music i { mask-image: url(../images/ico_sns_m.svg);}
  .link-sns__thread a {
    width: calc(15.8 / 18 * var(--link__sns_h));
  }
  .link-sns__thread i { mask-image: url(../images/ico_sns_thd.svg);}
}


/*----------------------------------------------------------
  common layout
----------------------------------------------------------*/
#l-wrap {
  display: flex;
  flex-direction: column;
  min-height: calc(var(--vh, 1vh) * 100);

  &::before {
    content: "";
    z-index: 300;
    position: fixed;
    top: 0;
    left: 0;
    width: calc(var(--vw, 1vw) * 100);
    height: calc(var(--vh, 1vh) * 100);
    visibility: hidden;
    opacity: 0;
  }
  .is-opened &::before {
    visibility: visible;
    opacity: 1;
  }
}


section { position: relative; display: block;}
section::after { clear: both; content: ""; display: block;}
.inner {
  text-align: left;
  position: relative;
  box-sizing: content-box;
  max-width: calc(var(--w_max) * 1px);
  margin-inline: auto;
  padding-inline: 19.6rem;
  container-type: inline-size;
}
.inner.inner__small {
  max-width: 779px;
}
@media (width < 890px), (max-aspect-ratio: 3/2) {
  .inner {
    padding-inline: 17.949vw 2.5641vw; /* 70px 10px */
  }
}

/* #l-main
----------------------------------------------------------*/
#l-main {
  flex-grow: 1;
  padding-block: min(calc(200 / var(--w_full) * 100vw), 20.0rem) min(calc(60 / var(--w_full) * 100vw), 6.0rem);

  @media (width < 890px), (max-aspect-ratio: 3/2) {
    padding-block: 7.3rem 4.8rem;
  }
}

/* header
----------------------------------------------------------*/
#l-header {
  z-index: 500;
  position: absolute;
  right: 0;
  left: 0;
  margin-inline: auto;

  .header__logo {
    z-index: 505;
    position: fixed;
    top: 2.8rem;
    right: 2.1rem;
  }

  #header__btn {
    display: none;
  }

  #header__wrap {
    text-align: right;
    overflow-y: auto;
    position: fixed;
    top: 2.7rem;
    right: 2.0rem;
    height: calc(var(--vh, 1vh) * 100 - 2.7rem);
    padding-block: 14.5rem 2.7rem;

    .header__logo img {
      width: 14.9rem;
    }

    #header__nav {
      .nav-main li+li {
        margin-top: 0.85rem;
      }
      .nav-main li .nav__title {
        font-size: 3.7rem;
        line-height: 1.2;
        letter-spacing: 0.01em;
        text-shadow: 0px 0px 4px var(--c_white), 0px 0px 4px var(--c_white);
      }
      .nav-main li .nav__title::after {
        content: attr(data-hover);
        position: absolute;
        inset: 0;
        pointer-events: none;
        letter-spacing: 0.01em;
        -webkit-mask-image: linear-gradient(to bottom, transparent 20%, #000 80%);
        mask-image: linear-gradient(to bottom, transparent 20%, #000 80%);
        opacity: 0;
      }
      .nav-main li .nav__title:focus-visible,
      .nav-main li .nav__title:focus-visible::after {
        letter-spacing: 0.05em;
        color: var(--c_link_hover);
      }
      .nav-main li .nav__title:focus-visible {
        background: linear-gradient(to bottom, #cf2e2e 0%, rgba(51, 51, 51, 0) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        text-shadow: none;
      }
      .nav-main li .nav__title:focus-visible::after {
        filter: blur(2px);
        opacity: 1;
      }
      @media (any-hover: hover) {
        .nav-main li .nav__title:hover,
        .nav-main li .nav__title:hover::after {
          letter-spacing: 0.05em;
          color: var(--c_link_hover);
        }
        .nav-main li .nav__title:hover {
          background: linear-gradient(to bottom, #cf2e2e 0%, rgba(51, 51, 51, 0) 100%);
          -webkit-background-clip: text;
          background-clip: text;
          color: transparent;
          text-shadow: none;
        }
        .nav-main li .nav__title:hover::after {
          filter: blur(2px);
          opacity: 1;
        }
      }

      .nav-sub {
        margin: 3.2rem 0.2rem 0 0;
      }
      .nav-sub .link-sns__instagram a {
        width: 3.6rem;
        height: 3.6rem;
      }
      .nav-sub .link-sns__instagram a i {
        background-color: var(--c_black);
      }
      .nav-sub .link-sns__instagram a:focus-visible i {
        background-color: var(--c_link_hover);
      }
      @media (any-hover: hover) {
        .nav-sub .link-sns__instagram a:hover i {
          background-color: var(--c_link_hover);
        }
      }
    }

    .header__copy {
      display: none;
    }
  }
  @media (width < 890px), (max-aspect-ratio: 3/2) {
    .header__logo {
      top: 1.2rem;
      right: 0;
      left: 3.0rem;
      width: max-content;
      visibility: hidden;
      opacity: 0;
      transition: opacity .1s ease;
    }
    &.is-active .header__logo {
      visibility: visible;
      opacity: 1;
      transition-delay: .2s;
    }

    #header__btn {
      z-index: 501;
      position: fixed;
      top: 5px;
      right: 10px;
      display: flex;
      width: 42px;
      height: 42px;
      margin-left: auto;
      background-color: rgba(255, 255, 255, 0.3);
      border-radius: .8rem;
      cursor: pointer;

      span {
        display: none;
      }
      &::before,
      &::after {
        content: '';
        position: absolute;
        top: calc(50% - 1px);
        left: 10px;
        display: block;
        width: 18px;
        height: 2px;
        margin: auto;
        background-color: var(--c_black);
      }
      &::before {
        margin-top: -3px;
      }
      &::after {
        width: 9px;
        margin-top: 2px;
      }

      &.is-active {
        background-color: inherit;
      }
      &.is-active::before,
      &.is-active::after {
        width: 22px;
      }
      &.is-active::before {
        transform: translate(0, 3px) rotate(45deg);
      }
      &.is-active::after {
        margin-top: 0.25rem;
        transform: translate(0, -3px) rotate(-45deg);
      }
    }

    #header__wrap.js-menu_target {
      z-index: 500;
      overflow-y: auto;
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: calc(var(--vh, 1vh) * 100);
      background-color: rgba(255, 255, 255, 0.96);
      visibility: visible;
      opacity: 1;
      transform: translate3d(100vw, 0, 0);
      transition: opacity .3s cubic-bezier(.4, 0, .2, 1), transform .3s cubic-bezier(.4, 0, .2, 1);
      -webkit-overflow-scrolling: touch;
    }
    #header__wrap.js-menu_target.is-active {
      transform: translate3d(0, 0, 0);
      transition-delay: 0s;
    }

    #header__wrap {
      padding: 17.3rem 2.3rem 0.6rem;

      .header__copy {
        display: block;
        margin-top: 48px;
        color: #9c9c9c;
      }
    }
  }
}

/* footer
----------------------------------------------------------*/
#l-footer {
  text-align: left;
  padding: 5.6rem 1.7rem 1.1rem;
  color: #9c9c9c;
  font-size: 1.3rem;

  @media (width < 890px), (max-aspect-ratio: 3/2) {
    display: none;
  }
}

/*----------------------------------------------------------
  .page-management
----------------------------------------------------------*/
.page-management {
  .management__cat+.management__cat {
    margin-top: 8.7rem;
  }
  .management-cat__title {
    display: inline-block;
    padding-bottom: 1.0rem;
    border-bottom: 0.5rem solid var(--c_black);
    font-size: 3.2rem;
    line-height: 1;
    transition: all .3s ease;
  }
  .management-subcat__title {
    margin-block: 9.0rem 3.6rem;
    padding-inline: 0.8rem;
    font-size: 3.2rem;
    line-height: 1;
  }
  .management-cat__title+.management-subcat__title {
    margin-top: 8.2rem;
  }
  .management-cat__title a:focus-visible,
  .management-subcat__title a:focus-visible {
    color: var(--c_link_hover);
    border-color: var(--c_link_hover);
  }
  .management-cat__title:has(a:focus-visible) {
    border-color: var(--c_link_hover) !important;
  }
  @media (any-hover: hover) {
    .management-cat__title a:hover,
    .management-subcat__title a:hover {
      color: var(--c_link_hover);
    }
    .management-cat__title:has(a):hover {
      border-color: var(--c_link_hover) !important;
    }
  }
  .card__list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 3.6rem;
    padding-inline: 0.8rem;
  }
  .card__list .card__item {
    container-type: inline-size;
  }
  .card__list .card-item__image {
    position: relative;
    border-radius: 0.8rem;
    overflow: hidden;
  }
  .card__list .card-item__image img {
    transition: transform .5s ease;
  }
  .card__list .card-item__image::after {
    content: '';
    position: absolute;
    inset: 0;
    -webkit-backdrop-filter: blur(0px);
    backdrop-filter: blur(0px);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, black 100%);
    transition: backdrop-filter .5s ease;
  }
  .card__list a:focus-visible .card-item__image img {
    transform: scale(1.05);
  }
  .card__list a:focus-visible .card-item__image::after {
    backdrop-filter: blur(3.0rem);
    -webkit-backdrop-filter: blur(3.0rem);
  }
  @media (any-hover: hover) {
    .card__list a:hover .card-item__image img {
      transform: scale(1.05);
    }
    .card__list a:hover .card-item__image::after {
      backdrop-filter: blur(3.0rem);
      -webkit-backdrop-filter: blur(3.0rem);
    }
  }
  .card__list .card-item__title {
    margin-top: 0.8rem;
    font-size: 1.65rem;
    font-size: max(calc(100cqw / 17.8), 1.3rem);
    font-weight: 700;
    line-height: 1.4;
    transition: transform .5s ease;
  }
  .card__list .card-item__terms {
    margin-top: 0.4rem;
    font-size: 1.65rem;
    font-size: max(calc(100cqw / 17.8), 1.3rem);
    font-weight: 700;
    line-height: 1;
    color: var(--c_gray);
    white-space: nowrap;
  }
  .card__list .card-item__sns {
    display: flex;
    gap: 10px;
    margin-top: 0.8rem;
  }
  .card__list .card-item__tag {
    display: inline-block;
    margin-top: 0.7rem;
    padding: 0.4rem 0.7rem;
    border: 1px solid #a9a9a9;
    border-radius: 0.3rem;
    color: #a9a9a9;
    font-size: 1.0rem;
    line-height: 1;
    font-weight: 700;
  }

  #rhythmedia .management-cat__title {
    color: var(--c_primary);
    border-bottom-color: var(--c_primary);
  }
  #rhythmedia .card__list .card-item__terms {
    color: var(--c_primary);
  }
  @media (width >= 580px) {
    .management__cat+.management__cat {
      margin-top: min(calc(150 / var(--w_full) * 100vw), 15.0rem);
    }
    .management-cat__title {
      padding-bottom: 1.4rem;
      font-size: 3.6rem;
    }
    .management-subcat__title {
      margin-block: 9.0rem 3.0rem;
      padding-inline: 0;
    }
    .management-cat__title+.management-subcat__title {
      margin-top: 5.8rem;
    }
    .card__list {
      grid-template-columns: repeat(2, 1fr);
      gap: 5.6rem calc(50 / var(--w_tb) * 100%);
      padding-inline: 0;
    }
  }
  @media (width >= 890px) {
    #rhythmedia {
      margin-top: min(calc(26 / var(--w_full) * 100vw), 2.6rem);
    }
    .card__list {
      grid-template-columns: repeat(3, 1fr);
      gap: 5.6rem calc(150 / var(--w_full) * 100%);
    }
  }
}

/*----------------------------------------------------------
  .page-news
----------------------------------------------------------*/
.page-news {
  .news__list {
    padding-block: 0.9rem 2.2rem;
  }
  .news__list .news__item {
    border-bottom: solid 1px var(--c_gray);
  }
  .news__list .news__item+.news__item {
    margin-top: 1.6rem;
  }

  .news__list .news__item a {
    position: relative;
    display: block;
    padding-bottom: 2.0rem;
  }
  .news-item__head {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    padding-bottom: 1.4rem;
  }
  .news-item__head .news-item__date,
  .news-item__head .news-item__tag,
  .news-item__head .news-item__terms {
    padding: 2px 8px;
    border-radius: 100vh;
    border: solid 1px var(--c_black);
    font-size: 10px;
    line-height: 1.1;
    font-weight: 700;
  }
  .news-item__head .news-item__terms {
    background-color: var(--c_second);
  }
  .post__title {
    font-size: 1.7rem;
    line-height: 1.7;
    font-weight: 700;
  }
  .post__content {
    margin-top: 2.0rem;
    padding-top: 2.0rem;
    border-top: solid 1px var(--c_gray);
  }
  .post__content > *:not(:first-child) {
    margin-top: 1.5em;
  }
  .post__content a {
    color: var(--c_primary);
  }
  .post__content a:not(:has(img)) {
    --link__line_bg_h: 1px;
    display: inline;
    padding-bottom: 1px;
    background: linear-gradient(0deg, var(--c_primary), var(--c_primary)) no-repeat right bottom / 100% var(--link__line_bg_h);
    transition: background-size .35s;
  }
  .post__content a:not(:has(img)):focus-visible {
    background-size: 0 var(--link__line_bg_h);
    background-position-x: right;
  }
  @media (any-hover: hover) {
    .post__content a:not(:has(img)):hover {
      background-size: 0 var(--link__line_bg_h);
      background-position-x: right;
    }
  }

  .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.8rem;
  }
  .pagination .page__link {
    display: block;
    padding: 0.8rem 1.1rem;
    font-size: 1.7rem;
  }
  .pagination a.is-current {
    color: var(--c_second);
  }
  .pagination li a.is-disabled {
    display: none;
    cursor: not-allowed;
    pointer-events: none;
  }

  .link__back {
    text-align: right;
    margin-top: 4.2rem;
    font-weight: 700;
  }

  .news__list li a:focus-visible .post__title,
  .post__content a:focus-visible,
  .pagination li a:focus-visible:not(.is-current):not(.is-disabled),
  .link__back a:focus-visible {
    color: var(--c_link_hover);
  }
  @media (any-hover: hover) {
    .news__list li a:hover .post__title,
    .post__content a:hover,
    .pagination li a:hover:not(.is-current):not(.is-disabled),
    .link__back a:hover {
      color: var(--c_link_hover);
    }
  }
}
