@charset "UTF-8";
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* remember: box-sizing is not supported by IE7 :( */
  outline: none;
  vertical-align: top;
  margin: 0;
  padding: 0; }

*, *:after, *:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, lifieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  width: 100%;
  z-index: 1; }

body {
  min-width: 1px;
  line-height: 1; }

html, body {
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

ul {
  font-size: 0px;
  list-style-type: none; }

blockquote, q {
  quotes: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  outline: none;
  display: block;
  color: inherit; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

input, button, textarea, select {
  font-size: 16px;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%; }

img {
  width: 100%; }

figure {
  font-size: 0; }

.bgimg {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

header, div, span, p, h1, h2, h3, h4, figure, a, img, input[type="submiit"], .fa, *:after, *:before {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease; }

p, h1, h2, h3, h4, h5 {
  display: block;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0; }

input[type="radio"] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
  display: inline-block; }

.pc {
  display: block !important; }

.sp {
  display: none !important; }

.inline-pc {
  display: inline-block !important; }

.inline-sp {
  display: none !important; }

.wrapper {
  overflow: hidden; }

span {
  display: inline-block; }

main {
  display: block;
  height: 100%; }
main article {
  height: 100%; }

section {
  position: relative; }

@media only screen and (max-width: 768px) {
  .pc {
    display: none !important; }

  .sp {
    display: block !important; }

  .inline-pc {
    display: none !important; }

  .inline-sp {
    display: inline-block !important; }

  html, body {
    font-size: 3vw; } }
/*
-------------------------------------------
Color
-------------------------------------------
*/
/* color style */
/* gradient */
.str-gradient {
  background: var(--Linear, linear-gradient(180deg, #98F23E 9.23%, #98F23E 67.8%, #FFF 161.35%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

/* css style */
.blk {
  color: #0b1624 !important; }

.blk50 {
  color: rgba(11, 22, 36, 0.5) !important; }

.white {
  color: white !important; }

.blue {
  color: #2ba2f8 !important; }

.orange {
  color: #ff7051 !important; }

.pink {
  color: #ff78b9 !important; }

.bg-blk {
  background-color: #0b1624 !important; }

.bg-blk10 {
  background-color: rgba(11, 22, 36, 0.1) !important; }

.bg-blk5 {
  background-color: rgba(11, 22, 36, 0.05) !important; }

.bg-white {
  background-color: white !important; }

.bg-blue {
  background-color: #2ba2f8 !important; }

.bg-blue10 {
  background-color: rgba(43, 162, 248, 0.1) !important; }

.bg-blue5 {
  background-color: rgba(43, 162, 248, 0.05) !important; }

.bg-orange {
  background-color: #ff7051 !important; }

.bg-orange10 {
  background-color: rgba(255, 112, 81, 0.1) !important; }

.bg-orange5 {
  background-color: rgba(255, 112, 81, 0.05) !important; }

.bg-pink {
  background-color: #ff78b9 !important; }

.bg-pink10 {
  background-color: rgba(255, 120, 185, 0.1) !important; }

.bg-pink5 {
  background-color: rgba(255, 120, 185, 0.05) !important; }

/*
-------------------------------------------
Font 
-------------------------------------------
*/
html, body {
  font-family: "Figtree", noto-sans-cjk-jp, sans-serif;
  font-size: .9vw;
  line-height: 1.8;
  letter-spacing: .05vw;
  background-color: white;
  color: #0b1624;
  font-weight: 500;
  font-display: block;
  font-optical-sizing: auto;
  font-style: normal; }

main {
  position: relative;
  z-index: 2; }

@media only screen and (max-width: 768px) {
  html, body {
    font-size: 3vw; }

  h2, h3, h4, h5 {
    font-weight: 600; }

  .wrapper {
    overflow: hidden; }

  main {
    width: 100vw;
    overflow: hidden; } }
/*
-------------------------------------------
display-system
-------------------------------------------
*/
.flex {
  display: flex !important; }

.f-start {
  justify-content: flex-start; }

.f-end {
  justify-content: flex-end; }

.f-center {
  justify-content: center; }

.f-space {
  justify-content: space-between; }

.a-start {
  align-items: start; }

.a-center {
  align-items: center; }

.a-end {
  align-items: end; }

.a-stretch {
  align-self: stretch; }

.f-wrap {
  flex-wrap: wrap; }

.f-l-wrap {
  flex-wrap: wrap-reverse; }

.fd-column {
  flex-direction: column; }

.shrink {
  flex-shrink: 0; }

.flex-item {
  flex: 1;
  word-wrap: break-word;
  min-width: 0; }

.flex-item02 {
  flex: 2;
  word-wrap: break-word;
  min-width: 0; }

.flex-item03 {
  flex: 3;
  word-wrap: break-word;
  min-width: 0; }

.flex-item04 {
  flex: 4;
  word-wrap: break-word;
  min-width: 0; }

.flex-item05 {
  flex: 5;
  word-wrap: break-word;
  min-width: 0; }

.gap-80 {
  gap: 8vw; }

.gap-70 {
  gap: 7vw; }

.gap-60 {
  gap: 6vw; }

.gap-50 {
  gap: 5vw; }

.gap-40 {
  gap: 4vw; }

.gap-36 {
  gap: 3.6vw; }

.gap-32 {
  gap: 3.2vw; }

.gap-28 {
  gap: 2.8vw; }

.gap-24 {
  gap: 2.4vw; }

.gap-20 {
  gap: 2vw; }

.gap-18 {
  gap: 1.8vw; }

.gap-16 {
  gap: 1.6vw; }

.gap-14 {
  gap: 1.4vw; }

.gap-12 {
  gap: 1.2vw; }

.gap-10 {
  gap: 1vw; }

.gap-08 {
  gap: .8vw; }

.gap-06 {
  gap: .6vw; }

.gap-04 {
  gap: .4vw; }

.gap-02 {
  gap: .2vw; }

@media only screen and (max-width: 768px) {
  .f-center-sp {
    justify-content: center; }

  .f-wrap-sp {
    flex-wrap: wrap; }

  .f-l-wrap-sp {
    flex-wrap: wrap-reverse; }

  .f-space-sp {
    justify-content: space-between; }

  .flex-item {
    flex: none;
    width: 100%;
    word-wrap: break-word;
    min-width: 0; }

  .flex-item02 {
    flex: none;
    width: 100%;
    word-wrap: break-word;
    min-width: 0; }

  .flex-item03 {
    flex: none;
    width: 100%;
    word-wrap: break-word;
    min-width: 0; }

  .flex-item04 {
    flex: none;
    width: 100%;
    word-wrap: break-word;
    min-width: 0; }

  .flex-item05 {
    flex: none;
    width: 100%;
    word-wrap: break-word;
    min-width: 0; }

  .gap-80 {
    gap: 24vw; }

  .gap-70 {
    gap: 21vw; }

  .gap-60 {
    gap: 18vw; }

  .gap-50 {
    gap: 15vw; }

  .gap-40 {
    gap: 12vw; }

  .gap-36 {
    gap: 10.8vw; }

  .gap-32 {
    gap: 9.6vw; }

  .gap-28 {
    gap: 8.4vw; }

  .gap-24 {
    gap: 7.2vw; }

  .gap-20 {
    gap: 6vw; }

  .gap-18 {
    gap: 5.4vw; }

  .gap-16 {
    gap: 4.8vw; }

  .gap-14 {
    gap: 4.2vw; }

  .gap-12 {
    gap: 3.6vw; }

  .gap-10 {
    gap: 3vw; }

  .gap-08 {
    gap: 2.4vw; }

  .gap-06 {
    gap: 1.8vw; }

  .gap-04 {
    gap: 1.2vw; }

  .gap-02 {
    gap: .6vw; }

  .gap-80-sp {
    gap: 24vw; }

  .gap-70-sp {
    gap: 21vw; }

  .gap-60-sp {
    gap: 18vw; }

  .gap-50-sp {
    gap: 15vw; }

  .gap-40-sp {
    gap: 12vw; }

  .gap-36-sp {
    gap: 10.8vw; }

  .gap-32-sp {
    gap: 9.6vw; }

  .gap-28-sp {
    gap: 8.4vw; }

  .gap-24-sp {
    gap: 7.2vw; }

  .gap-20-sp {
    gap: 6vw; }

  .gap-18-sp {
    gap: 5.4vw; }

  .gap-16-sp {
    gap: 4.8vw; }

  .gap-14-sp {
    gap: 4.2vw; }

  .gap-12-sp {
    gap: 3.6vw; }

  .gap-10-sp {
    gap: 3vw; }

  .gap-08-sp {
    gap: 2.4vw; }

  .gap-06-sp {
    gap: 1.8vw; }

  .gap-04-sp {
    gap: 1.2vw; }

  .gap-02-sp {
    gap: .6vw; } }
/*
-------------------------------------------
size
-------------------------------------------
*/
.w-90 {
  width: 90vw; }

.w-80 {
  width: 80vw; }

.w-70 {
  width: 70vw; }

.w-60 {
  width: 60vw; }

.w-50 {
  width: 50vw; }

.w-40 {
  width: 40vw; }

.w-30 {
  width: 30vw; }

.w-24 {
  width: 24vw; }

.w-20 {
  width: 20vw; }

.w-18 {
  width: 18vw; }

.w-16 {
  width: 16vw; }

.w-14 {
  width: 14vw; }

.w-12 {
  width: 12vw; }

.w-10 {
  width: 10vw; }

.w-09 {
  width: 9vw; }

.w-08 {
  width: 8vw; }

.w-07 {
  width: 7vw; }

.w-06 {
  width: 6vw; }

.w-05 {
  width: 5vw; }

.w-04 {
  width: 4vw; }

.w-03 {
  width: 3vw; }

.w-02 {
  width: 2vw; }

.w-01 {
  width: 1vw; }

.w-009 {
  width: .9vw; }

.w-008 {
  width: .8vw; }

.w-007 {
  width: .7vw; }

.w-006 {
  width: .6vw; }

.w-005 {
  width: .5vw; }

.w90p {
  width: 90%; }

.w80p {
  width: 80%; }

.w70p {
  width: 70%; }

.w65p {
  width: 65%; }

.w60p {
  width: 60%; }

.w50p {
  width: 50%; }

.w40p {
  width: 40%; }

.w35p {
  width: 35%; }

.w30p {
  width: 30%; }

.w20p {
  width: 20%; }

.w10p {
  width: 10%; }

@media only screen and (max-width: 768px) {
  .w-90 {
    width: 90vw; }

  .w-80 {
    width: 80vw; }

  .w-70 {
    width: 70vw; }

  .w-60 {
    width: 60vw; }

  .w-50 {
    width: 88vw; }

  .w-40 {
    width: 84vw; }

  .w-30 {
    width: 80vw; }

  .w-24 {
    width: 72vw; }

  .w-20 {
    width: 60w; }

  .w-18 {
    width: 54vw; }

  .w-16 {
    width: 48vw; }

  .w-14 {
    width: 42vw; }

  .w-12 {
    width: 36vw; }

  .w-10 {
    width: 30vw; }

  .w-09 {
    width: 27vw; }

  .w-08 {
    width: 24vw; }

  .w-07 {
    width: 21vw; }

  .w-06 {
    width: 18vw; }

  .w-05 {
    width: 15vw; }

  .w-04 {
    width: 12vw; }

  .w-03 {
    width: 9vw; }

  .w-02 {
    width: 6vw; }

  .w-01 {
    width: 3vw; }

  .w-009 {
    width: 2.7vw; }

  .w-008 {
    width: 2.4vw; }

  .w-007 {
    width: 2.1vw; }

  .w-006 {
    width: 1.8vw; }

  .w-005 {
    width: 1.5vw; } }
.h-90 {
  height: 90vw; }

.h-80 {
  height: 80vw; }

.h-70 {
  height: 70vw; }

.h-60 {
  height: 60vw; }

.h-50 {
  height: 50vw; }

.h-40 {
  height: 40vw; }

.h-30 {
  height: 30vw; }

.h-24 {
  height: 24vw; }

.h-20 {
  height: 20vw; }

.h-18 {
  height: 18vw; }

.h-16 {
  height: 16vw; }

.h-14 {
  height: 14vw; }

.h-12 {
  height: 12vw; }

.h-10 {
  height: 10vw; }

.h-09 {
  height: 9vw; }

.h-08 {
  height: 8vw; }

.h-07 {
  height: 7vw; }

.h-06 {
  height: 6vw; }

.h-05 {
  height: 5vw; }

.h-04 {
  height: 4vw; }

.h-03 {
  height: 3vw; }

.h-02 {
  height: 2vw; }

.h-01 {
  height: 1vw; }

.h-009 {
  height: .9vw; }

.h-008 {
  height: .8vw; }

.h-007 {
  height: .7vw; }

.h-006 {
  height: .6vw; }

.h-005 {
  height: .5vw; }

@media only screen and (max-width: 768px) {
  .h-90 {
    height: 90vw; }

  .h-80 {
    height: 80vw; }

  .h-70 {
    height: 70vw; }

  .h-60 {
    height: 60vw; }

  .h-50 {
    height: 88vw; }

  .h-40 {
    height: 84vw; }

  .h-30 {
    height: 80vw; }

  .h-24 {
    height: 72vw; }

  .h-20 {
    height: 60w; }

  .h-18 {
    height: 54vw; }

  .h-16 {
    height: 48vw; }

  .h-14 {
    height: 42vw; }

  .h-12 {
    height: 36vw; }

  .h-10 {
    height: 30vw; }

  .h-09 {
    height: 27vw; }

  .h-08 {
    height: 24vw; }

  .h-07 {
    height: 21vw; }

  .h-06 {
    height: 18vw; }

  .h-05 {
    height: 15vw; }

  .h-04 {
    height: 12vw; }

  .h-03 {
    height: 9vw; }

  .h-02 {
    height: 6vw; }

  .h-01 {
    height: 3vw; }

  .h-009 {
    height: 2.7vw; }

  .h-008 {
    height: 2.4vw; }

  .h-007 {
    height: 2.1vw; }

  .h-006 {
    height: 1.8vw; }

  .h-005 {
    height: 1.5vw; }

  .h-90-sp {
    height: 90vw; }

  .h-80-sp {
    height: 80vw; }

  .h-70-sp {
    height: 70vw; }

  .h-60-sp {
    height: 60vw; }

  .h-50-sp {
    height: 88vw; }

  .h-40-sp {
    height: 84vw; }

  .h-30-sp {
    height: 80vw; }

  .h-24-sp {
    height: 72vw; }

  .h-20-sp {
    height: 60w; }

  .h-18-sp {
    height: 54vw; }

  .h-16-sp {
    height: 48vw; }

  .h-14-sp {
    height: 42vw; }

  .h-12-sp {
    height: 36vw; }

  .h-10-sp {
    height: 30vw; }

  .h-09-sp {
    height: 27vw; }

  .h-08-sp {
    height: 24vw; }

  .h-07-sp {
    height: 21vw; }

  .h-06-sp {
    height: 18vw; }

  .h-05-sp {
    height: 15vw; }

  .h-04-sp {
    height: 12vw; }

  .h-03-sp {
    height: 9vw; }

  .h-02-sp {
    height: 6vw; }

  .h-01-sp {
    height: 3vw; }

  .h-009-sp {
    height: 2.7vw; }

  .h-008-sp {
    height: 2.4vw; }

  .h-007-sp {
    height: 2.1vw; }

  .h-006-sp {
    height: 1.8vw; }

  .h-005-sp {
    height: 1.5vw; } }
/*
-------------------------------------------
text
-------------------------------------------
*/
/* font-size */
.fs-60 {
  font-size: 6vw; }

.fs-56 {
  font-size: 5.6vw; }

.fs-52 {
  font-size: 5.2vw; }

.fs-48 {
  font-size: 4.8vw; }

.fs-44 {
  font-size: 4.4vw; }

.fs-40 {
  font-size: 4vw; }

.fs-36 {
  font-size: 3.6vw; }

.fs-32 {
  font-size: 3.2vw; }

.fs-28 {
  font-size: 2.8vw; }

.fs-24 {
  font-size: 2.4vw; }

.fs-20 {
  font-size: 2vw; }

.fs-18 {
  font-size: 1.8vw; }

.fs-16 {
  font-size: 1.6vw; }

.fs-14 {
  font-size: 1.4vw; }

.fs-13 {
  font-size: 1.3vw; }

.fs-12 {
  font-size: 1.2vw; }

.fs-11 {
  font-size: 1.1vw; }

.fs-10 {
  font-size: 1vw; }

.fs-09 {
  font-size: 0.9vw; }

.fs-085 {
  font-size: 0.85vw; }

.fs-08 {
  font-size: 0.8vw; }

/* font-weight */
.fw-400 {
  font-weight: 400; }

.fw-500 {
  font-weight: 500; }

.fw-600 {
  font-weight: 600; }

.fw-700 {
  font-weight: 700; }

/* light-height */
.lh20 {
  line-height: 2; }

.lh18 {
  line-height: 1.8; }

.lh17 {
  line-height: 1.7; }

.lh16 {
  line-height: 1.6; }

.lh15 {
  line-height: 1.5; }

.lh14 {
  line-height: 1.4; }

.lh13 {
  line-height: 1.3; }

.lh12 {
  line-height: 1.2; }

.lh11 {
  line-height: 1.1; }

.lh10 {
  line-height: 1; }

@media only screen and (max-width: 768px) {
  /* font-size */
  .fs-60 {
    font-size: 18vw; }

  .fs-56 {
    font-size: 16.8vw; }

  .fs-52 {
    font-size: 15.6vw; }

  .fs-48 {
    font-size: 14.4vw; }

  .fs-44 {
    font-size: 13.2vw; }

  .fs-40 {
    font-size: 12vw; }

  .fs-36 {
    font-size: 10.8vw; }

  .fs-32 {
    font-size: 9.6vw; }

  .fs-28 {
    font-size: 8.4vw; }

  .fs-24 {
    font-size: 7.2vw; }

  .fs-20 {
    font-size: 6vw; }

  .fs-18 {
    font-size: 5.4vw; }

  .fs-16 {
    font-size: 4.8vw; }

  .fs-14 {
    font-size: 4.2vw; }

  .fs-13 {
    font-size: 3.9vw; }

  .fs-12 {
    font-size: 3.6vw; }

  .fs-11 {
    font-size: 3.3vw; }

  .fs-10 {
    font-size: 3.1vw; }

  .fs-09 {
    font-size: 3vw; }

  .fs-085 {
    font-size: 2.9vw; }

  .fs-08 {
    font-size: 2.8vw; }

  /* font-size */
  .fs-60-sp {
    font-size: 18vw; }

  .fs-56-sp {
    font-size: 16.8vw; }

  .fs-52-sp {
    font-size: 15.6vw; }

  .fs-48-sp {
    font-size: 14.4vw; }

  .fs-44-sp {
    font-size: 13.2vw; }

  .fs-40-sp {
    font-size: 12vw; }

  .fs-36-sp {
    font-size: 10.8vw; }

  .fs-32-sp {
    font-size: 9.6vw; }

  .fs-28-sp {
    font-size: 8.4vw; }

  .fs-24-sp {
    font-size: 7.2vw; }

  .fs-20-sp {
    font-size: 6vw; }

  .fs-18-sp {
    font-size: 5.4vw; }

  .fs-16-sp {
    font-size: 4.8vw; }

  .fs-14-sp {
    font-size: 4.2vw; }

  .fs-13-sp {
    font-size: 3.9vw; }

  .fs-12-sp {
    font-size: 3.6vw; }

  .fs-11-sp {
    font-size: 3.3vw; }

  .fs-10-sp {
    font-size: 3vw; }

  .fs-09-sp {
    font-size: 2.7vw; }

  .fs-085-sp {
    font-size: 2.55vw; }

  .fs-08-sp {
    font-size: 2.4vw; }

  /* light-height */
  .lh20-sp {
    line-height: 2; }

  .lh18-sp {
    line-height: 1.8; }

  .lh17-sp {
    line-height: 1.7; }

  .lh16-sp {
    line-height: 1.6; }

  .lh15-sp {
    line-height: 1.5; }

  .lh14-sp {
    line-height: 1.4; }

  .lh13-sp {
    line-height: 1.3; }

  .lh12-sp {
    line-height: 1.2; }

  .lh11-sp {
    line-height: 1.1; }

  .lh10-sp {
    line-height: 1; } }
/*
-------------------------------------------
inner
-------------------------------------------
*/
.inner-94 {
  width: 96vw;
  margin: 0 auto;
  position: relative; }

.inner-90 {
  width: 90vw;
  margin: 0 auto;
  position: relative; }

.inner-86 {
  width: 86vw;
  margin: 0 auto;
  position: relative; }

.inner-82 {
  width: 82vw;
  margin: 0 auto;
  position: relative; }

.inner-78 {
  width: 78vw;
  margin: 0 auto;
  position: relative; }

.inner-74 {
  width: 74vw;
  margin: 0 auto;
  position: relative; }

.inner-70 {
  width: 70vw;
  margin: 0 auto;
  position: relative; }

.inner-66 {
  width: 66vw;
  margin: 0 auto;
  position: relative; }

.inner-62 {
  width: 62vw;
  margin: 0 auto;
  position: relative; }

@media only screen and (max-width: 768px) {
  .inner-94 {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-90 {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-86 {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-82 {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-78 {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-74 {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-70 {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-66 {
    width: 66vw;
    margin: 0 auto;
    position: relative; }

  .inner-62 {
    width: 62vw;
    margin: 0 auto;
    position: relative; }

  .inner-94-sp {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-90-sp {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-86-sp {
    width: 92vw;
    margin: 0 auto;
    position: relative; }

  .inner-82-sp {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-78-sp {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-74-sp {
    width: 82vw;
    margin: 0 auto;
    position: relative; }

  .inner-70-sp {
    width: 70vw;
    margin: 0 auto;
    position: relative; }

  .inner-66-sp {
    width: 66vw;
    margin: 0 auto;
    position: relative; }

  .inner-62-sp {
    width: 62vw;
    margin: 0 auto;
    position: relative; } }
/*
-------------------------------------------
Appearance
-------------------------------------------
*/
.rad-1000 {
  border-radius: 1000px;
  -webkit-border-radius: 1000px; }

.rad-16 {
  border-radius: 1.6vw;
  -webkit-border-radius: 1.6vw; }

.rad-12 {
  border-radius: 1.2vw;
  -webkit-border-radius: 1.2vw; }

.rad-08 {
  border-radius: 0.8vw;
  -webkit-border-radius: 0.8vw; }

.rad-06 {
  border-radius: 0.6vw;
  -webkit-border-radius: 0.6vw; }

.rad-04 {
  border-radius: 0.4vw;
  -webkit-border-radius: 0.4vw; }

.rad-02 {
  border-radius: 0.2vw;
  -webkit-border-radius: 0.2vw; }

@media only screen and (max-width: 768px) {
  .rad-16 {
    border-radius: 3.2vw;
    -webkit-border-radius: 3.2vw; }

  .rad-12 {
    border-radius: 2.4vw;
    -webkit-border-radius: 2.4vw; }

  .rad-08 {
    border-radius: 1.6vw;
    -webkit-border-radius: 1.6vw; }

  .rad-06 {
    border-radius: 1.2vw;
    -webkit-border-radius: 1.2vw; }

  .rad-04 {
    border-radius: 0.8vw;
    -webkit-border-radius: 0.8vw; }

  .rad-02 {
    border-radius: 0.4vw;
    -webkit-border-radius: 0.4vw; } }
/* shadow */
.shadow {
  box-shadow: 0px 1.2vw 3.6vw 0px rgba(15, 29, 35, 0.05); }

.g-shadow {
  box-shadow: 0px 0.6vw 1.8vw 0px rgba(27, 193, 89, 0.15); }

.g-cir-shadow {
  border-radius: 1000px;
  box-shadow: 0px 0.6vw 1.8vw 0px rgba(27, 193, 89, 0.15); }

/* border */
/* other */
.ovh {
  overflow: hidden; }

.relative {
  position: relative; }

.pa-cover {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.pa-cs {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

a:hover .hover-scale05 {
  transform: scale(1.05); }
a:hover .hover-scale1 {
  transform: scale(1.1); }

.z-4 {
  z-index: 4; }

.z-3 {
  z-index: 3; }

.z-2 {
  z-index: 2; }

/* align */
.t-center {
  text-align: center; }

.t-right {
  text-align: right; }

.p-xy-center {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto; }

.bg-img {
  background-size: cover;
  background-position: center; }

@media only screen and (max-width: 768px) {
  .t-center-sp {
    text-align: center !important; }

  .t-left-sp {
    text-align: left !important; } }
/* opacity */
.opa-09 {
  opacity: 0.9; }

.opa-08 {
  opacity: 0.8; }

.opa-07 {
  opacity: 0.7; }

.opa-06 {
  opacity: 0.6; }

.opa-05 {
  opacity: 0.5; }

.opa-04 {
  opacity: 0.4; }

.opa-03 {
  opacity: 0.3; }

.opa-02 {
  opacity: 0.2; }

.opa-01 {
  opacity: 0.1; }

.hidden {
  display: none; }

/*
-------------------------------------------
Margin & Padding
-------------------------------------------
*/
.pt-16 {
  padding-top: 16vw; }

.pt-14 {
  padding-top: 14vw; }

.pt-12 {
  padding-top: 12vw; }

.pt-10 {
  padding-top: 10vw; }

.pt-09 {
  padding-top: 9vw; }

.pt-08 {
  padding-top: 8vw; }

.pt-07 {
  padding-top: 7vw; }

.pt-06 {
  padding-top: 6vw; }

.pt-05 {
  padding-top: 5vw; }

.pt-04 {
  padding-top: 4vw; }

.pt-03 {
  padding-top: 3vw; }

.pt-02 {
  padding-top: 2vw; }

.pt-015 {
  padding-top: 1.5vw; }

.pt-01 {
  padding-top: 1vw; }

.pt-004 {
  padding-top: .4vw; }

.pb-16 {
  padding-bottom: 16vw; }

.pb-14 {
  padding-bottom: 14vw; }

.pb-12 {
  padding-bottom: 12vw; }

.pb-10 {
  padding-bottom: 10vw; }

.pb-09 {
  padding-bottom: 9vw; }

.pb-08 {
  padding-bottom: 8vw; }

.pb-07 {
  padding-bottom: 7vw; }

.pb-06 {
  padding-bottom: 6vw; }

.pb-05 {
  padding-bottom: 5vw; }

.pb-04 {
  padding-bottom: 4vw; }

.pb-03 {
  padding-bottom: 3vw; }

.pb-02 {
  padding-bottom: 2vw; }

.pb-015 {
  padding-bottom: 1.5vw; }

.pb-01 {
  padding-bottom: 1vw; }

.pl-16 {
  padding-left: 16vw; }

.pl-14 {
  padding-left: 14vw; }

.pl-12 {
  padding-left: 12vw; }

.pl-10 {
  padding-left: 10vw; }

.pl-09 {
  padding-left: 9vw; }

.pl-08 {
  padding-left: 8vw; }

.pl-07 {
  padding-left: 7vw; }

.pl-06 {
  padding-left: 6vw; }

.pl-05 {
  padding-left: 5vw; }

.pl-04 {
  padding-left: 4vw; }

.pl-03 {
  padding-left: 3vw; }

.pl-02 {
  padding-left: 2vw; }

.pl-01 {
  padding-left: 1vw; }

.pr-16 {
  padding-right: 16vw; }

.pr-14 {
  padding-right: 14vw; }

.pr-12 {
  padding-right: 12vw; }

.pr-10 {
  padding-right: 10vw; }

.pr-09 {
  padding-right: 9vw; }

.pr-08 {
  padding-right: 8vw; }

.pr-07 {
  padding-right: 7vw; }

.pr-06 {
  padding-right: 6vw; }

.pr-05 {
  padding-right: 5vw; }

.pr-04 {
  padding-right: 4vw; }

.pr-03 {
  padding-right: 3vw; }

.pr-02 {
  padding-right: 2vw; }

.pr-01 {
  padding-right: 1vw; }

.ptb-16 {
  padding-top: 16vw;
  padding-bottom: 16vw; }

.ptb-14 {
  padding-top: 14vw;
  padding-bottom: 14vw; }

.ptb-12 {
  padding-top: 12vw;
  padding-bottom: 12vw; }

.ptb-10 {
  padding-top: 10vw;
  padding-bottom: 10vw; }

.ptb-09 {
  padding-top: 9vw;
  padding-bottom: 9vw; }

.ptb-08 {
  padding-top: 8vw;
  padding-bottom: 8vw; }

.ptb-07 {
  padding-top: 7vw;
  padding-bottom: 7vw; }

.ptb-06 {
  padding-top: 6vw;
  padding-bottom: 6vw; }

.ptb-05 {
  padding-top: 5vw;
  padding-bottom: 5vw; }

.ptb-04 {
  padding-top: 4vw;
  padding-bottom: 4vw; }

.ptb-03 {
  padding-top: 3vw;
  padding-bottom: 3vw; }

.ptb-02 {
  padding-top: 2vw;
  padding-bottom: 2vw; }

.ptb-015 {
  padding-top: 1.5vw;
  padding-bottom: 1.5vw; }

.ptb-01 {
  padding-top: 1vw;
  padding-bottom: 1vw; }

.ptb-004 {
  padding-top: 0.4vw;
  padding-bottom: 0.4vw; }

.ptb-002 {
  padding-top: 0.2vw;
  padding-bottom: 0.2vw; }

.plr-16 {
  padding-left: 16vw;
  padding-right: 16vw; }

.plr-14 {
  padding-left: 14vw;
  padding-right: 14vw; }

.plr-12 {
  padding-left: 12vw;
  padding-right: 12vw; }

.plr-10 {
  padding-left: 10vw;
  padding-right: 10vw; }

.plr-09 {
  padding-left: 9vw;
  padding-right: 9vw; }

.plr-08 {
  padding-left: 8vw;
  padding-right: 8vw; }

.plr-07 {
  padding-left: 7vw;
  padding-right: 7vw; }

.plr-06 {
  padding-left: 6vw;
  padding-right: 6vw; }

.plr-05 {
  padding-left: 5vw;
  padding-right: 5vw; }

.plr-04 {
  padding-left: 4vw;
  padding-right: 4vw; }

.plr-03 {
  padding-left: 3vw;
  padding-right: 3vw; }

.plr-02 {
  padding-left: 2vw;
  padding-right: 2vw; }

.plr-01 {
  padding-left: 1vw;
  padding-right: 1vw; }

.plr-006 {
  padding-left: 0.6vw;
  padding-right: 0.6vw; }

.mb-16 {
  margin-bottom: 16vw; }

.mb-14 {
  margin-bottom: 14vw; }

.mb-12 {
  margin-bottom: 12vw; }

.mb-10 {
  margin-bottom: 10vw; }

.mb-09 {
  margin-bottom: 9vw; }

.mb-08 {
  margin-bottom: 8vw; }

.mb-07 {
  margin-bottom: 7vw; }

.mb-06 {
  margin-bottom: 6vw; }

.mb-05 {
  margin-bottom: 5vw; }

.mb-04 {
  margin-bottom: 4vw; }

.mb-03 {
  margin-bottom: 3vw; }

.mb-02 {
  margin-bottom: 2vw; }

.mb-015 {
  margin-bottom: 1.5vw; }

.mb-01 {
  margin-bottom: 1vw; }

.mb-008 {
  margin-bottom: .8vw; }

.mb-006 {
  margin-bottom: .6vw; }

.mb-004 {
  margin-bottom: .4vw; }

.mb-002 {
  margin-bottom: .2vw; }

@media only screen and (max-width: 768px) {
  .pt-16 {
    padding-top: 40vw; }

  .pt-14 {
    padding-top: 35vw; }

  .pt-12 {
    padding-top: 30vw; }

  .pt-10 {
    padding-top: 25vw; }

  .pt-09 {
    padding-top: 22.5vw; }

  .pt-08 {
    padding-top: 20vw; }

  .pt-07 {
    padding-top: 17.5vw; }

  .pt-06 {
    padding-top: 15vw; }

  .pt-05 {
    padding-top: 12.5vw; }

  .pt-04 {
    padding-top: 10vw; }

  .pt-03 {
    padding-top: 7.5vw; }

  .pt-02 {
    padding-top: 5vw; }

  .pt-01 {
    padding-top: 3vw; }

  .pt-16-sp {
    padding-top: 40vw; }

  .pt-14-sp {
    padding-top: 35vw; }

  .pt-12-sp {
    padding-top: 30vw; }

  .pt-10-sp {
    padding-top: 25vw; }

  .pt-09-sp {
    padding-top: 22.5vw; }

  .pt-08-sp {
    padding-top: 20vw; }

  .pt-07-sp {
    padding-top: 17.5vw; }

  .pt-06-sp {
    padding-top: 15vw; }

  .pt-05-sp {
    padding-top: 12.5vw; }

  .pt-04-sp {
    padding-top: 10vw; }

  .pt-03-sp {
    padding-top: 7.5vw; }

  .pt-02-sp {
    padding-top: 5vw; }

  .pt-01-sp {
    padding-top: 3vw; }

  .pt-00-sp {
    padding-top: 0vw; }

  .pb-16 {
    padding-bottom: 40vw; }

  .pb-14 {
    padding-bottom: 35vw; }

  .pb-12 {
    padding-bottom: 30vw; }

  .pb-10 {
    padding-bottom: 25vw; }

  .pb-09 {
    padding-bottom: 22.5vw; }

  .pb-08 {
    padding-bottom: 20vw; }

  .pb-07 {
    padding-bottom: 17.5vw; }

  .pb-06 {
    padding-bottom: 15vw; }

  .pb-05 {
    padding-bottom: 12.5vw; }

  .pb-04 {
    padding-bottom: 10vw; }

  .pb-03 {
    padding-bottom: 7.5vw; }

  .pb-02 {
    padding-bottom: 5vw; }

  .pb-01 {
    padding-bottom: 3vw; }

  .pb-16-sp {
    padding-bottom: 40vw; }

  .pb-14-sp {
    padding-bottom: 35vw; }

  .pb-12-sp {
    padding-bottom: 30vw; }

  .pb-10-sp {
    padding-bottom: 25vw; }

  .pb-09-sp {
    padding-bottom: 22.5vw; }

  .pb-08-sp {
    padding-bottom: 20vw; }

  .pb-07-sp {
    padding-bottom: 17.5vw; }

  .pb-06-sp {
    padding-bottom: 15vw; }

  .pb-05-sp {
    padding-bottom: 12.5vw; }

  .pb-04-sp {
    padding-bottom: 10vw; }

  .pb-03-sp {
    padding-bottom: 7.5vw; }

  .pb-02-sp {
    padding-bottom: 5vw; }

  .pb-01-sp {
    padding-bottom: 3vw; }

  .pb-00-sp {
    padding-bottom: 0vw; }

  .pl-16 {
    padding-left: 40vw; }

  .pl-14 {
    padding-left: 35vw; }

  .pl-12 {
    padding-left: 30vw; }

  .pl-10 {
    padding-left: 25vw; }

  .pl-09 {
    padding-left: 22.5vw; }

  .pl-08 {
    padding-left: 20vw; }

  .pl-07 {
    padding-left: 17.5vw; }

  .pl-06 {
    padding-left: 15vw; }

  .pl-05 {
    padding-left: 12.5vw; }

  .pl-04 {
    padding-left: 10vw; }

  .pl-03 {
    padding-left: 7.5vw; }

  .pl-02 {
    padding-left: 5vw; }

  .pl-01 {
    padding-left: 3vw; }

  .pl-16-sp {
    padding-left: 40vw; }

  .pl-14-sp {
    padding-left: 35vw; }

  .pl-12-sp {
    padding-left: 30vw; }

  .pl-10-sp {
    padding-left: 25vw; }

  .pl-09-sp {
    padding-left: 22.5vw; }

  .pl-08-sp {
    padding-left: 20vw; }

  .pl-07-sp {
    padding-left: 17.5vw; }

  .pl-06-sp {
    padding-left: 15vw; }

  .pl-05-sp {
    padding-left: 12.5vw; }

  .pl-04-sp {
    padding-left: 10vw; }

  .pl-03-sp {
    padding-left: 7.5vw; }

  .pl-02-sp {
    padding-left: 5vw; }

  .pl-01-sp {
    padding-left: 3vw; }

  .pl-00-sp {
    padding-left: 0vw; }

  .pr-16 {
    padding-right: 40vw; }

  .pr-14 {
    padding-right: 35vw; }

  .pr-12 {
    padding-right: 30vw; }

  .pr-10 {
    padding-right: 25vw; }

  .pr-09 {
    padding-right: 22.5vw; }

  .pr-08 {
    padding-right: 20vw; }

  .pr-07 {
    padding-right: 17.5vw; }

  .pr-06 {
    padding-right: 15vw; }

  .pr-05 {
    padding-right: 12.5vw; }

  .pr-04 {
    padding-right: 10vw; }

  .pr-03 {
    padding-right: 7.5vw; }

  .pr-02 {
    padding-right: 5vw; }

  .pr-01 {
    padding-right: 3vw; }

  .pr-16-sp {
    padding-right: 40vw; }

  .pr-14-sp {
    padding-right: 35vw; }

  .pr-12-sp {
    padding-right: 30vw; }

  .pr-10-sp {
    padding-right: 25vw; }

  .pr-09-sp {
    padding-right: 22.5vw; }

  .pr-08-sp {
    padding-right: 20vw; }

  .pr-07-sp {
    padding-right: 17.5vw; }

  .pr-06-sp {
    padding-right: 15vw; }

  .pr-05-sp {
    padding-right: 12.5vw; }

  .pr-04-sp {
    padding-right: 10vw; }

  .pr-03-sp {
    padding-right: 7.5vw; }

  .pr-02-sp {
    padding-right: 5vw; }

  .pr-01-sp {
    padding-right: 3vw; }

  .pr-00-sp {
    padding-right: 0vw; }

  .ptb-16 {
    padding-top: 40vw;
    padding-bottom: 40vw; }

  .ptb-14 {
    padding-top: 35vw;
    padding-bottom: 35vw; }

  .ptb-12 {
    padding-top: 30vw;
    padding-bottom: 30vw; }

  .ptb-10 {
    padding-top: 25vw;
    padding-bottom: 25vw; }

  .ptb-09 {
    padding-top: 22.5vw;
    padding-bottom: 22.5vw; }

  .ptb-08 {
    padding-top: 20vw;
    padding-bottom: 20vw; }

  .ptb-07 {
    padding-top: 17.5vw;
    padding-bottom: 17.5vw; }

  .ptb-06 {
    padding-top: 15vw;
    padding-bottom: 15vw; }

  .ptb-05 {
    padding-top: 12.5vw;
    padding-bottom: 12.5vw; }

  .ptb-04 {
    padding-top: 10vw;
    padding-bottom: 10vw; }

  .ptb-03 {
    padding-top: 7.5vw;
    padding-bottom: 7.5vw; }

  .ptb-02 {
    padding-top: 5vw;
    padding-bottom: 5vw; }

  .ptb-01 {
    padding-top: 3vw;
    padding-bottom: 3vw; }

  .ptb-16-sp {
    padding-top: 40vw;
    padding-bottom: 40vw; }

  .ptb-14-sp {
    padding-top: 35vw;
    padding-bottom: 35vw; }

  .ptb-12-sp {
    padding-top: 30vw;
    padding-bottom: 30vw; }

  .ptb-10-sp {
    padding-top: 25vw;
    padding-bottom: 25vw; }

  .ptb-09-sp {
    padding-top: 22.5vw;
    padding-bottom: 22.5vw; }

  .ptb-08-sp {
    padding-top: 20vw;
    padding-bottom: 20vw; }

  .ptb-07-sp {
    padding-top: 17.5vw;
    padding-bottom: 17.5vw; }

  .ptb-06-sp {
    padding-top: 15vw;
    padding-bottom: 15vw; }

  .ptb-05-sp {
    padding-top: 12.5vw;
    padding-bottom: 12.5vw; }

  .ptb-04-sp {
    padding-top: 10vw;
    padding-bottom: 10vw; }

  .ptb-03-sp {
    padding-top: 7.5vw;
    padding-bottom: 7.5vw; }

  .ptb-02-sp {
    padding-top: 5vw;
    padding-bottom: 5vw; }

  .ptb-01-sp {
    padding-top: 3vw;
    padding-bottom: 3vw; }

  .plr-16 {
    padding-left: 40vw;
    padding-right: 40vw; }

  .plr-14 {
    padding-left: 35vw;
    padding-right: 35vw; }

  .plr-12 {
    padding-left: 30vw;
    padding-right: 30vw; }

  .plr-10 {
    padding-left: 25vw;
    padding-right: 25vw; }

  .plr-09 {
    padding-left: 22.5vw;
    padding-right: 22.5vw; }

  .plr-08 {
    padding-left: 20vw;
    padding-right: 20vw; }

  .plr-07 {
    padding-left: 17.5vw;
    padding-right: 17.5vw; }

  .plr-06 {
    padding-left: 15vw;
    padding-right: 15vw; }

  .plr-05 {
    padding-left: 12.5vw;
    padding-right: 12.5vw; }

  .plr-04 {
    padding-left: 10vw;
    padding-right: 10vw; }

  .plr-03 {
    padding-left: 7.5vw;
    padding-right: 7.5vw; }

  .plr-02 {
    padding-left: 5vw;
    padding-right: 5vw; }

  .plr-01 {
    padding-left: 3vw;
    padding-right: 3vw; }

  .plr-006 {
    padding-left: 1.8vw;
    padding-right: 1.8vw; }

  .plr-16-sp {
    padding-left: 40vw;
    padding-right: 40vw; }

  .plr-14-sp {
    padding-left: 35vw;
    padding-right: 35vw; }

  .plr-12-sp {
    padding-left: 30vw;
    padding-right: 30vw; }

  .plr-10-sp {
    padding-left: 25vw;
    padding-right: 25vw; }

  .plr-09-sp {
    padding-left: 22.5vw;
    padding-right: 22.5vw; }

  .plr-08-sp {
    padding-left: 20vw;
    padding-right: 20vw; }

  .plr-07-sp {
    padding-left: 17.5vw;
    padding-right: 17.5vw; }

  .plr-06-sp {
    padding-left: 15vw;
    padding-right: 15vw; }

  .plr-05-sp {
    padding-left: 12.5vw;
    padding-right: 12.5vw; }

  .plr-04-sp {
    padding-left: 10vw;
    padding-right: 10vw; }

  .plr-03-sp {
    padding-left: 7.5vw;
    padding-right: 7.5vw; }

  .plr-02-sp {
    padding-left: 5vw;
    padding-right: 5vw; }

  .plr-01-sp {
    padding-left: 3vw;
    padding-right: 3vw; }

  .mb-16 {
    margin-bottom: 40vw; }

  .mb-14 {
    margin-bottom: 35vw; }

  .mb-12 {
    margin-bottom: 30vw; }

  .mb-10 {
    margin-bottom: 25vw; }

  .mb-09 {
    margin-bottom: 22.5vw; }

  .mb-08 {
    margin-bottom: 20vw; }

  .mb-07 {
    margin-bottom: 17.5vw; }

  .mb-06 {
    margin-bottom: 15vw; }

  .mb-05 {
    margin-bottom: 12.5vw; }

  .mb-04 {
    margin-bottom: 10vw; }

  .mb-03 {
    margin-bottom: 7.5vw; }

  .mb-02 {
    margin-bottom: 5vw; }

  .mb-01 {
    margin-bottom: 3vw; }

  .mb-16-sp {
    margin-bottom: 40vw; }

  .mb-14-sp {
    margin-bottom: 35vw; }

  .mb-12-sp {
    margin-bottom: 30vw; }

  .mb-10-sp {
    margin-bottom: 25vw; }

  .mb-09-sp {
    margin-bottom: 22.5vw; }

  .mb-08-sp {
    margin-bottom: 20vw; }

  .mb-07-sp {
    margin-bottom: 17.5vw; }

  .mb-06-sp {
    margin-bottom: 15vw; }

  .mb-05-sp {
    margin-bottom: 12.5vw; }

  .mb-04-sp {
    margin-bottom: 10vw; }

  .mb-03-sp {
    margin-bottom: 7.5vw; }

  .mb-02-sp {
    margin-bottom: 5vw; }

  .mb-01-sp {
    margin-bottom: 3vw; } }
/*
-------------------------------------------
STYLE
-------------------------------------------
*/
.shadow-l {
  box-shadow: 0 12px 48px 0 rgba(11, 22, 36, 0.07); }

.shadow-m {
  box-shadow: 0 8px 32px 0 rgba(11, 22, 36, 0.05); }

.br-l {
  border-radius: 1.2vw; }

.br-m {
  border-radius: .8vw; }

.br-s {
  border-radius: .4vw; }

.top-pl-section {
  position: relative;
  padding-top: 12vw;
  padding-left: 30vw;
  padding-right: 10vw;
  z-index: 10; }

.top-pl-section-s {
  position: relative;
  padding-top: 6.4vw;
  padding-left: 30vw;
  padding-right: 10vw;
  z-index: 10; }

@media only screen and (max-width: 768px) {
  .top-pl-section {
    padding-top: 32vw;
    padding-left: 6vw;
    padding-right: 6vw; }

  .top-pl-section-s {
    padding-top: 12.8vw;
    padding-left: 6.4vw;
    padding-right: 6.4vw;
    z-index: 10; }

  .br-l {
    border-radius: 2.4vw; }

  .br-m {
    border-radius: 1.6vw; }

  .br-s {
    border-radius: .8vw; } }
/*
-------------------------------------------
BUTTON
-------------------------------------------
*/
.btn-primary {
  border-radius: .8vw;
  background-color: #ff7051;
  padding: .8vw; }
.btn-primary .flex {
  width: 100%; }
.btn-primary p {
  width: 100%;
  font-size: 1.2vw;
  color: white;
  text-align: center;
  font-weight: bold;
  padding-top: .1vw; }
.btn-primary .icon {
  width: 2.8vw;
  height: 2.8vw;
  flex-shrink: 0;
  border-radius: .4vw;
  background-color: white; }
.btn-primary .icon i {
  font-size: 1.2vw;
  color: #ff7051; }
.btn-primary:hover {
  box-shadow: 0 12px 48px 0 rgba(255, 117, 86, 0.2); }
.btn-primary:hover .icon {
  background-color: rgba(255, 255, 255, 0.1); }
.btn-primary:hover .icon i {
  color: white; }

@media only screen and (max-width: 768px) {
  .btn-primary {
    border-radius: 1.6vw;
    background-color: #ff7051;
    padding: 2.4vw 2.4vw 2.4vw 3.2vw; }
  .btn-primary div {
    gap: 2vw; }
  .btn-primary p {
    font-size: 3vw;
    padding-top: .3vw; }
  .btn-primary .icon {
    width: 6vw;
    height: 6vw;
    border-radius: .8vw; }
  .btn-primary .icon i {
    font-size: 3vw; } }
.btn-secondary {
  color: #ff7051;
  background-color: rgba(255, 112, 81, 0.1);
  display: inline-block;
  padding: 1.1vw 1.1vw 1.1vw 1.4vw;
  border-radius: 1000px; }
.btn-secondary .flex {
  gap: .6vw; }
.btn-secondary p {
  font-size: 1vw;
  font-weight: bold;
  line-height: 1;
  padding-top: .1vw; }
.btn-secondary i {
  width: 1.2vw;
  color: #ff7051; }
.btn-secondary:hover {
  background-color: #ff7051; }
.btn-secondary:hover p {
  color: white; }
.btn-secondary:hover i {
  color: white; }

@media only screen and (max-width: 768px) {
  .btn-secondary {
    color: #ff7051;
    background-color: rgba(255, 112, 81, 0.1);
    display: inline-block;
    padding: 4.8vw 4.8vw 4.8vw 6.4vw; }
  .btn-secondary .flex {
    gap: 1.8vw; }
  .btn-secondary p {
    font-size: 3.3vw;
    padding-top: .3vw; }
  .btn-secondary i {
    width: 2.4vw; } }
/*
-------------------------------------------
TITLE
-------------------------------------------
*/
.section-title {
  margin-bottom: 4.8vw; }
.section-title h2 {
  font-size: 3.2vw;
  line-height: 1;
  margin-bottom: .8vw;
  letter-spacing: 0; }
.section-title h3 {
  font-size: 1.2vw;
  line-height: 1; }

.section-child-title {
  margin-bottom: 3.2vw; }
.section-child-title h2 {
  font-size: 2.4vw;
  line-height: 1;
  letter-spacing: 0; }
.section-child-title h3 {
  font-size: 1vw;
  line-height: 1; }

.block-title {
  margin-bottom: 2.8vw; }
.block-title h2 {
  font-size: 2.3vw;
  line-height: 1; }
.block-title h3 {
  font-size: 1.2vw;
  line-height: 1; }

.list-heading {
  padding-top: 3.2vw;
  border-top: 1px dashed rgba(11, 22, 36, 0.2);
  margin-bottom: 2.4vw; }
.list-heading h3 {
  font-size: 1.4vw;
  margin-bottom: .4vw; }
.list-heading .line {
  border-radius: 1000px;
  background-color: #2ba2f8;
  width: 1.2vw;
  height: 2px; }
.list-heading p {
  margin-top: 2.8vw;
  font-size: 1vw; }

.mt-m {
  margin-top: 3.6vw; }

@media only screen and (max-width: 768px) {
  .section-title {
    margin-bottom: 14.4vw; }
  .section-title h2 {
    font-size: 8.8vw;
    margin-bottom: 1.2vw; }
  .section-title .t-center h2 {
    margin-bottom: 2.4vw; }
  .section-title h3 {
    font-size: 3.4vw; }

  .section-child-title {
    margin-bottom: 7.2vw; }
  .section-child-title h2 {
    font-size: 7.2vw; }
  .section-child-title h3 {
    font-size: 3vw;
    padding-bottom: .8vw; }

  .block-title {
    margin-bottom: 8.4vw; }
  .block-title h2 {
    font-size: 6.9vw; }
  .block-title h3 {
    font-size: 3.6vw; }

  .list-heading {
    padding-top: 10.8vw;
    margin-bottom: 7.2vw; }
  .list-heading h3 {
    font-size: 4.2vw;
    margin-bottom: 1.2vw; }
  .list-heading .line {
    width: 3.6vw;
    height: 3px; }
  .list-heading p {
    margin-top: 5.6vw;
    font-size: 3vw; }

  .mt-m {
    margin-top: 10.8vw; } }
/*
-------------------------------------------
UNIQUE
-------------------------------------------
*/
.scroll-down_01 {
  position: absolute;
  width: 12vw;
  height: 12vw;
  z-index: 100;
  bottom: 3.2vw;
  right: 3.2vw;
  color: #fff;
  font-family: serif;
  text-decoration: none;
  transform: scale(0.8); }

.circle-text_01 {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: rotate 20s linear infinite; }

.circle-text_01 span {
  font-family: "Figtree", noto-sans-cjk-jp, sans-serif;
  position: absolute;
  left: 50%;
  font-size: 1.2vw;
  font-weight: bold;
  transform-origin: 0 6vw; }

.mouse_01 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2vw;
  height: 3vw;
  border: 1px solid #fff;
  border-radius: 1000px;
  transform: translate(-50%, -50%); }

.mouse_01::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 50%;
  width: 1px;
  height: 6px;
  background-color: #fff;
  transform: translateX(-50%);
  animation: scroll_03 2s infinite; }

@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes scroll_03 {
  0% {
    top: 5px;
    opacity: 0; }
  30% {
    opacity: 1; }
  100% {
    top: 15px;
    opacity: 0; } }
@media only screen and (max-width: 768px) {
  .scroll-down_01 {
    transform: scale(1.8);
    bottom: 8.2vw;
    right: 10.2vw; } }
.bg-image {
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url(../img/background.jpg);
  background-size: 100% 100%; }

.global-header {
  position: fixed;
  z-index: 100;
  top: 4.8vw;
  left: 4.8vw;
  height: calc(100% - 9.6vw); }
.global-header .navigation {
  border-radius: 1.2vw;
  background-color: white;
  padding: 2.4vw;
  text-align: center; }
.global-header .navigation img {
  width: 10vw;
  margin: 0 auto 2.4vw; }
.global-header .navigation ul li {
  margin-bottom: 1.2vw;
  position: relative;
  padding-left: 1vw; }
.global-header .navigation ul li:after {
  content: "";
  display: block;
  width: .4vw;
  height: .4vw;
  background-color: #2ba2f8;
  border-radius: 1000px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto; }
.global-header .navigation ul li a {
  font-size: .9vw;
  font-weight: bold;
  text-align: left;
  line-height: 1.5; }
.global-header .navigation ul li:last-child {
  margin-bottom: 0; }

.is-hidden {
  visibility: hidden;
  opacity: 0; }

@media only screen and (max-width: 768px) {
  .global-header {
    flex-direction: row;
    height: auto;
    padding: 0vw;
    border-radius: 2.4vw;
    width: calc(100% - 4.8vw);
    align-items: center;
    top: 2.4vw;
    left: 2.4vw; }
  .global-header > .flex {
    gap: 1.6vw; }
  .global-header ul {
    display: none; }
  .global-header .navigation {
    padding: 1.6vw 3.2vw;
    height: 10.8vw; }
  .global-header .navigation img {
    width: 22vw;
    margin: 0;
    position: relative;
    top: .6vw; }

  .is-hidden {
    visibility: visible;
    opacity: 1; }

  .menu-trigger {
    width: 10.8vw;
    height: 10.8vw;
    border-radius: 1.6vw;
    background-color: #0b1624;
    position: relative;
    flex-shrink: 0; }
  .menu-trigger span {
    width: 50%;
    height: 2px;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out; }
  .menu-trigger span:nth-of-type(1) {
    top: -2vw; }
  .menu-trigger span:nth-of-type(2) {
    top: 2vw; }

  .sp-nav {
    position: fixed;
    background-color: #F0F7FC;
    width: 100%;
    height: 100vh;
    z-index: 11;
    left: -100%;
    top: 0;
    padding-top: 28vw;
    padding-left: 0; }
  .sp-nav .sp-nav-inner {
    width: 88vw;
    margin: 0 auto;
    position: relative; }
  .sp-nav ul {
    padding-bottom: 10.8vw; }
  .sp-nav ul li {
    gap: 1.2vw;
    padding-bottom: 5.2vw;
    margin-bottom: 5.2vw;
    border-bottom: 1px dotted rgba(11, 22, 36, 0.1); }
  .sp-nav ul li a {
    gap: 3.2vw;
    padding: 0vw;
    font-size: 3.6vw;
    font-weight: 600;
    color: #0b1624; }

  .sp-nav.opend {
    left: 0 !important; }

  .menu-trigger.active span:nth-of-type(1) {
    transform: rotate(-45deg);
    top: 0; }

  .menu-trigger.active span:nth-of-type(2) {
    transform: rotate(45deg);
    top: 0; } }
footer {
  margin-top: 9.6vw;
  border-radius: 3.2vw 3.2vw 0 0;
  background-color: #EFF5F9;
  padding: 7.2vw;
  position: relative;
  z-index: 1000; }
footer .footer-navigation {
  padding-top: 7.2vw; }
footer .footer-navigation .head {
  padding-bottom: 3.2vw;
  border-bottom: 1px solid rgba(11, 22, 36, 0.1); }
footer .footer-navigation .head .f-logo {
  width: 10vw; }
footer .footer-navigation .head .sns-list {
  gap: 1.2vw; }
footer .footer-navigation .head .sns-list img {
  width: auto;
  height: 1.6vw; }
footer .footer-navigation .menu {
  padding-top: 5.6vw;
  gap: 6.4vw; }
footer .footer-navigation .menu ul li {
  margin-bottom: 2.4vw;
  padding-bottom: 1.2vw;
  border-bottom: 1px solid rgba(11, 22, 36, 0.05); }
footer .footer-navigation .menu ul li a {
  gap: 1.2vw;
  width: 100%; }
footer .footer-navigation .menu ul li a span {
  font-size: 1vw;
  font-weight: bold;
  line-height: 1; }
footer .footer-navigation .menu ul li a figure {
  width: 1.2vw; }
footer .footer-navigation .menu ul li:hover {
  border-bottom: 1px solid #ff7051; }
footer .footer-navigation .menu ul li:hover a span {
  color: #ff7051; }
footer .footer-navigation .submenu {
  padding-top: 3.6vw;
  margin-top: 5.6vw;
  border-top: 1px solid rgba(11, 22, 36, 0.1); }
footer .footer-navigation .submenu .copyright {
  font-size: .9vw;
  letter-spacing: 0;
  color: rgba(11, 22, 36, 0.5);
  line-height: 1; }
footer .footer-navigation .submenu ul {
  gap: 1.6vw; }
footer .footer-navigation .submenu ul li a {
  font-size: .9vw;
  line-height: 1; }
footer .footer-navigation .submenu ul li a:hover {
  color: #ff7051; }

@media only screen and (max-width: 768px) {
  footer {
    margin-top: 19.2vw;
    border-radius: 6.4vw 6.4vw 0 0;
    padding: 8.8vw 7.2vw 7.2vw; }
  footer .footer-navigation {
    padding-top: 14.4vw; }
  footer .footer-navigation .head {
    padding-bottom: 3.2vw; }
  footer .footer-navigation .head .f-logo {
    width: 24vw; }
  footer .footer-navigation .head .sns-list {
    gap: 3.6vw; }
  footer .footer-navigation .head .sns-list img {
    height: 4.8vw; }
  footer .footer-navigation .menu {
    padding-top: 10.8vw;
    gap: 0vw; }
  footer .footer-navigation .menu ul {
    width: 100%; }
  footer .footer-navigation .menu ul li {
    margin-bottom: 4.8vw;
    padding-bottom: 4.8vw;
    border-bottom: 1px solid rgba(11, 22, 36, 0.05); }
  footer .footer-navigation .menu ul li a {
    gap: 3.6vw;
    width: 100%; }
  footer .footer-navigation .menu ul li a span {
    font-size: 3.3vw;
    font-weight: 600; }
  footer .footer-navigation .menu ul li a figure {
    width: 3.6vw; }
  footer .footer-navigation .submenu {
    padding-top: 0vw;
    margin-top: 9.6vw;
    border-top: 0px solid rgba(11, 22, 36, 0.1);
    flex-wrap: wrap-reverse;
    justify-content: center; }
  footer .footer-navigation .submenu .copyright {
    font-size: 2.8vw;
    letter-spacing: 0;
    color: rgba(11, 22, 36, 0.5);
    line-height: 1; }
  footer .footer-navigation .submenu ul {
    gap: 2.4vw;
    margin-bottom: 4.8vw; }
  footer .footer-navigation .submenu ul li a {
    font-size: 2.8vw;
    line-height: 1; }
  footer .footer-navigation .submenu ul li a:hover {
    color: #ff7051; } }
.footer-cta {
  padding: 3.6vw 4vw;
  color: white; }
.footer-cta .content-text {
  gap: 3.6vw;
  padding-top: .2vw; }
.footer-cta .content-text h2 {
  font-size: 3.2vw;
  line-height: 1;
  letter-spacing: 0; }
.footer-cta .content-text h3 {
  line-height: 1.4;
  font-size: 1.2vw; }
.footer-cta .icon {
  border-radius: 1000px;
  background-color: white;
  width: 3.6vw;
  height: 3.6vw; }
.footer-cta .icon i {
  font-size: 1.2vw;
  color: #ff7051; }
.footer-cta:hover {
  box-shadow: 0 12px 48px 0 rgba(255, 117, 86, 0.2); }
.footer-cta:hover .icon {
  transform: scale(1.1); }

@media only screen and (max-width: 768px) {
  .footer-cta {
    padding: 6.4vw 6.4vw;
    color: white;
    align-items: center; }
  .footer-cta .content-text {
    gap: 3.6vw;
    padding-top: .2vw; }
  .footer-cta .content-text h2 {
    font-size: 6.4vw; }
  .footer-cta .content-text h3 {
    font-size: 3.3vw; }
  .footer-cta .icon {
    border-radius: 1000px;
    background-color: white;
    width: 7.2vw;
    height: 7.2vw; }
  .footer-cta .icon i {
    font-size: 3.3vw; } }
.page-fv {
  padding-top: 4.8vw;
  padding-left: 26vw;
  padding-right: 6vw;
  z-index: 3; }
.page-fv .box {
  padding: 4vw 4.8vw 1.6vw;
  position: relative;
  background-color: #2ba2f8;
  box-shadow: 0 8px 32px 0 rgba(43, 162, 248, 0.2); }
.page-fv .box span {
  font-size: 3.2vw;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1;
  color: white;
  margin-bottom: .8vw; }
.page-fv .box h1 {
  font-size: 1.1vw;
  line-height: 1;
  color: white; }
.page-fv .box .pankuzu {
  gap: .4vw;
  margin-top: .8vw; }
.page-fv .box .pankuzu li a {
  font-size: .9vw;
  color: white; }
.page-fv .box .pankuzu li i {
  font-size: .8vw;
  color: white; }
.page-fv .box .pankuzu li p {
  font-size: .9vw;
  color: white;
  opacity: .6; }

@media only screen and (max-width: 768px) {
  .page-fv {
    padding-top: 15.6vw;
    padding-left: 2.4vw;
    padding-right: 2.4vw; }
  .page-fv .box {
    border-radius: 1.6vw !important;
    padding: 10.8vw 4.8vw 3.6vw 7.2vw; }
  .page-fv .box span {
    font-size: 7.6vw;
    margin-bottom: 2.4vw; }
  .page-fv .box h1 {
    font-size: 3.4vw; }
  .page-fv .box .pankuzu {
    gap: 1.2vw;
    margin-top: 7.2vw; }
  .page-fv .box .pankuzu li a {
    font-size: 2.6vw; }
  .page-fv .box .pankuzu li i {
    font-size: 2vw; }
  .page-fv .box .pankuzu li p {
    font-size: 2.6vw; } }
.works-slider {
  padding: 3.6vw; }
.works-slider .slider-header {
  border-radius: .8vw;
  background-color: #2ba2f8;
  position: absolute;
  left: 13.3vw;
  top: 2vw;
  padding: 2vw;
  z-index: 2;
  box-shadow: 0 8px 32px 0 rgba(43, 162, 248, 0.2); }
.works-slider .slider-header figure {
  width: 2.4vw;
  margin-bottom: 1.6vw; }
.works-slider .slider-header h2 {
  font-size: 2.4vw;
  color: white; }
.works-slider .slider-header h3 {
  font-size: 1vw;
  color: white;
  line-height: 1.4; }
.works-slider ul {
  gap: 2.4vw;
  animation: loop-slide 15s infinite linear 1s both; }
.works-slider ul li {
  width: 16vw;
  height: 10.8vw;
  border-radius: .6vw;
  position: relative;
  flex-shrink: 0; }
.works-slider ul li p {
  background-color: #2ba2f8;
  color: white;
  font-weight: bold;
  font-size: .85vw;
  line-height: 1;
  padding: .4vw .4vw .3vw;
  border-radius: .2vw;
  position: absolute;
  left: .8vw;
  bottom: .8vw; }

@media only screen and (max-width: 768px) {
  .works-slider {
    padding: 3.6vw; }
  .works-slider .slider-header {
    border-radius: 1.6vw;
    left: 5.6vw;
    top: 2.4vw;
    padding: 3.6vw 4.8vw 3.6vw 3.6vw;
    box-shadow: 0 8px 32px 0 rgba(43, 162, 248, 0.2); }
  .works-slider .slider-header figure {
    width: 4.8vw;
    margin-bottom: 2.4vw; }
  .works-slider .slider-header h2 {
    font-size: 4.8vw; }
  .works-slider .slider-header h3 {
    font-size: 2.8vw; }
  .works-slider ul {
    position: relative;
    top: 1.4vw;
    gap: 2.4vw;
    animation: loop-slide 15s infinite linear 1s both; }
  .works-slider ul li {
    width: 40vw;
    height: 27vw;
    border-radius: 1.2vw; }
  .works-slider ul li p {
    font-size: 2.4vw;
    padding: 1.2vw 1.2vw .9vw;
    border-radius: .6vw;
    left: 1.2vw;
    bottom: 1.2vw; } }
@keyframes loop-slide {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
.news-list {
  gap: 2.4vw; }
.news-list .image-area {
  overflow: hidden;
  height: 10.8vw;
  position: relative;
  margin-bottom: 1.6vw; }
.news-list .image-area .image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: .8s; }
.news-list .cat {
  color: #2ba2f8;
  font-size: .9vw;
  font-weight: bold;
  line-height: 1;
  margin-bottom: .8vw; }
.news-list h3 {
  font-size: 1.1vw;
  line-height: 1.5;
  height: 6vw; }
.news-list .date {
  color: rgba(11, 22, 36, 0.5);
  font-size: .9vw;
  line-height: 1; }
.news-list li:hover .image {
  transform: scale(1.1); }
.news-list li:hover h3 {
  color: #ff7051; }

.news-list-wrap li {
  width: calc(33.3334% - 1.6vw);
  margin-bottom: .8vw; }

.top .news-list-wrap li:last-child {
  display: none; }

@media only screen and (max-width: 768px) {
  .news-list {
    gap: 3.6vw; }
  .news-list .image-area {
    height: 27vw;
    margin-bottom: 3.2vw; }
  .news-list .cat {
    color: #2ba2f8;
    font-size: 2.6vw;
    margin-bottom: 1.6vw; }
  .news-list h3 {
    font-size: 3.3vw;
    height: auto;
    margin-bottom: 3.6vw; }
  .news-list .date {
    font-size: 2.6vw; }

  .news-list-wrap li {
    width: calc(50% - 1.8vw);
    margin-bottom: 3.6vw; }

  .top .news-list-wrap li:last-child {
    display: block; } }
.cv-list li {
  padding: 3.2vw;
  margin-bottom: 2.4vw; }
.cv-list li:last-child {
  margin-bottom: 0; }
.cv-list .image-area {
  overflow: hidden;
  position: relative;
  height: 16vw; }
.cv-list .image-area .image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: .8s; }
.cv-list .content-text {
  padding: 1.2vw 0 0 3.2vw; }
.cv-list .cat {
  color: #2ba2f8;
  font-size: .9vw;
  font-weight: bold;
  line-height: 1;
  margin-bottom: .8vw;
  letter-spacing: 0; }
.cv-list h3 {
  font-size: 1.2vw;
  line-height: 1.5;
  margin-bottom: 1.6vw; }
.cv-list .date {
  color: rgba(11, 22, 36, 0.5);
  font-size: .9vw;
  line-height: 1.4; }
.cv-list li:nth-child(2n) .content-text {
  padding: 1.2vw 3.2vw 0 0vw; }
.cv-list li:hover .image {
  transform: scale(1.1); }
.cv-list li:hover h3 {
  color: #ff7051; }

.top .cv-list li:nth-child(2n) a {
  flex-direction: row-reverse; }

.cv-list-wrap {
  gap: 2.4vw;
  padding: 0 3.6vw; }
.cv-list-wrap li {
  padding: 2vw 2vw 2.8vw;
  width: calc(50% - 1.2vw);
  margin-bottom: 0; }
.cv-list-wrap li .image-area {
  overflow: hidden;
  position: relative;
  height: 12vw; }
.cv-list-wrap li .image-area .image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: .8s; }
.cv-list-wrap li .content-text {
  padding: 2vw 0 0 0; }
.cv-list-wrap li .date {
  line-height: 1.5; }
.cv-list-wrap li:nth-child(2n) .content-text {
  padding: 2vw 0 0 0; }

.cv-list-wrap02 {
  gap: 2.4vw;
  padding: 0; }
.cv-list-wrap02 li {
  padding: 2vw 2vw 2.8vw;
  width: calc(50% - 1.2vw);
  margin-bottom: 0; }
.cv-list-wrap02 li .image-area {
  overflow: hidden;
  position: relative;
  height: 14.4vw; }
.cv-list-wrap02 li .image-area .image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: .8s; }
.cv-list-wrap02 li .content-text {
  padding: 2vw 0 0 0; }
.cv-list-wrap02 li .date {
  line-height: 1.5; }
.cv-list-wrap02 li:nth-child(2n) .content-text {
  padding: 2vw 0 0 0; }

@media only screen and (max-width: 768px) {
  .cv-list li {
    padding: 3.2vw;
    margin-bottom: 4.8vw; }
  .cv-list .image-area {
    height: 42vw; }
  .cv-list .content-text {
    padding: 5.6vw 2.4vw 3.6vw; }
  .cv-list .cat {
    font-size: 3.2vw;
    margin-bottom: 2.4vw; }
  .cv-list h3 {
    font-size: 3.6vw;
    margin-bottom: 4.8vw; }
  .cv-list .date {
    font-size: 3vw; }
  .cv-list li:nth-child(2n) .content-text {
    padding: 5.6vw 2.4vw 3.6vw; }

  .top .cv-list li:nth-child(2n) a {
    flex-direction: row-reverse; }

  .cv-list-wrap {
    gap: 2.4vw;
    padding: 0 3.6vw; }
  .cv-list-wrap li {
    padding: 2vw 2vw 2.8vw;
    width: calc(50% - 1.2vw);
    margin-bottom: 0; }
  .cv-list-wrap li .image-area {
    overflow: hidden;
    position: relative;
    height: 12vw; }
  .cv-list-wrap li .image-area .image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transition: .8s; }
  .cv-list-wrap li .content-text {
    padding: 2vw 0 0 0; }
  .cv-list-wrap li .date {
    line-height: 1.5; }
  .cv-list-wrap li:nth-child(2n) .content-text {
    padding: 2vw 0 0 0; }

  .cv-list-wrap02 {
    gap: 2.4vw;
    padding: 0; }
  .cv-list-wrap02 li {
    padding: 2vw 2vw 2.8vw;
    width: calc(50% - 1.2vw);
    margin-bottom: 0; }
  .cv-list-wrap02 li .image-area {
    overflow: hidden;
    position: relative;
    height: 14.4vw; }
  .cv-list-wrap02 li .image-area .image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transition: .8s; }
  .cv-list-wrap02 li .content-text {
    padding: 2vw 0 0 0; }
  .cv-list-wrap02 li .date {
    line-height: 1.5; }
  .cv-list-wrap02 li:nth-child(2n) .content-text {
    padding: 2vw 0 0 0; } }
.feature-list li {
  margin-bottom: 3.2vw;
  gap: 3.2vw;
  padding: 3.2vw; }
.feature-list li .content-text h3 {
  font-size: 1.5vw;
  margin-bottom: .6vw; }
.feature-list li .content-text h4 {
  font-size: 1.2vw;
  margin-bottom: 1.2vw; }
.feature-list li .content-text p {
  font-size: .9vw; }
.feature-list li:last-child {
  margin-bottom: 0; }
.feature-list .f01 {
  background-color: rgba(255, 112, 81, 0.05);
  border: 1px solid rgba(255, 112, 81, 0.15); }
.feature-list .f01 h3 {
  color: #ff7051;
  position: relative; }
.feature-list .f01 h3 span {
  font-size: 1.1vw;
  margin-left: .4vw; }
.feature-list .f01 h3:after {
  content: "ピーキャップス";
  display: block;
  position: absolute;
  top: -0.2vw;
  left: 0.3vw;
  font-size: .6vw; }
.feature-list .f02 {
  background-color: rgba(43, 162, 248, 0.05);
  border: 1px solid rgba(43, 162, 248, 0.15); }
.feature-list .f02 h3 {
  color: #2ba2f8; }
.feature-list .f03 {
  background-color: rgba(255, 120, 185, 0.05);
  border: 1px solid rgba(255, 120, 185, 0.15); }
.feature-list .f03 h3 {
  color: #ff78b9; }

@media only screen and (max-width: 768px) {
  .feature-list li {
    margin-bottom: 6.4vw;
    gap: 6.4vw;
    padding: 6.4vw; }
  .feature-list li .content-text h3 {
    font-size: 5vw;
    margin-bottom: 1.8vw; }
  .feature-list li .content-text h4 {
    font-size: 3.6vw;
    margin-bottom: 3.6vw; }
  .feature-list li .content-text p {
    font-size: 3vw; }
  .feature-list li:last-child {
    margin-bottom: 0; }
  .feature-list .f01 h3 span {
    font-size: 3.3vw;
    margin-left: 1.2vw; }
  .feature-list .f01 h3:after {
    top: -0.2vw;
    left: 0.3vw;
    font-size: 1.8vw; } }
.point-list li {
  margin-bottom: 1.2vw;
  gap: .4vw; }
.point-list li i {
  font-size: 1.4vw;
  color: #4dd062; }
.point-list li p {
  font-size: 1vw;
  font-size: 500;
  line-height: 1.3; }

.head-text-content li {
  margin-bottom: 2vw; }
.head-text-content li .heading {
  gap: .2vw;
  margin-bottom: .6vw; }
.head-text-content li .heading i {
  color: #2ba2f8;
  font-size: 1vw;
  padding-top: .3vw; }
.head-text-content li .heading h5 {
  font-size: 1vw; }
.head-text-content li p {
  font-size: .9vw; }
.head-text-content li:last-child {
  margin-bottom: 0; }

.user-voice {
  padding: 2.4vw; }
.user-voice .head {
  gap: 2.4vw;
  margin-bottom: 2.4vw; }
.user-voice .head span {
  font-size: 1.1vw;
  font-weight: bold;
  color: #ff7051;
  margin-bottom: .4vw; }
.user-voice .head h4 {
  font-size: 1.3vw;
  margin-bottom: .6vw; }
.user-voice .head p {
  opacity: .6;
  font-size: .9vw; }
.user-voice .head img {
  width: 20%; }

@media only screen and (max-width: 768px) {
  .point-list li {
    margin-bottom: 3.6vw;
    gap: 1.2vw; }
  .point-list li i {
    font-size: 4.2vw; }
  .point-list li p {
    font-size: 3vw;
    line-height: 1.5; }

  .head-text-content li {
    margin-bottom: 6vw; }
  .head-text-content li .heading {
    gap: .6vw;
    margin-bottom: 1.8vw; }
  .head-text-content li .heading i {
    font-size: 3vw;
    padding-top: .9vw; }
  .head-text-content li .heading h5 {
    font-size: 3.2vw; }
  .head-text-content li p {
    font-size: 3vw; }

  .user-voice {
    padding: 6.4vw; }
  .user-voice .head {
    gap: 4.8vw;
    margin-bottom: 6vw; }
  .user-voice .head span {
    font-size: 3.3vw;
    margin-bottom: 1.2vw; }
  .user-voice .head h4 {
    font-size: 3.9vw;
    margin-bottom: 1.8vw; }
  .user-voice .head p {
    font-size: 3vw; }
  .user-voice .head img {
    width: 20%; } }
.effort-list > li {
  padding: 3.6vw;
  margin-bottom: 3.6vw; }
.effort-list > li:last-child {
  margin-bottom: 0; }
.effort-list .list-title {
  gap: 1vw;
  margin-bottom: 2.4vw; }
.effort-list .list-title p {
  background-color: #2ba2f8;
  color: white;
  font-size: 1.1vw;
  line-height: 1;
  padding: .6vw 1vw;
  border-radius: 1000px;
  font-weight: bold; }
.effort-list .list-title h3 {
  font-size: 1.6vw; }
.effort-list .point-list {
  margin-bottom: 3.2vw; }
.effort-list .graph-list {
  gap: 2vw; }
.effort-list .graph-list li figure {
  width: 100%; }
.effort-list .col2-list {
  gap: 2.4vw; }
.effort-list .col2-list li {
  padding: 1.6vw; }
.effort-list .col2-list h4 {
  font-size: 1.2vw;
  margin-bottom: .8vw; }
.effort-list .col2-list h4 span {
  color: #ff7051;
  text-decoration: underline; }
.effort-list .col2-list p {
  font-size: 1vw;
  line-height: 1.6;
  margin-top: 1.2vw; }

@media only screen and (max-width: 768px) {
  .effort-list > li {
    padding: 6.4vw 4.8vw 4.8vw;
    margin-bottom: 4.8vw; }
  .effort-list .list-title {
    gap: 2vw;
    margin-bottom: 4.8vw; }
  .effort-list .list-title p {
    background-color: #2ba2f8;
    color: white;
    font-size: 3.3vw;
    padding: 1.6vw 2vw; }
  .effort-list .list-title h3 {
    font-size: 4.5vw;
    width: 100%; }
  .effort-list .point-list {
    margin-bottom: 6.4vw; }
  .effort-list .graph-list {
    gap: 0vw; }
  .effort-list .graph-list li {
    width: 100% !important; }
  .effort-list .graph-list li figure {
    width: 100%;
    padding-top: 3.6vw !important; }
  .effort-list .col2-list {
    gap: 4.8vw; }
  .effort-list .col2-list li {
    padding: 3.2vw; }
  .effort-list .col2-list h4 {
    font-size: 3.6vw;
    margin-bottom: 2.4vw; }
  .effort-list .col2-list p {
    font-size: 3vw;
    margin-top: 3.6vw; } }
.point-list02 {
  border-left: 3px solid #ff7051;
  padding: .4vw 0 .4vw 1.6vw;
  margin-top: 2vw; }
.point-list02 span {
  border-radius: 1000px;
  display: block;
  background-color: #ff7051;
  color: white;
  font-weight: bold;
  font-size: 1vw;
  margin-bottom: .8vw;
  display: inline-block;
  padding: .4vw .6vw .3vw;
  line-height: 1; }
.point-list02 h3 {
  font-size: 1.2vw;
  line-height: 1.5; }
.point-list02 h4 {
  font-size: 1vw;
  opacity: .8;
  line-height: 1.5; }
.point-list02 p {
  font-size: 1vw; }
.point-list02 .dot-list li {
  margin-bottom: .2vw;
  position: relative;
  padding-left: .8vw; }
.point-list02 .dot-list li:before {
  content: "";
  display: block;
  width: .3vw;
  height: .3vw;
  background-color: #0b1624;
  border-radius: 1000px;
  position: absolute;
  top: .7vw;
  left: 0; }
.point-list02 .dot-list li p {
  font-size: 1vw; }
.point-list02 .dot-list li:last-child {
  margin-bottom: 0; }

.point-list02-gray {
  border-left: 3px solid rgba(11, 22, 36, 0.5); }
.point-list02-gray span {
  background-color: rgba(11, 22, 36, 0.5); }

@media only screen and (max-width: 768px) {
  .point-list02 {
    border-left: 3px solid #ff7051;
    padding: 1.2vw 0 1.2vw 3.6vw;
    margin-top: 6vw; }
  .point-list02 span {
    font-size: 3vw;
    margin-bottom: 2.4vw;
    padding: 1.2vw 1.8vw .9vw; }
  .point-list02 h3 {
    font-size: 3.6vw; }
  .point-list02 h4 {
    font-size: 3vw; }
  .point-list02 p {
    font-size: 3vw; }
  .point-list02 .dot-list li {
    margin-bottom: .6vw;
    padding-left: 2.4vw; }
  .point-list02 .dot-list li:before {
    width: .9vw;
    height: .9vw;
    top: 2.1vw; }
  .point-list02 .dot-list li p {
    font-size: 3vw; } }
.func-list > li {
  padding: 3.6vw;
  gap: 3.2vw;
  margin-bottom: 3.6vw; }
.func-list > li .content-text .func-title {
  margin-bottom: 1.6vw;
  gap: .6vw; }
.func-list > li .content-text .func-title span {
  width: 2.4vw;
  height: 2.4vw;
  border-radius: 1000px;
  background-color: #2ba2f8;
  display: block;
  line-height: 2.4vw;
  text-align: center;
  font-size: 1.2vw;
  font-weight: bold;
  color: white; }
.func-list > li .content-text .func-title h2 {
  font-size: 1.6vw;
  color: #2ba2f8; }
.func-list > li .content-text > p {
  font-size: .9vw; }
.func-list > li .content-image p {
  font-size: .8vw;
  opacity: .6;
  text-align: center;
  margin-top: 1.2vw;
  line-height: 1.3; }
.func-list > li:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 768px) {
  .func-list .br-l {
    border-radius: 3.6vw; }
  .func-list > li {
    padding: 3.6vw;
    gap: 6.4vw;
    margin-bottom: 4.8vw; }
  .func-list > li .content-text {
    padding: 1.6vw 2.4vw 3.2vw; }
  .func-list > li .content-text .func-title {
    margin-bottom: 4.8vw;
    gap: 1.2vw; }
  .func-list > li .content-text .func-title span {
    width: 6.4vw;
    height: 6.4vw;
    line-height: 6.4vw;
    font-size: 3.6vw; }
  .func-list > li .content-text .func-title h2 {
    font-size: 4.8vw; }
  .func-list > li .content-text > p {
    font-size: 3vw; }
  .func-list > li .content-image p {
    font-size: 2.7vw;
    margin-top: 3.6vw; }
  .func-list .content-image-sp-mb {
    margin-bottom: 4.8vw; } }
.single-header {
  margin-bottom: 5.6vw; }
.single-header .image {
  height: 24vw;
  margin-bottom: 3.6vw; }
.single-header .cat {
  color: #2ba2f8;
  font-size: .9vw;
  font-weight: bold;
  line-height: 1;
  margin-right: .8vw; }
.single-header h2 {
  font-size: 1.7vw;
  line-height: 1.5;
  margin-top: 1.2vw; }
.single-header .date {
  color: rgba(11, 22, 36, 0.5);
  font-size: .9vw;
  line-height: 1; }

.single-cv-header {
  padding: 1.6vw;
  gap: 2vw; }
.single-cv-header .content-text {
  padding-bottom: .8vw; }
.single-cv-header .image {
  width: 20vw;
  height: 12vw;
  flex-shrink: 0; }
.single-cv-header .cat {
  color: #2ba2f8;
  font-size: 1.1vw;
  font-weight: bold;
  line-height: 1; }
.single-cv-header h2 {
  font-size: 1.7vw;
  line-height: 1.5;
  margin-top: .8vw;
  margin-bottom: 2vw; }
.single-cv-header ul {
  gap: .8vw; }
.single-cv-header ul li p {
  border-radius: 1000px;
  line-height: 1;
  padding: .6vw .6vw .4vw;
  background-color: rgba(11, 22, 36, 0.05);
  color: rgba(11, 22, 36, 0.5);
  font-size: .9vw; }
.single-cv-header .date {
  color: rgba(11, 22, 36, 0.5);
  font-size: .9vw;
  line-height: 1; }

.single-content {
  padding-bottom: 6.4vw;
  border-bottom: 1px solid rgba(11, 22, 36, 0.1); }
.single-content h3 {
  font-size: 1.3vw;
  padding-bottom: 1.6vw;
  border-bottom: 1px dashed rgba(11, 22, 36, 0.2);
  margin-top: 3.6vw; }
.single-content p {
  font-size: .9vw;
  margin-top: 2.4vw; }
.single-content h4 {
  color: #ff7051;
  font-size: 1.1vw;
  margin-top: 3.2vw; }
.single-content a {
  display: inline-block;
  color: #2ba2f8;
  text-decoration: underline; }
.single-content ul {
  margin-top: 2.4vw; }
.single-content ul li {
  font-size: .9vw;
  margin-bottom: .4vw;
  position: relative;
  padding-left: 1vw; }
.single-content ul li:before {
  content: "";
  display: block;
  width: .4vw;
  height: .4vw;
  background-color: #ff7051;
  border-radius: 1000px;
  position: absolute;
  top: .6vw;
  left: 0; }
.single-content ul li:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 768px) {
  .single-header {
    margin-bottom: 10.8vw; }
  .single-header .image {
    height: 48vw;
    margin-bottom: 9.6vw; }
  .single-header .cat {
    font-size: 3vw;
    margin-right: 2.4vw; }
  .single-header h2 {
    font-size: 4.8vw;
    margin-top: 2.4vw; }
  .single-header .date {
    font-size: 3vw; }

  .single-cv-header {
    padding: 1.6vw;
    gap: 2vw; }
  .single-cv-header .content-text {
    padding-bottom: .8vw; }
  .single-cv-header .image {
    width: 20vw;
    height: 12vw;
    flex-shrink: 0; }
  .single-cv-header .cat {
    color: #2ba2f8;
    font-size: 1.1vw;
    font-weight: bold;
    line-height: 1; }
  .single-cv-header h2 {
    font-size: 1.7vw;
    line-height: 1.5;
    margin-top: .8vw;
    margin-bottom: 2vw; }
  .single-cv-header ul {
    gap: .8vw; }
  .single-cv-header ul li p {
    border-radius: 1000px;
    line-height: 1;
    padding: .6vw .6vw .4vw;
    background-color: rgba(11, 22, 36, 0.05);
    color: rgba(11, 22, 36, 0.5);
    font-size: .9vw; }
  .single-cv-header .date {
    color: rgba(11, 22, 36, 0.5);
    font-size: .9vw;
    line-height: 1; }

  .single-content {
    padding-bottom: 12.8vw; }
  .single-content h3 {
    font-size: 4vw;
    padding-bottom: 4.8vw;
    margin-top: 9.6vw; }
  .single-content p {
    font-size: 3vw;
    margin-top: 5.6vw; }
  .single-content h4 {
    font-size: 3.4vw;
    margin-top: 6.4vw; }
  .single-content ul {
    margin-top: 6.4vw; }
  .single-content ul li {
    font-size: 3vw;
    margin-bottom: 1.2vw;
    padding-left: 2vw; }
  .single-content ul li:before {
    content: "";
    display: block;
    width: .8vw;
    height: .8vw;
    top: 1.2vw; } }
.sort {
  margin-bottom: 2.8vw; }
.sort ul {
  gap: .8vw; }
.sort ul li a {
  font-size: .9vw;
  font-weight: bold;
  color: #2ba2f8;
  background-color: white;
  border: 1px solid #2ba2f8;
  line-height: 1;
  padding: .6vw .6vw .4vw;
  border-radius: 1000px; }
.sort ul li a:hover {
  background-color: #2ba2f8;
  color: white; }
.sort ul li .active {
  background-color: #2ba2f8;
  color: white; }

@media only screen and (max-width: 768px) {
  .sort {
    margin-bottom: 5.6vw; }
  .sort ul {
    gap: 1.6vw; }
  .sort ul li a {
    font-size: 3vw;
    padding: 2.4vw 2.8vw 2.4vw; } }
.single-cv-content {
  padding-bottom: 6.4vw;
  border-bottom: 1px solid rgba(11, 22, 36, 0.1); }

.single-cv-heading {
  padding-top: 6.4vw; }
.single-cv-heading h3 {
  font-size: 1.5vw;
  margin-bottom: 1.6vw; }
.single-cv-heading ul {
  gap: .8vw; }
.single-cv-heading ul li {
  border-radius: 1000px;
  width: .4vw;
  height: .4vw;
  background-color: #2ba2f8; }

.interview-contents {
  position: relative;
  z-index: 2;
  padding-top: 6.4vw; }
.interview-contents li {
  margin-bottom: 6.4vw; }
.interview-contents li:last-child {
  margin-bottom: 0; }
.interview-contents h3 {
  color: #2ba2f8;
  position: relative;
  padding: 0;
  font-size: 1.2vw;
  margin-bottom: 1.2vw; }
.interview-contents h3 span {
  font-size: .7vw;
  position: relative;
  font-weight: bold;
  letter-spacing: 0;
  top: -0.6vw;
  margin-right: .4vw; }
.interview-contents p {
  font-size: .9vw; }
.interview-contents .content-l-text .text-area {
  width: 100%; }
.interview-contents .content-2col .text-area {
  width: 46.5%; }
.interview-contents .content-2col .image {
  width: 46.5%;
  height: 18vw;
  background-size: cover;
  background-position: center; }

.qa-contents {
  margin-top: 5.6vw;
  position: relative;
  z-index: 2; }
.qa-contents li {
  padding: 2.4vw 2.4vw;
  margin-bottom: 2vw; }
.qa-contents li h3 {
  font-size: 1.2vw;
  padding: 1.2vw 0vw .6vw 3.6vw; }
.qa-contents li h3:before {
  content: "";
  display: block;
  width: 2.4vw;
  height: 2.4vw;
  background-color: #2ba2f8;
  border-radius: 1000px;
  position: absolute;
  top: 0.8vw;
  left: 0; }
.qa-contents li h3:after {
  content: "Q";
  display: block;
  color: white;
  font-size: 1.4vw;
  line-height: 1;
  position: absolute;
  top: 1.3vw;
  left: .7vw;
  font-weight: bold; }
.qa-contents li p {
  font-size: .9vw;
  padding: 1.2vw 0vw .6vw 3.6vw; }
.qa-contents li p:before {
  content: "";
  display: block;
  width: 2.4vw;
  height: 2.4vw;
  background-color: #ff7051;
  border-radius: 1000px;
  position: absolute;
  top: 0.8vw;
  left: 0; }
.qa-contents li p:after {
  content: "A";
  display: block;
  font-weight: bold;
  color: white;
  font-size: 1.4vw;
  line-height: 1;
  position: absolute;
  top: 1.3vw;
  left: .7vw; }
.qa-contents li:last-child {
  margin-bottom: 0; }

@media only screen and (max-width: 768px) {
  .qa-contents li {
    padding: 4.8vw 4.8vw;
    margin-bottom: 4vw; }
  .qa-contents li h3 {
    font-size: 3.6vw;
    line-height: 1.5;
    padding: 2.4vw 0vw 1.2vw 7.2vw; }
  .qa-contents li h3:before {
    width: 6.4vw;
    height: 6.4vw;
    top: 1.6vw; }
  .qa-contents li h3:after {
    font-size: 4.2vw;
    top: 2.6vw;
    left: 1.4vw; }
  .qa-contents li p {
    font-size: 3vw;
    padding: 2.4vw 0vw 1.2vw 7.2vw; }
  .qa-contents li p:before {
    width: 6.4vw;
    height: 6.4vw;
    top: 1.6vw; }
  .qa-contents li p:after {
    font-size: 4.2vw;
    top: 2.6vw;
    left: 1.4vw; } }
.faq .qa-contents {
  margin-top: 0; }
.faq .qa-contents li {
  padding: 1.6vw;
  margin-bottom: 1.6vw; }
.faq .qa-contents li .qa-btn {
  width: 2.4vw;
  height: 2.4vw;
  background-color: rgba(43, 162, 248, 0.1);
  border-radius: 1000px;
  flex-shrink: 0;
  margin-left: 1.2vw; }
.faq .qa-contents li .qa-btn i {
  font-size: .8vw;
  color: #2ba2f8; }
.faq .qa-contents li .qa-a {
  height: 0;
  overflow: hidden;
  opacity: 0; }
.faq .qa-contents li h3 {
  padding: 0vw 0vw .0vw 3.2vw; }
.faq .qa-contents li h3:before {
  top: -0.1vw; }
.faq .qa-contents li h3:after {
  top: 0.45vw;
  left: .65vw; }
.faq .qa-contents li p {
  font-size: .9vw;
  padding: 1.2vw 0vw .6vw 3.2vw; }
.faq .qa-contents li:hover h3 {
  color: #2ba2f8; }
.faq .qa-contents li.open .qa-btn i {
  transform: rotate(180deg); }
.faq .qa-contents li.open .qa-a {
  height: 100%;
  opacity: 1; }

@media only screen and (max-width: 768px) {
  .faq .qa-contents {
    margin-top: 0; }
  .faq .qa-contents li {
    padding: 3.6vw;
    margin-bottom: 3.2vw; }
  .faq .qa-contents li .qa-btn {
    width: 6.4vw;
    height: 6.4vw;
    flex-shrink: 0; }
  .faq .qa-contents li .qa-btn i {
    font-size: 3vw; }
  .faq .qa-contents li .qa-a {
    height: 0;
    overflow: hidden;
    opacity: 0; }
  .faq .qa-contents li h3 {
    padding: 0vw 0vw .0vw 9.6vw; }
  .faq .qa-contents li h3:before {
    top: -0.1vw; }
  .faq .qa-contents li h3:after {
    top: 1.1vw;
    left: 1.4vw; }
  .faq .qa-contents li p {
    font-size: 3vw;
    padding: 2.4vw 0vw 1.2vw 9.6vw; }
  .faq .qa-contents li:hover h3 {
    color: #2ba2f8; }
  .faq .qa-contents li.open .qa-btn i {
    transform: rotate(180deg); }
  .faq .qa-contents li.open .qa-a {
    height: 100%;
    opacity: 1; } }
.form-content ul li {
  margin-bottom: 2vw; }
.form-content ul li h4 {
  font-size: 1vw;
  font-weight: bold;
  width: 25%;
  line-height: 1;
  position: relative;
  top: 1.6vw; }
.form-content ul li h4 span {
  color: red;
  margin-left: .2vw; }
.form-content ul li .input {
  width: 75%; }
.form-content ul li .input span {
  display: block;
  width: 100%;
  font-size: 12px; }
.form-content input, .form-content select, .form-content textarea {
  font-size: 1vw;
  border-radius: .3vw;
  padding: 1.6vw;
  background-color: rgba(11, 22, 36, 0.05); }
.form-content textarea {
  height: 20vw; }
.form-content .submit-area {
  padding-top: 2.4vw; }
.form-content .submit-area input[type="checkbox"] {
  display: inline-block;
  appearance: checkbox;
  -webkit-appearance: checkbox;
  width: auto;
  margin-right: 0.8vw;
  width: 1.4vw;
  height: 1.4vw;
  position: relative;
  top: -0.1vw; }
.form-content .submit-area span {
  font-size: 1vw; }
.form-content .submit-area span a {
  color: #2ba2f8;
  text-decoration: underline;
  display: inline-block; }
.form-content .submit-area .wpcf7-submit {
  width: 100%;
  display: block; }
.form-content .submit-area input[type="submit"] {
  border-radius: .8vw;
  -webkit-border-radius: .8vw;
  background: #ff7051;
  width: 12vw;
  display: block;
  font-weight: bold !important;
  font-size: 1.2vw;
  margin: 3.6vw auto 6.4vw;
  color: white; }
.form-content .submit-area input[type="submit"]:disabled {
  opacity: 0.3; }

.caption {
  border: 1px solid rgba(11, 22, 36, 0.05);
  padding: 2.4vw; }
.caption .sub-title {
  font-size: 1.1vw;
  margin-bottom: 1.6vw; }
.caption p {
  color: rgba(11, 22, 36, 0.5); }
.caption p a {
  display: inline-block;
  color: #2ba2f8;
  text-decoration: underline; }

@media only screen and (max-width: 768px) {
  .form-content ul li {
    margin-bottom: 6vw; }
  .form-content ul li h4 {
    font-size: 3vw;
    width: 100%;
    top: 0vw;
    margin-bottom: 2.4vw; }
  .form-content ul li h4 span {
    margin-left: .4vw; }
  .form-content ul li .input {
    width: 100%; }
  .form-content ul li .input span {
    font-size: 12px; }
  .form-content input, .form-content select, .form-content textarea {
    font-size: 16px;
    border-radius: .6vw;
    padding: 3.2vw; }
  .form-content textarea {
    height: 40vw; }
  .form-content .submit-area {
    padding-top: 4.8vw; }
  .form-content .submit-area input[type="checkbox"] {
    margin-right: 1.6vw;
    width: 4.2vw;
    height: 4.2vw;
    top: -0.3vw; }
  .form-content .submit-area span {
    font-size: 3vw; }
  .form-content .submit-area input[type="submit"] {
    border-radius: 1.6vw;
    -webkit-border-radius: 1.6vw;
    width: 36vw;
    font-size: 3.6vw;
    margin: 7.2vw auto 12.8vw; }

  .caption {
    border: 1px solid rgba(11, 22, 36, 0.05);
    padding: 4.8vw; }
  .caption .sub-title {
    font-size: 3.3vw;
    margin-bottom: 3.2vw; } }
.video .single-cv-heading {
  padding-top: 0;
  margin-bottom: 3.6vw; }
.video .single-cv-heading h3 {
  text-align: center;
  margin-bottom: 1.2vw; }

.video-list {
  gap: 3.6vw; }
.video-list li {
  width: calc(50% - 1.8vw);
  margin-bottom: 3.6vw; }
.video-list li iframe {
  width: 100%;
  height: 15.8vw;
  margin-bottom: 1.2vw; }
.video-list li h3 {
  font-size: 1.3vw;
  margin-bottom: .8vw; }
.video-list li p {
  font-size: .9vw; }

.links {
  padding: 2.4vw 2.4vw;
  margin-bottom: 4.8vw; }
.links h3 {
  font-size: 1vw;
  margin-bottom: 1.2vw; }
.links ul {
  gap: 1.2vw; }
.links ul li a {
  border-radius: .8vw;
  gap: .8vw;
  padding: 1vw 1vw; }
.links ul li a img {
  width: auto;
  height: 1.6vw; }
.links ul li a h4 {
  font-size: 1vw;
  color: white; }
.links ul li .btn-youtube {
  background-color: #FF0000; }
.links ul li .btn-tiktok {
  background-color: #000000; }
.links ul li .btn-tiktok img {
  height: 2vw; }

.policy .single-content h2 {
  font-size: 1.5vw;
  color: #2ba2f8; }
.policy .single-content h3 {
  font-size: 1.2vw;
  padding-bottom: 1.2vw;
  margin-top: 3.2vw; }
.policy .single-content p {
  margin-top: 1.6vw; }

@media only screen and (max-width: 768px) {
  .policy .single-content h2 {
    font-size: 4vw;
    color: #2ba2f8; }
  .policy .single-content h3 {
    font-size: 3.5vw;
    padding-bottom: 3.6vw;
    margin-top: 8vw; }
  .policy .single-content p {
    margin-top: 4vw; } }
.outline-list > li {
  padding-top: 1.6vw; }
.outline-list > li ul {
  list-style-type: disc;
  padding-left: 1.2vw;
  width: 75%;
  padding: 0 0 1.6vw 1.8vw;
  border-bottom: 2px dotted rgba(11, 22, 36, 0.1); }
.outline-list > li ul li {
  font-weight: 400;
  font-size: .9vw; }
.outline-list h3 {
  width: 25%;
  font-size: .9vw;
  padding: 0 0 1.6vw .6vw;
  border-bottom: 2px solid rgba(11, 22, 36, 0.05); }
.outline-list p {
  font-size: .9vw;
  color: #0b1624;
  width: 75%;
  padding: 0 0 1.6vw .6vw;
  border-bottom: 2px dotted rgba(11, 22, 36, 0.05); }
.outline-list p img {
  width: 12vw;
  display: inline-block;
  margin-right: .8vw; }

.access {
  padding-top: 6.4vw; }
.access .head {
  gap: 2.4vw; }
.access iframe {
  width: 100%;
  height: 24vw; }

@media only screen and (max-width: 768px) {
  .outline-list > li {
    padding-top: 4.8vw; }
  .outline-list > li ul {
    list-style-type: disc;
    padding-left: 0vw;
    width: 75%;
    padding: 0 0 4.8vw 4.8vw;
    border-bottom: 1px dotted rgba(11, 22, 36, 0.1); }
  .outline-list > li ul li {
    font-weight: 400;
    font-size: 3vw; }
  .outline-list h3 {
    width: 25%;
    font-size: 3vw;
    padding: 0 0 4.8vw 0vw;
    border-bottom: 1px solid rgba(11, 22, 36, 0.05); }
  .outline-list p {
    font-size: 3vw;
    color: #0b1624;
    width: 75%;
    padding: 0 0 4.8vw 0vw;
    border-bottom: 1px dotted rgba(11, 22, 36, 0.05); }
  .outline-list p img {
    width: 24vw;
    display: inline-block;
    margin-right: 2.4vw; }

  .access {
    padding-top: 12.8vw; }
  .access .head {
    gap: 4.8vw; }
  .access iframe {
    width: 100%;
    height: 56vw; } }
.faq .kv h2 {
  font-size: 1.5vw;
  margin-top: 4.8vw;
  margin-bottom: 2.4vw; }
.faq .kv .mt0 {
  margin-top: 0; }

@media only screen and (max-width: 768px) {
  .faq .kv h2 {
    font-size: 3.5vw;
    margin-top: 9.6vw;
    margin-bottom: 4.8vw; }
  .faq .kv .mt0 {
    margin-top: 0; } }
@keyframes zoomUp {
  0% {
    transform: scale(1.06); }
  100% {
    transform: scale(1); } }
.swiper-slide-active .swiper-slide__item, .swiper-slide-duplicate-active .swiper-slide__item, .swiper-slide-prev .swiper-slide__item {
  animation: zoomUp 7s linear 0s normal both; }

.global-header .btn-primary {
  width: 100%; }

/*
.loading{
	position: absolute;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	figure{
		width: 24vw;
	}
}
.wrapper{
	opacity: 0;
	transition: .5s;
}
.wrapper.on{
	opacity: 1;
	transition: .5s;
}
*/
/*
-------------------------------------------
TOP
-------------------------------------------
*/
.top .fv {
  padding: 2.4vw;
  height: 100vh; }
.top .fv h1 {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }
.top .fv figure {
  position: absolute;
  right: 20%;
  top: 22%;
  width: 18vw;
  z-index: 3; }
.top .fv .slider-area {
  width: 100%;
  height: 100%;
  border-radius: 2vw;
  overflow: hidden;
  background: #0b1624;
  background-size: cover; }
.top .fv .slider-area .swiper {
  width: 100%;
  height: 100%; }
.top .fv .slider-area .swiper .swiper-slide__item {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center; }
.top .about span {
  font-size: 1.3vw;
  font-weight: bold;
  color: #2ba2f8;
  line-height: 1;
  margin-bottom: 1.2vw;
  text-align: center;
  letter-spacing: 0;
  display: block; }
.top .about h2 {
  font-size: 1.6vw;
  line-height: 1.5;
  margin-bottom: 4.8vw;
  text-align: center; }
.top .about .box .content-text {
  padding: 3.6vw; }
.top .about .box .content-text img {
  width: 10vw;
  display: block;
  margin: 0 auto 2.4vw; }
.top .about .box .content-text h3 {
  font-size: 1vw; }
.top .about .box .content-image {
  padding-top: 3.2vw; }
.top .animation .animation-area {
  height: 36vw;
  position: relative; }
.top .animation .animation-area img {
  position: absolute;
  border-radius: 1000px;
  z-index: 3; }
.top .animation .animation-area .il-animation01 {
  width: 16vw;
  top: 16vw;
  left: -1vw; }
.top .animation .animation-area .il-animation02 {
  width: 20vw;
  top: 23vw;
  right: -3vw; }
.top .animation .animation-area .il-animation03 {
  width: 14vw;
  top: 46vw;
  left: 8vw; }
.top .animation .animation-area .dot {
  position: absolute;
  border-radius: 1000px;
  z-index: 2; }
.top .animation .animation-area .dot01 {
  background-color: #ff7051;
  width: 2.6vw;
  height: 2.6vw;
  top: 35vw;
  right: 14vw; }
.top .animation .animation-area .dot02 {
  background-color: #ff78b9;
  width: 2vw;
  height: 2vw;
  top: 44vw;
  left: 21vw; }
.top .animation .animation-area .dot03 {
  background-color: #2ba2f8;
  width: 3vw;
  height: 3vw;
  top: 48vw;
  left: -5vw; }
.top .animation .animation-area .dot04 {
  background-color: #4dd062;
  width: 3.2vw;
  height: 3.2vw;
  top: 56vw;
  right: 17vw; }

@media only screen and (max-width: 768px) {
  .top .fv {
    padding: 15.8vw 2.4vw 0;
    height: 69.4vh; }
  .top .fv h1 {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .top .fv figure {
    position: absolute;
    right: auto;
    left: 9vw;
    top: auto;
    bottom: 5vw;
    width: 32vw;
    margin: auto; }
  .top .fv .slider-area {
    width: 100%;
    height: 100%;
    border-radius: 2vw;
    overflow: hidden;
    background: #0b1624;
    background-image: url(../img/fv-slide01.jpg);
    background-size: cover; }
  .top .about span {
    font-size: 3.9vw;
    margin-bottom: 3.6vw; }
  .top .about h2 {
    font-size: 4.8vw;
    margin-bottom: 14.4vw; }
  .top .about .box .content-text {
    padding: 10.8vw; }
  .top .about .box .content-text img {
    width: 30vw;
    display: block;
    margin: 0 auto 7.2vw; }
  .top .about .box .content-text h3 {
    font-size: 3vw; }
  .top .about .box .content-image {
    padding-top: 0vw; }
  .top .about .box .content-image img {
    width: 70%;
    margin: 0 auto;
    display: block; }
  .top .animation .animation-area {
    height: 56vw;
    position: relative; }
  .top .animation .animation-area img {
    position: absolute;
    border-radius: 1000px;
    z-index: 3; }
  .top .animation .animation-area .il-animation01 {
    width: 32vw;
    top: -10vw;
    left: 2vw; }
  .top .animation .animation-area .il-animation02 {
    width: 35vw;
    top: 3vw;
    right: 0vw; }
  .top .animation .animation-area .il-animation03 {
    width: 29vw;
    top: 36vw;
    left: 15vw; }
  .top .animation .animation-area .dot {
    position: absolute;
    border-radius: 1000px;
    z-index: 2; }
  .top .animation .animation-area .dot01 {
    background-color: #ff7051;
    width: 4.2vw;
    height: 4.2vw;
    top: -6vw;
    right: 24vw; }
  .top .animation .animation-area .dot02 {
    background-color: #ff78b9;
    width: 3.3vw;
    height: 3.3vw;
    top: 25vw;
    left: 35vw; }
  .top .animation .animation-area .dot03 {
    background-color: #2ba2f8;
    width: 4vw;
    height: 4vw;
    top: 32vw;
    left: 2vw; }
  .top .animation .animation-area .dot04 {
    background-color: #4dd062;
    width: 5.2vw;
    height: 5.2vw;
    top: 49vw;
    right: 22vw; } }
/*
-------------------------------------------
ABOUT
-------------------------------------------
*/
.about .animation {
  padding-top: 9.6vw; }
.about .animation h2 {
  text-align: center;
  line-height: 1.5;
  font-size: 1.5vw; }
.about .animation .animation-area {
  height: 16vw;
  position: relative; }
.about .animation .animation-area img {
  position: absolute;
  border-radius: 1000px;
  z-index: 3; }
.about .animation .animation-area .il-animation01 {
  width: 13vw;
  top: -5vw;
  left: -1vw; }
.about .animation .animation-area .il-animation02 {
  width: 16vw;
  top: 5vw;
  right: -2vw; }
.about .animation .animation-area .dot {
  position: absolute;
  border-radius: 1000px;
  z-index: 2; }
.about .animation .animation-area .dot01 {
  background-color: #ff7051;
  width: 1.4vw;
  height: 1.4vw;
  top: -2vw;
  right: 14vw; }
.about .animation .animation-area .dot02 {
  background-color: #ff78b9;
  width: 1.8vw;
  height: 1.8vw;
  top: 14vw;
  left: 14vw; }
.about .animation .animation-area .dot03 {
  background-color: #2ba2f8;
  width: 2vw;
  height: 2vw;
  top: 20vw;
  right: 22vw; }
.about .nayami .box {
  padding: 3.2vw 3.2vw 2vw;
  border: 1px solid rgba(11, 22, 36, 0.05);
  background: linear-gradient(180deg, #EFF1F3 0%, #FFF 100%); }
.about .nayami h2 {
  font-size: 1.2vw;
  text-align: center;
  margin-bottom: 2vw; }
.about .nayami ul {
  gap: 1.6vw; }
.about .nayami ul li {
  background-color: rgba(11, 22, 36, 0.05);
  padding: 1.6vw 1.2vw;
  text-align: center; }
.about .nayami ul li figure {
  width: 2.4vw;
  margin: 0 auto 0.4vw; }
.about .nayami ul li h3 {
  font-size: 1vw;
  color: #2ba2f8;
  margin-bottom: 1.6vw; }
.about .nayami ul li p {
  font-size: 1.1vw;
  font-weight: bold;
  line-height: 1.4; }
.about .nayami .box > figure {
  width: 1.8vw;
  margin: 2vw auto; }
.about .nayami .box > img {
  width: 12vw;
  display: block;
  margin: 0 auto 1.6vw; }
.about .system > img {
  width: 50%;
  margin: 0 auto 3.2vw; }
.about .system p {
  font-size: 1.1vw;
  font-weight: bold; }
.about .system ul {
  gap: 2.4vw;
  margin: 3.2vw 0; }
.about .system ul li {
  padding: 1.6vw; }
.about .system ul li figure {
  width: 2.4vw;
  margin: 0 auto 1.2vw; }
.about .system ul li h3 {
  font-size: 1.2vw;
  line-height: 1.3; }
.about .system ul li h3 span {
  opacity: .6;
  font-size: .9vw; }

@media only screen and (max-width: 768px) {
  .about .animation {
    padding-top: 14.4vw; }
  .about .animation h2 {
    font-size: 4.2vw; }
  .about .animation .animation-area {
    height: 16vw;
    position: relative; }
  .about .animation .animation-area img {
    position: absolute;
    border-radius: 1000px;
    z-index: 3; }
  .about .animation .animation-area .il-animation01 {
    width: 13vw;
    top: -5vw;
    left: -1vw; }
  .about .animation .animation-area .il-animation02 {
    width: 16vw;
    top: 5vw;
    right: -2vw; }
  .about .animation .animation-area .dot {
    position: absolute;
    border-radius: 1000px;
    z-index: 2; }
  .about .animation .animation-area .dot01 {
    background-color: #ff7051;
    width: 1.4vw;
    height: 1.4vw;
    top: -2vw;
    right: 14vw; }
  .about .animation .animation-area .dot02 {
    background-color: #ff78b9;
    width: 1.8vw;
    height: 1.8vw;
    top: 14vw;
    left: 14vw; }
  .about .animation .animation-area .dot03 {
    background-color: #2ba2f8;
    width: 2vw;
    height: 2vw;
    top: 20vw;
    right: 22vw; }
  .about .nayami .box {
    padding: 6.4vw 6.4vw 4.8vw; }
  .about .nayami h2 {
    font-size: 3.6vw;
    margin-bottom: 6vw; }
  .about .nayami ul {
    gap: 3.2vw; }
  .about .nayami ul li {
    background-color: rgba(11, 22, 36, 0.05);
    padding: 4.8vw 4.8vw;
    text-align: center; }
  .about .nayami ul li figure {
    width: 9.6vw;
    margin: 0 auto 1.2vw; }
  .about .nayami ul li h3 {
    font-size: 3.6vw;
    margin-bottom: 2.4vw; }
  .about .nayami ul li p {
    font-size: 3vw; }
  .about .nayami .box > figure {
    width: 5.4vw;
    margin: 6vw auto; }
  .about .nayami .box > img {
    width: 36vw;
    display: block;
    margin: 0 auto 4.8vw; }
  .about .system > img {
    width: 90%;
    margin: 0 auto 9.6vw; }
  .about .system p {
    font-size: 3.3vw;
    font-weight: 600; }
  .about .system ul {
    gap: 3.6vw;
    margin: 6.4vw 0; }
  .about .system ul li {
    padding: 4.8vw; }
  .about .system ul li figure {
    width: 7.2vw;
    margin: 0 auto 2.4vw; }
  .about .system ul li h3 {
    font-size: 3.6vw; }
  .about .system ul li h3 span {
    opacity: .6;
    font-size: 2.4vw; } }
/*
-------------------------------------------
FUNCTIONS
-------------------------------------------
*/
.functions .kv .image-area {
  padding: 4.2vw 3.6vw 3.6vw;
  margin-bottom: 4.8vw;
  text-align: center; }
.functions .kv .image-area img {
  width: 70%;
  margin: 0 auto; }
.functions .kv p {
  padding: 0 6.4vw;
  font-weight: bold;
  font-size: .9vw; }

@media only screen and (max-width: 768px) {
  .functions .kv .image-area {
    padding: 8.4vw 6.4vw 7.2vw;
    margin-bottom: 9.6vw; }
  .functions .kv .image-area img {
    width: 100%;
    margin: 0 auto; }
  .functions .kv p {
    padding: 0;
    font-weight: 600;
    font-size: 3vw; } }
