/*                         person                         */
#person .mv_inner {
 background-color: #f9cc12;
 padding: min(17rem, calc(170vw / 13.66)) 0 0;
}
#person .mv_ttl {
 width: min(54rem, calc(540vw / 13.66));
 margin: 0 auto;
}
#person .mv_txt {
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 margin-top: min(5.5rem, calc(55vw / 13.66));
}

.person_top_inner {
 position: relative;
 background-color: #f9cc12;
 padding: min(15rem, calc(150vw / 13.66)) 0 min(30rem, calc(300vw / 13.66));
}

#person .food_img_01 {
 width: min(32rem, calc(320vw / 13.66));
 position: absolute;
 top: max(-7rem, calc(-70vw / 13.66));
 left: max(-129rem, calc(-1290vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 1;
}
#person .food_img_02 {
 width: min(38.8rem, calc(388vw / 13.66));
 position: absolute;
 bottom: min(10rem, calc(100vw / 13.66));
 right: max(-120rem, calc(-1200vw / 13.66));
 left: 0;
 margin: 0 auto;
 z-index: 1;
}
.person_bg_img {
 width: min(22.6rem, calc(226vw / 13.66));
 position: absolute;
 top: max(-19.5rem, calc(-195vw / 13.66));
 left: 0;
 right: max(-125rem, calc(-1250vw / 13.66));
 margin: 0 auto;
}
.person_top_ttl {
 width: min(77rem, calc(770vw / 13.66));
 margin: 0 auto;
}
.person_top_list {
 width: min(117rem, calc(1170vw / 13.66));
 margin: min(8rem, calc(80vw / 13.66)) auto 0;
 display: flex;
 justify-content: space-between;
 gap: min(7rem, calc(70vw / 13.66)) 0;
 flex-wrap: wrap;
 position: relative;
 z-index: 1;
}
.person_top_item {
 width: min(36.4rem, calc(364vw / 13.66));
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333;
 border-radius: min(0.5rem, calc(5vw / 13.66));
 background-color: #fff;
 position: relative;
 padding: min(1.5rem, calc(15vw / 13.66)) min(1.5rem, calc(15vw / 13.66)) min(2.5rem, calc(25vw / 13.66));
 display: flex;
 flex-direction: column;
}
.person_top_num {
 text-align: left;
 box-sizing: border-box;
 padding-left: min(0.5rem, calc(5vw / 13.66));
 width: min(11rem, calc(110vw / 13.66));
 font-size: 2.8rem;
 font-weight: 600;
 letter-spacing: 0.06em;
 display: inline-block;
 position: absolute;
 top: min(1rem, calc(10vw / 13.66));
 left: min(1.5rem, calc(15vw / 13.66));
 background-color: #fff;
 line-height: 1.4;
 clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
 z-index: 1;
}
.person_top_item:nth-of-type(1) .person_top_num {
 color: #80ba3c;
}
.person_top_item:nth-of-type(1) .person_top_item_img {
 background-color: #cff445;
}

.person_top_item:nth-of-type(2) .person_top_num {
 color: #fc751a;
}
.person_top_item:nth-of-type(2) .person_top_item_img {
 background-color: #ffa329;
}
.person_top_item:nth-of-type(3) .person_top_item_img {
 background-color: #33a3ff;
}
.person_top_item:nth-of-type(3) .person_top_num {
 color: #0077ed;
}
.person_top_item:nth-of-type(4) .person_top_item_img {
 background-color: #f97575;
}
.person_top_item:nth-of-type(4) .person_top_num {
 color: #d30000;
}
.person_top_item:nth-of-type(5) .person_top_item_img {
 background-color: #ff94b0;
}
.person_top_item:nth-of-type(5) .person_top_num {
 color: #ff126d;
}

.person_top_item:nth-of-type(6) .person_top_num {
 color: #00bbf4;
}
.person_top_item:nth-of-type(6) .person_top_item_img {
 background-color: #7df0ff;
}

.person_top_detail {
 box-sizing: border-box;
 margin-top: min(2rem, calc(20vw / 13.66));
 display: flex;
 flex-direction: column;
 flex: 1;
}
.person_top_item_ttl {
 font-size: 2.4rem;
 font-weight: 600;
 color: #fff;
 line-height: 1.66;
 letter-spacing: 0.09em;
 text-align: justify;
 line-height: 1.8;
}
.person_top_item_ttl p {
 background-color: #54a840;
 display: inline;
 box-decoration-break: clone;
 -webkit-box-decoration-break:clone;
 line-height: 1.3;
 padding: 0 min(0.5rem, calc(5vw / 13.66));
}
.person_top_item:nth-of-type(2) .person_top_item_ttl p {
 background-color: #fc751a;
}
.person_top_item:nth-of-type(3) .person_top_item_ttl p {
 background-color: #0077ed;
}
.person_top_item:nth-of-type(4) .person_top_item_ttl p {
 background-color: #d30000;
}
.person_top_item:nth-of-type(5) .person_top_item_ttl p {
 background-color: #ff126d;
}
.person_top_item:nth-of-type(6) .person_top_item_ttl p {
 background-color: #00bbf4;
}

.person_top_item_txt {
 font-size: 1.5rem;
 font-weight: 600;
 letter-spacing: 0.09em;
 text-align: left;
 color: #000000;
 margin-top: min(0.5rem, calc(5vw / 13.66));
 flex: 1;
 line-height: 1.73;
}
.person_top_item .btn {
 width: min(22.6rem, calc(226vw / 13.66));
 margin: min(2rem, calc(20vw / 13.66)) auto 0;
}
.person_top_item .btn::before {
 content: none;
}
.person_top_item .btn a {
 font-size: 1.6rem;
 padding: min(0.7rem, calc(7vw / 13.66)) 0;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
}
.person_top_item .btn a::before {
 content: "";
 width: min(0.9rem, calc(9vw / 13.66));
 height: min(1.1rem, calc(11vw / 13.66));
 background: url(../images/common/btn_arrow.svg) no-repeat;
 background-size: cover;
 transform: translateY(-50%);
 position: absolute;
 top: 50%;
 right: min(1.5rem, calc(15vw / 13.66));
 transition: 0.4s;
}

@media (hover: hover) and (pointer: fine) {
 .person_top_item .btn a:where(:any-link, :enabled, summary):hover {
  transform: none;
  color: #333333;
  background-color: #fff;
 }
 .person_top_item .btn a:where(:any-link, :enabled, summary):hover::before {
  right: min(1.5rem, calc(15vw / 13.66));
  filter: brightness(1) invert(0.7);
 }
}

@media screen and (max-width: 767px) {
 #person .mv_inner {
  padding: 11rem 0 0;
 }
 #person .mv_ttl {
  width: 26.5rem;
 }
 #person .mv_txt {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 1.78;
  text-align: justify;
  width: 33.5rem;
  margin: 0 auto;
  margin-top: 4rem;
 }

 .person_top_inner {
  padding: 8rem 0 16rem;
 }

 #person .food_img_01 {
  width: 16rem;
  position: absolute;
  top: 19rem;
  left: -4.5rem;
  right: auto;
  margin: 0;
 }
 #person .food_img_02 {
  width: 19.3rem;
  position: absolute;
  bottom: 4rem;
  right: -6rem;
  left: auto;
  margin: 0;
 }

 .person_top_ttl {
  width: 27.5rem;
  margin: 0 auto;
 }
 .person_top_list {
  width: 33.5rem;
  margin: 8.5rem auto 0;
  flex-direction: column;
  gap: 2rem 0;
 }
 .person_top_item {
  width: 100%;
  border: #333333 solid 0.1rem;
  border-radius: 0.2rem;
  padding: 2rem 2rem 2.3rem;
 }
 .person_top_num {
  width: 8rem;
  font-size: 2rem;
  top: 1rem;
  left: 2rem;
 }

 .person_top_item_ttl {
  font-size: 2rem;
  margin-top: 1rem;
 }
 .person_top_item_ttl p {
  padding: 0 0.5rem;
 }
 .person_top_item_txt {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  margin-top: 0.5rem;
  line-height: 1.75;
 }
 .person_top_item .btn {
  width: 29.5rem;
  margin: 1.5rem auto 0;
 }

 .person_top_item .btn a {
  font-size: 1.4rem;
  padding: 0.8rem 0;
  border: 0.1rem solid #333333;
 }
 .person_top_item .btn a::before {
  width: 0.8rem;
  height: 1rem;
  right: 1.5rem;
 }
}

/*                         case                         */
#case .mv_inner {
 padding: min(20rem, calc(200vw / 13.66)) 0 0;
 position: relative;
 width: min(125rem, calc(1250vw / 13.66));
 margin: 0 auto;
}

#case .mv_detail {
 width: 100%;
 margin-left: min(7rem, calc(70vw / 13.66));
}
#case .mv_ttl {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 font-size: 4.2rem;
 font-weight: 900;
 letter-spacing: 0.18em;
 line-height: 1.45;
 gap: min(2rem, calc(20vw / 13.66)) 0;
}
#case .mv_ttl p {
 position: relative;
 z-index: 1;
 line-height: 1.3;
}
#case .mv_ttl p::before {
 content: "";
 display: block;
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 position: absolute;
 top: min(0.6rem, calc(6vw / 13.66));
 left: min(0.6rem, calc(6vw / 13.66));
 z-index: -1;
}
#case .mv_ttl p .ele {
 display: inline-block;
 background-color: #fff;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 padding-left: min(1.5rem, calc(15vw / 13.66));
}
#case .mv_ttl p .box {
 display: inline-block;
}
#case .mv_ttl p .box .ele:first-of-type {
 border-right: none;
}
#case .mv_ttl p .box .ele:last-of-type {
 border-left: none;
 padding-left: 0;
}
#case .mv_img {
 position: absolute;
 right: 0;
}
#case .mv_info {
 font-size: 2rem;
 font-weight: 600;
 letter-spacing: 0.08em;
 text-align: left;
 margin: min(2.5rem, calc(25vw / 13.66)) 0 min(3.5rem, calc(35vw / 13.66));
}
#case .mv_txt {
 width: min(68.5rem, calc(685vw / 13.66));
 background-color: #fff;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 padding: min(2.5rem, calc(25vw / 13.66)) min(3.5rem, calc(35vw / 13.66));
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.2em;
 text-align: justify;
 box-sizing: border-box;
 box-shadow: min(1rem, calc(10vw / 13.66)) min(1rem, calc(10vw / 13.66)) 0 #333333;
 position: relative;
}
#case .mv_txt::before {
 content: "";
 width: min(3.6rem, calc(36vw / 13.66));
 height: min(4.8rem, calc(48vw / 13.66));
 background-color: #333333;
 clip-path: polygon(0 20%, 0% 100%, 100% 0);
 position: absolute;
 top: min(3.3rem, calc(33vw / 13.66));
 right: max(-4.6rem, calc(-46vw / 13.66));
}
#case .mv_txt .arrow {
 display: block;
 width: min(3.6rem, calc(36vw / 13.66));
 height: min(4.8rem, calc(48vw / 13.66));
 position: absolute;
 top: min(2.2rem, calc(22vw / 13.66));
 right: max(-3.6rem, calc(-36vw / 13.66));
}
#case .mv_txt .arrow::before {
 content: "";
 width: 100%;
 height: 100%;
 background-color: #fff;
 clip-path: polygon(0 20%, 0% 100%, 100% 0);
 position: absolute;
 top: min(0.4rem, calc(4vw / 13.66));
 right: min(0.6rem, calc(6vw / 13.66));
 z-index: 1;
}
#case .mv_txt .arrow::after {
 content: "";
 width: 100%;
 height: 100%;
 background-color: #333333;
 clip-path: polygon(0 20%, 0% 100%, 100% 0);
 position: absolute;
 top:0;
 right: 0;
}
.mv_bg_img {
 width: min(10.2rem, calc(102vw / 13.66));
 position: absolute;
 top: min(14.5rem, calc(145vw / 13.66));
 left: min(5rem, calc(50vw / 13.66));
}
.mv_bg_img::before {
 content: "";
 width: min(1.6rem, calc(16vw / 13.66));
 height: min(1.2rem, calc(12vw / 13.66));
 background: url(../images/person/case04/case_bg_img_01_left.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: min(4.7rem, calc(47vw / 13.66));
 left: min(4rem, calc(40vw / 13.66));
 z-index: 1;
}
.mv_bg_img::after {
 content: "";
 width: min(1.6rem, calc(16vw / 13.66));
 height: min(1.2rem, calc(12vw / 13.66));
 background: url(../images/person/case04/case_bg_img_01_right.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: min(4.9rem, calc(49vw / 13.66));
 right: max(-0.5rem, calc(-5vw / 13.66));
 z-index: 1;
}

.side {
 position: absolute;
 top: min(16rem, calc(160vw / 13.66));
 left: 0;
}
.side span  {
 display: block;
 font-size: 2rem;
 font-weight: 600;
 letter-spacing: 0.08em;
 transform: rotate(90deg);
 transform-origin: left bottom;
 line-height: 1.65;
 padding: 0  min(1.5rem, calc(15vw / 13.66));
 color: #fff;
}

.episode_top {
 width: min(136.6rem, calc(1366vw / 13.66));
 margin: 0 auto;
 margin-top: min(9rem, calc(90vw / 13.66));
 padding-bottom: min(17.7rem, calc(177vw / 13.66));
 position: relative;
}
.episode_top_img {
 margin: 0 auto;
 position: relative;
 z-index: 2;
}
.episode_menu {
 width: min(115rem, calc(1150vw / 13.66));
 margin: min(9.5rem, calc(95vw / 13.66)) auto 0;
 display: flex;
 justify-content: space-between;
}
.episode_box {
 width: min(28rem, calc(280vw / 13.66));
 position: relative;
 display: flex;
 flex-direction: column;
 z-index: 1;
}
.episode_box_img {
 position: absolute;
 bottom: min(6rem, calc(60vw / 13.66));
 z-index: -1;
}

.episode_box_detail {
 width: min(15.5rem, calc(155vw / 13.66));
 margin-left: auto;
 display: flex;
 flex-direction: column;
 flex: 1;
}
.episode_box_ttl {
 background-color: #fff;
 border-radius: min(0.5rem, calc(5vw / 13.66));
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 font-size: 1.8rem;
 line-height: 1.27;
 font-weight: 700;
 box-shadow: min(0.5rem, calc(5vw / 13.66)) min(0.5rem, calc(5vw / 13.66)) 0 #333333;
 position: relative;
 letter-spacing: 0.15em;
 box-sizing: border-box;
 padding: min(2rem, calc(20vw / 13.66)) 0 min(1rem, calc(10vw / 13.66));
}
.episode_box_ttl > span {
 display: block;
 width: min(13rem, calc(130vw / 13.66));
 position: absolute;
 top: max(-1.2rem, calc(-12vw / 13.66));
 left: 0;
 right: 0;
 margin: 0 auto;
}

.episode_box_txt {
 background-color: #fff;
 border-radius: min(0.5rem, calc(5vw / 13.66));
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 box-shadow: min(0.5rem, calc(5vw / 13.66)) min(0.5rem, calc(5vw / 13.66)) 0 #333333;
 position: relative;
 box-sizing: border-box;
 padding: min(2rem, calc(20vw / 13.66)) 0 min(1rem, calc(10vw / 13.66));
 margin-top: min(2rem, calc(20vw / 13.66));
 font-size: 1.2rem;
 letter-spacing: 0.1em;
 line-height: 1.27;
 font-weight: 700;
 text-align: justify;
 flex: 1;
 display: flex;
 flex-direction: column;
 justify-content: space-between;
}
.episode_box_txt > p {
 margin: 0 min(1rem, calc(10vw / 13.66));
 line-height: 1.66;
 background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 87%, #333 87%, #333 90%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 0) 100%);
 background-repeat: repeat-y;
 background-size: 100% 1.7em;
 padding-bottom: min(1.5rem, calc(15vw / 13.66));
 margin-bottom: min(.5rem, calc(5vw / 13.66));
 letter-spacing: 0.05em;
}
.episode_box_txt > span {
 display: block;
 width: min(13rem, calc(130vw / 13.66));
 position: absolute;
 top: max(-1.2rem, calc(-12vw / 13.66));
 left: 0;
 right: 0;
 margin: 0 auto;
}
.episode_box_detail ul {
 display: flex;
 justify-content: center;
}
.episode_box_detail li {
 width: min(5rem, calc(50vw / 13.66));
}
.episode_box_detail li span {
 width: min(3.4rem, calc(34vw / 13.66));
 margin: 0 auto;
 display: block;
}
.episode_box_detail li p {
 font-size: 1rem;
 text-align: center;
 font-weight: 700;
 letter-spacing: 0.01em;
 margin-top: min(0.5rem, calc(5vw / 13.66));
 line-height: 1.2;
 white-space: nowrap;
 position: relative;
 left: 50%;
 transform: translateX(-50%);
 display: inline-block;
}

.episode_btn a {
 display: block;
 width: 100%;
 display: flex;
 align-items: center;
 background-color: #fff;
 box-sizing: border-box;
 border-radius: min(0.3rem, calc(3vw / 13.66));
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 font-size: 1.4rem;
 letter-spacing: 0.08em;
 font-weight: 700;
 color: #000000;
 gap: 0 min(1rem, calc(10vw / 13.66));
 padding: 0 min(1rem, calc(10vw / 13.66));
 margin-top: min(2rem, calc(20vw / 13.66));
 position: relative;
}
.episode_btn a span {
 display: block;
 width: min(2rem, calc(20vw / 13.66));
 font-size: 0;
}
.episode_btn a::before {
 content: "";
 width: min(1.2rem, calc(12vw / 13.66));
 height: min(1rem, calc(10vw / 13.66));
 position: absolute;
 right: min(1rem, calc(10vw / 13.66));
 top: 50%;
 transform: translateY(-50%);
 transition: 0.4s;
}

@media (hover: hover) and (pointer: fine) {
 .episode_btn a:where(:any-link, :enabled, summary):hover {
  transform: scale(1.05);
 }
}


.episode_note_txt {
 font-size: 1.4rem;
 font-weight: 700;
 letter-spacing: 0.05em;
 position: absolute;
 top: max(-4rem, calc(-40vw / 13.66));
 right: min(14rem, calc(140vw / 13.66));
}
.episode_contents {
 position: relative;
}
.episode_item {
 padding: min(12rem, calc(120vw / 13.66)) 0 0;
 position: relative;
}
.episode_item::before {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.episode_item_inner {
 width: min(113rem, calc(1130vw / 13.66));
 margin: 0 auto;
 position: relative;
 padding-bottom: min(15rem, calc(150vw / 13.66));
}
.episode_item_detail {
 position: relative;
 z-index: 1;
}
#episode_01 .episode_item_detail {
 width: min(83rem, calc(830vw / 13.66));
}
#episode_02 .episode_item_detail {
 width: min(81rem, calc(810vw / 13.66));
 margin-left: auto;
}

.episode_item_detail .num {
 display: block;
 display: flex;
 align-items: center;
 font-size: 1.8rem;
 letter-spacing: 0.08em;
 font-weight: 700;
 color: #000000;
 gap: 0 min(1rem, calc(10vw / 13.66));
}
.episode_item_detail .num span {
 display: block;
 width: min(2rem, calc(20vw / 13.66));
 font-size: 0;
}
.episode_item_ttl {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 font-size: 4.2rem;
 font-weight: 900;
 letter-spacing: 0.12em;
 line-height: 1.45;
 gap: min(2rem, calc(20vw / 13.66)) 0;
}
.episode_item_ttl p {
 position: relative;
 z-index: 1;
}
.episode_item_ttl p::before {
 content: "";
 display: block;
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 position: absolute;
 top: min(0.6rem, calc(6vw / 13.66));
 left: min(0.6rem, calc(6vw / 13.66));
 z-index: -1;
}
.episode_item_ttl p .ele {
 display: inline-block;
 background-color: #fff;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 padding-left: min(1.5rem, calc(15vw / 13.66));
}
.episode_item_ttl p .box {
 display: inline-block;
}
.episode_item_ttl p .box .ele:first-of-type {
 border-right: none;
}
.episode_item_ttl p .box .ele:last-of-type {
 border-left: none;
 padding-left: 0;
}
.episode_item_txt {
 width: min(71.5rem, calc(715vw / 13.66));
 font-size: 1.6rem;
 font-weight: 700;
 line-height: 2.1;
 letter-spacing: 0.18em;
 text-align: justify;
 margin-top: min(4rem, calc(40vw / 13.66));
}
.episode_item:nth-of-type(2) .episode_item_txt {
 width: 100%;
}
.episode_item:nth-of-type(3) .episode_item_txt {
 width: min(68rem, calc(680vw / 13.66));
}
.episode_bg_img {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
}

/*                         case01                         */
.case_01 {
 background-color: #cff445;
}

#case.case_01 .mv_img {
 width: min(40rem, calc(400vw / 13.66));
 bottom: min(2.5rem, calc(25vw / 13.66));
}
#case.case_01 .mv_ttl p::before {
 background-color: #54a840;
}
.case_01 .episode_top_img {
 width: min(98.4rem, calc(984vw / 13.66));
}
.case_01 .episode_box_img_01 {
 width: min(11.3rem, calc(113vw / 13.66));
 left: min(0.5rem, calc(5vw / 13.66));
 bottom: min(9.5rem, calc(95vw / 13.66));
}
.case_01 .episode_box_img_02 {
 width: min(23.9rem, calc(239vw / 13.66));
 left: max(-10rem, calc(-100vw / 13.66));
 bottom: min(9.5rem, calc(95vw / 13.66));
}
.case_01 .episode_box_img_03 {
 width: min(33.1rem, calc(331vw / 13.66));
 left: max(-14rem, calc(-140vw / 13.66));
 bottom: min(9.5rem, calc(95vw / 13.66));
}
.case_01 .episode_btn a::before {
 background: url(../images/person/case01/arrow.svg) no-repeat;
 background-size: cover;
}
.case_01 #episode_01 {
 background-color: #bdea32;
}
.case_01 #episode_01::before {
 background: url(../images/person/case01/episode_bg_01.svg) repeat-x;
}
.case_01 #episode_02 {
 background-color: #9fea1c;
}
.case_01 #episode_02::before {
 background: url(../images/person/case01/episode_bg_02.svg) repeat-x;
}
.case_01 #episode_03 {
 background-color: #93d819;
}
.case_01 #episode_03::before {
 background: url(../images/person/case01/episode_bg_03.svg) repeat-x;
}

.case_01 .side span,
.case_01 .episode_item_ttl p::before {
 background-color: #54a840;
}
.case_01 #episode_01 .episode_item_img {
 width: min(41.1rem, calc(411vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-7rem, calc(-70vw / 13.66));
}
.case_01 #episode_02 .episode_item_img {
 width: min(42rem, calc(420vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-11rem, calc(-110vw / 13.66));
}
.case_01 #episode_03 .episode_item_img {
 width: min(48.3rem, calc(483vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-9rem, calc(-90vw / 13.66));
}
.case_01 .episode_bg_img {
 width: min(31.2rem, calc(312vw / 13.66));
 top: min(86rem, calc(860vw / 13.66));
 right: max(-121rem, calc(-1210vw / 13.66));
}
/*                         case02                         */
.case_02 {
 background-color: #ffb725;
}

#case.case_02 .mv_img {
 width: min(46.4rem, calc(464vw / 13.66));
 bottom: min(6.5rem, calc(65vw / 13.66));
 right: max(-4rem, calc(-40vw / 13.66));
}
#case.case_02 .mv_ttl p::before {
 background-color: #f96500;
}
.case_02 .episode_top_img {
 width: min(97.8rem, calc(978vw / 13.66));
}
.case_02 .episode_box_img_01 {
 width: min(11.5rem, calc(115vw / 13.66));
 left: min(0.5rem, calc(5vw / 13.66));
 bottom: min(7.5rem, calc(75vw / 13.66));
}
.case_02 .episode_box_img_02 {
 width: min(20rem, calc(200vw / 13.66));
 left: max(-10rem, calc(-100vw / 13.66));
 bottom: min(7.5rem, calc(75vw / 13.66));
}
.case_02 .episode_box_img_03 {
 width: min(35rem, calc(350vw / 13.66));
 left: max(-15rem, calc(-150vw / 13.66));
 bottom: min(7.5rem, calc(75vw / 13.66));
}
.case_02 .episode_btn a::before {
 background: url(../images/person/case02/arrow.svg) no-repeat;
 background-size: cover;
}
.case_02 #episode_01 {
 background-color: #f9aa1e;
}
.case_02 #episode_01::before {
 background: url(../images/person/case02/episode_bg_01.svg) repeat-x;
}
.case_02 #episode_02 {
 background-color: #f79a06;
}
.case_02 #episode_02::before {
 background: url(../images/person/case02/episode_bg_02.svg) repeat-x;
}
.case_02 #episode_03 {
 background-color: #f48308;
}
.case_02 #episode_03 .episode_item_inner {
 padding-bottom: min(30rem, calc(300vw / 13.66));
}
.case_02 #episode_03::before {
 background: url(../images/person/case02/episode_bg_03.svg) repeat-x;
}

.case_02 .side span,
.case_02 .episode_item_ttl p::before {
 background-color: #f96500;
}
.case_02 #episode_01 .episode_item_img {
 width: min(30.2rem, calc(302vw / 13.66));
 position: absolute;
 bottom: 0;
 right: 0;
}
.case_02 #episode_02 .episode_item_img {
 width: min(30.7rem, calc(307vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-1.8rem, calc(-18vw / 13.66));
}
.case_02 #episode_03 .episode_item_img {
 width: min(48rem, calc(480vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-5.5rem, calc(-55vw / 13.66));
}
.case_02 .episode_bg_img {
 width: min(31.2rem, calc(312vw / 13.66));
 top: min(86rem, calc(860vw / 13.66));
 right: max(-121rem, calc(-1210vw / 13.66));
}
/*                         case03                         */
.case_03 {
 background-color: #99d6ff;
}

#case.case_03 .mv_img {
 width: min(40.2rem, calc(402vw / 13.66));
 bottom: min(9.5rem, calc(95vw / 13.66));
}
#case.case_03 .mv_ttl p::before {
 background-color: #0077ed;
}
.case_03 .episode_top_img {
 width: min(101.1rem, calc(1011vw / 13.66));
}
.case_03 .episode_box_img_01 {
 width: min(11rem, calc(110vw / 13.66));
 left: min(0.5rem, calc(5vw / 13.66));
 bottom: min(7rem, calc(70vw / 13.66));
}
.case_03 .episode_box_img_02 {
 width: min(18rem, calc(180vw / 13.66));
 left: max(-7.5rem, calc(-75vw / 13.66));
 bottom: min(7rem, calc(70vw / 13.66));
}
.case_03 .episode_box_img_03 {
 width: min(34rem, calc(340vw / 13.66));
 left: max(-16rem, calc(-160vw / 13.66));
 bottom: min(7rem, calc(70vw / 13.66));
}
.case_03 .episode_btn a::before {
 background: url(../images/person/case03/arrow.svg) no-repeat;
 background-size: cover;
}
.case_03 #episode_01 {
 background-color: #73caff;
}
.case_03 #episode_01::before {
 background: url(../images/person/case03/episode_bg_01.svg) repeat-x;
}
.case_03 #episode_02 {
 background-color: #55baff;
}
.case_03 #episode_02::before {
 background: url(../images/person/case03/episode_bg_02.svg) repeat-x;
}
.case_03 #episode_03 {
 background-color: #33a3ff;
}
.case_03 #episode_03 .episode_item_inner {
 padding-bottom: min(27rem, calc(270vw / 13.66));
}
.case_03 #episode_03::before {
 background: url(../images/person/case03/episode_bg_03.svg) repeat-x;
}

.case_03 .side span,
.case_03 .episode_item_ttl p::before {
 background-color: #0077ed;
}
.case_03 #episode_01 .episode_item_img {
 width: min(48rem, calc(480vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-11rem, calc(-110vw / 13.66));
}
.case_03 #episode_02 .episode_item_img {
 width: min(58.6rem, calc(586vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-10rem, calc(-100vw / 13.66));
}
.case_03 #episode_03 .episode_item_img {
 width: min(50rem, calc(500vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-10rem, calc(-100vw / 13.66));
}
.case_03 .episode_bg_img {
 width: min(27.7rem, calc(277vw / 13.66));
 top: min(79rem, calc(790vw / 13.66));
 right: max(-121rem, calc(-1210vw / 13.66));
}
/*                         case04                         */
.case_04 {
 background-color: #f99d9d;
}

#case.case_04 .mv_img {
 width: min(42.3rem, calc(423vw / 13.66));
 bottom: max(-24rem, calc(-240vw / 13.66));
}
#case.case_04 .mv_ttl p::before {
 background-color: #d30000;
}
.case_04 .episode_top_img {
 width: min(101.1rem, calc(1011vw / 13.66));
 position: relative;
 z-index: 2;
}
.case_04 .episode_box_img_01 {
 width: min(10.8rem, calc(108vw / 13.66));
 left: min(0.5rem, calc(5vw / 13.66));
 bottom: min(5.5rem, calc(55vw / 13.66));
}
.case_04 .episode_box_img_02 {
 width: min(20rem, calc(200vw / 13.66));
 left: max(-10rem, calc(-100vw / 13.66));
 bottom: min(5.5rem, calc(55vw / 13.66));
}
.case_04 .episode_box_img_03 {
 width: min(33rem, calc(330vw / 13.66));
 left: max(-14rem, calc(-140vw / 13.66));
 bottom: min(5.5rem, calc(55vw / 13.66));
}
.case_04 .episode_btn a::before {
 background: url(../images/person/case04/arrow.svg) no-repeat;
 background-size: cover;
}
.case_04 #episode_01 {
 background-color: #f99191;
}
.case_04 #episode_01::before {
 background: url(../images/person/case04/episode_bg_01.svg) repeat-x;
}
.case_04 #episode_02 {
 background-color: #f97575;
}
.case_04 #episode_02::before {
 background: url(../images/person/case04/episode_bg_02.svg) repeat-x;
}
.case_04 #episode_03 {
 background-color: #f95f5f;
}
.case_04 #episode_03 .episode_item_inner {
 padding-bottom: min(18rem, calc(180vw / 13.66));
}
.case_04 #episode_03::before {
 background: url(../images/person/case04/episode_bg_03.svg) repeat-x;
}

.case_04 .side span,
.case_04 .episode_item_ttl p::before {
 background-color: #d30000;
}
.case_04 #episode_01 .episode_item_img {
 width: min(30rem, calc(300vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-2rem, calc(-20vw / 13.66));
}
.case_04 #episode_02 .episode_item_img {
 width: min(30.8rem, calc(308vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-3rem, calc(-30vw / 13.66));
}
.case_04 #episode_03 .episode_item_img {
 width: min(43rem, calc(430vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-8rem, calc(-80vw / 13.66));
}
.case_04 .episode_bg_img {
 width: min(24.5rem, calc(245vw / 13.66));
 top: min(90rem, calc(900vw / 13.66));
 right: max(-125rem, calc(-1250vw / 13.66));
}

.case_04 .episode_item_ttl p .box {
 text-align: left;
}
.case_04 .episode_item_ttl p .box .ele {
 position: relative;
}
.case_04 .episode_item_ttl p:has(.box)::before {
 content: none;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(1) {
 margin-bottom: min(2rem, calc(20vw / 13.66));
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(even) {
 padding-left: 0;
 border-left: none;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(odd) {
 padding-right: 0;
 border-right: none;
}

.case_04 .episode_item_ttl p .box .ele::before {
 content: "";
 display: block;
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 position: absolute;
 top: min(0.6rem, calc(6vw / 13.66));
 left: min(0.6rem, calc(6vw / 13.66));
 z-index: -1;
 background-color: #d30000;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(even)::before {
 border-left: none;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(odd)::before {
 border-right: none;
}
/*                         case05                         */
.case_05 {
 background-color: #ffb8ce;
}

#case.case_05 .mv_img {
 width: min(54.6rem, calc(546vw / 13.66));
 bottom: max(-3rem, calc(-30vw / 13.66));
 right: max(-11.5rem, calc(-115vw / 13.66));
}
#case.case_05 .mv_ttl p::before {
 background-color: #ff126d;
}
.case_05 .episode_top_img {
 width: min(100.6rem, calc(1006vw / 13.66));
}
.case_05 .episode_box_img_01 {
 width: min(10.8rem, calc(108vw / 13.66));
 left: min(0.5rem, calc(5vw / 13.66));
 bottom: min(8.5rem, calc(85vw / 13.66));
}
.case_05 .episode_box_img_02 {
 width: min(23.8rem, calc(238vw / 13.66));
 left: max(-8rem, calc(-80vw / 13.66));
 bottom: min(8.5rem, calc(85vw / 13.66));
}
.case_05 .episode_box_img_03 {
 width: min(36rem, calc(360vw / 13.66));
 left: max(-15rem, calc(-150vw / 13.66));
 bottom: min(8.5rem, calc(85vw / 13.66));
}
.case_05 .episode_btn a::before {
 background: url(../images/person/case05/arrow.svg) no-repeat;
 background-size: cover;
}
.case_05 #episode_01 {
 background-color: #fca4c4;
}
.case_05 #episode_01::before {
 background: url(../images/person/case05/episode_bg_01.svg) repeat-x;
}
.case_05 #episode_02 {
 background-color: #ff96b3;
}
.case_05 #episode_02::before {
 background: url(../images/person/case05/episode_bg_02.svg) repeat-x;
}
.case_05 #episode_03 {
 background-color: #fc81a7;
}
.case_05 #episode_03 .episode_item_inner {
 padding-bottom: min(22rem, calc(220vw / 13.66));
}
.case_05 #episode_03::before {
 background: url(../images/person/case05/episode_bg_03.svg) repeat-x;
}

.case_05 .side span,
.case_05 .episode_item_ttl p::before {
 background-color: #ff126d;
}
.case_05 #episode_01 .episode_item_img {
 width: min(32rem, calc(320vw / 13.66));
 position: absolute;
 bottom: 0;
 right:0;
}
.case_05 #episode_02 .episode_item_img {
 width: min(31.4rem, calc(314vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-5rem, calc(-50vw / 13.66));
}
.case_05 #episode_03 .episode_item_img {
 width: min(45rem, calc(450vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-5.5rem, calc(-55vw / 13.66));
}
.case_05 .episode_bg_img {
 width: min(27.5rem, calc(275vw / 13.66));
 top: min(82rem, calc(820vw / 13.66));
 right: max(-125rem, calc(-1250vw / 13.66));
}
/*                         case06                         */
.case_06 {
 background-color: #a4f9ff;
}

#case.case_06 .mv_img {
 width: min(54.6rem, calc(546vw / 13.66));
 bottom: min(6rem, calc(60vw / 13.66));
 right: max(-11rem, calc(-110vw / 13.66));
}
#case.case_06 .mv_ttl p::before {
 background-color: #00bbf4;
}
.case_06 .episode_top_img {
 width: min(101.2rem, calc(1012vw / 13.66));
}
.case_06 .episode_box_img_01 {
 width: min(17.8rem, calc(178vw / 13.66));
 left: max(-6.5rem, calc(-65vw / 13.66));
 bottom: min(8rem, calc(80vw / 13.66));
}
.case_06 .episode_box_img_02 {
 width: min(21.2rem, calc(212vw / 13.66));
 left: max(-11.5rem, calc(-115vw / 13.66));
 bottom: min(8rem, calc(80vw / 13.66));
}
.case_06 .episode_box_img_03 {
 width: min(33.6rem, calc(336vw / 13.66));
 left: max(-15.5rem, calc(-155vw / 13.66));
 bottom: min(8rem, calc(80vw / 13.66));
}
.case_06 .episode_btn a::before {
 background: url(../images/person/case06/arrow.svg) no-repeat;
 background-size: cover;
}
.case_06 #episode_01 {
 background-color: #7df0ff;
}
.case_06 #episode_01::before {
 background: url(../images/person/case06/episode_bg_01.svg) repeat-x;
}
.case_06 #episode_02 {
 background-color: #5ae8f2;
}
.case_06 #episode_02::before {
 background: url(../images/person/case06/episode_bg_02.svg) repeat-x;
}
.case_06 #episode_03 {
 background-color: #00d0f2;
}
.case_06 #episode_03 .episode_item_inner {
 padding-bottom: min(28rem, calc(280vw / 13.66));
}
.case_06 #episode_03::before {
 background: url(../images/person/case06/episode_bg_03.svg) repeat-x;
}

.case_06 .side span,
.case_06 .episode_item_ttl p::before {
 background-color: #00bbf4;
}
.case_06 #episode_01 .episode_item_img {
 width: min(31.8rem, calc(318vw / 13.66));
 position: absolute;
 bottom: 0;
 right:max(-1.5rem, calc(-15vw / 13.66));
}
.case_06 #episode_02 .episode_item_img {
 width: min(34rem, calc(340vw / 13.66));
 position: absolute;
 bottom: 0;
 left: max(-2rem, calc(-20vw / 13.66));
}
.case_06 #episode_03 .episode_item_img {
 width: min(43rem, calc(430vw / 13.66));
 position: absolute;
 bottom: 0;
 right: max(-1.5rem, calc(-15vw / 13.66));
}
.case_06  #episode_02 .episode_item_detail{
  width: min(70rem, calc(700vw / 13.66));
 }
.case_06 .episode_bg_img {
 width: min(24rem, calc(240vw / 13.66));
 top: min(80rem, calc(800vw / 13.66));
 right: max(-130rem, calc(-1300vw / 13.66));
}
.case_06 .episode_item_ttl p .box {
 text-align: left;
}
.case_06 .episode_item_ttl p .box .ele {
 position: relative;
}
.case_06 .episode_item_ttl p:has(.box)::before {
 content: none;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(1) {
 margin-bottom: min(2rem, calc(20vw / 13.66));
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(even) {
 padding-left: 0;
 border-left: none;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(odd) {
 padding-right: 0;
 border-right: none;
}

.case_06 .episode_item_ttl p .box .ele::before {
 content: "";
 display: block;
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 position: absolute;
 top: min(0.6rem, calc(6vw / 13.66));
 left: min(0.6rem, calc(6vw / 13.66));
 z-index: -1;
 background-color: #00bbf4;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(even)::before {
 border-left: none;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(odd)::before {
 border-right: none;
}

.episode_other_inner {
 background-color: #f9cc12;
 position: relative;
 padding: min(14rem, calc(140vw / 13.66)) 0 min(17rem, calc(170vw / 13.66));
}
.episode_other_inner::after {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_yellow_deep.svg) repeat-x;
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.episode_other_ttl {
 width: min(74rem, calc(740vw / 13.66));
 margin: 0 auto;
}
.other_list {
 width: min(117rem, calc(1170vw / 13.66));
 margin: min(8rem, calc(80vw / 13.66)) auto 0;
 display: flex;
 justify-content: center;
 gap: min(3.5rem, calc(35vw / 13.66));
 flex-wrap: wrap;
 position: relative;
 z-index: 1;
}
.other_item {
 width: min(36.4rem, calc(364vw / 13.66));
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333;
 border-radius: min(0.5rem, calc(5vw / 13.66));
 background-color: #fff;
 position: relative;
 padding: min(1.5rem, calc(15vw / 13.66)) min(1.5rem, calc(15vw / 13.66)) min(2.5rem, calc(25vw / 13.66));
 display: flex;
 flex-direction: column;
}
.other_num {
 text-align: left;
 box-sizing: border-box;
 padding-left: min(0.5rem, calc(5vw / 13.66));
 width: min(11rem, calc(110vw / 13.66));
 font-size: 2.8rem;
 font-weight: 600;
 letter-spacing: 0.06em;
 display: inline-block;
 position: absolute;
 top: min(1rem, calc(10vw / 13.66));
 left: min(1.5rem, calc(15vw / 13.66));
 background-color: #fff;
 line-height: 1.4;
 clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
 z-index: 1;
}
.other_item_01 .other_num {
 color: #80ba3c;
}
.other_item_01 .other_item_img {
 background-color: #cff445;
}

.other_item_02 .other_num {
 color: #fc751a;
}
.other_item_02 .other_item_img {
 background-color: #ffa329;
}
.other_item_03 .other_item_img {
 background-color: #33a3ff;
}
.other_item_03 .other_num {
 color: #0077ed;
}
.other_item_04 .other_item_img {
 background-color: #f97575;
}
.other_item_04 .other_num {
 color: #d30000;
}
.other_item_05 .other_item_img {
 background-color: #ff94b0;
}
.other_item_05 .other_num {
 color: #ff126d;
}

.other_item_06 .other_num {
 color: #00bbf4;
}
.other_item_06 .other_item_img {
 background-color: #7df0ff;
}

.other_detail {
 box-sizing: border-box;
 margin-top: min(2rem, calc(20vw / 13.66));
 display: flex;
 flex-direction: column;
 flex: 1;
}
.other_item_ttl {
 font-size: 2.4rem;
 font-weight: 600;
 color: #fff;
 line-height: 1.66;
 letter-spacing: 0.09em;
 text-align: justify;
 line-height: 1.8;
 flex: 1;
}
.other_item_ttl p {
 background-color: #54a840;
 display: inline;
 box-decoration-break: clone;
 -webkit-box-decoration-break:clone;
 line-height: 1.3;
 padding: 0 min(0.5rem, calc(5vw / 13.66));
}
.other_item_02 .other_item_ttl p {
 background-color: #fc751a;
}
.other_item_03 .other_item_ttl p {
 background-color: #0077ed;
}
.other_item_04 .other_item_ttl p {
 background-color: #d30000;
}
.other_item_05 .other_item_ttl p {
 background-color: #ff126d;
}
.other_item_06 .other_item_ttl p {
 background-color: #00bbf4;
}

.other_item .btn {
 width: min(22.6rem, calc(226vw / 13.66));
 margin: min(2rem, calc(20vw / 13.66)) auto 0;
}
.other_item .btn::before {
 content: none;
}
.other_item .btn a {
 font-size: 1.6rem;
 padding: min(0.7rem, calc(7vw / 13.66)) 0;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
}
.other_item .btn a::before {
 content: "";
 width: min(0.9rem, calc(9vw / 13.66));
 height: min(1.1rem, calc(11vw / 13.66));
 background: url(../images/common/btn_arrow.svg) no-repeat;
 background-size: cover;
 transform: translateY(-50%);
 position: absolute;
 top: 50%;
 right: min(1.5rem, calc(15vw / 13.66));
 transition: 0.4s;
}

@media (hover: hover) and (pointer: fine) {
 .other_item .btn a:where(:any-link, :enabled, summary):hover {
  transform: none;
  color: #333333;
  background-color: #fff;
 }
 .other_item .btn a:where(:any-link, :enabled, summary):hover::before {
  right: min(1.5rem, calc(15vw / 13.66));
  filter: brightness(1) invert(0.7);
 }
}

@media screen and (max-width: 767px) {
 #case .mv_inner {
  padding: 13rem 0 0;
 }

 #case .mv_inner {
  width: 33.5rem;
 }
 #case .mv_detail {
  width: 100%;
  margin-left: 0;
  display: flex;
  flex-direction: column;
 }
 #case .mv_ttl {
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.45;
  gap: 0.5rem 0;
 }
 #case .mv_ttl p::before {
  border: 0.1rem solid #333333;
  top: 0.3rem;
  left: 0.3rem;
 }
 #case .mv_ttl p .ele {
  border: 0.1rem solid #333333;
  padding-left: 0.5rem;
 }

 #case .mv_img {
  width: 100%;
  position: static;
  order: 3;
  margin-bottom: 3.5rem;
 }
 #case .mv_img img {
  height: 100% !important;
 }
 #case .mv_info {
  font-size: 1.4rem;
  text-align: justify;
  margin: 1.5rem 0 2.5rem;
  display: flex;
  line-height: 1.5;
 }
 #case .mv_txt {
  width: 100%;
  border: 0.1rem solid #333333;
  padding: 2rem;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  box-shadow: 0.5rem 0.5rem 0 #333333;
  order: 4;
 }
 #case .mv_txt::before {
  width: 1.1rem;
  height: 1rem;
  clip-path: polygon(100% 0, 0% 100%, 75% 100%);
  top: -1rem;
  right: auto;
  left: 5rem;
 }
 #case .mv_txt .arrow {
  width: 1.8rem;
  height: 1.6rem;
  top: -1.6rem;
  left: 4rem;
  right: auto;
  z-index: 1;
 }
 #case .mv_txt .arrow::before {
  clip-path: polygon(100% 0, 0% 100%, 75% 100%);
  top: .3rem;
  right: 0.2rem;
 }
 #case .mv_txt .arrow::after {
   clip-path: polygon(100% 0, 0% 100%, 75% 100%);
}
 .mv_bg_img {
  width: 8rem;
  top: 8.5rem;
  left: -2rem;
 }
 .mv_bg_img::before {
  width: 1.3rem;
  height: 1rem;
  top: 3.8rem;
  left: 3.2rem;
  z-index: 1;
 }
 .mv_bg_img::after {
  width: 1.3rem;
  height: 1rem;
  top: 4rem;
  right: -0.7rem;
 }

 .side {
  top: 9rem;
  left: auto;
  right:0;
  writing-mode: horizontal-tb;
  transform: rotate(-90deg) ;
  transform-origin: right bottom;
 }
 .side span{
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  padding:0 0.5rem ;
  transform: rotate(0deg) scale(-1,-1);
  transform-origin: center;
 }

 .episode_top {
  width: 100%;
  margin: 0 auto;
  margin-top: 5.5rem;
  padding-bottom: 8.5rem;
  position: relative;
 }
 #case .episode_top_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 6.7rem;
  margin: 0;
  left: 1rem;
 }

 .episode_menu {
  width: 27rem;
  padding-top: 0.8rem;
  margin: 0 auto 0;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 7rem 0;
  margin-left: auto;
  margin-right: 2rem;
 }
 .episode_box {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
 }
 #case .episode_box_img {
  width: 100%;
  position: static;
  bottom: 0;
  margin: 1.5rem 0 2rem;
  z-index: 1;
 }
 #case .episode_box_img img {
  height: 100% !important;
 }

 .episode_box_detail {
  width: 100%;
 }
 .episode_box_ttl {
  border-radius: 0.3rem;
  border: 0.1rem solid #333333;
  font-size: 1.8rem;
  line-height: 1.27;
  box-shadow: none;
  padding: 1rem 0 0.7rem;
 }
 .episode_box_ttl > span {
  width: 10rem;
  top: -0.9rem;
  font-size: 0;
 }
 .episode_box_txt {
  border-radius: 0.3rem;
  border: 0.1rem solid #333333;
  box-shadow: none;
  padding: 2rem 1.5rem 1rem;
  margin-top: min(2rem, calc(20vw / 13.66));
  font-size: 1.4rem;
  line-height: 1.75;
 }
 .episode_box_txt > p {
  margin: 0;
  line-height: 1.75;
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 96%, #333 96%, #333 100%);
  background-repeat: repeat-y;
  background-size: 100% 1.75em;
  padding-bottom: 1.5rem;
  margin-bottom: 0.5rem;
 }
 .episode_box_txt > span {
  font-size: 0;
  width: 10rem;
  top: -0.9rem;
 }
 .episode_box_detail ul {
  gap: 0 1.8rem;
  justify-content: flex-start;
 }
 .episode_box_detail li {
  width: 3.5rem;
  position: relative;
 }

 .episode_box_detail li span {
  width: 100%;
 }
 .episode_box_detail li p {
  font-size: 1.2rem;
  margin-top: 0.5rem;
 }

 .episode_btn a {
  border-radius: 0.2rem;
  border: 0.1rem solid #333333;
  gap: 0 1rem;
  padding: 0 1.5rem;
  margin-top: 1rem;
 }
 .episode_btn a span {
  width: 1.8rem;
 }
 .episode_btn a::before {
  width: 1rem;
  height: 0.8rem;
  right: 1rem;
 }

 .episode_note_txt {
  text-align: right;
 font-size: 1rem;
 position: relative;
 top: 0;
 right: 2rem;
 margin-top: 1rem;
}

 .episode_contents {
  position: relative;
 }
 .episode_item {
  padding: 6.5rem 0 0;
 }
 .episode_item::before {
  height: 6rem;
  top: -3rem;
 }
 .episode_item_inner {
  width: 33.5rem;
  padding-bottom: 0;
 }
 #episode_01 .episode_item_detail {
  width: 100%;
 }
 #episode_02 .episode_item_detail {
  width: 100%;
 }
 .episode_item_img img {
  height: 100% !important ;
 }
 .episode_item_detail {
  margin-bottom: 1.5rem;
 }
 .episode_item_detail .num {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  gap: 0 1rem;
  margin-bottom: 1rem;
 }
 .episode_item_detail .num span {
  width: 2rem;
 }
 .episode_item_ttl {
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
  gap: 0.5rem 0;
 }
 .episode_item_ttl p::before {
  border: 0.1rem solid #333333;
  top: 0.2rem;
  left: 0.2rem;
  box-sizing: border-box;
 }
 .episode_item_ttl p .ele {
  border: 0.1rem solid #333333;
  padding-left: 0.5rem;
 }

 .episode_item_ttl p:has(.box)::before {
  content: none;
 }

 .episode_item_ttl p .box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
 }
 .episode_item_ttl p .box .ele:first-of-type {
  border: 0.1rem solid #333333;
  padding-left: 0.5rem;
  position: relative;
 }
 .episode_item_ttl p .box .ele:last-of-type {
  border: 0.1rem solid #333333;
  padding-left: 0.5rem;
  position: relative;
 }
 .episode_item_ttl p .box .ele::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 0.1rem solid #333333;
  top: 0.3rem;
  left: 0.3rem;
  box-sizing: border-box;
  z-index: -1;
  position: absolute;
 }
 .episode_item_txt {
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.78;
  letter-spacing: 0.1em;
  margin-top: 2rem;
 }
 .episode_item:nth-of-type(2) .episode_item_txt {
  width: 100%;
 }
 .episode_item:nth-of-type(3) .episode_item_txt {
 width: 100%;
}
 .episode_bg_img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
 }

 /*                         case01                         */

 #case.case_01 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 283;
 }

 .case_01 .episode_box_img_01 {
  aspect-ratio: 270 / 273;
 }
 .case_01 .episode_box_img_02 {
  aspect-ratio: 270 / 276;
 }
 .case_01 .episode_box_img_03 {
  aspect-ratio: 270 / 330;
 }

 .case_01 #episode_01::before {
  background-size: cover;
 }
 .case_01 #episode_02::before {
  background-size: cover;
 }
 .case_01 #episode_03::before {
  background-size: cover;
 }

 .case_01 #episode_01 .episode_item_img {
  width: 21.5rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 215 / 238;
 }
 .case_01 #episode_02 .episode_item_img {
  width: 22rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 220 / 264;
 }
 .case_01 #episode_03 .episode_item_img {
  width: 23.5rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 235 / 331;
 }
 .case_01 .episode_bg_img {
  width: 13rem;
  top: -35rem;
  right: auto;
  left: -5.8rem;
 }
 /*                         case02                         */
 #case.case_02 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 278;
 }

 .case_02 .episode_box_img_01 {
  aspect-ratio: 270 / 270;
 }
 .case_02 .episode_box_img_02 {
  aspect-ratio: 270 / 315;
 }
 .case_02 .episode_box_img_03 {
  aspect-ratio: 270 / 315;
 }

 .case_02 #episode_01::before {
  background-size: cover;
 }
 .case_02 #episode_02::before {
  background-size: cover;
 }
 .case_02 #episode_03::before {
  background-size: cover;
 }

 .case_02 #episode_01 .episode_item_img {
  width: 15rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 150 / 298;
 }
 .case_02 #episode_02 .episode_item_img {
  width: 17.5rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 175 / 288;
 }
 .case_02 #episode_03 .episode_item_img {
  width: 24rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 240 / 338;
 }
 .case_02 .episode_bg_img {
  width: 12.5rem;
  top: -35rem;
  right: auto;
  left: -5rem;
 }

 .case_02 #episode_03 .episode_item_inner {
  padding-bottom: 0;
 }

 .case_02 .episode_item_ttl p .box .ele::before {
  background-color: #f96500;
 }
 /*                         case03                         */
 #case.case_03 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 297;
 }

 .case_03 .episode_box_img_01 {
  aspect-ratio: 270 / 270;
 }
 .case_03 .episode_box_img_02 {
  aspect-ratio: 270 / 270;
 }
 .case_03 .episode_box_img_03 {
  aspect-ratio: 270 / 315;
 }

 .case_03 #episode_01::before {
  background-size: cover;
 }
 .case_03 #episode_02::before {
  background-size: cover;
 }
 .case_03 #episode_03::before {
  background-size: cover;
 }

 .case_03 #episode_01 .episode_item_img {
  width: 24rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 240 / 307;
 }
 .case_03 #episode_02 .episode_item_img {
  width: 22rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 220 / 272;
 }
 .case_03 #episode_03 .episode_item_img {
  width: 25rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 250 / 345;
 }
 .case_03 .episode_bg_img {
  width: 13.4rem;
  top: -35rem;
  right: auto;
  left: -6rem;
 }

 .case_03 #episode_03 .episode_item_inner {
  padding-bottom: 0;
 }

 .case_03 .episode_item_ttl p .box .ele::before {
  background-color: #0077ed;
 }
 /*                         case04                         */
 #case.case_04 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 377;
  margin-bottom: 1rem;
 }

 .case_04 .episode_box_img_01 {
  aspect-ratio: 270 / 275;
 }
 .case_04 .episode_box_img_02 {
  aspect-ratio: 270 / 275;
 }
 .case_04 .episode_box_img_03 {
  aspect-ratio: 270 / 400;
 }

 .case_04 #episode_01::before {
  background-size: cover;
 }
 .case_04 #episode_02::before {
  background-size: cover;
 }
 .case_04 #episode_03::before {
  background-size: cover;
 }

 .case_04 #episode_01 .episode_item_img {
  width: 15rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 150 / 280;
 }
 .case_04 #episode_02 .episode_item_img {
  width: 18.2rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 182 / 300;
 }
 .case_04 #episode_03 .episode_item_img {
  width: 25rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 250 / 395;
 }
 .case_04 .episode_bg_img {
  width: 12.3rem;
  top: -33rem;
  right: auto;
  left: -5.5rem;
 }

 .case_04 #episode_03 .episode_item_inner {
  padding-bottom: 0;
 }

 .case_04 .episode_item_ttl p .box {
 text-align: left;
 display: inline-block;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(1),
.case_04 .episode_item_ttl p .box .ele:nth-of-type(2),
.case_04 .episode_item_ttl p .box .ele:nth-of-type(3) {
 margin-bottom:.5rem;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(even) {
 padding-left: .5rem;
 border:.1rem solid #333333;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(odd) {
 border:.1rem solid #333333;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(2) {
 border-right: none;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(3) {
 border-left: none;
 padding-left: 0;
}
.case_04 .episode_item_ttl p .box .ele::before {
 border:.1rem solid #333333;
 top: .3rem;
 left: .3rem;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(even)::before {
 border:.1rem solid #333333;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(odd)::before {
 border:.1rem solid #333333;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(2)::before {
 border-right: none;
}
.case_04 .episode_item_ttl p .box .ele:nth-of-type(3)::before {
 border-left: none;
}

 /*                         case05                         */
 #case.case_05 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 362;
  margin-bottom: 1rem;
 }

 .case_05 .episode_box_img_01 {
  aspect-ratio: 270 / 270;
 }
 .case_05 .episode_box_img_02 {
  aspect-ratio: 270 / 280;
 }
 .case_05 .episode_box_img_03 {
  aspect-ratio: 270 / 305;
 }

 .case_05 #episode_01::before {
  background-size: cover;
 }
 .case_05 #episode_02::before {
  background-size: cover;
 }
 .case_05 #episode_03::before {
  background-size: cover;
 }

 .case_05 #episode_01 .episode_item_img {
  width: 16rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 160 / 378;
 }
 .case_05 #episode_02 .episode_item_img {
  width: 16rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 160 / 310;
 }
 .case_05 #episode_03 .episode_item_img {
  width: 22.5rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 225 / 397;
 }
 .case_05 .episode_bg_img {
  width: 13.8rem;
  top: -35rem;
  right: auto;
  left: -6rem;
 }

 .case_05 #episode_03 .episode_item_inner {
  padding-bottom: 0;
 }

 /*                         case06                         */
 #case.case_06 .mv_img {
  width: 100%;
  aspect-ratio: 335 / 289;
 }

 .case_06 .episode_box_img_01 {
  aspect-ratio: 270 / 270;
 }
 .case_06 .episode_box_img_02 {
  aspect-ratio: 270 / 305;
 }
 .case_06 .episode_box_img_03 {
  aspect-ratio: 270 / 300;
 }

 .case_06 #episode_01::before {
  background-size: cover;
 }
 .case_06 #episode_02::before {
  background-size: cover;
 }
 .case_06 #episode_03::before {
  background-size: cover;
 }

 .case_06 #episode_01 .episode_item_img {
  width: 16rem;
  position: static;
  bottom: 0;
  margin: 0 auto;
  aspect-ratio: 160 / 290;
 }
 .case_06 #episode_02 .episode_item_img {
  width: 17rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 170 / 290;
 }
 .case_06 #episode_03 .episode_item_img {
  width: 21.5rem;
  position: static;
  margin: 0 auto;
  aspect-ratio: 215 / 350;
 }
 .case_06 .episode_bg_img {
  width: 13.8rem;
  top: -35rem;
  right: auto;
  left: -6rem;
 }
 .case_06 #episode_02 .episode_item_detail {
  width: 100%;
 }

 .case_06 #episode_03 .episode_item_inner {
  padding-bottom: 0;
 }

 .case_06 .episode_item_ttl p .box {
 text-align: left;
 display: inline-block;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(1),
.case_06 .episode_item_ttl p .box .ele:nth-of-type(2),
.case_06 .episode_item_ttl p .box .ele:nth-of-type(3) {
 margin-bottom:.5rem;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(even) {
 padding-left: .5rem;
 border:.1rem solid #333333;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(odd) {
 border:.1rem solid #333333;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(2) {
 border-right: none;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(3) {
 border-left: none;
 padding-left: 0;
}
.case_06 .episode_item_ttl p .box .ele::before {
 border:.1rem solid #333333;
 top: .3rem;
 left: .3rem;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(even)::before {
 border:.1rem solid #333333;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(odd)::before {
 border:.1rem solid #333333;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(2)::before {
 border-right: none;
}
.case_06 .episode_item_ttl p .box .ele:nth-of-type(3)::before {
 border-left: none;
}





 .episode_other_inner {
  padding: 6rem 0 11rem;
 }
 .episode_other_inner::after {
  height: 6rem;
  top: -3rem;
  background-size: cover;
 }
 .episode_other_ttl {
  width: 31rem;
 }
 .other_list {
  width: 33.5rem;
  margin: 4rem auto 0;
  gap: 2rem 0;
 }
 .other_item {
  width: 100%;
  border: 0.1rem solid #333;
  border-radius: 0.3rem;
  padding: 2rem 2rem 2.5rem;
 }
 .other_num {
  padding-left: 0.3rem;
  width: 7.5rem;
  font-size: 2rem;
  top: 1.5rem;
  left: 2rem;
  clip-path: polygon(0 0, 100% 0%, 80% 100%, 0% 100%);
 }

 .other_detail {
  margin-top: 1.2rem;
 }
 .other_item_ttl {
  font-size: 2rem;
  line-height: 1.7;
 }
 .other_item_ttl p {
  line-height: 1.5;
  padding: 0 0.7rem;
 }

 .other_item .btn {
  width: 100%;
  margin: 2.5rem auto 0;
 }
 .other_item .btn a {
  font-size: 1.4rem;
  padding: 0.7rem 0;
  border: 0.1rem solid #333333;
 }
 .other_item .btn a::before {
  width: 0.8rem;
  height: 1.1rem;
  right: 1.7rem;
 }

 @media (hover: hover) and (pointer: fine) {
  .other_item .btn a:where(:any-link, :enabled, summary):hover::before {
   right: 1.7rem;
  }
 }
}
