@charset "utf-8";
/* CSS Document */
:root{
  --text-color: #1e1e1e;
  --main-color: #0b1565;
  --point-color: #572d8d;
  --bg-color: #eff4f7;
  --heading-bgColor: linear-gradient(180deg, #2e4190 0%, #1d2f76 100%);
}
html {
  scroll-behavior: smooth;
}
body {
  color: var(--text-color);
  font-family: "Helvetica Neue", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "游ゴシック Mediu", YuGothic, YuGothicM, ‘メイリオ’, meiryo, sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.7;
  font-feature-settings: "palt";
  position: relative;
  margin: 0;
  padding: 0;
}
p, h1, h2, h3 {
  margin: 0;
  padding: 0;
}
p {
  text-align: center;
}
img {
  max-width: 100%;
  vertical-align: top;
}
a {
  text-decoration: none;
}
.sp {
  display: none;
}
@media(max-width:500px) {
  .sp {
    display: block;
  }
}
/*共通*/
/* .l-contents {
  margin-top: 80px;
} */
.l-wrap {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.l-wrap:before {
  width: 100%;
  height: 100%;
  background: url(../img/bg.jpg) center top / cover;
  content: "";
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  z-index: -1;
}
.l-contents {
  width: 100%;
  max-width: 500px;
  margin: auto;
  /* background: url(../img/bg2.jpg) center top repeat-y; */
  background-color: #fff;
  position: relative;
  z-index: 1;
}

.bl_text_area {
  font-size: 15px;
  font-weight: 400;
  color: var(--text-color);
  text-align: left;
  margin-top: 8px;
}
.bl_sche_box .bl_text_area{
  color: var(--main-color);
  text-align: center;
}

.common_merchandise-content {
  width: min(460px, 95%);
  margin: 0 auto;
}
.common_text-content {
  width: min(420px, 90%);
  margin: 0 auto;
}
.common_box {
  font-size: 24px;
  font-weight: 600;
  border: 1px solid #001e62;
  margin-bottom: 10px;
}
.common_line {
  width: 223px;
  margin: 80px auto 0;
}
.common_span-top {
  display: block;
  margin-top: 40px;
}
.common_text-w {
  line-height: 32px;
}
.common_tag {
  display: inline;
  color: #fff;
  font-size: 18px;
  background-color: #001e62;
  padding: 0px 20px 1px 20px;
  margin-left: 16px;
}
.common_tag-l {
  background-color: #ff6d6d;
}

.bl_ttl {
  color: #fff;
  background: var(--heading-bgColor);
  padding: 8px 0;
  font-size: 30px;
  text-align: center;
  letter-spacing: 0.05em;
}
.bl_ttl_event{
  font-size: 28px;
  font-weight: 600;
  text-align: center;
  line-height: 1;
}
.bl_event_img{
  margin-top: 16px;
}
.title_f {
  font-family: Helvetica;
}
.bl_ttl.title_f{
  font-size: 32px;
}
.bl_ttl_sub{
  font-size: 22px;
  text-align: center;
}
.bl_ttl_read{
  font-size: clamp(1.25rem, 1.007rem + 1.05vw, 1.5rem);
  font-weight: 500;
  text-align: center;
}
.bl_reading .bl_ttl_sub{
  font-size: 32px;
}
.reading_img{
  margin: 40px 0 24px;
  text-align: center;
}
.reading_img img{
  width: 80%;
}
.el_pointColor{
  color: var(--point-color);
}
.el_pointColor, .el_point{
  font-size: larger;
  font-weight: bold;
}
.bl_tech_inner{
  margin-top: 8px;
}
.bl_tech_inner img{
  border: 1px solid var(--main-color);
}
.bl_tech_item{
  margin-bottom: 40px;
}
.bl_tech .bl_tech_item:last-child{
  margin-bottom: 0;
}


.common_bl {
  position: relative;
  margin-bottom: 40px;
  text-align: center;
}
.common_bl::after {
  content: "";
  display: block;
  background-color: var(--main-color);
  width: 50px;
  height: 3px;
  margin: 0 auto;
}
.bl_wrapper{
  color: var(--main-color);
  padding: 64px 0;
}
.ly_schedule{
  width: 80%;
  margin: 0 auto;
}
.bg_color{
  background: var(--bg-color);
}
.bl_sche_box{
  background: #fff;
  text-align: center;
}
.bl_sche_box .bl_ttl_sche{
  color: #fff;
}
.bl_sche_inner01{
  border: 1px solid #5e66ab;
  border-bottom: none;
}
.bl_sche_inner01 .bl_ttl_sche{
  background: #5e66ab;
}
.bl_ttl_sche{
  padding: 8px 0;
}
.bl_sche_inner02{
  border: 1px solid #51ab73;
  border-bottom: none;
}
.bl_sche_inner02 .bl_ttl_sche{
  background: #51ab73;
}
.bl_sche_inner02 .bl_text_area{
  display: block;
  text-decoration: underline;
  font-weight: 500;
}
.bl_sche_inner03{
  border: 1px solid #e47c7b;
  text-align: center;
}
.bl_sche_inner03 .bl_ttl_sche{
  background: #e47c7b;
  margin-bottom: 24px;
}
.bl_sche_inner03 img{
  width: 50%;
  margin: 24px 0 8px;
}
.bl_sche_inner03 span{
  font-size: larger;
}
.bl_sche_inner04{
  border: 1px solid #f6b599;
  margin-top: 56px;
}
.bl_sche_inner04 .bl_ttl_sche{
  background: #f6b599;
}
.bl_sche_box .bl_ttl_sub{
  font-size: 24px;
  font-weight: 500;
  padding: 24px 0;
}
.bl_sche_box .bl_text_area{
  margin-top: 0;
  padding-bottom: 24px;
}



/*slider*/
.swiper-container {
  width: 100%;
  overflow: hidden;
}
.swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
}
.block_span {
  color: #001e62;
  display: block;
  font-size: 28px;
  text-align: center;
  margin-top: 10px;
}
.box_02 {
  margin-top: 38px;
}
.sec_01 p:nth-child(3), .sec_01 p:nth-child(5) {
  font-size: 28px;
}
.day {
  font-size: 20px;
}
.attention {
  color: rgb(0, 0, 0);
  margin-top: 20px;
}
.button {
  display: block;
  padding: 6px 24px;
  color: #fff;
  border-radius: 50px;
  background-color: var(--point-color);
  text-align: center;
  margin-top: 24px;
}
.button-a {
  background-color: #0b1465;
}
.custom-button:hover {
  background-color: #001a4d;
}
.name {
  font-weight: bold;
}
.name_aa {
  font-size: 24px;
  margin-top: 20px;
}
.price {
  color: rgb(0, 0, 0);
}
.button-c {
  color: var(--point-color);
  background-color: #fff;
  border: 2px solid var(--point-color);
  margin-top: 20px;
}
.button-d {
  background-color: #ff6d6d;
}
.button-e {
  color: #0b1465;
  border: 2px solid #0b1465;
}
.adviser-title {
  font-size: 18px;
  color: #002366;
  line-height: 27px;
  position: relative;
  width: 200px;
  margin: 80px auto 0;
}
.adviser-title::before, .adviser-title::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 2px;
  background-color: #002366;
}
.adviser-title::before {
  right: -48px;
  transform: translateY(-50%) rotate(-73deg);
}
.adviser-title::after {
  left: -60px;
  transform: translateY(-50%) rotate(73deg);
}
.movie {
  margin-top: 20px;
}
.adviser-text {
  color: rgb(0, 0, 0);
  font-weight: 300;
  font-size: 14px;
  text-align: left;
  background-color: #d7dbe6;
  border-radius: 10px;
  padding: 20px;
  margin-top: 20px;
}
.adviser_name {
  display: block;
  text-align: right;
  font-weight: bold;
}
.staff_name {
  display: flex;
  align-items: center;
  gap: 12px;
}
.staff_name p {
  color: rgb(0, 0, 0);
  text-align: left;
}
.staff_img {
  width: 141px;
}
.staff_store {
  color: #5e66ab;
  display: block;
  font-size: 14px;
  text-align: left;
}
.staff_text {
  margin-top: 24px;
}
.line_attention {
  color: rgb(0, 0, 0);
  font-size: 14px;
}
.details-button {
  display: block;
  color: rgb(0, 0, 0);
  text-align: right;
  font-weight: 400;
  position: relative;
  text-decoration: underline;
  margin-top: 15px;
}

.merchandise_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.merchandise{
  width: 48%;
}
.merchandise_items .merchandise:first-child{
  width: 100%;
}
.merchandise p:nth-child(2), .merchandise p:nth-child(3) {
  color: var(--text-color);
  text-align: left;
}
.merchandise p:nth-child(2) {
  font-weight: bold;
  margin-top: 6px;
  margin-bottom: -6px;
}
.merchandise p:nth-child(3) {
  font-weight: 500;
}
.shoes-img {
  position: relative;
  border: 1px solid var(--main-color);
  border-radius: 8px;
  text-align: center;
}
.shoes-img img{
  width: 90%;
  padding: 32px 0px 16px;
}
.shoes-img.shoes_top{
  padding: 40px 0 24px;
}
.merchandise-btn {
  margin: 8px 0 40px;
}
.merchandise_items-top {
  margin-top: 40px;
}
.merchandise-aa {
  font-size: 12px;
}
.bl_lineup .bl_text_area{
  text-align: center;
  font-weight: 500;
}
.bl_lineup .asics_link{
  margin-top: 40px;
}
.reading_price{
  color: var(--main-color);
}
.magazie_text {
  margin-top: 16px;
  font-weight: 500;
  color: var(--text-color);
  text-align: left;
}
.magazie_img {
  text-align: center;
}
/* .magazie_btn {
  padding-bottom: 100px;
} */
.magazie_btn-c {
  margin-top: 16px;
}
.asics_link {
  font-size: 1.1rem;
}
/*fixed-btn*/
.sc-btn {
  width: 100%;
  padding: 10px 10%;
  background-color: #000;
  box-sizing: border-box;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 10;
}
.sc-btn .btn-wrap {
  width: 100%;
  max-width: 400px;
  margin: auto;
}
.btn-2 {
  width: 100%;
  height: 50px;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  color: #001e62;
  position: relative;
  font-size: 18px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .sc-btn {
    padding: 10px 20px;
  }
}
.sc-btn.hidden {
    opacity: 0;
    transition: opacity 0.9s ease;
}

.sc-btn {
    opacity: 1;
    transition: opacity 0.9s ease;
}
@media (max-width: 380px) {
.sp_price{
min-height: 61px;
}
}

/* 2025/03/06 appdate */

.common_top_img{
  margin-top: 80px;
  margin-bottom:-60px;
}

.limited{
  margin-top: 50px;
  padding: 0 20px;
  font-weight: 500;
  font-size: 16px;
}

.limited p{
  text-align: center;
  font-family:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "游ゴシック Mediu", YuGothic, YuGothicM, ‘メイリオ’, meiryo, sans-serif;
}

.limited a{
  text-decoration: underline;
}

.notes {
  text-align: center!important;
  font-size:0.9em;
  font-weight:500!important;
}

/*2025/12/18*/
.button:hover,.merchandise-btn:hover,.shoes-img:hover,.magazie_img:hover{
  opacity: 0.8;
}

.introduction{
  padding-bottom: 64px;
}
.introduction .title {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 24px;
  position: relative;
  margin-top: 64px;
  margin-bottom: 20px;
}
.introduction .title::before, .introduction .title::after {
  content: "";
  width: 0;
  height: 34px;
  border-left: 2px solid #0B2A5E;
  position: absolute;
  top: 50%;
}
.introduction .title::before {
  left: 20px;
  transform: translateY(-50%) rotate(-20deg);
}
.introduction .title::after {
  right: 20px;
  transform: translateY(-50%) rotate(20deg);
}
.introduction .button {
  background-color: #0b1466;
  margin-top: 40px;
}
@media (max-width: 767px) {
  .introduction .title::before {
    left: 0px;
  }
  .introduction .title::after {
    right: 0px;
  }
  .catchphrase {
    font-size: 19px;
  }
}
@media (max-width: 380px) {
  .introduction .title {
    font-size: 23px;
  }
  .catchphrase {
    font-size: 17px;
  }
}