@charset "utf-8";
:root {
	--c_bk:#262525;
	--c_wh:#ffffff;
	--c_gr:#67D0CC;
	--c_ye:#ffff71;
	--c_pk:#F8A8BA;
	--c_gr-tr:rgba(116, 232, 227, 0.40);
}
.clr-bk {color: var(--c_bk)!important;}
.clr-wh {color: var(--c_wh)!important;}
.clr-gr {color: var(--c_gr)!important;}
.clr-ye {color: var(--c_ye)!important;}
.clr-pk {color: var(--c_pk)!important;}
.bg-bk {background-color: var(--c_bk)!important;}
.bg-wh {background-color: var(--c_wh)!important;}
.bg-gr {background-color: var(--c_gr)!important;}
.bg-ye {background-color: var(--c_ye)!important;}
.bg-pk {background-color: var(--c_pk)!important;}

.en {
	font-family: "montserrat", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.bnr {
	position: relative;
	z-index: 10;
}
@keyframes floatIn {
  0% {
    transform: scale(0.5);
  }
  50% {
    transform: scale(1.07);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes moveRandom {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(.4rem, -.3rem);
  }
  50% {
    transform: translate(.5rem, .3rem);
  }
  75% {
    transform: translate(-.4rem, -.3rem);
  }
  100% {
    transform: translate(0, 0);
  }
}

/*lorder
---------------------------------------------------------*/
.loader-bg {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	opacity: 1;
	visibility: visible;
	transition: opacity .6s ease 1.2s, visibility .6s ease 1.2s;
}
body.onload .loader-bg {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
.loadBox {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.loadBox .logo img {
	max-height: 5.55rem;
}
.loadBox .img {
  width: 22rem;
	display: grid;
	grid-template-columns: repeat(5,1fr);
	gap: 1rem;
}
.img li {
  opacity: 0;
  transform: scale(0.9);
  animation: tabletPop 1.8s infinite;
  animation-fill-mode: both;
}
.img li:nth-child(1) {
  animation-delay: 0s;
}
.img li:nth-child(2) {
  animation-delay: 0.15s;
}
.img li:nth-child(3) {
  animation-delay: 0.3s;
}
.img li:nth-child(4) {
  animation-delay: 0.45s;
}
.img li:nth-child(5) {
  animation-delay: 0.6s;
}
@keyframes tabletPop {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  10% {
    opacity: 1;
    transform: scale(1);
  }
  45% {
    opacity: 1;
    transform: scale(1);
  }
  60%,
  100% {
    opacity: 0;
    transform: scale(0.9);
  }
}



/*mv
---------------------------------------------------------*/
.mv {
	font-size: .5208333vw;
	background: url(../img/mv_bg.jpg) bottom left no-repeat;
	background-size: cover;
	height: clamp(95rem,69.375vw,120rem);
	padding-top: 12.5rem;
	overflow: hidden;
	max-width: 250rem;
	margin: 0 auto;
}
.mv .box {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 4rem;
	max-width: 140rem;
}
.mv .img01,
.mv .img02,
.mv h1 {
	opacity: 0;
	transform: translateY(1.2rem);
	transition: 1.2s 1.2s;
}
.mv.act .img01,
.mv.act .img02,
.mv.act h1 {
	opacity: 1;
	transform: translateY(0);
}
.mv .img01 {
	order: -1;
	width: 33.27%;
	transition-delay: 1s;
}
.mv .img02 {
	width: 33.136%;
	position: relative;
	z-index: 10;
	transition-delay: .8s;
}
.mv .img02 .ttl {
	max-width: 27.8rem;
	margin-left: -3rem;
}
.mv h1 {
	font-size: 100%;
	width: 33.727%;
}
.mv .tablet li._01 {
	max-width: 14rem;
	top: auto;
	right: -4rem;
	transform: rotate(114deg);
	bottom: 12rem;
}
.mv .tablet li._02 {
	max-width: 24rem;
	left: -13rem;
	bottom: -7rem;
	transform: rotate(79deg);
}
.mv .tablet li._03 {
	max-width: 15rem;
	right: auto;top: -7rem;
	left: -11rem;
	transform: rotate(-55deg);
}



/*contents
---------------------------------------------------------*/
#concept {
	background: url(../img/concept_bg.png) right center no-repeat;
	background-size: 25% auto;
	padding-bottom: 0;
}
.concept {
	display: grid;
	grid-template-columns: 61rem 1fr;
	gap: 7rem;
	text-align: left;
}
.concept h2 {
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	margin-bottom: 6rem;
}
.concept h3 {
	font-size: 2.4rem;
	font-weight: 600;
	margin-bottom: 2.5rem;
}
.c-bg_wave {
	position: relative;
	padding: 30rem 0 26.8rem;
}
.c-bg_wave::before {
	content: "";
	display: block;
	z-index: -50;
	background: url(../img/wave_top.svg) top -1px left no-repeat,url(../img/wave_btm.svg) bottom -1px left no-repeat;
	background-size: 100% 26.8rem;
	background-color: var(--c_gr-tr);
	position: absolute;
	inset: 0;
}
.tp {
	display: grid;
	grid-template-columns: 41.7rem 1fr;
	align-items: center;
	gap: 5rem;
}
.tp_img {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 8.5rem
}
.tp_img img[src*="01"] {
	max-height: 21.1rem;
}
.tp_img img[src*="02"] {
	max-height: 20.7rem;
}
.tp_img figcaption {
	color: var(--c_gr);
	margin-top: 2rem;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.tp_img figcaption strong {
	font-size: 160%;
	font-weight: 600;
	margin: 0 .5rem;
}
.c-sub {
	display: block;
	width: fit-content;
	background: var(--c_ye);
	text-align: center;
	color: var(--c_gr);
	font-weight: 600;
	font-size: 2.8rem;
	border-radius: 10rem;
	padding: 1.2rem 4.5rem;
	position: relative;
	margin: 0 auto 2rem;
	z-index: 1;
	box-shadow: .7rem .7rem .2rem rgba(0,0,0,0.02);
}
.c-sub::after {
	content: "";
	display: block;
	background: var(--c_ye);
	position: absolute;
	left: 0;
	right: 0;
	top: 99.9%;
	margin: 0 auto;
	width: 2.5rem;
	clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
	aspect-ratio: 5/3;
	box-shadow: .7rem .7rem .2rem rgba(0,0,0,0.02);
}
.tp_img .c-sub {
	margin: 0 -4.5rem 4.5rem;
}
.tp_img figure {
	position: relative;
}
.tp_img figure:first-of-type:after {
	content: "=";
	display: block;
	width: 3rem;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana;
	font-size: 5rem;
	font-weight: 600;
	line-height: 1;
	color: var(--c_gr);
	position: absolute;
	bottom: 15rem;
	right: -5.75rem;
}
.tablet li {
	position: absolute;
	z-index: 1;
}
.tablet li._01 {
	max-width: 18rem;
	top: -10rem;
	right: -20rem;
}
.tablet li._02 {
	max-width: 24rem;
	left: -25rem;
	bottom: -20rem;
}
.tablet li._03 {
	max-width: 18.5rem;
	right: 40%;
	top: -20rem;
}
.tablet li img {
	transition: 1s .8s;
	opacity: 0;
}
.tablet li.act img {
	opacity: 1;
	animation: floatIn 3s ease forwards, moveRandom 5.5s ease-in-out infinite;
}
#story {
	background: url(../img/story_bg.png) top center no-repeat;
	background-size: 100% auto;
	z-index: 5;
	margin-top: -3rem;
	padding: 20rem 0 0;
}
.storyLead {
	position: relative;
	text-align: left;
	margin-bottom: 5rem;
}
.storyLead figure {
	position: absolute;
	top: -10rem;
	right: 0;
	max-width: 31.65rem;
}
.storyLead h2 {
	font-size: 6.4rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 2rem;
}
.story li + li {
	margin-top: 10rem;
}
.story li {
	display: flex;
	align-items: center;
	gap: 3rem 13rem;
	padding-left: 6.5rem;
}
.story li:nth-of-type(even) {
	flex-direction: row-reverse;
	padding-inline: 0 6.5rem;
}
.story li .img {
	width: 42.6rem;
	position: relative;
}
.story li .img figure:nth-of-type(2) {
	position: absolute;
	z-index: 1;
	max-width: 11.5rem;
	left: -6rem;
	bottom: -6rem;
}
.story li:nth-of-type(even) .img figure:nth-of-type(2) {
	left: auto;
	right: -6rem;
	max-width: 16.35rem;
}
.story dl {
	flex: 1;
	text-align: left;
}
.story dt {
	display: flex;
	align-items: center;
	gap: 3.5rem;
	margin-bottom: 3rem;
}
.story dt .num {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: .1em;
	white-space: nowrap;
	line-height: 1;
	text-align: center;
	color: var(--c_gr);
}
.story dt .num strong {
	display: block;
	font-size: 300%;
	font-weight: 500;
}
.story dt h3 {
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
}
.story dt h3 span {
	display: block;
	font-size: 133%;
}
.btmImg {
	margin-top: 15rem;
}
#about01 {
	background: url(../img/about_bg02.png) left bottom no-repeat,url(../img/about_bg03.png) right bottom 3rem no-repeat;
	background-color: #FCDFE8;
	background-size: 22% auto,22% auto;
	position: relative;
	padding: 0;
	margin-top: -10rem;
}
#about01::before {
	content: "";
	display: block;
	background: url(../img/wave_top.svg) top left no-repeat;
	background-size: 100% 100%;
	height: 26.8rem;
	z-index: 1;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}
#about01 .container {
	position: relative;
}
.about01 {
	max-width: 91.4rem;
	margin: 0 auto;
}
.about01 h2 {
	max-width: 49.4rem;
	margin: 2rem auto 0;
}
.about01Txt li {
	position: absolute;
	top: 28rem;
	left: 0;
	background: url(../img/baloon.svg) center center no-repeat;
	background-size: contain;
	font-size: 2.4rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	aspect-ratio: 417/357;
	width: 33rem;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: .8s .8s;
}
.about01Txt li:nth-of-type(2) {
	top: 30rem;
	right: 0;
	left: auto;
}
.about01Txt li.act {
	opacity: 1;
	animation: floatIn 3s ease forwards, moveRandom 5.5s ease-in-out infinite;
}
#about02 {
	z-index: 1;
	padding: 22rem 0 5rem;
}
#about02::before {
	background: url(../img/about02_bg01.png) bottom 10rem left,url(../img/about02_bg02.png) top 4rem right,url(../img/wave_btm.svg) left bottom -1px;
	background-size: 18% auto,25% auto,100% auto;
	background-color: #9DF1ED;
	background-repeat: no-repeat;
	z-index: -5;
}
#about02::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: url(../img/wave_top_pk.svg) top left no-repeat;
	background-size: 100% 100%;
	height: 22rem;
	z-index: -1;
}
.about02 {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	position: relative;
	z-index: 5;
}
.about02 .box {
	max-width: 43.2rem;
}
.about02 .box p {
	max-width: 30.2rem;
	margin: 2rem auto 0;
}
.c-btn {
	margin: 8rem auto 0;
	max-width: 62rem;
}
.c-btn a {
	display: block;
	width: 100%;
	background: var(--c_ye);
	color: var(--c_gr);
	border-radius: 10rem;
	text-align: center;
	padding: 4.5rem 2rem;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	transition: .4s;
}
.c-btn a span::after {
	content: "";
}
.c-btn a .en {
	font-size: 4rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 0.5rem;
}
.c-btn a:hover {
	transform: translateY(-1rem);
	box-shadow: 0 1rem 0 rgba(0, 0, 0, 0.10);
}
#about02 .tablet li._01 {
	max-width: 15rem;
	top: auto;
	bottom: 13rem;
	right: -15rem;
	transform: rotate(30deg)
}
#about02 .tablet li._02 {
	max-width: 18rem;
	left: -20rem;
	bottom: auto;
	top: 8rem;
}
#about02 .tablet li._03 {
	max-width: 15rem;
	right: -15rem;
	top: -15rem;
}
.point {
	position: relative;
	text-align: center;
	padding-top: 18rem;
}
.c-ttl_rl {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	letter-spacing: 0.15em;
	gap: 2rem;
}
.c-ttl_rl h2 {
	font-size: 3.2rem;
	letter-spacing: 0.25em;
}
.c-ttl_rl .en {
	color: var(--c_gr);
	font-size: 6.4rem;
	font-weight: 600;
}
#point {
	background: url(../img/point_bg.jpg) top left no-repeat;
	background-size: 100% 100%;
	padding-bottom: 30rem;
}
.point .c-ttl_rl {
	position: absolute;
	top: 0;
	right: 0;
}
.pointLead {
	position: absolute;
	left: 0;
	top: -2rem;
	max-width: 25.1rem;
}
.pointWrap {
	display: flex;
	align-items: center;
	gap: 5rem;
	margin-bottom: 10rem;
}
.c-cont {
	flex: 1;
	text-align: left;
}
.c-cont h3 {
	color: var(--c_gr);
	margin-bottom: 2rem;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	font-weight: 600;
}
.c-cont .txt {
	line-height: 2.2;
}
.pointWrap .c-cont {
	flex: 1;
	max-width: 33rem;
}
.point01Img {
	position: relative;
	padding: 0 7rem 5.5rem 0;
}
.point01Img ._02 {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
.pointWrap._01 {
	flex-direction: row-reverse;
	padding-right: 18.5rem;
}
.pointWrap._01 figure {
	width: 52.9rem;
}
.pointWrap._02 figure {
	width: 50.5rem;
}
.pointWrap._03 figure,
.pointWrap._04 figure {
	width: 17rem;
}
.pointWrap._03,
.pointWrap._04 {
	gap: 3rem;
}
.pointWrap._04 {
	width: fit-content;
	margin-left: auto;
	margin-top: -13rem;
}
#point .tablet li._01 {
	bottom: 20rem;
	left: 5rem;
	top: auto;
	right: auto;
	max-width: 20rem;
}
#detail {
	margin-top: -25rem;
	z-index: 1;
	padding-bottom: 2rem;
}
#detail::after {
	content: "";
	display: block;
	position: absolute;
	top: 22rem;
	right: 0;
	left: 0;
	bottom: 0;
	background: url(../img/wave_btm.svg) left bottom no-repeat;
	background-size: 100% 26.8rem;
	background-color: rgba(114,228,223,.4);
	z-index: -1;
}
#detail::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: url(../img/wave_top_gr_2.svg) top left no-repeat;
	background-size: 100% 100%;
	opacity: .4;
	height: 22rem;
	z-index: -1;
}
.detail {
	display: grid;
	grid-template-columns: 52.6rem 1fr;
	gap: 5.5rem;
	align-items: center;
}
.detail > figure {
	position: relative;
	z-index: 1;
}
.detail > figure::before {
	content: "";
	display: block;
	background: url(../img/baloon_gr.svg) center center no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
	width: 52.7rem;
	aspect-ratio: 527/444;
}
.detail > figure img {
	max-height: 35.6rem;
}
.detail dl {
	position: relative;
	flex: 1;
	text-align: left;
	position: relative;
}
.detail dt figure {
	position: absolute;
	top: -10rem;
	right: -10rem;
	max-width: 25.4rem;
}
.detail dt h2 {
	font-size: 3.2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 3rem;
}
.detail dt li {
	display: flex;
	align-items: center;
	gap: 2rem;
	font-size: 2rem;
}
.detail dt li::before {
	content: "";
	display: block;
	background: url(../img/icon_check.svg) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1;
	width: 2.7rem;
}
.detail dt li + li {
	margin-top: 1.5rem;
}
.detail dd {
	margin-top: 4rem;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 3rem;
	text-align: center;
}
.detailCont {
	border-radius: 6rem;
	border: 1px solid #C4EBE9;
	background: rgba(255, 255, 255, 0.50);
	backdrop-filter: blur(1rem);
	padding: 4rem 8rem;
	text-align: left;
	font-size: 1.4rem;
	line-height: 2;
	margin-top: 6rem;
}
.detailCont h2 {
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 2rem;
}
.detailCont .box {
	display: grid;
	grid-template-columns: repeat(2,1fr);
}
.detailCont dl + dl {
	border-left: 1px solid var(--c_gr);
	padding-left: 3rem;
	margin-left: 3rem;
}
.detailCont dt {
	color: var(--c_gr);
}
.detailCont dd + dt {
	margin-top: 2rem;
}
.detailCont dd small {
	font-size: 90%;
}
#detail .tablet li._01 {
	transform: rotate(25deg);
	top: -17rem;
	right: -28rem;
}
#detail .tablet li._02 {
	transform: rotate(150deg);
	bottom: 45%;
	max-width: 15rem;
	left: -8rem;
}
.detailBtm .video {
	max-width: 96.4rem;
	margin: 12rem auto 8rem;
	border-radius: 6rem;
	overflow: hidden;
}
#passinon {
	padding-top: 20rem;
	background: url(../img/passion_bg01.png) top right no-repeat,url(../img/passion_bg02.png) top 25% left no-repeat,url(../img/passion_bg03.png) bottom right no-repeat;
	background-size: 58.2rem auto,69rem auto,42rem auto;
}
.passionLead {
	position: relative;
	padding-left: 38rem;
	padding-top: 10rem;
	margin-bottom: 10rem;
}
.passionLead .c-ttl_rl {
	position: absolute;
	left: 0;
	top: 0;
}
.president {
	position: relative;
}
.president figure {
	max-width: 63.7rem;
}
.president .tablet li._01 {
	max-width: 12rem;
	right: auto;
	left: 2rem;
	top: -4rem;
	transform: rotate(25deg);
}
.president .tablet li._02 {
	max-width: 20rem;
	right: 3rem;
	left: auto;
	bottom: 0;
	transform: rotate(-23deg);
}
.president .box {
	position: absolute;
	left: -5rem;
	bottom: 5rem;
	z-index: 1;
	font-size: 1.2rem;
	text-align: left;
}
.president .box span {
	display: inline-block;
	line-height: 1;
	background: var(--c_gr);
	padding: .4rem .5rem;
	color: var(--c_wh);
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.president .box small {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
}
.president .box h3 {
	font-size: 2rem;
	font-weight: 500;
}
.passion {
	display: grid;
	grid-template-columns: 43.1rem 1fr;
	gap: 8rem;
	margin-bottom: 8rem;
	position: relative;
}
.passion .tablet {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: -1;
}
.passion .tablet li._01 {
	right: auto;
	left: 6rem;
	bottom: -2rem;
	top: auto;
	transform: rotate(-115deg);
}
.baloonTxt {
	position: relative;
	z-index: 5;
	width: fit-content;
	margin: -3.9rem auto 1rem;
}
.baloonTxt .txt {
	font-size: 3.2rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-align: center;
	margin-top: 3rem;
}
.campfire {
	display: grid;
	grid-template-columns: 50.5rem 1fr;
	justify-content: space-between;
	gap: 3rem;
	margin-bottom: 7rem;
}
.campfire h2 {
	font-size: 2rem;
	margin-bottom: 3rem;
}
.campfire h2 img {
	max-height: 5.2rem;
	margin-bottom: 0.5rem;
}
.campfire h3 {
	font-size: 2.4rem;
	font-weight: 600;
	letter-spacing: 0.13em;
	width: fit-content;
	margin: 0 auto;
}
.c-btn._gr a {
	background-color: #72E4DF;
	color: #fff;
}
.c-btn._sm {
	margin-top: 5rem;
}
.c-btn._sm a {
	padding: 3rem;
	font-size: 1.8rem;
	max-width: 44rem;
	margin: 0 auto;
}
.c-btn._sm a .en {
	font-size: 3.2rem;
}
.set {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 3.5rem
}
.set li {
	position: relative;
	border-radius: 6rem;
	border: 1px solid #C4EBE9;
	background: rgba(255, 255, 255, 0.50);
	backdrop-filter: blur(1rem);
	padding: 6rem 5rem 4rem;
}
.set li .c-sub {
	font-size: 2rem;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: -2.8rem;
}
.set dt {
	display: flex;
	align-items: center;
	justify-content: center;
}
.set dt figure {
	max-width: 10rem;
	position: relative;
	margin-right: -2rem;
}
.set dt .pcs {
	background: var(--c_gr);
	color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	aspect-ratio: 1;
	width: 15rem;
	font-size: 2rem;
}
.set dt .pcs .en {
	font-size: 200%;
	font-weight: 600;
	line-height: .8;
	margin-left: 0.1em;
}
.set dd {
	letter-spacing: 0.1em;
	margin-top: 1.5rem;
}
.set dd h3 {
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.set dd p {
	font-size: 2rem;
	font-weight: 600;
}
.set dd p .en {
	font-size: 200%;
	font-weight: 600;
	line-height: 0.8;
}
.set dd p small {
	font-weight: 400;
	font-size: 1.2rem;
	letter-spacing: normal;
}
#campfire {
	padding: 25rem 0 0;
}
#campfire::before {
	bottom: 20rem;
}
#campfire .tablet li._01 {
	max-width: 18rem;
	top: -20rem;
	right: -20rem;
	transform: rotate(60deg);
}
#campfire .tablet li._02 {
	max-width: 20rem;
	left: -10rem;
	bottom: auto;
	top: -16rem;
	transform: rotate(-40deg);
}
#send {
	background: url(../img/send_bg.png) left bottom no-repeat;
	background-size: 25% auto;
	padding: 15rem 0 0;
}
.send {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	gap: 11rem;
}
.send figure {
	width: 50.9rem;
}
#product {
	z-index: 1;
	padding-bottom: 30rem;
}
#product .bg {
	position: absolute;
	left: -20rem;
	bottom: 0;
	z-index: -1;
}
#product::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 32rem;
	background: url(../img/wave_top.svg) left top no-repeat;
	background-size: 100% 26.8rem;
	background-color: rgba(114,228,223,.4);
	z-index: -10;
}
#product::before {
	content: "";
	display: block;
	position: absolute;
	top: auto;
	bottom: 10rem;
	left: 0;
	right: 0;
	background: url(../img/wave_btm_gr_2.svg) bottom left no-repeat;
	background-size: 100% 100%;
	opacity: .4;
	height: 22rem;
	z-index: -10;
}
.product {
	display: grid;
	grid-template-columns: 52.5rem 1fr;
	align-items: flex-start;
	position: relative;
	z-index: 5;
}
.product .img {
	padding-right: 19.5rem;
	padding-bottom: 17.5rem;
	position: relative;
}
.product .img p {
	max-width: 25rem;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.product .box h2 {
	font-size: 6.4rem;
	font-weight: 600;
	letter-spacing: 0.07em;
	margin-bottom: 5rem;
	color: var(--c_gr);
	line-height: 1;
	text-align: left;
}
#product .tablet li._01 {
	max-width: 18rem;
	top: -15rem;
	right: -20rem;
	transform: rotate(-65deg);
}
#product .tablet li._02 {
	max-width: 18rem;
	left: -27rem;
	bottom: auto;
	top: 5rem;
	transform: rotate(60deg);
}
#product .tablet li._03 {
	max-width: 17rem;
	right: -18rem;
	top: auto;
	bottom: 9rem;
	transform: rotate(155deg);
}
.c-bg_wave._ye::before {
	background-color: var(--c_ye);
	bottom: 0;
}
.ambLeadArea {
	background: url(../img/ambassador_bg01.svg) top center no-repeat;
	background-size: 134rem auto;
	padding-bottom: 10rem;
}
.ambLead {
	display: grid;
	grid-template-columns: 56.1rem 1fr;
	gap: 7rem;
	justify-content: space-between;
	align-items: flex-start;
}
.ambLead .box {
	padding-top: 8rem;
}
.ambLead h2 {
	font-size: 3.2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 3rem;
}
.ambLead h2  small {
	font-size: 75%;
}
.ambLead h3 {
	font-size: 4.2rem;
	letter-spacing: 0.1em;
	font-weight: 600;
}
.ambLead h3 small {
	font-size: 60%;
}
.ambLead .tablet li._01 {
	max-width: 18rem;
	top: auto;
	right: -13rem;
	transform: rotate(-225deg);
	bottom: 8rem;
}
.ambLead .tablet li._02 {
	max-width: 22rem;
	left: -22rem;
	bottom: -4rem;
	transform: rotate(64deg);
}
.ambLead .tablet li._03 {
	max-width: 18.5rem;
	right: -12rem;
	top: -20rem;
}
.ambContArea {
	position: relative;
	background: url(../img/ambassador_bg02.svg) top center no-repeat,url(../img/ambassador_bg03.png) right bottom no-repeat;
	background-size: 132.2rem auto,20.6rem auto;
	padding-bottom: 20rem;
}
.ambContArea .container {
	position: relative;
}
.ambContLead h2 {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2rem 3rem;
	margin-bottom: 3rem;
}
.ambContLead h2 img {
	max-height: 4.6rem;
}
.ambContLead h2 img[src*="/logo.png"] {
	max-height: 5.5rem;
}
.ambContLead h3 {
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 2rem;
}
.ambContLead .box {
	display: grid;
	grid-template-columns: 27.9rem 1fr;
	align-items: center;
	justify-content: center;
	gap: 4rem;
}
.ambContLead .txt-lh {
	text-align: left;
	letter-spacing: 0.05em;
}
.btn {
	margin: 5rem auto 0;
	max-width: 60rem;
}
.btn a {
	display: block;
	border-radius: 10rem;
	background: var(--c_gr);
	color: var(--c_ye);
	letter-spacing: 0.1em;
	padding: 3rem 2rem;
	font-size: 1.8rem;
	font-weight: 600;
}
.btn a:hover {
	transform: translateY(-1rem);
	box-shadow: 0 1rem 0 rgba(0, 0, 0, 0.10);
}
.chara figure {
	position: absolute;
	z-index: 1;
}
.chara figure:nth-of-type(1) {
	max-width: 9.7rem;
	top: -5rem;
	left: 0;
}
.chara figure:nth-of-type(2) {
	max-width: 8.6rem;
	top: -5rem;
	right: 0;
}
.chara figure:nth-of-type(3) {
	max-width: 10.8rem;
	right: 5rem;
	top: 15rem;
}
.chara figure:nth-of-type(4) {
	max-width: 12.2rem;
	bottom: -5rem;
	left: 0;
}
.chara figure:nth-of-type(5) {
	max-width: 11.3rem;
	bottom: -3rem;
	right: 0;
}
.ambBtm {
	display: grid;
	grid-template-columns: 29.4rem 1fr;
	align-items: center;
	justify-content: center;
	gap: 8rem;
}
.ambBtm figure {
	position: relative;
}
.ambBtm figure::before {
	content: "";
	display: block;
	background: url(../img/ambassador_bg04.png) right top no-repeat;
	background-size: contain;
	width: 81.3rem;
	aspect-ratio: 813/463;
	position: absolute;
	top: -9rem;
	right: -10rem;
	z-index: -1;
}
.ambBtm h2 {
	display: flex;
	align-items: center;
	font-size: 2.8rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	gap: 1em;
	margin-bottom: 5rem;
}
.ambBtm h2 small {
	font-size: 1.6rem;
	letter-spacing: normal;
	font-weight: 400;
}
.ambBtm ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5rem;
}
.ambBtm li img {
	max-height: 8rem;
}
.c-bg_wave._pk::before {
	content: "";
	display: block;
	z-index: -50;
	background: url(../img/wave_top.svg) top -1px left no-repeat, url(../img/wave_btm.svg) bottom -1px left no-repeat,url(../img/yt_bg01.png) top 5rem right no-repeat,url(../img/yt_bg02.png) bottom 5rem left no-repeat;
	background-size: 100% 26.8rem,100% 26.8rem,38.2rem auto,24.1rem auto;
	background-color: #fff6f9;
	bottom: 0;
}
.channel h2 {
	font-size: 1.6rem;
	font-weight: 400;
	margin-bottom: 3rem;
}
.channel .logo img {
	max-height: 5.55rem;
	margin-bottom: -1rem;
}
.channel h3 {
	font-size: 3.2rem;
	font-weight: 600;
	margin-bottom: 4rem;
}
.channel .img {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding-bottom: 8rem;
}
.channel .img p {
	width: 44rem;
}
.channel .img p:nth-of-type(2) {
	margin: 0 0 -8rem -4rem;
	position: relative;
	z-index: 1;
}
.c-btn._pk a {
	color: var(--c_pk);
}
#channel .tablet li {
	opacity: .7;
}
#channel .tablet li._01 {
	max-width: 15rem;
	top: -15rem;
	right: 0rem;
	transform: rotate(134deg);
}
#channel .tablet li._02 {
	max-width: 20rem;
	left: auto;
	top: auto;
	bottom: 30rem;
	right: -15rem;
	transform: rotate(55deg);
}
#channel .tablet li._03 {
	max-width: 18rem;
	right: auto;
	top: 13rem;
	transform: rotate(-65deg);
	left: -10rem;
}
#channel {
	padding-bottom: 0;
}
.c-bg_wave._gr::before {
	background-color: #06C755;
	bottom: 12rem;
}
.line {
	display: flex;
	align-items: flex-start;
	flex-direction: row-reverse;
	gap: 1rem;
}
.line .img {
	width: 70.9rem;
}
.line .box {
	flex: 1;
	text-align: left;
	color: #fff;
}
.line .box h3 {
	font-size: 1.6rem;
	color: var(--c_bk);
	text-align: center;
	border-radius: 1rem;
	background: var(--c_wh);
	padding: .5rem;
	font-weight: 600;
	margin: 1rem 0 2rem;
}
.addBtn {
	max-width: 62rem;
	margin: 2rem auto 0;
}
.addBtn a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 1rem;
	border-radius: 10rem;
	background: #FFFF4D;
	padding: 3rem;
	font-size: 1.4rem;
	font-weight: 500;
	position: relative;
}
.addBtn a:hover {
	transform: translateY(-1rem);
	box-shadow: 0 1rem 0 rgba(0, 0, 0, 0.10);
}
.addBtn a .txt {
	font-size: 2.4rem;
	color: #06C755;
	font-weight: 600;
}
.addBtn a .logo img {
	display: block;
	max-height: 4.3rem;
	margin: 0 auto -1rem;
}
.addBtn a figure {
	position: absolute;
	left: 5rem;
	top: 50%;
	transform: translateY(-50%);
	max-width: 7rem;
}
.addBtn a figure:nth-of-type(2) {
	left: auto;
	right: 5rem;
	max-width: 8rem;
	transform: translateY(-50%) rotate(-15deg);
}
#line {
	padding-bottom: 15rem;
}


/*footer
---------------------------------------------------------*/
#footer {
	padding-bottom: 5rem;
	position: relative;
}
.footer .logo img {
	max-height: 5.55rem;
}
.fCont {
	margin: 2rem 0 4rem;
}
.fCont .c-sub {
	font-size: 1.6rem;
	color: var(--c_bk);
	font-weight: 400;
	margin-bottom: 3rem;
}
.fCont ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 3rem;
}
.fCont li img {
	max-height: 4rem;
}
.gotop {
	position: absolute;
	right: 2rem;
	bottom: 2rem;
	width: 6.1rem;
	z-index: 1;
}
.fix {
	width: 27.8rem;
	position: fixed;
	right: 2rem;
	bottom: 2rem;
	z-index: 99;
	filter: drop-shadow(.5rem .5rem .7rem rgba(0, 0, 0, 0.10));
	transition: .4s;
}
.fix.act {
	filter: drop-shadow(.5rem .5rem .5rem rgba(0, 0, 0, 0.10));
	bottom: 10rem;
}



/*ieハック*/
@media screen\0  {
}

/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/
@media screen and (max-width: 1250px) {
	html {
		font-size: .8vw;
	}
}

/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 780px) {
/*全体レイアウト
---------------------------------------------------------*/
	html {
		font-size: 2.7777777vw;
	}
	body {
		font-size: 1.4rem;
		line-height: 1.5
	}
	body.active {
		overflow: hidden;
	}
	article > section {
		padding: 4rem 0;
	}
	.txt-lh,
	.c-cont .txt {
		line-height: 2;
	}
	.fix {
		width: 90%;
		left: 0;
		right: 0;
		bottom: 1rem;
		margin: 0 auto;
		filter: drop-shadow(.5rem .5rem .5rem rgba(0, 0, 0, 0.10));
	}

	/*mv
	-------------------------------------------------------*/
	.mv {
		background-image: url(../img/mv_bg_sp.jpg);
		height: 64.6rem;
		padding-top: 3rem;
	}
	.mv .box {
		display: block;
	}
	.mv h1 {
		width: 18rem;
		margin: 0 auto 2rem;
	}
	.mv .img01 {
		position: absolute;
		bottom: 0;
		left: 1rem;
		width: 14rem;
	}
	.mv .img02 {
		margin-left: auto;
		margin-right: -1rem;
		width: 100%;
		display: flex;
		align-items: flex-start;
		position: relative;
	}
	.mv .img02 .ttl {
		position: absolute;
		top: 0;
		left: -1rem;
    max-width: 16rem;
    margin-left: 0;
	}
	.mv .img02 .img {
		width: 60%;
		margin-left: auto;
	}
	.mv .tablet li._01 {
		max-width: 7rem;
		right: -3rem;
		bottom: 27rem;
	}
	.mv .tablet li._02 {
		max-width: 9rem;
		left: -3rem;
		bottom: -7rem;
	}
	.mv .tablet li._03 {
		max-width: 8rem;
		top: 5rem;
		left: -3rem;
	}

	/*contents
	-------------------------------------------------------*/
	#concept {
		background-size: 35% auto;
	}
	.concept {
		display: block;
	}
	.concept figure {
		padding-right: 2rem;
	}
	.concept dl {
		margin-top: 3rem;
	}
	.concept h2 {
		margin-bottom: 2rem;
	}
	.concept h3 {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
	.c-bg_wave {
		padding: 12rem 0 10rem;
	}
	.c-bg_wave::before {
		background-size: 125% 8rem;
	}
	.tp {
		display: block;
	}
	.tp dt {
		max-width: 22rem;
		margin: 0 auto 3rem;
	}
	.tp_img {
		gap: 6rem;
	}
	.tp_img img[src*="01"] {
		max-height: 8rem;
	}
	.tp_img img[src*="02"] {
		max-height: 8rem;
	}
	.c-sub {
		font-size: 1.4rem;
		padding: 1.2rem 1.5rem;
	}
	.tp_img .c-sub {
		margin: 0 -2rem 2rem;
	}
	.tp_img figcaption {
		font-size: 1.6rem;
	}
	.tp_img figure:first-of-type:after {
		width: 3rem;
		bottom: 7rem;
		right: -4.75rem;
	}
	.tablet li._01 {
		max-width: 8rem;
		top: 6rem;
		right: -2rem;
	}
	.tablet li._02 {
		max-width: 8rem;
		left: -1rem;
		bottom: 17rem;
	}
	.tablet li._03 {
		max-width: 9rem;
		right: 22rem;
		top: -9rem;
	}
	#story {
		margin-top: -5rem;
		background-size: 185% auto;
		background-repeat: repeat-y;
	}
	.storyLead figure {
		width: 20rem;
	}
	.storyLead h2 {
		font-size: 4rem;
		margin-bottom: 3rem;
	}
	.story li {
		display: block;
		padding: 0;
	}
	.story li:nth-of-type(even) {
		padding: 0;
	}
	.story li + li {
		margin-top: 6rem;
	}
	.story li .img {
		width: 100%;
		margin-bottom: 2rem;
		padding-right: 5rem;
	}
	.story li .img figure:nth-of-type(2) {
    max-width: 7rem;
    left: auto;
		right: -1rem;
    bottom: -3rem;
	}
	.story li:nth-of-type(even) .img figure:nth-of-type(2) {
    left: auto;
    right: -1rem;
    max-width: 12rem;
    bottom: -2rem;
	}
	.story dt {
		margin-bottom: 1rem;
		gap: 2rem;
	}
	.story dt .num {
		font-size: 1.6rem;
	}
	.btmImg {
		margin-top: 8rem;
	}
	#about01 {
		margin-top: -5rem;
		background-size: 45% auto;
		background-position: left bottom 13rem,right bottom;
	}
	#about01::before {
		height: 8rem;
		background-size: 125% 100%;
	}
	.about01 h2 {
		max-width: 23rem;
		margin: 10rem auto 0;
	}
	.about01 figure {
		max-width: 30rem;
		margin: 0 auto;
	}
	.about01Txt li {
		font-size: 1.4rem;
		width: 15.5rem;
		top: 17rem;
		left: -1rem;
		padding-top: 1rem;
	}
	.about01Txt li:nth-of-type(2) {
		top: 15rem;
		left: auto;
		right: -2rem;
	}
	#about02 {
		padding: 10rem 0 3rem;
	}
	#about02::after {
		height: 8rem;
		background-size: 125% 100%;
	}
	.about02 {
		align-items: center;
	}
	.about02 .img {
		width: 49%;
	}
	.about02 .box {
		width: 51%;
	}
	.c-btn {
		margin-top: 3rem;
	}
	.c-btn a .en {
		font-size: 2.8rem;
	}
	.c-btn a {
		font-size: 1.4rem;
		padding: 1.7rem;
	}
	.about02 .box p {
		margin-top: 1rem;
	}
	#about02::before {
    background-size: 37% auto, 45% auto, 125% 8rem;
	}
	#about02 .tablet li._01 {
		max-width: 6rem;
		top: auto;
		bottom: 8rem;
		right: -3rem;
		transform: rotate(30deg)
	}
	#about02 .tablet li._02 {
		max-width: 8rem;
		left: -3rem;
		bottom: auto;
		top: -8rem;
	}
	#about02 .tablet li._03 {
		max-width: 8rem;
		right: -3rem;
		top: -6rem;
	}
	.pointLead {
		max-width: 15rem;
		left: auto;
		right: 0;
	}
	.point {
		padding-top: 9rem;
	}
	.c-ttl_rl {
		display: block;
		text-align: left;
		margin-bottom: 4rem;
	}
	.c-ttl_rl .en {
		font-size: 4rem;
	}
	.c-ttl_rl h2 {
		font-size: 1.8rem;
		white-space: nowrap;
		line-height: 2;
	}
	.c-ttl_rl h2 span.onlysp {
		display: inline;
	}
	.point .c-ttl_rl {
		position: relative;
	}
	.pointWrap._01 {
		padding: 0;
		display: block;
	}
	.point01Img {
		padding: 0 8rem 3.5rem 0;
		margin-bottom: -2rem;
	}
	.pointWrap._01 figure {
		width: 100%;
	}
	.point01Img ._02 {
		width: 15rem;
	}
	.c-cont h3 {
		font-size: 2rem;
		margin-bottom: 1rem;
		white-space: nowrap;
	}
	.pointWrap {
		display: block;
		margin-bottom: 6rem;
	}
	.pointWrap._02 figure {
		width: 100%;
		padding-left: 10rem;
		margin-bottom: -2rem;
	}
	.pointWrap._03,
	.pointWrap._04 {
		display: flex;
		align-items: flex-start;
		gap: 1.5rem;
	}
	.pointWrap._04 {
		margin-top: 0;
		flex-direction: row-reverse;
	}	
	.pointWrap._03 figure, .pointWrap._04 figure {
    width: 10rem;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: -2rem;
	}
	.pointWrap._04 figure {
		margin-bottom: 0;
	}
	#point .tablet li._01 {
    bottom: 8rem;
    left: 2rem;
    max-width: 12rem;
	}
	#point {
		padding-bottom: 15rem;
		background-repeat: repeat-y;
		background-size: 137% auto;
		background-position: top right;
	}
	#detail {
		margin-top: -10rem;
		padding-bottom: 6rem;
	}
	#detail::before {
		height: 8rem;
		background-size: 125% 100%;
	}
	#detail::after {
		top: 8rem;
		bottom: 8rem;
		background-size: 125% 8rem;
	}
	.detail  {
		display: block;
	}
	.detail > figure {
		max-width: 10rem;
		margin: 0 auto 3.5rem;
	}
	.detail > figure::before {
		width: 25rem;
	}
	.detail dt h2 {
		font-size: 2rem;
		margin-bottom: 1rem;
	}
	.detail dt li {
		font-size: 1.6rem;
		gap: 1rem;
	}
	.detail dt li + li {
		margin-top: 1rem;
	}
	.detail dt li::before {
		width: 2rem;
	}
	.detail dt figure {
		top: -3rem;
		width: 18rem;
		right: -4rem;
		z-index: 50;
	}
	.detail dd figure img {
		margin: 0 auto .5rem;
	}
	.detail dd {
		gap: 1.5rem;
		font-size: 1.2rem;
	}
	.detailCont {
		border-radius: 2rem;
		padding: 2rem 3rem;
		margin-top: 4rem;
		font-size: 1.2rem;
	}
	.detailCont .box {
		display: block;
	}
	.detailCont dl + dl {
		padding-left: 0;
		margin-left: 0;
		border-left: none;
		margin-top: .5rem;
	}
	.detailCont dd + dt {
		margin-top: .5rem;
	}
	.detailCont h2 {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
	.detailBtm .video {
    margin: 4rem auto 3rem;
    border-radius: 2rem;
	}
	#detail .tablet li._01 {
    max-width: 10rem;
    top: -8rem;
    right: -3rem;
	}
	#detail .tablet li._02 {
		transform: rotate(160deg);
    bottom: -6rem;
    max-width: 9rem;
    left: -2rem;
	}
	#passinon {
		padding-top: 10rem;
		background-size: 75% auto,100% auto,65% auto;
		background-position: top right,top 25% left,bottom 12% right -25%;
	}
	.passionLead {
		padding: 0;
	}
	.passionLead .c-ttl_rl {
		position: relative;
	}
	.president {
		padding-left: 7rem;
		padding-bottom: 1rem;
	}
	.president .box {
		left: 0;
		bottom: 0;
	}
	.president .tablet li._01 {
		max-width: 8rem;
		left: 0rem;
		top: -2rem;
	}
	.president .tablet li._02 {
    max-width: 10rem;
    right: -4rem;
		bottom: -2rem;
	}
	.president figure {
		margin-right: -2rem;
	}
	.president .box small {
		font-size: 1rem;
	}
	.passion {
		display: block;
	}
	.passion figure {
		margin-bottom: 2rem;
	}
	.baloonTxt {
		margin-top: -2.4rem;
	}
	.baloonTxt .txt {
		font-size: 2rem;
	}
	.baloonTxt .c-sub {
		font-size: 1.6rem;
	}
	.passion .tablet {
		display: none;
	}
	#campfire {
		padding: 10rem 0 0 0;
	}
	.campfire {
		display: block;
	}
	.campfire figure {
		padding: 0 5rem 0 7rem;
		margin: 0 auto 2rem;
	}
	.campfire h2 {
		font-size: 1.6rem;
	}
	.campfire h2 img {
    max-height: 3.6rem;
	}
	.campfire h3 {
		font-size: 1.8rem;
	}
	.c-btn._sm a {
		font-size: 1.4rem;
		padding: 2rem;
	}
	.c-btn._sm a .en {
		font-size: 2.6rem;
	}
	.c-btn._sm {
		margin-top: 3rem;
	}
	#campfire .tablet li._01 {
    max-width: 10rem;
    top: -4rem;
    right: -4rem;
	}
	#campfire .tablet li._02 {
    max-width: 14rem;
    left: -5rem;
    top: -6rem;
	}
	.set {
		grid-template-columns: repeat(1,1fr);
	}
	.set dd h3 {
		font-size: 1.6rem;
	}
	.set li {
		border-radius: 2rem;
		padding: 5rem 3rem 2rem;
	}
	.set dt figure {
    max-width: 8rem;
		margin-right: -1rem;
	}
	.set dt .pcs {
		width: 11rem;
		font-size: 1.8rem;
	}
	.send {
		display: block;
	}
	.send figure {
		width: 100%;
		margin-bottom: 2rem;
	}
	#send {
		background-position: top left;
		background-size: 45% auto;
		padding-top: 8rem;
	}
	#product {
		padding-bottom: 15rem;
	}
	#product::after {
		background-size: 125% 8rem;
		bottom: 13rem;
	}
	#product::before {
		bottom: 3rem;
		height: 10rem;
		background-size: 125% 100%;
	}
	.product {
		display: block;
	}
	.product .box h2 {
		font-size: 4rem;
		text-align: center;
		margin-bottom: 3rem;
	}
	.product .img {
		max-width: 20rem;
		margin: 0 auto 2rem;
		padding: 0 6rem 2rem 0;
	}
	.product .img p {
    max-width: 12rem;
	}
	#product .bg {
		max-width: 35rem;
		left: -5rem;
	}
	.ambLead {
		display: block;
	}
	.ambLead .box {
		padding-top: 3rem;
	}
	.ambLead h2 {
		font-size: 2rem;
		margin-bottom: 1.5rem;
	}
	.ambLead h3 {
		font-size: 3rem;
	}
	.ambLead .tablet li._01 {
		max-width: 8.5rem;
		right: auto;
		left: 0rem;
		transform: rotate(-195deg);
		bottom: 15rem;
	}
	.ambLead .tablet li._02 {
		max-width: 7rem;
		left: auto;
		bottom: -8rem;
		right: -1rem;
		transform: rotate(30deg);
	}
	.ambLead .tablet li._03 {
		max-width: 12rem;
		right: -3rem;
		top: -7rem;
	}
	.ambLeadArea {
		background-size: 140% auto;
		background-repeat: repeat-y;
		background-position: top left;
	}
	.ambContLead h2 {
		flex-direction: column;
		gap: 1rem;
	}
	.ambContLead h2 img {
    max-height: 3rem;
	}
	.ambContLead h2 img[src*="/logo.png"] {
    max-height: 4.5rem;
	}
	.ambContLead .box {
		display: block;
	}
	.ambContLead .box .img {
		display: block;
		margin-left: -2rem;
		margin-bottom: 3rem;
		padding-right: 7rem;
	}
	.chara figure:nth-of-type(1) {
		max-width: 6rem;
		top: -7rem;
		left: -1rem;
	}
	.chara figure:nth-of-type(2) {
		max-width: 5.5rem;
		top: 25rem;
		right: 0;
	}
	.chara figure:nth-of-type(3) {
		max-width: 8rem;
		right: 1rem;
		top: 39rem;
	}
	.chara figure:nth-of-type(4) {
		max-width: 8rem;
		bottom: 0rem;
		left: 0;
	}
	.chara figure:nth-of-type(5) {
		max-width: 8rem;
		bottom: 0;
		right: 0;
	}
	.ambContLead {
		padding-bottom: 10rem;
	}
	.btn a {
		font-size: 1.6rem;
		padding: 2rem 0;
	}
	.ambContArea {
		padding-bottom: 8rem;
		background-position: right top,right bottom 6rem;
		background-repeat: repeat-y,no-repeat;
		background-size: 140% auto,50% auto;
	}
	.ambBtm {
		display: block;
	}
	.ambBtm figure {
		max-width: 25rem;
		margin-bottom: 3rem;
	}
	.ambBtm h2 {
		font-size: 2rem;
		flex-direction: column;
		align-items: center;
		gap: .5rem;
		margin-bottom: 2rem;
	}
	.ambBtm ul {
		gap: 2rem;
		justify-content: center;
	}
	.ambBtm li img {
		max-height: 5rem;
	}
	.ambBtm figure::before {
		width: 50rem;
		top: -2rem;
		right: -8rem;
	}
	#channel {
		padding-bottom: 8rem;
	}
	.c-bg_wave._pk::before {
		background-size: 125% 8rem,120% 8rem,38.2rem auto,24.1rem auto;
	}
	.channel h3 {
		font-size: 1.8rem;
	}
	.channel .img p:nth-of-type(2) {
    margin: 0 0 -12rem -12rem
	}
	.channel .img {
		padding-bottom: 12rem;
	}
	#channel .tablet li {
		opacity: 1;
	}
	#channel .tablet li._01 {
		max-width: 8rem;
		top: -9rem;
		right: auto;
		left: 0;
		transform: rotate(134deg);
	}
	#channel .tablet li._02 {
		max-width: 10rem;
		left: auto;
		top: auto;
		bottom: 30rem;
		right: -4rem;
		transform: rotate(80deg);
	}
	#channel .tablet li._03 {
		max-width: 10rem;
		right: auto;
		top: auto;
		bottom: 10rem;
		transform: rotate(-45deg);
		left: -3rem;
	}
	.line {
		display: block;
	}
	.line .img {
		width: auto;
		margin: 0 -1.5rem 2rem;
	}
	.line .box h3 {
		font-size: 1.2rem;
		white-space: nowrap;
		border-radius: .5rem;
		padding: .7rem 0;
	}
	.addBtn a {
		padding: 2rem;
		gap: .5rem;
	}
	.addBtn a .txt {
		font-size: 1.6rem;
	}
	.addBtn a .logo img {
		max-height: 4rem;
	}
	.addBtn a figure {
		max-width: 4rem;
		left: 1rem;
	}
	.addBtn a figure:nth-of-type(2) {
		max-width: 4rem;
		right: 1rem;
	}
	#line {
		padding-bottom: 8rem;
	}
	#footer {
		padding-bottom: 9.6rem;
	}
	.footer .logo img {
		max-height: 5rem;
	}
	.gotop {
		display: block;
		position: static;
		margin: 3rem auto 0;
	}
	


















}



