@charset "utf-8";

/* common */

/*! Yaku Han JP v3.4.1 (OFL-1.1 AND MIT) by Qrac */

/*! Type: YakuHanJPs - Based on Noto Sans CJK JP */

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Thin.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Thin.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Thin.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Light.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Light.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Light.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-DemiLight.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Regular.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Regular.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Regular.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Medium.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Medium.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Medium.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Bold.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Bold.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Bold.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJPs";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Black.eot");
  src: url("../fonts/YakuHanJPs/YakuHanJPs-Black.woff2") format("woff2"), url("../fonts/YakuHanJPs/YakuHanJPs-Black.woff") format("woff");
  unicode-range: U+3008, U+3009, U+300a, U+300b, U+300c, U+300d, U+300e, U+300f, U+3010, U+3011, U+3014, U+3015, U+ff08, U+ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */

html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}

*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}

:after,:before{text-decoration:inherit;vertical-align:inherit}

*{padding:0;margin:0}

audio:not([controls]){display:none;height:0}

hr{overflow:visible}

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

summary{display:list-item}

small{font-size:80%}

[hidden],template{display:none}

abbr[title]{border-bottom:1px dotted;text-decoration:none}

a{background-color:transparent;-webkit-text-decoration-skip:objects}

a:active,a:hover{outline-width:0}

code,kbd,pre,samp{font-family:monospace,monospace}

b,strong{font-weight:bolder}

dfn{font-style:italic}

mark{background-color:#ff0;color:#000}

sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}

sub{bottom:-.25em}

sup{top:-.5em}

input{border-radius:0}

[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}

[disabled]{cursor:default}

[type=number]{width:auto}

[type=search]{-webkit-appearance:textfield}

[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}

textarea{overflow:auto;resize:vertical}

button,input,optgroup,select,textarea{font:inherit}

optgroup{font-weight:700}

button{overflow:visible}

[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}

[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}

[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}

button,select{text-transform:none}

button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}

select{-moz-appearance:none;-webkit-appearance:none}

select::-ms-expand{display:none}

select::-ms-value{color:currentColor}

legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}

::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}

[type=search]{-webkit-appearance:textfield;outline-offset:-2px}

img{border-style:none}

progress{vertical-align:baseline}

svg:not(:root){overflow:hidden}

audio,canvas,progress,video{display:inline-block}

@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}

[aria-busy=true]{cursor:progress}

[aria-controls]{cursor:pointer}

[aria-disabled]{cursor:default}

::selection{background-color:#b3d4fc;color:#000;text-shadow:none}

/* Media Queries */

main { display: block; }

html { background: #fff; color: #050505; line-height: 1.8;
  font-size: 16px; }

@media screen and (min-width: 1760px) {

html {
  font-size: calc(16*1.1px); }
      }

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

html {
  font-size: calc(16*.85px); }
      }

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

html {
  font-size: calc(16*.7px); }
      }

body { font-family: YakuHanJPs, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; text-align: center; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

body, div, section, header, footer, nav, article, aside, main, dl, ul, p, a, :after, :before { -webkit-backface-visibility: hidden; backface-visibility: hidden; }

a { color: #050505; border: 0; background-color: transparent; overflow: hidden; text-decoration: none; }

a:hover,
a:active { outline: 0; }

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

img { border: 0; vertical-align: bottom; line-height: 0px; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }

ol, ul { list-style-type: none; }

em, strong { font-weight: bold; font-style: normal; }

img { max-width: 100%; height: auto; }

svg { max-width: 100%; display: block; }

img[src$=".svg"] { max-width: 100%; }

/* ::selection {background: #a1a1a1; }
::-moz-selection {background: #a1a1a1; } */

.is-sp a,
.is-sp input[type="button"],
.is-sp input[type="submit"],
.is-tab a,
.is-tab input[type="button"],
.is-tab input[type="submit"]  {
  -webkit-tap-highlight-color: rgba(0,0,0,.2);
}

/* lib */

/* Slider */

.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}

.slick-list:focus
{
    outline: none;
}

.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}

.slick-track:after
{
    clear: both;
}

.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide
{
    float: right;
}

.slick-slide img
{
    display: block;
}

.slick-slide.slick-loading img
{
    display: none;
}

.slick-slide.dragging img
{
    pointer-events: none;
}

.slick-initialized .slick-slide
{
    display: block;
}

.slick-loading .slick-slide
{
    visibility: hidden;
}

.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/*
 * Container style
 */

.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto;
}

/*
 * Scrollbar rail styles
 */

.ps__rail-x {
  display: none;
  opacity: 0;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-y {
  display: none;
  opacity: 0;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9;
}

/*
 * Scrollbar thumb styles
 */

.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color .2s linear, height .2s ease-in-out;
  -webkit-transition: background-color .2s linear, height .2s ease-in-out;
  height: 6px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color .2s linear, width .2s ease-in-out;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  background-color: #999;
  height: 11px;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 11px;
}

/* MS supports */

@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

.ps .ps__rail-y { width: 6px; height: 100%; }

.ps .ps__thumb-y { border-radius: 0; transition: none; right: 0; }

.ps .ps__thumb-y,
.ps .ps__rail-y:hover > .ps__thumb-y,
.ps .ps__rail-y:focus > .ps__thumb-y,
.ps .ps__rail-y.ps--clicking .ps__thumb-y { width: 6px; background-color: #000; }

.ps .ps__rail-y:hover { background-color: transparent; }

/* layout */

html.is-nobar {
    overflow: hidden;
  }

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

#l-main {
    padding-top: calc(100em/16)
}
  }

#l-wrapper {
  overflow-y: hidden;
}

/* utility */

.cm-wrapper {
  background: #fff;
  position: relative;
  z-index: 1
}

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

.cm-wrapper {
}
  }

.u-section {
  max-width: 1080px;
  width: calc(680/750*100%);
  margin: 0 auto;
  text-align: left
}

.u-section.is-min {
    max-width: 920px;
  }

.u-blocktop {
  padding-top: calc(100em/16);
}

.u-blockbtm {
  padding-bottom: calc(80em/16);
}

.u-jp {
  font-family: YakuHanJPs, Hiragino Sans, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-feature-settings : "palt"
}

.u-jp.is-bold {
    font-weight: 800;
  }

.u-jpmin {
  font-family: YakuHanJPs, a1明朝, serif;
  font-style: bold;
  font-weight: 600;
  font-feature-settings : "palt";
}

.u-en {
  font-family: YakuHanJPs, din, sans-serif;
  font-style: normal;
  font-weight: 700
}

.u-en.is-bold {
    font-weight: 800;
  }

.u-whiteTxt {
  color: #fff;
}

.u-greenTxt {
  color: #1bc659;
}

@media screen and (min-width: 820px) {
  .u-target {
    transition: opacity .45s
  }
    .u-target:hover {
      opacity: .6;
    }
}

.u-animateblock {
  opacity: 0
}

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

.u-animateblock {
    opacity: 1
}
  }

.u-pcNone {
  display: none
}

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

.u-pcNone {
    display: block
}
  }

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

.u-spNone {
    display: none
}
  }

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

.u-vt {
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width: 1em;
  line-height: 1em
}

.u-vt.u-jp {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-feature-settings: 'pkna';
  }

@media screen and (max-width: 1024px) {
    .u-vt:not(.is-spcurrent) {
      -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb;
      font-family: YakuHanJPs, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
      width: auto;
      line-height: inherit;
    }
    .u-vt.u-jp:not(.is-spcurrent) {
      font-family: YakuHanJPs, a-otf-midashi-go-mb31-pr6n, sans-serif;
      font-feature-settings : "palt";
    }
  }

/* compornent */

.c-link {
  font-size: calc(18em/16);
  display: inline-block
}

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

.c-link {
    margin: auto
}
  }

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

.c-link {
}
  }

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

.c-link {
}
  }

.c-link .u-target {
    position: relative;
    background: #1bc659;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 2em;
    line-height: 2em;
  }

:-ms-input-placeholder{ /* Others */
  color:#868686;
  letter-spacing: .1em;
}

::placeholder{ /* Others */
  color:#868686;
  letter-spacing: .1em;
}

.c-txtbox,
.c-txtarea {
  -webkit-appearance: none;
          appearance: none;
  border: 1px solid #717171;
  box-shadow: none;
  border-radius: 0;
  outline: 0;
  background-color: transparent;
  box-sizing: border-box;
  font:  inherit;
}

.c-txtbox {
  padding:  0 25px
}

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

.c-txtbox {
    padding:  0 10px
}
  }

.c-txtarea {
  padding: 25px
}

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

.c-txtarea {
    padding: 10px
}
  }

.c-select {
  position: relative;
  display: inline-flex;
  flex-direction: column
}

.c-select::before {
    content: "▼";
    display: block;
    position: absolute;
    top: 0;
    right: calc(25em/16);
    font-size: 16px;
    z-index: 0
  }

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

.c-select::before {
      right: 10px
  }
    }

.c-select__body {
  cursor: pointer;
  text-overflow: ellipsis;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
          appearance: none;
  line-height: 1.5;
  border: 1px solid #717171;
  border-radius: 0;
  position: relative;
  z-index: 1;
  padding-left: 25px;
  display: block
}

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

.c-select__body {
    padding-left: 10px
}
  }

/* module */

.cm-h {
  background: #fff;
  border-top: 10px solid #1bc659;
  height: calc(100em/16);
  width: 100%;
  z-index: 9999;
  transition: all .4s
}

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

.cm-h {
    position: fixed;
    top: 0;
    left: 0
}
    .cm-h.is-open {
      -ms-scroll-chaining: none;
          overscroll-behavior: none;
    }
  }

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

.cm-h {
}
  }

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

.cm-h {
}
  }

.cm-h .u-section {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
  }

.cm-h__logo {
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  height: calc(200em/16);
  width: calc(160em/16);
  z-index: 9999
}

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

.cm-h__logo {
    height: 100%;
    width: auto
}
  }

.cm-h__logo .u-target {
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%
  }

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

.cm-h__logo .u-target {
      flex-direction: row-reverse;
      justify-content: center
  }
    }

.cm-h__logo .txt {
    margin-top: calc(20em/16)
  }

.cm-h__logo .txt .img {
    width: calc(100em/16);
    height: calc(50em/16);
    }

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

.cm-h__logo .txt {
      margin-top: 0;
      position: relative;
      z-index: 9999
  }
      .cm-h__logo .txt .u-jpmin {
        font-size: calc(32em/16);
        margin-left: calc(14em/32);
        height: auto;
        width: auto;
      }
    }

.cm-h__logo .icon {
    width: calc(75em/16);
    height: calc(70em/16)
  }

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

.cm-h__logo .icon {
      width: calc(75em/16*.6);
      height: calc(70em/16*.6);
      position: relative;
      z-index: 9999
  }
    }

.cm-h__nav {
  position: relative;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-top: 1em
}

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

.cm-h__nav {
    font-size: calc(28em/16);
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    display: none;
    opacity: 0;
    z-index: 8;
    margin-top: calc(80em/28);
    margin-left: 0;
    padding: calc(60em/28) 0 200px;
    z-index: 9999;
    -ms-scroll-chaining: none;
        overscroll-behavior: none
}
  }

.cm-h__nav.is-open {
    background-color: #fff;
  }

.cm-h__navList {
  display: flex
}

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

.cm-h__navList {
    display: flex;
    flex-direction: column;
    align-items: center
}
  }

.cm-h__navListItem:not(:first-of-type) {
    margin-left: 2em
  }

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

.cm-h__navListItem:not(:first-of-type) {
      margin: 1em 0 0;
      padding-left: 0;
      border-left: 0
  }
    }

.cm-h__navListItem .u-target {
    display: flex;
    align-items: center;
    height: calc(17em/16);
    position: relative;
    padding-left: 1em
  }

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

.cm-h__navListItem .u-target {
      padding-left: 0;
      height: auto
  }
    }

.cm-h__navListItem .u-target:before {
      position: absolute;
      top: 50%;
      left: 0px;
      transform: translateY(-50%);
      width: 0px;
      height: 0px;
      border: 0.3em solid transparent;
      border-left: 0.4em solid #050505;
      content: ""
    }

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

.cm-h__navListItem .u-target:before {
        display: none
    }
      }

.cm-h__navListItem .target__txt {
    font-size: calc(16em/16)
  }

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

.cm-h__navListItem .target__txt {
  }
    }

.cm-h__infoInstagram {
  font-size: calc(16em/28);
  position: relative;
  padding-left: calc(160em/16);
  margin-top: calc(40em/16)
}

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

.cm-h__infoInstagram {
}
  }

.cm-h__infoInstagram .title {
    font-size: calc(18em/16);
  }

.cm-h__infoInstagram .txt {
    font-size: calc(14em/16);
    margin-top: .5em;
  }

.cm-h__infoInstagram .link {
    margin-top: .5em;
    height: calc(42em/16);
    width: calc(172em/16);
  }

.cm-h__infoInstagram .img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    height: calc(128em/16);
    width: calc(128em/16);
  }

.cm-h__infoCompany {
  font-size: calc(16em/28);
  position: relative
}

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

.cm-h__infoCompany {
    display: flex;
    margin-top: 6em
}
    .cm-h__infoCompany:before {
      content: "";
      background: #e1e1e1;
      position: absolute;
      top: -3em;
      height: 1px;
      width: 100%;
    }
  }

.cm-h__infoCompany .title {
    font-size: calc(28em/16);
    font-weight: 600;
  }

.cm-h__infoCompany .txt {
    margin-top: 1em
  }

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

.cm-h__infoCompany .txt {
      margin-top: 0;
      margin-left: 3em
  }
    }

.cm-h__menu {
  display: none
}

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

.cm-h__menu {
    position:absolute;
    top: 50%;
    right: calc(35/750*100%);
    margin-top: -36px;
    width: 72px;
    height: 72px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 0;
    outline: 0;
    -webkit-appearance: none;
            appearance: none;
    z-index: 9
}
  }

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

.cm-h__menu {
    width: calc(72px*.8);
    height: calc(72px*.8);
    margin-top: calc(-36px*.8)
}
  }

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

.cm-h__menu {
    width: calc(72px*.7);
    height: calc(72px*.7);
    margin-top: calc(-36px*.7)
}
  }

.cm-h__menu.is-open {
    right: calc(20/750*100%);
  }

.cm-h__menuLine {
  position: relative;
  width: 31px;
  height: 11px
}

.cm-h__menuLine .cm-h__menuLineBody {
    opacity: 0;
  }

.cm-h__menuLine::before,
  .cm-h__menuLine::after {
    content: "";
    display: block;
    transition: transform .2s, opacity .3s;
    border-radius: calc(17px/2);
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
  }

.cm-h__menuLine::before {
    top: 0;
  }

.cm-h__menuLine::after {
    bottom: 0;
  }

.cm-h__menu.is-open .cm-h__menuLine .cm-h__menuLineBody {
    transform: scale(0, 1);
    opacity: 0
}

.cm-h__menu.is-open .cm-h__menuLine::before {
    transform: translateY(4px) rotate(-45deg)
}

.cm-h__menu.is-open .cm-h__menuLine::after {
    transform: translateY(-4px) rotate(45deg)
}

.cm-f {
  background-color: #fff;
}

.cm-f__banner {
  background: #e1e1e1;
}

.cm-f__bannerList {
  display: flex;
  flex-wrap: wrap
}

.cm-f__bannerList .list__item {
    width: calc(620/1280*100%)
  }

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

.cm-f__bannerList .list__item {
      width: 100%
  }
      .cm-f__bannerList .list__item:nth-child(2) {
        margin-top: 3em;
      }
    }

.cm-f__bannerList .list__item:nth-child(even) {
      margin-left: calc(40/1280*100%)
    }

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

.cm-f__bannerList .list__item:nth-child(even) {
        margin-left: 0
    }
      }

.cm-f__bannerList .list__item:nth-child(n+3) {
      margin-top: calc(60/1280*100%)
    }

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

.cm-f__bannerList .list__item:nth-child(n+3) {
        margin-top: 3em
    }
      }

.cm-f__bannerList .list__item .u-target {
      display: flex;
      flex-direction: column-reverse;
    }

.cm-f__bannerList .list__item .title {
      border-left: calc(9em/16) solid #1bc659;
      margin-top: calc(20em/16)
    }

.cm-f__bannerList .list__item .title .txt:nth-child(1) {
          font-size: calc(24em/16);
          padding-left: .6em;
        }

.cm-f__bannerList .list__item .title .txt:nth-child(2) {
          font-size: calc(12em/16);
          padding-left: 2.6em;
        }

.cm-f__nav {
  font-size: calc(14em/16);
  background: #3B4043;
  border-top: 10px solid #1bc659;
  padding: calc(28em/14) 0  calc(48em/14)
}

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

.cm-f__nav {
    font-size: calc(18em/16);
    padding-bottom: calc(36em/16)
}
  }

.cm-f__nav .cm-f__navBody {
    position: relative;
  }

.cm-f__nav .cm-f__navBodyList {
    display: flex
  }

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

.cm-f__nav .cm-f__navBodyList {
      flex-wrap: wrap;
      justify-content: center
  }
    }

.cm-f__nav .cm-f__navBodyList .list__item {
      color: #fff;
      line-height: 2.5em;
      margin: 0 2em
    }

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(1) {
        margin-left: 0
      }

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

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(1) {
          margin-left: 2em
      }
        }

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(4) {
        background: #50ABA9;
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        margin-right: 0
      }

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

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(4) {
          background: none;
          position: relative;
          margin-right: 2em
      }
        }

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(4) .u-target {
          padding: 0 1.5em
        }

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

.cm-f__nav .cm-f__navBodyList .list__item:nth-child(4) .u-target {
            font-weight: 300 !important;
            padding: 0
        }
          }

.cm-f__nav .cm-f__navBodyList .list__item .u-target {
        color: #fff;
        display: block;
      }

.cm-f__info {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: calc(50em/16) 0 calc(30em/16)
}

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

.cm-f__info {
    font-size: calc(18em/16);
    flex-direction: column
}

.is-open .cm-f__info {
      position: fixed;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      z-index: 9999
}
  }

.cm-f__infoInstagram {
  position: relative;
  padding-left: calc(160em/16)
}

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

.cm-f__infoInstagram {
}
  }

.cm-f__infoInstagram .title {
    font-size: calc(18em/16);
  }

.cm-f__infoInstagram .txt {
    font-size: calc(14em/16);
    margin-top: .5em;
  }

.cm-f__infoInstagram .link {
    margin-top: .5em;
    height: calc(42em/16);
    width: calc(172em/16);
  }

.cm-f__infoInstagram .img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    height: calc(128em/16);
    width: calc(128em/16);
  }

.cm-f__infoCompany {
  position: relative
}

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

.cm-f__infoCompany {
    display: flex;
    margin-top: 6em
}
    .cm-f__infoCompany:before {
      content: "";
      background: #e1e1e1;
      position: absolute;
      top: -3em;
      height: 1px;
      width: 100%;
    }
  }

.cm-f__infoCompany .title {
    font-size: calc(28em/16);
  }

.cm-f__infoCompany .txt {
    margin-top: 1em
  }

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

.cm-f__infoCompany .txt {
      margin-top: 0;
      margin-left: 3em
  }
    }

.cm-f__infoCopy {
  background: #3B4043
}

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

.cm-f__infoCopy {
    margin-top: calc(50/750*100%);
    text-align: center;
    position: relative
}
  }

.cm-f__infoCopy small {
    font-size: calc(12em/16);
    color: #fff;
    line-height: calc(50em/12)
  }

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

.cm-f__infoCopy small {
  }
    }

.cm-title {
  position: relative
}

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

.cm-title {
}
  }

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

.cm-title {
}
  }

.cm-title .txt {
    display: block
  }

.cm-title .txt:nth-of-type(1) {
      font-size: calc(20em/16);
    }

.cm-title .txt:nth-of-type(2) {
      font-size: calc(32em/16)
    }

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

.cm-title .txt:nth-of-type(2) {
    }
      }

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

.cm-title .txt:nth-of-type(2) {
    }
      }

.cm-title .icon {
    fill: #1bc659;
    position: absolute;
  }

.cm-contents {
  display: flex;
  justify-content: space-between
}

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

.cm-contents {
    display: block
}
  }

.cm-contents__title {
  flex-shrink: 0;
}

.cm-contents__body {
  flex-basis: calc(830/1180*100%);
  margin-left: calc(40/1180*100%)
}

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

.cm-contents__body {
    margin: 50px 0 0
}
  }

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

.cm-contents__body {
    margin-top: calc(50px*.8)
}
  }

.cm-mousestalker {
  pointer-events: none;
  position: fixed;
  top: -30px;
  left: -30px;
  width: 60px;
  height: 60px;
  /* mix-blend-mode: exclusion; */
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 12px;
  opacity: 0;
  background-color: rgba(255, 255, 255, .8)
}

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

.cm-mousestalker {
    display: none
}
  }

.is-sp .cm-mousestalker, .is-tab .cm-mousestalker {
    display: none
}

.cm-mask {
  --mask-start:  100%;
  --mask-end:  100%;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255,255,255,1) var(--mask-start), rgba(255,255,255,0) var(--mask-end));
  z-index: 9999;
}

/* top */

.p-top__mv {
  position: relative;
  height: calc(100vh - calc(100em/16));
  background-color: #fff
  /* @media screen and (max-width: 1620px) {
    height: calc(870/1620*100vw);
  } */
}

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

.p-top__mv {
    margin-top:0;
    height: calc(1100/750*100vw)
}
  }

.p-top__mvBody {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  align-items: center;
  z-index: 2
}

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

.p-top__mvBody {
    justify-content: flex-end;
    align-items: flex-start
}
  }

.p-top__mvBodyTitle {
  margin-left: calc(200/1600*100%)
}

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

.p-top__mvBodyTitle {
    margin-top: calc(60em/16);
    margin-left: auto
}
  }

.p-top__mvBodyTitle img {
    height: calc(350em/16);
    width: calc(285em/16);
    filter: drop-shadow(0 0 4px #000)
  }

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

.p-top__mvBodyTitle img {
      height: calc(230em/16*.8);
      width: calc(285em/16*.8)
  }
    }

.p-top__mvImg {
  position: absolute;
  left: 0;
  bottom: calc(-40em/16);
  mix-blend-mode: multiply; 
  z-index: 100
}

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

.p-top__mvImg {
    bottom: calc(-30em/16)
}
  }

.p-top__mvImg img {
    height: calc(225em/16);
    width: calc(240em/16)
  }

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

.p-top__mvImg img {
      height: calc(225em/16*.8);
      width: calc(240em/16*.8)
  }
    }

.p-top__mvBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: calc(100em/20) 0  calc(100em/20) 0;
  overflow: hidden;
  z-index: 0
}

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

.p-top__mvBg {
    border-radius: calc(60em/20) 0  calc(60em/20) 0
}
  }

.p-top__mvBg .p-top__mvBgItem {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
  }

.p-top__mvBg .p-top__mvBgItem .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

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

.p-top__news {
}
  }

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

.p-top__news {
    font-size: calc(20em/16)
}
  }

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

.p-top__news {
}
  }

.p-top__newsTitle {
  font-size: calc(18em/16);
  position: relative;
  background: #f92e38;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 2em;
  line-height: 2em
}

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

.p-top__newsTitle {
}
  }

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

.p-top__newsTitle {
    margin: 0 auto
}
  }

.p-top__newsList {
  margin-top: -1px
}

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

.p-top__newsList {
    margin-top: 2em
}
  }

.p-top__newsList .list__item {
    position: relative
  }

.p-top__newsList .list__item:nth-child(1):before {
        content: "";
        background:  #1bc659;
        position: absolute;
        top: 0;
        right: 0;
        height: 1px;
        width: calc(100% - 14em)
      }

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

.p-top__newsList .list__item:nth-child(1):before {
          width: 100%
      }
        }

.p-top__newsList .u-target {
    display: flex
  }

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

.p-top__newsList .u-target {
      flex-direction: column
  }
    }

.p-top__newsList .date {
    border-bottom: 1px solid #1bc659;
    display: inline-block;
    padding-left: 2em;
    line-height: 4em;
    width: 15em
  }

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

.p-top__newsList .date {
      border-bottom: none;
      padding-left: 1em;
      width: 100%
  }
    }

.p-top__newsList .txt {
    border-bottom: 1px solid #1bc659;
    display: inline-block;
    line-height: 4em;
    width: calc(100% - 15em)
  }

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

.p-top__newsList .txt {
      padding-left: 1em;
      margin-top: -2em;
      width: 100%
  }
    }

.p-top__newsLink {
  display: flex;
  justify-content: flex-end;
  margin-top: 2em
}

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

.p-top__newsLink {
    justify-content: flex-start
}
  }

.p-top__intro {
  background: #e1e1e1
}

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

.p-top__intro {
}
  }

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

.p-top__intro {
}
  }

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

.p-top__intro {
}
  }

.p-top__intro .u-section {
    display: flex;
    justify-content: space-between
  }

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

.p-top__intro .u-section {
      flex-direction: column;
      align-items: center
  }
    }

.p-top__introBlock {
  flex-basis: calc(320/1280*100%)
}

.p-top__introBlock .title {
    font-size: calc(36em/16);
    line-height: 1.3em
  }

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

.p-top__introBlock .title {
      font-size: calc(40em/16)
  }
    }

.p-top__introBlock .txt {
    order: 3;
    font-size: calc(18em/16);
    margin-top: calc(20em/14)
  }

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

.p-top__introBlock .txt {
      font-size: calc(20em/16)
  }
    }

.p-top__introList {
  flex-basis: calc(900/1280*100%);
  display: flex;
  justify-content: space-between
}

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

.p-top__introList {
    font-size: calc(18em/16);
    margin-top: calc(40em/18)
}
  }

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

.p-top__introList {
    flex-direction: column;
    margin: 0 auto;
    width: 85%
}
  }

.p-top__introList .list__item {
    position: relative;
    flex-basis: calc(290/910*100%);
    display: flex;
    flex-direction: column
  }

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

.p-top__introList .list__item {
      margin-top: 3em
  }
    }

.p-top__introList .list__item .title {
      order: 2;
      border-left: .4em solid #1bc659;
      margin-top: calc(20em/16);
      padding-left: 1em
    }

.p-top__introList .list__item .title .title__txt:nth-child(1) {
          font-size: calc(20em/16)
        }

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

.p-top__introList .list__item .title .title__txt:nth-child(1) {
            font-size: calc(30em/16)
        }
          }

.p-top__introList .list__item .title .title__txt:nth-child(2) {
          font-size: calc(10em/16);
          margin-left: 1em;
        }

.p-top__introList .list__item .txt {
      order: 3;
      font-size: calc(14em/16);
      margin-top: calc(10em/14)
    }

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

.p-top__introList .list__item .txt {
        font-size: calc(18em/16);
        padding-top: calc(300/270*90%)
    }
      }

.p-top__introList .list__item .img {
      order: 1;
      position: relative;
      padding-top: calc(300/270*100%)
    }

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

.p-top__introList .list__item .img {
        position: absolute;
        top: calc(50/270*100%);
        margin: auto;
        padding-top: calc(300/270*80%);
        width: 80%
    }
      }

.p-top__introList .list__item .img .img__body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
      }

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

.p-top__play {
}
  }

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

.p-top__play {
}
  }

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

.p-top__play {
}
  }

.p-top__play .u-section {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center
  }

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

.p-top__play .u-section {
      display: block
  }
    }

.p-top__playBlock {
  position: relative
}

.p-top__playBlock:nth-child(1) {
    flex-basis: calc(400/1280*100%)
  }

.p-top__playBlock:nth-child(1) .block__title .icon {
        bottom: calc(70em/16);
        left: calc(70em/16)
      }

.p-top__playBlock:nth-child(1) .block__title .icon svg {
          height: calc(45em/16);
          width: calc(75em/16);
        }

.p-top__playBlock:nth-child(1) .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-top__playBlock:nth-child(1) .block__txt {
        font-size: calc(18em/16);
        margin-top: calc(520/680*100%)
    }
      }

.p-top__playBlock:nth-child(1) .block__link {
      margin-top: calc(40em/16)
    }

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

.p-top__playBlock:nth-child(1) .block__link {
        font-size: calc(18em/16);
        margin-top: calc(30em/18)
    }
      }

.p-top__playBlock:nth-child(2) {
    flex-basis: calc(800/1280*100%);
    padding-top: calc(50em/16)
  }

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

.p-top__playBlock:nth-child(2) {
      position: absolute;
      top: calc(120em/16);
      left: 0;
      right: 0;
      margin: auto
  }
    }

.p-top__playBlock:nth-child(2) .block__video {
      width: 100%
    }

.p-top__playBlock:nth-child(2) .block__video video {
        width: 100%;
      }

.p-top__playBlock:nth-child(2) .block__img {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 10
    }

.p-top__playBlock:nth-child(2) .block__img img {
        height: calc(120em/16);
        width: calc(160em/16);
      }

.p-top__enjoy {
  background: #1f384a
}

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

.p-top__enjoy {
}
  }

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

.p-top__enjoy {
}
  }

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

.p-top__enjoy {
}
  }

.p-top__enjoy .u-section {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center
  }

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

.p-top__enjoy .u-section {
      display: block
  }
    }

.p-top__enjoyBlock {
  position: relative
}

.p-top__enjoyBlock:nth-child(1) {
    flex-basis: calc(400/1280*100%)
  }

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

.p-top__enjoyBlock:nth-child(1) .block__title .txt:nth-child(2) {
          margin-top: .4em;
          line-height: 1.2
      }
        }

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

.p-top__enjoyBlock:nth-child(1) .block__title .txt:nth-child(2) {
          margin-top: 0;
          line-height: 1.8
      }
        }

.p-top__enjoyBlock:nth-child(1) .block__title .icon {
        bottom: calc(70em/16);
        left: calc(70em/16)
      }

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

.p-top__enjoyBlock:nth-child(1) .block__title .icon {
          bottom: calc(110em/16)
      }
        }

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

.p-top__enjoyBlock:nth-child(1) .block__title .icon {
          bottom: calc(70em/16)
      }
        }

.p-top__enjoyBlock:nth-child(1) .block__title .icon svg {
          height: calc(45em/16);
          width: calc(75em/16);
        }

.p-top__enjoyBlock:nth-child(1) .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-top__enjoyBlock:nth-child(1) .block__txt {
        font-size: calc(18em/16);
        margin-top: calc(520/680*100%)
    }
      }

.p-top__enjoyBlock:nth-child(1) .block__link {
      margin-top: calc(40em/16)
    }

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

.p-top__enjoyBlock:nth-child(1) .block__link {
        font-size: calc(18em/16);
        margin-top: calc(30em/18)
    }
      }

.p-top__enjoyBlock:nth-child(2) {
    flex-basis: calc(800/1280*100%);
    padding-top: calc(50em/16)
  }

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

.p-top__enjoyBlock:nth-child(2) {
      position: absolute;
      top: calc(120em/16);
      left: 0;
      right: 0;
      margin: auto
  }
    }

.p-top__enjoyBlock:nth-child(2) .block__video {
      width: 100%
    }

.p-top__enjoyBlock:nth-child(2) .block__video video {
        width: 100%;
      }

.p-top__enjoyBlock:nth-child(2) .block__img {
      position: absolute;
      top: 0;
      right: 0;
      z-index: 10
    }

.p-top__enjoyBlock:nth-child(2) .block__img img {
        height: calc(135em/16);
        width: calc(200em/16);
      }

.p-top__wood {
  background: #e1e1e1
}

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

.p-top__wood {
}
  }

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

.p-top__wood {
}
  }

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

.p-top__wood {
}
  }

.p-top__wood .u-section {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center
  }

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

.p-top__wood .u-section {
      display: block
  }
    }

.p-top__woodBlock {
  position: relative
}

.p-top__woodBlock:nth-child(1) {
    flex-basis: calc(400/1280*100%)
  }

.p-top__woodBlock:nth-child(1) .block__title .icon {
        bottom: calc(70em/16);
        left: calc(70em/16)
      }

.p-top__woodBlock:nth-child(1) .block__title .icon svg {
          height: calc(45em/16);
          width: calc(75em/16);
        }

.p-top__woodBlock:nth-child(1) .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-top__woodBlock:nth-child(1) .block__txt {
        font-size: calc(18em/16);
        margin-top: calc(520/680*100%)
    }
      }

.p-top__woodBlock:nth-child(2) {
    flex-basis: calc(800/1280*100%)
  }

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

.p-top__woodBlock:nth-child(2) {
      position: absolute;
      top: calc(120em/16);
      left: 0;
      right: 0;
      margin: auto
  }
    }

.p-top__woodBlock:nth-child(2) .block__img {
      padding-top: calc(475/734*100%);
      width: 100%
    }

.p-top__woodBlock:nth-child(2) .block__img .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
        height: 100%;
        width: 100%;
      }

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

.p-top__profile {
}
  }

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

.p-top__profile {
}
  }

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

.p-top__profile {
}
  }

.p-top__profile .u-section {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-around;
    align-items: center
  }

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

.p-top__profile .u-section {
      display: block
  }
    }

.p-top__profileBlock {
  position: relative
}

.p-top__profileBlock:nth-child(1) {
    flex-basis: calc(700/1280*100%)
  }

.p-top__profileBlock:nth-child(1) .block__title .icon {
        bottom: calc(70em/16);
        left: calc(100em/16)
      }

.p-top__profileBlock:nth-child(1) .block__title .icon svg {
          height: calc(40em/16);
          width: calc(85em/16);
        }

.p-top__profileBlock:nth-child(1) .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-top__profileBlock:nth-child(1) .block__txt {
        font-size: calc(18em/16)
    }
      }

.p-top__profileBlock:nth-child(1) .block__link {
      margin-top: calc(40em/16)
    }

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

.p-top__profileBlock:nth-child(1) .block__link {
        font-size: calc(18em/16);
        margin-top: calc(30em/18)
    }
      }

.p-top__profileBlock:nth-child(2) {
    flex-basis: calc(300/1280*100%)
  }

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

.p-top__profileBlock:nth-child(2) {
      position: absolute;
      top: calc(80em/16);
      right: 7%;
      width: calc(150em/16)
  }
    }

.p-top__profileBlock:nth-child(2) .block__img {
      position: relative;
      padding-top: calc(776/790*100%)
    }

.p-top__profileBlock:nth-child(2) .block__img .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
      }

/* play */

.p-play__mv {
  position: relative;
  height: calc(300em/16);
  background-color: #fff
  /* @media screen and (max-width: 1620px) {
    height: calc(870/1620*100vw);
  } */
}

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

.p-play__mv {
    margin-top:0;
    height: calc(300em/16*.7)
}
  }

.p-play__mvBody {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 11
}

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

.p-play__mvBody {
}
  }

.p-play__mvBodyTitle {
  position: relative;
  font-size: calc(40em/16);
  text-indent: .2em;
  letter-spacing: .2em;
  text-align: center
}

.p-play__mvBodyTitle:after {
    content: "";
    background: #1bc659;
    position: absolute;
    bottom: calc(-10em/40);
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/40);
    width: calc(80em/40);
  }

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

.p-play__mvBodyTitle {
}
  }

.p-play__mvImg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  width: 100%
}

.p-play__mvImg img {
    position: absolute;
    z-index: 10
  }

.p-play__mvImg img:nth-child(1) {
      left: calc(40em/16);
      bottom: 0;
      height: auto;
      width: calc(330em/16)
    }

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

.p-play__mvImg img:nth-child(1) {
        left: 0;
        width: calc(330em/16*.45)
    }
      }

.p-play__mvImg img:nth-child(2) {
      right: 0;
      bottom: 0;
      height: auto;
      width: calc(400em/16)
    }

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

.p-play__mvImg img:nth-child(2) {
        right: calc(-50em/16);
        width: calc(400em/16*.45)
    }
      }

.p-play__mvBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: calc(100em/20) 0  calc(100em/20) 0;
  overflow: hidden;
  z-index: 0
}

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

.p-play__mvBg {
    border-radius: calc(60em/20) 0  calc(60em/20) 0
}
  }

.p-play__mvBg:after {
    content: "";
    background: #fff;
    border: 10px solid #1bc659;
    border-radius: calc(100em/20) 0  calc(100em/20) 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .7;
    height: 100%;
    width: 100%;
    z-index: 10
  }

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

.p-play__mvBg:after {
      border-radius: calc(60em/20) 0  calc(60em/20) 0
  }
    }

.p-play__mvBg .p-play__mvBgItem {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
  }

.p-play__mvBg .p-play__mvBgItem .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-play__intro {
  position: relative;
  overflow: hidden
}

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

.p-play__intro {
}
  }

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

.p-play__intro {
}
  }

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

.p-play__intro {
}
  }

.p-play__intro .u-section {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center
  }

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

.p-play__intro .u-section {
      display: block
  }
    }

.p-play__introBody {
  position: relative;
  flex-basis: calc(600/1000*100%);
  display: flex;
  flex-direction: column
}

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

.p-play__introBody {
    padding-bottom: 0
}
  }

.p-play__introBody .block__title {
    position: relative;
    display: flex;
    flex-direction: column
  }

.p-play__introBody .block__title .txt:nth-child(1){
        font-size: calc(28em/16);
      }

.p-play__introBody .block__title .txt:nth-child(2){
        font-size: calc(20em/16);
      }

.p-play__introBody .block__title .icon {
      position: absolute;
      bottom: 0;
      right: 0
    }

.p-play__introBody .block__title .icon svg {
        fill: #1bc659;
        height: calc(132em/16*.9);
        width: calc(121em/16*.9);
      }

.p-play__introBody .block__txt {
    margin-top: calc(20em/16)
  }

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

.p-play__introBody .block__txt {
      padding-top: 90%
  }
    }

.p-play__introBody .img__body {
    position: absolute;
    right: calc(-80em/16);
    bottom: calc(-170em/16);
    z-index: 10
  }

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

.p-play__introBody .img__body {
      right: calc(-120em/16);
      bottom: calc(150em/16)
  }
    }

.p-play__introBody .img__body img {
      height: calc(159em/16);
      width: calc(267em/16);
    }

.p-play__introBg {
  position: relative;
  padding-top: calc(60/1000*100%);
  flex-basis: calc(350/1000*100%)
}

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

.p-play__introBg {
    position: absolute;
    top: calc(225em/16);
    left: 0;
    right: 0;
    margin: auto;
    padding-top: 0;
    width: 80%
}
  }

.p-play__introBg .bg__body {
    position: relative;
    padding-top: calc(420/420*100%);
    width: 100%
  }

.p-play__introBg .bg__body .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-play__introBg .img__body {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10
  }

.p-play__introBg .img__body img {
      height: calc(120em/16);
      width: calc(160em/16);
    }

.p-play__scene {
  background: #e1e1e1;
  position: relative;
  overflow: hidden
}

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

.p-play__scene {
}
  }

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

.p-play__scene {
}
  }

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

.p-play__scene {
}
  }

.p-play__scene .u-section {
    position: relative
  }

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

.p-play__scene .u-section {
  }
    }

.p-play__sceneTitle {
  display: flex;
  justify-content: center;
  align-items: flex-end
}

.p-play__sceneTitle .txt {
    order: 2;
    position: relative;
    font-size: calc(36em/16);
    text-indent: .2em;
    letter-spacing: .2em;
    text-align: center;
    margin: 0 calc(10em/36)
  }

.p-play__sceneTitle .txt:after {
      content: "";
      background: #1bc659;
      position: absolute;
      bottom: calc(-20em/36);
      left: 0;
      right: 0;
      margin: auto;
      height: calc(6em/36);
      width: calc(80em/36);
    }

.p-play__sceneTitle .icon {
    height: auto;
    width: calc(90em/16)
  }

.p-play__sceneTitle .icon svg {
      fill: #1bc659;
    }

.p-play__sceneTitle .icon:nth-child(1) {
      order: 1;
    }

.p-play__sceneTitle .icon:nth-child(2) {
      order: 3;
    }

.p-play__sceneListBody {
  position: relative;
  display: flex;
  justify-content: center;
  width: 200vw;
  overflow: hidden
}

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

.p-play__sceneListBody {
    margin: 0 auto;
    width: calc(680/750*100%)
}
  }

.p-play__sceneList {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-top: calc(80em/16)
}

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

.p-play__sceneList {
    flex-wrap: wrap
}
  }

.p-play__sceneList .list__item {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    padding-top: calc(40em/16);
    margin-right: calc(40em/16)
  }

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

.p-play__sceneList .list__item {
      flex-basis: calc(320/680*100%);
      margin-right: 0
  }
      .p-play__sceneList .list__item:nth-child(n+3) {
        margin-top: calc(50/650*100%);
      }
    }

.p-play__sceneList .txt__body {
    margin-top: calc(18em/16);
  }

.p-play__sceneList .img__body {
  }

.p-play__sceneList .icon__body {
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: calc(120/440*100%);
    width: calc(120/440*100%)
  }

.p-play__sceneList .icon__body .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-play__sceneList .icon__body .img {
      position: absolute;
      right: calc(70/440*100%);
      bottom: calc(80/440*100%);
      height: calc(34/120*100%);
      width: calc(42/120*100%);
    }

.p-play__type {
  position: relative;
  overflow: hidden
}

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

.p-play__type {
}
  }

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

.p-play__type {
}
  }

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

.p-play__type {
}
  }

.p-play__type .u-section {
    position: relative
  }

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

.p-play__type .u-section {
  }
    }

.p-play__typeTitle {
  position: relative;
  text-align: center;
  padding-bottom: calc(30em/16);
  overflow: hidden
}

.p-play__typeTitle:after {
    content: "";
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/16);
    width: calc(80em/16);
  }

.p-play__typeTitle .img {
    height: auto;
    width: calc(1100/1280*100%);
  }

.p-play__typeTxt {
  font-size: calc(18em/16);
  text-align: center;
  margin: calc(40em/18) auto 0;
  width: calc(1100/1280*100%);
}

.p-play__typeList {
  background: rgba(0,0,0,0.4);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: calc(40em/18)
}

.p-play__typeList .list__item {
    border-top: 1px dashed #fff;
    position: relative;
    flex-basis: 50%;
    display: flex;
    justify-content: space-between
  }

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

.p-play__typeList .list__item {
      flex-basis: 100%
  }
    }

.p-play__typeList .list__item:nth-child(n+3) {
      border-bottom: 1px dashed #fff;
    }

.p-play__typeList .list__item:nth-child(odd) {
      padding: calc(30em/16) calc(30em/16) calc(50em/16) calc(10em/16)
    }

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

.p-play__typeList .list__item:nth-child(odd) {
        padding: calc(30em/16) calc(30em/16)
    }
      }

.p-play__typeList .list__item:nth-child(even) {
      padding: calc(30em/16) calc(10em/16) calc(50em/16) calc(30em/16);
      border-left: 1px dashed #fff
    }

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

.p-play__typeList .list__item:nth-child(even) {
        padding: calc(30em/16) calc(30em/16);
        border-left: none
    }
      }

.p-play__typeList .list__item:nth-child(1) .list__itemBg {
      left: calc(10em/16);
      bottom: calc(50em/16);
      height: calc(269em/16*.8);
      width: calc(393em/16*.8)
    }

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

.p-play__typeList .list__item:nth-child(1) .list__itemBg {
        bottom: calc(30em/16)
    }
      }

.p-play__typeList .list__item:nth-child(2) .list__itemBg {
      left: calc(30em/16);
      bottom: calc(100em/16);
      height: calc(210em/16*.8);
      width: calc(418em/16*.8)
    }

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

.p-play__typeList .list__item:nth-child(2) .list__itemBg {
        bottom: calc(50em/16)
    }
      }

.p-play__typeList .list__item:nth-child(3) .list__itemBg {
      left: calc(30em/16);
      bottom: calc(50em/16);
      height: calc(227em/16*.8);
      width: calc(377em/16*.8)
    }

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

.p-play__typeList .list__item:nth-child(3) .list__itemBg {
        bottom: calc(30em/16)
    }
      }

.p-play__typeList .list__item:nth-child(4) .list__itemBg {
      left: calc(40em/16);
      bottom: calc(60em/16);
      height: calc(377em/16*.8);
      width: calc(470em/16*.8)
    }

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

.p-play__typeList .list__item:nth-child(4) .list__itemBg {
        bottom: calc(10em/16)
    }
      }

.p-play__typeList .list__item .list__itemBlock {
      z-index: 10
    }

.p-play__typeList .list__item .list__itemBlock:nth-child(1) {
        flex-basis: calc(320/600*100%);
      }

.p-play__typeList .list__item .list__itemBlock:nth-child(2) {
        flex-basis: calc(250/600*100%);
      }

.p-play__typeList .list__item .list__itemBg {
      position: absolute;
    }

.p-play__typeList .list__item .title {
      font-size: calc(24em/16);
      border-left: calc(10em/24) solid #1bc659;
      padding-left: calc(18em/24);
    }

.p-play__typeList .list__item .txt {
      margin-top: calc(20em/16);
    }

.p-play__typeList .list__item .img {
      height: auto;
      width: 100%;
    }

.p-play__typeList .list__item .link {
      margin-top: calc(80em/16)
    }

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

.p-play__typeList .list__item .link {
    }
      }

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

.p-play__typeList .list__item .link {
    }
      }

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

.p-play__typeList .list__item .link {
    }
      }

.p-play__typeList .list__item .link .u-target {
        position: relative;
        background: #1bc659;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 2em;
      }

.p-play__typeBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  z-index: -1
}

.p-play__typeBg .bg__body:nth-child(1) {
      flex-basis: calc(260/1920*100%);
      background-position: center right;
    }

.p-play__typeBg .bg__body:nth-child(2) {
      flex-basis: calc(1660/1920*100%);
      background-position: center right;
    }

.p-play__typeBg .bg__body:nth-child(3) {
      flex-basis: 100%;
    }

.p-play__link {
  background: #e1e1e1;
  position: relative
}

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

.p-play__link {
}
  }

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

.p-play__link {
}
  }

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

.p-play__link {
}
  }

.p-play__link .u-section {
    position: relative
  }

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

.p-play__link .u-section {
  }
    }

.p-play__linkTitle {
  text-align: center
}

.p-play__linkTitle .u-target {
    font-size: calc(24em/16);
    background: #36cdcc;
    color: #fff;
    padding: calc(12em/24) calc(32em/24);
  }

.p-play__mdf {
  background: #1f384a;
  position: relative
}

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

.p-play__mdf {
    display: flex;
    flex-direction: column-reverse
}
  }

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

.p-play__mdf {
}
  }

.p-play__mdf .u-section {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: center
  }

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

.p-play__mdf .u-section {
      display: block
  }
    }

.p-play__mdfBody {
  color: #fff;
  position: relative;
  flex-basis: calc(600/1280*100%);
  display: flex;
  flex-direction: column
}

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

.p-play__mdfBody {
    padding-top: calc(250em/16)
}
  }

.p-play__mdfBody .title {
    order: 2;
    font-size: calc(28em/16);
    margin-top: calc(20em/28);
    letter-spacing: .1em;
    line-height: 1.2;
  }

.p-play__mdfBody .list {
    order: 1;
    display: flex;
    align-items: center
  }

.p-play__mdfBody .list .list__title {
      font-size: calc(28em/16);
      border: calc(8em/28) solid #fff;
      padding: 0 .5em;
      letter-spacing: .1em;
    }

.p-play__mdfBody .list .list__txt {
      margin-left: calc(20em/16);
    }

.p-play__mdfBody .txt {
    order: 3;
    margin-top: calc(20em/16);
  }

.p-play__mdfBg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 50%
}

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

.p-play__mdfBg {
    top: 0;
    height: calc(200em/16);
    width: 100%
}
  }

.p-play__mdfBg .bg__body {
    height: 100%
  }

.p-play__mdfBg .bg__body .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

/* hobby */

.p-hobby__mv {
  position: relative;
  height: calc(300em/16);
  background-color: #fff
  /* @media screen and (max-width: 1620px) {
    height: calc(870/1620*100vw);
  } */
}

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

.p-hobby__mv {
    margin-top:0;
    height: calc(300em/16*.7)
}
  }

.p-hobby__mvBody {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 11
}

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

.p-hobby__mvBody {
}
  }

.p-hobby__mvBodyTitle {
  position: relative;
  font-size: calc(40em/16);
  text-indent: .2em;
  letter-spacing: .2em;
  text-align: center
}

.p-hobby__mvBodyTitle:after {
    content: "";
    background: #1bc659;
    position: absolute;
    bottom: calc(-10em/40);
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/40);
    width: calc(80em/40);
  }

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

.p-hobby__mvBodyTitle {
}
  }

.p-hobby__mvImg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  width: 100%
}

.p-hobby__mvImg img {
    position: absolute;
    z-index: 10;
    right: calc(40em/16);
    bottom: 0;
    height: auto;
    width: calc(420em/16)
  }

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

.p-hobby__mvImg img {
      right: 0;
      width: calc(300em/16*.45)
  }
    }

.p-hobby__mvBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: calc(100em/20) 0  calc(100em/20) 0;
  overflow: hidden;
  z-index: 0
}

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

.p-hobby__mvBg {
    border-radius: calc(60em/20) 0  calc(60em/20) 0
}
  }

.p-hobby__mvBg:after {
    content: "";
    background: #fff;
    border: 10px solid #1bc659;
    border-radius: calc(100em/20) 0  calc(100em/20) 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .7;
    height: 100%;
    width: 100%;
    z-index: 10
  }

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

.p-hobby__mvBg:after {
      border-radius: calc(60em/20) 0  calc(60em/20) 0
  }
    }

.p-hobby__mvBg .p-hobby__mvBgItem {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
  }

.p-hobby__mvBg .p-hobby__mvBgItem .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-hobby__intro {
  position: relative
}

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

.p-hobby__intro {
}
  }

.p-hobby__intro .u-section {
    position: relative
  }

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

.p-hobby__intro .u-section {
  }
    }

.p-hobby__introTitle {
  display: flex;
  align-items: flex-end
}

.p-hobby__introTitle .jp {
    order: 2;
    font-size: calc(24em/16);
    line-height: 1em;
    margin-left: calc(10em/20);
  }

.p-hobby__introTitle .en {
    order: 3;
    font-size: calc(12em/16);
    line-height: 1em;
    margin-left: calc(12em/12);
  }

.p-hobby__introTitle .icon {
    order: 1;
    height: calc(51em/16*.8);
    width: calc(84em/16*.8)
  }

.p-hobby__introTitle .icon svg {
      fill: #1bc659;
      height: 100%;
      width: 100%;
    }

.p-hobby__introTxt {
  font-size: calc(18em/16);
  margin-top: calc(30em/18);
}

.p-hobby__hexa {
  position: relative
}

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

.p-hobby__hexa {
}
  }

.p-hobby__hexa .u-section {
    position: relative
  }

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

.p-hobby__hexa .u-section {
  }
    }

.p-hobby__hexaBlock {
  margin: 0 auto
}

.p-hobby__hexaBlock:first-child {
    border-top: 1px dashed #000;
    display: flex;
    justify-content: space-between;
    align-items: flex-start
  }

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

.p-hobby__hexaBlock:first-child {
      display: block
  }
    }

.p-hobby__hexaTitle {
  flex-basis: calc(600/1280*100%);
  display: flex;
  justify-content: space-between;
  align-items: center
}

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

.p-hobby__hexaTitle {
    margin: 0 auto;
    width: calc(580/680*100%)
}
  }

.p-hobby__hexaTitle .img {
    width: calc(500/600*100%);
  }

.p-hobby__hexaTitle .icon {
    width: calc(80/600*100%);
  }

.p-hobby__hexaTxt {
  flex-basis: calc(600/1280*100%)
}

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

.p-hobby__hexaTxt {
    margin-top: calc(30em/16);
    text-align: center
}
  }

.p-hobby__hexaTxt .u-jp:nth-child(1) {
      background: #000;
      font-size: calc(18em/16);
      padding: .2em 1em;
    }

.p-hobby__hexaTxt .u-jp:nth-child(2) {
      display: block;
      margin-top: 1em;
    }

.p-hobby__hexaSlider {
  position: relative;
  margin-top: calc(46em/16)
}

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

.p-hobby__hexaSlider {
    margin-top: calc(30em/16)
}
  }

.p-hobby__hexaSlider .slick-list {
  }

.p-hobby__hexaSlider .slick-slide {
    position: relative;
    overflow: hidden
  }

.p-hobby__hexaSlider .slick-slide .img-block {
      position: relative
    }

.p-hobby__hexaSlider .slick-slide .img-block:after {
        content: "";
        background: rgba(0,0,0,0);
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        transition: all .4s;
      }

.p-hobby__hexaSlider .slick-slide:not(.slick-active) .img-block:after {
          background: rgba(0,0,0,0.6);
        }

.p-hobby__hexaSlider .slick-arrow {
    outline: 0;
    border: 2px solid #fff;
    background-color: transparent;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    display: block;
    position: absolute;
    width: calc(63em/16);
    height: calc(63em/16);
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 999;
    border-radius: 50%;
    text-indent: -9999px;
    transition: transform .2s
  }

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

.p-hobby__hexaSlider .slick-arrow {
      width: calc(40em/16);
      height: calc(40em/16)
  }
    }

.p-hobby__hexaSlider .slick-arrow:before {
      content: "";
      display: block;
      width: calc(11em/16);
      height: calc(16em/16);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: 100%;
    }

.p-hobby__hexaSlider .slick-arrow.slick-next {
      right: calc(86em/16)
    }

.p-hobby__hexaSlider .slick-arrow.slick-next:before {
        background-image: url("../../assets/images/common/slick-next.svg");
      }

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

.p-hobby__hexaSlider .slick-arrow.slick-next {
        right: calc(10em/16)
    }
      }

.p-hobby__hexaSlider .slick-arrow.slick-prev {
      left: calc(86em/16)
    }

.p-hobby__hexaSlider .slick-arrow.slick-prev:before {
        background-image: url("../../assets/images/common/slick-prev.svg");
      }

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

.p-hobby__hexaSlider .slick-arrow.slick-prev {
        left: calc(10em/16)
    }
      }

.p-hobby__hexaSlider .slick-arrow:hover {
      transform: scale(.9);
    }

.p-hobby__hexaSlider .slick-arrow.slick-disabled {
      opacity: .2;
      transform: none;
    }

.p-hobby__hexaSliderItem {
  width: 100%
}

.p-hobby__hexaSliderItem .img {
    padding-top: calc(680/1280*100%);
    background-position: center center;
  }

.p-hobby__hexaList {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: calc(60em/16)
}

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

.p-hobby__hexaList {
    margin-top: calc(30em/16)
}
  }

.p-hobby__hexaList .list__item {
    flex-basis: calc(280/1280*100%);
    position: relative;
    display: flex;
    flex-direction: column;
    padding-top: calc(60em/16)
  }

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

.p-hobby__hexaList .list__item {
      flex-basis: calc(320/680*100%)
  }
      .p-hobby__hexaList .list__item:nth-child(n+3) {
        margin-top: calc(50/680*100%);
      }
    }

.p-hobby__hexaList .title__body {
    order: 2;
    margin-top: calc(18em/16);
    text-align: center;
  }

.p-hobby__hexaList .txt__body {
    order: 3;
    text-align: center;
  }

.p-hobby__hexaList .img__body {
    order: 1;
    background: #e1e1e1;
    border-radius: calc(30em/20) 0  calc(30em/20) 0;
    padding: calc(40/280*100%) calc(15/280*100%);
  }

.p-hobby__hexaList .icon__body {
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: calc(120/280*100%);
    width: calc(120/280*100%)
  }

.p-hobby__hexaList .icon__body .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-hobby__hexaList .icon__body .img {
      position: absolute;
      right: calc(40/280*100%);
      bottom: calc(50/280*100%);
      height: calc(34/120*100%);
      width: calc(42/120*100%);
    }

.p-hobby__hexaCaution {
  border-top: 1px dashed #000;
  border-bottom: 1px dashed #000;
  margin-top: calc(40em/16);
  padding: calc(20em/16) calc(40em/16);
}

.p-hobby__order {
  position: relative
}

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

.p-hobby__order {
    display: flex;
    flex-direction: column-reverse
}
  }

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

.p-hobby__order {
}
  }

.p-hobby__order .u-section {
    position: relative
  }

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

.p-hobby__order .u-section {
  }
    }

.p-hobby__orderTitle {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: calc(20em/16)
}

.p-hobby__orderTitle:after {
    content: "";
    background: #1bc659;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/16);
    width: calc(80em/16);
  }

.p-hobby__orderTitle .txt:nth-child(1) {
      font-size: calc(28em/16)
    }

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

.p-hobby__orderTitle .txt:nth-child(1) {
        font-size: calc(32em/16)
    }
      }

.p-hobby__orderTitle .txt:nth-child(2) {
      font-size: calc(12em/16)
    }

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

.p-hobby__orderTitle .txt:nth-child(2) {
        font-size: calc(18em/16)
    }
      }

.p-hobby__orderSubtitle {
  font-size: calc(18em/16);
  margin-top: calc(40em/18)
}

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

.p-hobby__orderSubtitle {
    font-size: calc(24em/16)
}
  }

.p-hobby__orderTxt {
  margin-top: calc(20em/16);
}

.p-hobby__orderList .list__item {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: calc(40em/16)
  }

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

.p-hobby__orderList .list__item {
      display: block
  }
    }

.p-hobby__orderList .list__item:nth-child(1) {
      flex-direction: row-reverse
    }

.p-hobby__orderList .list__item:nth-child(1) .icon {
        transform: rotate(10deg);
        height: auto;
        width: calc(75em/16);
      }

.p-hobby__orderList .list__item:nth-child(2) .icon {
        height: auto;
        width: calc(50em/16);
      }

.p-hobby__orderList .list__itemBlock {
    flex-basis: calc(640/1280*100%)
  }

.p-hobby__orderList .list__itemBlock .block__title {
      display: inline-flex;
      flex-direction: row-reverse;
      align-items: center
    }

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

.p-hobby__orderList .list__itemBlock .block__title {
        line-height: calc(80em/16)
    }
      }

.p-hobby__orderList .list__itemBlock .block__title .txt {
        font-size: calc(18em/16);
        margin-left: calc(20em/18)
      }

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

.p-hobby__orderList .list__itemBlock .block__title .txt {
          font-size: calc(24em/16)
      }
        }

.p-hobby__orderList .list__itemBlock .block__title .icon svg {
          fill: #1bc659;
        }

.p-hobby__orderList .list__itemBlock .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-hobby__orderList .list__itemBlock .block__txt {
        padding-top: calc(260em/16)
    }
      }

.p-hobby__orderList .list__itemBg {
    flex-basis: calc(600/1280*100%);
    border: calc(10em/16) solid #1bc659;
    border-radius: calc(60em/20) 0  calc(60em/20) 0;
    overflow: hidden
  }

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

.p-hobby__orderList .list__itemBg {
      position: absolute;
      top: calc(95em/16);
      left: 0;
      right: 0;
      height: calc(260em/16)
  }
    }

.p-hobby__link .u-section {
    border-radius: calc(60em/20) 0  calc(60em/20) 0;
    border: calc(8em/16) solid #1bc659;
    padding: calc(48em/16) calc(32em/16);
  }

.p-hobby__linkTitle {
  font-size: calc(24em/16);
  background: #1bc659;
  text-align: center
}

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

.p-hobby__linkTitle {
    line-height: 1.4;
    padding: .6em 0
}
  }

.p-hobby__linkBody {
  display: flex;
  justify-content: space-between
}

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

.p-hobby__linkBody {
    display: block
}
  }

.p-hobby__linkBlock {
  background: #e1e1e1;
  flex-basis: calc(580/1180*100%);
  margin-top: calc(15/580*100%);
  padding: calc(30em/16) calc(20em/16)
}

.p-hobby__linkBlock .block__title {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center
  }

.p-hobby__linkBlock .block__title .txt {
      font-size: calc(20em/16);
    }

.p-hobby__linkBlock .block__title .img {
      margin-right: calc(15em/16);
      height: calc(40em/16);
      width: calc(40em/16);
    }

.p-hobby__linkBlock .block__txt {
    font-size: calc(20em/16);
    text-align: center;
    margin-top: calc(25em/20);
  }

.p-hobby__linkBlock .block__link {
    font-size: calc(20em/16);
    text-align: center;
    margin: calc(30em/20) auto 0;
    line-height: calc(60em/20);
    width: 14em
  }

.p-hobby__linkBlock .block__link .u-target {
      background: #36cdcc;
      display: block;
    }

/* company */

.p-company__mv {
  position: relative;
  height: calc(300em/16);
  background-color: #fff
  /* @media screen and (max-width: 1620px) {
    height: calc(870/1620*100vw);
  } */
}

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

.p-company__mv {
    margin-top:0;
    height: calc(300em/16*.7)
}
  }

.p-company__mvBody {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 11
}

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

.p-company__mvBody {
}
  }

.p-company__mvBodyTitle {
  position: relative;
  font-size: calc(40em/16);
  text-indent: .2em;
  letter-spacing: .2em;
  text-align: center
}

.p-company__mvBodyTitle:after {
    content: "";
    background: #1bc659;
    position: absolute;
    bottom: calc(-10em/40);
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/40);
    width: calc(80em/40);
  }

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

.p-company__mvBodyTitle {
}
  }

.p-company__mvImg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  width: 100%
}

.p-company__mvImg img {
    position: absolute;
    z-index: 10
  }

.p-company__mvImg img:nth-child(1) {
      left: calc(40em/16);
      bottom: 0;
      height: auto;
      width: calc(330em/16)
    }

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

.p-company__mvImg img:nth-child(1) {
        left: 0;
        width: calc(330em/16*.45)
    }
      }

.p-company__mvImg img:nth-child(2) {
      right: 0;
      bottom: 0;
      height: auto;
      width: calc(400em/16)
    }

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

.p-company__mvImg img:nth-child(2) {
        right: calc(-50em/16);
        width: calc(400em/16*.45)
    }
      }

.p-company__mvBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: calc(100em/20) 0  calc(100em/20) 0;
  overflow: hidden;
  z-index: 0
}

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

.p-company__mvBg {
    border-radius: calc(60em/20) 0  calc(60em/20) 0
}
  }

.p-company__mvBg:after {
    content: "";
    background: #fff;
    border: 10px solid #1bc659;
    border-radius: calc(100em/20) 0  calc(100em/20) 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .7;
    height: 100%;
    width: 100%;
    z-index: 10
  }

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

.p-company__mvBg:after {
      border-radius: calc(60em/20) 0  calc(60em/20) 0
  }
    }

.p-company__mvBg .p-company__mvBgItem {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
  }

.p-company__mvBg .p-company__mvBgItem .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-company__history {
  position: relative
}

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

.p-company__history {
    display: flex;
    flex-direction: column-reverse
}
  }

.p-company__history .u-section {
    position: relative
  }

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

.p-company__history .u-section {
  }
    }

.p-company__historyTitle {
  display: flex;
  align-items: flex-end
}

.p-company__historyTitle .jp {
    order: 2;
    font-size: calc(24em/16);
    line-height: 1em;
    margin-left: calc(10em/20);
  }

.p-company__historyTitle .en {
    order: 3;
    font-size: calc(12em/16);
    line-height: 1em;
    margin-left: calc(12em/12);
  }

.p-company__historyTitle .icon {
    order: 1;
    height: calc(76em/16*.8);
    width: calc(83em/16*.8)
  }

.p-company__historyTitle .icon svg {
      fill: #1bc659;
      height: 100%;
      width: 100%;
    }

.p-company__historyTxt {
  font-size: calc(18em/16);
  margin-top: calc(30em/18);
}

.p-company__historyList {
  position: relative;
  border-top: 1px dashed #898989;
  margin-top: calc(60em/16)
}

.p-company__historyList .list__item {
    position: relative;
    padding-top: calc(60em/16);
    padding-left: calc(315em/16)
  }

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

.p-company__historyList .list__item {
      padding-left: calc(100em/16)
  }
    }

.p-company__historyList .list__item:before {
      content: "";
      background: #1bc659;
      position: absolute;
      top: calc(60em/16);
      bottom: 0;
      left: calc(250em/16);
      margin: auto;
      border-radius: 50%;
      height: calc(20em/16);
      width: calc(20em/16)
    }

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

.p-company__historyList .list__item:before {
        top: 0;
        left: calc(40em/16)
    }
      }

.p-company__historyList .list__item:after {
      content: "";
      border: 1px solid #1bc659;
      position: absolute;
      top: calc(60em/16);
      bottom: 0;
      left: calc(245em/16);
      margin: auto;
      border-radius: 50%;
      height: calc(30em/16);
      width: calc(30em/16)
    }

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

.p-company__historyList .list__item:after {
        top: 0;
        left: calc(35em/16)
    }
      }

.p-company__historyList .list__item:not(:last-child) h3:before {
        content: "";
        background: #1bc659;
        position: absolute;
        bottom: calc(-100em/16);
        left: calc(260em/16);
        margin: auto;
        height: 100%;
        width: 1px
      }

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

.p-company__historyList .list__item:not(:last-child) h3:before {
          left: calc(50em/16);
          bottom: calc(-90em/16)
      }
        }

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

.p-company__historyList .list__item .list__itemTitle {
        display: flex;
        flex-direction: column-reverse
    }
      }

.p-company__historyList .list__item .list__itemTitle .txt {
        font-size: calc(18em/16);
      }

.p-company__historyList .list__item .list__itemTitle .num {
        font-size: calc(70em/16);
        color: #a7e3b8;
        line-height: 1em;
        position: absolute;
        top: calc(60em/70);
        left: 0
      }

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

.p-company__historyList .list__item .list__itemTitle .num {
          font-size: calc(30em/16);
          position: relative;
          top: 0
      }
        }

.p-company__historyList .list__item .list__itemTxt {
      margin-top: calc(16em/16);
    }

.p-company__profile {
  background: #1f384a;
  position: relative
}

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

.p-company__profile {
    display: flex;
    flex-direction: column-reverse
}
  }

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

.p-company__profile {
}
  }

.p-company__profile .u-section {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: center
  }

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

.p-company__profile .u-section {
      display: block
  }
    }

.p-company__profileBlock {
  color: #fff;
  position: relative;
  flex-basis: calc(600/1280*100%);
  display: flex;
  flex-direction: column
}

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

.p-company__profileBlock {
    padding-top: calc(250em/16)
}
  }

.p-company__profileBlock .block__title .icon {
      bottom: calc(70em/16);
      left: calc(100em/16)
    }

.p-company__profileBlock .block__title .icon svg {
        height: calc(40em/16);
        width: calc(85em/16);
      }

.p-company__profileBlock .block__txt {
      margin-top: calc(30em/16)
    }

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

.p-company__profileBlock .block__txt {
        font-size: calc(18em/16)
    }
      }

.p-company__profileBg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 50%
}

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

.p-company__profileBg {
    top: 0;
    height: calc(200em/16);
    width: 100%
}
  }

.p-company__profileBg .bg__body {
    height: 100%
  }

.p-company__profileBg .bg__body .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
    }

.p-company__outline {
  background: #e1e1e1;
  position: relative
}

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

.p-company__outline {
    display: flex;
    flex-direction: column-reverse
}
  }

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

.p-company__outline {
}
  }

.p-company__outline .u-section {
    background: #fff;
    position: relative;
    padding-top: calc(80em/16)
  }

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

.p-company__outline .u-section {
  }
    }

.p-company__outlineTitle {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: calc(20em/16)
}

.p-company__outlineTitle:after {
    content: "";
    background: #1bc659;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: calc(6em/16);
    width: calc(80em/16);
  }

.p-company__outlineTitle .txt:nth-child(1) {
      font-size: calc(24em/16);
    }

.p-company__outlineTitle .txt:nth-child(2) {
      font-size: calc(12em/16);
    }

.p-company__outlineList {
  border-top: 1px dashed #898989;
  margin: calc(60em/16) auto 0;
  width: calc(900/1270*100%)
}

.p-company__outlineList .list__body {
    border-bottom: 1px dashed #898989;
    display: flex;
    align-items: center;
    height: calc(75em/16)
  }

.p-company__outlineList .list__body .title {
      padding-left: calc(20em/16);
      width: calc(200em/16)
    }

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

.p-company__outlineList .list__body .title {
        width: calc(120em/16)
    }
      }

.p-company__outlineList .list__body .txt {
      flex: 1;
    }

.p-company__outlineMap {
  margin-top: calc(100em/16);
  margin-bottom: -10px;
  height: calc(400em/16);
  width: 100%;
}

.p-company__link .u-section {
    border-radius: calc(60em/20) 0  calc(60em/20) 0;
    border: calc(8em/16) solid #1bc659;
    padding: calc(48em/16) calc(32em/16);
  }

.p-company__linkTitle {
  font-size: calc(24em/16);
  background: #1bc659;
  text-align: center
}

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

.p-company__linkTitle {
    line-height: 1.4;
    padding: .6em 0
}
  }

.p-company__linkBody {
  display: flex;
  justify-content: space-between
}

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

.p-company__linkBody {
    display: block
}
  }

.p-company__linkBlock {
  background: #e1e1e1;
  flex-basis: calc(580/1180*100%);
  margin-top: calc(15/580*100%);
  padding: calc(30em/16) calc(20em/16)
}

.p-company__linkBlock .block__title {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center
  }

.p-company__linkBlock .block__title .txt {
      font-size: calc(20em/16);
    }

.p-company__linkBlock .block__title .img {
      margin-right: calc(15em/16);
      height: calc(40em/16);
      width: calc(40em/16);
    }

.p-company__linkBlock .block__txt {
    font-size: calc(20em/16);
    text-align: center;
    margin-top: calc(25em/20);
  }

.p-company__linkBlock .block__link {
    font-size: calc(20em/16);
    text-align: center;
    margin: calc(30em/20) auto 0;
    line-height: calc(60em/20);
    width: 14em
  }

.p-company__linkBlock .block__link .u-target {
      background: #36cdcc;
      display: block;
    }
/*# sourceMappingURL=style.css.map */
