@charset "UTF-8";
.robot {
  font-family: "Roboto", sans-serif;
}

.noto {
  font-family: "Noto Serif JP", serif;
}

.RoNow {
  font-family: "ナウ-GM", "NOW-GM";
}

/*==================================================================
オフィスでストレッチTOP
===================================================================*/
.pageHeader {
  background: url(../img/stretch/bg_base.svg) repeat;
  background-position: center center;
  background-size: 80px 80px;
  height: auto;
  padding: 60px 10px 200px;
  margin-bottom: 0;
}
@media only screen and (max-width: 640px) {
  .pageHeader {
    padding: 40px 0 140px;
  }
}
.pageHeader .main_v .top_lead {
  text-align: center;
  padding: 40px 0 60px;
  font-size: clamp(1.4rem, 2vw, 2rem);
}
.pageHeader .main_v .flexArea {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
  max-width: 480px;
  margin: 0 auto;
}
.pageHeader .main_v .flexArea figure {
  width: 150px;
}
.pageHeader .main_v .flexArea figure img {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
.pageHeader .main_v .flexArea .bx_txt {
  width: calc(100% - 190px);
}
@media only screen and (max-width: 640px) {
  .pageHeader .main_v .top_lead {
    font-size: clamp(1.3rem, 3.4vw, 1.6rem);
  }
  .pageHeader .main_v .flexArea {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    font-size: clamp(1.4rem, 2vw, 1.6rem);
  }
  .pageHeader .main_v .flexArea figure {
    width: 80%;
  }
  .pageHeader .main_v .flexArea .bx_txt {
    width: 100%;
    text-align: center;
  }
}

#wrapperContent #content main article section h2.stretch_ttl {
  font-size: 3.6rem;
  font-weight: 500;
  text-align: center;
  max-width: 800px;
  margin: -120px auto 0;
  padding: 15px 20px 30px;
  position: relative;
  color: #fff;
  border-radius: 20px 20px 0 0;
  z-index: 3;
  box-shadow: 0 -8px 10px rgba(0, 0, 0, 0.3);
}
#wrapperContent #content main article section h2.stretch_ttl::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 7.5px 0 7.5px;
  border-color: #fff transparent transparent transparent;
}
@media only screen and (min-width: 641px) and (max-width: 1039px) {
  #wrapperContent #content main article section h2.stretch_ttl {
    max-width: 600px;
  }
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content main article section h2.stretch_ttl {
    font-size: 2.4rem;
    margin: -80px auto 0;
    max-width: 300px;
    padding: 10px 20px 25px;
  }
  #wrapperContent #content main article section h2.stretch_ttl::before {
    bottom: 0;
    border-width: 14px 4.5px 0 4.5px;
  }
}
#wrapperContent #content main article #stretch h2 {
  background: #004ea2;
}
#wrapperContent #content main article #stretch .stretch_area {
  background: #004ea2;
  box-shadow: 3px -6px 10px rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 80px 20px;
}
#wrapperContent #content main article #stretch .stretch_area .coming {
  text-align: center;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  margin: 0 auto 80px;
}
#wrapperContent #content main article #stretch .stretch_area .coming01 {
  text-align: center;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  margin: 80px auto 50px;
}
#wrapperContent #content main article #stretch .stretch_area .coming01 strong {
  font-size: 6rem;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li {
  width: calc((100% - 80px) / 3);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .bg_bx {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff;
  left: 0;
  top: -1px;
  z-index: 4;
  border: 5px solid #004ea2;
  transition: all 0.3s ease;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 93%, 87% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 93%, 87% 100%, 0% 100%);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .in_bx {
  position: relative;
  z-index: 5;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s {
  position: absolute;
  inset: 0;
  background: #fff;
  /* ← 白い段差のために必須 */
  z-index: -1;
  display: block;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s1 {
  z-index: -1;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
  transform: translate(0px, 0px);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s2 {
  z-index: -2;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.1);
  transform: translate(2px, 2px);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s3 {
  z-index: -3;
  box-shadow: 6px 6px 4px rgba(0, 0, 0, 0.1);
  transform: translate(4px, 4px);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s4 {
  z-index: -4;
  box-shadow: 8px 8px 4px rgba(0, 0, 0, 0.1);
  transform: translate(6px, 6px);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .s5 {
  z-index: -5;
  box-shadow: 10px 10px 4px rgba(0, 0, 0, 0.1);
  transform: translate(8px, 8px);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .ring {
  margin: -50px 0 20px 5px;
  max-width: 92%;
  position: relative;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .number {
  width: 60%;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li figure {
  margin: -40px auto 10px;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li figure img.before {
  display: block;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li figure img.after {
  display: none;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .li_ttl {
  font-size: clamp(2rem, 2.8vw, 3rem);
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 20px;
  color: #1E50A2;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li .li_ttl span {
  background: linear-gradient(transparent 70%, #fcee21 70%);
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #1e1210;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a {
  display: block;
  padding: 40px 20px;
  position: relative;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a::before {
  content: "";
  position: absolute;
  width: 14%;
  height: 7%;
  background: #004ea2;
  -webkit-clip-path: polygon(34% 10%, 86% 0%, 99% 0%, 8% 100%, -1% 100%);
          clip-path: polygon(34% 10%, 86% 0%, 99% 0%, 8% 100%, -1% 100%);
  right: 0;
  bottom: 0.2%;
  z-index: 5;
  transition: all 0.3s ease;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a::after {
  content: "";
  position: absolute;
  background: #fff;
  width: 99%;
  height: 99.5%;
  top: 0;
  left: 0;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
  z-index: 3;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a:hover {
  /*&::before {
    width: 22%;
    height: 14.1%;
    clip-path: polygon(0 4%, 99% 0%, 100% 2%, 1% 100%, 0% 100%);
    z-index: 6;
  }
  .bg_bx{
  clip-path: polygon(0% 0%, 100% 0%, 100% 86%, 78% 100%, 0% 100%);
  }*/
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a:hover figure img.before {
  display: none;
}
#wrapperContent #content main article #stretch .stretch_area .flexArea li a:hover figure img.after {
  display: block;
}
@media only screen and (min-width: 641px) and (max-width: 1039px) {
  #wrapperContent #content main article #stretch .stretch_area {
    padding: 40px 20px;
  }
  #wrapperContent #content main article #stretch .stretch_area .flexArea {
    max-width: 700px;
    gap: 60px 40px;
  }
  #wrapperContent #content main article #stretch .stretch_area .flexArea li {
    width: calc((100% - 40px) / 2);
  }
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content main article #stretch .stretch_area {
    padding: 40px 20px;
  }
  #wrapperContent #content main article #stretch .stretch_area .flexArea {
    max-width: 340px;
    margin: 0 auto;
    gap: 60px;
    padding: 0;
    transform: translateX(-4px);
  }
  #wrapperContent #content main article #stretch .stretch_area .flexArea li {
    width: 100%;
  }
}

a.btn01.back_archive {
  margin: 75px auto 0;
}
a.btn01.back_archive::after {
  content: "\e5c4";
  right: auto;
  left: 20px;
}
@media only screen and (max-width: 640px) {
  a.btn01.back_archive {
    max-width: calc(70% + 40px);
  }
}

/*==================================================================
中ページ
===================================================================*/
#wrapperContent .stretch_lineup {
  margin-top: 70px;
  padding: 0;
  /*準備中*/
}
#wrapperContent .stretch_lineup main {
  padding: 0 20px 50px;
  background: #004ea2;
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup {
    margin-top: 60px;
  }
  #wrapperContent .stretch_lineup main {
    padding: 60px 20px;
  }
}
#wrapperContent .stretch_lineup #wrapperPankuzu {
  padding: 20px 0;
}
#wrapperContent .stretch_lineup #wrapperPankuzu #pankuzu .breadcrumbs {
  color: #fff;
}
#wrapperContent .stretch_lineup #wrapperPankuzu #pankuzu .breadcrumbs a {
  color: #fff;
}
#wrapperContent .stretch_lineup #wrapperPankuzu #pankuzu .breadcrumbs li + li::before {
  color: #fff;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup {
  background: #fff;
  margin: 80px auto 0;
  position: relative;
  max-width: 820px;
  padding: 0 100px 100px;
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup .sec_stretch_lineup {
    margin: 0 auto;
    padding: 0 20px 40px;
  }
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 60px;
  height: 60px;
  border: 2px solid #fff;
  border-radius: 50%;
  aspect-ratio: 1;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr::before {
  content: "";
  position: absolute;
  left: 58%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 0 15px 26px;
  border-color: transparent transparent transparent #fff;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr.next {
  right: -80px;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr.prev {
  transform: translateY(-50%) rotate(180deg);
  left: -80px;
}
@media only screen and (min-width: 641px) and (max-width: 1039px) {
  #wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup .sec_stretch_lineup .link_arr {
    display: none;
  }
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .ring {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup .sec_stretch_lineup .ring {
    top: -15px;
    width: 86%;
    max-width: 320px;
  }
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .ttl_num {
  padding: 60px 0 20px;
  display: flex;
  justify-content: center;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .ttl_num img {
  height: 50px;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_ttl {
  text-align: center;
  font-weight: bold;
  font-size: clamp(3rem, 3vw, 4.2rem);
  font-family: "Zen Maru Gothic", sans-serif;
  color: #1E50A2;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_read {
  margin: 15px auto 40px;
  text-align: center;
  color: #1E50A2;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .sub_ttl {
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 30px;
  line-height: 1;
  color: #1E50A2;
  font-family: "Zen Maru Gothic", sans-serif;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .m_bx {
  padding-bottom: 55px;
  margin-bottom: 40px;
  border-bottom: 2px solid #1E50A2;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .m_bx .video_bx {
  max-width: 500px;
  margin: 0 auto;
  display: block;
  border: 6px solid #1E50A2;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .m_bx .video_bx iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  display: block;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul {
  padding: 0 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li {
  width: calc((100% - 40px) / 2);
  aspect-ratio: 1;
  border: 1px solid #dcdddd;
  position: relative;
  padding: 10px;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li::before {
  content: "";
  position: absolute;
  right: -28px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 0 12px 12px;
  border-color: transparent transparent transparent #1E50A2;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li:last-of-type::before {
  display: none;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li .num {
  position: absolute;
  left: 5px;
  top: 5px;
  color: #fff;
  background: #1E50A2;
  border-radius: 50%;
  aspect-ratio: 1;
  width: 30px;
  text-align: center;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li figure {
  text-align: center;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li figure img {
  display: block;
  max-width: 80%;
  margin: 0 auto;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li figure figcaption {
  text-align: center;
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
  font-weight: 500;
  line-height: 1.4;
}
#wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li figure figcaption.bg_pink {
  background: #e75297;
  display: inline-block;
  padding: 5px 6px;
  border-radius: 5px;
  color: #fff;
  margin-top: 10px;
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul {
    padding: 0;
  }
  #wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li {
    width: 100%;
  }
  #wrapperContent .stretch_lineup .sec_stretch_lineup .s_bx ul li::before {
    top: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    bottom: -34px;
  }
}
#wrapperContent .stretch_lineup .page-nation {
  margin: 60px auto 0;
}
#wrapperContent .stretch_lineup .page-nation ul {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
}
#wrapperContent .stretch_lineup .page-nation ul li.on {
  color: #999999;
  font-size: 2.4rem;
  font-weight: bold;
  font-family: "Zen Maru Gothic", sans-serif;
  border-bottom: 2px solid #fff;
  padding: 0 3px 5px;
}
#wrapperContent .stretch_lineup .page-nation ul li a {
  color: #fff;
  font-size: 2.4rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: bold;
  padding: 0 3px 5px;
}
#wrapperContent .stretch_lineup .page-nation ul li a:hover {
  border-bottom: 2px solid #fff;
}
#wrapperContent .stretch_lineup .backtop {
  background: url(../img/stretch/bg_base.svg) #fff repeat;
  margin: 0 auto;
  padding: 60px 0;
  background-position: center center;
  background-size: 80px 80px;
}
#wrapperContent .stretch_lineup .backtop a {
  display: block;
  text-align: center;
  max-width: 320px;
  background: #1E50A2;
  padding: 20px;
  border-radius: 50px;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  font-family: "Zen Maru Gothic", sans-serif;
  margin: 0 auto;
}
#wrapperContent .stretch_lineup .coming {
  text-align: center;
  font-weight: 900;
  font-size: clamp(4rem, 3vw, 6rem);
  font-family: "Zen Maru Gothic", sans-serif;
  color: #1E50A2;
  padding: 80px 0;
  letter-spacing: 0.2em;
  line-height: 1;
  position: relative;
  z-index: 3;
}
#wrapperContent .stretch_lineup .num_com img {
  height: 67px !important;
  padding-bottom: 15px;
  border-bottom: 2px solid #1E50A2;
}
@keyframes float1 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-15px) translateX(5px);
  }
  50% {
    transform: translateY(-25px) translateX(-5px);
  }
  75% {
    transform: translateY(-10px) translateX(8px);
  }
}
@keyframes float2 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-20px) translateX(-8px);
  }
  50% {
    transform: translateY(-30px) translateX(6px);
  }
  75% {
    transform: translateY(-12px) translateX(-6px);
  }
}
@keyframes float3 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-18px) translateX(7px);
  }
  50% {
    transform: translateY(-28px) translateX(-4px);
  }
  75% {
    transform: translateY(-15px) translateX(9px);
  }
}
@keyframes float4 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-22px) translateX(-6px);
  }
  50% {
    transform: translateY(-32px) translateX(5px);
  }
  75% {
    transform: translateY(-14px) translateX(-7px);
  }
}
@keyframes float5 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-16px) translateX(8px);
  }
  50% {
    transform: translateY(-26px) translateX(-6px);
  }
  75% {
    transform: translateY(-13px) translateX(6px);
  }
}
@keyframes float6 {
  0%, 100% {
    transform: translateY(0px) translateX(0px);
  }
  25% {
    transform: translateY(-24px) translateX(-7px);
  }
  50% {
    transform: translateY(-34px) translateX(4px);
  }
  75% {
    transform: translateY(-16px) translateX(-8px);
  }
}
#wrapperContent .stretch_lineup .deco_ul {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#wrapperContent .stretch_lineup .deco_ul li {
  position: absolute;
}
#wrapperContent .stretch_lineup .deco_ul li img {
  width: 100%;
  aspect-ratio: 1;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(1) {
  top: 18%;
  left: 22%;
  max-width: 100px;
  animation: float1 8s ease-in-out infinite;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(2) {
  top: 42%;
  left: 6%;
  max-width: 160px;
  animation: float2 9s ease-in-out infinite;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(3) {
  bottom: 9%;
  left: 30%;
  max-width: 84px;
  animation: float3 10s ease-in-out infinite;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(4) {
  top: 13%;
  right: 24%;
  max-width: 78px;
  animation: float4 8.5s ease-in-out infinite;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(5) {
  top: 30%;
  right: 6%;
  max-width: 160px;
  animation: float5 9.5s ease-in-out infinite;
}
#wrapperContent .stretch_lineup .deco_ul li:nth-of-type(6) {
  bottom: 9%;
  right: 22%;
  max-width: 120px;
  animation: float6 10.5s ease-in-out infinite;
}
@media only screen and (max-width: 640px) {
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(1) {
    top: 15%;
    left: 5%;
    max-width: 70px;
  }
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(2) {
    top: 36%;
    left: 2%;
    max-width: 100px;
  }
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(3) {
    bottom: 4%;
    left: 10%;
    max-width: 60px;
  }
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(4) {
    top: 10%;
    right: 6%;
    max-width: 60px;
  }
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(5) {
    top: 34%;
    right: 2%;
    max-width: 100px;
  }
  #wrapperContent .stretch_lineup .deco_ul li:nth-of-type(6) {
    bottom: 4%;
    right: 5%;
    max-width: 80px;
  }
}/*# sourceMappingURL=layout_stretch.css.map */