@charset "UTF-8";
html {
  font-family: "Noto Sans JP", "Roboto Condensed", sans-serif;
  box-sizing: border-box;
  font-size: 62.5%; }

body {
  font-size: 1.6rem;
  color: #505050;
  font-weight: 400;
  background-color: #fff; }

h1 {
  color: #1a1a1a;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 2.6rem;
  letter-spacing: 0.06em; }

h2 {
  color: #1a1a1a;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 2.2rem; }

h3 {
  font-weight: bold;
  color: #1a1a1a; }

a {
  display: block; }
  a:not(.btn) {
    transition: 0.5s; }
    a:not(.btn):hover {
      opacity: 0.5;
      transition: 0.5s; }

img {
  width: 100%; }

section {
  margin-bottom: 130px; }

.text__en {
  letter-spacing: 0.06em;
  font-family: "Roboto Condensed";
  line-height: 2em; }

.text__l {
  font-size: 2rem; }

.btn {
  display: block;
  text-align: right;
  padding: 7px 17px;
  color: #1a1a1a;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  border-radius: 20px;
  border: 1px solid;
  width: fit-content;
  margin-left: auto;
  transition: 0.5s;
  cursor: pointer; }
  .btn:hover {
    color: #fff;
    background-color: #1a1a1a; }

.pc-only {
  display: none; }

header {
  padding: 15px 20px 10px;
  position: fixed;
  width: 100%;
  z-index: 999;
  background-color: #fff; }
  header .header__wrap {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between; }
    header .header__wrap .logo {
      width: 280px;
      display: block;
      transition: 0.6s; }
      header .header__wrap .logo.isSmall {
        width: 150px; }
    header .header__wrap .sns-icon {
      display: flex;
      gap: 22px;
      align-items: center;
      height: fit-content;
      margin-top: 12px; }
      header .header__wrap .sns-icon a {
        height: fit-content;
        cursor: pointer; }

main {
  padding: 170px 20px 20px; }
  main .main__flex {
    display: flex;
    flex-direction: column; }
    main .main__flex--nav {
      margin-bottom: 16px; }
      main .main__flex--nav ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between; }
        main .main__flex--nav ul li {
          color: #1a1a1a;
          font-weight: bold;
          font-family: "Roboto Condensed", sans-serif;
          font-size: 1.4rem;
          cursor: pointer; }
          main .main__flex--nav ul li.sp-float {
            position: fixed;
            bottom: 2rem;
            padding: 7px 18px 6px;
            font-size: 1.5rem;
            border-radius: 50vh;
            color: #1a1a1a;
            background-color: #fff;
            border: 1px solid #1a1a1a;
            box-sizing: border-box;
            transition: 0.4s;
            letter-spacing: 0.1rem; }
            main .main__flex--nav ul li.sp-float:hover {
              opacity: 0.7; }
            main .main__flex--nav ul li.sp-float a:hover {
              opacity: 1;
              filter: brightness(1.1); }
  main .contact a {
    width: fit-content;
    margin-bottom: 16px; }
    main .contact a.contact__mail {
      color: #1a1a1a;
      font-weight: bold;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 2.2rem;
      display: flex;
      align-items: baseline;
      gap: 6px; }
      main .contact a.contact__mail img {
        width: 22px;
        border-bottom: 1px solid;
        height: 1em;
        transition: 0.5s; }
      main .contact a.contact__mail:hover img {
        margin-left: 10px;
        transition: 0.5s; }
  main .contact p {
    margin-bottom: 16px;
    font-size: 1.4rem; }
  main .contact .contact__tel {
    display: flex; }
    main .contact .contact__tel a {
      margin-right: 1em; }

footer {
  padding: 0 20px 20px; }
  footer .footer__wrap {
    text-align: right; }
    footer .footer__wrap .top-btn {
      width: 60px;
      height: 60px;
      border-radius: 30px;
      background-color: #1a1a1a;
      display: block;
      margin: 0px 0 18px auto;
      position: relative; }
      footer .footer__wrap .top-btn::after {
        content: "";
        width: 16px;
        height: 16px;
        border-top: solid 4px #fff;
        border-right: solid 4px #fff;
        position: absolute;
        top: 55%;
        left: 50%;
        transform: translate(-50%, -50%) rotate(-45deg); }
    footer .footer__wrap .footer__flex {
      display: flex;
      justify-content: flex-end;
      flex-direction: column;
      gap: 12px;
      font-weight: 300;
      font-size: 1.4rem;
      width: fit-content;
      margin-left: auto;
      font-family: "Roboto Condensed";
      margin-bottom: 1rem; }
      footer .footer__wrap .footer__flex:last-of-type {
        margin-bottom: 0; }
      footer .footer__wrap .footer__flex .footer__links {
        display: flex;
        gap: 12px;
        justify-content: flex-end; }
      footer .footer__wrap .footer__flex a {
        text-decoration: underline;
        -webkit-text-decoration: underline; }
      footer .footer__wrap .footer__flex p {
        letter-spacing: 0.05em;
        font-size: 1.4rem; }
        footer .footer__wrap .footer__flex p:last-child {
          font-family: "Noto Sans JP";
          font-size: 1.2rem;
          line-height: 1.4; }

@media screen and (min-width: 320px) and (max-width: 374px) {
  header .header__wrap {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between; }
    header .header__wrap .logo {
      width: 250px;
      display: block;
      transition: 1s; }
      header .header__wrap .logo.isSmall {
        width: 200px; }

  main {
    padding-top: 150px; } }
@media screen and (min-width: 769px) {
  h2.text__en {
    letter-spacing: 0.15em; }

  .pc-only {
    display: block; }

  .sp-only {
    display: none; }

  header {
    padding: 30px 50px;
    background-color: initial; }
    header .header__wrap .logo {
      width: 340px; }
      header .header__wrap .logo.isSmall {
        width: 210px; }
    header .header__wrap .sns-icon {
      gap: 27px; }
      header .header__wrap .sns-icon a {
        height: 21px; }

  main {
    padding: 220px 100px 206px 50px; }
    main .main__flex {
      flex-direction: row; }
      main .main__flex--nav {
        margin-bottom: 0;
        width: fit-content;
        position: fixed; }
        main .main__flex--nav ul {
          flex-direction: column;
          gap: 1em; }
          main .main__flex--nav ul li {
            letter-spacing: 0.15em;
            font-size: 2.6rem; }
            main .main__flex--nav ul li .sortButton {
              letter-spacing: 0.15em; }
            main .main__flex--nav ul li.sp-float {
              color: #fff;
              font-size: 2.2rem;
              position: initial;
              letter-spacing: 0.15em;
              border: none;
              padding: 0; }
              main .main__flex--nav ul li.sp-float a {
                background-color: #1a1a1a;
                padding: 4px 12px 3px;
                border-radius: 50vh;
                display: inline-block;
                margin-top: 7px;
                text-align: center; }
      main .main__flex--content {
        width: 100%;
        margin: 0 0 0 249px; }

  footer {
    padding: 0 50px 30px; }
    footer .footer__wrap .footer__flex {
      flex-direction: row;
      gap: 19px;
      margin-bottom: 1.5rem; } }
@media screen and (min-width: 769px) and (max-width: 790px) {
  footer .footer__wrap .footer__flex {
    flex-direction: column;
    gap: 12px;
    font-size: 1.6rem; }
    footer .footer__wrap .footer__flex p:last-child {
      font-family: "Noto Sans JP";
      font-size: 1.4rem; } }
main.top-page .top__model {
  display: flex;
  flex-wrap: wrap;
  gap: 4%; }
  main.top-page .top__model--unit {
    width: calc(50% - 2%);
    margin-bottom: 10px;
    cursor: pointer; }
    main.top-page .top__model--unit .top__model--photo {
      margin-bottom: 5px;
      overflow: hidden;
      height: calc((230 / 394) * 100vw); }
      main.top-page .top__model--unit .top__model--photo img {
        object-fit: cover;
        object-position: top;
        width: 100%;
        height: 100%; }
    main.top-page .top__model--unit .top__name--wrap {
      display: flex;
      flex-direction: column; }
      main.top-page .top__model--unit .top__name--wrap .top__name {
        color: #1a1a1a;
        font-weight: bold;
        font-family: "Roboto Condensed", sans-serif;
        font-size: 1.4rem; }
      main.top-page .top__model--unit .top__name--wrap .model__tag--wrap {
        display: flex;
        gap: 6px; }
        main.top-page .top__model--unit .top__name--wrap .model__tag--wrap .model__tag {
          color: #1a1a1a;
          font-weight: bold;
          font-family: "Roboto Condensed", sans-serif;
          font-size: 1.3rem;
          color: #d59801; }
main.top-page .top__about--img {
  margin-bottom: 15px; }
main.top-page .top__about--text {
  margin-bottom: 30px; }
  main.top-page .top__about--text h2 {
    margin-bottom: 22px; }
  main.top-page .top__about--text p {
    margin-bottom: 10px; }
    main.top-page .top__about--text p:nth-child(3) {
      margin-bottom: 1em; }
    main.top-page .top__about--text p:last-child {
      margin-top: 28px;
      font-size: 1.4rem;
      line-height: 2.2em; }
main.top-page .top__news h2 {
  margin-bottom: 15px; }
main.top-page .top__news ul {
  display: flex;
  flex-wrap: wrap;
  gap: 4%; }
  main.top-page .top__news ul li {
    width: calc(50% - 2%);
    margin-bottom: 15px; }
    main.top-page .top__news ul li .top__news--img {
      margin-bottom: 7px;
      overflow: hidden;
      height: calc((132 / 320) * 100vw); }
      main.top-page .top__news ul li .top__news--img img {
        height: 100%;
        object-fit: cover; }
      main.top-page .top__news ul li .top__news--img.img-null {
        border: 1px solid; }
    main.top-page .top__news ul li .top__news--text p {
      text-overflow: ellipsis;
      line-height: 1.5;
      font-size: 1.3rem;
      letter-spacing: 0.05em; }
      main.top-page .top__news ul li .top__news--text p.date {
        color: #1a1a1a;
        font-weight: bold;
        font-family: "Roboto Condensed", sans-serif; }
      main.top-page .top__news ul li .top__news--text p.describe {
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        -webkit-line-clamp: 2;
        height: 2.8em; }
@media screen and (min-width: 769px) {
  main.top-page section {
    margin-bottom: 100px; }
  main.top-page .top__model {
    gap: 19px;
    justify-content: space-between;
    justify-content: flex-start; }
    main.top-page .top__model::after {
      content: "";
      display: block;
      width: calc((174 / 964) * 100%);
      min-width: 174px; }
    main.top-page .top__model::before {
      content: "";
      display: block;
      width: calc((174 / 964) * 100%);
      min-width: 174px;
      order: 1; }
    main.top-page .top__model--unit {
      width: calc((174 / 1366) * 100vw); }
      main.top-page .top__model--unit .top__model--photo {
        height: calc((230 / 1366) * 100vw);
        width: 100%; }
        main.top-page .top__model--unit .top__model--photo img {
          width: 100%;
          height: 100%; }
      main.top-page .top__model--unit .top__name--wrap p {
        font-size: 1.6rem; }
      main.top-page .top__model--unit .top__name--wrap span {
        font-size: 1.5rem; }
  main.top-page .top__about--img {
    max-width: 560px; }
  main.top-page .top__news ul {
    gap: 19px;
    justify-content: space-between;
    justify-content: flex-start;
    margin-bottom: 30px; }
    main.top-page .top__news ul::after {
      content: "";
      display: block;
      width: calc((174 / 964) * 100%);
      min-width: 174px; }
    main.top-page .top__news ul::before {
      content: "";
      display: block;
      width: calc((174 / 964) * 100%);
      min-width: 174px;
      order: 1; }
    main.top-page .top__news ul li {
      width: calc((174 / 964) * 100%);
      min-width: 174px; }
      main.top-page .top__news ul li .top__news--img {
        height: max(12.7vw, 177px); }
        main.top-page .top__news ul li .top__news--img img {
          height: 100%;
          object-fit: cover;
          object-position: center; }
      main.top-page .top__news ul li .top__news--text p {
        line-height: 1.2; }
        main.top-page .top__news ul li .top__news--text p.date {
          line-height: 1.5; }
        main.top-page .top__news ul li .top__news--text p.describe {
          height: 2.5em; } }

main .main__flex .main__flex--content.model {
  margin-top: 43px; }
  main .main__flex .main__flex--content.model h2 {
    margin-bottom: 15px;
    line-height: 1.5; }
  main .main__flex .main__flex--content.model .model__wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 4%;
    align-items: stretch; }
    main .main__flex .main__flex--content.model .model__wrap .model__unit {
      width: calc(50% - 2%);
      margin-bottom: 12px;
      cursor: pointer; }
      main .main__flex .main__flex--content.model .model__wrap .model__unit .model__photo {
        margin-bottom: 5px;
        overflow: hidden;
        height: 56vw; }
      main .main__flex .main__flex--content.model .model__wrap .model__unit .name__wrap .name {
        color: #1a1a1a;
        font-weight: bold;
        font-family: "Roboto Condensed", sans-serif; }
  @media screen and (min-width: 769px) {
    main .main__flex .main__flex--content.model {
      margin-top: 0; }
      main .main__flex .main__flex--content.model .model__wrap {
        gap: 19px;
        justify-content: space-between;
        justify-content: flex-start; }
        main .main__flex .main__flex--content.model .model__wrap::after {
          content: "";
          display: block;
          width: calc((174 / 964) * 100%);
          min-width: 174px; }
        main .main__flex .main__flex--content.model .model__wrap::before {
          content: "";
          display: block;
          width: calc((174 / 964) * 100%);
          min-width: 174px;
          order: 1; }
        main .main__flex .main__flex--content.model .model__wrap .model__unit {
          width: calc((174 / 964) * 100%);
          min-width: 174px; }
          main .main__flex .main__flex--content.model .model__wrap .model__unit .model__photo {
            height: max(17vw, 230px); } }

main .main__flex .main__flex--content.creator .creator__wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 4%;
  align-items: stretch; }
  main .main__flex .main__flex--content.creator .creator__wrap .creator__unit {
    width: calc(50% - 2%);
    margin-bottom: 12px;
    cursor: pointer; }
@media screen and (min-width: 769px) {
  main .main__flex .main__flex--content.creator .creator__wrap {
    gap: initial;
    justify-content: space-between; }
    main .main__flex .main__flex--content.creator .creator__wrap .creator__unit {
      width: calc((174 / 964) * 100%); } }

main .main__flex .main__flex--content.person .person__wrap {
  margin-bottom: 50px; }
  main .main__flex .main__flex--content.person .person__wrap .person__top--img {
    margin-bottom: 18px;
    width: fit-content; }
    main .main__flex .main__flex--content.person .person__wrap .person__top--img img {
      max-height: 610px;
      object-fit: cover;
      object-position: top; }
  main .main__flex .main__flex--content.person .person__wrap .profile {
    margin-bottom: 40px; }
    main .main__flex .main__flex--content.person .person__wrap .profile__name {
      margin-bottom: 6px;
      display: flex;
      gap: 20px;
      align-items: center; }
      main .main__flex .main__flex--content.person .person__wrap .profile__name p {
        font-weight: bold; }
    main .main__flex .main__flex--content.person .person__wrap .profile__details {
      display: flex;
      width: 100%;
      align-items: flex-start;
      font-family: "Roboto Condensed"; }
      main .main__flex .main__flex--content.person .person__wrap .profile__details .size {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 0.3em 0;
        font-size: 1.4rem;
        min-width: 210px;
        max-width: 210px;
        width: 100%;
        justify-content: space-between; }
        main .main__flex .main__flex--content.person .person__wrap .profile__details .size .size__unit {
          display: flex;
          width: 90px; }
          main .main__flex .main__flex--content.person .person__wrap .profile__details .size .size__unit dt {
            font-weight: 400;
            width: fit-content; }
            main .main__flex .main__flex--content.person .person__wrap .profile__details .size .size__unit dt::after {
              content: ":";
              padding: 0 0.5em; }
          main .main__flex .main__flex--content.person .person__wrap .profile__details .size .size__unit dd {
            width: 50%; }
      main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        justify-content: flex-start;
        width: 52%;
        max-width: 163px;
        gap: 0.3em 0;
        font-size: 1.4rem; }
        main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality dt {
          width: fit-content;
          max-width: 120px;
          font-weight: 400; }
          main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality dt::after {
            content: ":";
            padding: 0 0.5em; }
  main .main__flex .main__flex--content.person .person__wrap .person__link {
    display: flex;
    gap: 15px;
    flex-wrap: nowrap;
    margin-bottom: 40px; }
    main .main__flex .main__flex--content.person .person__wrap .person__link li {
      color: #1a1a1a;
      font-weight: bold;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 1.4rem;
      position: relative; }
      main .main__flex .main__flex--content.person .person__wrap .person__link li:not(:last-child)::after {
        content: "/";
        position: absolute;
        right: -20%;
        top: 0; }
      main .main__flex .main__flex--content.person .person__wrap .person__link li a span {
        font-size: 0.8em;
        padding-left: 0.2em;
        font-weight: 400; }
  main .main__flex .main__flex--content.person .person__wrap .person__unit {
    display: none; }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.show {
      display: block; }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.person__gallery {
      margin-bottom: 60px; }
      main .main__flex .main__flex--content.person .person__wrap .person__unit.person__gallery ul {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 14px; }
        main .main__flex .main__flex--content.person .person__wrap .person__unit.person__gallery ul li {
          width: calc(50% - 7px); }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.person__movie {
      width: 100%;
      margin-top: 10px; }
      main .main__flex .main__flex--content.person .person__wrap .person__unit.person__movie .iframe-container {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        margin-bottom: 14px; }
      main .main__flex .main__flex--content.person .person__wrap .person__unit.person__movie .iframe-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.person__performance {
      margin-top: 10px; }
      main .main__flex .main__flex--content.person .person__wrap .person__unit.person__performance div {
        margin-bottom: 60px; }
        main .main__flex .main__flex--content.person .person__wrap .person__unit.person__performance div h2 {
          font-size: 1.5rem; }
        main .main__flex .main__flex--content.person .person__wrap .person__unit.person__performance div p {
          font-size: 1.5rem; }
  main .main__flex .main__flex--content.person .person__wrap .social {
    display: flex;
    gap: 22px;
    padding-top: 0.5rem;
    padding-bottom: 40px; }
    main .main__flex .main__flex--content.person .person__wrap .social__link {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 2rem;
      height: 2rem; }
      main .main__flex .main__flex--content.person .person__wrap .social__link img {
        max-width: 100%;
        height: auto; }
  main .main__flex .main__flex--content.person .person__wrap .topics {
    padding-bottom: 40px; }
    main .main__flex .main__flex--content.person .person__wrap .topics__title {
      color: #1a1a1a;
      font-weight: bold;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 2.2rem;
      padding-bottom: 0.5rem; }
    main .main__flex .main__flex--content.person .person__wrap .topics__li {
      margin-bottom: 1rem; }
    main .main__flex .main__flex--content.person .person__wrap .topics__link {
      font-size: 1.4rem; }
      main .main__flex .main__flex--content.person .person__wrap .topics__link--no-link {
        font-size: 1.4rem; }
      main .main__flex .main__flex--content.person .person__wrap .topics__link img {
        width: 22px;
        height: 1em;
        transition: 0.5s; }
@media screen and (min-width: 769px) {
  main .main__flex .main__flex--content.person .person__wrap {
    width: 80%;
    max-width: 1077px; }
    main .main__flex .main__flex--content.person .person__wrap .person__top--img img {
      max-height: 470px; }
    main .main__flex .main__flex--content.person .person__wrap .profile__name {
      gap: 30px; }
    main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality {
      max-width: 233px; }
      main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality dd {
        width: 50%; }
    main .main__flex .main__flex--content.person .person__wrap .person__link {
      gap: 20px; }
      main .main__flex .main__flex--content.person .person__wrap .person__link li {
        color: #1a1a1a;
        font-weight: bold;
        font-family: "Roboto Condensed", sans-serif;
        font-size: 2.2rem;
        position: relative; }
        main .main__flex .main__flex--content.person .person__wrap .person__link li:not(:last-child)::after {
          content: "/";
          position: absolute;
          top: 0; }
        main .main__flex .main__flex--content.person .person__wrap .person__link li a span {
          font-size: 1.3rem;
          padding-left: 0.5em; }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.person__gallery ul {
      gap: 20px; }
      main .main__flex .main__flex--content.person .person__wrap .person__unit.person__gallery ul li {
        width: calc(50% - 10px); }
    main .main__flex .main__flex--content.person .person__wrap .person__unit.person__movie iframe {
      margin-bottom: 20px; }
    main .main__flex .main__flex--content.person .person__wrap .social {
      gap: 27px; }
    main .main__flex .main__flex--content.person .person__wrap .topics__link:hover img {
      margin-left: 5px;
      transition: 0.5s; } }
@media screen and (min-width: 769px) and (max-width: 919px) {
  main .main__flex .main__flex--content.person .person__wrap .person__link {
    gap: 15px; }
    main .main__flex .main__flex--content.person .person__wrap .person__link li {
      font-size: 1.5rem; }
      main .main__flex .main__flex--content.person .person__wrap .person__link li a span {
        font-size: 1.3rem;
        padding-left: 0.5em; } }
@media screen and (min-width: 1020px) {
  main .main__flex .main__flex--content.person .person__wrap .profile__details .nationality {
    max-width: 256px; } }

main .main__flex .main__flex--content.about .about__wrap .about__top--img {
  margin-bottom: 15px; }
  main .main__flex .main__flex--content.about .about__wrap .about__top--img img {
    object-fit: cover; }
main .main__flex .main__flex--content.about .about__wrap .about__text {
  margin-bottom: 30px; }
  main .main__flex .main__flex--content.about .about__wrap .about__text h2 {
    margin-bottom: 22px; }
  main .main__flex .main__flex--content.about .about__wrap .about__text p {
    margin-bottom: 10px;
    letter-spacing: 0.07em; }
    main .main__flex .main__flex--content.about .about__wrap .about__text p:nth-child(3) {
      margin-bottom: 1em; }
    main .main__flex .main__flex--content.about .about__wrap .about__text p:last-child {
      margin-top: 28px;
      font-size: 1.4rem;
      line-height: 2.4em;
      letter-spacing: 0.04em; }
main .main__flex .main__flex--content.about .company h2 {
  margin-bottom: 15px; }
main .main__flex .main__flex--content.about .company dl {
  display: flex;
  flex-direction: column;
  font-size: 1.3rem;
  letter-spacing: 0.04em; }
  main .main__flex .main__flex--content.about .company dl dt {
    color: #1a1a1a; }
    main .main__flex .main__flex--content.about .company dl dt:not(:last-child) {
      margin-bottom: 6px; }
  main .main__flex .main__flex--content.about .company dl dd {
    line-height: 1.8em; }
    main .main__flex .main__flex--content.about .company dl dd:not(:last-child) {
      margin-bottom: 16px; }
    main .main__flex .main__flex--content.about .company dl dd ul {
      list-style: disc;
      margin: 6px 0 0 30px; }
@media screen and (min-width: 769px) {
  main .main__flex .main__flex--content.about {
    width: 80%; }
    main .main__flex .main__flex--content.about .about__wrap .about__top--img {
      width: fit-content; }
      main .main__flex .main__flex--content.about .about__wrap .about__top--img img {
        max-height: 470px; }
    main .main__flex .main__flex--content.about .company {
      width: 70%; }
      main .main__flex .main__flex--content.about .company dl {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: baseline;
        gap: 16px 0; }
        main .main__flex .main__flex--content.about .company dl dt {
          width: 22%; }
          main .main__flex .main__flex--content.about .company dl dt:not(:last-child) {
            margin-bottom: 0; }
        main .main__flex .main__flex--content.about .company dl dd {
          width: 78%; }
          main .main__flex .main__flex--content.about .company dl dd:not(:last-child) {
            margin-bottom: 0; } }

main .main__flex--content.about .about__wrap .about__text .audition {
  margin-top: 43px; }
  main .main__flex--content.about .about__wrap .about__text .audition .text__en {
    line-height: 1.5; }
  main .main__flex--content.about .about__wrap .about__text .audition__title {
    font-size: 2.4rem;
    font-family: "Roboto Condensed", sans-serif;
    color: #1a1a1a;
    letter-spacing: 0.07em; }
  main .main__flex--content.about .about__wrap .about__text .audition__title__sub {
    font-size: 1.8rem;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    margin-bottom: 3rem;
    letter-spacing: 0.03rem;
    line-height: 30px; }
  main .main__flex--content.about .about__wrap .about__text .audition__text {
    font-size: 1.4rem;
    line-height: 2.4em;
    letter-spacing: 0.04em; }
  main .main__flex--content.about .about__wrap .about__text .audition .asterik {
    font-size: 1.3rem;
    line-height: 2em;
    padding-left: 2rem;
    margin: 1rem 0; }
    main .main__flex--content.about .about__wrap .about__text .audition .asterik li::before {
      content: "＊";
      display: inline-block;
      font-weight: bold;
      margin-left: -2rem;
      color: #d59801; }
  main .main__flex--content.about .about__wrap .about__text .audition__text__last {
    font-size: 1.4rem;
    line-height: 2.4em;
    margin-bottom: 10rem !important; }
  main .main__flex--content.about .about__wrap .about__text .audition__text__address {
    font-size: 15px;
    line-height: 40px;
    margin-bottom: 6rem !important; }
  main .main__flex--content.about .about__wrap .about__text .audition__text__mail {
    display: inline-block;
    font-size: 15px;
    line-height: 30px;
    margin-bottom: 6rem !important; }
  main .main__flex--content.about .about__wrap .about__text .audition .audition__details {
    padding-left: 2rem; }
    main .main__flex--content.about .about__wrap .about__text .audition .audition__details li {
      font-size: 15px;
      line-height: 40px; }
      main .main__flex--content.about .about__wrap .about__text .audition .audition__details li::before {
        content: "・";
        display: inline-block;
        margin-left: -1.5rem; }
    main .main__flex--content.about .about__wrap .about__text .audition .audition__details:last-child {
      margin-bottom: 100px; }
main .main__flex--content.about .about__wrap .about__text ul:last-child {
  margin-bottom: 3rem; }

main
.main__flex
.main__flex--content.about
.about__wrap
.about__text
p:nth-child(3) {
  margin-bottom: 0; }

main .main__flex--content.about .about__wrap .about__text .audition__text .sub {
  color: #1a1a1a;
  font-size: 1.5rem;
  font-weight: bold; }
  main .main__flex--content.about .about__wrap .about__text .audition__text .sub.en {
    font-family: "Roboto Condensed", sans-serif; }

main .main__flex .main__flex--content.about .about__wrap .about__text p {
  margin-bottom: 0; }

.margin-bottom {
  line-height: 30px;
  margin-bottom: 27rem; }

@media screen and (max-width: 768px) {
  main .main__flex--content.about .about__wrap .about__text .audition__title__sub {
    margin-bottom: 1.5rem; }
  main .main__flex--content.about .about__wrap .about__text .audition__text__address {
    font-size: 1.4rem;
    margin-bottom: 3rem !important; }
  main .main__flex--content.about .about__wrap .about__text .audition__text__mail {
    font-size: 1.4rem;
    margin-bottom: 3rem !important; }
  main .main__flex--content.about .about__wrap .about__text .audition .asterik {
    font-size: 1.4rem; }
  main .main__flex--content.about .about__wrap .about__text .audition .audition__details li {
    font-size: 1.4rem; } }
@media screen and (max-width: 375px) {
  .audition__text span {
    display: inline-block; } }
main .main__flex .main__flex--content.news {
  margin-top: 43px; }
  main .main__flex .main__flex--content.news .news__wrap h2 {
    margin-bottom: 15px; }
  main .main__flex .main__flex--content.news .news__wrap ul {
    display: flex;
    flex-wrap: wrap;
    gap: 4%; }
    main .main__flex .main__flex--content.news .news__wrap ul li {
      width: calc(50% - 2%);
      margin-bottom: 15px; }
      main .main__flex .main__flex--content.news .news__wrap ul li .news__img {
        margin-bottom: 7px;
        overflow: hidden;
        height: calc((132 / 320) * 100vw); }
        main .main__flex .main__flex--content.news .news__wrap ul li .news__img img {
          height: 100%;
          object-fit: cover; }
        main .main__flex .main__flex--content.news .news__wrap ul li .news__img.img-null {
          border: 1px solid; }
      main .main__flex .main__flex--content.news .news__wrap ul li .news__text p {
        text-overflow: ellipsis;
        line-height: 1.5;
        font-size: 1.3rem;
        letter-spacing: 0.05em; }
        main .main__flex .main__flex--content.news .news__wrap ul li .news__text p.date {
          color: #1a1a1a;
          font-weight: bold;
          font-family: "Roboto Condensed", sans-serif; }
        main .main__flex .main__flex--content.news .news__wrap ul li .news__text p.describe {
          text-overflow: ellipsis;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          overflow: hidden;
          -webkit-line-clamp: 2;
          line-clamp: 2;
          height: 2.8em; }
  @media screen and (min-width: 769px) {
    main .main__flex .main__flex--content.news {
      margin-top: 0; }
      main .main__flex .main__flex--content.news .news__wrap h2 {
        line-height: 1.5; }
      main .main__flex .main__flex--content.news .news__wrap ul {
        gap: 19px;
        justify-content: space-between;
        justify-content: flex-start;
        margin-bottom: 30px; }
        main .main__flex .main__flex--content.news .news__wrap ul::after {
          content: "";
          display: block;
          width: calc((174 / 964) * 100%);
          min-width: 174px; }
        main .main__flex .main__flex--content.news .news__wrap ul::before {
          content: "";
          display: block;
          width: calc((174 / 964) * 100%);
          min-width: 174px;
          order: 1; }
        main .main__flex .main__flex--content.news .news__wrap ul li {
          width: calc((174 / 964) * 100%);
          min-width: 174px; }
          main .main__flex .main__flex--content.news .news__wrap ul li .news__img {
            height: max(12.7vw, 177px); }
            main .main__flex .main__flex--content.news .news__wrap ul li .news__img img {
              height: 100%;
              object-fit: cover;
              object-position: center; }
          main .main__flex .main__flex--content.news .news__wrap ul li .news__text p {
            line-height: 1.2; }
            main .main__flex .main__flex--content.news .news__wrap ul li .news__text p.date {
              line-height: 1.5; }
            main .main__flex .main__flex--content.news .news__wrap ul li .news__text p.describe {
              height: 2.5em; } }

main .main__flex .main__flex--content.privacy {
  margin-top: 43px; }
  main .main__flex .main__flex--content.privacy h1 {
    margin-bottom: 20px; }
  main .main__flex .main__flex--content.privacy section {
    font-size: 1.3rem;
    margin-bottom: 80px; }
    main .main__flex .main__flex--content.privacy section h2 {
      font-family: 'Noto Sans JP';
      font-size: 1.3rem;
      line-height: 2.5em; }
    main .main__flex .main__flex--content.privacy section ol {
      list-style: decimal;
      padding-left: 23px; }
      main .main__flex .main__flex--content.privacy section ol li {
        margin-bottom: 20px;
        line-height: 1.8;
        padding-left: 6px; }
        main .main__flex .main__flex--content.privacy section ol li::marker {
          color: #1a1a1a; }
        main .main__flex .main__flex--content.privacy section ol li h3 {
          line-height: 1.8; }
    main .main__flex .main__flex--content.privacy section .privacy__text {
      margin-bottom: 20px; }
    main .main__flex .main__flex--content.privacy section.tos__wrap h2 {
      margin-bottom: 10px; }
  main .main__flex .main__flex--content.privacy p {
    line-height: 1.8;
    font-size: 1.3rem; }
  @media screen and (min-width: 769px) {
    main .main__flex .main__flex--content.privacy {
      margin-top: 0; }
      main .main__flex .main__flex--content.privacy section ol {
        padding-left: 15px; }
        main .main__flex .main__flex--content.privacy section ol li {
          padding-left: 10px; } }

main .main__flex .main__flex--content.news__single {
  margin-top: 43px; }
  main .main__flex .main__flex--content.news__single .news__single--wrap h2 {
    margin-bottom: 15px;
    line-height: 1; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--img {
    margin-bottom: 20px; }
    main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--img.img-null {
      border: 1px solid; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--title {
    margin-bottom: 20px; }
    main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--title .date {
      margin-bottom: 10px; }
    main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--title .title {
      font-family: 'Noto Sans JP';
      line-height: 1.5; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text :is(h1, h2, h3, h4, h5, h6) {
    font-family: 'Noto Sans JP';
    margin-top: 50px;
    margin-bottom: 10px;
    color: #1a1a1a;
    font-weight: bold;
    padding: 4px;
    line-height: 1.5; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text h3 {
    border-bottom: 1px solid; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text h4 {
    border-bottom: 1px dotted; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text h5 {
    border-left: 3px solid; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text p {
    line-height: 2; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text a {
    display: inline-block; }
  main .main__flex .main__flex--content.news__single .news__single--wrap .news__single--content .news__single--text img {
    margin-bottom: 15px;
    max-width: 708px;
    display: block; }
@media screen and (min-width: 769px) {
  main .main__flex .main__flex--content.news__single {
    width: 80%;
    margin-top: 0; }
    main .main__flex .main__flex--content.news__single .news__single--content .news__single--img {
      max-width: 708px; }
      main .main__flex .main__flex--content.news__single .news__single--content .news__single--img img {
        max-height: 470px;
        object-fit: cover;
        object-position: top; } }
