@charset "UTF-8";
/* 基本設定 */
/*============================================
	― 変数設定
=============================================*/
/*============================================
	― PC表示
=============================================*/
@import url("https://fonts.googleapis.com/css2?family=Michroma");
.pc-disblock {
  display: block;
}

.pc-disline {
  display: inline;
}

.pc-dislineblock {
  display: inline-block;
}

.pc-none {
  display: none;
}

.sp-disblock {
  display: none;
}

.sp-disline {
  display: none;
}

.sp-dislineblock {
  display: none;
}

/*============================================
	― スマホ表示切り替え
=============================================*/
@media screen and (max-width: 769px) {
  .pc-disblock {
    display: none;
  }
  .pc-disline {
    display: none;
  }
  .pc-dislineblock {
    display: none;
  }
  .sp-disblock {
    display: block;
  }
  .sp-disline {
    display: inline;
  }
  .sp-dislineblock {
    display: inline-block;
  }
  .sp-none {
    display: none;
  }
}
body {
  font-family: source-han-sans-japanese, sans-serif;
}

/* modules */
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 LOADING-TOP 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.loading {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 300000000;
  width: 100%;
  height: 100vh;
}
.loading .wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #202124;
}
.loading .wrapper .text {
  position: relative;
  z-index: 200002;
  color: #fff;
}
.loading .wrapper .text .main {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 6px;
  text-transform: uppercase;
  font-size: 24px;
}
.loading .wrapper .text .main .line {
  color: transparent;
  -webkit-text-stroke: rgb(220, 220, 220) 1px;
}
.loading .wrapper .text .tagline {
  text-align: center;
  letter-spacing: 4px;
  font-size: 16px;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  .loading .wrapper .text .main {
    letter-spacing: 6px;
    font-size: 24px;
  }
  .loading .wrapper .text .main .line {
    -webkit-text-stroke: rgb(220, 220, 220) 1px;
  }
  .loading .wrapper .text .tagline {
    letter-spacing: 4px;
    font-size: 16px;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .loading .wrapper .text .main {
    letter-spacing: 6px;
    font-size: 24px;
  }
  .loading .wrapper .text .main .line {
    -webkit-text-stroke: rgb(220, 220, 220) 1px;
  }
  .loading .wrapper .text .tagline {
    letter-spacing: 4px;
    font-size: 16px;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .loading .wrapper .text .main {
    letter-spacing: 5px;
    font-size: 5vw;
  }
  .loading .wrapper .text .main .line {
    -webkit-text-stroke: rgb(220, 220, 220) 1px;
  }
  .loading .wrapper .text .tagline {
    letter-spacing: 4px;
    font-size: 4vw;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 HEADER 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
#header {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  width: 100%;
  padding: 20px 3% 0px 3%;
  z-index: 10;
}
#header .logo a {
  text-decoration: none;
  color: #fff;
  font-family: "Iceberg", cursive;
  font-weight: normal;
  letter-spacing: 2px;
  font-size: 45px;
}
#header nav ul {
  display: flex;
  align-items: center;
  list-style-type: none;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}
#header nav ul li {
  padding: 0 10px 0 10px;
}
#header nav ul li a {
  text-decoration: none;
  color: #fff;
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: 20px;
}
#header .hamburger-menu {
  display: none;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  #header {
    padding: 20px 2% 0px 2.5%;
  }
  #header .logo a {
    letter-spacing: 2px;
    font-size: 4.25vw;
  }
  #header nav ul li {
    padding: 0 8px 0 8px;
  }
  #header nav ul li a {
    letter-spacing: 2px;
    font-size: 1.85vw;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  #header {
    padding: 20px 2% 0px 2.5%;
  }
  #header .logo a {
    letter-spacing: 2px;
    font-size: 4.75vw;
  }
  #header nav {
    display: none;
  }
  #header nav ul li {
    padding: 0 8px 0 8px;
  }
  #header nav ul li a {
    letter-spacing: 2px;
    font-size: 2vw;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  #header {
    width: 100%;
    padding: 10px 3% 0px 3%;
    z-index: 10;
  }
  #header .logo a {
    letter-spacing: 2px;
    font-size: 11vw;
  }
  #header .global {
    display: none;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 HAMBURGER-MENU 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.hamburger-menu {
  display: none;
  width: 100%;
  overflow: hidden;
}
.hamburger-menu #hamburger-icon {
  display: inline-block;
  position: absolute;
  right: 0px;
  top: -5px;
  z-index: 2000000;
}
.hamburger-menu #hamburger-icon svg {
  width: 60px;
  height: 60px;
  text-align: center;
}
.hamburger-menu #hamburger-icon svg path,
.hamburger-menu #hamburger-icon svg line {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 3px;
}
.hamburger-menu #hamburger-icon svg #middle {
  opacity: 1;
  transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.hamburger-menu #hamburger-icon svg #top,
.hamburger-menu #hamburger-icon svg #bottom {
  stroke-dasharray: 31.71 100;
  stroke-dashoffset: 62.5;
  transition: stroke-dashoffset 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.hamburger-menu #hamburger-icon .guide {
  color: #fff;
  margin: -10px 0 0 0;
  line-height: 0.9;
  letter-spacing: 1px;
  font-size: 3;
}
.hamburger-menu #hamburger-icon.x svg #top,
.hamburger-menu #hamburger-icon.x svg #bottom {
  stroke-dashoffset: 131;
}
.hamburger-menu #hamburger-icon.x svg #middle {
  opacity: 0;
}
.hamburger-menu nav {
  visibility: hidden;
  display: none;
  width: 100%;
  background: orange;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100000;
  display: block;
  padding: 130px 0 40px 0;
}
.hamburger-menu nav h2 {
  text-align: center;
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  color: transparent;
  -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
  font-size: 10vw;
}
.hamburger-menu nav ul {
  margin: 0 0 0 0;
  padding: 20px 4% 10px 4%;
}
.hamburger-menu nav ul li {
  list-style: none;
  margin: 45px 0 0 0;
}
.hamburger-menu nav ul li a {
  text-decoration: none;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.hamburger-menu nav ul li a .left .icon {
  line-height: 0;
  width: 15vw;
  margin: 0 20px 0 0;
}
.hamburger-menu nav ul li a .left .icon img {
  width: 100%;
  height: auto;
}
.hamburger-menu nav ul li a .left .top {
  display: flex;
  align-items: center;
}
.hamburger-menu nav ul li a .left .top .main {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 3px;
  font-size: 6.25vw;
}
.hamburger-menu nav ul li a .left .top .sub {
  font-family: "Iceberg", cursive;
  line-height: 1.1;
  letter-spacing: 2px;
  font-size: 4vw;
}
.hamburger-menu nav ul li a .left .bottom {
  display: flex;
  align-items: center;
  margin: 10px 0 0 0;
}
.hamburger-menu nav ul li a .left .bottom .border {
  width: 20vw;
  height: 1px;
  border-top: solid 1px;
  margin: 0 10px 0 0;
}
.hamburger-menu nav ul li a .left .bottom p {
  line-height: 1.3;
  letter-spacing: 3px;
  font-size: 3.25vw;
}
.hamburger-menu nav ul li a .arrow {
  line-height: 0;
  width: 8vw;
}
.hamburger-menu nav ul li a .arrow img {
  width: 100%;
  height: auto;
}
.hamburger-menu nav .privacy {
  margin: 30px 0 0 0;
  text-align: center;
}
.hamburger-menu nav .privacy a {
  display: inline-flex;
  color: #fff;
  text-decoration: none;
  position: relative;
  padding: 0 0 5px 0;
}
.hamburger-menu nav .privacy a .catch {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: 5vw;
  margin: 0 7px 0 0;
}
.hamburger-menu nav .privacy a .arrow {
  line-height: auto;
  width: 7vw;
}
.hamburger-menu nav .privacy a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: solid 2px #fff;
}
.hamburger-menu nav .energy {
  position: relative;
  margin: 70px auto 0;
  width: 30vw;
  height: 30vw;
}
.hamburger-menu nav .energy span {
  position: absolute;
  width: calc(30vw + var(--i));
  height: calc(30vw + var(--i));
  background: var(--clr);
  border-radius: 50%;
  transform-origin: calc(10vw + var(--i));
  animation: animate 5s linear infinite;
  animation-duration: calc(var(--d));
  mix-blend-mode: plus-lighter;
  filter: blur(30px);
}
.hamburger-menu nav .energy span:nth-child(even) {
  animation-direction: reverse;
}
@keyframes animate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.hamburger-menu nav .last-copy {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  padding: 70px 0 0 0;
}
.hamburger-menu nav .last-copy .main {
  text-align: center;
  color: transparent;
  -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
  line-height: 1;
  font-size: 20vw;
}
.hamburger-menu nav .last-copy .sub {
  text-align: center;
  color: #fff;
  line-height: 1.2;
  font-size: 8vw;
}
.hamburger-menu nav .last-copy .semi {
  text-align: center;
  color: #fff;
  line-height: 1.2;
  font-size: 8vw;
}
.hamburger-menu nav .logo p {
  font-family: "Iceberg", cursive;
  font-weight: normal;
  text-align: center;
  color: #fff;
  letter-spacing: 2px;
  font-size: 12vw;
  margin: 40px 0 0 0;
}
.hamburger-menu nav .address {
  margin: 20px 0 0 0;
}
.hamburger-menu nav .address p {
  text-align: center;
  color: #fff;
  line-height: 2.2;
  letter-spacing: 2px;
  font-size: 3.5vw;
}
.hamburger-menu nav .address p .syncopate {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
/* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .hamburger-menu {
    width: 100%;
    overflow: hidden;
    display: block;
  }
  .hamburger-menu #hamburger-icon {
    display: inline-block;
    position: absolute;
    right: 0px;
    top: -5px;
    z-index: 2000000;
  }
  .hamburger-menu #hamburger-icon svg {
    width: 60px;
    height: 60px;
    text-align: center;
  }
  .hamburger-menu #hamburger-icon svg path,
  .hamburger-menu #hamburger-icon svg line {
    fill: none;
    stroke: #fff;
    stroke-linecap: round;
    stroke-miterlimit: 10;
    stroke-width: 3px;
  }
  .hamburger-menu #hamburger-icon svg #middle {
    opacity: 1;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .hamburger-menu #hamburger-icon svg #top,
  .hamburger-menu #hamburger-icon svg #bottom {
    stroke-dasharray: 31.71 100;
    stroke-dashoffset: 62.5;
    transition: stroke-dashoffset 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .hamburger-menu #hamburger-icon .guide {
    color: #fff;
    margin: -10px 0 0 0;
    line-height: 0.9;
    letter-spacing: 1px;
    font-size: 3vw;
  }
  .hamburger-menu #hamburger-icon.x svg #top,
  .hamburger-menu #hamburger-icon.x svg #bottom {
    stroke-dashoffset: 131;
  }
  .hamburger-menu #hamburger-icon.x svg #middle {
    opacity: 0;
  }
  .hamburger-menu nav {
    visibility: hidden;
    width: 100%;
    background: rgba(0, 0, 0, 0.9);
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 100000;
    padding: 130px 0 40px 0;
    overflow: hidden;
    overflow-y: scroll;
  }
  .hamburger-menu nav h2 {
    text-align: center;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    color: transparent;
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    font-size: 5vw;
  }
  .hamburger-menu nav ul {
    margin: 0 0 0 0;
    padding: 20px 6% 10px 6%;
  }
  .hamburger-menu nav ul li {
    list-style: none;
    margin: 45px 0 0 0;
  }
  .hamburger-menu nav ul li a {
    text-decoration: none;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .hamburger-menu nav ul li a .left .icon {
    line-height: 0;
    width: 6vw;
    margin: 0 20px 0 0;
  }
  .hamburger-menu nav ul li a .left .icon img {
    width: 100%;
    height: auto;
  }
  .hamburger-menu nav ul li a .left .top {
    display: flex;
    align-items: center;
  }
  .hamburger-menu nav ul li a .left .top .main {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 3.25vw;
  }
  .hamburger-menu nav ul li a .left .top .sub {
    font-family: "Iceberg", cursive;
    line-height: 1.1;
    letter-spacing: 2px;
    font-size: 2vw;
  }
  .hamburger-menu nav ul li a .left .bottom {
    display: flex;
    align-items: center;
    margin: 10px 0 0 0;
  }
  .hamburger-menu nav ul li a .left .bottom .border {
    width: 10vw;
    height: 1px;
    border-top: solid 1px;
    margin: 0 10px 0 0;
  }
  .hamburger-menu nav ul li a .left .bottom p {
    line-height: 1.3;
    letter-spacing: 3px;
    font-size: 2.5vw;
  }
  .hamburger-menu nav ul li a .arrow {
    line-height: 0;
    width: 4vw;
  }
  .hamburger-menu nav ul li a .arrow img {
    width: 100%;
    height: auto;
  }
  .hamburger-menu nav .privacy {
    margin: 50px 0 0 0;
    text-align: center;
  }
  .hamburger-menu nav .privacy a {
    display: inline-flex;
    color: #fff;
    text-decoration: none;
    position: relative;
    padding: 0 0 5px 0;
  }
  .hamburger-menu nav .privacy a .catch {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 3vw;
    margin: 0 7px 0 0;
  }
  .hamburger-menu nav .privacy a .arrow {
    line-height: auto;
    width: 3.5vw;
  }
  .hamburger-menu nav .privacy a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    border-top: solid 2px #fff;
  }
  .hamburger-menu nav .energy {
    position: relative;
    margin: 80px auto 0;
    width: 20vw;
    height: 20vw;
  }
  .hamburger-menu nav .energy span {
    position: absolute;
    width: calc(20vw + var(--i));
    height: calc(20vw + var(--i));
    background: var(--clr);
    border-radius: 50%;
    transform-origin: calc(6.6666666667vw + var(--i));
    animation: animate 5s linear infinite;
    animation-duration: calc(var(--d));
    mix-blend-mode: plus-lighter;
    filter: blur(30px);
  }
  .hamburger-menu nav .energy span:nth-child(even) {
    animation-direction: reverse;
  }
  @keyframes animate {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .hamburger-menu nav .last-copy {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    padding: 70px 0 0 0;
  }
  .hamburger-menu nav .last-copy .main {
    text-align: center;
    color: transparent;
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    line-height: 1;
    font-size: 10vw;
  }
  .hamburger-menu nav .last-copy .sub {
    text-align: center;
    color: #fff;
    line-height: 1.2;
    font-size: 4vw;
  }
  .hamburger-menu nav .last-copy .semi {
    text-align: center;
    color: #fff;
    line-height: 1.2;
    font-size: 4vw;
  }
  .hamburger-menu nav .logo p {
    font-family: "Iceberg", cursive;
    font-weight: normal;
    text-align: center;
    color: #fff;
    letter-spacing: 2px;
    font-size: 7vw;
    margin: 40px 0 0 0;
  }
  .hamburger-menu nav .address {
    margin: 20px 0 0 0;
  }
  .hamburger-menu nav .address p {
    text-align: center;
    color: #fff;
    line-height: 2.2;
    letter-spacing: 2px;
    font-size: 2.5vw;
  }
  .hamburger-menu nav .address p .syncopate {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .hamburger-menu {
    width: 100%;
    overflow: hidden;
    display: block;
  }
  .hamburger-menu #hamburger-icon {
    display: inline-block;
    position: absolute;
    right: 0px;
    top: -5px;
    z-index: 2000000;
  }
  .hamburger-menu #hamburger-icon svg {
    width: 60px;
    height: 60px;
    text-align: center;
  }
  .hamburger-menu #hamburger-icon svg path,
  .hamburger-menu #hamburger-icon svg line {
    fill: none;
    stroke: #fff;
    stroke-linecap: round;
    stroke-miterlimit: 10;
    stroke-width: 3px;
  }
  .hamburger-menu #hamburger-icon svg #middle {
    opacity: 1;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .hamburger-menu #hamburger-icon svg #top,
  .hamburger-menu #hamburger-icon svg #bottom {
    stroke-dasharray: 31.71 100;
    stroke-dashoffset: 62.5;
    transition: stroke-dashoffset 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .hamburger-menu #hamburger-icon .guide {
    color: #fff;
    margin: -5px 0 0 0;
    line-height: 0.9;
    letter-spacing: 1px;
    font-size: 4vw;
    position: relative;
  }
  .hamburger-menu #hamburger-icon .guide span {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translate(0%, -50%);
  }
  .hamburger-menu #hamburger-icon.x svg #top,
  .hamburger-menu #hamburger-icon.x svg #bottom {
    stroke-dashoffset: 131;
  }
  .hamburger-menu #hamburger-icon.x svg #middle {
    opacity: 0;
  }
  .hamburger-menu nav {
    visibility: hidden;
    width: 100%;
    background: rgba(0, 0, 0, 0.9);
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 100000;
    padding: 130px 0 40px 0;
    overflow: hidden;
    overflow-y: scroll;
  }
  .hamburger-menu nav h2 {
    text-align: center;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    color: transparent;
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    font-size: 12vw;
  }
  .hamburger-menu nav ul {
    margin: 0 0 0 0;
    padding: 20px 6% 10px 6%;
  }
  .hamburger-menu nav ul li {
    list-style: none;
    margin: 45px 0 0 0;
  }
  .hamburger-menu nav ul li a {
    text-decoration: none;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .hamburger-menu nav ul li a .left .icon {
    line-height: 0;
    width: 15vw;
    margin: 0 20px 0 0;
  }
  .hamburger-menu nav ul li a .left .icon img {
    width: 100%;
    height: auto;
  }
  .hamburger-menu nav ul li a .left .top {
    display: flex;
    align-items: center;
  }
  .hamburger-menu nav ul li a .left .top .main {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 6.25vw;
  }
  .hamburger-menu nav ul li a .left .top .sub {
    font-family: "Iceberg", cursive;
    line-height: 1.1;
    letter-spacing: 2px;
    font-size: 4vw;
  }
  .hamburger-menu nav ul li a .left .bottom {
    display: flex;
    align-items: center;
    margin: 10px 0 0 0;
  }
  .hamburger-menu nav ul li a .left .bottom .border {
    width: 20vw;
    height: 1px;
    border-top: solid 1px;
    margin: 0 10px 0 0;
  }
  .hamburger-menu nav ul li a .left .bottom p {
    line-height: 1.3;
    letter-spacing: 3px;
    font-size: 3.5vw;
  }
  .hamburger-menu nav ul li a .arrow {
    line-height: 0;
    width: 8vw;
  }
  .hamburger-menu nav ul li a .arrow img {
    width: 100%;
    height: auto;
  }
  .hamburger-menu nav .privacy {
    margin: 30px 0 0 0;
    text-align: center;
  }
  .hamburger-menu nav .privacy a {
    display: inline-flex;
    color: #fff;
    text-decoration: none;
    position: relative;
    padding: 0 0 5px 0;
  }
  .hamburger-menu nav .privacy a .catch {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 5vw;
    margin: 0 7px 0 0;
  }
  .hamburger-menu nav .privacy a .arrow {
    line-height: auto;
    width: 7vw;
  }
  .hamburger-menu nav .privacy a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    border-top: solid 2px #fff;
  }
  .hamburger-menu nav .energy {
    position: relative;
    margin: 70px auto 0;
    width: 30vw;
    height: 30vw;
  }
  .hamburger-menu nav .energy span {
    position: absolute;
    width: calc(30vw + var(--i));
    height: calc(30vw + var(--i));
    background: var(--clr);
    border-radius: 50%;
    transform-origin: calc(10vw + var(--i));
    animation: animate 5s linear infinite;
    animation-duration: calc(var(--d));
    mix-blend-mode: plus-lighter;
    filter: blur(30px);
  }
  .hamburger-menu nav .energy span:nth-child(even) {
    animation-direction: reverse;
  }
  @keyframes animate {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .hamburger-menu nav .last-copy {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    padding: 70px 0 0 0;
  }
  .hamburger-menu nav .last-copy .main {
    text-align: center;
    color: transparent;
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    line-height: 1;
    font-size: 20vw;
  }
  .hamburger-menu nav .last-copy .sub {
    text-align: center;
    color: #fff;
    line-height: 1.2;
    font-size: 8vw;
  }
  .hamburger-menu nav .last-copy .semi {
    text-align: center;
    color: #fff;
    line-height: 1.2;
    font-size: 8vw;
  }
  .hamburger-menu nav .logo p {
    font-family: "Iceberg", cursive;
    font-weight: normal;
    text-align: center;
    color: #fff;
    letter-spacing: 2px;
    font-size: 12vw;
    margin: 40px 0 0 0;
  }
  .hamburger-menu nav .address {
    margin: 20px 0 0 0;
  }
  .hamburger-menu nav .address p {
    text-align: center;
    color: #fff;
    line-height: 2.2;
    letter-spacing: 2px;
    font-size: 3.5vw;
  }
  .hamburger-menu nav .address p .syncopate {
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 FIRST-VIEW14 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.first-view {
  background: black;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.first-view .wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}
.first-view .wrapper #canvas-first-view {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}
.first-view .wrapper .inner {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  font-family: "Michroma", sans-serif;
  padding: 130px 0 50px 0;
}
.first-view .wrapper .inner h3 {
  color: #fff;
  text-align: center;
}
.first-view .wrapper .inner h3 .cover {
  display: inline-block;
  border: solid #fff 2px;
  letter-spacing: 2px;
  font-size: 30px;
  padding: 5px 20px 5px 20px;
}
.first-view .wrapper .inner h2 {
  display: flex;
  align-items: center;
}
.first-view .wrapper .inner h2 .catch {
  color: #fff;
  letter-spacing: 3px;
  font-size: 45px;
}
.first-view .wrapper .inner h2 .border {
  width: 150px;
  height: 1px;
  border-top: solid 1px #fff;
  margin: 0 20px 0 20px;
}
.first-view .wrapper .inner h1 {
  color: #fff;
  text-align: center;
  letter-spacing: 3px;
  line-height: 0.8;
}
.first-view .wrapper .inner h1.big {
  font-size: 180px;
}
.first-view .wrapper .inner h1.middle {
  font-size: 110px;
}

.lil-gui {
  display: none !important;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .first-view {
    width: 100%;
    height: 100vh;
  }
  .first-view .wrapper #canvas-first-view {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
  .first-view .wrapper .inner {
    padding: 9vw 0 60px 0;
  }
  .first-view .wrapper .inner h3 .cover {
    letter-spacing: 2px;
    font-size: 2.75vw;
    padding: 5px 20px 5px 20px;
  }
  .first-view .wrapper .inner h2 .catch {
    letter-spacing: 3px;
    font-size: 3.25vw;
  }
  .first-view .wrapper .inner h2 .border {
    width: 9vw;
    height: 1px;
    margin: 0 15px 0 15px;
  }
  .first-view .wrapper .inner h1 {
    letter-spacing: 3px;
    line-height: 0.8;
  }
  .first-view .wrapper .inner h1.big {
    font-size: 13vw;
  }
  .first-view .wrapper .inner h1.middle {
    font-size: 6.75vw;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .first-view {
    width: 100%;
    height: 80vh;
  }
  .first-view .wrapper #canvas-first-view {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
  .first-view .wrapper .inner {
    padding: 13vw 0 50px 0;
  }
  .first-view .wrapper .inner h3 .cover {
    letter-spacing: 2px;
    font-size: 3vw;
    padding: 5px 20px 5px 20px;
  }
  .first-view .wrapper .inner h2 .catch {
    letter-spacing: 3px;
    font-size: 3.75vw;
  }
  .first-view .wrapper .inner h2 .border {
    width: 6vw;
    height: 1px;
    margin: 0 15px 0 15px;
  }
  .first-view .wrapper .inner h1 {
    letter-spacing: 3px;
    line-height: 0.8;
  }
  .first-view .wrapper .inner h1.big {
    font-size: 22.5vw;
  }
  .first-view .wrapper .inner h1.middle {
    font-size: 9vw;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .first-view {
    height: 100vh;
  }
  .first-view .wrapper #canvas-first-view {
    display: block;
  }
  .first-view .wrapper .inner {
    padding: 100px 0 40px 0;
  }
  .first-view .wrapper .inner h3 .cover {
    letter-spacing: 2px;
    font-size: 6vw;
    padding: 5px 20px 5px 20px;
  }
  .first-view .wrapper .inner h2 {
    display: block;
  }
  .first-view .wrapper .inner h2 .catch {
    letter-spacing: 3px;
    font-size: 9vw;
    text-align: center;
  }
  .first-view .wrapper .inner h2 .border {
    width: 1px;
    height: 7vh;
    margin: 5px auto 5px;
    border-top: none;
    border-right: solid 1px #fff;
  }
  .first-view .wrapper .inner h1 {
    letter-spacing: 3px;
    line-height: 0.8;
  }
  .first-view .wrapper .inner h1.big {
    font-size: 44vw;
  }
  .first-view .wrapper .inner h1.middle {
    letter-spacing: 0;
    font-size: 17vw;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 FOOTSTEP 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.footstep {
  width: 100%;
  margin: 0 0 0px 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.footstep .fancy-gradient {
  width: 100%;
  height: 100%;
  background-color: #CC0252;
  background-image: radial-gradient(75vw 100% at left 0 top 0, #A80073, transparent), radial-gradient(75vw 100% at left 100% top 0, #9B70FF, transparent), radial-gradient(75vw 100% at left 100% top 100%, #824dff, transparent), radial-gradient(75vw 100% at left 0 top 100%, #ff3b8d, transparent);
}
.footstep .fancy-gradient .box {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 0 0 0;
}
.footstep .fancy-gradient .box .left h3 {
  font-family: "Iceberg", cursive;
  font-weight: normal;
  color: #000;
  border-right: solid 1px #000;
  padding: 3px 50px 0 0;
}
.footstep .fancy-gradient .box .left h3 .sub {
  text-align: center;
  line-height: 1.2;
  letter-spacing: 5px;
  font-size: 18px;
}
.footstep .fancy-gradient .box .left h3 .main {
  text-align: center;
  line-height: 1.2;
  letter-spacing: 3px;
  font-size: 40px;
}
.footstep .fancy-gradient .box .right {
  display: flex;
  align-items: center;
  color: #000;
  font-size: 60px;
  font-family: Orbitron;
  letter-spacing: 7px;
}
.footstep .fancy-gradient .box .right #MyPeriodDisplay {
  padding: 0 0px 0 50px;
}
.footstep .fancy-gradient .box .right #MyClockDisplay {
  padding: 0 0px 0 10px;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  .footstep .fancy-gradient .box {
    padding: 10px 0 5px 0;
  }
  .footstep .fancy-gradient .box .left h3 {
    padding: 3px 35px 0 0;
  }
  .footstep .fancy-gradient .box .left h3 .sub {
    line-height: 1.2;
    letter-spacing: 5px;
    font-size: 2vw;
  }
  .footstep .fancy-gradient .box .left h3 .main {
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 3.25vw;
  }
  .footstep .fancy-gradient .box .right {
    font-size: 4vw;
    letter-spacing: 4px;
  }
  .footstep .fancy-gradient .box .right #MyPeriodDisplay {
    padding: 0 0px 0 35px;
  }
  .footstep .fancy-gradient .box .right #MyClockDisplay {
    padding: 0 0px 0 10px;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .footstep .fancy-gradient .box {
    padding: 10px 0 5px 0;
  }
  .footstep .fancy-gradient .box .left h3 {
    padding: 3px 30px 0 0;
  }
  .footstep .fancy-gradient .box .left h3 .sub {
    line-height: 1.2;
    letter-spacing: 5px;
    font-size: 2.25vw;
  }
  .footstep .fancy-gradient .box .left h3 .main {
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 3.5vw;
  }
  .footstep .fancy-gradient .box .right {
    font-size: 4vw;
    letter-spacing: 4px;
  }
  .footstep .fancy-gradient .box .right #MyPeriodDisplay {
    padding: 0 0px 0 30px;
  }
  .footstep .fancy-gradient .box .right #MyClockDisplay {
    padding: 0 0px 0 10px;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .footstep .fancy-gradient .box {
    display: block;
    padding: 10px 0 10px 0;
  }
  .footstep .fancy-gradient .box .left h3 {
    border-right: none;
    padding: 3px 0px 0 0;
  }
  .footstep .fancy-gradient .box .left h3 .sub {
    text-align: center;
    line-height: 1.2;
    letter-spacing: 5px;
    font-size: 3.5vw;
  }
  .footstep .fancy-gradient .box .left h3 .main {
    text-align: center;
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 6vw;
  }
  .footstep .fancy-gradient .box .right {
    font-size: 9vw;
    letter-spacing: 2px;
    justify-content: center;
    line-height: 1.2;
  }
  .footstep .fancy-gradient .box .right #MyPeriodDisplay {
    padding: 0 0px 0 0px;
  }
  .footstep .fancy-gradient .box .right #MyClockDisplay {
    padding: 0 0px 0 5px;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 FTOP-INTRO-DUCTION 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.top-introduction {
  background-color: #000;
  line-height: 0;
  margin: 0px;
  overflow: hidden;
  position: relative;
}
.top-introduction #info, .top-introduction #controls {
  position: absolute;
  width: 100%;
  padding: 5px;
  background: rgba(0, 0, 0, 0.4);
}
.top-introduction #info {
  top: 0;
}
.top-introduction #controls {
  bottom: 0;
}
.top-introduction a {
  color: #ffffff;
  transition: 150ms all;
}
.top-introduction a:hover, .top-introduction a:focus {
  color: #ffc107;
}
.top-introduction .audio-embed {
  position: absolute;
  left: 0;
  bottom: 100%;
  border: 0;
}
#hide-audio:checked + .top-introduction .audio-embed {
  opacity: 0;
}
.top-introduction .stats-element {
  display: none !important;
  position: absolute;
  right: 0;
  top: 0;
}
.top-introduction #container-top-introduction {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.top-introduction .wrapper {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: 2;
  padding: 60px 0 0 0;
}
.top-introduction .wrapper h2 {
  padding: 0 5% 0 5%;
}
.top-introduction .wrapper h2 .normal {
  color: #fff;
  font-family: "Syncopate", sans-serif;
  font-size: 86px;
  text-align: left;
  line-height: 1.1;
}
.top-introduction .wrapper h2 .bottom {
  display: flex;
  align-items: center;
  line-height: 1.1;
}
.top-introduction .wrapper h2 .bottom .catch {
  color: #fff;
  font-family: "Syncopate", sans-serif;
  font-size: 86px;
}
.top-introduction .wrapper h2 .bottom .wrap {
  overflow: hidden;
  border: solid 2px #d5308d;
  margin: 0 20px 0 0;
}
.top-introduction .wrapper h2 .bottom .wrap ul,
.top-introduction .wrapper h2 .bottom .wrap li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.top-introduction .wrapper h2 .bottom .wrap ul {
  width: 370px;
  height: 70px;
  position: relative;
  animation: slide 6s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
}
.top-introduction .wrapper h2 .bottom .wrap li {
  position: absolute;
  height: 70px;
  top: 200%;
  line-height: 70px;
  font-size: 55px;
  color: transparent;
  -webkit-text-stroke: 1px #d5308d;
  font-weight: 700;
  font-family: "Poppins", "Iceberg", cursive;
  left: 50%;
  padding: 0;
  transform: translate(-50%, 0);
}
.top-introduction .wrapper h2 .bottom .wrap li:first-child {
  top: 100%;
}
.top-introduction .wrapper h2 .bottom .wrap li:last-child {
  top: 300%;
}
@keyframes slide {
  0% {
    transform: translateY(0);
  }
  15%, 30% {
    transform: translateY(-100%);
  }
  45%, 60% {
    transform: translateY(-200%);
  }
  75%, 90% {
    transform: translateY(-300%);
  }
  100% {
    transform: translateY(-400%);
  }
}
.top-introduction .wrapper .sentence {
  display: flex;
  align-items: center;
  padding: 30px 5% 0 0;
}
.top-introduction .wrapper .sentence .border {
  width: 40%;
  height: 1px;
  border-top: solid 1px #fff;
}
.top-introduction .wrapper .sentence p {
  width: 60%;
  padding: 0 0 0 30px;
  font-family: "Iceberg", cursive;
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 22px;
  color: #fff;
  text-align: left;
  line-height: 2;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .top-introduction #info, .top-introduction #controls {
    width: 100%;
    padding: 5px;
  }
  .top-introduction #info {
    top: 0;
  }
  .top-introduction #controls {
    bottom: 0;
  }
  .top-introduction a {
    transition: 150ms all;
  }
  .top-introduction a:hover, .top-introduction a:focus {
    color: #ffc107;
  }
  #hide-audio:checked + .top-introduction .audio-embed {
    opacity: 0;
  }
  .top-introduction .stats-element {
    display: none !important;
  }
  .top-introduction #container-top-introduction {
    z-index: 1;
    bottom: -10vh;
  }
  .top-introduction .wrapper {
    width: 100%;
    height: 100vh;
    padding: 6vw 0 0 0;
  }
  .top-introduction .wrapper h2 {
    padding: 0 5% 0 5%;
  }
  .top-introduction .wrapper h2 .normal {
    font-size: 6vw;
    line-height: 1.1;
  }
  .top-introduction .wrapper h2 .bottom {
    display: flex;
    align-items: center;
    line-height: 1.1;
  }
  .top-introduction .wrapper h2 .bottom .catch {
    font-size: 6vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap {
    margin: 0 20px 0 0;
  }
  .top-introduction .wrapper h2 .bottom .wrap ul,
  .top-introduction .wrapper h2 .bottom .wrap li {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .top-introduction .wrapper h2 .bottom .wrap ul {
    width: 30vw;
    height: 70px;
    position: relative;
    animation: slide 6s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
  }
  .top-introduction .wrapper h2 .bottom .wrap li {
    position: absolute;
    height: 70px;
    top: 200%;
    line-height: 70px;
    font-size: 5vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap li:first-child {
    top: 100%;
  }
  .top-introduction .wrapper h2 .bottom .wrap li:last-child {
    top: 300%;
  }
  .top-introduction .wrapper .sentence {
    padding: 30px 5% 0 0;
  }
  .top-introduction .wrapper .sentence .border {
    width: 30%;
    height: 1px;
  }
  .top-introduction .wrapper .sentence p {
    width: 70%;
    padding: 0 0 0 30px;
    letter-spacing: 2px;
    font-size: 2.2vw;
    line-height: 2;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .top-introduction #info, .top-introduction #controls {
    width: 100%;
    padding: 5px;
  }
  .top-introduction #info {
    top: 0;
  }
  .top-introduction #controls {
    bottom: 0;
  }
  .top-introduction a {
    transition: 150ms all;
  }
  .top-introduction a:hover, .top-introduction a:focus {
    color: #ffc107;
  }
  #hide-audio:checked + .top-introduction .audio-embed {
    opacity: 0;
  }
  .top-introduction .stats-element {
    display: none !important;
  }
  .top-introduction #container-top-introduction {
    z-index: 1;
    bottom: -10vh;
  }
  .top-introduction .wrapper {
    width: 100%;
    height: 55vh;
    padding: 6vw 0 0 0;
  }
  .top-introduction .wrapper h2 {
    padding: 0 2% 0 4%;
  }
  .top-introduction .wrapper h2 .normal {
    font-size: 6.25vw;
    line-height: 1.1;
  }
  .top-introduction .wrapper h2 .bottom {
    display: flex;
    align-items: center;
    line-height: 1.1;
  }
  .top-introduction .wrapper h2 .bottom .catch {
    font-size: 6.25vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap {
    margin: 0 20px 0 0;
  }
  .top-introduction .wrapper h2 .bottom .wrap ul,
  .top-introduction .wrapper h2 .bottom .wrap li {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .top-introduction .wrapper h2 .bottom .wrap ul {
    width: 30vw;
    height: 70px;
    position: relative;
    animation: slide 6s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
  }
  .top-introduction .wrapper h2 .bottom .wrap li {
    position: absolute;
    height: 70px;
    top: 200%;
    line-height: 70px;
    font-size: 5vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap li:first-child {
    top: 100%;
  }
  .top-introduction .wrapper h2 .bottom .wrap li:last-child {
    top: 300%;
  }
  .top-introduction .wrapper .sentence {
    padding: 30px 5% 0 0;
  }
  .top-introduction .wrapper .sentence .border {
    width: 25%;
    height: 1px;
  }
  .top-introduction .wrapper .sentence p {
    width: 75%;
    padding: 0 0 0 30px;
    letter-spacing: 2px;
    font-size: 2.25vw;
    line-height: 2;
  }
  .top-introduction .wrapper .sentence p .sp-disblock {
    display: none;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .top-introduction #container-top-introduction {
    bottom: 0;
  }
  .top-introduction #container-top-introduction canvas {
    width: 100% !important;
    height: auto !important;
  }
  .top-introduction .wrapper {
    height: 90vh;
    padding: 60px 0 0 0;
  }
  .top-introduction .wrapper h2 {
    padding: 0 5% 0 5%;
  }
  .top-introduction .wrapper h2 .normal {
    font-size: 11vw;
    text-align: left;
    line-height: 1.3;
  }
  .top-introduction .wrapper h2 .bottom {
    display: block;
    line-height: 1.3;
  }
  .top-introduction .wrapper h2 .bottom .catch {
    font-size: 11vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap {
    margin: 0 20px 0 0;
    width: 55vw;
  }
  .top-introduction .wrapper h2 .bottom .wrap ul {
    width: 100%;
    height: 12vw;
    position: relative;
    animation: slide 6s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
  }
  .top-introduction .wrapper h2 .bottom .wrap li {
    position: absolute;
    height: 12vw;
    top: 200%;
    line-height: 12vw;
    font-size: 9vw;
    left: 50%;
    padding: 0;
    transform: translate(-50%, 0);
  }
  .top-introduction .wrapper h2 .bottom .wrap li:first-child {
    top: 100%;
  }
  .top-introduction .wrapper h2 .bottom .wrap li:last-child {
    top: 300%;
  }
  @keyframes slide {
    0% {
      transform: translateY(0);
    }
    15%, 30% {
      transform: translateY(-100%);
    }
    45%, 60% {
      transform: translateY(-200%);
    }
    75%, 90% {
      transform: translateY(-300%);
    }
    100% {
      transform: translateY(-400%);
    }
  }
  .top-introduction .wrapper .sentence {
    display: flex;
    align-items: center;
    padding: 30px 4% 0 0;
  }
  .top-introduction .wrapper .sentence .border {
    width: 30%;
    height: 1px;
  }
  .top-introduction .wrapper .sentence p {
    width: 70%;
    padding: 0 0 0 20px;
    letter-spacing: 2px;
    font-size: 4.25vw;
    text-align: left;
    line-height: 2.2;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 TOP-SERVICE 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.top-service {
  overflow: hidden;
}
.top-service .wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  width: 100%;
  height: 100vh;
}
.top-service .wrapper .text-wrapper {
  width: 50%;
  height: 100%;
  background: linear-gradient(45deg, #bc0950, #a61077, #b936bd, #784fd8);
  background-size: 100%;
}
.top-service .wrapper .text-wrapper {
  display: flex;
  align-items: center;
  padding: 0 0 0 4%;
}
.top-service .wrapper .text-wrapper h3 {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 6px;
  font-size: 28px;
  color: transparent;
  -webkit-text-stroke: #000;
  -webkit-text-stroke-width: 1.5px;
  mix-blend-mode: multiply;
  margin: 10px 0 0 0;
  padding: 0 0 0 0;
}
.top-service .wrapper .text-wrapper h4 {
  margin: 80px 0 0 0;
  font-family: source-han-sans-japanese, sans-serif;
  letter-spacing: 2px;
  font-size: 22px;
  color: rgb(43, 4, 24);
}
.top-service .wrapper .text-wrapper h2 {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  font-size: 65px;
  letter-spacing: 5px;
  color: rgb(43, 4, 24);
}
.top-service .wrapper .text-wrapper .sentence {
  margin: 30px 0 0 0px;
  color: #000;
}
.top-service .wrapper .text-wrapper .sentence p {
  font-size: 18px;
  font-family: source-han-sans-japanese, sans-serif;
  letter-spacing: 1px;
}
.top-service .wrapper .text-wrapper .button {
  margin: 20px 0 0 0;
  width: 12rem;
}
.top-service .wrapper .text-wrapper .button button {
  position: relative;
  display: inline-block;
  cursor: pointer;
  outline: none;
  border: 0;
  vertical-align: middle;
  text-decoration: none;
  background: transparent;
  padding: 0;
  font-family: "Iceberg", cursive;
}
.top-service .wrapper .text-wrapper .button button.learn-more {
  width: 12rem;
  height: auto;
}
.top-service .wrapper .text-wrapper .button button.learn-more .circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #fff;
  border-radius: 1.625rem;
}
.top-service .wrapper .text-wrapper .button button.learn-more .circle .icon {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #282936;
}
.top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}
.top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow::before {
  position: absolute;
  content: "";
  top: -0.25rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #000;
  border-right: 0.125rem solid #000;
  transform: rotate(45deg);
}
.top-service .wrapper .text-wrapper .button button.learn-more .button-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.75rem 0;
  margin: 0 0 0 1.85rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  text-transform: uppercase;
}
.top-service .wrapper .text-wrapper .button button:hover .circle {
  width: 100%;
}
.top-service .wrapper .text-wrapper .button button:hover .circle .icon.arrow {
  background: #fff;
  transform: translate(1rem, 0);
}
.top-service .wrapper .text-wrapper .button button:hover .button-text {
  color: #282936;
}
.top-service .wrapper .thumb {
  width: 50%;
  height: 100%;
  background: #000;
  overflow: hidden;
  position: relative;
}
.top-service .wrapper .thumb canvas {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .top-service .wrapper {
    width: 100%;
    height: 95vh;
  }
  .top-service .wrapper .text-wrapper {
    width: 50%;
    height: 100%;
  }
  .top-service .wrapper .text-wrapper {
    padding: 50px 0 50px 3%;
  }
  .top-service .wrapper .text-wrapper h3 {
    font-weight: 700;
    letter-spacing: 3px;
    -webkit-text-stroke-width: 1.5px;
    margin: 10px 0 0 0;
    font-size: 2vw;
  }
  .top-service .wrapper .text-wrapper h3 .sp-disclock {
    display: none;
  }
  .top-service .wrapper .text-wrapper h4 {
    margin: 20px 0 0 0;
    letter-spacing: 2px;
    font-size: 1.75vw;
  }
  .top-service .wrapper .text-wrapper h2 {
    font-size: 4vw;
    letter-spacing: 1px;
    line-height: 1.2;
  }
  .top-service .wrapper .text-wrapper h2 .sp-disblock {
    display: block;
  }
  .top-service .wrapper .text-wrapper .sentence {
    margin: 20px 0 0 0px;
  }
  .top-service .wrapper .text-wrapper .sentence p {
    font-size: 1.5vw;
    font-family: source-han-sans-japanese, sans-serif;
    letter-spacing: 1px;
  }
  .top-service .wrapper .text-wrapper .button {
    margin: 20px 0 0 0;
    width: 12rem;
  }
  .top-service .wrapper .text-wrapper .button button {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-family: "Iceberg", cursive;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more {
    width: 12rem;
    height: auto;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 3rem;
    height: 3rem;
    border-radius: 1.625rem;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    left: 0.625rem;
    width: 1.125rem;
    height: 0.125rem;
    background: none;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow::before {
    position: absolute;
    content: "";
    top: -0.25rem;
    right: 0.0625rem;
    width: 0.625rem;
    height: 0.625rem;
    border-top: 0.125rem solid #000;
    border-right: 0.125rem solid #000;
    transform: rotate(45deg);
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0.75rem 0;
    margin: 0 0 0 1.85rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    text-transform: uppercase;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle {
    width: 100%;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle .icon.arrow {
    transform: translate(1rem, 0);
  }
  .top-service .wrapper .thumb {
    width: 50%;
    height: 100%;
    background: #000;
    overflow: hidden;
    position: relative;
  }
  .top-service .wrapper .thumb canvas {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .top-service .wrapper {
    width: 100%;
    height: 58vh;
  }
  .top-service .wrapper .text-wrapper {
    width: 50%;
    height: 100%;
  }
  .top-service .wrapper .text-wrapper {
    padding: 0 0 0 3%;
  }
  .top-service .wrapper .text-wrapper h3 {
    font-weight: 700;
    letter-spacing: 3px;
    -webkit-text-stroke-width: 1.5px;
    margin: 10px 0 0 0;
    font-size: 3.5vw;
  }
  .top-service .wrapper .text-wrapper h4 {
    margin: 35px 0 0 0;
    letter-spacing: 2px;
    font-size: 2.75vw;
  }
  .top-service .wrapper .text-wrapper h2 {
    font-size: 6.5vw;
    letter-spacing: 1px;
    line-height: 1.2;
  }
  .top-service .wrapper .text-wrapper h2 .sp-disblock {
    display: block;
  }
  .top-service .wrapper .text-wrapper .sentence {
    margin: 20px 0 0 0px;
    padding: 0 20px 0 0;
  }
  .top-service .wrapper .text-wrapper .sentence p {
    font-size: 2vw;
    letter-spacing: 1px;
  }
  .top-service .wrapper .text-wrapper .button {
    margin: 20px 0 0 0;
    width: 12rem;
  }
  .top-service .wrapper .text-wrapper .button button {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-family: "Iceberg", cursive;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more {
    width: 12rem;
    height: auto;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 3rem;
    height: 3rem;
    border-radius: 1.625rem;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    left: 0.625rem;
    width: 1.125rem;
    height: 0.125rem;
    background: none;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow::before {
    position: absolute;
    content: "";
    top: -0.25rem;
    right: 0.0625rem;
    width: 0.625rem;
    height: 0.625rem;
    border-top: 0.125rem solid #000;
    border-right: 0.125rem solid #000;
    transform: rotate(45deg);
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0.75rem 0;
    margin: 0 0 0 1.85rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    text-transform: uppercase;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle {
    width: 100%;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle .icon.arrow {
    transform: translate(1rem, 0);
  }
  .top-service .wrapper .thumb {
    width: 50%;
    height: 100%;
    overflow: hidden;
    position: relative;
  }
  .top-service .wrapper .thumb canvas {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .top-service .wrapper {
    display: block;
    width: 100%;
    height: 100%;
    padding: 5px 0 0 0;
    background: #000;
  }
  .top-service .wrapper .text-wrapper {
    width: 92%;
    height: 100%;
    background: linear-gradient(45deg, rgba(188, 9, 80, 0.875), rgba(166, 16, 119, 0.875), rgba(185, 54, 189, 0.875), rgba(120, 79, 216, 0.875));
    background-size: 100%;
    margin: -80px auto 0;
    position: relative;
    z-index: 3;
  }
  .top-service .wrapper .text-wrapper {
    display: flex;
    align-items: center;
    padding: 30px 0% 30px 6%;
  }
  .top-service .wrapper .text-wrapper h3 {
    letter-spacing: 5px;
    font-size: 6vw;
    color: transparent;
    -webkit-text-stroke-width: 1.5px;
  }
  .top-service .wrapper .text-wrapper h4 {
    margin: 50px 0 0 0;
    letter-spacing: 2px;
    font-size: 5vw;
  }
  .top-service .wrapper .text-wrapper h2 {
    font-size: 12vw;
    letter-spacing: 4px;
    line-height: 1.15;
    margin: 10px 0 0 0;
  }
  .top-service .wrapper .text-wrapper .sentence {
    margin: 20px 0 0 0px;
  }
  .top-service .wrapper .text-wrapper .sentence p {
    font-size: 4vw;
    letter-spacing: 1px;
  }
  .top-service .wrapper .text-wrapper .button {
    margin: 20px 0 0 0;
    width: 12rem;
  }
  .top-service .wrapper .text-wrapper .button button {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-family: "Iceberg", cursive;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more {
    width: 12rem;
    height: auto;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 3rem;
    height: 3rem;
    background: #fff;
    border-radius: 1.625rem;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #282936;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    left: 0.625rem;
    width: 1.125rem;
    height: 0.125rem;
    background: none;
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .circle .icon.arrow::before {
    position: absolute;
    content: "";
    top: -0.25rem;
    right: 0.0625rem;
    width: 0.625rem;
    height: 0.625rem;
    border-top: 0.125rem solid #000;
    border-right: 0.125rem solid #000;
    transform: rotate(45deg);
  }
  .top-service .wrapper .text-wrapper .button button.learn-more .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    padding: 0.75rem 0;
    margin: 0 0 0 1.85rem;
    color: #fff;
    line-height: 1.6;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle {
    width: 100%;
  }
  .top-service .wrapper .text-wrapper .button button:hover .circle .icon.arrow {
    background: #fff;
    transform: translate(1rem, 0);
  }
  .top-service .wrapper .text-wrapper .button button:hover .button-text {
    color: #282936;
  }
  .top-service .wrapper .thumb {
    width: 100%;
    height: 100vw;
    overflow: hidden;
    position: relative;
  }
  .top-service .wrapper .thumb canvas {
    width: 100vw !important;
    height: auto !important;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 TOP-COMPANY 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.top-company {
  overflow: hidden;
  width: 100%;
  height: 100%;
  background: url(../images/top-company-bg.jpg) no-repeat 0 0;
  background-size: cover;
  position: relative;
  padding: 60px 0 100px 0;
}
.top-company::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  justify-content: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: hard-light;
  z-index: 1;
  animation: mix-blend-bg 6s linear infinite;
  animation-direction: alternate;
}
@keyframes mix-blend-bg {
  0% {
    background: rgba(0, 0, 0, 0.7);
  }
  50% {
    background: rgba(0, 0, 0, 0.2);
  }
  100% {
    background: rgba(0, 0, 0, 0.9);
  }
}
.top-company .seperator-wrapper {
  width: 80%;
  position: relative;
  z-index: 3;
  margin: 0 auto 0;
  overflow: hidden;
}
.top-company .seperator-wrapper .seperator {
  width: 3000px;
  height: 6px;
  animation: rotate 3s infinite linear;
}
@keyframes rotate {
  from {
    background-position: -3000px;
  }
  to {
    background-position: 0px;
  }
}
.top-company .gradient {
  background: rgb(48, 255, 144); /* Old browsers */ /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
  background: linear-gradient(to right, rgb(48, 255, 144) 0%, rgb(237, 45, 237) 25%, rgb(201, 152, 38) 50%, rgb(48, 255, 230) 75%, rgb(48, 255, 144) 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#30ff90", endColorstr="#30ff90",GradientType=1 ); /* IE6-9 */
}
.top-company .wrapper {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
}
.top-company .wrapper .inner {
  width: 100%;
  color: #fff;
  padding: 50px 0 0 0;
}
.top-company .wrapper .inner h3 {
  text-align: center;
  font-family: "Iceberg", cursive;
  letter-spacing: 3px;
  font-size: 28px;
}
.top-company .wrapper .inner h2 {
  text-align: center;
  font-family: "Syncopate", sans-serif;
  margin: 35px 0 0 0;
  letter-spacing: 3px;
  font-size: 50px;
}
.top-company .wrapper .inner .box-wrapper {
  display: flex;
  justify-content: center;
  margin: 100px 0 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .thumb {
  width: 500px;
  margin: 0 auto 0;
}
.top-company .wrapper .inner .box-wrapper .box h4 {
  text-align: center;
  font-family: "Poppins";
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 6px;
  font-size: 58px;
  color: transparent;
  -webkit-text-stroke: #fff;
  -webkit-text-stroke-width: 1px;
  margin: 35px 0 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .sentence {
  margin: 20px 0 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .sentence p {
  text-align: center;
  font-family: "Syncopate", sans-serif;
  font-weight: 500;
  letter-spacing: 6px;
  font-size: 23px;
  color: #fff;
}
.top-company .wrapper .inner .box-wrapper .box .button {
  margin: 55px 0px 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .button a {
  text-decoration: none;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.top-company .wrapper .inner .box-wrapper .box .button a .icon {
  line-height: 0;
  width: 90px;
  margin: 0 20px 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .button a .icon img {
  width: 100%;
  height: auto;
}
.top-company .wrapper .inner .box-wrapper .box .button a .catch .en {
  font-family: "Syncopate", sans-serif;
  font-weight: 500;
  letter-spacing: 6px;
  font-size: 28px;
}
.top-company .wrapper .inner .box-wrapper .box .button a .catch .jp {
  font-family: source-han-sans-japanese, sans-serif;
  letter-spacing: 3px;
  font-size: 17px;
}
.top-company .wrapper .inner .box-wrapper .box:nth-child(1) {
  margin: 0 90px 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper {
  --color-frame: #f7b457;
  --color-frame: #00d2f1;
  --color-text: #ded5c6;
  --timeline-base-delay: 100ms;
  --timeline-logo-anim: 800ms;
  --timeline-logo-delay: var(--timeline-base-delay);
  --timeline-cube-inner-anim: 800ms;
  --timeline-cube-inner-delay: calc(var(--timeline-logo-delay) + var(--timeline-logo-anim) * 0.25 + 600ms);
  --timeline-cube-outer-anim: 800ms;
  --timeline-cube-outer-delay: calc(var(--timeline-cube-inner-delay) + 150ms);
  --timeline-text-frame-anim: 900ms;
  --timeline-text-frame-delay: calc(200ms + var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim) * 0.25);
  --timeline-text-anim: 800ms;
  --timeline-text-delay: calc(var(--timeline-text-frame-delay) + var(--timeline-text-frame-anim) * 0.5625);
  --timeline-lighting-anim: 3000ms;
  --timeline-lighting-delay: calc(var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim));
  --ease-whisk-in-out: cubic-bezier(0.85, 0, 0.15, 1);
  --ease-soft-out: cubic-bezier(0, 0, 0.15, 1);
  --ease-circ-out: cubic-bezier(0, 0, 0, 1);
  --ease-bouncy-out: cubic-bezier(.6, 1.5, .4, 1);
  --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
  padding: 30px;
  background: rgba(39, 35, 37, 0.85);
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo {
  overflow: visible !important;
  width: 100%;
  height: auto;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo * {
  transform-box: fill-box;
  transform-origin: 50% 50%;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame {
  --dir: 0.25;
  fill: var(--color-frame);
  animation: slideIn var(--timeline-text-frame-anim) var(--ease-soft-out) var(--timeline-text-frame-delay, 50ms) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame--right {
  --dir: -0.25;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-inner {
  animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-inner-delay, 50ms) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-outer {
  animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-outer-delay, 50ms) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-mask-lines > * {
  stroke-dasharray: 1 1;
  will-change: stroke-dashoffset;
  animation: lineIn var(--timeline-logo-anim) var(--ease-whisk-in-out) calc(var(--delay, 0) * 200ms + var(--timeline-logo-delay, 0ms) + var(--l, 0) / var(--lines, 3) * 1.5 * var(--timeline-logo-anim) * 0.4) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-shape--under {
  fill: var(--color-frame);
  animation: fadeOut 300ms linear calc(var(--timeline-logo-anim) * 2 + var(--timeline-logo-delay, 0ms)) forwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text {
  --dir: 4;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text > path {
  fill: var(--color-text);
  animation: slideIn var(--timeline-text-anim) var(--ease-circ-out) calc(var(--char) * 75ms + var(--timeline-text-delay, 50ms)) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text--year {
  --dir: -6;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting {
  transform-origin: var(--tr, 50% 50%);
  animation: scaleIn var(--timeline-lighting-anim) var(--ease-circ-out) var(--timeline-lighting-delay, 50ms) backwards 1;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--left {
  --tr: 100% 100%;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--right {
  --tr: 100% 0%;
}
.top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--top {
  --tr: 0% 50%;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper {
  --color-text: #fff6e6;
  --color-accent: #F649A7;
  --color-alt: #ede1a4;
  --timeline-delay-frame: 500ms;
  --timeline-anim-frame: 1250ms;
  --timeline-anim-text: 500ms;
  --timeline-delay-text: 50ms;
  --timeline-anim-letters: 2500ms;
  --timeline-delay-letters: 50ms;
  --ease-bouncy-out: cubic-bezier(.6, 1.5, .5, 1);
  --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
  padding: 30px;
  background: rgba(39, 35, 37, 0.85);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo * {
  transform-box: fill-box;
  transform-origin: 50% 50%;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo {
  width: 100%;
  height: auto;
  overflow: visible !important;
  text-align: center;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__lines > * {
  --line-delay: calc((var(--i) - var(--count) / 2) / var(--count));
  animation: scaleXIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
  animation-delay: calc(max(var(--line-delay), var(--line-delay) * -1) * var(--timeline-anim-frame) / 2);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__diamond > *, .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
  animation: scaleIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
  animation-delay: calc(var(--timeline-delay-frame) + (var(--g)) * var(--timeline-anim-frame) / 4);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
  transform-box: view-box;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: auto;
  overflow: visible !important;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame path {
  stroke: var(--color-accent, hotpink);
  stroke-dasharray: 100;
  stroke-dashoffset: 0;
  animation: pathIn var(--timeline-anim-frame) cubic-bezier(0.5, 0, 0.5, 1) 1 backwards;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__text > * {
  --text-delay: calc(var(--timeline-local-delay) + var(--t, 0) * var(--timeline-delay-text, 20ms));
  fill: var(--color-text);
  animation: textIn var(--timeline-anim-text) var(--ease-bouncy-out) var(--text-delay) 1 backwards, fadeIn var(--timeline-anim-text) ease-out var(--text-delay) 1 backwards;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__stateof {
  --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.5);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__css {
  --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75);
  filter: drop-shadow(0 10px 30px #C61270);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter {
  --anim-quarter-delay: calc(var(--timeline-delay-letters, 20ms) * var(--g) * var(--i) + var(--timeline-local-delay) - 50ms);
  animation: clockIn var(--timeline-anim-letters) cubic-bezier(0, 0, 0, 1) 1 backwards;
  will-change: transform;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--grad {
  fill: url(#grad-letter);
  animation-delay: calc(var(--anim-quarter-delay) + 300ms);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--ghost {
  fill: var(--color-bg, black);
  animation-delay: var(--anim-quarter-delay);
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=nw] {
  transform-origin: 100% 100%;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=ne] {
  transform-origin: 0 100%;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=se] {
  transform-origin: 0 0;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=sw] {
  transform-origin: 100% 0;
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__year {
  --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75 + var(--timeline-anim-letters));
}
.top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper [hidden] {
  display: none !important;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  .top-company {
    overflow: hidden;
    width: 100%;
    height: 100%;
    background: url(../images/top-company-bg.jpg) no-repeat 0 0;
    background-size: cover;
    position: relative;
    padding: 60px 0 100px 0;
  }
  .top-company::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    justify-content: center;
    width: 100%;
    height: 100%;
    mix-blend-mode: hard-light;
    z-index: 1;
    animation: mix-blend-bg 6s linear infinite;
    animation-direction: alternate;
  }
  @keyframes mix-blend-bg {
    0% {
      background: rgba(0, 0, 0, 0.7);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.9);
    }
  }
  .top-company .seperator-wrapper {
    width: 80%;
    position: relative;
    z-index: 3;
    margin: 0 auto 0;
    overflow: hidden;
  }
  .top-company .seperator-wrapper .seperator {
    width: 200vw;
    height: 6px;
    animation: rotate 3s infinite linear;
  }
  @keyframes rotate {
    from {
      background-position: -200vw;
    }
    to {
      background-position: 0px;
    }
  }
  .top-company .gradient {
    background: rgb(48, 255, 144); /* Old browsers */ /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
    background: linear-gradient(to right, rgb(48, 255, 144) 0%, rgb(237, 45, 237) 25%, rgb(201, 152, 38) 50%, rgb(48, 255, 230) 75%, rgb(48, 255, 144) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#30ff90", endColorstr="#30ff90",GradientType=1 ); /* IE6-9 */
  }
  .top-company .wrapper .inner {
    padding: 50px 0 0 0;
  }
  .top-company .wrapper .inner h3 {
    letter-spacing: 3px;
    font-size: 2.6vw;
  }
  .top-company .wrapper .inner h2 {
    margin: 35px 0 0 0;
    letter-spacing: 3px;
    font-size: 4vw;
  }
  .top-company .wrapper .inner .box-wrapper {
    display: flex;
    justify-content: space-between;
    margin: 100px 0 0 0;
    padding: 0 2.5% 0 2.5%;
  }
  .top-company .wrapper .inner .box-wrapper .box {
    width: 48%;
  }
  .top-company .wrapper .inner .box-wrapper .box .thumb {
    width: 100%;
    margin: 0 auto 0;
  }
  .top-company .wrapper .inner .box-wrapper .box h4 {
    letter-spacing: 4px;
    font-size: 5vw;
    -webkit-text-stroke-width: 1px;
    margin: 35px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence {
    margin: 20px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence p {
    letter-spacing: 6px;
    font-size: 2.15vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button {
    margin: 55px 0px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon {
    line-height: 0;
    width: 8vw;
    margin: 0 20px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .en {
    letter-spacing: 6px;
    font-size: 2.75vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 1.7vw;
  }
  .top-company .wrapper .inner .box-wrapper .box:nth-child(1) {
    margin: 0 0px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper {
    --color-frame: #f7b457;
    --color-frame: #00d2f1;
    --color-text: #ded5c6;
    --timeline-base-delay: 100ms;
    --timeline-logo-anim: 800ms;
    --timeline-logo-delay: var(--timeline-base-delay);
    --timeline-cube-inner-anim: 800ms;
    --timeline-cube-inner-delay: calc(var(--timeline-logo-delay) + var(--timeline-logo-anim) * 0.25 + 600ms);
    --timeline-cube-outer-anim: 800ms;
    --timeline-cube-outer-delay: calc(var(--timeline-cube-inner-delay) + 150ms);
    --timeline-text-frame-anim: 900ms;
    --timeline-text-frame-delay: calc(200ms + var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim) * 0.25);
    --timeline-text-anim: 800ms;
    --timeline-text-delay: calc(var(--timeline-text-frame-delay) + var(--timeline-text-frame-anim) * 0.5625);
    --timeline-lighting-anim: 3000ms;
    --timeline-lighting-delay: calc(var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim));
    --ease-whisk-in-out: cubic-bezier(0.85, 0, 0.15, 1);
    --ease-soft-out: cubic-bezier(0, 0, 0.15, 1);
    --ease-circ-out: cubic-bezier(0, 0, 0, 1);
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .4, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo {
    overflow: visible !important;
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame {
    --dir: 0.25;
    fill: var(--color-frame);
    animation: slideIn var(--timeline-text-frame-anim) var(--ease-soft-out) var(--timeline-text-frame-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame--right {
    --dir: -0.25;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-inner {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-inner-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-outer {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-outer-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-mask-lines > * {
    stroke-dasharray: 1 1;
    will-change: stroke-dashoffset;
    animation: lineIn var(--timeline-logo-anim) var(--ease-whisk-in-out) calc(var(--delay, 0) * 200ms + var(--timeline-logo-delay, 0ms) + var(--l, 0) / var(--lines, 3) * 1.5 * var(--timeline-logo-anim) * 0.4) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-shape--under {
    fill: var(--color-frame);
    animation: fadeOut 300ms linear calc(var(--timeline-logo-anim) * 2 + var(--timeline-logo-delay, 0ms)) forwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text {
    --dir: 4;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text > path {
    fill: var(--color-text);
    animation: slideIn var(--timeline-text-anim) var(--ease-circ-out) calc(var(--char) * 75ms + var(--timeline-text-delay, 50ms)) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text--year {
    --dir: -6;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting {
    transform-origin: var(--tr, 50% 50%);
    animation: scaleIn var(--timeline-lighting-anim) var(--ease-circ-out) var(--timeline-lighting-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--left {
    --tr: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--right {
    --tr: 100% 0%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--top {
    --tr: 0% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper {
    --color-text: #fff6e6;
    --color-accent: #F649A7;
    --color-alt: #ede1a4;
    --timeline-delay-frame: 500ms;
    --timeline-anim-frame: 1250ms;
    --timeline-anim-text: 500ms;
    --timeline-delay-text: 50ms;
    --timeline-anim-letters: 2500ms;
    --timeline-delay-letters: 50ms;
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .5, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo {
    width: 100%;
    height: auto;
    overflow: visible !important;
    text-align: center;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__lines > * {
    --line-delay: calc((var(--i) - var(--count) / 2) / var(--count));
    animation: scaleXIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(max(var(--line-delay), var(--line-delay) * -1) * var(--timeline-anim-frame) / 2);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__diamond > *, .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    animation: scaleIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(var(--timeline-delay-frame) + (var(--g)) * var(--timeline-anim-frame) / 4);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    transform-box: view-box;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: auto;
    overflow: visible !important;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame path {
    stroke: var(--color-accent, hotpink);
    stroke-dasharray: 100;
    stroke-dashoffset: 0;
    animation: pathIn var(--timeline-anim-frame) cubic-bezier(0.5, 0, 0.5, 1) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__text > * {
    --text-delay: calc(var(--timeline-local-delay) + var(--t, 0) * var(--timeline-delay-text, 20ms));
    fill: var(--color-text);
    animation: textIn var(--timeline-anim-text) var(--ease-bouncy-out) var(--text-delay) 1 backwards, fadeIn var(--timeline-anim-text) ease-out var(--text-delay) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__stateof {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.5);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__css {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75);
    filter: drop-shadow(0 10px 30px #C61270);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter {
    --anim-quarter-delay: calc(var(--timeline-delay-letters, 20ms) * var(--g) * var(--i) + var(--timeline-local-delay) - 50ms);
    animation: clockIn var(--timeline-anim-letters) cubic-bezier(0, 0, 0, 1) 1 backwards;
    will-change: transform;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--grad {
    fill: url(#grad-letter);
    animation-delay: calc(var(--anim-quarter-delay) + 300ms);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--ghost {
    fill: var(--color-bg, black);
    animation-delay: var(--anim-quarter-delay);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=nw] {
    transform-origin: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=ne] {
    transform-origin: 0 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=se] {
    transform-origin: 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=sw] {
    transform-origin: 100% 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__year {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75 + var(--timeline-anim-letters));
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper [hidden] {
    display: none !important;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .top-company {
    overflow: hidden;
    width: 100%;
    height: 100%;
    background: url(../images/top-company-bg.jpg) no-repeat 0 0;
    background-size: cover;
    position: relative;
    padding: 60px 0 100px 0;
  }
  .top-company::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    justify-content: center;
    width: 100%;
    height: 100%;
    mix-blend-mode: hard-light;
    z-index: 1;
    animation: mix-blend-bg 6s linear infinite;
    animation-direction: alternate;
  }
  @keyframes mix-blend-bg {
    0% {
      background: rgba(0, 0, 0, 0.7);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.9);
    }
  }
  .top-company .seperator-wrapper {
    width: 80%;
    position: relative;
    z-index: 3;
    margin: 0 auto 0;
    overflow: hidden;
  }
  .top-company .seperator-wrapper .seperator {
    width: 200vw;
    height: 6px;
    animation: rotate 3s infinite linear;
  }
  @keyframes rotate {
    from {
      background-position: -200vw;
    }
    to {
      background-position: 0px;
    }
  }
  .top-company .gradient {
    background: rgb(48, 255, 144); /* Old browsers */ /* FF3.6+ */ /* Chrome,Safari4+ */ /* Chrome10+,Safari5.1+ */ /* Opera 11.10+ */ /* IE10+ */
    background: linear-gradient(to right, rgb(48, 255, 144) 0%, rgb(237, 45, 237) 25%, rgb(201, 152, 38) 50%, rgb(48, 255, 230) 75%, rgb(48, 255, 144) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#30ff90", endColorstr="#30ff90",GradientType=1 ); /* IE6-9 */
  }
  .top-company .wrapper .inner {
    padding: 50px 0 0 0;
  }
  .top-company .wrapper .inner h3 {
    letter-spacing: 3px;
    font-size: 2.8vw;
  }
  .top-company .wrapper .inner h2 {
    margin: 35px 0 0 0;
    letter-spacing: 3px;
    font-size: 4.5vw;
  }
  .top-company .wrapper .inner .box-wrapper {
    display: flex;
    justify-content: space-between;
    margin: 100px 0 0 0;
    padding: 0 2.5% 0 2.5%;
  }
  .top-company .wrapper .inner .box-wrapper .box {
    width: 48%;
  }
  .top-company .wrapper .inner .box-wrapper .box .thumb {
    width: 100%;
    margin: 0 auto 0;
  }
  .top-company .wrapper .inner .box-wrapper .box h4 {
    letter-spacing: 4px;
    font-size: 5vw;
    -webkit-text-stroke-width: 1px;
    margin: 35px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence {
    margin: 20px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence p {
    letter-spacing: 6px;
    font-size: 2.15vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button {
    margin: 55px 0px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon {
    line-height: 0;
    width: 8vw;
    margin: 0 20px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .en {
    letter-spacing: 6px;
    font-size: 2.75vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 1.7vw;
  }
  .top-company .wrapper .inner .box-wrapper .box:nth-child(1) {
    margin: 0 0px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper {
    --color-frame: #f7b457;
    --color-frame: #00d2f1;
    --color-text: #ded5c6;
    --timeline-base-delay: 100ms;
    --timeline-logo-anim: 800ms;
    --timeline-logo-delay: var(--timeline-base-delay);
    --timeline-cube-inner-anim: 800ms;
    --timeline-cube-inner-delay: calc(var(--timeline-logo-delay) + var(--timeline-logo-anim) * 0.25 + 600ms);
    --timeline-cube-outer-anim: 800ms;
    --timeline-cube-outer-delay: calc(var(--timeline-cube-inner-delay) + 150ms);
    --timeline-text-frame-anim: 900ms;
    --timeline-text-frame-delay: calc(200ms + var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim) * 0.25);
    --timeline-text-anim: 800ms;
    --timeline-text-delay: calc(var(--timeline-text-frame-delay) + var(--timeline-text-frame-anim) * 0.5625);
    --timeline-lighting-anim: 3000ms;
    --timeline-lighting-delay: calc(var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim));
    --ease-whisk-in-out: cubic-bezier(0.85, 0, 0.15, 1);
    --ease-soft-out: cubic-bezier(0, 0, 0.15, 1);
    --ease-circ-out: cubic-bezier(0, 0, 0, 1);
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .4, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo {
    overflow: visible !important;
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame {
    --dir: 0.25;
    fill: var(--color-frame);
    animation: slideIn var(--timeline-text-frame-anim) var(--ease-soft-out) var(--timeline-text-frame-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame--right {
    --dir: -0.25;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-inner {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-inner-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-outer {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-outer-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-mask-lines > * {
    stroke-dasharray: 1 1;
    will-change: stroke-dashoffset;
    animation: lineIn var(--timeline-logo-anim) var(--ease-whisk-in-out) calc(var(--delay, 0) * 200ms + var(--timeline-logo-delay, 0ms) + var(--l, 0) / var(--lines, 3) * 1.5 * var(--timeline-logo-anim) * 0.4) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-shape--under {
    fill: var(--color-frame);
    animation: fadeOut 300ms linear calc(var(--timeline-logo-anim) * 2 + var(--timeline-logo-delay, 0ms)) forwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text {
    --dir: 4;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text > path {
    fill: var(--color-text);
    animation: slideIn var(--timeline-text-anim) var(--ease-circ-out) calc(var(--char) * 75ms + var(--timeline-text-delay, 50ms)) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text--year {
    --dir: -6;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting {
    transform-origin: var(--tr, 50% 50%);
    animation: scaleIn var(--timeline-lighting-anim) var(--ease-circ-out) var(--timeline-lighting-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--left {
    --tr: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--right {
    --tr: 100% 0%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--top {
    --tr: 0% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper {
    --color-text: #fff6e6;
    --color-accent: #F649A7;
    --color-alt: #ede1a4;
    --timeline-delay-frame: 500ms;
    --timeline-anim-frame: 1250ms;
    --timeline-anim-text: 500ms;
    --timeline-delay-text: 50ms;
    --timeline-anim-letters: 2500ms;
    --timeline-delay-letters: 50ms;
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .5, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo {
    width: 100%;
    height: auto;
    overflow: visible !important;
    text-align: center;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__lines > * {
    --line-delay: calc((var(--i) - var(--count) / 2) / var(--count));
    animation: scaleXIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(max(var(--line-delay), var(--line-delay) * -1) * var(--timeline-anim-frame) / 2);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__diamond > *, .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    animation: scaleIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(var(--timeline-delay-frame) + (var(--g)) * var(--timeline-anim-frame) / 4);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    transform-box: view-box;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: auto;
    overflow: visible !important;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame path {
    stroke: var(--color-accent, hotpink);
    stroke-dasharray: 100;
    stroke-dashoffset: 0;
    animation: pathIn var(--timeline-anim-frame) cubic-bezier(0.5, 0, 0.5, 1) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__text > * {
    --text-delay: calc(var(--timeline-local-delay) + var(--t, 0) * var(--timeline-delay-text, 20ms));
    fill: var(--color-text);
    animation: textIn var(--timeline-anim-text) var(--ease-bouncy-out) var(--text-delay) 1 backwards, fadeIn var(--timeline-anim-text) ease-out var(--text-delay) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__stateof {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.5);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__css {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75);
    filter: drop-shadow(0 10px 30px #C61270);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter {
    --anim-quarter-delay: calc(var(--timeline-delay-letters, 20ms) * var(--g) * var(--i) + var(--timeline-local-delay) - 50ms);
    animation: clockIn var(--timeline-anim-letters) cubic-bezier(0, 0, 0, 1) 1 backwards;
    will-change: transform;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--grad {
    fill: url(#grad-letter);
    animation-delay: calc(var(--anim-quarter-delay) + 300ms);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--ghost {
    fill: var(--color-bg, black);
    animation-delay: var(--anim-quarter-delay);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=nw] {
    transform-origin: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=ne] {
    transform-origin: 0 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=se] {
    transform-origin: 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=sw] {
    transform-origin: 100% 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__year {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75 + var(--timeline-anim-letters));
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper [hidden] {
    display: none !important;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .top-company {
    background: url(../images/top-company-bg.jpg) no-repeat center center;
    padding: 60px 0 100px 0;
  }
  .top-company::after {
    animation: mix-blend-bg 6s linear infinite;
    animation-direction: alternate;
  }
  @keyframes mix-blend-bg {
    0% {
      background: rgba(0, 0, 0, 0.7);
    }
    50% {
      background: rgba(0, 0, 0, 0.4);
    }
    100% {
      background: rgba(0, 0, 0, 0.9);
    }
  }
  .top-company .seperator-wrapper {
    width: 77%;
  }
  .top-company .seperator-wrapper .seperator {
    width: 200vw;
    height: 4px;
    animation: rotate 3s infinite linear;
  }
  @keyframes rotate {
    from {
      background-position: -200vw;
    }
    to {
      background-position: 0px;
    }
  }
  .top-company .wrapper .inner {
    width: 100%;
    padding: 50px 0 0 0;
  }
  .top-company .wrapper .inner h3 {
    letter-spacing: 3px;
    font-size: 5vw;
  }
  .top-company .wrapper .inner h2 {
    margin: 35px 0 0 0;
    letter-spacing: 1px;
    font-size: 7vw;
  }
  .top-company .wrapper .inner .box-wrapper {
    display: block;
    margin: 80px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .thumb {
    width: 90%;
    margin: 0 auto 0;
  }
  .top-company .wrapper .inner .box-wrapper .box h4 {
    letter-spacing: 6px;
    font-size: 9vw;
    -webkit-text-stroke-width: 1px;
    margin: 25px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence {
    margin: 20px 0 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .sentence p {
    letter-spacing: 6px;
    font-size: 5vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button {
    margin: 35px 0px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon {
    line-height: 0;
    width: 14vw;
    margin: 0 20px 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .en {
    letter-spacing: 5px;
    font-size: 6vw;
  }
  .top-company .wrapper .inner .box-wrapper .box .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 4vw;
  }
  .top-company .wrapper .inner .box-wrapper .box:nth-child(1) {
    margin: 0 auto 0;
  }
  .top-company .wrapper .inner .box-wrapper .box:nth-child(2) {
    margin: 60px auto 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper {
    --color-frame: #f7b457;
    --color-frame: #00d2f1;
    --color-text: #ded5c6;
    --timeline-base-delay: 100ms;
    --timeline-logo-anim: 800ms;
    --timeline-logo-delay: var(--timeline-base-delay);
    --timeline-cube-inner-anim: 800ms;
    --timeline-cube-inner-delay: calc(var(--timeline-logo-delay) + var(--timeline-logo-anim) * 0.25 + 600ms);
    --timeline-cube-outer-anim: 800ms;
    --timeline-cube-outer-delay: calc(var(--timeline-cube-inner-delay) + 150ms);
    --timeline-text-frame-anim: 900ms;
    --timeline-text-frame-delay: calc(200ms + var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim) * 0.25);
    --timeline-text-anim: 800ms;
    --timeline-text-delay: calc(var(--timeline-text-frame-delay) + var(--timeline-text-frame-anim) * 0.5625);
    --timeline-lighting-anim: 3000ms;
    --timeline-lighting-delay: calc(var(--timeline-cube-outer-delay) + var(--timeline-cube-outer-anim));
    --ease-whisk-in-out: cubic-bezier(0.85, 0, 0.15, 1);
    --ease-soft-out: cubic-bezier(0, 0, 0.15, 1);
    --ease-circ-out: cubic-bezier(0, 0, 0, 1);
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .4, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo {
    overflow: visible !important;
    width: 100%;
    height: auto;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame {
    --dir: 0.25;
    fill: var(--color-frame);
    animation: slideIn var(--timeline-text-frame-anim) var(--ease-soft-out) var(--timeline-text-frame-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text-frame--right {
    --dir: -0.25;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-inner {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-inner-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-outer {
    animation: scaleIn var(--timeline-cube-inner-anim) var(--ease-bouncy-out) var(--timeline-cube-outer-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-mask-lines > * {
    stroke-dasharray: 1 1;
    will-change: stroke-dashoffset;
    animation: lineIn var(--timeline-logo-anim) var(--ease-whisk-in-out) calc(var(--delay, 0) * 200ms + var(--timeline-logo-delay, 0ms) + var(--l, 0) / var(--lines, 3) * 1.5 * var(--timeline-logo-anim) * 0.4) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-shape--under {
    fill: var(--color-frame);
    animation: fadeOut 300ms linear calc(var(--timeline-logo-anim) * 2 + var(--timeline-logo-delay, 0ms)) forwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text {
    --dir: 4;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text > path {
    fill: var(--color-text);
    animation: slideIn var(--timeline-text-anim) var(--ease-circ-out) calc(var(--char) * 75ms + var(--timeline-text-delay, 50ms)) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-text--year {
    --dir: -6;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting {
    transform-origin: var(--tr, 50% 50%);
    animation: scaleIn var(--timeline-lighting-anim) var(--ease-circ-out) var(--timeline-lighting-delay, 50ms) backwards 1;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--left {
    --tr: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--right {
    --tr: 100% 0%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soj-logo__wrapper .soj-cube-lighting--top {
    --tr: 0% 50%;
  }
  @keyframes slideIn {
    from {
      filter: opacity(0%);
      opacity: 0;
      transform: translateX(calc(var(--dir, 1) * 50%));
    }
  }
  @keyframes scaleIn {
    from {
      transform: scale(0.0001);
    }
  }
  @keyframes lineIn {
    from {
      opacity: 0;
      stroke-dashoffset: var(--dir, 1);
    }
    0.1% {
      opacity: 1;
    }
  }
  @keyframes fadeOut {
    to {
      opacity: 0;
    }
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper {
    --color-text: #fff6e6;
    --color-accent: #F649A7;
    --color-alt: #ede1a4;
    --timeline-delay-frame: 500ms;
    --timeline-anim-frame: 1250ms;
    --timeline-anim-text: 500ms;
    --timeline-delay-text: 50ms;
    --timeline-anim-letters: 2500ms;
    --timeline-delay-letters: 50ms;
    --ease-bouncy-out: cubic-bezier(.6, 1.5, .5, 1);
    --ease-bouncy-in-out: cubic-bezier(.25, -.25, .1, 1.25);
    padding: 30px;
    background: rgba(39, 35, 37, 0.85);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo * {
    transform-box: fill-box;
    transform-origin: 50% 50%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo {
    width: 100%;
    height: auto;
    overflow: visible !important;
    text-align: center;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__lines > * {
    --line-delay: calc((var(--i) - var(--count) / 2) / var(--count));
    animation: scaleXIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(max(var(--line-delay), var(--line-delay) * -1) * var(--timeline-anim-frame) / 2);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__diamond > *, .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    animation: scaleIn var(--timeline-anim-frame) var(--ease-bouncy-out, ease) 1 backwards;
    animation-delay: calc(var(--timeline-delay-frame) + (var(--g)) * var(--timeline-anim-frame) / 4);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__shadow {
    transform-box: view-box;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: auto;
    overflow: visible !important;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__frame path {
    stroke: var(--color-accent, hotpink);
    stroke-dasharray: 100;
    stroke-dashoffset: 0;
    animation: pathIn var(--timeline-anim-frame) cubic-bezier(0.5, 0, 0.5, 1) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__text > * {
    --text-delay: calc(var(--timeline-local-delay) + var(--t, 0) * var(--timeline-delay-text, 20ms));
    fill: var(--color-text);
    animation: textIn var(--timeline-anim-text) var(--ease-bouncy-out) var(--text-delay) 1 backwards, fadeIn var(--timeline-anim-text) ease-out var(--text-delay) 1 backwards;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__stateof {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.5);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__css {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75);
    filter: drop-shadow(0 10px 30px #C61270);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter {
    --anim-quarter-delay: calc(var(--timeline-delay-letters, 20ms) * var(--g) * var(--i) + var(--timeline-local-delay) - 50ms);
    animation: clockIn var(--timeline-anim-letters) cubic-bezier(0, 0, 0, 1) 1 backwards;
    will-change: transform;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--grad {
    fill: url(#grad-letter);
    animation-delay: calc(var(--anim-quarter-delay) + 300ms);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter--ghost {
    fill: var(--color-bg, black);
    animation-delay: var(--anim-quarter-delay);
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=nw] {
    transform-origin: 100% 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=ne] {
    transform-origin: 0 100%;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=se] {
    transform-origin: 0 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__quarter[data-curve=sw] {
    transform-origin: 100% 0;
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper .soc-logo__year {
    --timeline-local-delay: calc(var(--timeline-anim-frame) * 0.75 + var(--timeline-anim-letters));
  }
  @keyframes scaleXIn {
    from {
      transform: scaleX(0);
    }
  }
  @keyframes scaleIn {
    from {
      transform: scaleY(0) scaleX(0.6667);
    }
  }
  @keyframes pathIn {
    from {
      stroke-dashoffset: 100;
    }
  }
  @keyframes textIn {
    from {
      transform: translateY(100%) rotate(10deg);
    }
  }
  @keyframes fadeIn {
    from {
      fill-opacity: 0;
    }
  }
  @keyframes clockIn {
    from {
      transform: rotate(var(--a, 30deg));
      fill-opacity: 0;
    }
    0.1% {
      fill-opacity: 1;
    }
  }
  .top-company .wrapper .inner .box-wrapper .box .soc-logo__wrapper [hidden] {
    display: none !important;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 TOP-RECRUIT 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.top-recruit {
  width: 100%;
  padding: 50px 0 170px 0;
  position: relative;
  background: url(../images/top-recruit-bg.jpg) no-repeat 0 center;
  background-size: cover;
  overflow: hidden;
}
.top-recruit .back {
  font-family: "Syncopate";
  position: absolute;
  color: transparent;
  -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
  bottom: 0;
  right: 0;
  letter-spacing: 4px;
  line-height: 0.7;
  font-weight: 700;
  font-size: 100px;
  z-index: 5;
  white-space: nowrap;
}
.top-recruit::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  justify-content: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: hard-light;
  z-index: 1;
  animation: top-recruit-bg 3s linear infinite;
  animation-direction: alternate;
}
@keyframes top-recruit-bg {
  0% {
    background: rgba(0, 0, 0, 0.5);
  }
  50% {
    background: rgba(0, 0, 0, 0.2);
  }
  100% {
    background: rgba(0, 0, 0, 0.7);
  }
}
.top-recruit .wrapper {
  position: relative;
  z-index: 3;
}
.top-recruit .wrapper .inner .title {
  padding: 80px 0 0 5%;
}
.top-recruit .wrapper .inner .title h3 {
  font-family: "Syncopate", sans-serif;
  color: transparent;
  -webkit-text-stroke: #fff;
  -webkit-text-stroke-width: 1px;
  font-weight: 700;
  line-height: 1.2;
  font-size: 35px;
}
.top-recruit .wrapper .inner .title h2 {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 6px;
  font-size: 58px;
  color: #fff;
  line-height: 1.2;
  margin: 0px 0 0 0;
}
.top-recruit .wrapper .inner .box-wrapper {
  display: inline-flex;
  padding: 60px 5% 60px 5%;
  width: 100%;
  text-align: center;
  justify-content: center;
  align-items: stretch;
}
.top-recruit .wrapper .inner .box-wrapper .box {
  display: inline-block;
  margin: 0 40px 0 0;
  position: relative;
  padding: 10px 45px 10px 45px;
}
.top-recruit .wrapper .inner .box-wrapper .box::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  justify-content: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: hard-light;
  z-index: 1;
  animation: top-recruit-box-bg 3s linear infinite;
  animation-direction: alternate;
}
@keyframes top-recruit-box-bg {
  0% {
    background: rgba(0, 0, 0, 0.4);
  }
  50% {
    background: rgba(0, 0, 0, 0.2);
  }
  100% {
    background: rgba(0, 0, 0, 0.2);
  }
}
.top-recruit .wrapper .inner .box-wrapper .box .inside {
  position: relative;
  z-index: 2;
}
.top-recruit .wrapper .inner .box-wrapper .box .inside .main {
  color: #fff;
  text-align: center;
  font-family: "Iceberg", cursive;
  letter-spacing: 3px;
  line-height: 1.1;
  font-size: 58px;
}
.top-recruit .wrapper .inner .box-wrapper .box .inside .main .middle {
  font-size: 49px;
}
.top-recruit .wrapper .inner .box-wrapper .box .inside .detail {
  color: #fff;
  text-align: center;
  font-family: "Iceberg", cursive;
  letter-spacing: 6px;
  line-height: 1.1;
  font-size: 20px;
}
.top-recruit .wrapper .inner .box-wrapper .box:last-child {
  margin: 0 0 0 0;
}
.top-recruit .wrapper .inner .bottom {
  padding: 0 5% 0 5%;
}
.top-recruit .wrapper .inner .bottom .button {
  margin: 0px 0px 0 0;
  text-align: right;
}
.top-recruit .wrapper .inner .bottom .button a {
  text-decoration: none;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.top-recruit .wrapper .inner .bottom .button a .icon {
  line-height: 0;
  width: 90px;
  margin: 0 20px 0 0;
}
.top-recruit .wrapper .inner .bottom .button a .icon img {
  width: 100%;
  height: auto;
}
.top-recruit .wrapper .inner .bottom .button a .catch .en {
  font-family: "Syncopate", sans-serif;
  font-weight: 500;
  letter-spacing: 6px;
  font-size: 28px;
}
.top-recruit .wrapper .inner .bottom .button a .catch .jp {
  font-family: source-han-sans-japanese, sans-serif;
  letter-spacing: 3px;
  font-size: 17px;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  .top-recruit {
    width: 100%;
    padding: 50px 0 170px 0;
  }
  .top-recruit .back {
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    bottom: 0;
    right: 0;
    letter-spacing: 4px;
    line-height: 0.7;
    font-size: 7vw;
  }
  .top-recruit::before {
    animation: top-recruit-bg 3s linear infinite;
  }
  @keyframes top-recruit-bg {
    0% {
      background: rgba(0, 0, 0, 0.5);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.7);
    }
  }
  .top-recruit .wrapper .inner .title {
    padding: 80px 0 0 5%;
  }
  .top-recruit .wrapper .inner .title h3 {
    -webkit-text-stroke-width: 1px;
    line-height: 1.2;
    font-size: 3.5vw;
  }
  .top-recruit .wrapper .inner .title h2 {
    letter-spacing: 6px;
    font-size: 5.8vw;
    line-height: 1.2;
    margin: 0px 0 0 0;
  }
  .top-recruit .wrapper .inner .box-wrapper {
    padding: 60px 2% 60px 2%;
    width: 100%;
  }
  .top-recruit .wrapper .inner .box-wrapper .box {
    display: inline-block;
    margin: 0 20px 0 0;
    position: relative;
    padding: 10px 25px 10px 25px;
  }
  .top-recruit .wrapper .inner .box-wrapper .box::before {
    animation: top-recruit-box-bg 3s linear infinite;
  }
  @keyframes top-recruit-box-bg {
    0% {
      background: rgba(0, 0, 0, 0.4);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.2);
    }
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main {
    letter-spacing: 3px;
    line-height: 1.1;
    font-size: 4.5vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main .middle {
    font-size: 3.75vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .detail {
    letter-spacing: 4px;
    line-height: 1.1;
    font-size: 2vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box:last-child {
    margin: 0 0 0 0;
  }
  .top-recruit .wrapper .inner .bottom {
    padding: 0 5% 0 5%;
  }
  .top-recruit .wrapper .inner .bottom .button {
    margin: 0px 0px 0 0;
    text-align: right;
  }
  .top-recruit .wrapper .inner .bottom .button a {
    text-decoration: none;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon {
    line-height: 0;
    width: 8vw;
    margin: 0 20px 0 0;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .en {
    letter-spacing: 4px;
    font-size: 2.75vw;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 1.7vw;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .top-recruit {
    width: 100%;
    padding: 50px 0 170px 0;
  }
  .top-recruit .back {
    -webkit-text-stroke: rgb(220, 220, 220) 1.5px;
    bottom: 0;
    right: 0;
    letter-spacing: 4px;
    line-height: 0.7;
    font-size: 7vw;
  }
  .top-recruit .back .sp-disblock {
    display: none;
  }
  .top-recruit .back .sp-none {
    display: inline;
  }
  .top-recruit::before {
    animation: top-recruit-bg 3s linear infinite;
  }
  @keyframes top-recruit-bg {
    0% {
      background: rgba(0, 0, 0, 0.5);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.7);
    }
  }
  .top-recruit .wrapper .inner .title {
    padding: 80px 0 0 5%;
  }
  .top-recruit .wrapper .inner .title h3 {
    -webkit-text-stroke-width: 1px;
    line-height: 1.2;
    font-size: 3.5vw;
  }
  .top-recruit .wrapper .inner .title h2 {
    letter-spacing: 6px;
    font-size: 5.8vw;
    line-height: 1.2;
    margin: 0px 0 0 0;
  }
  .top-recruit .wrapper .inner .box-wrapper {
    padding: 60px 2% 60px 2%;
    width: 100%;
  }
  .top-recruit .wrapper .inner .box-wrapper .box {
    display: inline-block;
    margin: 0 20px 0 0;
    position: relative;
    padding: 10px 25px 10px 25px;
  }
  .top-recruit .wrapper .inner .box-wrapper .box::before {
    animation: top-recruit-box-bg 3s linear infinite;
  }
  @keyframes top-recruit-box-bg {
    0% {
      background: rgba(0, 0, 0, 0.4);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.2);
    }
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main {
    letter-spacing: 3px;
    line-height: 1.1;
    font-size: 4.5vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main .middle {
    font-size: 3.75vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .detail {
    letter-spacing: 4px;
    line-height: 1.1;
    font-size: 2vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box:last-child {
    margin: 0 0 0 0;
  }
  .top-recruit .wrapper .inner .bottom {
    padding: 0 5% 0 5%;
  }
  .top-recruit .wrapper .inner .bottom .button {
    margin: 0px 0px 0 0;
    text-align: right;
  }
  .top-recruit .wrapper .inner .bottom .button a {
    text-decoration: none;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon {
    line-height: 0;
    width: 8vw;
    margin: 0 20px 0 0;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .en {
    letter-spacing: 4px;
    font-size: 2.75vw;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .en .sp-disblock {
    display: none;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .en .sp-none {
    display: inline;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 1.7vw;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .top-recruit {
    padding: 50px 0 170px 0;
    background: url(../images/top-recruit-bg.jpg) no-repeat 0 center;
    background-size: cover;
  }
  .top-recruit .back {
    letter-spacing: 4px;
    line-height: 1;
    font-size: 12vw;
    text-align: right;
  }
  .top-recruit::before {
    content: "";
    animation: top-recruit-bg 3s linear infinite;
    animation-direction: alternate;
  }
  @keyframes top-recruit-bg {
    0% {
      background: rgba(0, 0, 0, 0.5);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.7);
    }
  }
  .top-recruit .wrapper .inner .title {
    padding: 20px 0 0 5%;
  }
  .top-recruit .wrapper .inner .title h3 {
    -webkit-text-stroke-width: 1px;
    line-height: 1.2;
    font-size: 6vw;
  }
  .top-recruit .wrapper .inner .title h2 {
    letter-spacing: 3px;
    font-size: 9vw;
    line-height: 1.2;
    margin: 0px 0 0 0;
  }
  .top-recruit .wrapper .inner .box-wrapper {
    display: block;
    padding: 10px 5% 60px 5%;
    width: 100%;
  }
  .top-recruit .wrapper .inner .box-wrapper .box {
    display: block;
    margin: 30px auto 0;
    padding: 10px 25px 10px 25px;
  }
  .top-recruit .wrapper .inner .box-wrapper .box::before {
    animation: top-recruit-box-bg 3s linear infinite;
    animation-direction: alternate;
  }
  @keyframes top-recruit-box-bg {
    0% {
      background: rgba(0, 0, 0, 0.4);
    }
    50% {
      background: rgba(0, 0, 0, 0.2);
    }
    100% {
      background: rgba(0, 0, 0, 0.2);
    }
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main {
    letter-spacing: 3px;
    line-height: 1.1;
    font-size: 11vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .main .middle {
    font-size: 9vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box .inside .detail {
    letter-spacing: 6px;
    line-height: 1.1;
    font-size: 4vw;
  }
  .top-recruit .wrapper .inner .box-wrapper .box:last-child {
    margin: 30px auto 0;
  }
  .top-recruit .wrapper .inner .bottom {
    padding: 0 5% 0 5%;
  }
  .top-recruit .wrapper .inner .bottom .button {
    margin: 0px 0px 0 0;
    text-align: left;
  }
  .top-recruit .wrapper .inner .bottom .button a {
    display: flex;
    justify-content: center;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon {
    line-height: 0;
    width: 14vw;
    margin: 0 20px 0 0;
  }
  .top-recruit .wrapper .inner .bottom .button a .icon img {
    width: 100%;
    height: auto;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .en {
    letter-spacing: 6px;
    font-size: 6vw;
  }
  .top-recruit .wrapper .inner .bottom .button a .catch .jp {
    letter-spacing: 3px;
    font-size: 4vw;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 CTA 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.cta {
  margin: 0;
  width: 100%;
  height: calc(90vh + 50px);
}
.cta .wrapper {
  background: linear-gradient(57deg, #3d072a, #1f1553, #202060, #1f4287, #602080, #990d56, #7d0860);
  background-size: 400%;
  animation: cta03-grad 3s linear infinite;
  animation-direction: alternate;
  width: 100%;
  height: 100%;
  margin: 0 auto 0;
  padding: 50px 50px 50px 50px;
  display: flex;
  align-self: center;
  justify-content: center;
}
@keyframes cta03-grad {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.cta #cta-view {
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  touch-action: pan-up;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
}
.cta #cta-view .text {
  position: relative;
  z-index: 4;
  padding: 50px 0 0 0;
}
.cta #cta-view .text h3 {
  text-align: center;
  font-family: "Syncopate", sans-serif;
  color: transparent;
  -webkit-text-stroke: #fff;
  -webkit-text-stroke-width: 1px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 3px;
  font-size: 30px;
}
.cta #cta-view .text h2 {
  text-align: center;
  color: #fff;
  font-family: "Syncopate", sans-serif;
  color: "fff";
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 15px;
  font-size: 90px;
}
.cta #cta-view .text .sentence p {
  text-align: center;
  color: #fff;
  font-family: "Iceberg", cursive;
  letter-spacing: 8px;
  font-size: 26px;
}
.cta #cta-view .text .button {
  text-align: center;
  margin: 50px 0 0 0;
}
.cta #cta-view .text .button a {
  font-weight: 700;
  font-family: "Syncopate", sans-serif;
  position: relative;
  display: inline-block;
  padding: 25px 60px;
  margin: 0px 0 0 0;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.5s;
  letter-spacing: 4px;
  overflow: hidden;
  font-size: 25px;
}
.cta #cta-view .text .button a:hover {
  background: linear-gradient(57deg, #1f4287, #602080, #990d56, #7d0860);
  color: #fff;
  -webkit-box-reflect: below 1px linear-gradient(transparent, rgba(0, 0, 0, 0.3333333333));
}
.cta #cta-view .text .button a span {
  position: absolute;
  display: block;
}
.cta #cta-view .text .button a span:nth-child(1) {
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #fff);
  animation: animate1 1s linear infinite;
}
@keyframes animate1 {
  0% {
    left: -100%;
  }
  50%, 100% {
    left: 100%;
  }
}
.cta #cta-view .text .button a span:nth-child(2) {
  top: -100%;
  right: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(180deg, transparent, #fff);
  animation: animate2 1s linear infinite;
  animation-delay: 0.25s;
}
@keyframes animate2 {
  0% {
    top: -100%;
  }
  50%, 100% {
    top: 100%;
  }
}
.cta #cta-view .text .button a span:nth-child(3) {
  bottom: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(270deg, transparent, #fff);
  animation: animate3 1s linear infinite;
  animation-delay: 0.5s;
}
@keyframes animate3 {
  0% {
    right: -100%;
  }
  50%, 100% {
    right: 100%;
  }
}
.cta #cta-view .text .button a span:nth-child(4) {
  bottom: -100%;
  left: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(360deg, transparent, #fff);
  animation: animate4 1s linear infinite;
  animation-delay: 0.75s;
}
@keyframes animate4 {
  0% {
    bottom: -100%;
  }
  50%, 100% {
    bottom: 100%;
  }
}
.cta #cta-view canvas {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  opacity: 0.9;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
  .cta {
    height: calc(90vh + 50px);
  }
  .cta .wrapper {
    padding: 50px 50px 50px 50px;
  }
  @keyframes cta03-grad {
    0% {
      background-position: 0% 50%;
    }
    50% {
      background-position: 100% 50%;
    }
    100% {
      background-position: 0% 50%;
    }
  }
  .cta #cta-view .text {
    padding: 50px 0 0 0;
  }
  .cta #cta-view .text h3 {
    letter-spacing: 3px;
    font-size: 2.5vw;
  }
  .cta #cta-view .text h2 {
    line-height: 1.2;
    letter-spacing: 15px;
    font-size: 5.5vw;
  }
  .cta #cta-view .text .sentence p {
    letter-spacing: 8px;
    font-size: 2.35vw;
  }
  .cta #cta-view .text .button {
    margin: 50px 0 0 0;
  }
  .cta #cta-view .text .button a {
    padding: 25px 40px;
    margin: 0px 0 0 0;
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.5s;
    letter-spacing: 4px;
    font-size: 2.35vw;
  }
  .cta #cta-view .text .button a:hover {
    color: #fff;
    -webkit-box-reflect: below 1px linear-gradient(transparent, rgba(0, 0, 0, 0.3333333333));
  }
  .cta #cta-view .text .button a span {
    position: absolute;
    display: block;
  }
  .cta #cta-view .text .button a span:nth-child(1) {
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    animation: animate1 1s linear infinite;
  }
  @keyframes animate1 {
    0% {
      left: -100%;
    }
    50%, 100% {
      left: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(2) {
    top: -100%;
    right: 0;
    width: 2px;
    height: 100%;
    animation: animate2 1s linear infinite;
    animation-delay: 0.25s;
  }
  @keyframes animate2 {
    0% {
      top: -100%;
    }
    50%, 100% {
      top: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(3) {
    bottom: 0;
    right: 0;
    width: 100%;
    height: 2px;
    animation: animate3 1s linear infinite;
    animation-delay: 0.5s;
  }
  @keyframes animate3 {
    0% {
      right: -100%;
    }
    50%, 100% {
      right: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(4) {
    bottom: -100%;
    left: 0;
    width: 2px;
    height: 100%;
    animation: animate4 1s linear infinite;
    animation-delay: 0.75s;
  }
  @keyframes animate4 {
    0% {
      bottom: -100%;
    }
    50%, 100% {
      bottom: 100%;
    }
  }
  .cta #cta-view canvas {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    opacity: 0.9;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1024px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .cta {
    height: calc(60vh + 50px);
  }
  .cta .wrapper {
    padding: 50px 50px 50px 50px;
  }
  @keyframes cta03-grad {
    0% {
      background-position: 0% 50%;
    }
    50% {
      background-position: 100% 50%;
    }
    100% {
      background-position: 0% 50%;
    }
  }
  .cta #cta-view .text {
    padding: 50px 0 0 0;
  }
  .cta #cta-view .text h3 {
    letter-spacing: 3px;
    font-size: 3vw;
  }
  .cta #cta-view .text h2 {
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 15px;
    font-size: 7vw;
  }
  .cta #cta-view .text .sentence p {
    letter-spacing: 8px;
    font-size: 2.35vw;
  }
  .cta #cta-view .text .button {
    margin: 50px 0 0 0;
  }
  .cta #cta-view .text .button a {
    padding: 25px 50px;
    margin: 0px 0 0 0;
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.5s;
    letter-spacing: 4px;
    font-size: 2.5vw;
  }
  .cta #cta-view .text .button a:hover {
    color: #fff;
    -webkit-box-reflect: below 1px linear-gradient(transparent, rgba(0, 0, 0, 0.3333333333));
  }
  .cta #cta-view .text .button a span {
    position: absolute;
    display: block;
  }
  .cta #cta-view .text .button a span:nth-child(1) {
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    animation: animate1 1s linear infinite;
  }
  @keyframes animate1 {
    0% {
      left: -100%;
    }
    50%, 100% {
      left: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(2) {
    top: -100%;
    right: 0;
    width: 2px;
    height: 100%;
    animation: animate2 1s linear infinite;
    animation-delay: 0.25s;
  }
  @keyframes animate2 {
    0% {
      top: -100%;
    }
    50%, 100% {
      top: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(3) {
    bottom: 0;
    right: 0;
    width: 100%;
    height: 2px;
    animation: animate3 1s linear infinite;
    animation-delay: 0.5s;
  }
  @keyframes animate3 {
    0% {
      right: -100%;
    }
    50%, 100% {
      right: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(4) {
    bottom: -100%;
    left: 0;
    width: 2px;
    height: 100%;
    animation: animate4 1s linear infinite;
    animation-delay: 0.75s;
  }
  @keyframes animate4 {
    0% {
      bottom: -100%;
    }
    50%, 100% {
      bottom: 100%;
    }
  }
  .cta #cta-view canvas {
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    opacity: 0.9;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .cta {
    margin: 0;
    width: 100%;
    height: calc(80vh + 6vw);
  }
  .cta .wrapper {
    background: linear-gradient(57deg, #3d072a, #1f1553, #202060, #1f4287, #602080, #990d56, #7d0860);
    background-size: 400%;
    animation: cta03-grad 3s linear infinite;
    padding: 6vw;
  }
  @keyframes cta03-grad {
    0% {
      background-position: 0% 50%;
    }
    50% {
      background-position: 100% 50%;
    }
    100% {
      background-position: 0% 50%;
    }
  }
  .cta #cta-view {
    margin: 0;
    width: 100%;
    height: 100%;
  }
  .cta #cta-view .text {
    position: relative;
    z-index: 4;
    padding: 50px 0 0 0;
  }
  .cta #cta-view .text h3 {
    -webkit-text-stroke-width: 1px;
    line-height: 1.2;
    letter-spacing: 3px;
    font-size: 5.5ve;
  }
  .cta #cta-view .text h2 {
    line-height: 1.2;
    letter-spacing: 12px;
    font-size: 14vw;
    margin: 20px 0 0 0;
  }
  .cta #cta-view .text .sentence p {
    letter-spacing: 6px;
    font-size: 4.5vw;
  }
  .cta #cta-view .text .button {
    text-align: center;
    margin: 30px 0 0 0;
  }
  .cta #cta-view .text .button a {
    padding: 20px 40px;
    margin: 0px 0 0 0;
    letter-spacing: 2px;
    font-size: 5vw;
  }
  .cta #cta-view .text .button a:hover {
    -webkit-box-reflect: below 1px linear-gradient(transparent, rgba(0, 0, 0, 0.3333333333));
  }
  .cta #cta-view .text .button a span {
    position: absolute;
    display: block;
  }
  .cta #cta-view .text .button a span:nth-child(1) {
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    animation: animate1 1s linear infinite;
  }
  @keyframes animate1 {
    0% {
      left: -100%;
    }
    50%, 100% {
      left: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(2) {
    top: -100%;
    right: 0;
    width: 2px;
    height: 100%;
    animation: animate2 1s linear infinite;
    animation-delay: 0.25s;
  }
  @keyframes animate2 {
    0% {
      top: -100%;
    }
    50%, 100% {
      top: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(3) {
    bottom: 0;
    right: 0;
    width: 100%;
    height: 2px;
    animation: animate3 1s linear infinite;
    animation-delay: 0.5s;
  }
  @keyframes animate3 {
    0% {
      right: -100%;
    }
    50%, 100% {
      right: 100%;
    }
  }
  .cta #cta-view .text .button a span:nth-child(4) {
    bottom: -100%;
    left: 0;
    width: 2px;
    height: 100%;
    animation: animate4 1s linear infinite;
    animation-delay: 0.75s;
  }
  @keyframes animate4 {
    0% {
      bottom: -100%;
    }
    50%, 100% {
      bottom: 100%;
    }
  }
  .cta #cta-view canvas {
    opacity: 0.9;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/*===================================================================================================
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

〇 FOOTER 〇

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
====================================================================================================*/
.footer {
  margin: 0px 0 0 0;
  background: #000;
  padding: 50px 0 0 0;
  position: relative;
}
.footer .circle-wrapper {
  display: flex;
  justify-content: flex-end;
  margin: 0px 0 0 0;
  padding: 0 5% 0 0;
  position: relative;
  z-index: 10;
}
.footer .circle-wrapper svg#circle-circle {
  height: auto;
  max-width: 100%;
  width: 300px;
  font-family: "Iceberg", cursive;
  letter-spacing: 2px;
}
.footer .text-path-wrapper {
  margin: -80px 0 0 0;
}
.footer .text-path-wrapper svg {
  position: relative;
  z-index: 5;
}
.footer .text-path-wrapper svg text {
  fill: #fff;
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  font-size: 54px;
  white-space: pre;
}
.footer .wrapper {
  overflow: hidden;
  position: relative;
  padding: 0px 0 0 0;
  z-index: 3;
}
.footer .wrapper .content .top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5% 0 5%;
}
.footer .wrapper .content .top .left .logo p a {
  text-decoration: none;
  color: #fff;
  font-family: "Iceberg", cursive;
  font-weight: normal;
  letter-spacing: 2px;
  font-size: 45px;
}
.footer .wrapper .content .top .left .address {
  margin: 30px 0 0 0;
  color: #fff;
  font-size: 16px;
}
.footer .wrapper .content .top .left .address .place {
  margin: 20px 0 0 0;
}
.footer .wrapper .content .top .left .address .place p.en {
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
}
.footer .wrapper .content .top .right {
  width: 1000px;
  display: flex;
  flex-direction: column;
}
.footer .wrapper .content .top .right nav ul {
  display: flex;
  align-items: center;
  list-style-type: none;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  justify-content: flex-end;
}
.footer .wrapper .content .top .right nav ul li {
  padding: 0 17px 0 17px;
}
.footer .wrapper .content .top .right nav ul li a {
  text-decoration: none;
  color: #fff;
  font-family: "Syncopate", sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: 20px;
}
.footer .wrapper .content .top .right .explain {
  margin: 50px 0 0 0;
  padding: 0 17px 0 17px;
}
.footer .wrapper .content .top .right .explain p {
  color: #fff;
  letter-spacing: 1px;
  line-height: 1.8;
  font-size: 12px;
}
.footer .wrapper .content .bottom ul {
  list-style-type: none;
  border-top: solid 1px #ccc;
  width: 90%;
  margin: 60px auto 0;
  padding: 0 0 0 0;
  display: flex;
  justify-content: space-between;
}
.footer .wrapper .content .bottom ul li {
  font-family: "Syncopate", sans-serif;
  color: #fff;
  font-weight: 500;
  letter-spacing: 4px;
  font-size: 15px;
  padding: 10px 0 5px 0;
}
.footer .wrapper .content .bottom ul li a {
  text-decoration: none;
  color: #fff;
}
.footer #scene-footer {
  position: absolute;
  width: 100%;
  overflow: hidden;
  bottom: 0;
  left: 0;
  z-index: 2;
}

/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 1024px～1280px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 1024px) and (max-width: 1280px) {
  .footer {
    padding: 50px 0 0 0;
    position: relative;
  }
  .footer .circle-wrapper {
    display: flex;
    justify-content: flex-end;
    margin: 0px 0 0 0;
    padding: 0 5% 0 0;
    position: relative;
    z-index: 10;
  }
  .footer .circle-wrapper svg#circle-circle {
    height: auto;
    max-width: 100%;
    width: 27.5vw;
    font-family: "Iceberg", cursive;
    letter-spacing: 2px;
  }
  .footer .text-path-wrapper {
    margin: -80px 0 0 0;
  }
  .footer .text-path-wrapper svg {
    position: relative;
    z-index: 5;
  }
  .footer .text-path-wrapper svg text {
    fill: #fff;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-size: 4vw;
    white-space: pre;
  }
  .footer .wrapper .content .top {
    padding: 0 5% 0 5%;
    display: block;
  }
  .footer .wrapper .content .top .left {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .footer .wrapper .content .top .left .logo {
    margin: 0 30px 0 0;
  }
  .footer .wrapper .content .top .left .logo p {
    text-align: center;
  }
  .footer .wrapper .content .top .left .logo p a {
    letter-spacing: 2px;
    font-size: 4vw;
  }
  .footer .wrapper .content .top .left .address {
    margin: 0px 0 0 0;
    color: #fff;
    font-size: 16px;
  }
  .footer .wrapper .content .top .right {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 30px 0 0 0;
  }
  .footer .wrapper .content .top .right nav ul {
    display: flex;
    align-items: center;
    list-style-type: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    justify-content: center;
  }
  .footer .wrapper .content .top .right nav ul li {
    padding: 0 12px 0 12px;
  }
  .footer .wrapper .content .top .right nav ul li a {
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 1.85vw;
  }
  .footer .wrapper .content .top .right .explain {
    margin: 50px 0 0 0;
    padding: 0 17px 0 17px;
  }
  .footer .wrapper .content .top .right .explain p {
    letter-spacing: 1px;
    line-height: 1.8;
    font-size: 1.35vw;
  }
  .footer .wrapper .content .bottom ul {
    width: 90%;
    margin: 60px auto 0;
  }
  .footer .wrapper .content .bottom ul li {
    letter-spacing: 4px;
    font-size: 1.5vw;
    padding: 10px 0 5px 0;
  }
  .footer .wrapper .content .bottom ul li a {
    color: #fff;
  }
  .footer #scene-footer {
    bottom: 0;
    left: 0;
    z-index: 2;
  }
} /* 1024px～1280px responsive-close



/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □  

◆	Stylesheet: 768px～1023px(iPad縦からiPad横)までのモニタで適用	◆

start----------------------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .footer {
    padding: 50px 0 0 0;
    position: relative;
  }
  .footer .circle-wrapper {
    display: flex;
    justify-content: flex-end;
    margin: 0px 0 0 0;
    padding: 0 5% 0 0;
    position: relative;
    z-index: 10;
  }
  .footer .circle-wrapper svg#circle-circle {
    height: auto;
    max-width: 100%;
    width: 27.5vw;
    font-family: "Iceberg", cursive;
    letter-spacing: 2px;
  }
  .footer .text-path-wrapper {
    margin: -80px 0 0 0;
  }
  .footer .text-path-wrapper svg {
    position: relative;
    z-index: 5;
  }
  .footer .text-path-wrapper svg text {
    fill: #fff;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-size: 4vw;
    white-space: pre;
  }
  .footer .wrapper .content .top {
    padding: 0 5% 0 5%;
    display: block;
  }
  .footer .wrapper .content .top .left {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .footer .wrapper .content .top .left .logo {
    margin: 0 30px 0 0;
  }
  .footer .wrapper .content .top .left .logo p {
    text-align: center;
  }
  .footer .wrapper .content .top .left .logo p a {
    letter-spacing: 2px;
    font-size: 4vw;
  }
  .footer .wrapper .content .top .left .address {
    margin: 0px 0 0 0;
    color: #fff;
    font-size: 16px;
  }
  .footer .wrapper .content .top .right {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 30px 0 0 0;
  }
  .footer .wrapper .content .top .right nav ul {
    display: flex;
    align-items: center;
    list-style-type: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    justify-content: center;
  }
  .footer .wrapper .content .top .right nav ul li {
    padding: 0 12px 0 12px;
  }
  .footer .wrapper .content .top .right nav ul li a {
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 1.85vw;
  }
  .footer .wrapper .content .top .right .explain {
    margin: 50px 0 0 0;
    padding: 0 17px 0 17px;
  }
  .footer .wrapper .content .top .right .explain p {
    letter-spacing: 1px;
    line-height: 1.8;
    font-size: 1.35vw;
  }
  .footer .wrapper .content .bottom ul {
    width: 90%;
    margin: 60px auto 0;
  }
  .footer .wrapper .content .bottom ul li {
    letter-spacing: 4px;
    font-size: 1.5vw;
    padding: 10px 0 5px 0;
  }
  .footer .wrapper .content .bottom ul li a {
    color: #fff;
  }
  .footer #scene-footer {
    bottom: 0;
    left: 0;
    z-index: 2;
  }
} /* 768px～1023px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 

◆	Stylesheet: 767pxまで(スマホ)のモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .footer {
    padding: 15px 0 0 0;
    position: relative;
  }
  .footer .circle-wrapper {
    display: flex;
    justify-content: flex-end;
    margin: 0px 0 0 0;
    padding: 0 5% 0 0;
    position: relative;
    z-index: 10;
  }
  .footer .circle-wrapper svg#circle-circle {
    height: auto;
    max-width: 100%;
    width: 40vw;
    font-family: "Iceberg", cursive;
    letter-spacing: 2px;
  }
  .footer .text-path-wrapper {
    margin: -40px 0 0 0;
  }
  .footer .text-path-wrapper svg {
    position: relative;
    z-index: 5;
  }
  .footer .text-path-wrapper svg text {
    fill: #fff;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    font-size: 54px;
    white-space: pre;
  }
  .footer .wrapper {
    overflow: hidden;
    position: relative;
    padding: 50px 0 0 0;
    z-index: 3;
  }
  .footer .wrapper .content .top {
    display: block;
    padding: 0px 8% 0 8%;
  }
  .footer .wrapper .content .top .left .logo p {
    text-align: center;
  }
  .footer .wrapper .content .top .left .logo p a {
    letter-spacing: 2px;
    font-size: 9vw;
  }
  .footer .wrapper .content .top .left .address {
    margin: 30px 0 0 0;
    font-size: 16px;
  }
  .footer .wrapper .content .top .right {
    width: 100%;
    display: block;
    padding: 20px 0 0 0;
  }
  .footer .wrapper .content .top .right nav ul {
    display: block;
  }
  .footer .wrapper .content .top .right nav ul li {
    padding: 5px 0px 5px 0px;
  }
  .footer .wrapper .content .top .right nav ul li a {
    text-decoration: none;
    color: #fff;
    font-family: "Syncopate", sans-serif;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 20px;
  }
  .footer .wrapper .content .top .right .explain {
    margin: 50px 0 0 0;
    padding: 0 0px 0 0px;
  }
  .footer .wrapper .content .top .right .explain p {
    letter-spacing: 1px;
    line-height: 2.2;
    font-size: 3vw;
    background: rgba(0, 0, 0, 0.5);
    padding: 20px 20px 20px 20px;
  }
  .footer .wrapper .content .bottom {
    padding: 0 0 300px 0;
  }
  .footer .wrapper .content .bottom ul {
    list-style-type: none;
    width: 88%;
    margin: 60px auto 0;
    display: block;
  }
  .footer .wrapper .content .bottom ul li {
    font-weight: 500;
    letter-spacing: 4px;
    font-size: 3vw;
    padding: 0px 0 0px 0;
    text-align: center;
    margin: 10px 0 0 0;
  }
  .footer .wrapper .content .bottom ul li a {
    display: inline-block;
    background: rgba(0, 0, 0, 0.8);
    padding: 0 20px 0 20px;
  }
  .footer .wrapper .content .bottom ul li span {
    display: inline-block;
    background: rgba(0, 0, 0, 0.8);
    padding: 0 20px 0 20px;
  }
  .footer #scene-footer {
    position: absolute;
    width: 100%;
    overflow: hidden;
    bottom: 0;
    left: 0;
    z-index: 2;
  }
} /* 767px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/**********************************************************************************
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □   

◆	Stylesheet: さらに刻んで320pxまでのモニタで適用	◆

□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
start----------------------------------------------------------------------------*/
/* 320px responsive-closed */
/*end ----------------------------------------------------------------------------
□ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 
**********************************************************************************/
/* breakpoints *//*# sourceMappingURL=top.css.map */