@charset "utf-8";

.promotion h2, .promotion p { line-height: 1.75; }

.mt-0 { margin-top: 0px !important; }

.mt-5 { margin-top: 5px !important; }

.mt-10 { margin-top: 10px !important; }

.mt-15 { margin-top: 15px !important; }

.mt-20 { margin-top: 20px !important; }

.mt-25 { margin-top: 25px !important; }

.mt-30 { margin-top: 30px !important; }

.mt-35 { margin-top: 35px !important; }

.mt-40 { margin-top: 40px !important; }

.mt-45 { margin-top: 45px !important; }

.mt-50 { margin-top: 50px !important; }

.mt-55 { margin-top: 55px !important; }

.mt-60 { margin-top: 60px !important; }

.mt-65 { margin-top: 65px !important; }

.mt-70 { margin-top: 70px !important; }

.mt-75 { margin-top: 75px !important; }

.mt-80 { margin-top: 80px !important; }

.mt-85 { margin-top: 85px !important; }

.mt-90 { margin-top: 90px !important; }

.mt-95 { margin-top: 95px !important; }

.mt-100 { margin-top: 100px !important; }

.mt-110 { margin-top: 110px !important; }

.mt-120 { margin-top: 120px !important; }

.mb-0 { margin-bottom: 0px !important; }

.mb-5 { margin-bottom: 5px !important; }

.mb-10 { margin-bottom: 10px !important; }

.mb-15 { margin-bottom: 15px !important; }

.mb-20 { margin-bottom: 20px !important; }

.mb-25 { margin-bottom: 25px !important; }

.mb-30 { margin-bottom: 30px !important; }

.mb-35 { margin-bottom: 35px !important; }

.mb-40 { margin-bottom: 40px !important; }

.mb-45 { margin-bottom: 45px !important; }

.mb-50 { margin-bottom: 50px !important; }

.mb-55 { margin-bottom: 55px !important; }

.mb-60 { margin-bottom: 60px !important; }

.mb-65 { margin-bottom: 65px !important; }

.mb-70 { margin-bottom: 70px !important; }

.mb-75 { margin-bottom: 75px !important; }

.mb-80 { margin-bottom: 80px !important; }

.mb-85 { margin-bottom: 85px !important; }

.mb-90 { margin-bottom: 90px !important; }

.mb-95 { margin-bottom: 95px !important; }

.mb-100 { margin-bottom: 100px !important; }

.mb-110 { margin-bottom: 110px !important; }

.mb-120 { margin-bottom: 120px !important; }

@media screen and (min-width: 640px) {
  .mt-sm-0 { margin-top: 0px !important; }
  .mt-sm-5 { margin-top: 5px !important; }
  .mt-sm-10 { margin-top: 10px !important; }
  .mt-sm-15 { margin-top: 15px !important; }
  .mt-sm-20 { margin-top: 20px !important; }
  .mt-sm-25 { margin-top: 25px !important; }
  .mt-sm-30 { margin-top: 30px !important; }
  .mt-sm-35 { margin-top: 35px !important; }
  .mt-sm-40 { margin-top: 40px !important; }
  .mt-sm-45 { margin-top: 45px !important; }
  .mt-sm-50 { margin-top: 50px !important; }
  .mt-sm-55 { margin-top: 55px !important; }
  .mt-sm-60 { margin-top: 60px !important; }
  .mt-sm-65 { margin-top: 65px !important; }
  .mt-sm-70 { margin-top: 70px !important; }
  .mt-sm-75 { margin-top: 75px !important; }
  .mt-sm-80 { margin-top: 80px !important; }
  .mt-sm-85 { margin-top: 85px !important; }
  .mt-sm-90 { margin-top: 90px !important; }
  .mt-sm-95 { margin-top: 95px !important; }
  .mt-sm-100 { margin-top: 100px !important; }
  .mt-sm-110 { margin-top: 110px !important; }
  .mt-sm-120 { margin-top: 120px !important; }
  .mb-sm-0 { margin-bottom: 0px !important; }
  .mb-sm-5 { margin-bottom: 5px !important; }
  .mb-sm-10 { margin-bottom: 10px !important; }
  .mb-sm-15 { margin-bottom: 15px !important; }
  .mb-sm-20 { margin-bottom: 20px !important; }
  .mb-sm-25 { margin-bottom: 25px !important; }
  .mb-sm-30 { margin-bottom: 30px !important; }
  .mb-sm-35 { margin-bottom: 35px !important; }
  .mb-sm-40 { margin-bottom: 40px !important; }
  .mb-sm-45 { margin-bottom: 45px !important; }
  .mb-sm-50 { margin-bottom: 50px !important; }
  .mb-sm-55 { margin-bottom: 55px !important; }
  .mb-sm-60 { margin-bottom: 60px !important; }
  .mb-sm-65 { margin-bottom: 65px !important; }
  .mb-sm-70 { margin-bottom: 70px !important; }
  .mb-sm-75 { margin-bottom: 75px !important; }
  .mb-sm-80 { margin-bottom: 80px !important; }
  .mb-sm-85 { margin-bottom: 85px !important; }
  .mb-sm-90 { margin-bottom: 90px !important; }
  .mb-sm-95 { margin-bottom: 95px !important; }
  .mb-sm-100 { margin-bottom: 100px !important; }
  .mb-sm-110 { margin-bottom: 110px !important; }
  .mb-sm-120 { margin-bottom: 120px !important; }
}

@media screen and (min-width: 768px) {
  .mt-md-0 { margin-top: 0px !important; }
  .mt-md-5 { margin-top: 5px !important; }
  .mt-md-10 { margin-top: 10px !important; }
  .mt-md-15 { margin-top: 15px !important; }
  .mt-md-20 { margin-top: 20px !important; }
  .mt-md-25 { margin-top: 25px !important; }
  .mt-md-30 { margin-top: 30px !important; }
  .mt-md-35 { margin-top: 35px !important; }
  .mt-md-40 { margin-top: 40px !important; }
  .mt-md-45 { margin-top: 45px !important; }
  .mt-md-50 { margin-top: 50px !important; }
  .mt-md-55 { margin-top: 55px !important; }
  .mt-md-60 { margin-top: 60px !important; }
  .mt-md-65 { margin-top: 65px !important; }
  .mt-md-70 { margin-top: 70px !important; }
  .mt-md-75 { margin-top: 75px !important; }
  .mt-md-80 { margin-top: 80px !important; }
  .mt-md-85 { margin-top: 85px !important; }
  .mt-md-90 { margin-top: 90px !important; }
  .mt-md-95 { margin-top: 95px !important; }
  .mt-md-100 { margin-top: 100px !important; }
  .mt-md-110 { margin-top: 110px !important; }
  .mt-md-120 { margin-top: 120px !important; }
  .mb-md-0 { margin-bottom: 0px !important; }
  .mb-md-5 { margin-bottom: 5px !important; }
  .mb-md-10 { margin-bottom: 10px !important; }
  .mb-md-15 { margin-bottom: 15px !important; }
  .mb-md-20 { margin-bottom: 20px !important; }
  .mb-md-25 { margin-bottom: 25px !important; }
  .mb-md-30 { margin-bottom: 30px !important; }
  .mb-md-35 { margin-bottom: 35px !important; }
  .mb-md-40 { margin-bottom: 40px !important; }
  .mb-md-45 { margin-bottom: 45px !important; }
  .mb-md-50 { margin-bottom: 50px !important; }
  .mb-md-55 { margin-bottom: 55px !important; }
  .mb-md-60 { margin-bottom: 60px !important; }
  .mb-md-65 { margin-bottom: 65px !important; }
  .mb-md-70 { margin-bottom: 70px !important; }
  .mb-md-75 { margin-bottom: 75px !important; }
  .mb-md-80 { margin-bottom: 80px !important; }
  .mb-md-85 { margin-bottom: 85px !important; }
  .mb-md-90 { margin-bottom: 90px !important; }
  .mb-md-95 { margin-bottom: 95px !important; }
  .mb-md-100 { margin-bottom: 100px !important; }
  .mb-md-110 { margin-bottom: 110px !important; }
  .mb-md-120 { margin-bottom: 120px !important; }
  .sp-on { display: none; }
}

@media screen and (min-width: 1128px) {
  .mt-lg-0 { margin-top: 0px !important; }
  .mt-lg-5 { margin-top: 5px !important; }
  .mt-lg-10 { margin-top: 10px !important; }
  .mt-lg-15 { margin-top: 15px !important; }
  .mt-lg-20 { margin-top: 20px !important; }
  .mt-lg-25 { margin-top: 25px !important; }
  .mt-lg-30 { margin-top: 30px !important; }
  .mt-lg-35 { margin-top: 35px !important; }
  .mt-lg-40 { margin-top: 40px !important; }
  .mt-lg-45 { margin-top: 45px !important; }
  .mt-lg-50 { margin-top: 50px !important; }
  .mt-lg-55 { margin-top: 55px !important; }
  .mt-lg-60 { margin-top: 60px !important; }
  .mt-lg-65 { margin-top: 65px !important; }
  .mt-lg-70 { margin-top: 70px !important; }
  .mt-lg-75 { margin-top: 75px !important; }
  .mt-lg-80 { margin-top: 80px !important; }
  .mt-lg-85 { margin-top: 85px !important; }
  .mt-lg-90 { margin-top: 90px !important; }
  .mt-lg-95 { margin-top: 95px !important; }
  .mt-lg-100 { margin-top: 100px !important; }
  .mt-lg-110 { margin-top: 110px !important; }
  .mt-lg-120 { margin-top: 120px !important; }
  .mb-lg-0 { margin-bottom: 0px !important; }
  .mb-lg-5 { margin-bottom: 5px !important; }
  .mb-lg-10 { margin-bottom: 10px !important; }
  .mb-lg-15 { margin-bottom: 15px !important; }
  .mb-lg-20 { margin-bottom: 20px !important; }
  .mb-lg-25 { margin-bottom: 25px !important; }
  .mb-lg-30 { margin-bottom: 30px !important; }
  .mb-lg-35 { margin-bottom: 35px !important; }
  .mb-lg-40 { margin-bottom: 40px !important; }
  .mb-lg-45 { margin-bottom: 45px !important; }
  .mb-lg-50 { margin-bottom: 50px !important; }
  .mb-lg-55 { margin-bottom: 55px !important; }
  .mb-lg-60 { margin-bottom: 60px !important; }
  .mb-lg-65 { margin-bottom: 65px !important; }
  .mb-lg-70 { margin-bottom: 70px !important; }
  .mb-lg-75 { margin-bottom: 75px !important; }
  .mb-lg-80 { margin-bottom: 80px !important; }
  .mb-lg-85 { margin-bottom: 85px !important; }
  .mb-lg-90 { margin-bottom: 90px !important; }
  .mb-lg-95 { margin-bottom: 95px !important; }
  .mb-lg-100 { margin-bottom: 100px !important; }
  .mb-lg-110 { margin-bottom: 110px !important; }
  .mb-lg-120 { margin-bottom: 120px !important; }
}

.promotion h2 { font-size: 36px; text-align: center; color: rgb(0, 0, 0); margin-top: 0px; padding-bottom: 15px; margin-bottom: 35px; position: relative; }

.promotion h2::after { content: ""; width: 40px; height: 2px; position: absolute; top: 100%; left: 0px; right: 0px; margin: auto; background-color: rgb(75, 30, 120); }

.promotion .text-lead { font-size: 18px; }

.promotion_container { max-width: 1632px; margin-left: auto; margin-right: auto; padding-left: 16px; padding-right: 16px; }

.promotion_container_inner, .promotion_mov_main { max-width: 922px; margin-left: auto; margin-right: auto; }

.promotion_kv { margin-top: 0px; margin-bottom: 0px; }

.promotion_sec { padding-top: 80px; padding-bottom: 100px; }

@media screen and (max-width: 767px) {
  .pc-on { display: none; }
  .promotion_container { padding-left: 7.3vw; padding-right: 7.3vw; }
  .promotion_sec { padding-top: 40px; padding-bottom: 40px; }
}

.promotion_statement > div { padding-top: 100px; padding-bottom: 100px; background: url("https://oss.yamaha.com.cn/files/20240909/play-music-bg.jpg") 50% 50% / cover no-repeat; }

.promotion_statement p { text-align: center; color: rgb(255, 255, 255); margin-bottom: 0px; text-shadow: rgb(0, 0, 0) 0px 0px 7px; }

@media screen and (max-width: 767px) {
  .promotion_statement > div { background: url("https://oss.yamaha.com.cn/files/20240909/play-music-bg-sp.jpg") 50% 50% / cover no-repeat; padding: 38px 1em; }
  .promotion_statement p { font-size: 15px; line-height: 2; font-feature-settings: "palt"; margin-bottom: 0px; }
}

@media screen and (min-width: 768px) {
  .promotion_statement p { font-size: 18px; line-height: 2.51; }
  .promotion_h2 { margin-bottom: 100px; }
}

@media screen and (max-width: 767px) {
  .promotion_h2 { margin-bottom: 38px; }
  .promotion_h2 h2 { font-size: 22px; font-feature-settings: "palt"; }
  .promotion_mov_main { margin-bottom: 40px; }
}

.promotion_youtube { position: relative; padding-top: 56.25%; }

.promotion_youtube iframe { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }

.promotion_mov_main { width: 100%; }

.promotion_mov_main p { color: rgb(0, 0, 0); font-weight: 700; }

@media screen and (min-width: 768px) {
  .promotion_h2 h2 { font-size: 36px; }
  .promotion_mov_main p { margin-top: 24px; margin-bottom: 0px; font-size: 16px; line-height: 1.75; }
  .promotion_mov_sub_col2 { padding-left: 37px; padding-right: 37px; max-width: 1200px; margin-left: auto; margin-right: auto; }
}

@media screen and (max-width: 767px) {
  .promotion_mov_main p { font-size: 17.5px; margin-top: 22px; line-height: 1.3; }
}

.promotion_mov_sub_col2 { display: flex; flex-wrap: wrap; justify-content: center; }

@media screen and (min-width: 768px) {
  .promotion_mov_sub_col2 .promotion_mov_sub_item { margin-top: 56px; max-width: 50%; min-width: 50%; padding-left: 16px; padding-right: 16px; }
  .promotion_mov_sub_col2 .promotion_mov_sub_item p { font-size: 16px; margin-top: 24px; font-weight: 700; }
}

@media screen and (max-width: 767px) {
  .promotion_mov_sub_col2 .promotion_mov_sub_item { min-width: 100%; margin-bottom: 40px; }
}

.promotion_mov_sub_col2 .promotion_mov_sub_item:last-child { margin-bottom: 0px; }

.promotion_mov_sub_col2 .promotion_mov_sub_item img { display: block; }

.promotion_mov_sub_col2 .promotion_mov_sub_item p { color: rgb(0, 0, 0); margin-bottom: 0px; }

@media screen and (max-width: 767px) {
  .promotion_mov_sub_col2 .promotion_mov_sub_item p { font-size: 15px; margin-top: 22px; line-height: 1.3; font-feature-settings: "palt"; font-weight: 700; }
}

.promotion_mov_sub_col3 { display: flex; flex-wrap: wrap; justify-content: center; }

@media screen and (min-width: 768px) {
  .promotion_mov_sub_col3 { padding-left: 37px; padding-right: 37px; max-width: 1200px; margin-left: auto; margin-right: auto; }
  .promotion_mov_sub_col3 .promotion_mov_sub_item { margin-top: 56px; max-width: 33.3%; min-width: 33.3%; padding-left: 16px; padding-right: 16px; }
  .promotion_mov_sub_col3 .promotion_mov_sub_item p { font-size: 16px; margin-top: 24px; font-weight: 700; }
}

@media screen and (max-width: 767px) {
  .promotion_mov_sub_col3 .promotion_mov_sub_item { min-width: 100%; margin-bottom: 40px; }
}

.promotion_mov_sub_col3 .promotion_mov_sub_item:last-child { margin-bottom: 0px; }

.promotion_mov_sub_col3 .promotion_mov_sub_item img { display: block; max-width: 100%; height: auto; }

.promotion_mov_sub_col3 .promotion_mov_sub_item p { color: rgb(0, 0, 0); margin-bottom: 0px; }

@media screen and (max-width: 767px) {
  .promotion_mov_sub_col3 .promotion_mov_sub_item p { font-size: 15px; margin-top: 22px; line-height: 1.3; font-feature-settings: "palt"; font-weight: 700; }
}

.promotion_link_col3 { display: flex; flex-wrap: wrap; justify-content: flex-start; }

@media screen and (min-width: 768px) {
  .promotion_link_col3 { padding-left: 37px; padding-right: 37px; max-width: 1200px; margin-left: auto; margin-right: auto; }
  .promotion_link_col3 .promotion_link_item { margin-top: 56px; max-width: 33.3%; min-width: 33.3%; padding-left: 16px; padding-right: 16px; }
  .promotion_link_col3 .promotion_link_item p { font-size: 16px; margin-top: 24px; font-weight: 700; }
}

@media screen and (max-width: 767px) {
  .promotion_link_col3 .promotion_link_item { min-width: 100%; margin-bottom: 40px; }
}

.promotion_link_col3 .promotion_link_item:last-child { margin-bottom: 0px; }

.promotion_link_col3 .promotion_link_item img { display: block; max-width: 100%; height: auto; }

.promotion_link_col3 .promotion_link_item a:focus, .promotion_link_col3 .promotion_link_item a:hover { color: rgb(75, 30, 120); text-decoration: none; }

.promotion_link_col3 .promotion_link_item a:focus p, .promotion_link_col3 .promotion_link_item a:hover p { color: inherit; }

.promotion_link_col3 .promotion_link_item a:focus i::before, .promotion_link_col3 .promotion_link_item a:hover i::before { opacity: 0; }

.promotion_link_col3 .promotion_link_item a:focus i::after, .promotion_link_col3 .promotion_link_item a:hover i::after { opacity: 1; }

.promotion_link_col3 .promotion_link_item a i { width: 30px; height: 30px; display: inline-block; vertical-align: middle; margin-left: 10px; margin-right: 10px; position: relative; top: -0.2em; }

.promotion_link_col3 .promotion_link_item a i::after, .promotion_link_col3 .promotion_link_item a i::before { content: ""; width: 30px; height: 30px; display: inline-block; position: absolute; top: 0px; left: 0px; transition: 0.15s ease-in-out; }

.promotion_link_col3 .promotion_link_item a i::before { background: url("https://www.yamaha.com/ja/about/promotion/music-is-a-challenge/images/icon_arrow-m.svg"); }

.promotion_link_col3 .promotion_link_item a i::after { opacity: 0; background: url("https://www.yamaha.com/ja/about/promotion/music-is-a-challenge/images/icon_arrow-m_violet.svg"); }

.promotion_link_col3 .promotion_link_item p { color: rgb(0, 0, 0); margin-bottom: 0px; }

.bg_grey { background-color: rgb(232, 232, 232); }

.promotion_en-header { color: rgb(0, 0, 0); }

@media screen and (max-width: 767px) {
  .promotion_link_col3 .promotion_link_item p { font-size: 15px; margin-top: 22px; line-height: 1.3; font-feature-settings: "palt"; font-weight: 700; }
  .promotion_en-header { font-size: 22.5px; font-weight: 700; font-feature-settings: "palt"; }
}

.promotion_en-header small { color: rgb(0, 0, 0); }

@media screen and (min-width: 768px) {
  .promotion_en-header { font-size: 22.5px; font-feature-settings: "palt"; }
  .promotion_en-header small { font-size: 24px; font-weight: 700; }
  .promotion_en-header span { font-weight: 700; color: rgb(75, 30, 120); }
}

.promotion_en-header span { display: block; line-height: 1.5; text-align: center; }

@media screen and (max-width: 767px) {
  .promotion_en-header small { font-size: 16px; font-weight: 700; }
  .promotion_en-header span { color: rgb(75, 30, 120); display: block; text-align: center; }
  .promotion_h3 h3 { font-size: 31px; }
}

.promotion_h3 h3 { font-weight: 700; line-height: 1.49; text-align: center; color: rgb(0, 0, 0); font-feature-settings: "palt"; }

.promotion_h3 small { color: rgb(0, 0, 0); font-weight: 700; }

@media screen and (min-width: 768px) {
  .promotion_h3 h3 { font-size: 63px; }
  .promotion_h3 small { font-size: 39px; }
}

.promotion_h4 { text-align: center; }

.promotion_h4 h4 { font-size: 30px; line-height: 2; text-align: center; color: rgb(0, 0, 0); }

@media screen and (min-width: 768px) {
  .promotion_h4 h4 { font-size: 30px; line-height: 1; }
}

@media screen and (max-width: 767px) {
  .promotion_h4 h4 { font-size: 18px; }
}

.promotion_h4 p { font-size: 16px; line-height: 2.22; text-align: center; }

@media screen and (max-width: 767px) {
  .promotion_h4 p { font-size: 15px; line-height: 1.67; text-align: center; color: rgb(0, 0, 0); }
  .promotion_lead, .promotion_lead_02 { margin-bottom: 38px; }
}

.promotion_text_link { color: rgb(51, 51, 51); }

.promotion_text_link:focus, .promotion_text_link:hover { color: rgb(75, 30, 120); text-decoration: none; }

.promotion_step { max-width: 1000px; margin-left: auto; margin-right: auto; background-color: rgb(255, 255, 255); }

@media screen and (min-width: 768px) {
  .promotion_lead { font-size: 24px !important; }
  .promotion_step { padding: 52px 60px; border-radius: 40px; }
  .promotion_textpict { display: flex; align-items: flex-end; }
}

@media screen and (max-width: 767px) {
  .promotion_step { border-radius: 22px; }
}

.promotion_step h5 { font-size: 24px; width: 123px; line-height: 1; margin: 0px 0px 22px; padding: 8px 22px; border-radius: 19px; background-color: rgb(75, 30, 120); color: rgb(255, 255, 255); text-align: center; font-weight: 400; }

@media screen and (max-width: 767px) {
  .promotion_step h5 { width: 101px; height: 31px; font-size: 20px; padding: 0px; line-height: 1.5; text-align: center; color: rgb(255, 255, 255); }
}

.promotion_step p { font-size: 16px; font-weight: 400; line-height: 2.22; text-align: left; color: rgb(0, 0, 0); }

.promotion_btn_follow { margin-bottom: 40px; height: 48px; font-size: 15px; }

@media screen and (max-width: 767px) {
  .promotion_step p { font-size: 15px; line-height: 1.67; text-align: left; color: rgb(0, 0, 0); font-feature-settings: "palt"; }
  .promotion_btn_follow { margin: 26px auto 32px; }
  .promotion_textpict { padding: 28px 23px; }
}

.promotion_step { margin-top: 60px; }

.promotion_textpict .promotion_pict { margin-left: auto; }

@media screen and (max-width: 767px) {
  .promotion_textpict .promotion_pict img { width: 145px; display: block; margin-left: auto; margin-right: auto; }
}

.promotion_textpict .promotion_text b { color: rgb(18, 196, 255); }

.promotion_fukidashi { padding-left: 0px; list-style: none; }

@media screen and (min-width: 768px) {
  .promotion_fukidashi { display: flex; margin-left: -30px; margin-right: -30px; margin-top: 50px; margin-bottom: 0px !important; }
}

@media screen and (max-width: 767px) {
  .promotion_fukidashi { padding: 0px 23px 0px 0px; }
  .promotion_fukidashi li + li { margin-bottom: 0px; margin-top: 20px; }
}

@media screen and (min-width: 768px) {
  .promotion_fukidashi li { min-width: 50%; max-width: 50%; padding-left: 30px; padding-right: 30px; margin-bottom: 0px !important; }
}

.promotion_fukidashi li .promotion_fukidashi_bg { background: url("https://www.yamaha.com/ja/about/experience/promotion/music-is-a-challenge/images/bg_step_fukidashi.png") 50% 50% / 100% 100% no-repeat; height: 256px; display: flex; align-items: center; justify-content: center; font-size: 20.5px; text-align: center; line-height: 1.46; color: rgb(255, 255, 255); padding-bottom: 40px; margin-bottom: 0px; }

@media screen and (max-width: 767px) {
  .promotion_fukidashi li .promotion_fukidashi_bg { height: 158px; padding-bottom: 24px; font-size: 15px; background: url("https://www.yamaha.com/ja/about/experience/promotion/music-is-a-challenge/images/bg_step_fukidashi_sp.png") 50% 50% / 100% 100% no-repeat; }
  .promotion_inst .promotion_inst_item { margin-top: 38px; }
  .promotion_inst .promotion_inst_item img { width: 100%; }
}

@media screen and (min-width: 768px) {
  .promotion_inst { display: flex; flex-wrap: wrap; max-width: 1272px; margin-left: auto; margin-right: auto; }
  .promotion_inst .promotion_inst_item { margin-top: 56px; padding-left: 16px; padding-right: 16px; min-width: 25%; max-width: 25%; }
}

.promotion_inst .promotion_inst_item img { display: block; max-width: 100%; height: auto; }

.promotion_inst .promotion_inst_item p { font-size: 14px; color: rgb(0, 0, 0); margin-top: 24px; margin-bottom: 0px; font-weight: 700; font-feature-settings: "palt"; }

.table-overview { margin: 0px auto; padding: 0px; max-width: 1000px; }

.table-overview td, .table-overview th { font-size: 16px; }

.table-overview td strong, .table-overview th strong { font-weight: 700; color: rgb(75, 30, 120); }

.table-overview th { width: 20%; }

.table-overview ul { margin: 0px; }

@media screen and (max-width: 767px) {
  .table-overview td, .table-overview th { font-size: 15px; }
  .promotion_ttl_rule { font-size: 15px; margin-top: 35px; }
  .promotion_dl { margin-bottom: 28px; }
}

@media screen and (min-width: 768px) {
  .promotion_ttl_rule { font-size: 18px; margin-top: 48px; }
  .promotion_dl { margin-bottom: 28px; }
}

.promotion_dl dd, .promotion_dl dt { font-size: 16px; line-height: 1.56; color: rgb(0, 0, 0); }

.promotion_dl.promotion_dl_bold { font-weight: 700; }

.promotion_dl dt { text-align: left; }

.promotion_dl dd { text-align: justify; }

.promotion_dl dd .pict { margin-top: 40px; margin-bottom: 10px; display: flex; justify-content: center; }

.carousel .carousel-control, .promotion_sns-group { align-items: center; display: flex; }

.promotion_dl dd a { color: inherit; transition: 0.15s ease-in-out; }

.promotion_dl dd a:focus, .promotion_dl dd a:hover { color: rgb(75, 30, 120); }

.promotion_dl dd ul { padding-left: 0px; }

.promotion_dl dd ul li { margin-left: 1.4em; margin-bottom: 0px; }

.text-underline { text-decoration: underline; }

.text-indent { text-indent: -1em; padding-left: 1em; }

.carousel .carousel-control img { margin-top: -25px; }

@media screen and (min-width: 768px) {
  .carousel .carousel-control.left { left: -57px; }
  .carousel .carousel-control.right { right: -59px; }
}

@media (min-width: 768px) and (max-width: 1050px) {
  .carousel .carousel-control.left { left: -37px; }
  .carousel .carousel-control.right { right: -37px; }
  .promotion_mov_main .carousel { max-width: calc(100% - 70px); margin-left: auto; margin-right: auto; }
}

@media screen and (max-width: 767px) {
  .promotion_dl dd, .promotion_dl dd ul li, .promotion_dl dt { font-size: 12px; }
  .promotion_carousel_item { width: 242px; margin-left: auto; margin-right: auto; }
  .promotion_carousel_item img, .promotion_carousel_item > div { width: 242px; }
}

.promotion_carousel_item p { font-size: 18px; font-weight: 400; line-height: 1; }

@media screen and (max-width: 767px) {
  .promotion_carousel_item p { margin-top: 10px; font-size: 12px; margin-bottom: 0px !important; }
}

.promotion_sns-group_wrap h3 { margin-top: 0px; margin-bottom: 25px; }

.promotion_sns-group { justify-content: center; font-size: 24px; font-weight: 700; gap: 32px; }

.promotion_sns-group a { display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; }

.btn, .icon_play img, .icon_play::after { display: block; }

@media screen and (max-width: 767px) {
  .promotion_sns-group a { width: 40px; height: 40px; }
  .promotion_caption { font-weight: 400 !important; }
}

.promotion_sns-group a img { max-width: 100%; max-height: 100%; width: auto; height: auto; }

.global-footer-wrapper { margin-top: 110px; }

.icon_play { position: relative; cursor: pointer; }

.icon_play::after { position: absolute; top: calc(50% - 30px); left: calc(50% - 30px); width: 60px; height: 60px; content: ""; background: url("https://www.yamaha.com/ja/about/experience/promotion/music-is-a-challenge/images/icon_play.png") 50% 50% / 100% 100% no-repeat; }

@media screen and (min-width: 768px) {
  .promotion_mov_main .icon_play::after { top: calc(50% - 60px); left: calc(50% - 60px); display: block; width: 120px; height: 120px; }
}

.promotion_text_tag { color: rgb(0, 0, 0) !important; }

.promotion_ttl_rule + .promotion_dl { margin-top: 15px; }

.promotion_sns-group a:focus, .promotion_sns-group a:hover { opacity: 0.8; }

.btn { padding: 0px; }

.promotion_btn_follow { max-width: 234px; width: 100%; font-weight: 700; vertical-align: middle; text-align: center; text-decoration: none; display: inline-block; border-radius: 60px; background-color: rgb(75, 30, 120); transition: 0.15s ease-in-out; overflow: hidden; z-index: 0; line-height: 1; }

.promotion_btn_follow .icon-c { position: absolute; right: 15px; bottom: 0px; top: 0px; margin: auto; width: 30px; height: 30px; }

.promotion_btn_follow { position: relative; color: rgb(75, 30, 120); padding: 15px 44px 15px 20px; border: 1px solid rgb(75, 30, 120); background-color: rgba(255, 255, 255, 0.8); }

.promotion_btn_follow:focus, .promotion_btn_follow:hover { color: rgb(255, 255, 255); border-color: rgb(255, 255, 255); background-color: rgb(123, 71, 210); text-decoration: none; }

.promotion_btn_follow:focus .icon-c::before, .promotion_btn_follow:hover .icon-c::before { display: none; }

.promotion_btn_follow:focus .icon-c::after, .promotion_btn_follow:hover .icon-c::after { display: block; }

.promotion_btn_follow .icon-c::after, .promotion_btn_follow .icon-c::before { content: ""; width: 30px; height: 30px; display: inline-block; position: absolute; top: 0px; left: 0px; transition: 0.15s ease-in-out; }

.promotion_btn_follow .icon-c::before { background: url("https://www.yamaha.com/ja/about/experience/promotion/music-is-a-challenge/images/icon_arrow-m_violet.svg") 50% 50% / 100% 100% no-repeat; }

.promotion_btn_follow .icon-c::after { display: none; background: url("https://www.yamaha.com/ja/about/experience/promotion/music-is-a-challenge/images/icon_arrow-m_white.svg") 50% 50% / 100% 100% no-repeat; }

.promotion_close { background-color: rgb(255, 255, 255); height: 10em; display: flex; align-items: center; justify-content: center; }

.promotion_close p { font-size: 24px; text-align: center; font-weight: 700; margin-bottom: 0px; }

@media screen and (max-width: 767px) {
  .promotion_close { height: 12em; }
  .promotion_close p { font-size: 16px; }
}

.carousel-control { width: 4%; }

@media screen and (min-width: 768px) {
  .carousel-control, .carousel-control:focus { color: rgb(68, 81, 102); opacity: 1; }
}

.promotion_h2 h2 { font-weight: bold; }
