.kv {
 background-image: url("../../images/home/kv_bg.webp");
 background-repeat: no-repeat;
 background-size: cover;
 background-position: top;
 padding-top: 80px;
}
@media screen and (min-width: 1024px) {
 .kv {
  padding-top: 120px;
 }
}
.kv_inner {
 position: relative;
 text-align: center;
}
.kv_inner .kv_txt {
 position: absolute;
 z-index: 10;
 top: 0;
 right: -3%;
}
@media screen and (min-width: 768px) {
 .kv_inner .kv_txt {
  right: 5%;
 }
}
.kv_inner .kv_txt img {
 width: auto;
 height: clamp(21.875rem, 11.581rem + 51.47vw, 43.75rem);
}
.kv_inner .kv_img {
 position: relative;
 text-align: center;
 display: inline-block;
}
.kv_inner .kv_img .senmu {
 text-align: center;
}
.kv_inner .kv_img .ttl {
 position: absolute;
 z-index: 10;
 bottom: 3%;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 width: 100%;
 max-width: 630px;
}
.kv_inner .kv_img .catch {
 position: absolute;
}
.kv_inner .kv_img .catch img {
 width: clamp(3.75rem, 0.568rem + 15.91vw, 12.5rem);
}
.kv_inner .kv_img .catch1 {
 top: 0;
 right: 11%;
}
@media screen and (min-width: 768px) {
 .kv_inner .kv_img .catch1 {
  right: 5%;
 }
}
@media screen and (min-width: 1024px) {
 .kv_inner .kv_img .catch1 {
  right: -15%;
 }
}
@media screen and (min-width: 1200px) {
 .kv_inner .kv_img .catch1 {
  right: -20%;
 }
}
.kv_inner .kv_img .catch2 {
 top: 0;
 left: 10%;
}
@media screen and (min-width: 768px) {
 .kv_inner .kv_img .catch2 {
  left: 0;
 }
}
@media screen and (min-width: 1024px) {
 .kv_inner .kv_img .catch2 {
  left: -15%;
 }
}
@media screen and (min-width: 1200px) {
 .kv_inner .kv_img .catch2 {
  left: -20%;
 }
}

.contents {
 padding: 30px 0;
}
@media screen and (min-width: 1024px) {
 .contents {
  padding: 50px 0;
 }
}
.contents_list .item {
 background: #fff;
 border-radius: 10px;
}
.contents_list .item:not(:first-child) {
 margin-top: 25px;
}
.contents_list .item .acc_ttl {
 position: relative;
 padding: 25px 50px;
 cursor: pointer;
 pointer-events: auto;
 text-align: center;
}
.contents_list .item .acc_ttl:before {
 content: "";
 display: block;
 position: absolute;
 top: calc(50% - 4px);
 right: 17px;
 background-image: url("../../images/home/icon_arrow.webp");
 background-repeat: no-repeat;
 background-size: 100% auto;
 background-position: top right;
 width: 18px;
 height: 12px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_ttl:before {
  width: 23px;
  height: 15px;
  right: 5%;
 }
}
.contents_list .item .acc_ttl img {
 width: auto;
 max-height: 60px;
}
.contents_list .item .acc_txt {
 padding: 5px 20px 25px;
 display: none;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt {
  padding: 10px 50px 45px;
 }
}
.contents_list .item .acc_txt .block:not(:first-child) {
 margin-top: 20px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .block:not(:first-child) {
  margin-top: 30px;
 }
}
.contents_list .item .acc_txt .block .img_h {
 text-align: center;
}
.contents_list .item .acc_txt .block .img_h img {
 width: auto;
 height: 17.71px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .block .img_h img {
  height: 23.62px;
 }
}
.contents_list .item .acc_txt .block .img {
 text-align: center;
}
.contents_list .item .acc_txt .block .ps {
 margin-top: -3px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .block .ps {
  margin-top: -5px;
 }
}
.contents_list .item .acc_txt .block .ps .bold {
 font-weight: 900;
}
.contents_list .item .acc_txt .block .yt {
 width: 100%;
 aspect-ratio: 16/9;
 margin-top: 25px;
}
.contents_list .item .acc_txt .block .yt iframe {
 width: 100%;
 height: 100%;
}
.contents_list .item .acc_txt .area {
 position: relative;
 margin-top: 20px;
 padding-bottom: 60%;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .area {
  margin-top: 30px;
 }
}
@media screen and (min-width: 1024px) {
 .contents_list .item .acc_txt .area {
  padding-bottom: 50%;
 }
}
.contents_list .item .acc_txt .area:before {
 content: "";
 display: block;
 position: absolute;
 z-index: 0;
 bottom: 0;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 width: 100%;
 height: 100%;
 background-image: url("../../images/home/area_bg_pt.webp");
 background-repeat: no-repeat;
 background-size: contain;
 background-position: bottom center;
}
@media screen and (min-width: 1024px) {
 .contents_list .item .acc_txt .area:before {
  bottom: initial;
  top: 0;
  background-image: url("../../images/home/area_bg_lt.webp");
  background-position: top center;
 }
}
.contents_list .item .acc_txt .area .block {
 position: relative;
 z-index: 5;
}
.contents_list .item .acc_txt .area .block .img {
 text-align: initial;
}
.contents_list .item .acc_txt .area .block .img img {
 width: 75%;
 max-width: 350px;
}
@media screen and (min-width: 641px) {
 .contents_list .item .acc_txt .area .block .img img {
  width: 50%;
 }
}
@media screen and (min-width: 1024px) {
 .contents_list .item .acc_txt .area .block .ps {
  max-width: 677px;
 }
}
.contents_list .item .acc_txt .status {
 margin-top: 35px;
}
@media screen and (min-width: 1024px) {
 .contents_list .item .acc_txt .status {
  margin-top: 70px;
 }
}
.contents_list .item .acc_txt .status_h {
 text-align: center;
}
.contents_list .item .acc_txt .status_h img {
 width: auto;
 height: 17.71px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .status_h img {
  height: 23.62px;
 }
}
.contents_list .item .acc_txt .status_list {
 margin-top: 30px;
 max-width: 800px;
 margin-inline: auto;
}
.contents_list .item .acc_txt .status_list_item {
 border-top: 1px solid #ccc;
 border-left: 1px solid #ccc;
 border-right: 1px solid #ccc;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .status_list_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
 }
}
.contents_list .item .acc_txt .status_list_item:last-child {
 border-bottom: 1px solid #ccc;
}
.contents_list .item .acc_txt .status_list_item dt,
.contents_list .item .acc_txt .status_list_item dd {
 padding: 10px;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .status_list_item dt,
 .contents_list .item .acc_txt .status_list_item dd {
  padding: 15px 25px;
 }
}
@media screen and (min-width: 1024px) {
 .contents_list .item .acc_txt .status_list_item dt,
 .contents_list .item .acc_txt .status_list_item dd {
  font-size: 18px;
 }
}
.contents_list .item .acc_txt .status_list_item dt {
 background: #fffaf7;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .status_list_item dt {
  width: 60%;
  max-width: 550px;
 }
}
.contents_list .item .acc_txt .status_list_item dd {
 border-top: 1px solid #ccc;
}
@media screen and (min-width: 768px) {
 .contents_list .item .acc_txt .status_list_item dd {
  border-top: none;
  border-left: 1px solid #ccc;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
 }
}

.episode_inner {
 padding: 30px 0;
 background: #fff;
 border-radius: 10px;
}
@media screen and (min-width: 1024px) {
 .episode_inner {
  padding: 50px 0;
 }
}
.episode_logo {
 text-align: center;
}
.episode_logo img {
 width: clamp(12.5rem, 11.25rem + 6.25vw, 18.75rem);
 height: auto;
}
.episode_list {
 margin-top: 30px;
}
@media screen and (min-width: 1024px) {
 .episode_list {
  margin-top: 50px;
 }
}
.episode_list .item {
 border-top: 1px solid #ccc;
}
@media screen and (min-width: 1024px) {
 .episode_list .item {
  border-top: 2px solid #ccc;
 }
}
.episode_list .item:last-child {
 border-bottom: 1px solid #ccc;
}
@media screen and (min-width: 1024px) {
 .episode_list .item:last-child {
  border-bottom: 2px solid #ccc;
 }
}
.episode_list .item a {
 padding: 25px 0;
 display: block;
}
@media screen and (min-width: 768px) {
 .episode_list .item a {
  padding: 25px;
 }
}
.episode_list .item a .column {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
}
.episode_list .item a .column .ele_icon {
 width: 35px;
 margin-right: 15px;
}
@media screen and (min-width: 1024px) {
 .episode_list .item a .column .ele_icon {
  width: 45px;
  margin-right: 30px;
 }
}
.episode_list .item a .column .ele_icon img {
 width: 35px;
 height: auto;
}
@media screen and (min-width: 1024px) {
 .episode_list .item a .column .ele_icon img {
  width: 45px;
 }
}
.episode_list .item a .column .ele_contents {
 -webkit-box-flex: 1;
 -ms-flex: 1;
 flex: 1;
}
.episode_list .item a .column .ele_contents .date,
.episode_list .item a .column .ele_contents .place {
 font-size: 12px;
}
@media screen and (min-width: 768px) {
 .episode_list .item a .column .ele_contents .date,
 .episode_list .item a .column .ele_contents .place {
  font-size: 14px;
 }
}
@media screen and (min-width: 1024px) {
 .episode_list .item a .column .ele_contents .date,
 .episode_list .item a .column .ele_contents .place {
  font-size: 15px;
 }
}
.episode_list .item a .column .ele_contents .new-icon {
 width: 30px;
 padding-bottom: 10px;
}
@media screen and (min-width: 768px) {
 .episode_list .item a .column .ele_contents .new-icon {
  width: 35px;
  padding-bottom: 10px;
 }
}
@media screen and (min-width: 1024px) {
 .episode_list .item a .column .ele_contents .new-icon {
  width: 40px;
  padding-bottom: 10px;
 }
}
.episode_list .item a .column .ele_contents .h {
 margin: 12px 0 10px;
 line-height: 1.6em;
 font-size: 15px;
 font-weight: 900;
}
@media screen and (min-width: 768px) {
 .episode_list .item a .column .ele_contents .h {
  font-size: 18px;
 }
}
@media screen and (min-width: 1024px) {
 .episode_list .item a .column .ele_contents .h {
  margin: 14px 0 12px;
  font-size: 22px;
 }
}
.episode_list .item a .column .ele_contents .place {
 line-height: 1.6em;
}
.episode_list .item .lock {
 text-align: center;
 padding: 25px 0;
}
.episode_list .item .lock img {
 width: 35px;
 height: auto;
}

.campaign {
 margin-top: 30px;
}
@media screen and (min-width: 1024px) {
 .campaign {
  margin-top: 50px;
 }
}
.campaign .inner {
 padding: 30px 0 0;
 background: #fff;
 border-radius: 10px;
}
@media screen and (min-width: 1024px) {
 .campaign .inner {
  padding: 50px 0 0;
 }
}
.campaign .inner .h {
 text-align: center;
}
.campaign .inner .h img {
 width: auto;
 height: 17.71px;
}
@media screen and (min-width: 768px) {
 .campaign .inner .h img {
  height: 23.62px;
 }
}
.campaign .inner .column {
 margin-top: 20px;
}
@media screen and (min-width: 1024px) {
 .campaign .inner .column {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
 }
}
@media screen and (min-width: 1024px) {
 .campaign .inner .column .txt {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
 }
}
.campaign .inner .column .img {
 text-align: center;
}
@media screen and (min-width: 768px) {
 .campaign .inner .column .img {
  margin-top: 20px;
 }
}
@media screen and (min-width: 1024px) {
 .campaign .inner .column .img {
  margin-top: 0;
  width: 45%;
  max-width: 512px;
 }
}

.season1 {
 margin-top: 30px;
}
@media screen and (min-width: 1024px) {
 .season1 {
  margin-top: 50px;
 }
}
.season1 .inner {
 background: #fff;
 border-radius: 10px;
}
.season1 .inner .btn a {
 text-align: center;
 display: block;
 padding: 20px 0;
}

.sampling_logo {
 text-align: center;
 padding-bottom: 45px;
 border-bottom: 2px solid #ccc;
}

@media screen and (min-width: 768px) {
 .sampling_logo {
  text-align: center;
  padding-bottom: 45px;
  border-bottom: 2px solid #ccc;
 }
}
.sampling_logo img {
 width: clamp(12.5rem, 11.25rem + 6.25vw, 18.75rem);
 height: auto;
}

.sampling_icon {
 margin-top: 35px;
}

.sampling_icon .icon {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}

.sampling_icon .icon img {
 margin-right: 5px;
 width: 45px;
}

@media screen and (min-width: 768px) {
 .sampling_icon .icon img {
  margin-right: 10px;
 }
}
.sampling_icon .icon h2 {
 font-size: 20px;
 letter-spacing: 2px;
}

@media screen and (min-width: 768px) {
 .sampling_icon .icon h2 {
  font-size: 30px;
  letter-spacing: 2px;
 }
}
.sampling-m {
 width: auto;
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 padding-top: 30px;
 -webkit-box-orient: vertical;
 -webkit-box-direction: normal;
 -ms-flex-direction: column;
 flex-direction: column;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
}

@media screen and (min-width: 768px) {
 .sampling-m {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 35px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
 }
}

.sampling-l:not(:first-child) {
 margin-top: 30px;
}

@media screen and (min-width: 768px) {
 .sampling-l:not(:first-child) {
  width: 90%;
  margin-top: 50px;
 }
}
@media screen and (min-width: 768px) {
 .sampling-l {
  width: 90%;
 }
}
.sampling-l p {
 font-size: 14px;
 padding-top: 15px;
 line-height: 1.6;
}

@media screen and (min-width: 768px) {
 .sampling-l p {
  padding-left: 20px;
  width: 95%;
  font-size: 18px;
  padding-top: 15px;
  line-height: 1.9;
 }
}
.sampling-m .next {
 width: 75%;
}

.br-sp {
 display: none;
}

@media (max-width: 600px) {
 .br-sp {
  display: block;
 }
}

/* ============================================================
  COLLAB PAGE
============================================================ */

.collab-page {
 background: #f5c400;
}

.collab-page .collab-main {
 width: 100%;
 overflow: hidden;
}

/* ============================================================
  HEADER
============================================================ */

.collab-page .collab-header {
 position: absolute;
 z-index: 50;
 top: 0;
 left: 0;
 width: 100%;
 pointer-events: none;
}

.collab-page .collab-header__inner {
 width: 100%;
 padding: 24px 32px;
}

.collab-page .collab-header__logo {
 margin: 0;
 line-height: 1;
 text-align: left;
}

.collab-page .collab-header__logo a {
 display: inline-block;
 pointer-events: auto;
}

.collab-page .collab-header__logo img {
 display: block;
 width: auto;
 height: 42px;
}

/* ============================================================
  KV
============================================================ */

.collab-page .collab-kv {
 position: relative;
 width: 100%;
 background: #f7c800;
}

.collab-page .collab-kv img {
 display: block;
 width: 100%;
 height: auto;
}

/* ============================================================
  COLLAB LOGO
============================================================ */

.collab-page .collab-logo-area {
 padding: 50px 0 45px;
 background: #fff;
}

.collab-page .collab-logo-area__inner {
 display: flex;
 justify-content: center;
 align-items: center;
}

.collab-page .collab-logo-area__inner img {
 display: block;
 width: min(376px, 70%);
 height: auto;
}

/* ============================================================
  CONTENTS
============================================================ */

.collab-page .collab-contents {
 padding: 38px 0 52px;
 background: #f5c400;
}

.collab-page .collab-card {
 padding: 48px 48px 60px;
 background: #fff;
 border-radius: 10px;
}

.collab-page .collab-block + .collab-block {
 margin-top: 76px;
}

/* ============================================================
  HEADING
============================================================ */

.collab-page .collab-heading {
 margin: 0 0 40px;
 color: #e60012;
 font-size: clamp(24px, 2.4vw, 38px);
 font-weight: 900;
 line-height: 1.35;
 letter-spacing: 0;
 text-align: center;
}

.collab-page .collab-heading--logo {
 display: flex;
 align-items: center;
 justify-content: center;
 flex-wrap: wrap;
 gap: 10px;
}

.collab-page .collab-heading--logo img {
 display: block;
 width: auto;
 height: 45px;
 max-width: none;
}

.collab-page .collab-heading--logo span {
 display: block;
 color: #e60012;
 font-size: inherit;
 font-weight: 900;
 line-height: 1.2;
 white-space: nowrap;
}

/* ============================================================
  MEDIA CONTENT
============================================================ */

.collab-page .collab-media {
 display: grid;
 grid-template-columns: minmax(0, 500px) minmax(0, 1fr);

 gap: 44px;
}

.collab-page .collab-media__image img {
 display: block;
 width: 100%;
 height: auto;
}

.collab-page .collab-media__body {
 min-width: 0;
}

.collab-page .collab-media__body p {
 margin: 0;
 font-size: clamp(14px, 1.2vw, 16px);
 font-weight: 500;
 line-height: 2;
}

.collab-page .collab-media__body p + p {
 margin-top: 18px;
}

/* ============================================================
  SCHEDULE
============================================================ */

.collab-page .collab-block--schedule {
 margin-top: 82px;
}

.collab-page .collab-block--schedule .collab-heading {
 margin-bottom: 38px;
}

.collab-page .collab-schedule {
 padding: 28px 38px;
 background: #fff;
 border: 3px solid #e7c52f;
 border-radius: 10px;
}

.collab-page .collab-schedule__item {
 display: grid;
 grid-template-columns: 300px minmax(0, 1fr) 90px;
 align-items: center;
 gap: 28px;
 padding: 16px 0;
 color: #222;
}

.collab-page .collab-schedule__item + .collab-schedule__item {
 margin-top: 2px;
}

.collab-page .collab-schedule__image {
 overflow: hidden;
}

.collab-page .collab-schedule__image img {
 display: block;
 width: 100%;
 height: 166px;
 object-fit: cover;
}

.collab-page .collab-schedule__info h3 {
 margin: 0 0 10px;
 color: #222;
 font-size: clamp(15px, 1.2vw, 19px);
 font-weight: 700;
 line-height: 1.6;
}

.collab-page .collab-schedule__info p {
 margin: 0;
 color: #333;
 font-size: clamp(13px, 1vw, 15px);
 font-weight: 500;
 line-height: 1.7;
}

.collab-page .collab-schedule__link {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 6px;
}

.collab-page .collab-schedule__link img {
 display: block;
 width: 41px;
 height: 41px;
 transition: transform 0.25s ease;
}

.collab-page .collab-schedule__link span {
 color: #e60012;
 font-size: 10px;
 font-weight: 700;
 line-height: 1.3;
 text-align: center;
 white-space: nowrap;
}

.collab-page .collab-schedule__item:hover .collab-schedule__link img {
 transform: translateX(4px);
}

/* ============================================================
  LOWER COLLAB LOGO
============================================================ */

.collab-page .collab-block--logo {
 display: flex;
 justify-content: center;
 margin-top: 70px;
}

.collab-page .collab-block--logo > img {
 display: block;
 width: min(376px, 70%);
 height: auto;
}

/* ============================================================
  WEBSITE
============================================================ */

.collab-page .collab-block--website {
 margin-top: 60px;
}

.collab-page .collab-heading--website {
 margin-bottom: 40px;
}

.collab-page .collab-website-link {
 margin-top: 32px !important;
}

.collab-page .collab-website-link a {
 display: flex;
 align-items: center;
 justify-content: flex-end;
 gap: 12px;
 color: #e60012;
 font-size: 14px;
 font-weight: 700;
}

.collab-page .collab-website-link a span {
 color: #e60012;
}

.collab-page .collab-website-link img {
 display: block;
 width: 41px;
 height: 41px;
 flex: 0 0 41px;
 transition: transform 0.25s ease;
}

.collab-page .collab-website-link a:hover img {
 transform: translateX(4px);
}

/* ============================================================
  TABLET
============================================================ */

@media screen and (max-width: 1023px) {
 .collab-page .collab-card {
  padding: 40px 32px 48px;
 }

 .collab-page .collab-media {
  grid-template-columns: 44% minmax(0, 1fr);
  gap: 30px;
 }

 .collab-page .collab-schedule {
  padding: 24px;
 }

 .collab-page .collab-schedule__item {
  grid-template-columns: 220px minmax(0, 1fr) 70px;
  gap: 20px;
 }

 .collab-page .collab-schedule__image img {
  height: 130px;
 }
}

/* ============================================================
  COLLAB PAGE - SP
============================================================ */
@media screen and (max-width: 767px) {
 /* ============================================================
    BASE
  ============================================================ */
 .collab-page {
  min-width: 0;
 }

 .collab-page .collab-main {
  width: 100%;
  overflow: hidden;
 }

 .collab-page .wrap {
  width: calc(100% - 24px);
  max-width: none;
  margin-inline: auto;
 }

 /* ============================================================
    HEADER
  ============================================================ */
 .collab-page .collab-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  width: 100%;
 }

 .collab-page .collab-header__inner {
  padding: 12px 14px;
 }

 .collab-page .collab-header__logo {
  margin: 0;
  line-height: 1;
 }

 .collab-page .collab-header__logo img {
  width: auto;
  height: 26px;
 }

 /* ============================================================
    KV
  ============================================================ */
 .collab-page .collab-kv {
  width: 100%;
  overflow: hidden;
 }

 .collab-page .collab-kv img {
  display: block;
  width: 100%;
  height: auto;
 }

 /* ============================================================
    COLLAB LOGO
  ============================================================ */
 .collab-page .collab-logo-area {
  padding: 24px 0 22px;
 }

 .collab-page .collab-logo-area__inner {
  display: flex;
  align-items: center;
  justify-content: center;
 }

 .collab-page .collab-logo-area__inner img {
  width: 230px;
  max-width: 78%;
  height: auto;
 }

 /* ============================================================
    CONTENTS
  ============================================================ */
 .collab-page .collab-contents {
  padding: 14px 0 28px;
 }

 .collab-page .collab-card {
  padding: 28px 16px 34px;
  border-radius: 8px;
 }

 .collab-page .collab-block + .collab-block {
  margin-top: 48px;
 }

 /* ============================================================
    HEADING
  ============================================================ */
 .collab-page .collab-heading {
  margin: 0 0 22px;
  font-size: 22px;
  line-height: 1.4;
  text-align: center;
 }

 .collab-page .collab-heading--logo {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 6px;
 }

 .collab-page .collab-heading--logo img {
  width: 185px;
  max-width: 65%;
  height: auto;
 }

 .collab-page .collab-heading--logo span {
  flex: 0 0 auto;
  font-size: 20px;
  line-height: 1.2;
  white-space: nowrap;
 }

 /* ============================================================
    WEBSITE HEADING
  ============================================================ */
 .collab-page .collab-heading--website {
  display: flex;
  flex-direction: column;
  gap: 8px;
 }

 .collab-page .collab-heading--website img {
  width: 205px;
  max-width: 78%;
 }

 .collab-page .collab-heading--website span {
  width: 100%;
  font-size: 19px;
  line-height: 1.45;
  text-align: center;
  white-space: normal;
 }

 /* ============================================================
    MEDIA CONTENT
  ============================================================ */
 .collab-page .collab-media {
  display: block;
 }

 .collab-page .collab-media__image {
  width: 100%;
  margin-bottom: 22px;
 }

 .collab-page .collab-media__image img {
  display: block;
  width: 100%;
  height: auto;
 }

 .collab-page .collab-media__body {
  width: 100%;
 }

 .collab-page .collab-media__body p {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.02em;
 }

 .collab-page .collab-media__body p + p {
  margin-top: 14px;
 }

 /* ============================================================
    SCHEDULE
  ============================================================ */
 .collab-page .collab-block--schedule {
  margin-top: 52px;
 }

 .collab-page .collab-block--schedule .collab-heading {
  margin-bottom: 22px;
  font-size: 21px;
 }

 .collab-page .collab-schedule {
  padding: 8px 12px;
  border-width: 2px;
  border-radius: 8px;
 }

 .collab-page .collab-schedule__item {
  position: relative;
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px 0;
 }

 .collab-page .collab-schedule__item + .collab-schedule__item {
  margin-top: 0;
  border-top: 1px solid #eee;
 }

 /* 店舗画像 */
 .collab-page .collab-schedule__image {
  width: 108px;
  overflow: hidden;
 }

 .collab-page .collab-schedule__image img {
  display: block;
  width: 108px;
  height: 76px;
  object-fit: cover;
  object-position: center;
 }

 /* 店舗情報 */
 .collab-page .collab-schedule__info {
  min-width: 0;
  padding-right: 30px;
 }

 .collab-page .collab-schedule__info h3 {
  margin: 0 0 6px;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.55;
 }

 .collab-page .collab-schedule__info p {
  margin: 0;
  font-size: 9.5px;
  line-height: 1.55;
 }

 /* 矢印 */
 .collab-page .collab-schedule__link {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 28px;
  transform: translateY(-50%);
 }

 .collab-page .collab-schedule__link img {
  display: block;
  width: 28px;
  height: 28px;
 }

 .collab-page .collab-schedule__link span {
  display: none;
 }

 /* ============================================================
    LOWER COLLAB LOGO
  ============================================================ */
 .collab-page .collab-block--logo {
  display: flex;
  justify-content: center;
  margin-top: 46px;
 }

 .collab-page .collab-block--logo > img {
  width: 230px;
  max-width: 78%;
  height: auto;
 }

 /* ============================================================
    WEBSITE
  ============================================================ */
 .collab-page .collab-block--website {
  margin-top: 46px;
 }

 .collab-page .collab-website-link {
  margin-top: 22px !important;
 }

 .collab-page .collab-website-link a {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  font-size: 11px;
  line-height: 1.5;
 }

 .collab-page .collab-website-link img {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
 }
}

/* ============================================================
  COLLAB PAGE - SMALL SP
============================================================ */
@media screen and (max-width: 420px) {
 /* ============================================================
    CONTENTS
  ============================================================ */
 .collab-page .wrap {
  width: calc(100% - 16px);
 }

 .collab-page .collab-card {
  padding: 24px 12px 30px;
 }

 /* ============================================================
    HEADER
  ============================================================ */
 .collab-page .collab-header__inner {
  padding: 10px 10px;
 }

 .collab-page .collab-header__logo img {
  height: 23px;
 }

 /* ============================================================
    HEADING
  ============================================================ */
 .collab-page .collab-heading {
  font-size: 20px;
 }

 .collab-page .collab-heading--logo {
  gap: 5px;
 }

 .collab-page .collab-heading--logo img {
  width: 165px;
 }

 .collab-page .collab-heading--logo span {
  font-size: 18px;
 }

 .collab-page .collab-heading--website img {
  width: 190px;
 }

 .collab-page .collab-heading--website span {
  font-size: 17px;
 }

 /* ============================================================
    TEXT
  ============================================================ */
 .collab-page .collab-media__body p {
  font-size: 12.5px;
  line-height: 1.85;
 }

 /* ============================================================
    SCHEDULE
  ============================================================ */
 .collab-page .collab-schedule {
  padding: 6px 10px;
 }

 .collab-page .collab-schedule__item {
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 10px;
  padding: 12px 0;
 }

 .collab-page .collab-schedule__image {
  width: 96px;
 }

 .collab-page .collab-schedule__image img {
  width: 96px;
  height: 68px;
 }

 .collab-page .collab-schedule__info {
  padding-right: 25px;
 }

 .collab-page .collab-schedule__info h3 {
  font-size: 10.5px;
 }

 .collab-page .collab-schedule__info p {
  font-size: 9px;
 }

 .collab-page .collab-schedule__link {
  width: 24px;
 }

 .collab-page .collab-schedule__link img {
  width: 24px;
  height: 24px;
 }

 /* ============================================================
    LOGO
  ============================================================ */
 .collab-page .collab-logo-area__inner img,
 .collab-page .collab-block--logo > img {
  width: 210px;
 }
}
