@media screen and (max-width: 1280px) {

  .hd-logo {
    width: 300px;
    margin-right: 25px;
  }
  .hd-btn .btn {
    width: 180px;
    font-size: 15px;
  }
  .hd-tagline {
    font-size: 11px;
  }
  .hd-address {
    font-size: 11px;
  }
  .hd-call-text {
    font-size: 12px;
  }
  .hd-call a {
    font-size: 25px;
  }
  .hd-call a .num {
    font-size: 16px;
  }

}
@media screen and (max-width: 1100px) {
  .bg-menu .hd-right {
    justify-content: center;
    flex-wrap: wrap;
  }
  .bg-menu .hd-btn {
    justify-content: center;
    width: 100%;
    margin-bottom: 20px;
  }
  .bg-menu .hd-btn .btn {
    width: 180px;
  }
  .bg-menu .hd-btn .btn::before {
    display: block;
  }
  .bg-menu .hd-btn .btn br {
    display: none;
  }
}
@media screen and (max-width: 1000px) {

  .hd-logo {
    width: 280px;
    margin-right: 20px;
  }
  .hd-btn {
    gap: 8px;
  }
  .hd-btn .btn {
    width: 140px;
    font-size: 12px;
  }
  .hd-btn .btn::before {
    display: none;
  }
  .hd-btn .icon {
    width: 22px;
    height: 22px;
  }
  .hd-address {
    display: none;
  }
  .hd-call-text {
    font-size: 10px;
  }
  .hd-call a {
    font-size: 24px;
  }
  .hd-call a .num {
    font-size: 15px;
  }

}
@media screen and (max-width: 850px) {
  .hd-logo {
    width: 250px;
    margin-right: 10px;
  }
  /* .hd-tagline {
    display: none;
  } */
  .hd-tagline {
    height: 20px;
  }
  #header {
    top: 20px;
    height: 100px;
  }
  .hd-btn .btn {
    width: 130px;
    font-size: 11px;
  }
  .hd-address {
    display: none;
  }
}
@media screen and (max-width: 800px) {
  .hd-logo {
    width: 230px;
  }
}
@media screen and (min-width: 751px) {
  .sp {
    display: none !important;
  }

  .to-top:hover {
    background: #d5bf9b;
  }

  a:not([target="_blank"]):hover {
    opacity: 0.7;
  }

  #menu-toggle:hover {
    opacity: 0.6;
  }

  .logo a {
    opacity: 1 !important;
  }

  .hd-call a:hover,
  .call-web a:hover,
  .ft-call a:hover,
  .box12-logo-img a:hover,
  a:not([href]):hover,
  .ft-logo-img a:hover,
  .box-insta:hover {
    opacity: 1 !important;
  }

  .tab-box:hover {
    background-color: #333;
    color: #fff;
  }

  .box5-list li:not(:last-child) .frame-txt2 {
    min-height: 184px;
  }

  .box5-list li:nth-child(2) .txt2 {
    padding: 8px 10px 17px;
    line-height: 1.4;
  }

  .box6-content2 {
    position: relative;
    padding-right: 12px;
  }

  .box-list-item-desc:hover {
    opacity: 0.9;
  }

  .box5-list-desc:hover {
    opacity: 0.8;
  }

  .list-box-main ul {
    margin-right: 92px;
  }

  .box5-bnr-img {
    position: absolute;
    top: 0;
    left: 0;
  }

  .box-list-link {
    margin-left: -280px;
  }

  .box14 {
    position: relative;
    margin-top: -128px;
    z-index: 1;
  }

  .frame-footer {
    margin-top: -30px;
  }
}

/* end screen-min:751px */

@media screen and (min-width: 751px) and (max-height: 750px) {
  .bg-menu {
    padding-top: 220px;
  }
}

@media screen and (min-width: 751px) and (max-width: 1800px) {
  .main-img {
    flex-shrink: 0;
  }

  /* .main-box-txt {
        margin: 33px 30px 0;
    } */

  .box3-item:nth-child(odd) .box3-img {
    margin-left: -150px;
    margin-right: 51px;
  }

  .box3-item {
    position: relative;
    left: calc(50% - 849px);
  }

  .box3-item-content {
    flex-shrink: 0;
  }

  .box3-item:nth-child(even) {
    right: calc(50% - 1000px);
    left: unset;
  }
}

/* end screen-min:751px && screen-max:1800px */

@media screen and (min-width: 751px) and (max-width: 1700px) {
  .bg-box2::after {
    right: calc(50% - 900px);
  }

  .box3-frame05-2 {
    right: calc(50% - 595px);
  }
}

/* end screen-min:751px && screen-max:1500px */

@media screen and (min-width: 751px) and (max-width: 1500px) {
  .hd-right > *:not(:last-child) {
    margin-right: 20px !important;
  }

  .hd-left-box {
    padding: 7px 10px;
  }

  .hd-tagline {
    padding-left: 20px;
  }
  #header {
    padding: 10px 20px;
  }

  .box2-content {
    padding-left: 30px;
    padding-right: 60px;
  }

  .bg-box2::after {
    right: calc(50% - 880px);
  }

  .bg-box2::before {
    right: calc(50% - 600px);
    top: -30px;
    width: 80px;
    height: 514px;
  }

  .box2-img {
    left: calc(50% - 880px);
  }

  .box5-content {
    /* width: 480px; */
    width: 525px;
    /* padding-left: 50px; */
    font-feature-settings: "palt";
    text-align: justify;
  }

  .bg-box5::before {
    left: calc(50% - 608px);
    width: 80px;
    height: 840px;
  }

  .bg-box6::before {
    right: calc(50% - 608px);
    width: 80px;
    height: 595px;
  }

  .box6-content {
    width: 620px;
    /* padding-right: 50px; */
  }

  .box8-desc::before {
    right: -98px;
  }

  .box6-content2 .box6-content2-frame {
    max-width: 1190px;
    /* padding: 37px 45px 27px 345px; */
    padding: 16px 0 34px 310px;
  }

  .box6-content2 .box6-content2-frame::before {
    /* left: 90px; */
  }

  .box6-content2-desc .txt4::before {
    right: -15px;
  }
}

/* end screen-min:751px && screen-max:1500px */

@media screen and (max-width: 750px) {
  #wrapper {
    min-width: unset !important;
  }

  .inner {
    width: 100%;
    padding: 0 3%;
  }

  .pc {
    display: none !important;
  }

  #menu-toggle {
    display: block;
    margin: 6px 7px 0 0;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  input,
  button,
  textarea,
  select,
  p,
  blockquote,
  th,
  td,
  pre,
  address,
  li,
  dt,
  dd {
    font-size: 140%;
  }

  p {
    line-height: 1.8em;
  }

  .hd-tagline {
    padding-left: 0;
    padding-bottom: 1px;
    justify-content: center;
  }
  #header {
    padding: 5px 10px;
    height: 70px;
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: center;
  }

  .sticky #header {
    height: 70px;
  }

  .open-nav #header {
    height: 70px !important;
  }
  .fixed-nav,
  .fixed-bot {
    display: block;
  }

  #header h1 {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin-bottom: 8px;
    font-size: 10px !important;
  }

  .hd-right {
    margin-top: -10px;
  }

  .hd-top {
    margin: unset;
    /* height: 50px; */
  }

  #main img {
    width: 100%;
    height: auto;
  }

  .txt2-ico img {
    width: auto !important;
  }

  .logo {
    padding-bottom: 0;
  }

  .hd-logo {
    /* width: 40vw; */
    width: 250px;
    margin-right: 0;
  }

  .hd-left-box {
    font-size: 14px;
    padding: 3px 7px;
  }

  .hd-top .link-ico {
    margin-right: 15px;
  }

  .hd-left-box span {
    padding-left: 12px;
  }

  .hd-left-box {
    font-size: 2vw;
    padding: 3px;
  }

  .hd-left-box span::before {
    width: 10px;
    height: 10px;
    left: 0;
  }

  .mainvisual {
    flex-direction: column-reverse;
    margin-top: 90px;
    /*padding-bottom: 150px;*/
  }

  .box1-contact {
    flex-direction: column;
    margin-bottom: 0;
    margin-bottom: 30px;
  }

  .call-web {
    flex-direction: column;
    margin-bottom: 30px;
  }

  .box1-contact-left {
    margin-right: 0;
    margin: auto;
  }

  .box1-contact > * {
    text-align: center;
  }

  .box1-call {
    margin-right: 0;
  }

  .box1-list-box {
    flex-direction: column;
  }

  .box1-list-item {
    width: calc(100% - 10px);
    padding: 27px 15px;
    min-height: auto;
  }

  .main-img {
    margin-right: 0;
    width: 750px;
    height: 133.334vw;
  }

  .main-img p {
    width: 750px;
    height: 133.334vw;
  }

  .main-img .img {
    display: block;
    background: url(../images/main-visual-sp.jpg) center center no-repeat;
    width: 100%;
    height: 133.334vw;
    /* height: 93.335vw; */
    background-size: contain;
  }

  .main-box-txt {
    position: relative;
    margin: 0 auto;
    max-width: 500px;
    width: 100%;
    z-index: 11;
  }

  .main-box-txt .frame-txt {
    padding: 50px 30px;
    margin-top: -323px;
    margin-bottom: 40px;
    background-color: rgba(255, 255, 255, 0.8);
  }

  .main-box-link {
    max-width: 500px;
  }

  .main-txt {
    position: absolute;
    width: 100%;
    padding-left: 3%;
    padding-right: 3%;
    z-index: 11;
  }

  .frame-h2 {
    position: absolute;
    left: 0;
    top: -90vw;
  }

  .list-box-main {
    flex-direction: column;
    align-items: center;
    bottom: -135px;
  }

  .list-box-main li {
    width: calc((100% / 4) - 7px);
    padding-top: 45px;
    height: 90px;
  }

  .list-box-main li:nth-child(1):before {
    width: 20px;
    height: 30px;
    top: 15px;
  }

  .list-box-main li:nth-child(2):before {
    width: 25px;
    height: 27px;
  }

  .list-box-main li:nth-child(3):before {
    width: 22px;
    height: 27px;
  }

  .list-box-main li:nth-child(4):before {
    width: 22px;
    height: 32px;
  }

  .list-box-main li p {
    font-size: 14px;
  }

  .list-box-main ul {
    width: 100%;
    margin-bottom: 30px;
  }

  .main-txt .inner {
    padding: 0;
  }

  .box1-tt .txt1 {
    font-size: 10vw;
  }

  .box1-tt .txt2 img {
    width: 50vw !important;
  }

  .box1-tt .txt2 {
    margin-bottom: 23px;
  }

  .box1-tt .txt3 {
    font-size: inherit;
  }

  .box1-tt .txt3 img {
    width: 60vw !important;
  }

  .bg-box1 {
    padding: 30px 0;
    margin-bottom: 20px;
  }

  .box1-contact-tt {
    margin-bottom: 5px;
  }

  .box1-call .txt {
    font-size: 16px;
  }

  .box1-call .num {
    font-size: 26px;
    margin-bottom: 15px;
    display: block;
  }

  .hd-web {
    width: 100%;
    max-width: 335px;
  }

  .box1-contact-left .calendar {
    margin-bottom: 30px;
  }

  .box1-contact-right iframe {
    width: 100%;
    height: 300px;
  }

  .box-item-tt {
    font-size: 22px;
  }

  .txt-fixed span.txt1,
  .txt-fixed span.txt3 {
    font-size: 14px;
  }

  .txt-fixed span.txt2 {
    font-size: 20px;
  }

  .box1-list-item.item1::after {
    border-width: 100px 100px 0 0;
  }

  .txt-fixed {
    top: 6px;
    left: 3px;
  }

  .box-list .box-item-txt {
    min-width: auto;
    max-width: 150px;
    width: 100%;
    font-size: 14px;
    padding: 6px;
    margin-right: 8px;
  }

  .box-list .line-throught {
    font-size: 16px;
    margin-right: 22px;
  }

  .box-list .line-throught::before {
    right: -20px;
  }

  .box-item-big {
    font-size: 25px;
  }

  .box-list li {
    justify-content: center;
  }

  .txt-box span {
    max-width: 190px;
    margin-bottom: 10px;
  }

  .box1-list-box .box1-list-item:not(:last-child) {
    margin-bottom: 60px;
  }

  .box1-list-item.item2 {
    padding: 27px 15px;
  }

  .box-list-link a::before {
    right: 0;
  }

  /* バナー */

  .banner-container-top {
    margin-bottom: 20px;
  }
  .banner-container-middle {
    margin-bottom: 20px;
  }
  .banner-container-bottom {
    flex-direction: column;
  }
  .banner-container-bottom .banner-img {
    width: 360px;
  }

  .bg-box2 {
    flex-direction: column;
    margin-bottom: 40px;
  }

  .box2-img {
    position: static;
    height: auto;
    width: calc(100% - 130px);
    margin-bottom: 0;
  }

  .bg-box2::after {
    width: 80px;
    height: 600px;
    right: 0;
    top: 175px;
  }

  .bg-box2 .inner {
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start;
  }

  .box2-content {
    width: calc(100% - 108px);
    padding-left: 30px;
    margin-top: -30px;
    padding-top: 30px;
  }

  .bg-box2::before {
    right: 35px;
    top: 135px;
    width: 11vw;
    height: 70vw;
    background-size: contain;
  }

  .box2-tt.sp {
    padding: 0 3%;
    text-align: center;
    margin-bottom: 17px;
  }

  .box2-tt .title-small::before {
    left: 0;
    right: 0;
    bottom: -18px;
    margin: auto;
  }

  .box2-tt .title-small {
    margin-bottom: 40px;
  }

  .box2-tt .title-large {
    font-size: 250%;
    line-height: 1.2;
  }

  .box2-txt-sub {
    font-size: 24px;
  }

  .frame-link {
    flex-direction: column;
  }

  .frame-link a:not(:last-child) {
    margin-right: 0;
    margin-bottom: 15px;
  }

  .frame-link a {
    max-width: 320px;
  }

  .bg-box2 .frame-link {
    justify-content: center;
    align-items: center;
  }

  .box2-content .txt {
    padding-right: 0;
  }

  .box3-tt::before {
    left: 140px;
    width: 85vw;
    height: 17vw;
  }

  .box3-tt {
    font-size: 7vw;
  }

  .box3-item-content {
    width: 100%;
    padding-top: 0;
  }

  .box3-content {
    padding: 70px 15px;
  }

  .box3-img {
    height: auto;
  }

  .box3-item:nth-child(odd) .box3-img {
    margin-left: -15px;
    margin-right: 50px;
  }

  .box3-frame-title {
    position: relative;
    margin-bottom: 25px !important;
  }

  .box3-item .box3-img {
    margin-bottom: 50px;
  }

  .box3-item:nth-child(odd) .box-in-img {
    right: -45px;
  }

  .box3-item:nth-child(even) .box3-frame-title {
    margin-bottom: 47px;
    display: flex;
    justify-content: flex-end;
  }

  .box3-item-content .num {
    top: 42%;
    transform: translate(0, -50%);
  }

  .box3-item:nth-child(even) .box3-item-content .num {
    right: unset;
    left: -10px;
    top: 42%;
    transform: translate(0, -50%);
  }

  .box3-item:nth-child(even) .box3-tt-en {
    padding-right: 190px;
  }

  .box3-item:nth-child(even) .box3-group {
    text-align: right;
  }

  .box3-item:not(:last-child) {
    margin-bottom: 30px;
  }

  .box3-tt-en {
    font-size: 14px;
  }

  .box3-item-tt {
    font-size: 22px;
  }

  .box3-item:nth-child(even) .box3-item-content .num {
    font-size: 110px;
  }

  .box3-item-content .num {
    font-size: 110px !important;
  }

  .box-in-img span {
    font-size: 14px;
  }

  .box-in-img.have-ic span::before {
    top: 4px;
  }

  .box-in-img {
    min-width: 180px;
  }

  .box3-item:nth-child(even) .box-in-img {
    left: -25px;
    padding: 17px 15px 13px;
  }

  .box3-item:nth-child(even) .box3-item-content {
    padding: 0 0 18px;
  }

  .box-in-img.box-insta span {
    font-size: 14px;
  }

  .box-in-img.box-insta {
    right: -39px !important;
  }

  .box3-content::before {
    width: 920px;
  }

  .box-list-link a {
    max-width: 320px;
  }

  .box4-title {
    font-size: 26px;
    max-width: 486px;
    margin: 0 auto 35px;
  }

  .box4-title .title-en {
    font-size: 300%;
    margin-bottom: 58px;
  }

  .box4-title .title-en::before {
    bottom: -30px;
  }

  .box4-title::before {
    width: 100%;
    height: 138px;
  }

  .box4-group1 {
    flex-direction: column;
    align-items: center;
  }

  .group-desc {
    width: 100%;
    margin-right: 0;
  }

  .box4-list {
    justify-content: center;
  }

  .box4-list .box4-item:nth-child(2n + 2) {
    margin-right: 0 !important;
  }

  .box4-bg {
    padding: 40px 0 40px;
    height: 100%;
  }

  .box4-content {
    max-width: 486px;
    margin: 0 auto;
  }

  .box4-item-content {
    width: 210px;
  }

  .group-tt {
    padding-left: 15px;
    font-size: 24px;
    margin-bottom: 20px;
  }

  .group-tt::before {
    left: -170px;
    top: 20px;
  }

  .box5-img {
    max-height: none;
    height: auto;
    position: relative;
    right: unset;
    z-index: 1;
    margin-bottom: 25px;
  }

  .bg-box5 {
    margin-bottom: 45px !important;
    padding: 0 !important;
  }

  .box5-content {
    width: 100%;
    /* max-width: 80vw; */
    margin-left: auto;
    /* margin-right: -4%; */
    /* padding-top: 50px; */
  }

  .bg-box5::before {
    left: 10px;
    top: 44px;
    width: 60px;
    height: 634px;
    display: none;
  }

  .bg-box5::after {
    left: calc(50% - 375px);
    width: 400px;
    height: 370px;
    top: 70px;
  }

  .box5-txt-sub {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .box5-txt-sub .txt-color {
    font-size: 24px !important;
  }

  .box5-tt {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 20px !important;
    /* margin-bottom: 40px; */
    /* padding-right: 4%; */
  }

  .box5-tt .title-small {
    font-size: 16px !important;
    margin-bottom: 0 !important;
  }
  .box5-tt .title-small::before {
    display: none;
  }

  .box5-tt .title-large {
    /* font-size: 280%; */
    font-size: 32px !important;
    color: #A6824A;
    letter-spacing: 0;
    line-height: 1;
  }

  .bg-box5 .box-in-img {
    max-width: 334px;
    left: 0;
    right: 0;
    margin: auto;
  }

  .box5-content .txt {
    /* padding-right: 4%; */
    /* margin-bottom: 0; */
    margin-bottom: 30px;
    text-align: justify;
  }
  .box5-content .txt:last-of-type {
    margin-bottom: 30px;
  }

  .bg-box5 .frame-link a,
  .bg-box6 .frame-link a {
    min-width: unset;
  }

  .box5-content {
    margin-bottom: 30px;
  }

  .inner-flex {
    margin-bottom: 50px;
  }

  .bg-box5 .frame-link.sp {
    align-items: center;
  }

  .box5-list ul {
    flex-direction: column;
  }

  .box5-list li {
    display: flex;
    align-items: center;
    width: 100%;
  }

  .box5-list-desc {
    width: 100%;
  }

  .frame-desc {
    display: flex;
    align-items: center;
  }

  .box5-list li .txt3 {
    max-width: 92px;
    width: 100%;
    font-size: 12px;
    margin-bottom: 0;
    margin-right: 5px;
  }

  .frame-txt2 {
    min-height: auto;
  }

  .box5-list li .txt2 {
    font-size: 2.54vw;
    min-height: 50px;
    padding: 10px;
    margin-bottom: 20px;
  }

  .txt4-box {
    font-size: 14px !important;
  }

  .box5-list li .txt4 p {
    font-size: 17px;
  }

  .box5-list li .txt2 span {
    display: inline-block;
    font-size: 140%;
  }

  .box5-item-img {
    margin-right: 15px;
    margin-bottom: 0;
  }

  .box5-list li .frame-txt2.type2 .txt2 span {
    font-size: 120%;
  }

  .frame-txt2.type2 .txt2 {
    font-size: 2.5vw;
  }

  .box5-list li .txt4 .txt-top span,
  .box5-list li .txt4 .txt-bot span {
    font-size: 14px;
  }

  .box5-list li .txt4 {
    min-height: auto;
    font-size: 24px !important;
    margin-top: 7px;
    margin-bottom: 7px;
  }

  .box5-list li .txt1 {
    font-size: 12px;
    margin-bottom: 10px;
  }

  .box5-list-desc .txt2-ico img {
    width: 25px !important;
    height: 25px !important;
  }

  .box5-list li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 40px;
  }

  .box5-content2::before {
    height: 100%;
    background-size: cover;
    top: 75px;
  }

  .box5-item-img::before {
    width: 25px;
    height: 1px;
    top: 0;
    bottom: 0;
    right: -10px;
    left: unset;
    margin: auto;
  }

  .box6-img {
    position: relative;
    margin-left: 0;
    height: auto;
    /* width: 80vw; */
    margin-bottom: 10px;
  }

  .box6-content {
    position: relative;
    z-index: 1;
    width: 100%;
    /* margin-left: -4%; */
    margin-bottom: 30px;
  }

  .box6-txt-sub {
    margin: 20px 0 10px 0;
    margin-left: 0;
    font-size: 20px;
    line-height: 1.5;
  }
  .box6-txt-sub .txt-color, .box6-txt-sub .color-black {
    font-size: 24px;
  }

  .bg-box6 .inner {
    justify-content: flex-start;
    display: block;
    padding-inline: 20px;
  }

  .box6-tt {
    font-size: 16px;
    margin-bottom: 10px !important;
    margin-left: 0 !important;
  }

  .box6-tt .title-small::before {
    width: calc(100% - 145px);
    display: none;
  }

  .box6-tt .title-small {
    margin-bottom: 2px !important;
  }
  .box6-tt .title-large {
    font-size: 32px !important;
    color: #A6824A;
  }

  .box6-content .txt {
    /* margin-left: 4%; */
    margin-bottom: 30px;
  }

  .box6 .box-in-img {
    right: -75px;
    padding: 12px 15px 10px 28px;
  }

  .bg-box6::after {
    right: calc(50% - 375px);
    width: 400px;
    height: 320px;
  }

  .bg-box6::before {
    right: 10px;
    top: -42px;
    width: 60px;
    height: 447px;
    display: none;
  }

  .bg-box5 {
    padding: 40px 0;
    margin-bottom: 120px;
  }

  .bg-box6 .frame-link.sp {
    align-items: center;
  }

  .box6-content2 .box6-content2-frame {
    padding: 15px 0 15px 0;
    /* margin: 0 calc(3% + 10px) 0 3%; */
    width: auto;
    z-index: 1;
    box-shadow: none;
    overflow: hidden;
  }

  .box6-content2-desc.sp {
    flex-direction: column;
  }

  .box6-group {
    display: flex;
    align-items: center;
  }

  .box6-group:not(:last-child) {
    margin-bottom: 20px;
  }

  .box6-content2-desc .txt2 {
    margin-right: 0;
  }

  .box6-content2-desc .txt2::before {
    display: none;
  }

  .box6-content2-group1 {
    position: relative;
  }

  .box6-content2-group1::before {
    content: "";
    position: absolute;
    background: url(../images/ic-arrow-down-sp.png);
    width: 27px;
    height: 28px;
    background-size: cover;
    right: 0;
    left: 0;
    bottom: -30px;
    margin: auto;
  }

  .box6-content2-desc .txt4 {
    font-size: 35px;
    margin-right: 0;
  }

  .box6-content2-desc .txt3 {
    display: inline-block;
    font-size: 14px;
    padding: 8px 14px;
    margin-bottom: 10px;
  }

  .box6-content2-desc .txt4::before {
    width: 100px;
    height: 100px;
    top: -123px;
    right: calc(50% - 173px);
    z-index: 1;
  }

  .box6-content2-note {
    padding-right: 0;
    text-align: center;
    padding: 5px;
    font-weight: bold;
  }

  .box6-content2-tt {
    position: relative;
    line-height: 1.5;
    text-align: center;
  }

  .box6-content2-tt::before {
    content: "";
    position: absolute;
    background: url(../images/bnr-person.jpg) center no-repeat;
    width: 325px;
    height: 282px;
    background-size: cover;
    left: 0;
    bottom: -5px;
  }

  .box6-content2 .box6-content2-frame::before {
    display: none;
  }

  .bg-box6 {
    margin-bottom: 0;
    padding-bottom: 5px;
  }

  .box6-content2::before {
    top: 90px;
  }

  .box7-content {
    margin: 0;
  }

  .title-jp-en {
    font-size: 24px;
  }

  .box7-txt-bor p {
    font-size: 16px;
  }

  .box7-desc {
    flex-direction: column;
  }

  .box7-bg {
    height: auto;
  }

  .box7-link-txt {
    margin-bottom: 0;
  }

  .box7-img {
    margin-right: 0;
  }

  .box7-link-txt .txt1 {
    font-size: 18px;
  }

  .box7-link {
    padding: 22px 30px;
  }

  .box7-frame {
    max-width: 400px;
    margin: auto;
  }

  .box7-txt-bor p:nth-child(1) {
    margin-left: 0;
    margin-right: 23px;
  }

  .box7-txt-bor p:nth-child(2) {
    margin-right: 23px;
  }

  .box8-bg::after {
    height: 100px;
  }

  .box8-bg .title-jp-en {
    font-size: 24px;
    margin-bottom: 30px;
  }

  .box8-bg {
    padding: 76px 0 40px;
  }

  .box8-bg::before {
    display: none;
  }

  .box8-txt-sub {
    font-size: 24px;
    padding: 4px 15px;
  }

  .box8-desc {
    /* position: relative;
        background: url('../images/box8-bg-sp.jpg') center top no-repeat;
        margin-left: -4%;
        margin-right: -4%;
        padding: 60px 4%;
        background-size: cover;
        z-index: 1; */
  }

  .box8-txt-sub::before {
    /* background-color: #fff; */
  }

  /* .box8-desc > * {
        color: #fff;
    } */

  .list-content {
    position: relative;
    flex-direction: column;
    z-index: 1;
  }

  .box8-list::after {
    content: "";
    position: absolute;
    background: url("../images/logo-opa.svg") center no-repeat;
    width: 250px;
    height: 290px;
    background-size: cover;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0.4;
    z-index: -1;
  }

  .box8-list {
    position: relative;
    padding: 20px 0 80px;
    /* z-index: 1; */
  }

  .box8-list::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4%;
    width: 108%;
    height: 100%;
    background-color: #e6e6e6;
    z-index: -2;
  }

  .list-content ul:not(:last-child) {
    margin-bottom: 15px;
    margin-right: 0;
  }

  .list-content li::before {
    background-color: #fff;
  }

  .box8-bg .frame-link.center.sp {
    align-items: center;
  }

  .box8-bg .frame-link .custom-link {
    /* background-color: #fff;
        color: #333; */
  }

  .chairman {
    margin-top: 0;
    max-width: 100%;
    text-align: center;
  }

  .box8-img {
    position: relative;
    margin-right: 0;
    max-width: 313px;
    width: 100%;
    height: 426px;
    margin: 0 auto 100px !important;
    z-index: 1;
  }

  .frame-img {
    position: relative;
    z-index: 1;
    margin-bottom: 30px;
    align-self: center;
    margin-top: 0;
  }

  .frame-img::before {
    content: "";
    position: absolute;
    background-color: #e6e6e6;
    width: 120vw;
    height: 320px;
    left: calc(50% - 60vw);
    bottom: 0;
    z-index: -1;
  }

  .list-content li:not(:last-child) {
    margin-bottom: 15px;
  }

  .list-content .frame-link {
    margin-top: 30px;
  }

  .box8-img img {
    margin-bottom: 35px;
  }

  .box8-desc::before {
    /* flex-direction: column-reverse;
        -webkit-writing-mode: vertical-rl;
        -moz-writing-mode: vertical-rl;
        -ms-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        right: 0;
        font-size: 100px;
        bottom: 158px;
        z-index: -1;
        color: #fff;
        opacity: .05;
        line-height: 1; */
  }

  .box8-desc::before {
    /* content: 'MIZUTANI';
        position: absolute;
        font-size: 130px;
        font-family: 'Noto Sans JP', sans-serif;
        color: #EEEEEE;
        bottom: 158px;
        right: -160px;
        letter-spacing: .085em;
        z-index: -1; */
    content: "";
    position: absolute;
    background: url("../images/mizutani-sp.png") center no-repeat;
    width: 72px;
    height: 483px;
    background-size: cover;
    bottom: 42px;
    left: 20px;
    z-index: -1;
  }

  .box8-bg .frame-link a::before {
    right: 10;
  }

  .box8-bg .frame-link .custom-link {
    max-width: 320px;
    padding: 16px 50px 16px 19px;
  }

  .box8-content {
    flex-direction: column;
    margin-bottom: 0;
  }

  .box9-content ul li img {
    width: 100px !important;
  }

  .box9-content ul li {
    height: 60px;
    padding: 0 8px;
  }

.box10 .c-title__section {
  margin-bottom: 20px;
}
  .box9-tt {
    font-size: 24px;
  }

  .box10-frame {
    padding: 20px 15px;
  }

  .box10-frame::before {
    background-color: transparent;
  }

  .box10-bg {
    padding: 30px 0;
    height: auto;
  }

  .box10-tt {
    font-size: 24px;
    margin-top: -70px;
    margin-bottom: 30px;
  }

  .box10-content {
    margin-top: 0;
  }

  .box10-link {
    text-align: center;
  }

  .tabs {
    margin-bottom: 10px;
  }

  .news-list li:not(:last-child) {
    margin-bottom: 20px;
  }

  .tabs {
    flex-wrap: wrap;
  }

  .tab-box {
    width: calc(100% / 2);
  }

  .tabs .tab-box {
    margin-bottom: 30px !important;
  }

  .box10-tt .title-en::before {
    bottom: -20px;
    width: 30px;
  }

  .tabs .tab-box {
    border-left: 1px solid #c2c2c2;
    border-right: 1px solid #c2c2c2;
  }

  .tabs .tab-box:nth-child(2n + 2) {
    border-left: none;
  }

  .box10-bg::after {
    background: url("../images/box10-bg2-sp.jpg") center no-repeat;
    background-size: cover;
    height: 381px;
  }

  .box11-bg {
    padding: 40px 0;
  }

  .ft-logo {
    margin-bottom: 30px;
  }

  .box11-content .box1-call .num {
    font-size: 30px;
    margin-bottom: 0;
  }

  .ft-logo-txt-sub li:nth-child(1),
  .ft-logo-txt-sub li:nth-child(2) {
    margin-right: 30px !important;
  }

  .ft-logo-txt-sub li {
    font-size: 16px;
  }

  .ft-logo-txt-sub li:not(:last-child):before {
    right: -15px;
  }

  .box12-content {
    flex-direction: column;
  }

  .box12-bg {
    padding: 50px 0 100px;
    height: auto;
  }

  .frame-footer {
    margin-top: -50px;
  }

  .box12-content {
    align-items: center;
  }

  .box12-content > * {
    width: 100%;
  }

  .box12-calendar {
    margin: 20px auto;
  }

  .ft-call {
    text-align: center;
  }

  .box12-tt {
    margin-bottom: 20px;
  }

  .box12-logo-img {
    text-align: center;
  }

  .box14-bg::before {
    /* display: none; */
    height: 70%;
  }

  .box14-bg .desc {
    position: relative;
    margin-top: 0;
    background-color: rgba(255, 255, 255, 0.85);
    padding: 49px 50px 39px;
    margin-bottom: 30px;
  }

  .list-social li {
    width: calc((100% / 2) - 10px);
    margin-bottom: 20px;
  }

  .list-social {
    max-width: 490px;
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: center;
  }

  .list-social li:not(:last-child) {
    margin-right: 20px;
  }

  .list-social li:nth-child(2n + 2) {
    margin-right: 0 !important;
  }

  .social-box {
    padding: 7px;
    min-height: 75px;
  }

  .box12-tt span {
    font-size: 24px;
  }

  .ft-menu {
    flex-direction: column;
  }

  .bg-menu {
    background-size: cover;
    align-items: flex-start;
    top: 90px !important;
    left: 0;
  }

  .menu {
    max-width: 500px;
    margin: 0 auto;
    border-bottom: none;
  }

  .ft-menu-item .top {
    margin-top: 0;
    font-size: 20px;
    font-family: "Noto Sans JP", sans-serif;
    margin-bottom: 15px;
    font-weight: 400;
  }

  .ft-submenu {
    display: none;
  }

  .ft-menu .ft-menu-item:nth-child(1),
  .ft-menu .ft-menu-item:nth-child(2),
  .ft-menu .ft-menu-item:nth-child(3) {
    margin-right: 0;
  }

  .ft-menu-group-tt::before {
    display: none;
  }

  .ft-menu-group-tt {
    font-size: 16px;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #333;
  }

  .ft-menu .ft-menu-item {
    margin-bottom: 20px;
  }

  .ft-submenu a {
    font-size: 18px;
    font-weight: 500;
    display: block;
    padding: 3px 0;
  }

  .open-nav {
    overflow: hidden;
  }

  .bg-menu {
    overflow: auto;
    padding: 50px 0;
  }

  .ft-submenu li {
    margin-bottom: 20px;
  }

  .ft-submenu li:not(:last-child) {
    margin-bottom: 20px;
  }

  .box3-list {
    margin-bottom: 10px;
  }

  .box5-tt .title-small::before {
    width: calc(100% - 105px);
  }

  .box9-bg {
    padding: 40px 0 45px;
    margin-top: -60px;
  }

  .tabs-content {
    margin-bottom: 40px;
  }

  .fixed-nav {
    position: fixed;
    z-index: 99;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .fixed-nav .web-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 35px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background-color: #272762;
  }
  .fixed-nav .web-btn img {
    margin-right: 5px;
    width: 16px !important;
  }
  .fixed-nav .yoyaku-btn {
    padding: 10px 10px 12px;
    background-color: #2390D0;
  }
  .fixed-nav .yoyaku-btn .btn {
    position: relative;
    display: block;
    padding: 8px;
    font-size: 14px;
    color: #2390D0;
    background-color: #fff;
    border-radius: 50px;
  }
  .fixed-nav .yoyaku-btn .btn::before {
    content: "";
    width: 8px;
    height: 8px;
    border-top: solid 1px #272762;
    border-right: solid 1px #272762;
    transform: rotateZ(45deg);
    position: absolute;
    right: 12px;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: transparent;
  }
  .fixed-nav .yoyaku-btn .btn img {
    margin-right: 7px;
    width: 20px !important;
  }
  .fixed-nav .btn-wrap {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 8px;
    margin-bottom: 8px;
  }
  .fixed-nav .tel-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
  }
  .fixed-nav .tel-wrap .tel-text {
    margin: 0 8px 0 0;
    padding-left: 16px;
    font-size: 14px;
    color: #fff;
    background: url(/images/common/ico-fix-tel.webp) no-repeat left center / 12px auto;
  }
  .fixed-nav .tel-wrap a {
    font-size: 22px;
    font-family: "Roboto", sans-serif !important;
    font-weight: 600;
    font-style: normal;
    color: #fff;
  }
  .fixed-nav .tel-wrap a .num {
    font-size: 15px;
  }


  .fixed-bot {
    position: fixed;
    width: 100%;
    bottom: 0;
    height: 60px;
    z-index: 100;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    transform-origin: 50% 100%;
    transition: all 0.2s;
  }

  .box14-bg {
    padding: 16px 0 190px;
  }

  .fixed-bot .hd-right > * {
    width: 50%;
    height: 60px;
    margin-right: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .fixed-bot .hd-right .hd-web {
    color: #333;
    text-align: center;
    padding: 0 15px;
  }

  .fixed-bot .hd-call a .txt {
    font-size: 10px;
    letter-spacing: -0.05em;
    text-align: center;
    display: block;
  }

  .fixed-bot .hd-call a .num {
    font-size: 16px;
  }

  .fixed-bot .hd-call {
    background-color: #fff;
    padding-top: 5px;
  }

  .fixed-bot.show {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
  }

  .bg-box1::before {
    top: -5vw;
    height: calc(100% - 70px);
  }

  .box1-list-item .txt {
    font-size: 14px;
  }

  .insta .social-box {
    background-size: contain;
  }

  .news-list a {
    font-size: 14px;
  }

  .cate-date {
    margin-bottom: 5px;
  }

  .box7-txt-bor p span::before {
    top: 2px;
  }

  .fixed-bot .hd-web {
    max-width: 100%;
    flex-direction: column;
  }

  .txt2-sub {
    margin-bottom: 10px !important;
  }

  .box6 .box-in-img {
    right: -17.8vw;
    padding: 12px 15px 10px 15px;
  }

  .to-top {
    width: 40px;
    height: 40px;
    /* bottom: 70px; */
    bottom: 20px;
  }

  .to-top:before {
    top: 11px;
  }

  .to-top:after {
    top: 20px;
  }

  #footer address {
    line-height: 1.5;
  }

  .box4-item-img img,
  .calendar img,
  .box1-content-slide img {
    width: auto !important;
  }

  .open-nav .hd-left,
  .open-nav .hd-right > * {
    opacity: 1;
  }

  /* .sticky .hd-top {
        height: 80px;
        background-color: #fff !important;
    } */
  .sticky #header {
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
  }

  .logo img {
    height: auto;
  }

  .box5-list li .txt4 .txt-bot {
    display: inline-block;
  }

  .ft-menu-group-tt::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 16px;
    background-color: #333;
    display: block;
    right: 20px;
    top: -15px !important;
    bottom: 0;
    margin: auto;
    left: unset;
    transition: 0.2s linear;
  }

  .ft-menu-group-tt::after {
    content: "";
    position: absolute;
    width: 16px;
    height: 1px;
    background-color: #333;
    display: block;
    right: 13px;
    left: unset;
    top: -15px;
    bottom: 0;
    margin: auto;
    left: unset;
  }

  .ft-menu-group-tt.drop::before {
    transform: rotate(-90deg);
  }

  .box4-item-tt {
    font-size: 16px;
  }

  .box1-content-slide {
    margin: 0px auto 40px;
  }

  .bg-menu .inner {
    padding: 30px 3%;
  }

  .open-nav #header h1 {
    opacity: 1;
  }

  .fixed-bot .hd-right {
    margin-top: 0;
  }

  .for-logo {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .txt-fixed span.txt2 span {
    font-size: inherit;
  }

  .box1-tt .txt1 img {
    width: 30vw !important;
  }

  .box4-title .title-en {
    width: 40vw;
    margin: 0 auto 38px;
  }

  .box8-bg .title-jp-en .en {
    width: 40vw;
    margin: 0 auto 33px;
  }

  .box8-bg .title-jp-en .en::before {
    bottom: -25px;
  }

  .box10-tt .title-en {
    width: 25vw;
    margin: 0 auto 30px;
  }

  .ft-menu-group-tt img {
    height: auto;
  }

  .box3-tt-en .point img {
    width: 80px !important;
  }

  .box3-group .num img {
    width: 127px !important;
    vertical-align: middle;
  }

  .under .box14-bg {
    padding: 16px 0 190px !important;
  }

  .under .box14-bg::before {
    height: 100%;
  }

  .sticky .hd-left-box {
    display: none;
  }

  /* .sticky .hd-logo {
    width: 300px;
  } */

  .box5-list li:nth-child(4) {
    /* flex-direction: column; */
    /* align-items: flex-start; */
  }

  .box5-list li:nth-child(4) .box5-item {
    flex-direction: column;
  }

  .box5-list li:nth-child(4) .box5-item-img {
    margin-right: 0;
    margin-bottom: 23px;
  }

  .box5-list li:nth-child(4) .box5-item-img::before {
    width: 1px;
    height: 30px;
    top: unset;
    bottom: -15px !important;
    left: 0;
    right: 0;
  }

  .box5-list li:nth-child(4) {
    align-items: flex-start;
    justify-content: center;
  }

  .box5-item {
    display: flex;
    align-items: center;
    width: 100%;
  }

  .box5-item .txt2 {
    min-height: 50px !important;
  }

  .box5-item:not(:last-child) {
    /* margin-bottom: 40px; */
    margin-right: 20px;
  }

  .box5-list li .box5-item .txt2 span {
    display: block;
  }

  .box5-bnr {
    padding: 0 20px 20px;
    width: calc(100% - 8px);
  }

  .box5-bnr-tt {
    font-size: 20px;
    text-align: center;
  }

  .box5-bnr-sub {
    margin-bottom: 15px;
    font-size: 16px;
  }

  .box5-bnr-txt {
    font-size: 16px;
  }

  .box5-bnr-txt span {
    font-size: 18px;
  }

  .box5-bnr {
    margin-left: 0;
    overflow: hidden;
  }

  .box5-bnr-img {
    width: 114%;
    margin-left: -7%;
  }

  .box5-bnr .box-list-link a::before {
    right: 15px;
  }

  .box6-content2-tt {
    flex-direction: column;
    margin: auto;
    max-width: 100%;
  }

  .box6-content2-tt .txt-color {
    width: 100%;
    margin-right: 0;
    font-size: 26px;
  }

  .box6-content2-tt::before {
    /* display: none; */
    background: url(../images/bnr-person-sp.jpg) center no-repeat;
    background-size: cover;
    width: 194px;
    height: 281px;
    bottom: 20px;
    z-index: -1;
  }

  .box-have-img {
    width: 130px;
    margin-right: 10px;
  }

  .box6-content2-tt {
    position: relative;
    font-size: 33px;
    margin-bottom: 10px;
    text-align: left;
    max-width: 410px;
    z-index: 1;
    padding-left: 130px;
    padding-top: 30px;
    /* overflow: hidden; */
  }

  .box6-content2-desc .txt1 {
    font-weight: 500;
  }

  .frame-list-new {
    margin-bottom: 20px;
  }

  /* .box-list-item:nth-child(2n+2) {
        margin-right: 0;
    } */
  .box-list-item:not(:last-child) {
    margin-right: 10px;
  }

  .box-list-item {
    margin: 0 10px;
  }

  .box-list-new-tt span {
    font-size: 30px;
  }

  .box-list-new-tt {
    margin-bottom: 30px;
    font-size: 36px;
    line-height: 9vw;
    margin-top: 50px;
  }

  .bg-box-list {
    padding: 40px 0;
  }

  .box-list-item-desc .txt1 {
    font-size: 20px;
  }

  .box-list-item-desc .txt2 {
    font-size: 18px;
  }

  .box-list-item-desc .txt3 {
    font-size: 14px;
  }

  .box5-bnr-list {
    flex-direction: column;
    align-items: center;
    margin-bottom: 5px;
  }

  .box5-bnr-item.item1 {
    margin-right: 0;
    margin-bottom: 20px;
  }

  .box5-bnr-tt {
    padding: 0 0 10px 0;
    text-align: left;
    border-bottom: solid 1px #000;
  }
  .box5-bnr-tt span {
    padding: 0;
    display: inline-block;
  }
  .box5-bnr-tt::before {
    display: none;
  }

  .box5-bnr-item.item2 {
    margin-right: 0;
  }

  .box5-bnr-price {
    margin-bottom: 0;
    align-items: flex-start;
    padding-left: 0;
    max-width: 300px;
  }

  .box5-bnr-content {
    padding-left: 0;
    padding: 20px 0 10px;
  }

  .box5-bnr-item.item1 {
    position: static;
    font-size: 18px;
  }

  .box5-bnr-item.item2 .num {
    font-size: 240%;
    /* display: block; */
  }

  .box5-bnr-item.item2.item2-bf {
    margin-right: 20px;
  }
  .box5-bnr-item.item2 b {
    font-size: 14px;
  }

  .box5-bnr-item.item2 {
    font-size: 12px;
    max-width: 100%;
    white-space: nowrap;
  }

  .box5-bnr-item.item2.item2-bf::before {
    right: -17px;
    font-size: 24px;
  }

  .box5-bnr-note {
    position: static;
    max-width: 300px;
    margin: auto;
    text-align: left;
    margin-top: 10px;
    /* margin-bottom: 20px; */
  }

  .box5-bnr .box-list-link a {
    margin: auto;
    padding: 5px 40px 6px;
    font-size: 15px;
  }

  .list-ic {
    position: static;
    justify-content: center;
    margin-top: -20px;
  }

  #main .list-ic img {
    width: 120px;
  }

  .box4-item-img img {
    width: calc(100% - 30px) !important;
  }

  .menu-dc img {
    width: 59px !important;
    height: 59px !important;
  }

  .tax-included {
    font-size: 16px;
  }

  #main .box5-list li:not(:last-child) .txt4 .cur-m {
    font-size: 16px !important;
  }

  /*.frame-h2 img.sp {
        width: 20vw !important;
    }*/
  .frame-h2 .h2-m {
    display: none;
  }

  .list-ic span:not(:last-child) {
    margin-right: 5px !important;
  }

  .box6-content2-tt img {
    width: 250px !important;
    height: auto !important;
  }

  .txt-price-l {
    flex-direction: column;
  }

  .frame-price-m .txt2 img {
    width: 40vw !important;
  }

  .txt-price-m p {
    text-align: center;
  }

  .txt-price-m {
    width: 100%;
    height: auto;
    clip-path: polygon(100% 0, 100% 60%, 52% 100%, 0 60%, 0 0);
    margin-right: 0;
    padding: 15px 15px 40px !important;
    margin-bottom: 15px;
  }

  .txt-price-m p:not(:last-child) {
    margin-bottom: 10px;
  }

  .txt-price-l p:nth-child(1)::before,
  .txt-price-l p:nth-child(1)::after {
    display: none;
  }

  .txt-price-l p br {
    display: none;
  }

  .txt-price-l p:nth-child(1) {
    position: relative;
    font-size: 24px;
    background-color: #fff;
    color: #5cc8bf;
    padding: 5px 23px;
    margin-right: 0;
    margin-bottom: 23px;
  }

  .box6-content2-desc {
    padding-bottom: 40px;
  }

  .txt-price-l .txt4 img {
    width: 50vw !important;
  }

  .box3-content .box-list-link a::before {
    right: 20px;
  }

  .fixed-bot .hd-call {
    text-align: center;
  }

  .box9-bg::before {
    height: auto;
  }

  .box11-frame2 .call-web a {
    flex-grow: 0;
  }

  .box11-frame2 .call-web {
    align-items: center;
    justify-content: center;
  }

  .box11-frame2-mail {
    height: auto;
  }

  .box11-frame2-mail {
    padding: 0 10px;
  }

  .box11-frame2-mail .txt1 {
    padding-left: 30px;
    font-size: 22px;
  }

  .box11-frame2-mail .txt1::before {
    top: 0px;
    left: 20px;
  }

  .box11-frame3 .calendar {
    margin-bottom: 20px;
  }

  .box11-frame4 .desc {
    font-size: 13px;
  }

  .box14-bg {
    height: auto;
  }

  .box11-content .box1-contact {
    align-items: center;
    margin-bottom: 0;
  }

  .frame-footer::before {
    height: 450px;
  }

  .hd-web span::before {
    top: 2px;
  }

  .bg-box1 .hd-web span::before {
    top: 4px;
  }

  .box8-list::after {
    width: 130px;
    height: 150px;
    left: unset;
    top: 150px;
  }

  .box7-link span {
    font-size: 20px;
    line-height: 1.5;
  }

  .box11-content .box1-contact .box1-contact-left .desc {
    text-align: left;
  }

  .box11-content .box1-contact .box1-contact-left .desc br {
    display: none;
  }

  .bg-box-list .point {
    font-size: 8vw;
  }

  .bg-box-list::before {
    border-left-width: 30vw;
    border-bottom-width: 30vw;
  }

  .bg-box-list::after {
    border-right-width: 30vw;
    border-top-width: 30vw;
  }

  .box-in-img.blue-circle {
    width: 80px;
    height: 80px;
    font-size: 14px;
    padding-bottom: 0 !important;
  }
}

/* end screen-max:750px */

@media screen and (max-width: 640px) {
  .main-img p {
    height: 100%;
  }

  /* .main-img {
        height: 110vw;
    } */
  .main-box-txt .frame-txt {
    padding: 30px;
    margin-top: -253px;
  }

  .main-txt2 {
    font-size: 26px;
  }
}

/* end screen-max:640px */

@media screen and (max-width: 560px) {
}

/* end screen-max:560px */

@media screen and (max-width: 520px) {
}

/* end screen-max:520px */

@media screen and (max-width: 475px) {
  .main-box-txt .frame-txt {
    margin-top: -220px;
    padding: 15px;
  }

  /* .main-img {
        height: 522px;
    } */
  .bg-box1::before {
    top: -8vw;
  }

  .list-box-main li {
    padding-top: 50px;
  }

  .list-box-main li p {
    font-size: 12px;
  }

  .main-txt2 {
    font-size: 26px;
  }

  #menu-toggle {
    width: 40px;
    height: 32px;
    margin: 6px 10px 0 0;
  }

  #menu-toggle span:nth-child(1) {
    top: 0px;
  }

  #menu-toggle span:nth-child(2),
  #menu-toggle span:nth-child(3) {
    top: 15px;
  }

  #menu-toggle span:nth-child(4) {
    top: 31px;
  }

  .hd-top .link-ico {
    margin-right: 10px;
  }

  .link-ico a:not(:last-child) {
    margin-right: 2px;
  }

  .link-ico a img {
    width: 5.5vw;
    height: 5.5vw;
  }

  .hd-logo {
    /* width: 240px !important;
    margin-right: 5px; */
  }

  .hd-left-box {
    font-size: 10px;
  }

  .link-ico a:not(:last-child) {
    margin-right: 0;
    margin-bottom: 5px;
  }

  .box1-contact-address {
    letter-spacing: 0;
  }

  .box-list .line-throught {
    margin-right: 15px;
    font-size: 15px;
  }

  .box-list .line-throught::before {
    right: -15px;
  }

  .box-item-big {
    font-size: 27px;
  }

  .box-item-tt {
    font-size: 20px;
  }

  .txt-fixed span.txt2 {
    font-size: 16px;
  }

  .item-list2 li {
    font-size: 14px;
    width: calc((100% / 3) - 5px);
  }

  .item-list2 li:not(:last-child) {
    margin-right: 10px;
  }

  .box1-list-item.item2 .txt {
    font-size: 3.4vw;
  }

  .box1-list-item {
    min-height: auto;
  }

  .box1-list-item.item2 .box-item-tt {
    margin-bottom: 20px;
  }

  .box2-tt .title-large {
    font-size: 200%;
  }

  .bg-box2::before {
    right: 20px;
    top: 145px;
  }

  .box2-txt-sub {
    font-size: 18px;
    letter-spacing: 0;
  }

  .box2-img {
    width: calc(100% - 80px);
  }

  .box2-content {
    width: calc(100% - 65px);
    padding-left: 15px;
    margin-top: -30px;
    padding-top: 15px;
  }

  .bg-box2::after {
    right: -30px;
  }

  .box3-bg {
    height: auto;
    padding: 60px 0;
  }

  .box3-item:nth-child(odd) .box3-img {
    margin-right: 20px;
  }

  .box3-item:nth-child(odd) .box-in-img {
    right: -20px;
  }

  .box3-item:nth-child(even) .box3-img {
    margin-left: 20px;
  }

  .box3-item:nth-child(even) .box-in-img {
    left: -20px;
  }

  .box-in-img.box-insta {
    right: -20px !important;
    padding: 12px 17px 12px 21px;
  }

  .group-tt {
    padding-left: 10px;
    font-size: 20px;
  }

  .box4-title .title-en {
    width: 190px;
    margin-bottom: 30px;
  }

  .box4-title .title-en::before {
    bottom: -25px;
  }

  .box4-title::before {
    height: 200px;
  }

  .box4-title {
    margin-bottom: 40px;
  }

  .box4-item-img img {
    width: 150px !important;
  }

  .box4-item-content {
    width: 166px;
  }

  .box4-list .box4-item:not(:last-child) {
    margin-right: 20px;
  }

  .box7-txt-bor p:nth-child(1),
  .box7-txt-bor p:nth-child(2) {
    margin-right: 12px;
  }

  .box7-txt-bor p {
    font-size: 14px;
  }

  .box7-txt-bor p span::before {
    width: 10px;
    height: 10px;
  }

  .box7-txt-bor p span {
    padding-left: 12px;
  }

  .box7-link {
    font-size: 22px;
    padding: 22px 22px 22px 12px;
  }

  .box8-txt-sub {
    font-size: 5.4vw;
    padding: 4px 5px 4px 15px;
  }

  .box8-txt-sub::before {
    top: 0;
    bottom: 0;
    margin: auto;
  }

  .box8-list-tt {
    font-size: 16px;
  }

  .box7-link::before {
    right: 10px;
  }

  .title-jp-en {
    font-size: 20px;
  }

  .box9-content ul li:not(:last-child) {
    margin-right: 10px;
  }

  .box10-tt {
    margin-top: -80px;
  }

  .box10-tt .title-en::before {
    bottom: -20px;
  }

  .tab-box {
    font-size: 16px;
  }

  .ft-logo-txt-sub li:nth-child(1),
  .ft-logo-txt-sub li:nth-child(2) {
    margin-right: 14px !important;
  }

  .ft-logo-txt-sub li {
    font-size: 3.6vw;
  }

  .ft-logo-txt-sub li:not(:last-child):before {
    right: -7px;
  }

  .list-social li:not(:last-child) {
    margin-right: 0;
  }

  .list-social li {
    width: 230px;
    margin-bottom: 8px;
  }

  .social-box .txt {
    font-size: 3vw;
  }

  .insta .social-box .ico span {
    padding-left: 30px;
  }

  .line .social-box .ico span::before,
  .insta .social-box .ico span::before {
    width: 25px;
    height: 25px;
  }

  .social-box .ico span {
    padding-left: 30px;
  }

  .social-txt {
    font-size: 12px;
    padding-left: 14px;
  }

  .insta .social-box {
    background: url(../images/border-insta.jpg) center center no-repeat;
    background-size: contain;
  }

  .box14-bg .desc {
    padding: 20px 15px;
  }

  .social-txt::before {
    width: 10px;
  }

  .social-box {
    padding: 6px;
    height: 80px;
  }

  .box12-content-left {
    max-width: 100%;
  }

  .box12-address {
    font-size: 3.1vw;
  }

  .box12-tt span {
    font-size: 20px;
  }

  .list-content ul:not(:last-child) {
    margin-right: 0;
  }

  .title-jp-en .en {
    font-size: 214%;
    margin-bottom: 15px;
  }

  .box8-bg .title-jp-en .en {
    font-size: 220%;
  }

  .box8-bg .title-jp-en .en {
    margin-bottom: 15px;
    width: 190px;
  }

  .box8-bg .title-jp-en .en::before {
    bottom: -14px;
  }

  .title-jp-en .en::before {
    bottom: -14px;
  }

  .box8-bg::after {
    height: 80px;
  }

  .box8-bg .title-jp-en {
    font-size: 20px;
  }

  .box8-bg {
    padding: 58px 0 0;
  }

  .box9-tt {
    font-size: 16px;
  }

  .box3-content::before {
    width: 161px;
    left: 0;
  }

  .box4-item-tt {
    font-size: 17px;
  }

  .box4-item-content {
    padding: 60px 9px 13px;
  }

  .box4-item-tt::before {
    bottom: -7px;
  }

  .bg-box5::before {
    left: 10px;
    width: 45px;
    height: 472px;
    top: 50px;
  }

  .box-in-img span {
    font-size: 12px;
  }

  .bg-box5 .box-in-img span {
    padding-left: 10px;
  }

  .bg-box5 .box-in-img {
    max-width: 240px;
    padding: 10px 5px;
  }

  .box-in-img.have-ic span::before {
    top: 3px;
  }

  .box5-tt {
    font-size: 3.8vw;
    margin-bottom: 30px;
  }

  .box5-tt .title-small {
    font-size: inherit;
    margin-bottom: 20px;
  }

  .bg-box5 .box-in-img.have-ic span::before {
    width: 10px;
    height: 10px;
    top: 5px;
    left: 0;
  }

  .box5-tt .title-large {
    /* font-size: 200%; */
    font-size: 24px !important;
  }

  .box5-list li .txt2 span {
    display: block;
  }

  .frame-txt2.type2 .txt2 {
    font-size: 3.5vw;
  }

  .box5-list li .txt2 {
    font-size: 3vw;
  }

  .box5-list li .txt4 p {
    font-size: 22px;
  }

  .box5-list li .txt3 {
    max-width: 85px;
    padding: 7px 3px;
  }

  .box5-item-img {
    margin-right: 9px;
  }

  .box5-item-img::before {
    width: 15px;
    right: -7px;
  }

  .box5-list li .txt4 br {
    display: block !important;
  }

  .bg-box6::before {
    top: -30px;
    width: 45px;
    height: 334px;
  }

  .bg-box5 {
    margin-bottom: 80px;
  }

  .box6-tt .title-small {
    font-size: inherit;
    margin-bottom: 20px;
  }

  .box6-tt {
    font-size: 3.8vw;
    margin-bottom: 30px;
  }

  .box6-tt .title-small::before {
    width: calc(100% - 115px);
  }

  .box6-tt .title-large {
    font-size: 200%;
    font-size: 24px !important;
  }

  .box6-txt-sub {
    font-size: 5vw;
  }

  .box6-content2-tt .txt-color {
    font-size: 30px;
  }

  .box6-content2-tt {
    font-size: 26px;
  }

  #main .box6-content2-desc .txt4 .cur-m {
    font-size: 24px !important;
  }

  .box6-content2-desc .txt1 {
    font-size: 16px;
    margin-right: 10px;
  }

  .box3-item-tt {
    font-size: 6.1vw;
  }

  .box1-list-item {
    padding: 27px 10px;
  }

  .list-social {
    flex-direction: column;
    align-items: center;
  }

  .sticky #header {
    height: 70px;
  }

  .hd-top {
    margin: unset;
    /* height: 45px; */
  }

  .box3-item-content .num {
    font-size: 23vw !important;
  }

  .drop475 {
    display: block;
  }

  .txt4-box {
    font-size: 12px !important;
  }

  .box8-desc .txt,
  .box8-img {
    margin-bottom: 10px;
  }

  .list-content li:not(:last-child) {
    margin-bottom: 12px;
  }

  .box9-content ul li {
    height: 45px;
  }

  .box9-content ul li img {
    width: 88px !important;
  }

  .ft-menu-item .top {
    font-size: 16px;
  }

  .ft-menu-group-tt .jp {
    font-size: 120%;
  }

  .ft-submenu a {
    font-size: 14px;
  }

  .box12-logo-img,
  .ft-logo-img {
    max-width: 370px;
    margin-left: auto;
    margin-right: auto;
  }

  .under .ft-logo-img img {
    max-width: 100% !important;
  }

  .box12-logo-img img,
  .ft-logo-img img {
    height: auto;
  }

  .txt2-sub {
    font-size: 11px;
    letter-spacing: 0.1em;
  }

  .txt2-sub span::before {
    top: 3px;
  }

  .box5-note {
    font-size: 11px;
    letter-spacing: 0.1em;
  }

  .box1-tt .txt2 img {
    width: 55vw !important;
  }

  .box8-desc::before {
    width: 70px;
    height: 470px;
    bottom: 15vw;
    right: 0;
  }

  .box1-tt .txt3 img {
    width: 80vw !important;
  }

  .box1-tt .txt2 img {
    width: 65vw !important;
  }

  /* .sticky .hd-logo {
    width: 65vw;
  } */

  .frame-txt4.frame-desc span {
    font-size: 20px !important;
  }

  .list-box-main li {
    width: calc((100% / 4) - 3px);
  }

  .main-txt {
    padding-left: 2%;
    padding-right: 2%;
  }

  .box-list-item-desc {
    padding: 20px 5px 13px;
  }

  .box-list-item-desc .txt1 {
    font-size: 4vw;
  }

  .box-list-item-desc .txt2 {
    font-size: 4.5vw;
  }

  .box-list-item:not(:last-child) {
    margin-right: 5px;
  }

  .box-list-item {
    margin: 0 5px;
  }

  .box-list-new-tt span {
    font-size: 7vw;
  }

  .box-list-item-desc .txt3::before {
    width: 15px;
    right: 0;
  }

  .box-list-item-desc .txt3 {
    padding: 0 10px;
  }

  .box5-bnr-item.item2 .num {
    /* font-size: 260%; */
    /* font-size: 8.5vw; */
  }

  .box5-bnr-item.item2.item2-bf::before {
    font-size: 25px;
  }

  .box4-item-img .menu-dc img {
    width: 60px;
    height: 60px;
  }

  .box6-content2-desc .txt4 {
    font-size: 32px;
    white-space: nowrap;
  }

  .box7-frame {
    max-width: 100%;
  }

  #main .list-ic img {
    width: 90px;
  }

  .box5-bnr-item.item1 {
    /* max-width: 100%; */
  }

  .box5-bnr-tt {
    font-size: 18px;
  }

  .box5-bnr-sub {
    font-size: 14px;
  }

  .box5-bnr-note {
    /* padding: 0 10px; */
  }

  .box5-bnr-item.item2 {
    font-size: 12px;
  }

  .box5-list li:nth-child(4) .txt2 span {
    font-size: 18px !important;
  }

  .box5-list ul li:last-child .frame-txt4.frame-desc span {
    font-size: 20px !important;
  }

  .box5-list ul li:last-child .frame-txt4.frame-desc .txt4-box {
    margin-bottom: 0;
  }

  .box5-list ul li:last-child .txt2 {
    padding: 10px 5px 25px;
  }

  .list-ic {
    margin-top: -14px;
  }

  .box11-frame1 .desc {
    font-size: 14px;
  }

  .box11-frame1 {
    padding: 15px 8px;
    margin-bottom: 15px;
  }

  .box11-frame2 .call-web {
    margin-bottom: 15px;
  }

  .box11-frame2-mail .txt1 {
    position: relative;
    padding-left: 7vw;
    font-size: 4.6vw;
    z-index: 1;
  }

  /* .box11-frame2-mail .txt1::after {
         content: '';
         position: absolute;
         width: calc(100% + 80px);
         height: 1px;
         background-color: #fff;
         left: -40px;
         bottom: 0;
    } */
  .box11-frame2-mail .txt1::before {
    left: 4vw;
  }

  .box8-list::after {
    top: 110px;
  }

  .box9-bg {
    margin-top: -20px;
  }
}

/* end screen-max:475px */

@media screen and (max-width: 425px) {
}

/* end screen-max:425px */

@media screen and (max-width: 414px) {
  .main-link {
    width: 100%;
  }

  .main-link .frame-link a {
    width: 100%;
    text-align: center;
  }

  .box6-content2-tt::before {
    width: 47vw;
    height: 67vw;
    bottom: -5px;
  }

  .box6-content2-tt img {
    width: 54.7vw !important;
  }

  .box6-content2 .box6-content2-frame {
    height: 68.6vw;
    overflow: hidden;
  }

  .box6-content2-tt {
    padding-left: 32vw;
    padding-top: 7vw;
  }
}

/* end screen-max:414px */

@media screen and (max-width: 375px) {
  .box11-frame2-mail .txt1::before {
    left: 2vw;
  }

  .frame-h2 {
    top: -70vw;
    left: 10px;
  }

  .frame-h2 img {
    width: 70px !important;
  }

  .main-link {
    width: 100%;
  }

  .main-link .frame-link a {
    width: 100%;
  }

  .bg-box2::after {
    right: -40px;
  }

  .list-box-main li:not(:last-child) {
    margin-right: 5px;
  }

  .box2-content {
    width: calc(100% - 50px);
  }

  .box2-img {
    width: calc(100% - 65px);
  }

  .box8-bg .frame-link .custom-link {
    padding: 16px 19px 16px 19px;
  }

  .box9-content ul li:not(:last-child) {
    margin-right: 5px;
  }

  .map-link {
    font-size: 12px;
  }

  .box1-contact-address {
    font-size: 4vw;
  }

  .list-content li {
    font-size: 3.74vw;
  }

  .box4-item-img img {
    width: auto !important;
  }

  .box4-group1 .box4-item {
    width: 100%;
  }

  .box4-item-content {
    width: 100%;
  }

  .box4-list .box4-item:not(:last-child) {
    margin-right: 0;
  }

  .box4-group2 .box4-item {
    width: 100%;
  }

  .box4-group1 .box4-item {
    margin-top: 26px;
  }

  .box4-item-tt {
    line-height: 1.4;
  }

  .box4-item-tt::before {
    bottom: -9px;
  }

  .txt4-box {
    display: block;
    margin-bottom: 5px;
    font-size: 12px;
  }

  .box3-item-tt {
    font-size: 18px;
  }

  .box-list .box-item-txt {
    font-size: 11px;
  }

  .hd-logo {
    margin-right: 10px;
  }

  .hd-top .link-ico {
    margin-left: 5px;
    margin-right: 5px;
  }

  .fixed-bot .hd-call a .txt {
    font-size: 2.8vw;
  }

  .fixed-bot .hd-call a .num {
    font-size: 15px;
  }

  #header {
    padding: 11px 5px 8px;
  }

  #menu-toggle {
    width: 32px;
    height: 32px;
  }

  #menu-toggle span:nth-child(1) {
    top: 4px;
  }

  #menu-toggle span:nth-child(2),
  #menu-toggle span:nth-child(3) {
    top: 14px;
  }

  #menu-toggle span:nth-child(4) {
    top: 25px;
  }

  .hd-top {
    height: 30px;
  }

  .hd-right {
    margin-top: -5px;
  }

  .box4-content .box4-list {
    max-width: 250px;
    width: 100%;
    margin: auto;
  }

  .txt2-sub::before {
    font-size: 9px;
    top: 1px;
  }

  .box11-content .box1-call .num {
    font-size: 7vw;
  }

  .box11-frame2 .box1-call .txt {
    font-size: 14px;
  }

  .ft-logo-img img {
    width: auto;
    height: auto;
  }

  .box1-list-item {
    padding: 45px 10px;
  }

  .txt2-sub br.pc {
    display: block !important;
  }

  .box9-tt span {
    padding: 0 10px;
  }

  .drop375 {
    display: block;
  }

  .box-have-img {
    width: 100px;
  }

  .box6-content2-desc .txt4::before {
    width: 80px;
    height: 80px;
    top: -103px;
    right: calc(50% - 152px);
  }

  .box5-bnr-item.item2 .num {
    font-size: 8vw;
  }

  .box5-bnr-item.item2 {
    font-size: 10px;
  }

  .box6-content2-tt {
    font-size: 22px;
  }

  .tax-included {
    font-size: 14px;
  }

  .box6-content2-desc .txt4 {
    font-size: 26px;
  }

  .box7-txt-bor p {
    font-size: 13px;
  }

  .box5-bnr-sub {
    font-size: 4vw;
  }

  .fixed-bot .hd-web::before {
    right: 7px;
  }

  .box8-list::after {
    /* width: 140px; */
    /* height: 160px; */
    /* top: 150px; */
  }

  .box11-frame1 .desc {
    font-size: 13px;
  }

  .box11-frame2-mail .txt2 {
    font-size: 12px;
  }

  .fixed-bot .hd-web span {
    font-size: 14px;
  }

  .fixed-bot .hd-web {
    flex-direction: column;
    font-size: 12px;
  }

  .box7-link-txt .txt1 {
    font-size: 14px;
  }

  .box7-link {
    font-size: 16px;
  }

  .hd-web span::before {
    top: 0px;
  }
}

/* end screen-max:375px */

/*============================= HACK CSS =============================*/

/* IE */
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
}

/* EGDE */
@supports (-ms-ime-align: auto) {
}

/* FIREFOX */
@-moz-document url-prefix() {
}

/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {
  @media {
    .box10-bg::after {
      background-attachment: scroll;
    }
  }
}