@media screen and (max-width: 767.999px) {
  .marquee {
    white-space: nowrap;
    overflow: hidden;
  }
  #top_bg_wrapper1 {
    position: relative;
  }
  #top_bg_wrapper1::before {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), white), linear-gradient(90deg, #4477ab 0%, #d3d9db 24%, #c0d5f0 74%, #ffdbdb 100%);
    opacity: 0.302;
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
  }
  #mv_area {
    padding-top: 89px;
    background: url(/common/image/top/line_nami_fv_sp.png) no-repeat;
    background-position: left -60px;
    background-size: 100% auto;
  }
  #mv_area h1 {
    padding-left: 27px;
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    display: inline-block;
    position: relative;
  }
  #mv_area h1::after {
    content: "";
    background: url(/common/image/top/text_fv_sp.png) no-repeat;
    position: absolute;
    z-index: 2;
    right: -109px;
    bottom: -30px;
    width: 230px;
    height: 43px;
    background-size: cover;
  }
  #mv_area #top_mv_list_wrapper {
    margin-top: 90px;
    overflow-x: hidden;
  }
  #mv_area #top_mv_list_wrapper #top_mv_list {
    display: flex;
    gap: 0 20px;
  }
  #mv_area #top_mv_list_wrapper #top_mv_list > ul {
    display: flex;
    flex-shrink: 0;
    gap: 0 20px;
    animation: mv_slide 30s linear infinite both;
  }
  @keyframes mv_slide {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-100%);
    }
  }
  #mv_area #top_mv_list_wrapper #top_mv_list > ul > li {
    width: 250px;
    flex-shrink: 0;
  }
  #mv_area #top_mv_list_wrapper #top_mv_list > ul > li img {
    border-radius: 20px;
  }
  section#top_news {
    position: relative;
    margin-top: 111px;
    padding: 0 24px 75px;
  }
  section#top_news #top_news_title {
    font-weight: 600;
    font-size: 2.5rem;
    letter-spacing: 0.12em;
  }
  section#top_news #top_news_tab {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
  }
  section#top_news #top_news_tab button,
  section#top_news #top_news_tab button:focus,
  section#top_news #top_news_tab button:hover {
    display: inline-block;
    padding: 0;
    border: none;
    outline: none;
    appearance: none;
    background: none;
    cursor: pointer;
    border-radius: 20px;
    font-size: 1.2rem;
    padding: 5px 8px 6px;
  }
  section#top_news #top_news_tab button {
    background: #e4e9f3;
    border: 1px solid #e4e9f3;
    color: #000000;
  }
  section#top_news #top_news_tab button:focus, section#top_news #top_news_tab button:hover, section#top_news #top_news_tab button[aria-selected="true"] {
    background: #FFFFFF;
    border: 1px solid #eeeeee;
    color: #83a9db;
  }
  section#top_news #top_news_contents_area {
    margin-top: 20px;
  }
  section#top_news #top_news_contents_area .tabpanel.is-hidden {
    display: none;
  }
  section#top_news #top_news_contents_area .tabpanel ul {
    border-top: 1px solid #e4e9f3;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li {
    width: 100%;
    border-bottom: 1px solid #e4e9f3;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a {
    display: flex;
    flex-wrap: wrap;
    padding: 18px 0;
    gap: 10px 13px;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl {
    display: contents;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl > dt,
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl > dd {
    color: #333333;
    font-size: 1.2rem;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl .date {
    white-space: nowrap;
    letter-spacing: 0.03em;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl .category {
    color: #83a9db;
    padding-left: 15px;
    letter-spacing: 0.02em;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl .category span {
    position: relative;
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl .category span::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #83a9db;
    position: absolute;
    top: 50%;
    left: -15px;
    transform: translateY(-50%);
  }
  section#top_news #top_news_contents_area .tabpanel ul > li > a > dl .article {
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.57;
  }
  section#top_news #top_more_news_link {
    margin-top: 26px;
    text-align: right;
  }
  section#top_news #top_more_news_link a {
    position: relative;
    color: #333333;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    padding-left: 45px;
    height: 35px;
    font-size: 1.3rem;
  }
  section#top_news #top_more_news_link a::before {
    content: "";
    width: 35px;
    height: 35px;
    background: url(/common/image/base/link_arw2.png) no-repeat;
    position: absolute;
    background-size: 35px 35px;
    left: 0;
    top: 0;
  }
  section#top_about .top_contents {
    color: #333333;
    padding: 40px 24px 96px;
  }
  section#top_about .top_contents h2 {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: 0.12em;
  }
  section#top_about .top_contents .description {
    margin-top: 27px;
    padding-left: 25px;
    font-size: 1.4rem;
    line-height: 1.57;
    position: relative;
  }
  section#top_about .top_contents .description::before {
    content: "";
    width: 16px;
    height: 1px;
    background: #83a9db;
    position: absolute;
    top: 9px;
    left: 0;
  }
  section#top_about #top_about_list {
    margin-top: 55px;
  }
  section#top_about #top_about_list > li {
    margin-top: 55px;
  }
  section#top_about #top_about_list > li .image {
    position: relative;
  }
  section#top_about #top_about_list > li .image img {
    border-radius: 8px;
    width: 100%;
    height: auto;
  }
  section#top_about #top_about_list > li#top_about_overview .image::before {
    content: "";
    background: url(/common/image/top/line_bg1_sp.png) no-repeat;
    background-size: auto 100%;
    aspect-ratio: 750/1152;
    position: absolute;
    inset: auto -24px 45px;
    z-index: -1;
  }
  section#top_about #top_about_list > li#top_about_message .image::before {
    content: "";
    background: url(/common/image/top/line_bg2_sp.png) no-repeat;
    background-size: auto 100%;
    aspect-ratio: 750/468;
    position: absolute;
    inset: auto -24px 57px;
    z-index: -1;
  }
  section#top_about #top_about_list > li#top_about_recruit .image::before {
    content: "";
    background: url(/common/image/top/line_bg3_sp.png) no-repeat;
    background-size: auto 100%;
    aspect-ratio: 750/440;
    position: absolute;
    inset: auto -24px 4px;
    z-index: -1;
  }
  section#top_about #top_about_list > li .data {
    margin-top: 50px;
  }
  section#top_about #top_about_list > li .data h3 {
    font-size: 1.9rem;
    font-weight: 500;
    letter-spacing: 0.16em;
    line-height: 1.32;
    position: relative;
  }
  section#top_about #top_about_list > li .data h3::before {
    content: attr(data-en);
    font-family: "Rubik", sans-serif;
    font-size: 1.3rem;
    color: #83a9db;
    font-weight: 400;
    position: absolute;
    left: 0;
    top: -18px;
    letter-spacing: 0.1em;
  }
  section#top_about #top_about_list > li .data .txt {
    margin-top: 12px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  section#top_about #top_about_list > li .data .more_btn {
    margin-top: 18px;
  }
  section#top_about #top_about_list > li .data .more_btn a {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    padding-left: 45px;
    height: 35px;
    font-size: 1.4rem;
    color: #333333;
  }
  section#top_about #top_about_list > li .data .more_btn a::before {
    content: "";
    width: 35px;
    height: 35px;
    background: url(/common/image/base/link_arw2.png) no-repeat;
    position: absolute;
    background-size: 35px 35px;
    left: 0;
    top: 0;
  }
  section#top_about #top_about_list > li:nth-of-type(1) {
    margin-top: 0;
  }
  section#top_about #top_about_list_mini {
    margin-top: 55px;
    border-top: 1px solid #e4e9f3;
  }
  section#top_about #top_about_list_mini > li {
    display: flex;
    align-items: center;
    padding: 20px 0;
    border-bottom: 1px solid #e4e9f3;
  }
  section#top_about #top_about_list_mini > li .image {
    width: 29.05%;
    flex-shrink: 0;
  }
  section#top_about #top_about_list_mini > li .image img {
    border-radius: 3px;
  }
  section#top_about #top_about_list_mini > li .data {
    padding-left: 18px;
    flex-grow: 1;
  }
  section#top_about #top_about_list_mini > li .data a {
    display: block;
    position: relative;
    padding-left: 45px;
    height: 35px;
  }
  section#top_about #top_about_list_mini > li .data a::before {
    content: "";
    width: 35px;
    height: 35px;
    background: url(/common/image/base/link_arw2.png) no-repeat;
    position: absolute;
    background-size: 35px 35px;
    left: 0;
    top: 0;
  }
  section#top_about #top_about_list_mini > li .data a h3 {
    color: #333333;
    position: relative;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.26;
  }
  section#top_about #top_about_list_mini > li .data a h3::after {
    content: attr(data-en);
    font-family: "Rubik", sans-serif;
    font-size: 1.1rem;
    color: #83a9db;
    font-weight: 400;
    position: absolute;
    left: 0;
    bottom: -17px;
    letter-spacing: 0.08em;
  }
  section#top_business {
    color: #333333;
    position: relative;
  }
  section#top_business::before {
    content: "";
    background: url(/common/image/top/line_bg4_sp.png) no-repeat;
    background-size: auto 100%;
    aspect-ratio: 750/574;
    position: absolute;
    left: 0;
    right: 0;
    top: -190px;
    z-index: -1;
  }
  section#top_business .top_contents {
    padding: 34px 22px 150px;
  }
  section#top_business .top_contents .data_area h2 {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: 0.12em;
  }
  section#top_business .top_contents .data_area .description {
    margin-top: 27px;
    padding-left: 25px;
    font-size: 1.4rem;
    line-height: 1.57;
    position: relative;
  }
  section#top_business .top_contents .data_area .description::before {
    content: "";
    width: 16px;
    height: 1px;
    background: #83a9db;
    position: absolute;
    top: 9px;
    left: 0;
  }
  section#top_business .top_contents .data_area .link_list {
    margin-top: 55px;
    border-top: 1px solid #e4e9f3;
  }
  section#top_business .top_contents .data_area .link_list > li {
    border-bottom: 1px solid #e4e9f3;
    padding: 18px 0 32px;
  }
  section#top_business .top_contents .data_area .link_list > li.coming_soon {
    padding: 35px 0 0;
  }
  section#top_business .top_contents .data_area .link_list > li.coming_soon .link {
    padding: 15px 0 0;
    background: url(/common/image/top/business_saunasalon_sp.jpg) no-repeat;
    background-size: cover;
    aspect-ratio: 654/280;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #FFFFFF;
    border-radius: 8px;
  }
  section#top_business .top_contents .data_area .link_list > li.coming_soon .link span.en {
    font-size: 1.9rem;
    font-weight: 400;
  }
  section#top_business .top_contents .data_area .link_list > li.coming_soon .link span.txt {
    font-size: 1.4rem;
    font-weight: 400;
  }
  section#top_business .top_contents .data_area .link_list > li .link a {
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 45px;
    height: 35px;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 500;
    color: #333333;
  }
  section#top_business .top_contents .data_area .link_list > li .link a::before {
    content: "";
    width: 35px;
    height: 35px;
    background: url(/common/image/base/link_arw2.png) no-repeat;
    position: absolute;
    background-size: 35px 35px;
    left: 0;
    top: 0;
  }
  section#top_business .top_contents .data_area .link_list > li .image_list {
    margin-top: 18px;
    display: flex;
    gap: 0 13px;
  }
  section#top_business .top_contents .data_area .link_list > li .image_list li img {
    border-radius: 4px;
    width: 100%;
    height: auto;
  }
  section#top_business .top_contents .data_area .link_list > li .image_list li:nth-of-type(1), section#top_business .top_contents .data_area .link_list > li .image_list li:nth-of-type(3) {
    flex: 4;
  }
  section#top_business .top_contents .data_area .link_list > li .image_list li:nth-of-type(2) {
    flex: 7;
  }
  section#top_recruit {
    padding: 0 0 0 16px;
    height: 600px;
    position: relative;
  }
  section#top_recruit .top_recruit_contents {
    position: absolute;
    inset: auto 40px 60px 32px;
    color: #FFFFFF;
  }
  section#top_recruit .top_recruit_contents h2 {
    position: relative;
    line-height: 1.42;
    font-size: 2.8rem;
    font-weight: 600;
    letter-spacing: 0.12em;
  }
  section#top_recruit .top_recruit_contents h2::before {
    content: "";
    width: 114px;
    height: 45px;
    background: url(/common/image/top/joinus_sp.png) no-repeat;
    background-size: cover;
    position: absolute;
    left: -17px;
    top: -43px;
  }
  section#top_recruit .top_recruit_contents .description {
    margin-top: 18px;
    font-size: 1.4rem;
    line-height: 1.57;
  }
  section#top_recruit .top_recruit_contents .more_link {
    margin-top: 20px;
  }
  section#top_recruit .top_recruit_contents .more_link a {
    color: #ffffff;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #FFFFFF;
    border-left: none;
    border-top-right-radius: 45px;
    border-bottom-right-radius: 45px;
    padding-left: 32px;
    padding: 0 25px 1px 38px;
    margin-left: 22px;
    height: 46px;
    font-size: 1.4rem;
  }
  section#top_recruit .top_recruit_contents .more_link a::before {
    content: "";
    width: 46px;
    height: 46px;
    background: url(/common/image/base/link_arw2_w.png) no-repeat;
    background-size: 46px 46px;
    position: absolute;
    left: -22px;
    top: calc(50% - 23px);
  }
  section#top_recruit .top_recruit_bg {
    position: absolute;
    inset: 0;
    z-index: -1;
    overflow: hidden;
  }
  section#top_recruit .top_recruit_bg .bx-wrapper {
    box-shadow: none;
    border: none;
    background: none;
    margin: 0;
  }
  section#top_recruit .top_recruit_bg ul.slide li img {
    width: 100%;
    height: auto;
  }
}
