@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700&display=swap");

body {
 background: #000000;
 overflow: hidden;
}
#professional {
 font-family: "Zen Old Mincho", serif;
 color: #ffffff;
}

#professional img {
 width: 100%;
 height: auto;
}
.pc_only {
 display: block;
}
.sp_only {
 display: none;
}
.fadein {
 opacity: 0;
 transition: .7s;
}
.slide_left {
 transform: translateX(-10%);
 opacity: 0;
 transition: .7s;
}
.slide_right {
 transform: translateX(10%);
 opacity: 0;
 transition: .7s;
}

.scrollin {
 transform: translate(0);
 opacity: 1;
}

/*                          mv                         */
.mv_inner {
 padding-top: min(7.2rem, calc(72vw / 13.66));
 box-sizing: border-box;
 height: 100dvh;
 max-height: fit-content;
 position: relative;
 object-fit: cover;
 object-position: center;
 overflow: hidden;
}
.mv_ttl {
 font-size: 2.8rem;
 font-weight: 500;
 letter-spacing: 0.15em;
 position: absolute;
 top: min(18rem, calc(180vw / 13.66));
 left: min(10.5rem, calc(105vw / 13.66));
}
.scroll_bar {
 width: min(10.2rem, calc(102vw / 13.66));
 position: absolute;
 bottom: min(5rem, calc(50vw / 13.66));
 left: 0;
 right: 0;
 margin: 0 auto;
}
.scroll_bar p {
 text-align: center;
 font-size: 1.4rem;
 text-align: center;
 letter-spacing: 0.1em;
 line-height: 1.6;
}
.scroll_bar span {
 display: block;
 width: 100%;
 font-size: 0;
 animation: scroll;
 animation-timing-function: linear;
 animation-duration: 3s;
 animation-iteration-count: infinite;
}

@keyframes scroll {
 0% {
  transform: translateY(0);
 }
 50% {
  transform: translateY(min(1rem, calc(10vw / 13.66)));
 }
 100% {
  transform: translateY(0);
 }
}

/*                         about                         */
#about {
 position: relative;
}
.about_inner {
 width: min(115.6rem, calc(1156vw / 13.66));
 margin: 0 auto;
 padding-top: min(36.5rem, calc(365vw / 13.66));
 position: relative;
 z-index: 1;
 padding-bottom: min(20rem, calc(200vw / 13.66));
}
.about_ttl {
 font-size: 3.6rem;
 font-weight: 500;
 letter-spacing: 0.1em;
}

.about_item {
 width: min(64rem, calc(640vw / 13.66));
 margin: min(54rem, calc(540vw / 13.66)) auto 0;
}
.about_flex {
 display: flex;
 justify-content: space-between;
}
.about_flex > p {
 writing-mode: vertical-rl;
 text-orientation: sideways;
 display: flex;
 align-items: center;
 width: min(1.5rem, calc(15vw / 13.66));
 gap: 0 min(1.5rem, calc(15vw / 13.66));
 margin-top: min(2rem, calc(20vw / 13.66));
}
.about_flex > p span {
 font-size: 1.2rem;
 display: block;
 font-weight: 600;
 letter-spacing: 0.1em;
 line-height: 1;
}
.about_flex > p::after {
 content: "";
 width: min(0.1rem, calc(1vw / 13.66));
 height: min(46.5rem, calc(465vw / 13.66));
 background-color: #ffffff;
}
.about_detail_ttl {
 font-size: 3.8rem;
 letter-spacing: 0.15em;
 font-weight: 500;
 line-height: 1.97;
}
.about_detail p {
 font-size: 1.6rem;
 letter-spacing: 0.1em;
 font-weight: normal;
 line-height: 2.5;
 margin-top: min(3rem, calc(30vw / 13.66));
}
.about_detail p span {
 font-size: 2rem;
 letter-spacing: 0.1em;
 font-weight: normal;
 line-height: 2.1;
 display: block;
 letter-spacing: 0.18em;
 margin-top: min(3.5rem, calc(35vw / 13.66));
}
.about_img {
 position: absolute;
 top: 0;
}
.about_img_01 {
 top: min(15rem, calc(150vw / 13.66));
 right: 0;
 width: min(80rem, calc(800vw / 13.66));
}
.about_img_02 {
 top: min(67rem, calc(670vw / 13.66));
 left: 0;
 width: min(47.4rem, calc(474vw / 13.66));
}
.about_img_03 {
 top: min(90.5rem, calc(905vw / 13.66));
 right: 0;
 width: min(70rem, calc(700vw / 13.66));
}
.about_img_04 {
 top: min(120rem, calc(1200vw / 13.66));
 left: min(14.5rem, calc(145vw / 13.66));
 width: min(27.6rem, calc(276vw / 13.66));
}
.about_img_05 {
 top: min(162rem, calc(1620vw / 13.66));
 right: 0;
 width: min(47.4rem, calc(474vw / 13.66));
}

.about_data {
 margin-top: min(45rem, calc(450vw / 13.66));
}
.about_data_ttl {
 font-size: 3.2rem;
 font-weight: 500;
 letter-spacing: 0.15em;
 text-align: center;
}
.about_data_flex {
 width: min(95rem, calc(950vw / 13.66));
 margin: 0 auto min(6rem, calc(60vw / 13.66));
 display: flex;
 justify-content: space-between;
 margin-top: min(9rem, calc(90vw / 13.66));
}
.about_data_txt {
 width: min(45.5rem, calc(455vw / 13.66));
 font-size: 1.6rem;
 font-weight: 500;
 line-height: 2.1;
 text-align: justify;
}
.about_data_img {
 width: min(42.5rem, calc(425vw / 13.66));
}
.about_data_img_02 {
 width: min(110rem, calc(1100vw / 13.66));
 margin: 0 auto;
}

/*                         living                         */
.living_inner {
 background-color: #323232;
 padding-top: min(14.5rem, calc(145vw / 13.66));
 padding-bottom: min(20rem, calc(200vw / 13.66));
}
.living_ttl {
 text-align: center;
 font-size: 3.2rem;
 font-weight: 600;
 letter-spacing: 0.1em;
}
.living_item {
 display: flex;
 gap: 0 min(7rem, calc(70vw / 13.66));
 position: relative;
 z-index: 1;
 margin-top: min(13rem, calc(130vw / 13.66));
 padding-bottom: min(5.5rem, calc(55vw / 13.66));
}
.living_item:first-of-type {
 margin-top: min(8rem, calc(80vw / 13.66));
}
.living_item:nth-of-type(even) {
 flex-direction: row-reverse;
}
.living_item::before {
 content: "";
 width: calc(1240vw / 13.66);
 height: 100%;
 background-color: #000000;
 position: absolute;
 top: min(2rem, calc(20vw / 13.66));
 right: 0;
 z-index: -1;
}
.living_item:nth-of-type(even)::before {
 right: auto;
 left: 0;
}
.living_img {
 width: calc(1034vw / 13.66);
 position: relative;
 padding-top: min(9rem, calc(90vw / 13.66));
}
.living_img p {
 width: 100%;
 font-size: 1.8rem;
 line-height: 2.6;
 font-weight: 500;
 letter-spacing: 0.05em;
 position: absolute;
 bottom: max(-6rem, calc(-60vw / 13.66));
 left: calc(172vw / 13.66);
}
.living_item:nth-of-type(even) p {
 right: calc(165vw / 13.66);
 left: auto;
 text-align: right;
}
.living_txt {
 writing-mode: vertical-rl;
 text-orientation: upright;
 font-size: 3.2rem;
 font-weight: 500;
 line-height: 1.56;
 letter-spacing: 0.2em;
}
.living_item:nth-of-type(even) p.living_txt {
 text-align: left;
}

/*                         voice                         */
.voice_inner {
 padding-top: min(14.5rem, calc(145vw / 13.66));
}
.voice_ttl {
 text-align: center;
 font-size: 3.2rem;
 font-weight: 600;
 letter-spacing: 0.1em;
}
.voice_item {
 position: relative;
 z-index: 1;
 margin-top: min(13rem, calc(130vw / 13.66));
 padding-bottom:  min(5rem, calc(50vw / 13.66));
}
.voice_item:first-of-type {
 margin-top: min(12.5rem, calc(125vw / 13.66));
}

.voice_img {
 width: calc(1238vw / 13.66);
 position: relative;
}
.voice_item:nth-of-type(even) .voice_img {
 margin-left: auto;
 text-align: right;
}
.voice_img p {
 font-size: 1.8rem;
 line-height: 2.1;
 font-weight: 500;
 letter-spacing: 0.1em;
 padding-left: calc(210vw / 13.66);
 margin-top: min(4.5rem, calc(45vw / 13.66));
 box-sizing: border-box;
}
.voice_item:nth-of-type(even) .voice_img p {
 text-align: left;
 display: inline-block;
padding-right: calc(210vw / 13.66);
 padding-left: 0;
}
.voice_txt {
 writing-mode: vertical-rl;
 text-orientation: upright;
 font-size: 3.8rem;
 font-weight: 500;
 line-height: 1.56;
 letter-spacing: 0.2em;
 position: absolute;
 bottom: 0;
 left: calc(90vw / 13.66);
}
.voice_item:nth-of-type(even) .voice_txt {
 right: calc(110vw / 13.66);
 left: auto;

}


.pro_voice_inner,
.user_voice_inner {
 width: min(118rem, calc(1180vw / 13.66));
 margin:  min(20rem, calc(200vw / 13.66)) auto 0;
}
.user_voice_inner {
 margin-top: min(15rem, calc(150vw / 13.66));
}
.pro_voice_flex,
.user_voice_flex {
 display: flex;
 gap: 0 min(9rem, calc(90vw / 13.66));
}
.pro_voice_side ,
.user_voice_side{
 writing-mode: vertical-rl;
 text-orientation: sideways;
 display: flex;
 align-items: center;
 justify-content: space-between;
 font-size: 1.2rem;
 font-weight: 600;
 letter-spacing: 0.1em;
}
.pro_voice_side::after,
.user_voice_side::after {
 content: "";
 width: min(0.1rem, calc(1vw / 13.66));
 height: min(102rem, calc(1020vw / 13.66));
 background-color: #ffffff;
}
.user_voice_side::after {
 height: min(38rem, calc(380vw / 13.66));
}

.pro_voice_main,
.user_voice_main {
 width: min(89rem, calc(890vw / 13.66));
 text-align: center;
}
.pro_voice_main h3 ,
.user_voice_main h3{
 font-size: 3.2rem;
 font-weight: 500;
 letter-spacing: 0.23em;
 text-align: center;
 display: inline-block;
 border-bottom:  min(0.1rem, calc(1vw / 13.66)) solid #ffffff;
}
.user_voice_main h3 {
 margin-bottom: min(6rem, calc(60vw / 13.66));
}
.pro_voice_main > p,
.user_voice_main > p {
 text-align: justify;
 font-size: 1.6rem;
 line-height: 1.8;
 font-weight: 500;
 letter-spacing: 0.05em;
 margin-top: min(6rem, calc(60vw / 13.66));
}
.pro_voice_main_flex {
 display: flex;
 justify-content: space-between;
 align-items: center;
 margin: min(3.5rem, calc(35vw / 13.66)) 0 min(7rem, calc(70vw / 13.66));
 text-align: right;
}
.pro_voice_main_flex:last-of-type {
 margin-bottom: 0;
}
.pro_voice_img {
 width:min(25rem, calc(250vw / 13.66));
}
.pro_voice_main_flex p {
 width:min(59.2rem, calc(592vw / 13.66));
 font-size: 1.4rem;
 font-weight: 300;
 line-height: 2;
 letter-spacing: 0.01em;
 text-align: justify;
}
.pro_voice_main_flex  span,
.user_voice_main span {
 display: inline-block;
 background-color: #000;
 text-align: right;
 font-size: 1.8rem;
 font-weight: 600;
 margin-bottom: min(2rem, calc(20vw / 13.66));
 position: relative;
 box-sizing: border-box;
 padding-left: min(1rem, calc(10vw / 13.66));
}
.user_voice_main span {
 margin-bottom: 0;
}
.pro_voice_main_flex  span::before {
 content: '';
 width: min(70rem, calc(700vw / 13.66));
 height: min(.1rem, calc(1vw / 13.66));
 background-color: #ffffff;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 right: 0;
 z-index: -1;
}



.user_voice_main > div{
 text-align: right;
 position: relative;
}
.user_voice_main > div:first-of-type {
 margin-bottom:  min(5.5rem, calc(55vw / 13.66));
}
.user_voice_main > div::before {
 content: '';
 width: 100%;
 height: min(.1rem, calc(1vw / 13.66));
 background-color: #ffffff;
 position: absolute;
 bottom:  min(1.7rem, calc(17vw / 13.66));
 right: 0;
 z-index: -1;
}
.user_voice_main > div p{
 text-align: justify;
}

.voice_movie_ttl {
 margin:  min(20rem, calc(200vw / 13.66)) 0  min(7rem, calc(70vw / 13.66)) ;
 font-size: 3.2rem;
 font-weight: 600;
 text-align: center;
 color: #fff;
 letter-spacing: 0.05em;

}
.voice_thum {
 padding-bottom:  min(20rem, calc(200vw / 13.66))  ;
 margin:0 auto;
 width:  min(111rem, calc(1110vw / 13.66));
 border-bottom:  min(.1rem, calc(1vw / 13.66)) solid #ffffff;
 text-align: center;
}
.voice_thum iframe {
 width:  min(75rem, calc(750vw / 13.66));
 height:  min(40.6rem, calc(406vw / 13.66));

}





/*                         lineup                         */

.lineup_inner {
 width:  min(110rem, calc(1100vw / 13.66));
 margin:  min(11rem, calc(110vw / 13.66)) auto  min(15rem, calc(150vw / 13.66)) ;
 }
.lineup_ttl {
 text-align: center;
 font-size: 3.2rem;
 font-weight: 600;
 letter-spacing: 0.1em;
}
.lineup_item {
 width: 100%;
 margin-top:  min(15rem, calc(150vw / 13.66));
}
.lineup_item a {
 display: block;
 width: 100%;
}
@media (hover: hover)  and (pointer: fine){
 .lineup_item  a:where(:any-link, :enabled, summary):hover .lineup_img img{
  transform: scale(1.05);
 }
}
.lineup_img {
 position: relative;
}
.lineup_img > span {
 display: block;
 width: 100%;
 overflow: hidden;
}
.lineup_img img {
 transition: .4s;
}
.lineup_img p {
 font-size: 4.6rem;
 font-weight: 500;
 letter-spacing: 0.05em;
 position: absolute;
 left: min(3rem, calc(30vw / 13.66));
 bottom: max(-2rem, calc(-20vw / 13.66));
 display: flex;
 align-items: center;
}
.lineup_img p span {
 font-size: 2.2rem;
}
.lineup_txt {
 text-align: right;
 font-size: 2.1rem;
 font-weight: 600;
}
.lineup_txt span {
 position: relative;
}
.lineup_txt span::before {
 content: '';
 width: 100%;
 display: inline-block;
 position: absolute;
 bottom: 0;
 left: 0;
 transform-origin: left;
 transform: scale(0,1);
 transition: .4s;
 border: min(.1rem, calc(1vw / 13.66)) solid #fff;
}
@media (hover: hover)  and (pointer: fine){
 .lineup_item  a:where(:any-link, :enabled, summary):hover .lineup_txt span::before{
  transform: scale(1);
 }
}

/*                         shop                         */

.shop_inner {
 width: min(111rem, calc(1110vw / 13.66));
 margin: 0 auto;
 box-sizing: border-box;
 border: min(.1rem, calc(1vw / 13.66)) solid #ffffff;
 padding: min(14rem, calc(140vw / 13.66)) 0 min(13rem, calc(130vw / 13.66));
}
.shop_ttl {
 text-align: center;
 font-size: 3.2rem;
 font-weight: 500;
 letter-spacing: 0.1em;
}
.shop_txt {
 font-size: 2.4rem;
 font-weight: 500;
 line-height: 2.2;
 letter-spacing: 0.1em;
 text-align: center;
 margin-top:  min(2rem, calc(20vw / 13.66));
}

.shop_item {
width:  min(71rem, calc(710vw / 13.66));
margin: 0 auto;
padding-bottom: min(10rem, calc(100vw / 13.66));
margin-top: min(10rem, calc(100vw / 13.66));
}
.shop_item:first-of-type {
 border-bottom: min(.1rem, calc(1vw / 13.66)) solid #fff;
}

.shop_flex {
 display: flex;
 align-items: flex-end;
 gap:  0  min(2.5rem, calc(25vw / 13.66));
}
.num {
 width: min(17.5rem, calc(175vw / 13.66));
 font-size: 15.6rem;
 line-height: 1;
  -webkit-text-stroke:  min(.2rem, calc(2vw / 13.66)) #fff;
  text-stroke:  min(.2rem, calc(2vw / 13.66)) #fff;
  paint-order: stroke;
  color: #000;
}
.shop_item_txt {
 font-size: 1.6rem;
 line-height: 2.1;
 letter-spacing: 0.02em;
 text-align: justify;
}
.shop_item_txt span {
 display: block;
 font-size: 2.8rem;
 letter-spacing: 0.15em;
}
.shop_item_img {
 margin-top: min(4.5rem, calc(45vw / 13.66)) ;
}


.shop_item_btn {
 width: min(38.2rem, calc(382vw / 13.66));
 margin: min(15rem, calc(150vw / 13.66)) auto 0;
}
.shop_item_btn a {
 border:  min(.1rem, calc(1vw / 13.66))  solid #fff;
 display: block;
 width: 100%;
 font-size: 2.1rem;
 font-weight: 600;
 letter-spacing: 0.02em;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 0 min(4rem, calc(40vw / 13.66));
 padding: min(1.8rem, calc(18vw / 13.66)) 0;
 transition: .4s;
}
.shop_item_btn a::after {
 content: '';
 width: min(1rem, calc(10vw / 13.66));
 height: min(1rem, calc(10vw / 13.66));
 border-top: min(.1rem, calc(1vw / 13.66)) solid #fff;
 border-right: min(.1rem, calc(1vw / 13.66)) solid #fff;
 transform: rotate(45deg);
 transition: .4s;
}

@media (hover: hover)  and (pointer: fine){
.shop_item_btn a:where(:any-link, :enabled, summary):hover{
  background-color: #fff;
  color: #000000;
 }
.shop_item_btn a:where(:any-link, :enabled, summary):hover::after{
  border-color: #000;
 }
}


.bottom_item {
 position: relative;
 margin-top:  min(16.5rem, calc(165vw / 13.66));
}
.bottom_item p {
 font-size: 2.4rem;
 font-weight: 600;
 letter-spacing: 0.1em;
 position: absolute;
 top:  min(11.5rem, calc(115vw / 13.66));
 left:  min(13rem, calc(130vw / 13.66));
}

footer {
 background-color: #fff;
 padding:  min(13rem, calc(130vw / 13.66)) 0  min(1rem, calc(10vw / 13.66));
 margin-top: 0;
 font-size: 1.4rem;
 min-width:0;
 padding-left: calc(68vw / 13.66);
}



@media screen and (max-width: 767px) {
 .pc_only {
 display: none;
}
.sp_only {
 display: block;
}
/*                          mv                         */
.mv_inner {
 padding-top:5.6rem;
}
.mv_ttl {
 font-size: 1.9rem;
 top: 10rem;
 left: 3.8rem;
}
.scroll_bar {
 width:7.5rem;
 bottom:1.5rem;
}
.scroll_bar p {
 font-size: 1rem;
}

@keyframes scroll {
 0% {
  transform: translateY(0);
 }
 50% {
  transform: translateY(1rem);
 }
 100% {
  transform: translateY(0);
 }
}

/*                         about                         */
.about_inner {
 width:33.5rem;
 padding-top:9rem;
 padding-bottom:8.5rem;
}
.about_ttl {
 font-size: 2.3rem;
 text-align: center;
}

.about_item {
 width:100%;
 margin: 22.5rem auto 0;
}
.about_flex {
 display: flex;
 justify-content: flex-start;
 gap: 0 2rem;
}
.about_flex > p {
 width:1.5rem;
 gap: 0 2rem;
 margin-top: 1rem;
}
.about_flex > p span {
 font-size: 1rem;
 white-space: nowrap;
}
.about_flex > p::after {
 content: "";
 width: .1rem;
 height: 40rem;
}
.about_detail {
 width: 29.5rem;
}
.about_detail_ttl {
 font-size: 2.3rem;
 letter-spacing: 0.05em;
 line-height: 1.7;
}
.about_detail p {
 font-size: 1.4rem;
 line-height: 2.1;
 letter-spacing: 0.05em;
 text-align: justify;
 margin-top: 2.5rem;
}
.about_detail p span {
 font-size: 1.8rem;
 line-height: 1.88;
 margin-top:3rem;
 letter-spacing: 0.12em;
}

.about_img_01 {
 top: 11.3rem;
 right: 0;
 width:20rem;
}
.about_img_02 {
 top:24.5rem;
 left: 0;
 width:16rem;
}
.about_img_03 {
 top: 33rem;
 width:20rem;
}
.about_img_04 {
 top: 101rem;
 left:2.3rem;
 width:9rem
}
.about_img_05 {
 top: 95.5rem;
 width:18rem;
}

.about_data {
 margin-top: 20rem;
}
.about_data_ttl {
 font-size: 2.1rem;
}
.about_data_flex {
 width:30rem;
 margin: 0 auto 6rem;
 margin-top:2rem;
 flex-direction: column;
}
.about_data_txt {
 width:100%;
 font-size: 1.4rem;
 line-height: 2;
}
.about_data_img {
 width:28rem;
 margin: 3.5rem auto 0;
}
.about_data_img_02 {
 width:33.6rem;

}

/*                         living                         */
.living_inner {
 padding-top: 7rem;
 padding-bottom:4rem;
}
.living_ttl {
 font-size: 2.1rem;
 letter-spacing: 0.1em;
 line-height: 1.5;
}
.living_item {
 position: relative;
 display: flex;
 gap: 0;
 margin-top:7rem;
 padding-bottom:16.5rem;
}
.living_item:first-of-type {
 margin-top:10rem;
}
.living_item::before {
 width: 33.8rem;
 height: 100%;
 top:-3.7rem;
}
.living_img {
 width:27.5rem;
 padding-top: 0;
}
.living_img p {
 width: 21.8rem;
 font-size: 1.4rem;
 line-height: 1.76;
 bottom: -10.5rem;
 left: 5.6rem;
 letter-spacing: 0.02em;
}
.living_item:nth-of-type(even) p {
 width: 24rem;
 right: auto;
 left: 0rem;
 text-align: left;
}
.living_txt {
 font-size: 2rem;
 letter-spacing: 0.2em;
 position: absolute;
 right: 3.5rem;
 top: -4.7rem;
}
.living_item:nth-of-type(even)  .living_txt {
 right: auto;
 left: 2.5rem;
}
.living_item:nth-of-type(even) p.living_txt {
 width: auto;
}


/*                         voice                         */
.voice_inner {
 padding-top: 7.5rem;
}
.voice_ttl {
 font-size: 2.1rem;
 line-height: 1.5;
}
.voice_item {
 margin-top: 4rem;
 padding-bottom: 0rem;
}
.voice_item:first-of-type {
 margin-top: 3rem;
}

.voice_img {
 width:31rem;
}
.voice_img p {
 width: 25.3rem;
 font-size: 1.3rem;
 line-height: 1.76;
 letter-spacing: 0.02em;
 position: relative;
 padding: 0;
 margin-top: 1.5rem;
 left: 8.5rem;
}
.voice_item:nth-of-type(even) .voice_img p {
 padding: 0;
 left: auto;
 right: 8.5rem;
}
.voice_txt {
 font-size: 2rem;
 left:3.5rem;
}
.voice_item:nth-of-type(even) .voice_txt {
 right:3.5rem;
}


.pro_voice_inner,
.user_voice_inner {
 width:33.5rem;
 margin: 7rem auto 0;
}
.user_voice_inner {
 margin-top:6rem;
}
.pro_voice_flex,
.user_voice_flex {
 gap: 0 2.5rem;
}
.pro_voice_side ,
.user_voice_side{
 font-size: 1rem;
 line-height: 1;
}
.pro_voice_side::after,
.user_voice_side::after {
 width:.1rem;
 height: 165rem;
}
.user_voice_side::after {
 height: 54rem;
}

.pro_voice_main,
.user_voice_main {
 width: 29rem;
 text-align: center;
}
.pro_voice_main h3 ,
.user_voice_main h3{
 font-size: 2.1rem;
 border-bottom: .1rem solid #fff;
}
.user_voice_main h3 {
 margin-bottom: 3.5rem;
}
.pro_voice_main > p,
.user_voice_main > p {
 font-size: 1.3rem;
 margin-top: 3.5rem;
}
.pro_voice_main_flex {
 position: relative;
 flex-direction: column;
 align-items: flex-start;
 margin:3rem 0 5.5rem
}
.pro_voice_img {
 width:18.7rem;
}
.pro_voice_main_flex p {
 width:100%;
 font-size: 1.2rem;
 line-height: 1.8;
 margin-top: 1.5rem;
}
.pro_voice_main_flex  span {
 font-size: 1.4rem;
 position: absolute;
 top: 14rem;
 right: 0;
 margin-bottom: 0;
 padding-left:0;
 background-color: transparent;
}
.user_voice_main span {
 font-size: 1.4rem;
 padding-left: 1rem;
}
.pro_voice_main_flex  span::before {
 width:15rem;
 height:.1rem;
 top: auto;
 bottom: 0;
 transform: none;
}

.user_voice_main > div:first-of-type {
 margin-bottom: 4rem;
}
.user_voice_main > div::before {

 height:.1rem;
 bottom:  1.2rem;
}



.voice_movie_ttl {
 margin:  7rem 0  3rem;
 font-size: 2.1rem;
 line-height: 1.5;
}
.voice_thum {
 padding: 0  0 8rem;
 width:  30rem;
 border-bottom: .1rem solid #fff;
}
.voice_thum iframe {
 width:  100%;
 height: 16.9rem;
}





/*                         lineup                         */

.lineup_inner {
 width:  30.3rem;
 margin:  7.5rem auto ;
 }
.lineup_ttl {
 font-size: 2.1rem;
}
.lineup_item {
 margin-top: 3rem;
}

.lineup_img p {
 font-size: 2.3rem;
 left:.5rem;
 bottom: -4rem;
 flex-direction: column;
 align-items: flex-start;

}
.lineup_img p span {
 font-size: 1.1rem;
}
.lineup_txt {
 font-size: 1.2rem;
 margin-top: 1rem;
}


/*                         shop                         */

.shop_inner {
 width:30.3rem;
 border: .1rem solid #ffffff;
 padding:5rem 0 6rem;
}
.shop_ttl {
 font-size: 2.1rem;
}
.shop_txt {
 font-size: 1.4rem;
 line-height: 1.85;
 margin-top:  2rem;
}

.shop_item {
width: 25.5rem;
padding-bottom: 2.5rem;
margin-top:2.5rem;
}
.shop_item:first-of-type {
 border-bottom: .1rem solid #fff;
}

.shop_flex {
 display: flex;
 align-items: flex-end;
 gap:  0  ;
 position: relative;
}
.num {
 width:6.5rem;
 font-size: 5.8rem;
  -webkit-text-stroke:  .1rem #fff;
  text-stroke:  .1rem #fff;
  paint-order: stroke;
  position: absolute;
  top: 0;left: 0;
}
.shop_item_txt {
 font-size: 1.3rem;
 line-height: 1.76;
}
.shop_item_txt span {
 width: 17.5rem;
 margin-left: auto;
 font-size: 1.8rem;
 letter-spacing: 0.07em;
 height: 6.4rem;
 display: flex;
 align-items: center;
 margin-bottom: 0.5rem;
}
.shop_item_img {
 margin-top: 2.5rem ;
}


.shop_item_btn {
 width: 25rem;
 margin: 4rem auto 0;
}
.shop_item_btn a {
 border:.1rem solid #fff;
 font-size: 1.6rem;
 gap: 0 1rem;
 padding: 1.1rem 0;
}
.shop_item_btn a::after {
 width: 1rem;
 height: 1rem;
 border-top:.1rem solid #fff;
 border-right:.1rem solid #fff;
}


.bottom_item {
 margin-top:8rem;
}
.bottom_item p {
 font-size: 2.2rem;
 top:  7.5rem;
 left:  3.5rem;
}

footer {
 background-color: #fff;
 padding: 5.3rem 0  9.3rem;
 margin-top: 0;
 font-size: 1.2rem;
}

}

#shop_btn {
 display: block;
 transform: none;
}
