
/*                       mv                        */
.mv_inner {
 width: 100%;
 height: 100vh;
 height: 100dvh;
 background: #fd5454;
 background: linear-gradient(125deg,#f47b17 0%,#f44600 90%);
 position: relative;
 overflow: hidden;
}
.mv_copy {
 position: absolute;
 left: 0;
 right: 0;
 margin: 0 auto;
}
.mv_copy_01 {
 width: min(23.4rem, calc(234vw / 13.66));
 top: min(8.5rem, calc(85vw / 13.66));
 left: max(-51.5rem, calc(-515vw / 13.66));
}

.mv_copy_02 {
 width: min(49.7rem, calc(497vw / 13.66));
 top: min(15rem, calc(150vw / 13.66));
 left: min(25rem, calc(250vw / 13.66));
}
.mv_copy_03 {
 width: min(42.6rem, calc(426vw / 13.66));
 top: min(29.5rem, calc(295vw / 13.66));
}
.mv_copy_04 {
 width: min(36rem, calc(360vw / 13.66));
 top: min(63rem, calc(630vw / 13.66));
 left: min(2rem, calc(20vw / 13.66));
}
.mv_copy_05 {
 width: min(126.6rem, calc(1266vw / 13.66));
 z-index: 5;
 opacity: 0;

 height: fit-content;
 bottom: 0;
 top: max(-28rem, calc(-280vw / 13.66));
 margin: auto;
}
.mv_copy_06 {
 width: min(86rem, calc(860vw / 13.66));
 z-index: 5;
 opacity: 0;
 height: fit-content;
 bottom: 0;
 top: min(48rem, calc(480vw / 13.66));
 margin: auto;
}

.mv_img {
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
}

.mv_img_01 {
 width: min(32.4rem, calc(324vw / 13.66));
 left: max(-73rem, calc(-730vw / 13.66));
}
.mv_img_02 {
 width: min(24rem, calc(240vw / 13.66));
 right: max(-78rem, calc(-780vw / 13.66));
}
.mv_img_03 {
 width: min(162rem, calc(1620vw / 13.66));
 z-index: 3;
 bottom: max(-18rem, calc(-180vw / 13.66));
 left: 50%;
 translate: -50%;
 right: auto;


 height: fit-content;
 bottom: 0;
 top: min(49rem, calc(490vw / 13.66));
 margin: auto;
}
.mv_bg {
 position: absolute;
 /* left: 0;right: 0; */
 top: 0;
 /* margin: 0 auto; */
}
.mv_bg_img_01 {
 width: min(30.3rem, calc(303vw / 13.66));
 /* left:   max(-121rem,calc(-1210vw/13.66)); */
 left: max(-10.5rem, calc(-105vw / 13.66));
 top: min(23rem, calc(230vw / 13.66));
 z-index: 1;
}
.mv_bg_img_01 span {
 content: "";
 display: block;
 width: min(8.1rem, calc(81vw / 13.66));
 height: min(9.4rem, calc(94vw / 13.66));
 background: url(../images/top/mv_bg_icon_01.webp) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-10rem, calc(-100vw / 13.66));
 right: min(1rem, calc(10vw / 13.66));
}
.mv_bg_img_02 {
 width: min(32.1rem, calc(321vw / 13.66));
 /* left:   max(-137rem,calc(-1370vw/13.66)); */
 left: max(-16rem, calc(-160vw / 13.66));
 top: min(51.5rem, calc(515vw / 13.66));
 z-index: 1;
}
.mv_bg_img_02 span {
 content: "";
 display: block;
 width: min(8.5rem, calc(85vw / 13.66));
 height: min(7.8rem, calc(78vw / 13.66));
 background: url(../images/top/mv_bg_icon_02.webp) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-5.4rem, calc(-54vw / 13.66));
 right: max(-3rem, calc(-30vw / 13.66));
}
.mv_bg_img_03 {
 width: min(28rem, calc(280vw / 13.66));
 /* right: max(-133rem,calc(-1330vw/13.66)); */
 right: max(-12rem, calc(-120vw / 13.66));
 top: min(19.5rem, calc(195vw / 13.66));
 z-index: 1;
}
.mv_bg_img_03 span {
 content: "";
 display: block;
 width: min(11rem, calc(110vw / 13.66));
 height: min(10rem, calc(100vw / 13.66));
 background: url(../images/top/mv_bg_icon_03.webp) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-7.7rem, calc(-77vw / 13.66));
 left: max(-8.3rem, calc(-83vw / 13.66));
}
.mv_bg_img_04 {
 width: min(28rem, calc(280vw / 13.66));
 /* right: max(-131rem,calc(-1310vw/13.66)); */
 right: max(-9rem, calc(-90vw / 13.66));
 top: min(48.5rem, calc(485vw / 13.66));
 z-index: 1;
}
.mv_bg_img_04 span {
 content: "";
 display: block;
 width: min(7.8rem, calc(78vw / 13.66));
 height: min(8.5rem, calc(85vw / 13.66));
 background: url(../images/top/mv_bg_icon_04.webp) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-10.4rem, calc(-104vw / 13.66));
 left: max(-3rem, calc(-30vw / 13.66));
}

.mv_food {
 position: absolute;
 top: 0;
 /* left: 0;
  right: 0;
  margin: 0 auto; */
}

.mv_food_img_01 {
 width: min(42.5rem, calc(425vw / 13.66));
 /* left:   max(-118rem,calc(-1180vw/13.66)); */
 left: max(-10rem, calc(-100vw / 13.66));
 top: min(10rem, calc(100vw / 13.66));
}
.mv_food_img_02 {
 width: min(43.1rem, calc(431vw / 13.66));
 /* left:   max(-115rem,calc(-1150vw/13.66)); */
 left: max(-15rem, calc(-150vw / 13.66));
 top: min(47.5rem, calc(475vw / 13.66));
}
.mv_food_img_03 {
 width: min(49.3rem, calc(493vw / 13.66));
 /* right:   max(-110rem,calc(-1100vw/13.66)); */
 right: max(-15.5rem, calc(-155vw / 13.66));
 top: min(15rem, calc(150vw / 13.66));
}
.mv_food_img_04 {
 width: min(46.6rem, calc(466vw / 13.66));
 /* right:   max(-123rem,calc(-1230vw/13.66)); */
 right: max(-14rem, calc(-140vw / 13.66));
 top: min(48rem, calc(480vw / 13.66));
}


@media screen and (max-width: 767px) {
 .mv_copy {
  left: auto;
  right: auto;
  margin: 0;
  z-index: 2;

 }
.mv_copy_01 {
 width: 9.5rem;
 height: fit-content;
 top: -28rem;
 bottom: 0;
 margin: auto 0;
 left:2.7rem;
}

.mv_copy_02 {
 width:21rem;
 height: fit-content;
 top: -24rem;
 bottom: 0;
 margin: auto 0;
 left:13.7rem;
}
.mv_copy_03 {
 width:17rem;
 height: fit-content;
 top:-7rem;
 left: 0;
 right: 0;
 bottom: 0;
 margin:  auto;
}
.mv_copy_04 {
 width:15rem;
 height: fit-content;
 top: 13rem;
 left:0;
 right: 0;
 bottom: 0;
 margin: auto;
}
.mv_copy_05 {
 width:30rem;
 height: fit-content;
 top: -24rem;
 bottom: 0;
  left:0;
 right: 0;
 margin:  auto;
}
.mv_copy_06 {
 width: 33rem;
 height: fit-content;
 top: 3rem;
 bottom: 0;
  left:0;
 right: 0;
 margin: auto;
}

.mv_img {
 left: auto;
 right: auto;
 margin: 0 ;
}

.mv_img_01 {
 width:17rem;
 left:1rem;
}
.mv_img_02 {
 width:11.5rem;
 right: 1.5rem;
}
.mv_img_03 {
 width:51rem;
 z-index: 3;
 left: 50%;
 bottom: 0;
 top: auto;
}
.mv_bg {
 position: absolute;
 left: auto;
 right: 0;
 top: 0;
 margin: 0;
}
.mv_bg_img_01 {
 width:13rem;
 left:-3rem;
 top:7rem;
}
.mv_bg_img_01 span {
 width: 3.4rem;
 height:3.9rem;
 top: -4.4rem;
 right: .3rem;
}
.mv_bg_img_02 {
 width:13.7rem;
 left:-6rem;
 top:29rem;
}
.mv_bg_img_02 span {
 width:3.5rem;
 height: 3.2rem;
 top:-2rem;
 right:-1.2rem;
}
.mv_bg_img_03 {
 width:12rem;
 right:-4.4rem;
 top: 12.5rem;
}
.mv_bg_img_03 span {
 width:4.6rem;
 height:4.2rem;
 top:-3.3rem;
 left:-3.5rem;
}
.mv_bg_img_04 {
 width:10.2rem;
 right:-4.5rem;
 top:32.5rem;
 z-index: 1;
}
.mv_bg_img_04 span {
 width:3.2rem;
 height:3.5rem;
 top: -4.1rem;
 left:-.8rem;
}

.mv_food {
 position: absolute;
 top: 0;
 left: auto;
  right: auto;
  margin: 0 ;
}

.mv_food_img_01 {
 width:24.6rem;
 left: -7.2rem;
 top:9rem;
}
.mv_food_img_02 {
 width:23.8rem;
 left:-7.3rem;
 top:24.5rem;
}
.mv_food_img_03 {
 width:21.2rem;
 right: -8rem;
 top: 10rem;
}
.mv_food_img_04 {
 width:23.2rem;
 right:-6.3rem;
 top: 27rem;
}
}
/*                       about                        */
#about {
 position: relative;
}
.about_inner {
 position: relative;
 background-color: #ff5500;
}
.about_item {
 width: min(100rem, calc(1000vw / 13.66));
 margin: 0 auto;
 background-color: #fff;
 position: relative;
 padding: min(12rem, calc(120vw / 13.66)) 0 min(13rem, calc(130vw / 13.66));
}
.about_item::before {
 content: "";
 width: min(27.8rem, calc(278vw / 13.66));
 height: 100%;
 background: url(../images/top/about_bg.svg) repeat-y;
 background-size: contain;
 position: absolute;
 top: 0;
 left: max(-117rem, calc(-1170vw / 13.66));
 right: 0;
 margin: 0 auto;
}
.about_item::after {
 content: "";
 width: min(27.8rem, calc(278vw / 13.66));
 height: 100%;
 background: url(../images/top/about_bg.svg) repeat-y;
 background-size: contain;
 position: absolute;
 top: 0;
 right: max(-117rem, calc(-1170vw / 13.66));
 left: 0;
 margin: 0 auto;
}
.about_copy {
 text-align: center;
}

.about_copy .about_copy_ttl {
 margin-bottom: min(8rem, calc(80vw / 13.66));
}
.about_copy .about_copy_ttl .ele {
 font-size: 5.4rem;
 font-weight: 900;
}
.about_copy_ttl span {
 line-height: 1.2;
}
.about_copy_ttl p:first-of-type {
 margin-bottom: min(4rem, calc(40vw / 13.66));
}

.about_copy .box {
 display: inline-block;
 position: relative;
 z-index: 1;
 line-height: 1.3;
 margin-bottom: min(0.5rem, calc(5vw / 13.66));
}
.about_copy .box::before {
 content: "";
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
 position: absolute;
 top: min(0.7rem, calc(7vw / 13.66));
 left: min(0.7rem, calc(7vw / 13.66));
}
.about_copy .break .box:first-of-type::before,
.about_copy .break .box:first-of-type .ele {
 border-right: none;
 padding-right: 0;
}
.about_copy .break .box:last-of-type::before,
.about_copy .break .box:last-of-type .ele {
 border-left: none;
 padding-left: 0;
}
.about_copy .red .box::before {
 background-color: #b72c25;
}
.about_copy .yellow .box::before {
 background-color: #ffe600;
}
.about_copy .orange .box::before {
 background-color: #ffa515;
}
.about_copy .green .box::before {
 background-color: #88e063;
}
.about_copy .ele {
 font-size: 3.5rem;
 font-weight: 600;
 display: inline-block;
 background-color: #fff;
 position: relative;
 z-index: 1;
 box-sizing: border-box;
 padding: 0 min(1rem, calc(10vw / 13.66));
 border: min(0.2rem, calc(2vw / 13.66)) solid #333333;
}
.about_copy .min {
 font-size: 2rem;
}
.about_copy p {
 font-size: 2rem;
 font-weight: 600;
 margin-bottom: min(1.5rem, calc(15vw / 13.66));
}

.about_box {
 width: min(71.5rem, calc(715vw / 13.66));
 box-sizing: border-box;
 margin: min(7rem, calc(70vw / 13.66)) auto 0;
 font-size: 2rem;
 letter-spacing: 0.08em;
 font-weight: 600;
 position: relative;
 z-index: 1;
 background-color: #fff;
}
.about_box::before {
 content: "";
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border: 2px solid #333333;
 position: absolute;
 top: min(1rem, calc(10vw / 13.66));
 left: min(1rem, calc(10vw / 13.66));
 background-color: #ff3222;
 z-index: -15;
}
.about_box_inner {
 border:2px solid #333333;
 padding: min(5rem, calc(50vw / 13.66)) 0;
 background-color: #fff;
 position: relative;
}
.about_box_inner::before {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(0 0, 0 75%, 100% 100%);
 background-color: #333333;
 position: absolute;
 top: min(25.9rem, calc(259vw / 13.66));
 right: max(-6.2rem, calc(-62vw / 13.66));
 z-index: 1;
}
.about_box_inner::after {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(0 0, 0 75%, 100% 100%);
 background-color: #ff3222;
 position: absolute;
 top: min(25.5rem, calc(255vw / 13.66));
 right: max(-5.5rem, calc(-55vw / 13.66));
 z-index: 2;
}
.about_box_inner .arrow {
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(0 0, 0 75%, 100% 100%);
 background-color: #333333;
 position: absolute;
 top: min(25rem, calc(250vw / 13.66));
 right: max(-5.2rem, calc(-52vw / 13.66));
 z-index: 5;
}
.about_box_inner .arrow::after {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(0 0, 0 75%, 100% 100%);
 background-color: #fff;
 position: absolute;
 top: max(-0.4rem, calc(-4vw / 13.66));
 right: min(0.7rem, calc(7vw / 13.66));
 z-index: 2;
}
.about_box p span {
 display: block;
 font-size: 2.5rem;
 color: #b72c25;
 line-height: 1.48;
 margin: min(1rem, calc(10vw / 13.66)) 0 min(0.5rem, calc(5vw / 13.66));
}

.about_img_01 {
 width: min(29.6rem, calc(296vw / 13.66));
 position: absolute;
 top: min(34rem, calc(340vw / 13.66));
 left: max(-102rem, calc(-1020vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 5;
}
.about_img_02 {
 width: min(30rem, calc(300vw / 13.66));
 position: absolute;
 top: min(99rem, calc(990vw / 13.66));
 left: max(-110rem, calc(-1100vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 5;
}
.about_img_03 {
 width: min(26.2rem, calc(262vw / 13.66));
 position: absolute;
 top: min(50rem, calc(500vw / 13.66));
 right: max(-94rem, calc(-940vw / 13.66));
 left: 0;
 margin: 0 auto;
 z-index: 5;
}

.about_img_04 {
 width: min(12.6rem, calc(126vw / 13.66));
 position: absolute;
 top: min(76rem, calc(760vw / 13.66));
 right: max(-105rem, calc(-1050vw / 13.66));
 left: 0;
 margin: 0 auto;
 z-index: 5;
}



@media screen and (max-width: 767px) {
.about_item {
 width:100%;
 padding:4.7rem 0 15rem;
}
.about_item::before {
 width:15rem;
 left:-11.5rem;
 right: auto;
}
.about_item::after {
 width:15rem;
 right: -11.5rem;
 left: auto;
}

.about_copy .about_copy_ttl {
 margin-bottom: min(8rem, calc(80vw / 13.66));
}
.about_copy .about_copy_ttl .ele {
 font-size: 2.4rem;
}
.about_copy_ttl p:first-of-type {
 margin-bottom: .6rem;
}

.about_copy .box {
 display: inline-block;
 margin-bottom: 0rem;
}
.about_copy .box::before {
 border:.1rem solid #333333;
 top: .3rem;
 left: .2rem;
}
.about_copy .break .box:first-of-type  {
 margin-bottom: .6rem;
}
.about_copy .break .box:first-of-type::before,
.about_copy .break .box:first-of-type .ele {
 border-right: .1rem solid #333333;
 padding-right: .5rem;
}
.about_copy .break .box:last-of-type::before,
.about_copy .break .box:last-of-type .ele {
 border-left: .1rem solid #333333;
 padding-left: .5rem;
}

.about_copy .ele {
 font-size: 2rem;
 padding: 0 .5rem;
 border: .1rem solid #333333;
}
.about_copy .min {
 font-size: 1.4rem;
}
.about_copy p {
 font-size: 1.4rem;
 font-weight: 600;
 margin-bottom: .5rem;
}
.about_copy p:last-of-type {margin-top: 1rem;}

.about_box {
 width:33.5rem;
 margin:3.7rem auto 0;
 font-size: 1.4rem;
}
.about_box::before {
 border:.1rem solid #333333;
 top: .3rem;
 left: .3rem;
}
.about_box_inner {
 border:.1rem solid #333333;
 padding: 2rem 0;
}
.about_box_inner::before {
 width: 3.4rem;
 height: 3.4rem;
 clip-path: polygon(70% 0, 0 0, 100% 100%);
 top: auto;
 bottom: -3.8rem;
 right: 6rem;
}
.about_box_inner::after {
 width: 3.4rem;
 height: 3.4rem;
 clip-path: polygon(70% 0, 0 0, 100% 100%);
 top: auto;
 bottom: -3.5rem;
 right:6.2rem;
}
.about_box_inner .arrow {
 width: 3.4rem;
 height: 3.4rem;
 clip-path: polygon(70% 0, 0 0, 100% 100%);
 top: auto;
 bottom: -3.4rem;
 right:6.4rem;
}
.about_box_inner .arrow::after {
 width: 3.4rem;
 height: 3.4rem;
 clip-path: polygon(70% 0, 0 0, 100% 100%);
 top: auto;
 bottom: .5rem;
 right: .3rem;
}
.about_box p span {
 font-size: 2rem;
 line-height: 1.6;
 margin:.5rem 0 0rem;
}

.about_img_01 {
 width:13rem;
 top: 23.2rem;
 left: -6rem;
 right: auto;
 margin: 0;

}
.about_img_02 {
 width: 15rem;
 top:auto;
 bottom: -3.5rem;
 left:-2rem;
 right: auto;
 margin: 0 ;
}
.about_img_03 {
 width: 9rem;
 top: 29rem;
 right: -1.8rem;
 left: auto;
 margin: 0 ;

}
.about_img_04 {
 width: 5rem;
 position: absolute;
 top: 39rem;
 right:-.6rem;
 left: auto;
 margin: 0;
}

}

/*                       place                        */
.place_inner {
 background-color: #ffb31a;
 padding: min(15rem, calc(150vw / 13.66)) 0;
 position: relative;
 z-index: 1;
}
.place_inner::after {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_orange_deep.svg) repeat-x;
 position: absolute;
 bottom: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.place_ttl {
 width: min(93rem, calc(930vw / 13.66));
 margin: 0 auto;
 position: relative;
}
.place_ttl::before {
 content: "";
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 border:2px solid #333333;
 background-color: #fff;
 position: absolute;
 top: min(0.7rem, calc(7vw / 13.66));
 left: min(0.7rem, calc(7vw / 13.66));
}
.place_ttl > span {
 font-size: 6.4rem;
 font-weight: 600;
 color: #fff;
 letter-spacing: 0.1em;
 box-sizing: border-box;
 background: #494747;
 border:2px solid #333333;
 line-height: 1.4;
 position: relative;
 z-index: 1;
 display: block;
}
.place_ttl > span::before {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(20% 0, 0% 100%, 100% 0);
 background-color: #333333;
 position: absolute;
 bottom: max(-5.9rem, calc(-59vw / 13.66));
 right: min(18.5rem, calc(185vw / 13.66));
 z-index: -1;
}
.place_ttl > span::after {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.1rem, calc(51vw / 13.66));
 clip-path: polygon(20% 0, 0% 100%, 100% 0);
 background-color: #fff;
 position: absolute;
 bottom: max(-5.3rem, calc(-53vw / 13.66));
 right: min(18.2rem, calc(182vw / 13.66));
 z-index: -1;
}
.place_ttl .arrow {
 display: block;
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 position: absolute;
 bottom: max(-5.2rem, calc(-52vw / 13.66));
 right: min(18.8rem, calc(188vw / 13.66));
}
.place_ttl .arrow::before {
 display: block;
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(20% 0, 0% 100%, 100% 0);
 background-color: #333333;
 position: absolute;
 bottom: 0;
 right: 0;
}
.place_ttl .arrow::after {
 content: "";
 width: min(5.2rem, calc(52vw / 13.66));
 height: min(5.2rem, calc(52vw / 13.66));
 clip-path: polygon(20% 0, 0% 100%, 100% 0);
 background-color: #494747;
 position: absolute;
 bottom: min(0.6rem, calc(6vw / 13.66));
 right: max(-0.3rem, calc(-3vw / 13.66));
}

.place_img_01 {
 width: min(20.4rem, calc(204vw / 13.66));
 position: absolute;
 top: min(4.1rem, calc(41vw / 13.66));
 left: min(62rem, calc(620vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 2;
}
.place_img_03 {
 width: min(38.6rem, calc(386vw / 13.66));
 position: absolute;
 bottom: max(-12.2rem, calc(-122vw / 13.66));
 left: min(106rem, calc(1060vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 2;
}

.place_item {
 display: flex;
 justify-content: space-between;
 align-items: center;
 width: min(123rem, calc(1230vw / 13.66));
 margin: min(9.5rem, calc(95vw / 13.66)) auto 0;
}

.place_img_02 {
 width: min(60rem, calc(600vw / 13.66));
}
.place_detail {
 width: min(54rem, calc(540vw / 13.66));
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 text-align: left;
}
.place_detail p {
 margin-bottom: min(5rem, calc(50vw / 13.66));
}

@media screen and (max-width: 767px) {
 .place_inner {
 padding:8.5rem 0 9rem;
}
.place_inner::after {
 height: 6rem;
 bottom:-3rem;
 background-size: cover;
 background-position: center;
}
.place_ttl {
 width:33.5rem;
}
.place_ttl::before {
 border: .1rem solid #333333;
 top: .3rem;
 left: .3rem;
}
.place_ttl > span {
 font-size: 2.7rem;
 border: .1rem solid #333333;
 line-height: 1.25;
 padding: .8rem 0;
}
.place_ttl >span::before {
 width: 2.5rem;
 height: 2.5rem;
 bottom: -2.8rem;
 right:9.3rem;
}
.place_ttl > span::after {
 width: 2.5rem;
 height: 2.5rem;
 bottom: -2.6rem;
 right: 9.2rem;
}
.place_ttl .arrow {
 width: 2.5rem;
 height: 2.5rem;
 bottom:-2.5rem;
 right: 9.6rem;
}
.place_ttl .arrow::before {
 width: 2.5rem;
 height: 2.5rem;
}
.place_ttl .arrow::after {
 width: 2.5rem;
 height: 2.5rem;
 bottom:.4rem;
 right:-.2rem;
}

.place_img_01 {
 width: 10.2rem;
 top:3.1rem;
 left: 21rem;
}
.place_img_03 {
 width:17rem;
 position: absolute;
 bottom:-7rem;
 left: auto;
 right: -5.5rem;
 margin: 0;
}


.place_item {
 flex-direction: column;
 gap: 4rem 0;
 width: 100%;
 margin: 5rem auto 0;
}

.place_img_02 {
 width:36rem;
 margin: 0 auto;
}
.place_detail {
 width: 33.5rem;
 font-size: 1.4rem;
 text-align: justify;
 line-height: 1.78;
 letter-spacing: 0.06em;
}
.place_detail p {
 margin-bottom: 3rem;
}
}

/*                       what                        */
.what_inner {
 position: relative;
 background-image:  url(../images/top/what_bg.svg) ,  url(../images/top/what_bg.svg);
 background-repeat: repeat, repeat;
 background-size: contain,contain;
 background-color: #8bf2e3;
 background-position: 0 calc(70vw / 13.66), 0  calc(200vw / 13.66);
 animation: what_bg forwards linear 20s infinite;
}


@keyframes what_bg {
 0% {
  background-position: 0  calc(70vw / 13.66), 0 calc(200vw / 13.66);
 }
 100% {
  background-position: -100vw  calc(70vw / 13.66), 100vw  calc(200vw / 13.66);
 }
}

.what_item {
 width: min(132rem, calc(1320vw / 13.66));
 display: flex;
 justify-content: space-between;
 padding: min(18rem, calc(180vw / 13.66)) 0;
 margin: 0 auto;
 position: relative;
 left: max(-11rem, calc(-110vw / 13.66));
}
.what_img {
 width: min(66.4rem, calc(664vw / 13.66));
}
.what_detail {
 width: min(62rem, calc(620vw / 13.66));
}
.what_ttl {
 font-size: 8rem;
 font-weight: 600;
 text-align: left;
 line-height: 1.5;
 letter-spacing: 0.05em;
}
.what_ttl span {
 font-size: 14rem;
 color: #ff331f;
 line-height: 1;
 text-indent: -0.08em;
 display: inline-block;
}
.what_txt {
 font-size: 1.8rem;
 letter-spacing: 0.12em;
 text-align: left;
 font-weight: 600;
 margin: min(4.5rem, calc(45vw / 13.66)) 0 min(5.5rem, calc(55vw / 13.66));
}

@media screen and (max-width: 767px) {
 .what_inner {
 background-position: 0 1rem;
}
.what_inner {
 background-position: 0 1rem, 0  4rem;
 animation: what_bg forwards linear 15s infinite;
}


@keyframes what_bg {
 0% {
  background-position: 0  1rem, 0 4rem;
 }
 100% {
  background-position: -100vw  1rem, 100vw  4rem;
 }
}

.what_item {
 width:33.3rem;
 flex-direction: column-reverse;
 padding:7rem 0 10rem;
 left:0;
}
.what_img {
 width:29rem;
 margin: 0 auto;
 position: absolute;
 left: 0;
 right: 0;
 top: 22.5rem;
}
.what_detail {
 width: 100%
}
.what_ttl {
 font-size: 4rem;
}
.what_ttl span {
 font-size: 7rem;
}
.what_txt {
 font-size: 1.4rem;
text-align: justify;
 margin:30.5rem 0 3.5rem;
 line-height: 1.78;
}
}

/*                       work                        */
.work_inner {
 background-color: #ffd72e;
 position: relative;
 z-index: 1;
 padding: min(12.5rem, calc(125vw / 13.66)) 0 min(15rem, calc(150vw / 13.66));
}
.work_inner::before {
 content: "";
 width: min(57rem, calc(570vw / 13.66));
 height: min(64.7rem, calc(647vw / 13.66));
 background: url(../images/common/bg_icon.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -1;
}
.work_inner::after {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_yellow.svg) repeat-x;
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.work_img_03 {
 width:  min(31.2rem, calc(312vw / 13.66));
 position: absolute;
 top: min(16rem, calc(160vw / 13.66));
 left: max(-127rem, calc(-1270vw / 13.66));
 right: 0;
 margin: 0 auto;
}
.work_ttl {
 width: min(81rem, calc(810vw / 13.66));
 margin: 0 auto min(4rem, calc(40vw / 13.66));
}
.work_txt {
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.12em;
}
.work_flex {
 width: min(96rem, calc(960vw / 13.66));
 display: flex;
 justify-content: space-between;
 margin: min(4rem, calc(40vw / 13.66)) auto min(12rem, calc(120vw / 13.66));
}
.work_img {
 width: min(43rem, calc(430vw / 13.66));
 transition: .4s;
 position: relative;
}
.work_img::after{
 content: '';
 width: min(31rem, calc(310vw / 13.66));
 height: min(12.5rem, calc(125vw / 13.66));
 background: url(../images/top/work_img_hover.webp) no-repeat;
 background-size: cover;
 position: absolute;
 bottom: max(-4.5rem, calc(-45vw / 13.66));
 left: max(-2rem, calc(-20vw / 13.66));
 right: 0;
 margin: 0 auto;
 transition: .4s;
 opacity: 0;
}
.work_img:last-of-type {
 width: min(43rem, calc(430vw / 13.66));
}
.work_img:hover {
 transform: scale(1.1);
}
.work_img:hover::after{
 opacity: 1;

}


.work_inner .btn {
 margin: 0 auto;
}

@media screen and (max-width: 767px) {
 .work_inner {
 padding: 8.5rem 0 9.5rem;
}
.work_inner::before {
 width: 22.4rem;
 height:25.4rem;
 top: 13.5rem;
 transform: none;
}
.work_inner::after {
 height: 6rem;
 top: -3rem;
 background-size: cover;
}
.work_ttl {
 width: 23rem;
 margin: 0 auto 3rem;
}
.work_txt {
 font-size: 1.4rem;
 line-height: 1.78;
}
.work_flex {
 width: 26rem;
 flex-direction: column;
 margin: 4rem auto 7rem;
}
.work_img {
 width: 100%;
}
.work_img::after{
 width: 18.5rem;
 height: 7.5rem;
 bottom:-2.3rem;
 left: -1rem;
 right: 0;
}
.work_img:last-of-type {
 width: 100%;
 margin-top: 3.5rem;
}


}

/*                       level                        */
.level_inner {
 background-color: #f9cc12;
 position: relative;
 z-index: 1;
 padding: min(10rem, calc(100vw / 13.66)) 0 min(15rem, calc(140vw / 13.66));
}
.level_inner::before {
 content: "";
 width: min(57rem, calc(570vw / 13.66));
 height: min(64.7rem, calc(647vw / 13.66));
 background: url(../images/common/bg_icon.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: 35%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -1;
}
.level_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;
}
.level_img_01 {
 width: min(47.2rem, calc(472vw / 13.66));
 position: absolute;
 top: max(-25rem, calc(-250vw / 13.66));
 left: max(-117rem, calc(-1170vw / 13.66));
 right: 0;
 margin: 0 auto;
 z-index: 2;
}
.level_img_02 {
 width: min(22.6rem, calc(226vw / 13.66));
 position: absolute;
 top: min(11rem, calc(110vw / 13.66));
 right: max(-124rem, calc(-1240vw / 13.66));
 left: 0;
 margin: 0 auto;
 z-index: 2;
}
.level_ttl {
 width: min(53.5rem, calc(535vw / 13.66));
 margin: 0 auto min(4rem, calc(40vw / 13.66));
}
.level_txt {
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.1em;
}

.level_inner .btn {
 margin: 0 auto;
}

.level_item {
 margin: min(9rem, calc(90vw / 13.66)) auto min(5rem, calc(50vw / 13.66));
 width:  min(33rem, calc(330vw / 13.66));
 height:  min(58rem, calc(580vw / 13.66));
 position: relative;
 perspective:  min(300rem, calc(3000vw / 13.66)) ;
}

.level_slider {
 height: 100%;
 width: 100%;
 position: absolute;
 transform-style: preserve-3d;
 transition: transform 1s;
}

.level_slide {
 display: block;
 position: relative;
 position: absolute;
 width: 100%;
 background-color: #fff;
 box-sizing: border-box;
 border: min(.1rem, calc(1vw / 13.66)) solid #333333;
 padding: min(1.7rem, calc(17vw / 13.66));
 border-radius: min(.5rem, calc(5vw / 13.66));
}
.level_slide::before {
 content: '';
 width:  min(9.8rem, calc(98vw / 13.66));
 height:  min(23.5rem, calc(235vw / 13.66));
 background: url(../images/top/level_slide_icon_01.svg) no-repeat;
 background-size: cover;
 position: absolute;
 bottom: max(-1.5rem, calc(-15vw / 13.66));
 right: max(-2.5rem, calc(-25vw / 13.66));
}
.level_slide_02::before {
 background: url(../images/top/level_slide_icon_02.svg) no-repeat;
 background-size: cover;
}
.level_slide_03::before {
 background: url(../images/top/level_slide_icon_03.svg) no-repeat;
 background-size: cover;
}
.level_slide_04::before {
 background: url(../images/top/level_slide_icon_04.svg) no-repeat;
 background-size: cover;
}
.level_slide_05::before {
 background: url(../images/top/level_slide_icon_05.svg) no-repeat;
 background-size: cover;
}
.level_slide_06::before {
 background: url(../images/top/level_slide_icon_06.svg) no-repeat;
 background-size: cover;
}
.level_slide_01 {
  transform: rotateY(0deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide_02 {
  transform: rotateY(60deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide_03{
  transform: rotateY(120deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide_04 {
  transform: rotateY(180deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide_05 {
  transform: rotateY(240deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide_06 {
  transform: rotateY(300deg) translateZ(min(32rem, calc(320vw / 13.66)));
}
.level_slide .num {
 text-align: left;
 box-sizing: border-box;
 padding-left: min(.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%);
}
.level_slide_01 .num {
 color: #80ba3c;
}
.level_slide_01 .level_slide_img {
 background-color: #cff445;
}

.level_slide_02 .num {
 color: #fc751a;
}
.level_slide_02 .level_slide_img {
 background-color: #ffa329;
}
.level_slide_03 .level_slide_img {
 background-color: #33a3ff;
}
.level_slide_03 .num {
 color: #0077ed;
}
.level_slide_04 .level_slide_img {
 background-color: #f97575;
}
.level_slide_04 .num {
 color: #d30000;
}
.level_slide_05 .level_slide_img {
 background-color: #ff94b0;
}
.level_slide_05 .num {
 color: #ff126d;
}

.level_slide_06 .num {
 color: #00bbf4;
}
.level_slide_06 .level_slide_img {
 background-color: #7df0ff;
}

.level_slide_detail {
 box-sizing: border-box;
padding: 0  min(.5rem, calc(5vw / 13.66));
margin-top:  min(1.5rem, calc(15vw / 13.66));
}
.level_slide_ttl {
 font-size: 2.4rem;
 font-weight: 600;
 color: #fff;
 line-height: 1.66;
 letter-spacing: 0.09em;
 text-align: left;
 line-height: 1.8;
}
 .level_slide_ttl  p{
 background-color: #54a840;
 display: inline;
 box-decoration-break: clone;
 line-height: 1.3;
 padding: 0  min(.5rem, calc(5vw / 13.66));
}
.level_slide_02 .level_slide_ttl  p{
background-color: #fc751a;
}
.level_slide_03 .level_slide_ttl  p{
background-color: #0077ed;
}
.level_slide_04 .level_slide_ttl  p{
background-color: #d30000;
}
.level_slide_05 .level_slide_ttl  p{
background-color: #ff126d;
}
.level_slide_06 .level_slide_ttl  p{
background-color: #00bbf4;
}

.level_slide_txt {
font-size: 1.5rem;
font-weight: 600;
letter-spacing: 0.09em;
text-align: left;
color: #000000;
margin-top: min(.5rem, calc(5vw / 13.66));
}

.level_slide_arrow {
 width: min(16.5rem, calc(165vw / 13.66));
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
}
.level_slide_prev,.level_slide_next {
 width: min(3.4rem, calc(34vw / 13.66));
 cursor: pointer;
 transition: .4s;
}
.level_slide_next {
 transform: scale(-1,1);
}
.level_slide_arrow p {
 font-size: 3rem;
 font-weight: 600;
 letter-spacing: 0.09em;
 line-height: 1;
}
.level_slide_arrow p span {
 line-height: 1;
 display: inline-block;
}


@media (hover: hover)  and (pointer: fine){
 .level_slide_prev:where(:any-link, :enabled, summary):hover{
  transform: scale(1.1);
 }
 .level_slide_next:where(:any-link, :enabled, summary):hover {
  transform: scale(-1.1,1.1);
 }
}


@media screen and (max-width: 767px) {
 .level_inner {
 padding:6rem 0 9.5rem;
}
.level_inner::before {
 width: 22.4rem;
 height:25.4rem;
 top: 13.5rem;
 transform: none;
}
.level_inner::after {
 height:6rem;
 top:-3rem;
 background-size: cover;
}
.level_img_01 {
 width: 19.5rem;
 top: -9rem;
 left:-5.5rem;
 right: auto;
 margin: 0;
}

.level_ttl {
 width: 26.5rem;
 margin: 0 auto 2.5rem;
}
.level_txt {
 font-size: 1.4rem;
 line-height: 1.78;
}


.level_item {
 margin: 9rem auto 4rem;
 width: 15.5rem;
 height: 33rem;
 position: relative;
 perspective: 80rem;
}

.level_slide {
 border: .1rem solid #333333;
 padding: 1rem;
 border-radius: .3rem;
}
.level_slide::before {
 width: 4.4rem;
 height: 10.6rem;
 bottom:-.6rem;
 right:-2rem;
}
.level_slide_01 {
  transform: rotateY(0deg) translateZ(16rem);
}
.level_slide_02 {
  transform: rotateY(60deg) translateZ(16rem);
}
.level_slide_03{
  transform: rotateY(120deg) translateZ(16rem);
}
.level_slide_04 {
  transform: rotateY(180deg) translateZ(16rem);
}
.level_slide_05 {
  transform: rotateY(240deg) translateZ(16rem);
}
.level_slide_06 {
  transform: rotateY(300deg) translateZ(16rem);
}
.level_slide .num {
 padding-left: .4rem ;
 width:4.5rem ;
 font-size: 1rem;
 top: .5rem ;
 left: .8rem;
}


.level_slide_detail {
padding: 0 0;
margin-top: .7rem;
text-align: left;
}
.level_slide_ttl {
 font-size: 1.5rem;
 font-weight: 600;
 color: #fff;
 line-height: 1.66;
 letter-spacing: 0.09em;
 text-align: left;
 line-height: 1.7;
 background-color: #54a840;
 display: inline;
}
.level_slide_01 .level_slide_ttl  span{
 background: transparent;
 display: inline;
 line-height: 1.3;
 padding: 0;
}
.level_slide_txt {
font-size: 1rem;
margin-top:.5rem;
line-height: 1.4;
}

.level_slide_arrow {
 width:11.6rem;
}
.level_slide_prev,.level_slide_next {
 width:2.2rem;
}
.level_slide_arrow p {
 font-size: 1.5rem;
}
}



/*                       support                        */
.support_inner {
 background-color: #ffbc00;
 position: relative;
 z-index: 1;
 padding: min(9rem, calc(90vw / 13.66)) 0 0;
}
.support_inner::before {
 content: "";
 width: min(36.5rem, calc(365vw / 13.66));
 height: min(63.7rem, calc(637vw / 13.66));
 background: url(../images/common/bg_icon_02.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: 53%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -1;
}
.support_inner::after {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_orange.svg) repeat-x;
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}

.support_img_01 {
 width: min(31.8rem, calc(318vw / 13.66));
 position: absolute;
 top: max(-17rem, calc(-170vw / 13.66));
 left:0;
 right:  max(-120rem, calc(-1200vw / 13.66));
 margin: 0 auto;
 z-index: 2;
}
.support_img_02 {
 width: min(29.6rem, calc(296vw / 13.66));
 position: absolute;
 top: min(11rem, calc(110vw / 13.66));
 right: max(-124rem, calc(-1240vw / 13.66));
 left: 0;
 margin: 0 auto;
 z-index: 2;
}

.support_ttl {
 width: min(61rem, calc(610vw / 13.66));
 margin: 0 auto;
}
.support_item {
 width:  min(123rem, calc(1230vw / 13.66));
 margin:  min(7rem, calc(70vw / 13.66)) auto 0;
 display: flex;
 justify-content: space-between;
 position: relative;
 left: max(-11rem, calc(-110vw / 13.66)) ;
 right: 0;
}
.support_item_img {
 width:  min(76rem, calc(760vw / 13.66));
 position: relative;
}
.support_item_img span:first-of-type {
 display: block;
 width:  min(44.3rem, calc(443vw / 13.66));
 position: relative;
 z-index: 5;
 margin: 0 auto;
 left:  min(11rem, calc(110vw / 13.66));
 transform-origin: bottom center;
}
.support_item_img span:nth-of-type(2) {
 display: block;
 width:  min(35.4rem, calc(354vw / 13.66));
 position: absolute;
 top: min(10rem, calc(100vw / 13.66));
 left: 0;
 transform-origin: bottom left;
}
.support_item_img span:nth-of-type(3) {
 display: block;
 width:  min(29.6rem, calc(296vw / 13.66));
 position: absolute;
 top: min(7.5rem, calc(75vw / 13.66));
 right: 0;
 transform-origin: bottom right;
}

.support_item_detail {
 width:  min(42rem, calc(420vw / 13.66));
 margin-top: min(8rem, calc(80vw / 13.66));
}
.support_item_txt {
 font-size: 1.8rem;
 text-align: left;
 letter-spacing: 0.12em;
 font-weight: 600;
 margin-bottom: min(5rem, calc(50vw / 13.66));
}




@media screen and (max-width: 767px) {
 .support_inner {
 padding: 6rem 0 9.5rem;
}
.support_inner::before {
  width: 15rem;
 height:26.2rem;
 top: 10.5rem;
 transform: none;
}
.support_inner::after {
 height: 6rem;
 top: -3rem;
 background-size: cover;
}
.support_img_01 {
 width: 16rem;
 top: -7rem;
 left:auto;
 right: -4rem;
 margin: 0 ;
}

.support_ttl {
 width: 22rem;
}
.support_item {
 width:  100%;
 margin: 3.5rem auto 0;
 flex-direction: column-reverse;
 left: 0;
}
.support_item_img {
 width:  33.5rem;
 margin: 0 auto;
 position: absolute;
 left: 0;
 right: 0;
 top: 18rem;
}
.support_item_img span:first-of-type {
 width:  19.5rem;
 left: 1rem;
 top: 0;
}
.support_item_img span:nth-of-type(2) {
 width: 15.5rem;
 top: 4rem;
 left: -3rem;
}
.support_item_img span:nth-of-type(3) {
 width:  13.5rem;
top: 5rem;
 right: 0;
}

.support_item_detail {
 width:  100%;
 margin-top:0;
 position: relative;
 z-index: 5;
}
.support_item_txt {
 font-size: 1.4rem;
 text-align: center;
 line-height: 1.78;
 margin-bottom:32rem;
}
.support_item_detail .btn {
 margin: 0 auto;
}
}


/*                       news                        */
.news_inner {
 background-color: #fff;
 position: relative;
 z-index: 1;
 padding: min(12rem, calc(120vw / 13.66)) 0 min(15rem, calc(150vw / 13.66));
}
.news_inner::before {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_white.svg) repeat-x;
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.news_inner::after {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_white.svg) repeat-x;
 position: absolute;
 bottom: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}
.news_img_01 {
  width:  min(29.6rem, calc(296vw / 13.66));
  position: absolute;
  top: max(-13.6rem, calc(-136vw / 13.66));
  left: 0;
  right: max(-91rem, calc(-910vw / 13.66));
  margin: 0 auto;
}
.news_img_02 {
  width:  min(34rem, calc(340vw / 13.66));
  position: absolute;
  bottom: max(-21rem, calc(-210vw / 13.66));
  right: 0;
  left: max(-120rem, calc(-1200vw / 13.66));
  margin: 0 auto;
  z-index: 1;
}
.news_item {
  width:  min(110rem, calc(1100vw / 13.66));
  margin: 0 auto  min(6rem, calc(60vw / 13.66));
 }
 .news_ttl {
 width:  min(24.3rem, calc(243vw / 13.66));
 margin: 0 auto;
 margin-bottom: min(5rem, calc(50vw / 13.66));
}
.news_item dl {
 display: flex;
 border:  min(.1rem, calc(1vw / 13.66)) solid #333333;
 border-radius: min(.5rem, calc(5vw / 13.66));
 overflow: hidden;
 margin-bottom:  min(1.5rem, calc(15vw / 13.66));
}
.news_item dl:last-of-type {
 margin-bottom: 0;
}
.news_item dt {
 width:  min(20.6rem, calc(206vw / 13.66));
 background-color: #f47f00;
 font-size: 1.6rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 color: #fff;
 padding:  min(2.4rem, calc(24vw / 13.66)) 0;
 border-right:  min(.1rem, calc(1vw / 13.66)) solid #333333;
}
.news_item dd{
 width:  min(89.4rem, calc(894vw / 13.66));
 font-size: 1.6rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 color: #000000;
 text-align: left;
 padding: 0  min(4rem, calc(40vw / 13.66));
 box-sizing: border-box;
 display: flex;
 align-items: center;
 justify-content: flex-start;
}

.news_inner .btn {
 margin: 0 auto;
}


@media screen and (max-width: 767px) {
 .news_inner {
 padding:7rem 0 9.5rem;
}
.news_inner::before {
 height: 6rem;
 top: -3rem;
 background-size: cover;
}
.news_inner::after {
 height: 6rem;
 bottom: -3rem;
 background-size: cover;
}
.news_img_02 {
  width:  14rem;
  bottom: -7rem;
  right: auto;
  left:-3rem;
  margin: 0 ;
}
.news_item {
  width: 33.5rem;
  margin: 0 auto 4rem;
 }
 .news_ttl {
 width: 13rem;
 margin-bottom: 2.8rem;
}
.news_item dl {
 border:  .1rem solid #333333;
 border-radius: .3rem;
 margin-bottom:  1.2rem;
}
.news_item dt {
 display: flex;
 align-items: center;
 justify-content: center;
 width: 12rem;
 font-size: 1.2rem;
 padding: 0;
 border-right:  .1rem solid #333333;
}
.news_item dd{
 width: 21.5rem;
 font-size: 1.2rem;
 text-align: justify;
 padding: 1rem  1.5rem;
 line-height: 1.75;
}
}


/*                       note                        */
.note_inner {
 background: url(../images/top/note_border.svg) repeat;
 background-size: contain;
 background-size:  min(11.2rem, calc(112vw / 13.66))  min(11.3rem, calc(113vw / 13.66));
 background-color: #addb3b;
 padding: min(20rem, calc(200vw / 13.66)) 0;
}
.note_ttl {
 font-size: 6rem;
 letter-spacing: 0.09em;
 font-weight: 600;
 margin-bottom:  min(8rem, calc(80vw / 13.66))  ;
}

.note_item {
 width:  min(117rem, calc(1170vw / 13.66)) ;
 margin: 0 auto;
 position: relative;
}
.note_item:last-of-type {
 margin-top: min(16rem, calc(160vw / 13.66));
}
.note_item_img {
 width:  min(23.8rem, calc(238vw / 13.66));
 position: absolute;
 top:  max(-2.5rem, calc(-25vw / 13.66));
 right:  min(2rem, calc(20vw / 13.66));
}
.note_item:last-of-type .note_item_img  {
 width:  min(21.8rem, calc(218vw / 13.66));
 top:  min(.5rem, calc(5vw / 13.66));
 left:  max(-6rem, calc(-60vw / 13.66));
 right: auto;
}
.note_item:last-of-type .note_item_img::before {
 content: '';
 width:  min(3.2rem, calc(32vw / 13.66));
 height:  min(2.6rem, calc(26vw / 13.66));
 background: url(../images/top/note_img_02_left.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: min(10.3rem, calc(103vw / 13.66));
 left: min(8rem, calc(80vw / 13.66));
 z-index: 1;
}
.note_item:last-of-type .note_item_img::after {
 content: '';
 width:  min(3.2rem, calc(32vw / 13.66));
 height:  min(2.6rem, calc(26vw / 13.66));
 background: url(../images/top/note_img_02_right.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: min(10.7rem, calc(107vw / 13.66));
 right: max(-.5rem, calc(-5vw / 13.66));
 z-index: 1;
}
.note_item_ttl {
 display: inline-block;
 font-size: 4.2rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 position: relative;
 line-height: 1.35;
}
.note_item_ttl::before {
 content: '';
 width: 99%;
 height: 100%;
 background-color: #232323;
 position: absolute;
 top: min(.3rem, calc(3vw / 13.66)) ;
 left: min(.7rem, calc(7vw / 13.66)) ;
}
.note_item_ttl::after {
 content: '';
 width: min(2.5rem, calc(25vw / 13.66));
 height: min(1.4rem, calc(15vw / 13.66));
 background-color: #232323;
 position: absolute;
 top: 54%;
 transform: translateY(-50%);
 right: max(-2.5rem, calc(-25vw / 13.66)) ;
 clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.note_item:last-of-type .note_item_ttl::after  {
 right: auto;
 left: max(-2rem, calc(-20vw / 13.66)) ;
 clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
.note_item_ttl p {
 background-color: #fff;
 padding: 0  min(1.5rem, calc(15vw / 13.66)) ;
 border: #333333 solid  2px ;
 box-sizing: border-box;
 position: relative;
 z-index: 2;
}
.note_item_ttl p::before {
 content: '';
 width: min(2.5rem, calc(25vw / 13.66));
 height: min(1.4rem, calc(15vw / 13.66));
 background-color: #333333;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 right: max(-2.5rem, calc(-25vw / 13.66)) ;
 clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.note_item:last-of-type .note_item_ttl p::before  {
 clip-path: polygon(100% 0, 100% 100%, 0 50%);
 left: max(-2.5rem, calc(-25vw / 13.66)) ;
 right: auto;
}
.note_item_ttl p::after {
 content: '';
 width: min(2.5rem, calc(25vw / 13.66));
 height: min(1.4rem, calc(15vw / 13.66));
 background-color: #fff;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 right: max(-2rem, calc(-20vw / 13.66)) ;
 clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.note_item:last-of-type .note_item_ttl p::after  {
 clip-path: polygon(100% 0, 100% 100%, 0 50%);
 left: max(-2rem, calc(-20vw / 13.66)) ;
 right: auto;
}
.note_ite_flex {
 display: flex;
 justify-content: space-between;
 margin-top:  min(6.5rem, calc(65vw / 13.66)) ;
 position: relative;
}
.note_ite_box {
 width: min(37rem, calc(370vw / 13.66));
 box-sizing: border-box;
 border-radius:  min(.5rem, calc(5vw / 13.66));
 border:  min(.2rem, calc(2vw / 13.66)) solid #333333;
 padding:  min(2.8rem, calc(28vw / 13.66)) ;
 background-color: #fff;
 position: relative;
}
.note_ite_box::before {
 content: '';
 width:  min(4.2rem, calc(42vw / 13.66));
 height:  min(7rem, calc(70vw / 13.66));
 background: url(../images/top/note_item_icon.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-3rem, calc(-30vw / 13.66));
 left: 0;
 right: 0;
 margin: 0 auto;
}
.note_item:last-of-type .note_ite_box::before  {
  transform: scale(-1,1);
}
.note_ite_box:nth-of-type(even)::before {
 transform: scale(-1,1);
}
.note_item:last-of-type .note_ite_box:nth-of-type(even)::before {
  transform: scale(1,1);
}
.note_ite_box_img {
 border-radius:  min(.5rem, calc(5vw / 13.66));
 border:  min(.2rem, calc(2vw / 13.66)) solid #333333;
 overflow: hidden;
}
.note_ite_box_txt {
 font-size: 1.6rem;
 line-height: 1.87;
 text-align: justify;
 letter-spacing: 0.1em;
 font-weight: 600;
 margin-top:   min(2rem, calc(20vw / 13.66)) ;
}
.note_ite_box_btn {
 width:  min(16rem, calc(160vw / 13.66));
 margin:  min(2rem, calc(20vw / 13.66)) auto 0;
}
.note_ite_box_btn a {
 display: block;
 width: 100%;
 background-color: #3f3f3f;
 color: #fff;
 font-size: 1.6rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 border-radius:  min(2rem, calc(20vw / 13.66));
 border:  min(.2rem, calc(2vw / 13.66)) solid #3f3f3f;
 padding:  min(.2rem, calc(2vw / 13.66)) 0;
 box-sizing: border-box;
}


@media (hover: hover)  and (pointer: fine){
 .note_ite_box_btn a:where(:any-link, :enabled, summary):hover {
  background-color: #ffff;
  color: #3f3f3f;
 }
}


@media screen and (max-width: 767px) {
 .note_inner {
 background-size:5rem 5rem;
 padding:8rem 0 9rem;
}
.note_ttl {
 font-size: 3rem;
 margin-bottom: 3.5rem  ;
}

.note_item {
 width: 33.5rem ;
 text-align: left;
}
.note_item:last-of-type {
 margin-top: 4.5rem;
 text-align: right;

}
.note_item_img {
 width: 11.8rem;
 position: absolute;
 top:  0;
 right: -6.8rem;
}
.note_item:last-of-type .note_item_img  {
 width:10.8rem;
 top:  3rem;
 left: -3.2rem;
 right: auto;
}
.note_item:last-of-type .note_item_img::before {
 width:  1.5rem;
 height: 1.2rem;
 top: 5.3rem;
 left:4.4rem;
}
.note_item:last-of-type .note_item_img::after {
 width:  1.5rem;
 height:  1.2rem;
 top: 5.5rem;
 right: -.5rem;
}
.note_item_ttl {
 font-size: 2rem;
 letter-spacing: 0.08em;
}
.note_item_ttl::before {
 width: 100%;
 top:.15rem;
 left:.3rem;
}
.note_item_ttl::after {
 width:1.2rem;
 height:.7rem;
 right: -1.2rem;
}
.note_item:last-of-type .note_item_ttl::after  {
 right: auto;
 left:-1rem;
 transform: none;
 top: 3.9rem;
}
.note_item_ttl p {
 padding: 0  1rem ;
 border: #333333 solid  .1rem ;
 text-align: left;
}
.note_item_ttl p::before {
 width:1.2rem;
 height: .7rem;
 right: -1.2rem ;
}
.note_item:last-of-type .note_item_ttl p::before  {
 left: -1.2rem ;
 right: auto;
 transform: none;
 top: 3.7rem;
}
.note_item_ttl p::after {
 width:1.2rem;
 height: .7rem;
 right: -.9rem ;
}
.note_item:last-of-type .note_item_ttl p::after  {
 left:-.9rem;
 right: auto;
 transform: none;
 top: 3.7rem;
}
.note_ite_flex {
 flex-direction: column;
 gap: 2.5rem 0;
 margin-top:  3.5rem;
}
.note_ite_box {
 width: 100%;
 display: flex;
 align-items: center;
 justify-content: space-between;
 border-radius:  .3rem;
 border: .1rem solid #333333;
 padding:  1.2rem;
}
.note_ite_box::before {
 width: 2rem;
 height:  3.4rem;
 top:-1.3rem;
 z-index: 10;
}
.note_ite_box_img {
 width: 14.3rem;
 border-radius:  .3rem;
 border: .1rem solid #333333;
}
.note_ite_box_detail {
 width: 15.2rem;
}
.note_ite_box_txt {
 font-size: 1.2rem;
 line-height: 1.75;
 letter-spacing: 0.06em;
 margin-top:  0;
}
.note_ite_box_btn {
 width:  9rem;
 margin: 2rem auto 0;
}
.note_ite_box_btn a {
 font-size: 1rem;
 text-align: center;
 border-radius:  1.1rem;
 border:  .1rem solid #3f3f3f;
 padding:  0;
 box-sizing: border-box;
}

}


/*                       recruit                        */
.recruit_inner {
 background-color: #fff;
 position: relative;
 z-index: 1;
 padding: min(15rem, calc(150vw / 13.66)) 0 min(16rem, calc(160vw / 13.66));
}
.recruit_inner::before {
 content: "";
 width: 100%;
 height: min(12rem, calc(120vw / 13.66));
 background: url(../images/common/wave_white.svg) repeat-x;
 position: absolute;
 top: max(-6rem, calc(-60vw / 13.66));
 left: 0;
}


.recruit_flex {
 width:  min(126.5rem, calc(1265vw / 13.66));
 margin: 0 auto;
 display: flex;
 justify-content: space-between;
}
.recruit_item {
 width:  min(62.2rem, calc(622vw / 13.66));
 box-sizing: border-box;
 border:  min(.1rem, calc(1vw / 13.66)) #333333 solid;
 border-radius:  min(.5rem, calc(5vw / 13.66)) ;
 padding: min(2.5rem, calc(25vw / 13.66)) 0;
}
.recruit_item_box  {
 display: flex;
 flex-direction: column;
 justify-content: space-between;
 gap: min(1.5rem, calc(15vw / 13.66)) 0;
}
.recruit_item_box .recruit_item {
  width:  min(62.8rem, calc(628vw / 13.66));
  padding: min(1.5rem, calc(15vw / 13.66)) 0  min(2.5rem, calc(25vw / 13.66));
}
.recruit_item_ttl {
 font-size: 4.2rem;
 font-weight: 600;
 letter-spacing: 0.12em;
}
.recruit_item_txt {
  width:  min(54rem, calc(540vw / 13.66));
  margin: min(.5rem, calc(5vw / 13.66))  auto min(3rem, calc(30vw / 13.66)) ;
 font-size: 1.6rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 line-height: 1.75;
 text-align: center;
}
.recruit_item_box .recruit_item_txt  {
  width:  min(55.2rem, calc(552vw / 13.66));
  margin-bottom: min(1rem, calc(10vw / 13.66));
}
.recruit_item_btn {
  width:  min(41.4rem, calc(414vw / 13.66));
  margin: 0 auto;
}
.recruit_item_btn a{
 display: block;
  width: 100%;
  box-sizing: border-box;
  border:  min(.2rem, calc(2vw / 13.66)) solid #000000;
  border-radius:  min(3.2rem, calc(32vw / 13.66)) ;
  background-color: #000000;
  color: #fff;
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  padding:  min(1.2rem, calc(12vw / 13.66)) 0;
  position: relative;
}
.recruit_item_btn a::before {
 content: '';
 width: min(1.4rem, calc(14vw / 13.66));
 height: min(1.8rem, calc(18vw / 13.66));
 background: url(../images/common/btn_arrow.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 right:  min(2.2rem, calc(22vw / 13.66));
 transition: .4s;
}


.recruit_item_btn_flex {
 width:  min(55.2rem, calc(552vw / 13.66));
 margin: 0 auto;
 display: flex;
 justify-content: space-between;
}
.recruit_item_btn_flex  .recruit_item_btn {
  width:  min(26.4rem, calc(264vw / 13.66));
  margin: 0;
}
.recruit_item_box .recruit_item:last-of-type .recruit_item_btn {
  width:  min(55.2rem, calc(552vw / 13.66));
}
.recruit_item_detail {
 background-color: #ffeeee;
 margin: min(3rem, calc(30vw / 13.66)) auto 0;
 width:  min(57.4rem, calc(574vw / 13.66));
 display: flex;
 justify-content: center;
 gap:  0  min(5rem, calc(50vw / 13.66));
 padding: min(3rem, calc(30vw / 13.66)) 0;
}
.recruit_item_detail li {
 width: min(21.6rem, calc(216vw / 13.66));
}
.recruit_item_detail li p {
 font-size: 1.4rem;
 font-weight: 600;
 letter-spacing: 0.12em;
}
.recruit_item_detail li p span{
 font-size: 1.6rem;
 color: #ff3222;
 display: block;
}



@media (hover: hover)  and (pointer: fine){
 .recruit_item_btn a:where(:any-link, :enabled, summary):hover {
  background-color: #ffff;
  color: #000000;
 }
 .recruit_item_btn a:where(:any-link, :enabled, summary):hover::before {
  filter: brightness(1) invert(1);
 }
 .recruit_item_detail a:where(:any-link, :enabled, summary):hover{
  opacity: .7;
 }
}


.food_other {
 width: 100%;
 height:  min(24.8rem, calc(248vw / 13.66));
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: absolute;
 top:  max(-14rem, calc(-140vw / 13.66));
 left: 0;
 background: url(../images/top/other_bg.webp) repeat-x;
 background-size: cover;
 background-position: min(278rem, calc(2780vw / 13.66))   100%;
 animation:  food_other 50s linear forwards infinite;
}

@keyframes food_other {
 0% {
   background-position: min(278rem, calc(2780vw / 13.66))   100%;
 }
 100% {
    background-position: max(-278rem, calc(-2780vw / 13.66))   100%;
 }
}


@media screen and (max-width: 767px) {
 .recruit_inner {
 padding:7.5rem 0 9.5rem;
}
.recruit_inner::before {
 height: 6rem;
 top:-3rem;
 background-size: cover;
}

.recruit_flex {
 flex-direction: column;
 width: 33.5rem;
 gap: 2.5rem 0;
}
.recruit_item {
 width: 100%;
 border: .1rem #333333 solid;
 border-radius: .3rem ;
 padding: 1.5rem 0 2.5rem;
}
.recruit_item_box  {
 gap: 2.5rem 0;
}
.recruit_item_box .recruit_item {
  width: 100%;
  padding:1.5rem 0 2.5rem;
}
.recruit_item_ttl {
 font-size: 2rem;
}
.recruit_item_txt {
  width:  29rem;
  margin: 1rem  auto 2rem ;
 font-size: 1.4rem;
}
.recruit_item_box .recruit_item_txt  {
  width:  29rem;
  margin-bottom: 2rem;
}
.recruit_item_btn {
  width: 29rem;
}
.recruit_item_btn a{
  border: .1rem solid #000000;
  border-radius: 2.3rem;
  font-size: 1.4rem;
  padding: .8rem 0;
}
.recruit_item_btn a::before {
 width: .8rem;
 height: 1rem;
 right:  2rem;
}


.recruit_item_btn_flex {
 width: 29rem;
 flex-direction: column;
 gap: 1.3rem 0;
}
.recruit_item_btn_flex  .recruit_item_btn {
  width: 100%;
}
.recruit_item_box .recruit_item:last-of-type .recruit_item_btn {
  width: 29rem;
}
.recruit_item_detail {
 margin:2rem  auto 0;
 width: 29rem;
 gap:  0 1.3rem;
 padding: 1.3rem 0;
}
.recruit_item_detail li {
 width: 12.6rem;
}
.recruit_item_detail li p {
 font-size: 1rem;
 line-height: 1.4;
 margin-bottom: .5rem;
}
.recruit_item_detail li p span{
 font-size: 1.1rem;
 margin-bottom: 1rem;
}


.food_other {
 width: 41rem;
 top: -6rem;
 height:12rem;
 background-position:134.5rem   100%;
 animation:  food_other 30s linear forwards infinite;
}

@keyframes food_other {
 0% {
   background-position:134.5rem   100%;
 }
 100% {
    background-position: -134.5rem  100%;
 }
}

.food_other_img {
 width:12rem;
}
.food_other_img:nth-of-type(2) {
 width: 17.2rem;
}
.food_other_img:nth-of-type(3) {
 width: 8.5rem;
}
}


.fall_btn {
 width: min(20.7rem, calc(207vw / 13.66));
 position: absolute;
 right:  min(2rem, calc(20vw / 13.66));
 bottom: min(1.5rem, calc(15vw / 13.66));
 z-index: 1;
 transition:opacity .4s;
}
.fall_btn.scrollin {
 position: fixed;
 z-index: 99;
}
.fall_btn.hide {
 opacity: 0;
 pointer-events: none;
}


@media screen and (max-width: 767px) {
 .fall_btn {
  width: 10.7rem;
  right: 2rem;
  bottom: .5rem;
 }
}


#fall_contents {
  position: fixed;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 100;
}

.snowflake {
  position: absolute;
  top: -150px;
  animation-name: fall;
  animation-timing-function: linear;
}

@keyframes fall {
  to {
    transform: translateY(110vh);
  }
}
