@charset "UTF-8";
@import url("common_base.css");
@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* あまり触らないcssは管理 */
@media screen and (min-width: 768px), print {
  /* ★ body */
  body {
    font-size: 16px;
    overflow-x: hidden;
    line-height: 1.8;
    min-width: 1280px;
    color: #111111;
  }
  /* ★ header */
  header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    pointer-events: none;
  }
  header > .pc > .hh-logo {
    width: 190px;
    height: 190px;
  }
  header > .pc > .hh-logo > a {
    position: absolute;
    display: block;
    width: 120px;
    height: 120px;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    pointer-events: auto;
  }
  header > .pc > .hh-logo > a > img {
    position: absolute;
    display: block;
    top: -35px;
    left: -35px;
    width: 190px;
    height: 190px;
    transition: opacity 0.2s ease 0s;
  }
  header > .pc > .hh-logo > a:hover > img {
    opacity: 0.7;
  }
  /* ★ メガメニュー関係 */
  .pc-menu {
    display: block;
    position: fixed;
    top: 40px;
    right: 40px;
    width: 70px;
    height: 70px;
    z-index: 500;
    border-radius: 50%;
    cursor: pointer;
  }
  .pc-menu > img {
    display: block;
    max-width: 100%;
    transition: opacity 0.2s ease 0s;
  }
  .pc-menu:hover > img {
    opacity: 0.8;
  }
  #pc-menu-open {
    display: none;
    background: #EEEEEE;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    z-index: 10000;
    overflow: scroll;
  }
  #pc-menu-open .open-close-01 {
    display: block;
    position: absolute;
    top: 40px;
    right: 40px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    cursor: pointer;
  }
  #pc-menu-open .open-close-01 > img {
    display: block;
    max-width: 100%;
    transition: opacity 0.2s ease 0s;
  }
  #pc-menu-open .open-close-01:hover > img {
    opacity: 0.8;
  }
  #pc-menu-open .open-main-Box {
    width: 1080px;
    padding-top: 70px;
    padding-bottom: 78px;
    margin: 0 auto;
  }
  #pc-menu-open .open-main-Box .ttl {
    margin-bottom: 30px;
  }
  #pc-menu-open .open-main-Box .con-Box {
    margin-bottom: 30px;
  }
  #pc-menu-open .list-Box .con-Box {
    margin-bottom: 30px;
  }
  #pc-menu-open .open-close-02 {
    width: 300px;
    line-height: 1;
    cursor: pointer;
    font-weight: bold;
    margin: 0 auto;
    color: #fff;
    padding: 10px 50px;
    font-size: 1em;
    text-align: center;
    background: #000;
  }
  #pc-menu-open {
    background-size: 1920px 800px;
    background-repeat: no-repeat;
    background-position: left -7.5px top 0;
  }
  #pc-menu-open .pc-menu-buttons {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 320px;
    height: 60px;
    background-color: #111111;
    font-size: 15px;
    line-height: 1;
    color: white;
    text-decoration: none;
    padding-left: 25px;
    letter-spacing: 0.05em;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button::before, #pc-menu-open .pc-menu-buttons > .pc-menu-button::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 1px;
    background-color: white;
    top: 50%;
    transition: transform 0.2s ease 0s;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button::after {
    right: 21px;
    transform-origin: left center;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button::before {
    right: 29px;
    transform-origin: right center;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button:hover {
    text-decoration: none;
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button:hover::after {
    transform: rotate(-135deg);
  }
  #pc-menu-open .pc-menu-buttons > .pc-menu-button:hover::before {
    transform: rotate(-45deg);
  }
  #pc-menu-open .pc-menu-body {
    margin-top: 105px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sub-h {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #95885F;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sub-h a {
    color: inherit;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sub-h a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top {
    display: flex;
    justify-content: space-between;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__home {
    width: 435px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__home .ff-home-txt {
    margin-top: 23px;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.8823529412;
    letter-spacing: 0.1em;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__home .ff-home-txt > a {
    text-decoration: none;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__home .ff-home-txt > a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__nav {
    width: 490px;
    margin-right: 25px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__nav > .row {
    display: flex;
    justify-content: flex-start;
    gap: 75px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-top__nav > .row + .row {
    margin-top: 48px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav-block:first-child {
    width: 230px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav {
    margin-top: 11px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav > li {
    font-size: 14px;
    line-height: 2.1428571429;
    letter-spacing: 0.05em;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav > li::before {
    content: "-";
    margin-right: 1em;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav > li > a {
    color: inherit;
    text-decoration: none;
    white-space: nowrap;
  }
  #pc-menu-open .pc-menu-body .pc-menu-nav > li > a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-bottom {
    margin-top: 38px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  #pc-menu-open .pc-menu-body .pc-menu-company {
    display: flex;
    gap: 34px;
    margin-left: -3px;
    margin-top: 4px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-company__logo {
    width: 98px;
    height: 79px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-company__logo > img {
    display: block;
    max-width: 100%;
  }
  #pc-menu-open .pc-menu-body .pc-menu-company__text {
    padding-top: 18px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6666666667;
    letter-spacing: 0.05em;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns {
    display: flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 2px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns__followus {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns__list {
    display: flex;
    gap: 10px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns__list > li > a {
    transition: opacity 0.4s ease 0s;
    display: block;
    width: 40px;
    height: 40px;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns__list > li > a:hover {
    opacity: 0.7;
  }
  #pc-menu-open .pc-menu-body .pc-menu-sns__list > li > a > img {
    display: block;
    max-width: 100%;
  }
  /* ★ 下層 h1 エリア */
  h1.main-title {
    width: 100%;
    min-width: 1100px;
    background: #333;
    color: #fff;
    padding: 50px 0;
    text-align: center;
  }
  h1.main-title .en {
    display: block;
    font-size: 1rem;
    margin-bottom: 20px;
    text-transform: uppercase;
  }
  h1.main-title .jp {
    display: block;
    font-size: 2rem;
    font-weight: bold;
  }
  h2.sub-title {
    background: #525252;
    padding: 25px 20px;
    color: #fff;
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 7px;
    text-align: center;
  }
  /* ★ パンくず */
  .seo_bread_list {
    max-width: 1100px;
    width: 100%;
    padding: 20px 0;
    margin: 0 auto 30px;
    font-size: 16px;
    line-height: 1.4;
  }
  .seo_bread_list li {
    margin-right: 20px;
    float: left;
  }
  .seo_bread_list li::after {
    content: " >";
  }
  .seo_bread_list li:last-child::after {
    content: "";
  }
  /* ★ グローバルメニュー */
  #g-nav {
    width: 1100px;
    margin: 0px auto 10px auto;
    padding: 20px 0;
    text-align: center;
    font-size: 0.875em;
  }
  #g-nav li.list {
    position: relative;
    display: inline-block;
    margin-right: 2px;
  }
  #g-nav li.list span {
    cursor: pointer;
  }
  #g-nav li.list span,
  #g-nav li.list a {
    border-right: 1px solid #999;
    display: block;
    text-align: center;
    padding: 10px 20px;
  }
  #g-nav li.list:first-child a {
    border-left: 1px solid #999;
  }
  #g-nav .dropmenu li.list ul.sub {
    visibility: hidden;
    opacity: 0;
    transition: 0s;
    position: absolute;
    top: 35px;
    left: 0;
    margin: 0;
    padding: 0;
    z-index: 500;
    width: 220px;
  }
  #g-nav .dropmenu li.list:hover ul {
    visibility: visible;
    opacity: 1;
    display: block;
  }
  #g-nav .dropmenu li.list ul li:last-child a {
    border-bottom: 1px solid #ccc;
  }
  #g-nav .dropmenu li.list ul li a {
    visibility: hidden;
    opacity: 0;
    transition: 0.9s;
    background: #fff;
    display: block;
    width: 220px;
    padding: 10px;
    color: #000;
    border: 1px solid #ccc;
    border-bottom: none;
  }
  #g-nav .dropmenu li.list:hover ul li a {
    visibility: visible;
    opacity: 1;
  }
  /* ★ サイドバナー */
  .side-fix {
    display: none;
    position: fixed;
    top: 150px;
    right: 0;
    z-index: 20;
  }
  .side-fix > ul {
    width: 54px;
  }
  .side-fix > ul > li > a {
    display: block;
    background-color: #fff;
    transition: background-color 0.2s ease 0s;
  }
  .side-fix > ul > li > a > img {
    display: block;
    max-width: 100%;
  }
  .side-fix > ul > li > a:hover {
    background-color: #e1e1e1;
  }
  .side-fix > ul > li + li {
    border-top: 1px solid #111111;
  }
  /* ★ エンドバナー */
  #ee {
    position: relative;
    padding-top: 75px;
    padding-bottom: 95px;
    background-color: #95885F;
    z-index: 10;
  }
  #ee::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 300px;
    bottom: 0;
    left: 0;
    background-color: #202121;
    z-index: 1;
  }
  #ee > .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 1020px;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
  }
  #ee .h-end-bnr {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    margin-bottom: 24px;
    font-size: 50px;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-text {
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-links {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 54px;
  }
  #ee .end-bnr-link {
    position: relative;
    width: 480px;
    display: block;
    text-decoration: none;
    background-color: #fff;
  }
  #ee .end-bnr-link::before, #ee .end-bnr-link::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 1px;
    background-color: #111111;
    bottom: 30px;
    transition: transform 0.2s ease 0s;
  }
  #ee .end-bnr-link::after {
    right: 30px;
    transform-origin: left center;
  }
  #ee .end-bnr-link::before {
    right: 38px;
    transform-origin: right center;
  }
  #ee .end-bnr-link:hover {
    text-decoration: none;
  }
  #ee .end-bnr-link:hover::after {
    transform: rotate(-135deg);
  }
  #ee .end-bnr-link:hover::before {
    transform: rotate(-45deg);
  }
  #ee .end-bnr-link:hover {
    text-decoration: none;
  }
  #ee .end-bnr-link:hover .end-bnr-link__image > figure > img {
    transform: scale(1.05);
  }
  #ee .end-bnr-link__image {
    position: relative;
  }
  #ee .end-bnr-link__image > figure {
    width: 100%;
    aspect-ratio: 480/260;
    overflow: hidden;
  }
  #ee .end-bnr-link__image > figure > img {
    display: block;
    max-width: 100%;
    transition: transform 0.2s ease 0s;
  }
  #ee .end-bnr-link__image > p {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    position: absolute;
    width: -moz-fit-content;
    width: fit-content;
    height: 1em;
    top: 18px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 30px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-link__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 34px;
    padding-bottom: 46px;
  }
  #ee .end-bnr-link__text > p:nth-child(1) {
    margin-bottom: 20px;
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-link__text > p:nth-child(2) {
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-tel-working {
    margin-top: 74px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  #ee .end-bnr-tel-working > .tel {
    display: flex;
    align-items: center;
    gap: 19px;
    margin-bottom: 21px;
  }
  #ee .end-bnr-tel-working > .tel > .tel__icon {
    width: 37px;
    height: 37px;
  }
  #ee .end-bnr-tel-working > .tel > .tel__icon > img {
    display: block;
    max-width: 100%;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    padding-top: 3px;
    font-size: 32px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num > a {
    color: inherit;
    text-decoration: none;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num > a:hover {
    text-decoration: none;
  }
  #ee .end-bnr-tel-working > .working-hour-day {
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-circle {
    position: absolute;
    width: 103px;
    aspect-ratio: 1/1;
    top: -51px;
    left: calc(50% + 449px);
    z-index: 1;
    animation: rotation 12s linear infinite;
    transform-origin: center center;
    pointer-events: none;
  }
  #ee .end-bnr-circle > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center center;
       object-position: center center;
  }
  /* ★ page-top */
  /* ★ フッター */
  footer.footer {
    padding-top: 75px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 45px;
  }
  footer.footer > .inner {
    max-width: 1520px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 clamp(20px, (100vw - 1280px) / (640) * 30 + 20px, 50px) 33px;
    border-bottom: 1px solid #CECECE;
  }
  footer.footer .footer-sub-h {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #95885F;
  }
  footer.footer .footer-sub-h a {
    color: inherit;
  }
  footer.footer .footer-sub-h a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  footer.footer .footer-top {
    display: flex;
    justify-content: space-between;
  }
  footer.footer .footer-top__home {
    width: 435px;
  }
  footer.footer .footer-top__home .ff-home-txt {
    margin-top: 23px;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.8823529412;
    letter-spacing: 0.1em;
  }
  footer.footer .footer-top__home .ff-home-txt > a {
    text-decoration: none;
  }
  footer.footer .footer-top__home .ff-home-txt > a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  footer.footer .footer-top__nav {
    width: 485px;
    margin-right: clamp(0px, (100vw - 1280px) / (640) * 29 + 0px, 29px);
  }
  footer.footer .footer-top__nav > .row {
    display: flex;
    justify-content: flex-start;
    gap: 75px;
  }
  footer.footer .footer-top__nav > .row + .row {
    margin-top: 47px;
  }
  footer.footer .footer-nav-block:first-child {
    width: 230px;
  }
  footer.footer .footer-nav {
    margin-top: 12px;
  }
  footer.footer .footer-nav > li {
    font-size: 14px;
    line-height: 2.1428571429;
    letter-spacing: 0.05em;
  }
  footer.footer .footer-nav > li::before {
    content: "-";
    margin-right: 12px;
  }
  footer.footer .footer-nav > li > a {
    color: inherit;
    text-decoration: none;
    white-space: nowrap;
  }
  footer.footer .footer-nav > li > a:hover {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  footer.footer .footer-bottom {
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  footer.footer .footer-company {
    display: flex;
    margin-left: -3px;
    padding-bottom: 9px;
    gap: 34px;
  }
  footer.footer .footer-company__logo {
    width: 98px;
    height: 79px;
  }
  footer.footer .footer-company__logo > img {
    display: block;
    max-width: 100%;
  }
  footer.footer .footer-company__text {
    padding-top: 18px;
    padding-bottom: 1px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6666666667;
    letter-spacing: 0.05em;
  }
  footer.footer .footer-sns {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  footer.footer .footer-sns__followus {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  footer.footer .footer-sns__list {
    display: flex;
    gap: 10px;
  }
  footer.footer .footer-sns__list > li > a {
    transition: opacity 0.4s ease 0s;
    display: block;
    width: 40px;
    height: 40px;
  }
  footer.footer .footer-sns__list > li > a:hover {
    opacity: 0.7;
  }
  footer.footer .footer-sns__list > li > a > img {
    display: block;
    max-width: 100%;
  }
  /* ★ コピーライト */
  .copyright {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    display: block;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0.05em;
    text-align: center;
    margin-top: 21px;
  }
  .copyright > br {
    display: none;
  }
  /* サンクスページ */
  .sec-thanks {
    padding-top: 80px;
    padding-bottom: 120px;
  }
  .sec-thanks > .inner {
    padding: 40px;
    width: 800px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
  }
  .sec-thanks .thank-ttl {
    font-family: "Shippori Mincho", serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #111111;
  }
  .sec-thanks p:not([class]) {
    font-size: 16px;
    line-height: 1.875;
  }
  .sec-thanks p:not([class]) + .thank-ttl {
    margin-top: 1.5em;
  }
  .sec-thanks .btnArea-s {
    margin-top: 40px;
  }
  .sec-thanks .btnArea-s > a {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    margin-left: auto;
    margin-right: auto;
    width: 320px;
    height: 60px;
    position: relative;
    display: flex;
    align-items: center;
    border: 1px solid #111111;
    font-size: 15px;
    line-height: 1;
    color: inherit;
    text-decoration: none;
    padding-left: 25px;
    letter-spacing: 0.1em;
  }
  .sec-thanks .btnArea-s > a::before, .sec-thanks .btnArea-s > a::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 1px;
    background-color: #111111;
    top: 50%;
    transition: transform 0.2s ease 0s;
  }
  .sec-thanks .btnArea-s > a::after {
    right: 21px;
    transform-origin: left center;
  }
  .sec-thanks .btnArea-s > a::before {
    right: 29px;
    transform-origin: right center;
  }
  .sec-thanks .btnArea-s > a:hover {
    text-decoration: none;
  }
  .sec-thanks .btnArea-s > a:hover::after {
    transform: rotate(-135deg);
  }
  .sec-thanks .btnArea-s > a:hover::before {
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 767px) {
  /* ★ body */
  body {
    overflow: hidden;
    font-size: 16px;
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    line-height: 1.6;
  }
  /* ★ header */
  .sp-header {
    display: flex;
    height: 16.9082125604vw;
  }
  .sp-header > .hh-logo {
    flex: 1;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-left: 3.8647342995vw;
  }
  .sp-header > .hh-logo > a {
    display: block;
    width: 43.7198067633vw;
    height: 7.729468599vw;
  }
  .sp-header > .hh-logo > a > img {
    display: block;
    max-width: 100%;
    transition: opacity 0.2s ease 0s;
  }
  .sp-header > .hh-logo > a:hover > img {
    opacity: 0.7;
  }
  .sp-header > .h-menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 16.9082125604vw;
    aspect-ratio: 1/1;
    z-index: 997;
  }
  .sp-header > .h-menu > img {
    display: block;
    max-width: 100%;
  }
  /* ★ メガメニュー関係 */
  nav#sp-global-nav {
    z-index: 999;
    overflow: scroll;
    position: fixed;
    top: 0;
    width: 100vw;
    height: 100vh;
    display: none;
    background-color: #EEEEEE;
    box-sizing: border-box;
  }
  nav#sp-global-nav .sp-global-nav-header {
    display: flex;
    height: 16.9082125604vw;
  }
  nav#sp-global-nav .sp-global-nav-header > .hh-logo {
    flex: 1;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-left: 3.8647342995vw;
  }
  nav#sp-global-nav .sp-global-nav-header > .hh-logo > a {
    display: block;
    width: 43.7198067633vw;
    height: 7.729468599vw;
  }
  nav#sp-global-nav .sp-global-nav-header > .hh-logo > a > img {
    display: block;
    max-width: 100%;
    transition: opacity 0.2s ease 0s;
  }
  nav#sp-global-nav .sp-global-nav-header > .hh-logo > a:hover > img {
    opacity: 0.7;
  }
  nav#sp-global-nav .sp-global-nav-header > .open-close-01 {
    position: fixed;
    top: 0;
    right: 0;
    width: 16.9082125604vw;
    aspect-ratio: 1/1;
    z-index: 997;
  }
  nav#sp-global-nav .sp-global-nav-header > .open-close-01 > img {
    display: block;
    max-width: 100%;
  }
  nav#sp-global-nav > .open-main-Box {
    margin-top: 7.2463768116vw;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-buttons {
    display: flex;
    justify-content: space-between;
    width: 86.9565217391vw;
    margin-left: auto;
    margin-right: auto;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-buttons > a {
    display: block;
    width: 27.5362318841vw;
    background-color: #fff;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-buttons > a > img {
    display: block;
    max-width: 100%;
    transition: opacity 0.2s ease 0s;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-buttons > a:hover > img {
    opacity: 0.5;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block {
    margin-top: 8.4541062802vw;
    font-size: 3.3816425121vw;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block a {
    display: flex;
    height: 14.4927536232vw;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #D8D8D8;
    transition: background-color 0.2s ease 0s;
    padding-right: 7.729468599vw;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block a::after {
    content: ">";
    display: block;
    line-height: 1;
    transition: transform 0.2s ease 0s;
    letter-spacing: 0;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block a:hover {
    text-decoration: none;
    background-color: rgba(255, 255, 255, 0.4);
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block a:hover::after {
    transform: translateX(50%);
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block .sp-menu-sub-h {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    color: #95885F;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block + .sp-menu-nav-block {
    margin-top: 4.347826087vw;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block > a > .sp-menu-sub-h {
    padding-left: 6.2801932367vw;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block > .sp-menu-sub-h {
    display: flex;
    height: 14.4927536232vw;
    align-items: center;
    border-bottom: 1px solid #D8D8D8;
    padding-left: 6.2801932367vw;
  }
  nav#sp-global-nav > .open-main-Box > .sp-menu-body .sp-menu-nav-block > .sp-menu-nav > li > a {
    padding-left: 8.6956521739vw;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-bottom {
    margin-top: 15.4589371981vw;
    padding-bottom: 15.4589371981vw;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-company {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-company__logo {
    width: 20.7729468599vw;
    height: 16.6666666667vw;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-company__logo > img {
    display: block;
    max-width: 100%;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-company__text {
    margin-top: 6.7632850242vw;
    font-size: 3.1400966184vw;
    font-weight: 400;
    line-height: 1.5833333333;
    letter-spacing: 0.05em;
    text-align: center;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns {
    display: flex;
    align-items: center;
    gap: 3.6231884058vw;
    margin-top: 8.4541062802vw;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns__followus {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 3.1400966184vw;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns__list {
    display: flex;
    gap: 2.4154589372vw;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns__list > li > a {
    transition: opacity 0.4s ease 0s;
    display: block;
    width: 9.6618357488vw;
    height: 9.6618357488vw;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns__list > li > a:hover {
    opacity: 0.7;
  }
  nav#sp-global-nav > .open-main-Box .sp-menu-sns__list > li > a > img {
    display: block;
    max-width: 100%;
  }
  /* ★ 下層 h1 エリア */
  h1.main-title {
    width: 100%;
    background: #333;
    color: #fff;
    padding: 7% 0;
    text-align: center;
    margin-bottom: 4%;
  }
  h1.main-title .en {
    display: block;
    font-size: 3vw;
    margin-bottom: 2vw;
    text-transform: uppercase;
  }
  h1.main-title .jp {
    display: block;
    font-size: 4vw;
    font-weight: bold;
  }
  h2.sub-title {
    background: #525252;
    font-weight: bold;
    padding: 3%;
    color: #fff;
    margin-bottom: 5%;
    font-size: 5vw;
    letter-spacing: 4px;
    text-align: center;
  }
  /* ★ パンくず */
  .seo_bread_list {
    width: 100%;
    padding: 5% 5.797vw;
    margin: 0 auto;
    font-size: 1.2rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "NotoSansCJKjp", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: normal;
    font-size: 2.899vw;
    line-height: 5.797vw;
    text-align: left;
    color: #a4a4a4;
  }
  .seo_bread_list a {
    color: #a4a4a4;
  }
  /* ★ サイドバナー */
  .sp-fix-list {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 18.115942029vw;
    z-index: 996;
    display: flex;
  }
  .sp-fix-list::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 7.2463768116vw;
    bottom: 100%;
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0) 100%);
  }
  .sp-fix-list > .sp-fix-item {
    position: relative;
    flex-basis: 27.5362318841vw;
    background-image: linear-gradient(0deg, #e2e2e2 0%, #fff 100%);
    transition: filter 0.2s ease 0s;
  }
  .sp-fix-list > .sp-fix-item::before {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #EFEFEF;
  }
  .sp-fix-list > .sp-fix-item:first-child::before {
    display: none;
  }
  .sp-fix-list > .sp-fix-item:hover {
    filter: brightness(1.05);
  }
  .sp-fix-list > .sp-fix-item--tel {
    flex-basis: 17.3913043478vw;
    background-color: #111111;
    background-image: none;
  }
  .sp-fix-list > .sp-fix-item--tel:hover {
    filter: brightness(2.5);
  }
  .sp-fix-list > .sp-fix-item--tel + .sp-fix-item::before {
    display: none;
  }
  .sp-fix-list > .sp-fix-item > a {
    display: block;
  }
  .sp-fix-list > .sp-fix-item > a > img {
    display: block;
    max-width: 100%;
  }
  .sp-fix-list--single > .sp-fix-item {
    flex-basis: auto;
  }
  /* ★ エンドバナー */
  #ee {
    position: relative;
    padding-top: 14.9758454106vw;
    padding-bottom: 19.3236714976vw;
    background-color: #95885F;
    z-index: 10;
  }
  #ee::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 79.7101449275vw;
    bottom: 0;
    left: 0;
    background-color: #202121;
    z-index: 1;
  }
  #ee > .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 91.7874396135vw;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
  }
  #ee .h-end-bnr {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    margin-bottom: 5.7971014493vw;
    font-size: 7.2463768116vw;
    line-height: 1;
    letter-spacing: 0.05em;
    text-align: center;
  }
  #ee .end-bnr-text {
    margin-bottom: 9.6618357488vw;
    font-size: 3.6231884058vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
    text-align: center;
  }
  #ee .end-bnr-links {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 7.2463768116vw;
  }
  #ee .end-bnr-link {
    position: relative;
    width: 100%;
    display: block;
    text-decoration: none;
    background-color: #fff;
  }
  #ee .end-bnr-link::before, #ee .end-bnr-link::after {
    content: "";
    position: absolute;
    width: 1.9323671498vw;
    height: 1px;
    background-color: #111111;
    bottom: 7.2463768116vw;
    transition: transform 0.2s ease 0s;
  }
  #ee .end-bnr-link::after {
    right: 4.8309178744vw;
    transform-origin: left center;
  }
  #ee .end-bnr-link::before {
    right: 6.7632850242vw;
    transform-origin: right center;
  }
  #ee .end-bnr-link:hover {
    text-decoration: none;
  }
  #ee .end-bnr-link:hover::after {
    transform: rotate(-135deg);
  }
  #ee .end-bnr-link:hover::before {
    transform: rotate(-45deg);
  }
  #ee .end-bnr-link:hover {
    text-decoration: none;
  }
  #ee .end-bnr-link:hover .end-bnr-link__image > figure > img {
    transform: scale(1.05);
  }
  #ee .end-bnr-link__image {
    position: relative;
  }
  #ee .end-bnr-link__image > figure {
    width: 100%;
    aspect-ratio: 380/220;
    overflow: hidden;
  }
  #ee .end-bnr-link__image > figure > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    transition: transform 0.2s ease 0s;
  }
  #ee .end-bnr-link__image > p {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    position: absolute;
    width: -moz-fit-content;
    width: fit-content;
    height: 1em;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 7.2463768116vw;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-link__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 7.729468599vw;
    padding-bottom: 10.1449275362vw;
  }
  #ee .end-bnr-link__text > p:nth-child(1) {
    margin-bottom: 3.8647342995vw;
    font-size: 4.1062801932vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-link__text > p:nth-child(2) {
    font-size: 3.3816425121vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
  }
  #ee .end-bnr-tel-working {
    margin-top: 14.4927536232vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  #ee .end-bnr-tel-working > .tel {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4.1062801932vw;
    width: 100%;
    height: 24.154589372vw;
    margin-bottom: 4.347826087vw;
    border: 1px solid white;
  }
  #ee .end-bnr-tel-working > .tel > .tel__icon {
    width: 7.2463768116vw;
    height: 7.2463768116vw;
  }
  #ee .end-bnr-tel-working > .tel > .tel__icon > img {
    display: block;
    max-width: 100%;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 5.7971014493vw;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num > a {
    color: inherit;
    text-decoration: none;
  }
  #ee .end-bnr-tel-working > .tel > .tel__num > a:hover {
    text-decoration: none;
  }
  #ee .end-bnr-tel-working > .working-hour-day {
    font-size: 3.3816425121vw;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.05em;
    color: white;
  }
  #ee .end-bnr-circle {
    position: absolute;
    width: 16.6666666667vw;
    aspect-ratio: 1/1;
    top: -8.2125603865vw;
    right: 6.038647343vw;
    z-index: 1;
    animation: rotation 12s linear infinite;
    transform-origin: center center;
    pointer-events: none;
  }
  #ee .end-bnr-circle > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center center;
       object-position: center center;
  }
  /* ★ sp-page-top */
  .sp-page-top {
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 18.115942029vw;
  }
  .sp-page-top > a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding: 1em 2em;
    font-size: 3.6231884058vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 1px;
  }
  /* ★ フッター */
  footer.footer {
    padding-bottom: 43.4782608696vw;
  }
  footer.footer > .inner {
    max-width: 86.9565217391vw;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 9.6618357488vw;
    border-bottom: 1px solid #CECECE;
  }
  footer.footer .footer-top {
    display: none;
  }
  footer.footer .footer-bottom {
    margin-top: 16.9082125604vw;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  footer.footer .footer-company {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  footer.footer .footer-company__logo {
    width: 20.7729468599vw;
    height: 16.6666666667vw;
  }
  footer.footer .footer-company__logo > img {
    display: block;
    max-width: 100%;
  }
  footer.footer .footer-company__text {
    margin-top: 6.7632850242vw;
    font-size: 3.1400966184vw;
    font-weight: 400;
    line-height: 1.5833333333;
    letter-spacing: 0.05em;
    text-align: center;
  }
  footer.footer .footer-sns {
    display: flex;
    align-items: center;
    gap: 3.6231884058vw;
    margin-top: 8.4541062802vw;
  }
  footer.footer .footer-sns__followus {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 3.1400966184vw;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  footer.footer .footer-sns__list {
    display: flex;
    gap: 2.4154589372vw;
  }
  footer.footer .footer-sns__list > li > a {
    transition: opacity 0.4s ease 0s;
    display: block;
    width: 9.6618357488vw;
    height: 9.6618357488vw;
  }
  footer.footer .footer-sns__list > li > a:hover {
    opacity: 0.7;
  }
  footer.footer .footer-sns__list > li > a > img {
    display: block;
    max-width: 100%;
  }
  /* ★ コピーライト */
  .copyright {
    margin-top: 4.347826087vw;
    font-size: 2.8985507246vw;
    line-height: 2.2;
    display: block;
    text-align: center;
  }
  .copyright > span {
    display: none;
  }
  /* サンクスページ */
  .sec-thanks {
    padding-top: 4.8309178744vw;
    padding-bottom: 19.3236714976vw;
  }
  .sec-thanks > .inner {
    width: 85.5072463768vw;
    padding: 4.8309178744vw;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
  }
  .sec-thanks .thank-ttl {
    font-family: "Shippori Mincho", serif;
    font-weight: 600;
    font-size: 4.1062801932vw;
    line-height: 1;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #111111;
  }
  .sec-thanks p:not([class]) {
    font-size: 3.3816425121vw;
    line-height: 1.875;
  }
  .sec-thanks p:not([class]) + .thank-ttl {
    margin-top: 1.5em;
  }
  .sec-thanks .btnArea-s {
    margin-top: 7.2463768116vw;
  }
  .sec-thanks .btnArea-s > a {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    width: 67.6328502415vw;
    height: 14.4927536232vw;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    align-items: center;
    border: 1px solid #111111;
    font-size: 3.3816425121vw;
    line-height: 1;
    color: inherit;
    text-decoration: none;
    padding-left: 5.5555555556vw;
    letter-spacing: 0.1em;
  }
  .sec-thanks .btnArea-s > a::before, .sec-thanks .btnArea-s > a::after {
    content: "";
    position: absolute;
    width: 1.9323671498vw;
    height: 1px;
    background-color: #111111;
    top: 50%;
    transition: transform 0.2s ease 0s;
  }
  .sec-thanks .btnArea-s > a::after {
    right: 5.0724637681vw;
    transform-origin: left center;
  }
  .sec-thanks .btnArea-s > a::before {
    right: 7.0048309179vw;
    transform-origin: right center;
  }
  .sec-thanks .btnArea-s > a:hover {
    text-decoration: none;
  }
  .sec-thanks .btnArea-s > a:hover::after {
    transform: rotate(-135deg);
  }
  .sec-thanks .btnArea-s > a:hover::before {
    transform: rotate(-45deg);
  }
}