@charset "UTF-8";
/* Sass Document */
/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/
html,
body {
  height: 100%;
}

html {
  font-size: 62.5%;
}
@media screen and (max-width: 750px) {
  html {
    width: 100%;
  }
}

body {
  -webkit-text-size-adjust: 100%;
  width: 100%;
  color: #001c3c;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  line-height: 1.5;
  font-size: 1.6rem;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
address,
ul,
ol,
li,
dl,
dt,
dd,
table,
th,
td,
img,
form,
figure {
  margin: 0;
  padding: 0;
  border: none;
  list-style-type: none;
  font-style: normal;
  letter-spacing: 0.05em;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: normal;
  line-break: strict;
}

@media screen and (max-width: 767.98px) {
  html {
    font-size: 2.6666vw;
  }
}
@media (min-width: 768px) {
  a[href*="tel:"] {
    text-decoration: none;
    cursor: default;
    pointer-events: none;
  }
  a:hover {
    opacity: 0.7;
  }
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

main {
  display: block;
  overflow: hidden;
}

strong {
  font-weight: 700;
}

a {
  color: #001c3c;
  text-decoration: none;
  outline: none;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

input,
button,
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

body {
  background: #f4f8f8;
}

.pc {
  display: block;
}
@media screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: none !important;
}
@media screen and (max-width: 750px) {
  .sp {
    display: block !important;
  }
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.tac,
.tac * {
  text-align: center;
}

.en {
  font-family: "Lato", sans-serif;
}

.sans {
  font-family: "Noto Sans JP", sans-serif;
}

.wrap {
  max-width: 85.6rem;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .wrap {
    width: 88.4615384615vw;
  }
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

main {
  overflow: hidden;
}

p {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 1200px) {
  p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  p {
    font-size: 3.5897435897vw;
  }
}

.title_area .title02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  color: #989898;
}
@media screen and (max-width: 1200px) {
  .title_area .title02 {
    gap: 0.7692307692vw;
    margin-bottom: 0.7692307692vw;
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  .title_area .title02 {
    gap: 1.2820512821vw;
    margin-bottom: 1.2820512821vw;
    font-size: 3.0769230769vw;
  }
}
.title_area .title02 img {
  width: 0.8rem;
  aspect-ratio: 1/1.7044130616;
}
@media screen and (max-width: 1200px) {
  .title_area .title02 img {
    width: 0.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  .title_area .title02 img {
    width: 1.0256410256vw;
  }
}
.title_area .copy {
  font-size: 3.2rem;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  .title_area .copy {
    font-size: 2.4615384615vw;
  }
}
@media screen and (max-width: 750px) {
  .title_area .copy {
    font-size: 5.1282051282vw;
  }
}

body.scroll .floating {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (max-width: 750px) {
  body.scroll .floating {
    -webkit-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0);
  }
}

.floating {
  position: fixed;
  right: 0;
  bottom: 0;
  -webkit-transform: translateX(150%);
          transform: translateX(150%);
  -webkit-transition: 0.7s ease 0.2s;
  transition: 0.7s ease 0.2s;
  z-index: 7000;
}
@media screen and (max-width: 750px) {
  .floating {
    top: auto;
    bottom: 0;
    left: 50%;
    right: 0;
    width: 100%;
    -webkit-transform: translateX(-50%) translateY(150%);
            transform: translateX(-50%) translateY(150%);
  }
}
.floating a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  width: 6rem;
  height: 20rem;
  font-size: 1.8rem;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  background: rgba(244, 248, 248, 0.8);
  border: 0.1rem solid #001C3C;
}
@media screen and (max-width: 1200px) {
  .floating a {
    gap: 0.7692307692vw;
    width: 4.6153846154vw;
    height: 15.3846153846vw;
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 750px) {
  .floating a {
    gap: 2.5641025641vw;
    width: 100%;
    height: 15.3846153846vw;
    font-size: 4.1025641026vw;
    -ms-writing-mode: unset;
    -webkit-writing-mode: unset;
            writing-mode: unset;
  }
}
.floating a img {
  width: 0.8rem;
  aspect-ratio: 1/1.7044130616;
}
@media screen and (max-width: 1200px) {
  .floating a img {
    width: 0.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  .floating a img {
    width: 1.2820512821vw;
  }
}

#footer {
  padding: 9.6rem 0 1.2rem;
}
@media screen and (max-width: 1200px) {
  #footer {
    padding: 7.3846153846vw 0 0.9230769231vw;
  }
}
@media screen and (max-width: 750px) {
  #footer {
    padding: 12.8205128205vw 0 20.5128205128vw;
  }
}
#footer .logo {
  width: 11.7rem;
  margin: 0 auto 2.2rem;
}
@media screen and (max-width: 1200px) {
  #footer .logo {
    width: 9vw;
    margin: 0 auto 1.6923076923vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .logo {
    width: 30vw;
    margin: 0 auto 5.641025641vw;
  }
}
#footer .sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 1200px) {
  #footer .sns {
    gap: 1.5384615385vw;
    margin-bottom: 3.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .sns {
    gap: 5.1282051282vw;
    width: 100%;
  }
}
#footer .sns li {
  width: 2.36087rem;
}
@media screen and (max-width: 1200px) {
  #footer .sns li {
    width: 1.8160538462vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .sns li {
    width: 6.0535128205vw;
  }
}
#footer .sns li:nth-of-type(2) {
  width: 2.28289rem;
}
@media screen and (max-width: 1200px) {
  #footer .sns li:nth-of-type(2) {
    width: 1.7560692308vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .sns li:nth-of-type(2) {
    width: 5.8535641026vw;
  }
}
#footer .sns li:nth-of-type(3) {
  width: 2.35287rem;
}
@media screen and (max-width: 1200px) {
  #footer .sns li:nth-of-type(3) {
    width: 1.8099vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .sns li:nth-of-type(3) {
    width: 6.033vw;
  }
}
#footer .sns li:nth-of-type(4) {
  width: 3.38342rem;
}
@media screen and (max-width: 1200px) {
  #footer .sns li:nth-of-type(4) {
    width: 2.6026307692vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .sns li:nth-of-type(4) {
    width: 8.6754358974vw;
  }
}
#footer .sns li img {
  vertical-align: baseline;
}
#footer .copy {
  margin-bottom: 1.6rem;
  font-size: 1.4rem;
  text-align: center;
  font-weight: 800;
}
@media screen and (max-width: 1200px) {
  #footer .copy {
    margin-bottom: 1.2307692308vw;
    font-size: 1.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .copy {
    margin-bottom: 2.0512820513vw;
    font-size: 2.5641025641vw;
  }
}
#footer .message {
  font-size: 1.4rem;
  text-align: center;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #footer .message {
    font-size: 1.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #footer .message {
    font-size: 2.3076923077vw;
  }
}

body.fixed {
  height: 100vh;
  overflow: hidden;
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 9rem;
  padding: 0 2.2rem 0 2.6rem;
  background: #F4F8F8;
  z-index: 8000;
}
@media screen and (max-width: 1200px) {
  #header {
    height: 6.9230769231vw;
    padding: 0 1.6923076923vw 0 2vw;
  }
}
@media screen and (max-width: 750px) {
  #header {
    height: 15.3846153846vw;
    padding: 0 2.5641025641vw;
  }
}
#header .logo {
  width: 10.70809rem;
}
@media screen and (max-width: 1200px) {
  #header .logo {
    width: 7.7523769231vw;
  }
}
@media screen and (max-width: 750px) {
  #header .logo {
    width: 25.8412564103vw;
  }
}
#header .logo a {
  display: block;
}
#header .toggle {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 3.6rem;
  height: 1.8rem;
  margin-bottom: 2rem;
  cursor: pointer;
  z-index: 15;
}
@media screen and (max-width: 1200px) {
  #header .toggle {
    width: 2.7692307692vw;
    height: 1.3846153846vw;
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #header .toggle {
    width: 9.2307692308vw;
    height: 4.6153846154vw;
    margin-bottom: 5.1282051282vw;
  }
}
#header .toggle span {
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 0.2rem;
  margin: auto;
  background: #001c3c;
  -webkit-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
@media screen and (max-width: 1200px) {
  #header .toggle span {
    height: 0.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #header .toggle span {
    height: 0.5128205128vw;
  }
}
#header .toggle span:nth-of-type(1) {
  top: 0;
}
#header .toggle span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}
#header .toggle span:nth-of-type(3) {
  bottom: 0;
}
#header .toggle span:nth-of-type(4), #header .toggle span:nth-of-type(5) {
  bottom: -2rem;
  font-size: 1rem;
  text-align: center;
  background: none;
  width: 100%;
  height: auto;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  #header .toggle span:nth-of-type(4), #header .toggle span:nth-of-type(5) {
    bottom: -1.5384615385vw;
    font-size: 0.7692307692vw;
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 750px) {
  #header .toggle span:nth-of-type(4), #header .toggle span:nth-of-type(5) {
    bottom: -5.1282051282vw;
    font-size: 2.5641025641vw;
  }
}
#header .toggle span.close {
  display: none;
}
#header .toggle.active span:nth-of-type(1) {
  -webkit-transform: translateY(0.9rem) rotate(150deg);
          transform: translateY(0.9rem) rotate(150deg);
}
@media screen and (max-width: 1200px) {
  #header .toggle.active span:nth-of-type(1) {
    -webkit-transform: translateY(0.6923076923vw) rotate(150deg);
            transform: translateY(0.6923076923vw) rotate(150deg);
  }
}
@media screen and (max-width: 750px) {
  #header .toggle.active span:nth-of-type(1) {
    -webkit-transform: translateY(2.3076923077vw) rotate(150deg);
            transform: translateY(2.3076923077vw) rotate(150deg);
  }
}
#header .toggle.active span:nth-of-type(2) {
  opacity: 0;
}
#header .toggle.active span:nth-of-type(3) {
  top: 0;
  bottom: auto;
  -webkit-transform: translateY(0.9rem) rotate(-150deg);
          transform: translateY(0.9rem) rotate(-150deg);
}
@media screen and (max-width: 1200px) {
  #header .toggle.active span:nth-of-type(3) {
    -webkit-transform: translateY(0.6923076923vw) rotate(-150deg);
            transform: translateY(0.6923076923vw) rotate(-150deg);
  }
}
@media screen and (max-width: 750px) {
  #header .toggle.active span:nth-of-type(3) {
    -webkit-transform: translateY(2.3076923077vw) rotate(-150deg);
            transform: translateY(2.3076923077vw) rotate(-150deg);
  }
}
#header .toggle.active span.open {
  display: none;
}
#header .toggle.active span.close {
  display: block;
}

#menu {
  position: fixed;
  top: 0;
  right: 0;
  display: none;
  width: 100vw;
  padding: 9.5rem 0 3.4rem;
  background: rgba(255, 255, 255, 0.95);
  z-index: 10;
  -webkit-overflow-scrolling: touch;
  overflow-y: scroll;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  opacity: 0;
}
@media screen and (max-width: 1200px) {
  #menu {
    padding: 7.3076923077vw 0 2.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #menu {
    top: 15.3846153846vw;
    padding: 10.2564102564vw 0 8.7179487179vw;
  }
}
#menu.on {
  display: block;
  opacity: 1;
}
#menu .wrap {
  max-width: 96.8rem;
}
#menu .menu_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 3.4rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_top {
    margin-bottom: 2.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_top {
    margin-bottom: 5.1282051282vw;
  }
}
#menu .menu_top .left {
  max-width: 22.6rem;
  width: 100%;
}
@media screen and (max-width: 750px) {
  #menu .menu_top .left {
    display: none;
  }
}
#menu .menu_top .left .logo {
  width: 20.2rem;
  margin: 0 auto 4rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_top .left .logo {
    width: 15.5384615385vw;
    margin: 0 auto 3.0769230769vw;
  }
}
#menu .menu_top .left .logo img {
  width: 100%;
}
#menu .menu_top .gnav {
  display: grid;
  max-width: 64.2rem;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 2rem 5rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_top .gnav {
    gap: 1.5384615385vw 3.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_top .gnav {
    display: block;
    max-width: none;
    width: 100%;
  }
}
#menu .menu_top .gnav li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
  padding-bottom: 1.5rem;
  font-size: 2.4rem;
  color: #001C3C;
  font-weight: 600;
  border-bottom: 0.1rem dashed #B2B2B2;
}
@media screen and (max-width: 1200px) {
  #menu .menu_top .gnav li a {
    gap: 1.5384615385vw;
    padding-bottom: 1.1538461538vw;
    font-size: 1.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_top .gnav li a {
    gap: 2.5641025641vw;
    padding-bottom: 2.5641025641vw;
    margin-bottom: 2.5641025641vw;
    font-size: 4.1025641026vw;
  }
}
#menu .menu_top .gnav li a img {
  width: 1.1rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_top .gnav li a img {
    width: 0.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_top .gnav li a img {
    width: 1.2820512821vw;
  }
}
#menu .menu_top .gnav li:nth-of-type(1) {
  grid-area: 1/1/2/2;
}
#menu .menu_top .gnav li:nth-of-type(2) {
  grid-area: 2/1/3/2;
}
#menu .menu_top .gnav li:nth-of-type(3) {
  grid-area: 3/1/4/2;
}
#menu .menu_top .gnav li:nth-of-type(4) {
  grid-area: 1/2/2/3;
}
#menu .menu_top .gnav li:nth-of-type(5) {
  grid-area: 2/2/3/3;
}
#menu .btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  width: 100%;
  height: 6rem;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 700;
  background: #001c3c;
}
@media screen and (max-width: 1200px) {
  #menu .btn a {
    gap: 0.7692307692vw;
    height: 4.6153846154vw;
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .btn a {
    gap: 2.5641025641vw;
    width: 64.1025641026vw;
    height: 12.8205128205vw;
    margin: auto;
    font-size: 3.5897435897vw;
  }
}
#menu .btn a img {
  width: 0.8rem;
}
@media screen and (max-width: 1200px) {
  #menu .btn a img {
    width: 0.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .btn a img {
    width: 2.0512820513vw;
  }
}
#menu .menu_bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.4rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom {
    gap: 2.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-bottom: 5.1282051282vw;
  }
}
#menu .menu_bottom p {
  max-width: 25.3rem;
  width: 100%;
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom p {
    max-width: none;
    width: 51.2820512821vw;
    margin: auto;
  }
}
#menu .menu_bottom .sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom .sns {
    gap: 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom .sns {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 5.1282051282vw;
    width: 100%;
  }
}
#menu .menu_bottom .sns li {
  width: 2.36087rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom .sns li {
    width: 1.8160538462vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom .sns li {
    width: 6.0535128205vw;
  }
}
#menu .menu_bottom .sns li:nth-of-type(2) {
  width: 2.28289rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom .sns li:nth-of-type(2) {
    width: 1.7560692308vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom .sns li:nth-of-type(2) {
    width: 5.8535641026vw;
  }
}
#menu .menu_bottom .sns li:nth-of-type(3) {
  width: 2.35287rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom .sns li:nth-of-type(3) {
    width: 1.8099vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom .sns li:nth-of-type(3) {
    width: 6.033vw;
  }
}
#menu .menu_bottom .sns li:nth-of-type(4) {
  width: 3.38342rem;
}
@media screen and (max-width: 1200px) {
  #menu .menu_bottom .sns li:nth-of-type(4) {
    width: 2.6026307692vw;
  }
}
@media screen and (max-width: 750px) {
  #menu .menu_bottom .sns li:nth-of-type(4) {
    width: 8.6754358974vw;
  }
}
#menu .menu_bottom .sns li img {
  vertical-align: middle;
}

main {
  margin-top: 9rem;
}
@media screen and (max-width: 1200px) {
  main {
    margin-top: 6.9230769231vw;
  }
}
@media screen and (max-width: 750px) {
  main {
    margin-top: 15.3846153846vw;
  }
}

#fv {
  padding: 21rem 0 0;
}
@media screen and (max-width: 1200px) {
  #fv {
    padding: 3.8461538462vw 0 0;
  }
}
@media screen and (max-width: 750px) {
  #fv {
    padding: 7.6923076923vw 0 0;
  }
}
#fv .main_title_area {
  padding: 0 4rem;
  margin-bottom: 3.6rem;
}
@media screen and (max-width: 1200px) {
  #fv .main_title_area {
    padding: 0 3.0769230769vw;
    margin-bottom: 2.7692307692vw;
  }
}
@media screen and (max-width: 750px) {
  #fv .main_title_area {
    padding: 0 5.1282051282vw;
    margin-bottom: 5.1282051282vw;
  }
}
#fv .main_title_area .en {
  margin-bottom: 0.5rem;
  font-size: 6rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.11em;
}
@media screen and (max-width: 1200px) {
  #fv .main_title_area .en {
    margin-bottom: 0.3846153846vw;
    font-size: 4.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #fv .main_title_area .en {
    margin-bottom: 0;
    font-size: 7.6923076923vw;
  }
}
#fv .main_title_area .main_title {
  font-size: 3.2rem;
  font-weight: 600;
}
@media screen and (max-width: 1200px) {
  #fv .main_title_area .main_title {
    font-size: 2.4615384615vw;
  }
}
@media screen and (max-width: 750px) {
  #fv .main_title_area .main_title {
    font-size: 3.5897435897vw;
  }
}

#sec01 {
  padding: 12rem 0 16rem;
}
@media screen and (max-width: 1200px) {
  #sec01 {
    padding: 9.2307692308vw 0 12.3076923077vw;
  }
}
@media screen and (max-width: 750px) {
  #sec01 {
    padding: 15.3846153846vw 0 20.5128205128vw;
  }
}
#sec01 .wrap {
  max-width: 95.2rem;
}
#sec01 .title_area {
  margin-bottom: 6rem;
}
@media screen and (max-width: 1200px) {
  #sec01 .title_area {
    margin-bottom: 4.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #sec01 .title_area {
    margin-bottom: 7.6923076923vw;
  }
}
#sec01 .title_area .title02 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#sec01 .title_area .copy {
  text-align: center;
}
#sec01 .vertical_txt {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4rem;
}
@media screen and (max-width: 1200px) {
  #sec01 .vertical_txt {
    gap: 3.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #sec01 .vertical_txt {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: unset;
    -webkit-box-direction: unset;
        -ms-flex-direction: unset;
            flex-direction: unset;
    gap: 5.1282051282vw;
  }
}
#sec01 .vertical_txt p {
  font-size: 1.6rem;
  line-height: 2.3125;
  letter-spacing: 0.16rem;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 1200px) {
  #sec01 .vertical_txt p {
    font-size: 1.2307692308vw;
    letter-spacing: 0.1230769231vw;
  }
}
@media screen and (max-width: 750px) {
  #sec01 .vertical_txt p {
    font-size: 3.5897435897vw;
    letter-spacing: 0.4102564103vw;
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
            writing-mode: initial;
  }
}
#sec01 .vertical_txt p.caution {
  position: absolute;
  top: 0;
  left: -8rem;
  font-size: 1.3rem;
  color: #9D9D9E;
  line-height: 1.307692;
  letter-spacing: 0.13rem;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  white-space: nowrap;
  line-height: 1;
}
@media screen and (max-width: 1200px) {
  #sec01 .vertical_txt p.caution {
    left: 0;
    font-size: 1vw;
    letter-spacing: 0.1vw;
  }
}
@media screen and (max-width: 750px) {
  #sec01 .vertical_txt p.caution {
    position: unset;
    font-size: 2.5641025641vw;
    letter-spacing: 0.3333333333vw;
    line-height: 1.5;
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
            writing-mode: initial;
    white-space: initial;
  }
}

#sec02 {
  padding: 8.8rem 0 18.5rem;
}
@media screen and (max-width: 1200px) {
  #sec02 {
    padding: 6.7692307692vw 0 14.2307692308vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 {
    padding: 10.2564102564vw 0 23.0769230769vw;
  }
}
#sec02 .title_area {
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .title_area {
    margin-bottom: 1.9230769231vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .title_area {
    margin-bottom: 3.0769230769vw;
  }
}
#sec02 .txt {
  margin-bottom: 1rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .txt {
    margin-bottom: 0.7692307692vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .txt {
    margin-bottom: 1.2820512821vw;
  }
}
#sec02 .txt p {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 1200px) {
  #sec02 .txt p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .txt p {
    font-size: 3.5897435897vw;
  }
}
#sec02 .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5rem;
}
@media screen and (max-width: 1200px) {
  #sec02 .list {
    gap: 3.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .list {
    gap: 5.1282051282vw;
  }
}
#sec02 .list .in {
  width: calc((100% - 10rem) / 3);
}
@media screen and (max-width: 1200px) {
  #sec02 .list .in {
    width: calc((100% - 7.6923076923vw) / 3);
  }
}
@media screen and (max-width: 1200px) {
  #sec02 .list .in {
    width: calc((100% - 5.1282051282vw) / 2);
  }
}
#sec02 .list .in .number {
  margin-bottom: 1.4rem;
  font-size: 1.2rem;
  color: #989898;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  #sec02 .list .in .number {
    margin-bottom: 1.0769230769vw;
    font-size: 0.9230769231vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .list .in .number {
    margin-bottom: 2.0512820513vw;
    font-size: 2.5641025641vw;
  }
}
#sec02 .list .in .title03 {
  padding-bottom: 1rem;
  margin-bottom: 1.4rem;
  font-size: 2rem;
  color: #231815;
  text-align: center;
  border-bottom: 0.1rem dashed #B2B2B2;
}
@media screen and (max-width: 1200px) {
  #sec02 .list .in .title03 {
    padding-bottom: 0.7692307692vw;
    margin-bottom: 1.0769230769vw;
    font-size: 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .list .in .title03 {
    padding-bottom: 1.2820512821vw;
    margin-bottom: 1.5384615385vw;
    font-size: 3.5897435897vw;
  }
}
#sec02 .list .in .txt p {
  font-size: 1.5rem;
  color: #231815;
  text-align: center;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec02 .list .in .txt p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec02 .list .in .txt p {
    font-size: 3.0769230769vw;
  }
}

#sec03 {
  padding: 8rem 0 11.2rem;
}
@media screen and (max-width: 1200px) {
  #sec03 {
    padding: 6.1538461538vw 0 8.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 {
    padding: 10.2564102564vw 0 15.3846153846vw;
  }
}
#sec03 .title_area {
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .title_area {
    margin-bottom: 3.4615384615vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .title_area {
    margin-bottom: 5.1282051282vw;
  }
}
#sec03 .txt {
  margin-bottom: 6rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .txt {
    margin-bottom: 4.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .txt {
    margin-bottom: 7.6923076923vw;
  }
}
#sec03 .txt p {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 1200px) {
  #sec03 .txt p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .txt p {
    font-size: 3.5897435897vw;
  }
}
#sec03 .list {
  max-width: 65rem;
  margin: 0 auto 20rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .list {
    margin: 0 auto 15.3846153846vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .list {
    margin: 0 auto 25.641025641vw;
  }
}
#sec03 .list .in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7rem;
  padding: 3rem 8rem;
  border-bottom: 0.1rem dashed #B2B2B2;
}
@media screen and (max-width: 1200px) {
  #sec03 .list .in {
    gap: 5.3846153846vw;
    padding: 2.3076923077vw 6.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .list .in {
    gap: 1.2820512821vw;
    padding: 3.8461538462vw;
  }
}
#sec03 .list .in .left {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#sec03 .list .in .left .en {
  margin-bottom: 0.5rem;
  font-size: 1.3rem;
  color: #989898;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 1200px) {
  #sec03 .list .in .left .en {
    margin-bottom: 0.3846153846vw;
    font-size: 1vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .list .in .left .en {
    margin-bottom: 0.5128205128vw;
    font-size: 2.5641025641vw;
  }
}
#sec03 .list .in .left .title03 {
  font-size: 3.2rem;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  #sec03 .list .in .left .title03 {
    font-size: 2.4615384615vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .list .in .left .title03 {
    font-size: 4.6153846154vw;
  }
}
#sec03 .list .in .txt {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  margin-bottom: 0;
}
#sec03 .list .in .txt p {
  font-size: 1.8rem;
  line-height: 1.66666;
}
@media screen and (max-width: 1200px) {
  #sec03 .list .in .txt p {
    font-size: 1.3846153846vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .list .in .txt p {
    font-size: 3.5897435897vw;
  }
}
#sec03 .slider_area {
  margin-left: 8rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area {
    margin-left: 6.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area {
    margin-left: 8vw;
    margin-right: 8vw;
  }
}
#sec03 .slider_area .splide__slide .flex {
  height: 100%;
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w {
  width: 49.0384615385%;
  height: 100%;
  padding: 8rem 10rem;
  background: #fff;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w {
    padding: 3.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w {
    width: 100%;
    height: auto;
    padding: 5.1282051282vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w .title03 {
  margin-bottom: 6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.95;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w .title03 {
    margin-bottom: 4.6153846154vw;
    font-size: 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w .title03 {
    margin-bottom: 7.6923076923vw;
    font-size: 3.5897435897vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w p {
  font-size: 1.5rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w p {
    font-size: 3.0769230769vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w figure {
  margin: 0 auto 6.5rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w figure {
    margin: 0 auto 5vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w figure {
    margin: 0 auto 7.6923076923vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w._01 figure {
  width: 19rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w._01 figure {
    width: 14.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w._01 figure {
    width: 38.4615384615vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w._02 figure {
  width: 22.3rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w._02 figure {
    width: 17.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w._02 figure {
    width: 38.4615384615vw;
  }
}
#sec03 .slider_area .splide__slide .flex .box_w._03 figure {
  width: 19.9rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__slide .flex .box_w._03 figure {
    width: 15.3076923077vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .box_w._03 figure {
    width: 38.4615384615vw;
  }
}
#sec03 .slider_area .splide__slide .flex .imge {
  width: 50.9615384615%;
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__slide .flex .imge {
    width: 100%;
  }
}
#sec03 .slider_area .splide__arrows .splide__arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2rem;
  height: 3.6rem;
  cursor: pointer;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__arrows .splide__arrow {
    width: 1.5384615385vw;
    height: 2.7692307692vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__arrows .splide__arrow {
    width: 3.8461538462vw;
    height: 7.6923076923vw;
  }
}
#sec03 .slider_area .splide__arrows .splide__arrow:disabled {
  display: none;
  opacity: 0;
}
#sec03 .slider_area .splide__arrows .splide__arrow:hover {
  opacity: 0.7;
}
#sec03 .slider_area .splide__arrows .splide__arrow.prev {
  left: -5rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__arrows .splide__arrow.prev {
    left: -3.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__arrows .splide__arrow.prev {
    left: -6.4102564103vw;
  }
}
#sec03 .slider_area .splide__arrows .splide__arrow.next {
  left: 106rem;
}
@media screen and (max-width: 1200px) {
  #sec03 .slider_area .splide__arrows .splide__arrow.next {
    left: 81.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec03 .slider_area .splide__arrows .splide__arrow.next {
    left: auto;
    right: -6.4102564103vw;
  }
}

#sec04 {
  padding: 10rem 0 8.5rem;
}
@media screen and (max-width: 1200px) {
  #sec04 {
    padding: 7.6923076923vw 0 6.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 {
    padding: 12.8205128205vw 0 10.2564102564vw;
  }
}
#sec04 .title_area {
  margin-left: 2rem;
  margin-bottom: 3.8rem;
}
@media screen and (max-width: 1200px) {
  #sec04 .title_area {
    margin-left: 1.5384615385vw;
    margin-bottom: 2.9230769231vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 .title_area {
    margin-left: 2.5641025641vw;
    margin-bottom: 5.1282051282vw;
  }
}
#sec04 .title_area .l_copy {
  font-size: 4rem;
}
@media screen and (max-width: 1200px) {
  #sec04 .title_area .l_copy {
    font-size: 3.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 .title_area .l_copy {
    font-size: 5.641025641vw;
  }
}
#sec04 .txt {
  padding: 0 2rem 2rem;
  margin-bottom: 2rem;
  border-bottom: 0.1rem dashed #B2B2B2;
}
@media screen and (max-width: 1200px) {
  #sec04 .txt {
    padding: 0 1.5384615385vw 1.5384615385vw;
    margin-bottom: 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 .txt {
    padding: 0 2.5641025641vw 2.5641025641vw;
    margin-bottom: 2.5641025641vw;
  }
}
#sec04 .txt p {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 1200px) {
  #sec04 .txt p {
    font-size: 1.1538461538vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 .txt p {
    font-size: 3.5897435897vw;
  }
}
#sec04 .bottom {
  padding: 0 2rem;
}
@media screen and (max-width: 1200px) {
  #sec04 .bottom {
    padding: 0 1.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #sec04 .bottom {
    padding: 0 2.5641025641vw;
  }
}

#sec05 {
  padding: 4rem 0 17rem;
  background: url(../img/img17.jpg) no-repeat center center;
  background-size: auto 100%;
}
@media screen and (max-width: 1200px) {
  #sec05 {
    padding: 3.0769230769vw 0 13.0769230769vw;
    background-size: auto 65vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 {
    padding: 5.1282051282vw 0 20.5128205128vw;
    background: url(../img/img17.jpg) no-repeat left -10.2564102564vw bottom 46.1538461538vw;
    background-size: auto 100vw;
  }
}
#sec05 .wrap {
  max-width: 115.4rem;
  width: 95%;
}
#sec05 .en {
  margin-bottom: 9rem;
  font-size: 7.6rem;
  text-align: center;
  font-weight: 800;
  line-height: 1;
}
@media screen and (max-width: 1200px) {
  #sec05 .en {
    margin-bottom: 6.1538461538vw;
    font-size: 5.8461538462vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .en {
    margin-bottom: 10.2564102564vw;
    font-size: 5.641025641vw;
  }
}
#sec05 .flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 750px) {
  #sec05 .flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#sec05 .flex .title_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 3rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .title_area {
    gap: 2.3076923077vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .title_area {
    display: block;
    width: 100%;
  }
}
#sec05 .flex .title_area .title02 {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 750px) {
  #sec05 .flex .title_area .title02 {
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
            writing-mode: initial;
  }
}
#sec05 .flex .title_area .title02 img {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
@media screen and (max-width: 750px) {
  #sec05 .flex .title_area .title02 img {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
#sec05 .flex .title_area .copy {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 750px) {
  #sec05 .flex .title_area .copy {
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
            writing-mode: initial;
  }
}
#sec05 .flex .in {
  width: 39.8rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in {
    width: 30.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in {
    width: 100%;
    margin-top: 10.2564102564vw;
  }
}
#sec05 .flex .in .title03 {
  width: 20.6811rem;
  margin: 0 2rem 1.4rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .title03 {
    width: 15.9085384615vw;
    margin: 0 1.5384615385vw 1.0769230769vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .title03 {
    width: 25.641025641vw;
    margin: 0 2.5641025641vw 1.5384615385vw;
  }
}
#sec05 .flex .in .en {
  margin: 0 2rem 1.6rem;
  font-size: 1.6rem;
  text-align: left;
  font-weight: 600;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .en {
    margin: 0 1.5384615385vw 1.2307692308vw;
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .en {
    margin: 0 2.5641025641vw 2.0512820513vw;
    font-size: 3.8461538462vw;
  }
}
#sec05 .flex .in .large {
  margin: 0 2rem 1.4rem;
  font-size: 2.2rem;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .large {
    margin: 0 1.5384615385vw 1.0769230769vw;
    font-size: 1.6923076923vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .large {
    margin: 0 2.5641025641vw 1.5384615385vw;
    font-size: 4.1025641026vw;
  }
}
#sec05 .flex .in .caution {
  padding: 0 2rem 2.4rem;
  margin-bottom: 2.4rem;
  font-size: 1.3rem;
  color: #989898;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .caution {
    padding: 0 1.5384615385vw 1.8461538462vw;
    margin-bottom: 1.8461538462vw;
    font-size: 1vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .caution {
    padding: 0 2.5641025641vw 3.0769230769vw;
    margin-bottom: 3.0769230769vw;
    font-size: 3.0769230769vw;
  }
}
#sec05 .flex .in .txt {
  padding: 2.6rem 2rem 0;
  border-top: 0.1rem dashed #B2B2B2;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .txt {
    padding: 2vw 1.5384615385vw 0;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .txt {
    padding: 3.0769230769vw 2.5641025641vw 0;
  }
}
#sec05 .flex .in .txt p {
  font-size: 1.3rem;
  line-height: 2.076;
}
@media screen and (max-width: 1200px) {
  #sec05 .flex .in .txt p {
    font-size: 1vw;
  }
}
@media screen and (max-width: 750px) {
  #sec05 .flex .in .txt p {
    font-size: 3.0769230769vw;
  }
}

#netshop {
  padding: 9.6rem 0 9.4rem;
  background: url(../img/img18.jpg) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1200px) {
  #netshop {
    padding: 7.3846153846vw 0 7.2307692308vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop {
    padding: 12.8205128205vw 0;
  }
}
#netshop .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 36rem;
  height: 33rem;
  padding: 5.6rem 0 8.5rem;
  margin: auto;
  background: #001C3C;
}
@media screen and (max-width: 1200px) {
  #netshop .box {
    width: 27.6923076923vw;
    height: 25.3846153846vw;
    padding: 4.3076923077vw 0 6.5384615385vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop .box {
    width: 64.1025641026vw;
    height: 64.1025641026vw;
    padding: 7.6923076923vw 0;
  }
}
#netshop .box .logo {
  display: block;
  width: 12rem;
}
@media screen and (max-width: 1200px) {
  #netshop .box .logo {
    width: 9.2307692308vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop .box .logo {
    width: 25.641025641vw;
  }
}
#netshop .box .large {
  margin: 2rem 0 3rem;
  font-size: 3rem;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  #netshop .box .large {
    margin: 1.5384615385vw 0 2.3076923077vw;
    font-size: 2.3076923077vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop .box .large {
    margin: 5.1282051282vw 0 7.6923076923vw;
    font-size: 4.1025641026vw;
  }
}
#netshop .box .en a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.7rem;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 600;
}
@media screen and (max-width: 1200px) {
  #netshop .box .en a {
    gap: 0.5384615385vw;
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop .box .en a {
    gap: 1.7948717949vw;
    font-size: 3.5897435897vw;
  }
}
#netshop .box .en a img {
  width: 0.8rem;
}
@media screen and (max-width: 1200px) {
  #netshop .box .en a img {
    width: 0.6153846154vw;
  }
}
@media screen and (max-width: 750px) {
  #netshop .box .en a img {
    width: 1.2820512821vw;
  }
}

.p-index_parallax-bg {
  position: relative;
  width: 100%;
  height: 100vh;
  clip-path: inset(0);
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .p-index_parallax-bg {
    height: 70vh;
  }
}
@media screen and (max-width: 750px) {
  .p-index_parallax-bg {
    height: 45vh;
  }
}
.p-index_parallax-bg .p-index_parallax-bg__inner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
@media screen and (max-width: 1200px) {
  .p-index_parallax-bg .p-index_parallax-bg__inner {
    top: 10vh;
    height: 70vh;
  }
}
@media screen and (max-width: 750px) {
  .p-index_parallax-bg .p-index_parallax-bg__inner {
    top: 20vh;
    height: 45vh;
  }
}
.p-index_parallax-bg .p-index_parallax-bg__bg {
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
  z-index: -1;
}
.p-index_parallax-bg .-bg01 {
  background-image: url(../img/img08.jpg);
}
.p-index_parallax-bg .-bg02 {
  background-image: url(../img/img15.jpg);
}
.p-index_parallax-bg .-bg03 {
  background-image: url(../img/img16.jpg);
}

/*------------ gallery -----------------*/
.gallery {
  overflow: hidden;
}
.gallery__outer {
  width: 100vw;
  overflow: hidden;
  -webkit-transition: width 0.5s ease;
  transition: width 0.5s ease;
}
.gallery__inner {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 435/562;
  aspect-ratio: 2600/2062;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.gallery .gallery__image {
  opacity: 0;
  position: absolute;
}
.gallery .gallery__image img {
  width: 100%;
}
.gallery .gallery__image-wrap {
  position: relative;
  aspect-ratio: 2600/2062;
  display: block;
  width: 43.2307692308%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: none;
  transition: none;
}
.gallery .gallery__image.-main {
  width: 43.2307692308%;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 57%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  opacity: 1;
}
.gallery .gallery__image.-img01 {
  width: 80.0711743772%;
  left: 0;
  top: -66%;
  opacity: 1;
}
.gallery .gallery__image.-img02 {
  width: 83.9857651246%;
  top: -50%;
  left: 84%;
  opacity: 1;
}
.gallery .gallery__image.-img03 {
  width: 62.4555160142%;
  left: -66%;
  top: 8%;
  opacity: 1;
}
.gallery .gallery__image.-img05 {
  width: 64.0569395018%;
  left: 103%;
  top: 7.5%;
  opacity: 1;
}
.gallery .gallery__image.-img06 {
  width: 64.0569395018%;
  left: 103%;
  top: 67.5%;
  opacity: 1;
}
.gallery .gallery__image.-img07 {
  width: 85.409252669%;
  left: 0;
  top: 109.5%;
  opacity: 1;
}

/*----------------- gallery end -------------------*/