@charset "UTF-8";
/* CSS Document */

html, body, div, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    
}
 body {
	-webkit-text-size-adjust: 100%;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
html{
    overflow-y: scroll;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
input, textarea{
    margin: 0;
    padding: 0;
}
ol, ul{
    list-style:none;
}
table{
    /**border-collapse: collapse;**/
    border-spacing:0;
}
a:focus {
    outline:none;
}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.clearfix {
    min-height: 1px;
}
* html .clearfix {
    height: 1px;
    /*促*//*/
    height: auto;
    overflow: hidden;
    /**/
}
.both{
    clear:both;
}
.inline_block {
    display: inline-block;
    *display: inline;
    *zoom: 1;
	border-bottom: dashed 1px #818181;
	font-size: 24px;
	padding-top: 20px;
	padding-bottom: 5px;
	margin-bottom: 5px;
}
.mt0 {margin-top: 0 !important;}
.mt5 {margin-top: 5px !important; }
.mt10 {margin-top: 10px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 25px !important; }
.mt30 {margin-top: 30px !important; }
.mt40 {margin-top: 40px !important; }
.mt50 {margin-top: 50px !important; }
.mt60 {margin-top: 60px !important; }
.mt-20 {margin-top: -20px !important; }
.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 5px !important; }
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 25px !important; }
.mb30 {margin-bottom: 30px !important; }
.mb40 {margin-bottom: 40px !important; }
.mb50 {margin-bottom: 50px !important; }
.mb60 {margin-bottom: 60px !important; }
.mb70 {margin-bottom: 70px !important; }
.mb80 {margin-bottom: 80px !important; }
.mb90 {margin-bottom: 90px !important; }
.ml0 { margin-left: 0px !important;}
.ml5 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml30 { margin-left: 30px !important;}
.ml40 { margin-left: 40px !important;}
.mr0 { margin-right: 0px !important;}
.mr5 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr30 { margin-right: 30px !important;}
.mr40 { margin-right: 40px !important;}
.pt0 {padding-top: 0 !important;}
.pt5 {padding-top: 5px !important; }
.pt10 {padding-top: 10px !important;}
.pt15 {padding-top: 15px !important;}
.pt20 {padding-top: 25px !important; }
.pt30 {padding-top: 30px !important; }
.pt40 {padding-top: 40px !important; }
.pb0 {padding-bottom: 0 !important;}
.pb5 {padding-bottom: 5px !important; }
.pb10 {padding-bottom: 10px !important;}
.pb15 {padding-bottom: 15px !important;}
.pb20 {padding-bottom: 25px !important; }
.pb30 {padding-bottom: 30px !important; }
.pb40 {padding-bottom: 40px !important; }
.pl0 {padding-left: 0px !important;}
.pl5 {padding-left: 5px !important;}
.pl10 {padding-left: 10px !important;}
.pl15 {padding-left: 15px !important;}
.pl20 {padding-left: 20px !important;}
.pl30 {padding-left: 30px !important;}
.pl40 {padding-left: 40px !important;}
.pr0 {padding-right: 0px !important;}
.pr5 {padding-right: 5px !important;}
.pr10 {padding-right: 10px !important;}
.pr15 {padding-right: 15px !important;}
.pr20 {padding-right: 20px !important;}
.pr30 {padding-right: 30px !important;}
.pr40 {padding-right: 40px !important;}
.font40{font-size:40px !important;}
.font36{font-size:36px !important;}
.font30{font-size:30px !important;}
.font24{font-size:24px !important;}
.font20{font-size:20px !important;}
.font18{font-size:18px !important;}
.font14{font-size:14px !important;}
.font12{font-size:12px !important;}
.font10{font-size:10px !important;}
.bold {font-weight:bold;}
.red{color:#E53743;}
.black{color:#000;}
.blue {color:#004896 !important;}
.pink {color:#db436b !important;}
img{margin: 0;padding: 0;vertical-align: bottom;}
.text-left{ text-align:left;}
.center{text-align: center;}
.rigth{float:right;}
.left {float:left;}
.width30 {width:30px !important;}
.under{	text-decoration:underline;}
.pc-none {display:none;}
.web-font {
font-family: 'Alfa Slab One', cursive;
font-family: 'Ceviche One', cursive;
font-family: 'Fugaz One', cursive;
}
/****************************************
          Link
*****************************************/
nav a:link {
	text-decoration:none;
	color:#000;
}
nav a:visited {
	text-decoration:none;
	color:#000;
}
.link1 a:link {
	color:blue !important;
}
.link1 a:visited{
	color:blue !important;
}
a:hover {
	text-decoration:none;
}
a:active {
	-ms-filter:"alpha(opacity=80)";
	filter:alpha(opacity=80);
	opacity:0.8;
	zoom:1;
}
a:hover {
	-ms-filter:"alpha(opacity=80)";
	filter:alpha(opacity=80);
	opacity:0.8;
	zoom:1;
}
a:active img {
	-ms-filter:"alpha(opacity=80)";
	zoom:1;
}
a:hover img {
	-ms-filter:"alpha(opacity=80)";
	zoom:1;
}
a:active img:not(:target) {
	-ms-filter:"alpha(opacity=100)";
	zoom:1;
}
a:hover img:not(:target) {
	-ms-filter:"alpha(opacity=100)";
	zoom:1;
}
.hover {
	-ms-filter:"alpha(opacity=80)";
	filter:alpha(opacity=80);
	opacity:0.8;
	zoom:1;
}
/****************************************
         top link
*****************************************/

a {
	text-decoration: none;
}
a:hover {
	opacity: 1.0;
	transition: 0.2s;
}
img {
	width: 100%;
}

html {
	margin-top: 0!important;
	height: 100%;
	scroll-behavior: smooth;
	font-size: 62.5%;
}

.anchor {
	padding-top: 60px;
	margin-top: 60px;
}
.wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
.wrapper > footer {
  margin-top: auto;
}
html, 
body {
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;  /* 横スクロールだけ隠したい場合 */
}

body {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: 1.6em;
	line-height: 3.4rem;
	font-feature-settings: "palt" 1;
	
	overflow: hidden;
}
.pc-none {
	disply: none!important;
}
.sp-none {
	display: block!important;
}
.wrapper {
	flex: 1;
}




.header_logo {
	position: fixed;
	top: 0;
	left: 0;
	width: 10rem;
	z-index: 1000;
}


.slider {
  	position: relative;
	z-index: 1;	
}
.slider_item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height: 100vh!important;/*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    background-repeat: no-repeat;/*背景画像をリピートしない*/
    background-position: center;/*背景画像の位置を中央に*/
    background-size: cover;/*背景画像が.slider-item全体を覆い表示*/
}
/*** リトル ***/
.slider_item01_little {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/fv01.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item02_little {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/fv02.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item03_little {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/fv03.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item04_little {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/fv04.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}

/*** ヤング ***/
.slider_item01_young {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/fv01.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item02_young {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/fv02.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item03_young {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/fv03.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}
.slider_item04_young {
    background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/fv04.jpg") no-repeat;
	background-size: cover;
	border-radius: 0 0 0 5rem;
}


.hero {
	position: relative;
	width: 100vw;
}
.slider {
	width: 80%;
	margin: 0 0 0 auto;
}

.hero_inner {
	width: 100%;
	height: 100%;
	margin: 0 auto;
}
.hero_inner_title {
	position: absolute;
	top: 10rem;
	left: 5%;
	z-index: 1;
	color: #43D8DE;
}
.hero_inner_title h2 {
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-size: 11rem;
	line-height: 10rem;
	letter-spacing: 0.5rem;
	opacity: 0.8;
}
.hero_inner_title p {
	margin: 1.5rem 0 0 0;
	font-size: 3.5rem;
	font-weight: 700;
	letter-spacing: 0.4rem;
}
.hero_inner_title_target {
	font-size: 2rem !important;
    margin: 1rem 0 0 0 !important;
}
/**.hero_inner_text {
	position: absolute;
	top: 40rem;
	right: 6%;
	font-size: 3.2rem;
	font-weight: 900;
	letter-spacing: 0.3rem;
	line-height: 4.5rem;
	color: #fff;
	text-align: right;
	z-index: 1;
}**/
.underline_orange {
	margin: 0 0.6rem;
	background: linear-gradient(transparent 50%, #FF6200 50%);
}
.underline_blue {
	margin: 0 0.6rem 0 -0.2rem;
	padding: 0 0.5rem;
	background: linear-gradient(transparent 0, #43D8DE 0);
	color: #fff;
	font-weight: 700;
}
.important_orange {
	color: #FF6200;
	font-weight: 700;
	margin: 0 0.5rem;
}
.underline_wave {
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/underline-wave.png") bottom repeat-x; 
  background-size: 5rem;
}
.small_text {
	font-size: 1.2rem;
	font-weight: 400;
}

.hero_inner_right {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
.hero_inner_text {
	margin: 0 6% 3rem 0;
	font-size: 3rem;
	font-weight: 900;
	letter-spacing: 0.3rem;
	line-height: 4rem;
	color: #fff;
	text-align: right;
}
.hero_cta {
	
}
/**.hero_cta {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}**/
.hero_cta_inner {
	position: relative;
  background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/cta-fv-bg.png") no-repeat right bottom;
  background-size: contain;
	width: 50rem;
	height: 15rem;
  padding: 3rem 6rem 0 3rem;  /* 右側スペースを余裕持たせる */
}
.hero_btn_outer {
	position: absolute;
	bottom: 1rem;
	left: 52%;
}
.hero_btn {
	width: 18rem;
	border-radius: 2rem;
	margin: 1rem 4rem 0;
	padding: 1rem 1rem;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	box-shadow: 0 0.1rem 1rem 0.1rem #E3E3E3;
}
.hero_experience_btn {
	background: #FF6200;
}
.hero_experience_btn a {
	color: #fff;
}
.hero_line_btn {
	background: #fff;
}
.hero_line_btn a {
	position: relative;
	margin: 0 0 0 2rem; 
	color: #3DC657;
}
.hero_line_btn a::before {
	position: absolute;
	top: 0;
	left: -3.5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/line-icon.png") no-repeat;
	background-size: contain;
	width: 2.7rem;
	height: 2.7rem;
}
.hero_line_btn a::after {
	position: absolute;
	bottom: -3rem;
	left: -18rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/risupon-fv.png") no-repeat;
	background-size: contain;
	width: 12rem;
	height: 12rem;
}
.hero_cta_risupon {
	position: absolute;
	bottom: 0;
	width: 10%;
}




.hero_video {
	width: 80%;
	max-width: 1400px;
	min-width: 1000px;
	margin: 20rem auto 10rem;
}
.video_wrapper {
	width: 100%;
	margin: 0 auto 12rem;
	padding: 1rem;
	background: #EDFFFD;
	border-radius: 4rem;
}
.video_wrapper h2 {
	display: block;
	padding: 0.8rem 1rem;
	background: #43D8DE;
	border-radius: 5rem;
	width: 40rem;
	margin: -3rem auto 0;
	font-size: 2.5rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.video_wrapper iframe{
	display: block;
	width: 80%;
	height: 500px;
	margin: 3rem auto 5rem;
	aspect-ratio: 16 / 9;
}
.hero_video p {
	margin: 2rem 0;
}


.concept {
	display: flex;
	align-items: flex-end;
	width: 80%;
	max-width: 1400px;
	min-width: 1000px;
	margin: 10rem auto;
}
.concept_right {
	width: 46%;
	margin: 0 5rem 0 0;
}
.concept_right h2 {
	margin: 0 0 5rem;
	font-size: 3.5rem;
	font-weight: 900;
	line-height: 7rem;
	letter-spacing: 0.5rem;
}
.concept_list {
	margin: 4rem 0;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
.concept_list li {
	position: relative;
	margin: 0 0 0 3rem;
}
.concept_list li::before {
	position: absolute;
	top: 0.8rem;
	left: -3rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/concept_list-icon.png") no-repeat;
	background-size: contain;
	width: 2.1rem; 
	height: 2.1rem;
}
.concept img {
	width: 50%;
	object-fit: contain;
	border-radius: 4rem;
}




.points {
	width: 100%;
	background: #EDFFFD;
	padding: 8rem 0;
	margin: 10rem auto;
}
.points h2 {
	margin: 0 auto 5rem;
	font-size: 3.5rem;
	font-weight: 900;
	line-height: 7rem;
	letter-spacing: 0.5rem;
	text-align: center;
}
.points_list {
	display: flex;
	justify-content: center;
	width: 80%;
	max-width: 1400px;
	min-width: 1000px;
	margin: 4rem auto 2rem;
}
.points_list li {
	background: #fff;
	padding: 2rem;
	margin: 0 2rem;
	border-radius: 2rem;
	box-shadow: 0 0.1rem 1rem 0.1rem #E3E3E3;
}
.points_list li img {
	display: block;
	width: 70%;
	margin: 2rem auto;
}
.points_list li p {
	margin: 1rem 0;
	font-size: 1.6rem;
	text-align: center;
	line-height: 2.5rem;
}




.staff {
	width: 80%;
	max-width: 1200px;
	min-width: 900px;
	margin: 10rem auto;
}
.staff h2 {
	position: relative;
	margin: 0 0 0 5rem;
	font-size: 3rem; 
	font-weight: 900;
	letter-spacing: 0.2rem;
}
.staff h2::before {
	position: absolute;
	top: 0.4rem;
	left: -5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/title-icon.png") no-repeat;
	background-size: contain;
	width: 3.6rem; 
	height: 3.6rem;
}
.staff h2::after {
	position: absolute;
	content: "STAFF";
	margin: 0 0 0 2rem;
	font-size: 2rem; 
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
.staff_list li {
	display: flex;
	align-items: center;
	margin: 5rem auto;
	padding: 5rem 8rem;
	border-radius: 2rem;
	background: #fff;
	box-shadow: 0 0.1rem 1rem 0.1rem #E3E3E3;
}
.staff_list li img {
	max-width: 30rem;
	width: 40%;
	margin: 0 5rem 0 0;
	border-radius: 4rem;
}
.staff_position {
	font-weight: 700;
	line-height: 2.6rem;
	color: #43D8DE;
}
.staff_text h3 {
	margin: 2rem auto 2rem;
	padding: 0 1rem 1rem;
	border-bottom: solid 0.2rem #43D8DE;
	font-size: 3rem;
	letter-spacing: 0.4rem;
}
.staff_text h3 span {
	margin: 0 0 0 2rem;
	font-size: 1.5rem;
	font-weight: 400;
}
.staff_maintext {
	padding: 0 1rem;
	font-size: 1.4rem;
	line-height: 2.6rem;
}
.yumesen {
	display: inline-block;
	border-bottom: solid 0.1rem #43D8DE;
	font-size: 1.2rem;
	color: #43D8DE;
}







.overview {
	display: flex;
	align-items: center;
	min-width: 1000px;
	width: 90%;
	margin: 10rem auto 10rem 0;
}
.overview h2 {
	position: relative;
	margin: 0 0 0 5rem;
	font-size: 3rem; 
	font-weight: 900;
	letter-spacing: 0.2rem;
}
.overview h2::before {
	position: absolute;
	top: 0.4rem;
	left: -5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/title-icon.png") no-repeat;
	background-size: contain;
	width: 3.6rem; 
	height: 3.6rem;
}
.overview h2::after {
	position: absolute;
	content: "OVERVIEW";
	margin: 0 0 0 2rem;
	font-size: 2rem; 
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
.overview img {
	width: 45%;
	margin: 0 5rem 0 0;
}
.overview_wrapper {
	width: 50%;
}
.overview_wrapper table {
	background: #fff;
	margin: 3rem auto;
	border: solid 0.2rem #43D8DE;
	border-radius: 2rem;
	padding: 2rem;
}
.overview_wrapper table th {
	padding: 1rem 3rem 1rem 3rem;
	border-bottom: dotted 0.2rem #43D8DE;
	font-size: 1.5rem;
	text-align: left;
	line-height: 2.5rem;
}
.overview_wrapper table td {
	padding: 1rem 3rem 1rem 3rem;
	border-bottom: dotted 0.2rem #43D8DE;
	font-size: 1.5rem;
	text-align: left;
	line-height: 2.5rem;
}
.bordernone {
	border-bottom: none!important;
}
.overview_wrapper iframe {
	display: block;
    max-width: 50rem;
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 16 / 9;
}




.voice {
	position: relative;
	max-width: 1400px;
	min-width: 1000px;
	width: 80%;
	margin: 10rem auto 35rem;
}
.voice h2 {
	position: relative;
	margin: 0 0 0 5rem;
	font-size: 3rem; 
	font-weight: 900;
	letter-spacing: 0.2rem;
}
.voice h2::before {
	position: absolute;
	top: 0.4rem;
	left: -5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/title-icon.png") no-repeat;
	background-size: contain;
	width: 3.6rem; 
	height: 3.6rem;
}
.voice h2::after {
	position: absolute;
	content: "VOICE";
	margin: 0 0 0 2rem;
	font-size: 2rem; 
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
.voice img {
	width: 70%;
	margin: 5rem 0 0;
	border-radius: 4rem;
}
.voice_list li {
	position: absolute;
	display: inline-block;
	padding: 7rem 3rem 3rem;
	font-size: 1.4rem;
	line-height: 2.8rem;
	border-radius: 3rem;
}
.voice_white {
	border: solid 0.2rem #43D8DE;
	background: #fff;
	color: #43D8DE;
}
.voice_blue {
	border: solid 0.2rem #43D8DE;
	background: #43D8DE;
	color: #fff;
}
.voice_list li:nth-child(1) {
	width: 35%;
	top: 0;
	right: 0;
}
.voice_list li:nth-child(2) {
	width: 35%;
	top: 28rem;
	right: 4%;
}
.voice_list li:nth-child(3) {
	width: 60%;
	bottom: -26rem;
	right: 10%;
}
.voice_title {
	position: absolute;
	top: 2rem;
	left: 0;
	padding: 0.5rem 2rem 0.5rem 3rem;
	font-size: 1.8rem;
	font-weight: 700;
	border-radius: 0 5rem 5rem 0;
}
.voice_white .voice_title {
	background: #FF6200;
	color: #fff;
}
.voice_blue .voice_title {
	background: #FF6200;
	color: #fff;
}
.voice_name {
	display: inline-block;
	margin: 1.5rem 0 0;
	border-bottom: solid 0.1rem ;
}


.faq {
	position: relative;
	max-width: 1200px;
	min-width: 1000px;
	width: 80%;
	margin: 10rem auto;
}
.faq h2 {
	position: relative;
	width: 20rem;
	margin: 0 auto;
	font-size: 3rem; 
	font-weight: 900;
	letter-spacing: 0.2rem;
	text-align: center;
}
.faq h2::before {
	position: absolute;
	top: 0.4rem;
	left: -4.5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/title-icon.png") no-repeat;
	background-size: contain;
	width: 3.6rem; 
	height: 3.6rem;
}
.faq h2::after {
	position: absolute;
	content: "FAQ";
	margin: 0 0 0 2rem;
	font-size: 2rem; 
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
/* FAQ 全体のレイアウト */
.faq ul {
  width: 90%;
  margin: 5rem auto 0;
}
.faq_content {
  margin: 2rem auto;
}

/* 質問部分 */
.faq_question {
  display: flex;
  align-items: center;
  padding: 1.5rem 5rem 1.5rem 1rem;
  border: solid 0.2rem #43D8DE;
  border-radius: 2rem 2rem 0 0;
  background: #fff;
  cursor: pointer;
  position: relative; /* 擬似要素配置の基点 */
}

/* 回答部分（初期は完全に隠す） */
.faq_answer {
  display: none;          /* ←ここだけ */
  padding: 1.5rem 5rem 1.5rem 1rem;
  background: #EDFFFD;
  border: solid 0.2rem #43D8DE;
  border-radius: 0 0 2rem 2rem;
  border-top: none;
}

/* Q/A のラベル文字 */
.faq_question p,
.faq_answer p {
  position: relative;
  padding-left: 7rem;
}
.faq_question p::before {
  position: absolute;
  left: 1rem;
  content: "Q";
  font-family: "Roboto", sans-serif !important;
  font-size: 3.5rem;
  color: #43D8DE;
}
.faq_answer p::before {
  position: absolute;
  top: -1.5rem;
  left: -1rem;
  content: "A";
  font-family: "Roboto", sans-serif !important;
  font-size: 3.5rem;
  background: #43D8DE;
  border-radius: 0 0 0 1.8rem;
  padding: 1.5rem 1.8rem 1.5rem 2rem;
  color: #fff;
}

/* + / − アイコン */
.faq_question::before,
.faq_question::after {
  content: "";
  position: absolute;
  width: 1.8rem;
  height: 0.2rem;
  background-color: #43D8DE;
  top: 50%;
  right: 1.5rem;
  transition: transform 0.3s ease-in-out;
}
.faq_question::before {
  transform: translateY(-50%) rotate(0deg);   /* − */
}
.faq_question::after {
  transform: translateY(-50%) rotate(90deg);  /* ＋ */
}
.faq_question.open::after {
  transform: translateY(-50%) rotate(0deg);   /* − に回転 */
}









.contact {
	width: 100%;
	margin: 10rem auto 0;
	background-color: #43D8DE;
	background-image: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/contact-bg.png");
	background-size: cover;
	padding: 10rem 0 5rem;
}
.contact h2 {
	font-size: 3rem; 
	font-weight: 700;
	letter-spacing: 0.3rem;
	text-align: center;
	color: #fff;
	line-height: 5rem;
}
.contact_inner {
	background: #fff;
	max-width: 1200px;
	min-width: 800px;
	width: 70%;
	margin: 5rem auto;
	padding: 2rem 5rem;
	border-radius: 4rem;
}
.contact_inner h3 {
	position: relative;
	width: 14rem;
	margin: 4rem auto;
	font-size: 3rem;
	text-align: center;
	color: #FF6200;
}
.contact_inner h3::before {
	position: absolute;
	top: 0.4rem;
	left: -4.5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/title-icon-orange.png") no-repeat;
	background-size: contain;
	width: 3.6rem; 
	height: 3.6rem;
}
.contact_inner h3::after {
	position: absolute;
	top: 0;
	right: -14rem;
	content: "・EXPERIENCE・";
	margin: 0 0 0 2rem;
	display: block;
	font-size: 1.5rem; 
	font-weight: 700;
	letter-spacing: 0.2rem;
	color: #43D8DE;
}
.contact_inner p {
	display: block;
	width: 70%;
	margin: 0 auto;
	padding: 2rem 0;
	border-top: dotted 0.3rem #43D8DE;
	border-bottom: dotted 0.3rem #43D8DE;
	text-align: center;
}
.contact_inner_btn {
	display: flex;
	justify-content: center;
	width: 80%;
	margin: 3rem auto;
}
.contact_btn {
	width: 22rem;
	border-radius: 2rem;
	margin: 1rem;
	padding: 1.2rem 1rem;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	box-shadow: 0 0.1rem 1rem 0.1rem #E3E3E3;
}
.cta_experience_btn {
	border: solid 0.2rem #FF6200;
	color: #FF6200;
}
.cta_line_btn {
	position: relative;
	border: solid 0.2rem #3DC657;
	color: #3DC657;
}
.cta_line_btn::before {
	position: absolute;
	top: 1.7rem;
	left: 2.5rem;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/line-icon.png") no-repeat;
	background-size: contain;
	width: 2.7rem;
	height: 2.7rem;
}
.contact img {
	display: block;
	width: 25%;
	margin: -18rem -3rem -4rem auto;
}



.gallery {
	position: relative;
	width: 100%;
	max-width: 1400px;
	min-width: 1000px;
	margin: 0 auto;
}
.gallery::before {
	position: absolute;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/last-message-left.png") no-repeat;
	background-position: left;
	background-size: contain;
	width: 30%;
	height: 100%;
}
.gallery::after {
	position: absolute;
	top: 0;
	right: 0;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/little/last-message-right.png") no-repeat;
	background-position: right;
	background-size: contain;
	width: 30%;
	height: 100%;
}
.gallery p {
	padding: 8rem 0;
	font-size: 1.6rem;
	line-height: 3.5rem;
	text-align: center;
}





.footer {
	background: #43D8DE;
}
.footer p {
	padding: 2rem 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	color: #fff;
}





.other_banner {
	width: 100%;
	background: #43D8DE;
    padding: 15rem 0 5rem;
	margin: 0 auto;
}
.other_banner h2 {
	margin: 0 auto;
	font-size: 3rem; 
	font-weight: 900;
	letter-spacing: 0.2rem;
	text-align: center;
	color: #fff;
}
.other_banner_inner {
	background: #fff;
	max-width: 1200px;
	min-width: 900px;
	width: 80%;
	margin: 4rem auto;
	padding: 3rem 1rem;
}
.other_banner_inner ul {
	display: flex;
	justify-content: center;
}
.other_banner_inner ul li {
	width: 30%;
	margin: 0 2rem;
}
.other_banner_inner ul li img {
	width: 100%;
	box-shadow: 0 0.1rem 1rem 0.1rem #E3E3E3;
	border-radius: 2rem;
}





.bg-deco {
  position: absolute;
  pointer-events: none;
  user-select: none;
  z-index: -1;
	opacity: 0.6;
	max-width: 100vw;
}

/* 画面全体を覆う親を fixed or absolute に */
.bg-container {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  z-index: 0;
}

/**
.young_text {
	color: #FFA700!important;
}
.young_bg {
	background: #FFA700!important;
}
**/





/***** ヤング ****/

.young .underline_wave {
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/underline-wave.png") bottom repeat-x; 
  background-size: 5rem;
}
.young .underline_blue {
	margin: 0 0.6rem 0 -0.2rem;
	padding: 0 0.5rem;
	background: linear-gradient(transparent 0, #FFA700 0);
	color: #fff;
	font-weight: 700;
}
.young .hero_cta_inner {
  background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/cta-fv-bg.png") no-repeat right bottom;
  background-size: contain;
	width: 50rem;
	height: 15rem;
  padding: 3rem 6rem 0 3rem;  /* 右側スペースを余裕持たせる */
}
.young .hero_inner_title {
	color: #FFA700;
}
.young .video_wrapper {
	background: #FFF9E5;
}
.young .video_wrapper h2 {
	background: #FFA700;
}
.young .concept_list {
	color: #FFA700;
}
.young .concept_list li::before {
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/concept_list-icon.png") no-repeat;
}
.young .points {
	background: #FFF9E5;
}
.young .staff h2::before,
.young .overview h2::before,
.young .voice h2::before,
.young .faq h2::before {
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/title-icon.png") no-repeat;
}
.young .staff h2::after,
.young .overview h2::after,
.young .voice h2::after,
.young .contact_inner h3::after,
.young .faq h2::after {
	color: #FFA700;
}
.young .staff_position {
	color: #FFA700;
}
.young .staff_text h3 {
	border-bottom: solid 0.2rem #FFA700;
}
.young .yumesen {
	border-bottom: solid 0.1rem #FFA700;
	color: #FFA700;
}
.young .overview_wrapper table {
	border: solid 0.2rem #FFA700;
}
.young .overview_wrapper table th {
	border-bottom: dotted 0.2rem #FFA700;
}
.young .overview_wrapper table td {
	border-bottom: dotted 0.2rem #FFA700;
}
.young .voice_white {
	border: solid 0.2rem #FFA700;
	background: #fff;
	color: #FFA700;
}
.young .voice_blue {
	border: solid 0.2rem #FFA700;
	background: #FFA700;
	color: #fff;
}/**
.young .voice_white .voice_title {
	background: #FFA700;
	color: #fff;
}
.young .voice_blue .voice_title {
	background: #fff;
	color: #FFA700;
}**/
/* 質問部分 */
.young .faq_question {
  border: solid 0.2rem #FFA700;
}

/* 回答部分（初期は完全に隠す） */
.young .faq_answer {
  border: solid 0.2rem #FFA700;
	background: #FFF9E5;
	border-top: none;
}
.young .faq_question p::before {
  color: #FFA700;
}
.young .faq_answer p::before {
  position: absolute;
  top: -1.5rem;
  left: -1rem;
  content: "A";
  font-family: "Roboto", sans-serif !important;
  font-size: 3.5rem;
  background: #FFA700;
  border-radius: 0 0 0 1.8rem;
  padding: 1.5rem 1.8rem 1.5rem 2rem;
  color: #fff;
}

/* + / − アイコン */
.young .faq_question::before,
.young .faq_question::after {
  content: "";
  position: absolute;
  width: 1.8rem;
  height: 0.2rem;
  background-color: #FFA700;
  top: 50%;
  right: 1.5rem;
  transition: transform 0.3s ease-in-out;
}
.young .contact {
	background-color: #FFA700;
	background-image: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/contact-bg.png");
}
.young .contact_inner p {
	border-top: dotted 0.3rem #FFA700;
	border-bottom: dotted 0.3rem #FFA700;
}
.young .gallery::before {
	position: absolute;
	content: "";
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/last-message-left.png") no-repeat;
	background-position: left;
	background-size: contain;
	width: 30%;
	height: 100%;
}
.young .gallery::after {
	top: 0;
	right: 0;
	background: url("https://re-spawn.jp/wp-content/themes/respawn/kick-lp/images/young/last-message-right.png") no-repeat;
	background-position: right;
	background-size: contain;
	width: 30%;
	height: 100%;
}
.young .footer {
	background: #FFA700;
}
.young .other_banner {
	background: #FFA700;
}







