f@charset "UTF-8";
*{margin: 0; padding: 0;}
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; font-weight: 400;}
html,body{width: 100%; margin: 0; padding: 0;}
html{font-size: 62.5%; }
@media screen and (min-width:980px), print {
	html{margin: 0; padding: 0; min-width:1024px;}
}
/* body{ font-size: 1.8rem; font-family: "Meiryo", "MS PGothic", "Hiragino Kaku Gothic Pro", sans-serif;} */
main section{ font-size: 1.8rem; font-family: "Meiryo", "MS PGothic", "Hiragino Kaku Gothic Pro", sans-serif;} 
table{border-collapse:collapse}
p{margin: 0; font-size: 1.6rem; line-height: 1.5;}
ul{margin: 0;padding: 0;}
ul li{list-style: none;}
.mb0{margin: 0 !important;}
.mb10{margin: 0 0 10px !important;}
.mb20{margin: 0 0 20px !important;}
.mb30{margin: 0 0 30px !important;}
.mb40{margin: 0 0 40px !important;}
.mb50{margin: 0 0 50px;}
.mb60{margin: 0 0 60px;}
.taC{text-align: center;}
.pink{color: #ff5293;}
.fz30{font-size: 3rem !important;}
.fz18{font-size: 1.8rem !important;}
.fz14{font-size: 1.4rem !important;}
.fwB{font-weight: 700;}

.displayPc{display: none;}
.displaySp{display: block;}
.note01{text-indent: -1em; padding-left: 1em;}
@media screen and (min-width:980px), print {
	.displayPc{display: block;}
	.displaySp{display: none;}
}

.attention01{ width: 90%; margin: 0 auto 150px; padding: 10px; font-size: 1.4rem; border: 1px solid #999; }
.attention01 li{font-weight: 700; text-indent: -1em; margin-left: 1em;}
@media screen and (min-width:980px), print {
	.attention01{ width: 900px }
}

.attention02{ width: 90%; margin: 0 auto 150px; padding: 10px; font-size: 1.4rem; border: 1px solid #999; }
.attention02 li{font-weight: 700; text-indent: -1em; margin-left: 1em;}
@media screen and (min-width:980px), print {
	.attention02{ width: 1000px; }
}

main section a:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}

@media (min-width: 980px) {
	a[href*="tel:"] { pointer-events: none; cursor: default; text-decoration: none;	}
}

main header{ width: 100%; height: 12%; padding: 6% 5% 3%; background: #fff; } 

#logo_header img {width: 100%; height: auto;}
main header > .btn { margin: 3% auto 0; }
@media screen and (min-width:980px), print {
	main header { height: 90px; padding: 29px 0 0; width: 1000px; margin: 0 auto; display: flex; justify-content: space-between; }
	#logo_header img {width: 600px; height: 34px;}
	header > .btn { margin: 0; }
}

.btn { border: 1px solid #6583C1; border-radius: 40px; padding: 9px 20px 8px; position: relative; height: fit-content; font-weight: bold; color: #6583C1; font-size: 13px; font-weight: bold; text-align: center; text-decoration: none; display: inline-block; }
.btn_back { padding-left: 35px; }
.btn_back::before { content: ""; border-right: 7px solid #6583C1; border-top: 5px solid transparent; border-bottom: 5px solid transparent; position: absolute; height: 7px; position: absolute; top: 0; bottom: 0; left: 20px; margin: auto; }
.btn_area { padding: 15px 18px; }
@media screen and (min-width:980px), print {
	.btn_area { display: flex; justify-content: end; width: 1000px; margin: 0 auto; padding: 20px 0; }
}
.btn02{text-align: center;}
.btn02 a{ padding: 1em 2em .8em; font-size: 1.8rem; background:#fe5e9b; color: #fff; text-decoration: none; font-weight: 700; line-height: 1; display: inline-block;}

#section01 { text-align: center; }
#section01 img {width: 100%; height: auto; max-width: 1000px;}
@media screen and (min-width:1200px), print {
	#section01 { background: url(../images/header_img_bg.jpg); background-repeat: repeat-x; background-size: 1px 610px; }
}

/* #wrapper{ margin: 0; padding: 0; overflow: hidden; } */
#section01 { width: 100%; height: auto; }
#top_btn a{ width:90%; margin: -5vh auto 30px; padding: 60px 0 0; border: 3px solid #c5c5c5; color: #000; border-radius: 30px; display: block; text-decoration: none; position: relative; background: #fff; }
#top_btn h2{ width: calc(100% + 6px); height: 50px; margin: 0 0 20px; padding: 11px 0 0; font-weight: 700; line-height: 1.1; text-align: center; color: #fff; display: flex; justify-content: center; text-shadow: 2px 3px 3px rgba(0, 0, 0, 1); font-size: 2.8rem; z-index: 20; position: relative;background: #fe5e9b; z-index: 100; border-radius: 30px 30px 0 0; position: absolute; top: -3px; left: -3px;}

#top_btn p{ text-align: center;}
#top_btn .txt01{ font-size: 1.9rem; font-weight:700; line-height: 1.2; margin: 0 0 10px;}
#top_btn .txt02{ font-size: 1.4rem; line-height: 1.1; margin: 0 0 15px;}
#top_btn .txt03{ font-size: 1.6rem;}
#top_btn .txt03 span{ margin: 0 0 10px; padding: 10px 20px 8px; font-weight:700; color: #fff; background:#fe5e9b; display: inline-block; line-height: 1;}
#top_links{ margin: 0 auto 126px; padding: 0 10px; }
#top_links ul{ list-style: none; display: flex; flex-wrap: wrap; margin-left: -16px; }
#top_links ul > li{ padding: 0 16px; position: relative; margin-bottom: 14px; }
#top_links ul > li::after{ content: ""; position: absolute; height: 100%; width: 1.2px; top: 0; bottom: 0; right: 0; margin: auto; background-image: linear-gradient(to bottom, #CCCCCC, #CCCCCC 2px, transparent 1px, transparent 4px); background-size: 1px 4px; background-position: left center;  }
#top_links ul > li:last-child{ padding-right: 0; }
#top_links ul > li:last-child::after{ content: none; }
#top_links a{ color: #000000; font-size: 14px; text-decoration: none; position: relative; display: inline-block; padding-right: 15px; }
#top_links a::after{ content: ""; position: absolute; top: 3px; bottom: 0; right: 0; background: url(../images/icon_arrow.svg) no-repeat 100%; width: 6px; height:  10px; display: inline-block; transform: rotate(90deg); }
@media screen and (min-width:980px), print {
	#top_btn a{ width:800px;  margin: -52px auto 40px; padding: 70px 0 0; border-radius: 30px;}
	#top_btn h2{ height: 55px; font-size: 3.5rem;}
	#top_btn .txt01{ font-size: 2.5rem; margin: 0 0 10px;}
	#top_btn .txt02{ font-size: 1.4rem; margin: 0 0 15px;}
	#top_btn .txt03{ font-size: 1.6rem;}
	#top_links{ margin: 0 auto 140px; width: 1000px; padding: 0; }
	#top_links ul{ flex-wrap: nowrap; justify-content: center; align-items: center; }
	#top_links ul > li{ margin-bottom: 0; }
	#top_links ul > li:first-child{ padding-left: 0; }
}


main section h2{ margin: 0 30px 60px; text-align: center; position: relative; font-size: 2.5rem; line-height: 1.2; font-weight: 700; display: flex; justify-content: center;}
@media screen and (min-width:980px), print {
      main　section h2{ font-size: 3rem; }
}

section h2::before{ padding: 10px 20px; content:"Simulation-Space"; display: block; color: #fff; background: rgb(255,82,147);	background: linear-gradient(90deg, rgba(255,82,147,1) 0%, rgba(255,188,6,1) 100%); border-radius: 40px; position: absolute; top: -50px; font-size: 1.6rem; font-weight: 700; letter-spacing: 2px;}


#section02{ margin: 0 0 80px; }
#section02 article { width: 90%; margin: 0 auto 3%; padding: 20px; border: 5px solid #ffd188; border-radius: 20px;}

.tokutyo_anime01.animation  { animation: tokutyo_anime01 1s forwards; }
@keyframes tokutyo_anime01{
	0%{transform: translateX(-300px);}
  100%{transform: translateX(0);}
}

.tokutyo_anime02.animation { animation: tokutyo_anime02 1s forwards; }
@keyframes tokutyo_anime02{
	0%{transform: translateX(300px);}
  100%{transform: translateX(0);}
}


#section02 article h3{ margin: 0 0 20px; font-size: 3rem; font-weight: 700; line-height: 1.5; background: linear-gradient(90deg, rgba(255,82,147,1) 0%, rgba(255,188,6,1) 100%); -webkit-background-clip: text;	-webkit-text-fill-color: transparent;}

#section02 article p{font-weight: 700; line-height: 1.9; font-size: 1.6rem;}
#section02 .txt {margin: 0 0 20px;}
#section02 .img {text-align: center; }
#section02 img{width: 40%; height: auto; max-width: 382px;}
@media screen and (min-width:980px), print {
	#section02 img{width: auto; height: auto; max-width: none;}
	#section02 { width: 1000px; margin: 0 auto 140px; }
	#section02 h3{ font-size: 3rem;}
	#section02 article { width: 940px; height: 305px; margin: 0 0 30px; padding: 30px 80px 30px 30px; display: flex; align-items: center; justify-content: space-between;}
	#section02 article:nth-child(odd){margin: 0 0 30px 30px;}
	#section02 article > div.txt { margin: 0 20px 0  0 ; justify-content: left; flex-direction: column;  width: 52%; }
	#section02 article:nth-child(odd) .img {margin: 0 90px 0 90px;}
	#section02 article:nth-child(4) .img {margin: 20px 0 0 90px;}
}

#section03{ padding: 120px 0 50px; background: rgb(232,231,231); background: linear-gradient(180deg, rgba(232,231,231,1) 0%, rgba(255,255,255,1) 100%);}
#tokutyo> div > div { margin:20px; padding: 26px 30px 32px; background: #fff; border-radius: 15px; box-shadow: 0px 0px 15px -3px #8c8c8c;}
#tokutyo > div > div h3{ font-size: 2.4rem; font-weight: 700; line-height: 1; margin: 0 0 1em; text-align: center;}
#tokutyo > div > div p{  font-size: 1.6rem; font-weight: 700; line-height: 2; }
@media screen and (min-width:980px), print {
	#tokutyo{ width: 1000px; margin: 0 auto; padding: 0 0 30px; display: flex; flex-wrap: wrap;}
	#tokutyo > div {width: 1000px; margin: 0 auto; display: flex; align-items: flex-start; }
	#tokutyo > div > div{width: 480px; margin: 0 0 30px; }
	#tokutyo > div > div:nth-child(even){ margin: 40px 0 0 40px; }
	#tokutyo > div > div h3{ font-size: 2.4rem; font-weight: 700; }
	#tokutyo > div > div p{  font-size: 1.6rem;}
}
.kadai.animation  { animation: kadai 3s forwards; }
@keyframes kadai{
	0%{opacity: 0;}
  100%{ opacity: 1;}
}

#section04{ padding: 120px 10px 50px; background: #fff1a5 ;}

#gyosyu_icon { width: 355px; margin: 0 auto 140px; display: flex; flex-wrap: wrap; justify-content: center;}
#gyosyu_icon > li { width: 60px; margin: 5px 5px 0; }
#gyosyu_icon > li img { width: 100%; height: auto; }
@media screen and (min-width:980px), print {
	#gyosyu_icon { width: 944px; }
	#gyosyu_icon > li { width: 96px; margin: 0 10px 0 0; }
	#gyosyu_icon > li:last-of-type{margin: 0;}
}
.gyosyu_icon02{ margin: 0 auto ; display: flex; flex-wrap: wrap; justify-content: center;}


#slider_wrap{ display: none;}
@media screen and (min-width:980px), print {
	#slider_wrap{ width: 1000px; margin: 0 auto 40px; overflow: hidden; display: block;}
}

.slider-nav{margin: 0 0 20px;}
.slider-nav .slick-list{ padding: 0 0 20px !important;}

#slide_btn01,#slide_btn02,#slide_btn03{font-weight:700; text-align: center;font-size: 1.2rem;  border-radius: 10px; padding: 10px; position: relative}
@media screen and (min-width:980px), print {
	#slide_btn01,#slide_btn02,#slide_btn03{font-size: 2.2rem; }
}
#slide_btn01{border:2px solid #2bb738; color: #2bb738;}
#slide_btn02{border:2px solid #9c4591; color: #9c4591;}
#slide_btn03{border:2px solid #ff9600; color: #ff9600;}

#slide_btn01.slick-current{color: #fff; background: #2bb738;}
#slide_btn02.slick-current{color: #fff; background: #9c4591;}
#slide_btn03.slick-current{color: #fff; background: #ff9600;}

#slide_btn01.slick-current:before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #2bb738 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%; }
#slide_btn02.slick-current:before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #9c4591 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%;}
#slide_btn03.slick-current:before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #ff9600 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%;}

.slider{ width: 900px; margin: 0 auto;}
.slider .slick-slide{ height: 450px;}

.slick-slide{  margin: 0 20px; background: #fff;}

.slide_01_content, .slide_02_content, .slide_03_content{ padding: 20px; border-radius: 10px; box-sizing: border-box;}

.slide_01_content{border: 5px solid #2bb738;}
.slide_02_content{border: 5px solid #9c4591;}
.slide_03_content{border: 5px solid #ff9600;}
.slide_01_content .img img { width: 100%; height: auto; }
.img td { padding: 5px; }
.img td {text-align: center;}
.img th {font-weight: 700;}
.slide_02_content .img, .slide_03_content .img{ width: 200px; margin: 0 auto;}

.slide_01_content .gyosyu_icon02{ width: 705px;}
.slide_01_content .img{ width:600px ; margin: 0 auto 20px;}
.slide_02_content .gyosyu_icon02{ width: 600px;}
.slide_02_content .img{ width:400px ; margin: 0 auto 20px; text-align: center;}
.slide_02_content img{display: inline-block !important;}
.slide_03_content .gyosyu_icon02{ width: 600px;}
.slide_03_content .img{ width:200px ; margin: 0 auto 20px;}

.gyosyu_icon02 { width: 265px; flex-wrap: wrap;}
.gyosyu_icon02 li { width: 25%;  margin: 0 5px 5px;}
.gyosyu_icon02 li img{ width: 100%; height: auto; max-width: 100px;}
@media screen and (min-width:980px), print {
	.gyosyu_icon02 li { width: 90px;  }
	.gyosyu_icon02 li img{ width: 90px; height: auto;}
}

@media screen and (min-width:980px), print {
	#tab{display: none}
}

#tab { width: 100%; margin: 0 auto 30px; }
@media screen and (min-width:980px), print {
	#tab { width: 1000px; }
}
.tab_btn {  width: 100%; margin: 0 2% 20px 0; padding: 2%; font-size: 4.6vw; color: #ffbc06; background:#fff; line-height: 1; text-align: center; font-weight: 700; border-radius: 10px; border: 2px solid #ffbc06; cursor: pointer; display: block; float: left;}
@media screen and (min-width:980px), print {
	.tab_btn { width: 320px;  margin: 0 5px 15px; font-size: 2.2rem; }
}

#tab_01 + .tab_btn{color: #2bb738; border: 2px solid #2bb738;}
#tab_02 + .tab_btn{color: #9c4591; border: 2px solid #9c4591}
#tab_03 + .tab_btn {color: #ff9600; border: 2px solid #ff9600}

input[name="tab_item"] { display: none; }

/*繧ｿ繝門?繧頑崛縺医?荳ｭ霄ｫ縺ｮ繧ｹ繧ｿ繧､繝ｫ*/
.tab_content { display: none; padding: 20px 20px 30px; clear: both; overflow: hidden; }

#tab_01:checked ~ #tab_01_content,
#tab_02:checked ~ #tab_02_content,
#tab_03:checked ~ #tab_03_content {display: block;}
#tab input:checked + .tab_btn {color: #fff; position: relative;}

#tab_01:checked + .tab_btn{background: #2bb738; border: 2px solid #2bb738;}
#tab_02:checked + .tab_btn{background: #9c4591; border: 2px solid #9c4591}
#tab_03:checked + .tab_btn {background: #ff9600; border: 2px solid #ff9600}

#tab_01:checked + .tab_btn:before{ content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #2bb738 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%;}
#tab_02:checked + .tab_btn:before{ content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #9c4591 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%;}
#tab_03:checked + .tab_btn:before{ content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 16px 10px 0 10px; border-color: #ff9600 transparent transparent transparent; position: absolute; bottom: -15px; left: 45%;}

#tab_01_content, #tab_02_content, #tab_03_content{ background: #fff; border-radius: 10px;}
#tab_01_content{border: 5px solid #2bb738;}
#tab_02_content{border: 5px solid #9c4591;}
#tab_03_content{border: 5px solid #ff9600;}
#tab_01_content .img{ width:270px ; margin: 0 auto 20px;}
#tab_02_content .img{ width: 260px; margin: 0 auto;}
#tab_03_content .img{ width: 200px; margin: 0 auto;}
#tab_02_content .img, #tab_03_content .img{ margin: 0 auto 20px !important;}
#tab_01_content .img img { width: 95px; height: auto; }
#tab_01_content .img td { padding: 3px; }
.img th { font-weight: 700; font-size: 1.2rem;}

#section05{ margin: 0 0 90px; padding: 120px 0 76px; background: #fff1a5 ;}
@media screen and (min-width:980px), print {
	#section05{ margin: 0 0 150px; }
}

.voice_link{margin: 0 0 20px;}
.voice_link a{width: 90%; margin: 0 auto; padding: 0 0 8em; background: #fff; text-decoration: none; display: block; border: 5px solid #FFC102; color: #000; position: relative;}
.voice_link a ul{ width: 100%; margin: 0 0 1em; padding: 1em 1em .8em .5em; background-image: linear-gradient(90deg, rgba(255,193,2,0.5), rgba(255, 255, 255, 0));}
.voice_link a ul li{color: #000; font-weight: 400; margin: 0 0 .5em 1.5em; position: relative; text-align: left;}
.voice_link a ul li:last-of-type{margin: 0 0 0 1.5em;}
.voice_link a ul li::before{content: ''; width: 15px; height: 10px; border-left: 2px solid #000; border-bottom: 2px solid #000; transform: rotate(-45deg); display: block; position: absolute; left: -1.3em; top: 0;}
.voice_link a .txt01, .voice_link a .txt03{color: #203864;}
.voice_link a .txt02{font-weight: 400;}
.voice_link a .txt01, .voice_link a .txt03, .voice_link a .txt04{ font-weight: 700;}
.voice_link a .txt01{margin: 0 25px .4em 25px; font-size: 2.0rem; line-height: 1;}
.voice_link a .txt02{margin: 0 25px .5em 25px; font-size: 1.6rem; line-height: 1.2;}
.voice_link a .txt03{margin: 0 25px 1em 25px; font-size: 1.6rem; line-height: 1;}
.voice_link a .txt04{ padding: 7px 14px; background: #fe5e9b; display: inline-block; position: absolute; left: 25px; bottom: 85px; font-size: 1.4rem; color: #fff;}
@media screen and (min-width:768px), print {
	.voice_link a{ padding: 0 0 16em; }
}
@media screen and (min-width:980px), print {
	.voice_link a{ width: 1000px; height: 200px; padding: 20px 0 185px 20px !important; }
	.voice_link a ul{ margin: 0 0 15px; }
	.voice_link a ul li { font-size: 1.6rem; }
	.voice_link a .txt01{ margin: 0 0 .4em 0; font-size: 2.4rem; }
	.voice_link a .txt02{ margin: 0 0 .5em 0; }
	.voice_link a .txt03{ margin: 0 0 1em 0; font-size: 1.2rem; }
	.voice_link a .txt04{ bottom: 15px; left: auto; right: 15px; }
}

.voice_linkbk01 a{background: url(../images/bnr_voice_sp01.jpg) no-repeat #fff bottom 0 right 0; background-size: contain;}
.voice_linkbk02 a{background: url(../images/bnr_voice_sp02.jpg) no-repeat #fff bottom 0 right 0; background-size: contain;}
@media screen and (min-width:980px), print {
	.voice_linkbk01 a{background: url(../images/bnr_voice_pc01.jpg) no-repeat #fff bottom 0 right 0; background-size: contain;}
	.voice_linkbk02 a{background: url(../images/bnr_voice_pc02.jpg) no-repeat #fff bottom 0 right 0; background-size: contain;}
}

#section11 { padding-top: 90px; }
dl#qa{ width: 90%; margin: 0 auto; padding: 0; background: #ddd ;}
dl#qa dt{ padding: 15px 40px 15px 2em; border-top: 3px solid #fff; position: relative; cursor: pointer; font-size: 1.8rem; text-indent: -1em; font-weight: 700; text-align: left; }
dl#qa dt:before{ content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 15px 7.5px 0 7.5px; border-color: #000 transparent transparent transparent; position: absolute; right: 20px; top: 20px;}

dl#qa dd { padding: 0 20px 20px; display: none;}
dl#qa dd div{padding: 20px; background: #fff; border-radius: 10px; }
dl#qa dd div p {font-size: 1.6rem;}

@media screen and (min-width:980px), print {
	dl#qa{ width: 1000px;}
	dl#qa dd { width: 95%;}
}

#price { margin: 0 10px 150px; }
#price h3 { font-size: 16px; font-weight: bold; margin-bottom: 15px; }
#price_plan { display: flex; align-items: center; flex-direction: column; margin: 0 10px 20px; }
.price_plan_box { border: 2px solid #FFBC06; border-radius: 5px; position: relative; display: flex; flex-direction: column; justify-content: center; }
.price_plan_box::after { content: ""; background: url(../images/icon_plus.svg), #FFBC06; background-position: center; background-repeat: no-repeat; background-size: 18px, 100%; border-radius: 100%; width: 33px; height: 33px; position: absolute; right: 0; left: 0; bottom: -24px; margin: auto; z-index: 1; }
.price_plan_box:not(:last-child) { margin-bottom: 12px; }
.price_plan_box:last-child::after { content: none; }
.price_plan_init{ padding: 18px 23px }
.price_plan_init p, .price_plan_init span { font-weight: bold; line-height: 1; }
.price_plan_init_txt { font-size: 10px; white-space: nowrap; }
.price_plan_init_num { font-size: 30px; margin-left: 5px; }
.price_plan_init_unit { font-size: 15px; }
.price_plan_monthly { padding: 9px 12px 11px 8px; }
.price_plan_monthly_ttl { font-weight: bold; font-size: 9px; line-height: 1; margin-bottom: 4px; margin-left: 5px; }
.price_plan_monthly_plan { display: flex; align-items: stretch; }
.price_plan_monthly_plan > * { display: flex; flex-direction: column; justify-content: center; }
.price_plan_monthly_plus { font-weight: bold; line-height: 1; font-size: 12px; margin: 0 3px; }
.price_plan_monthly_plan_box { background-color: #FFE03A; border-radius: 5px; padding: 7px 8px 7px 10px; }
.price_plan_monthly_plan_box p, .price_plan_monthly_plan_box span { font-size: 10px; white-space: nowrap; }
.price_plan_monthly_plan_box span.price_plan_monthly_num { font-size: 14px; }
.price_plan_monthly_plan_box span.price_plan_monthly_unit { font-size: 10px; }
.price_plan_monthly_plan_box p:has(span.price_plan_monthly_sub) { font-size: 14px; font-weight: bold; }
.price_plan_monthly_plan_box span.price_plan_monthly_sub { font-size: 12px; font-weight: bold; }
@media screen and (min-width:980px), print {
	#price { margin: 0 auto 150px; width: 1000px; }
	#price h3 { font-size: 24px; margin-bottom: 28px; }
	#price_plan { align-items: stretch; flex-direction: row; margin: 0 0 76px; }
	.price_plan_box { border: 4px solid #FFBC06; border-radius: 10px; }
	.price_plan_box:not(:last-child) { margin-bottom: 0; margin-right: 34px; }
	.price_plan_box::after { background-size: 30px, 100%; width: 66px; height: 66px; position: absolute; top: 0; bottom: 0; right: -53px; left: initial; margin: auto; z-index: 1; }
	.price_plan_init{ padding: 26px 36px;}
	.price_plan_init_txt { font-size: 18px; }
	.price_plan_init_num { font-size: 50px; }
	.price_plan_init_unit { font-size: 24px; }
	.price_plan_monthly { padding: 13px 24px 16px 26px; }
	.price_plan_monthly_ttl { font-size: 18px; line-height: 1.5; margin-bottom: 9px; margin-left: 0; }
	.price_plan_monthly_plus { font-size: 24px; margin: 0 8px; }
	.price_plan_monthly_plan_box { border-radius: 10px; padding: 11px 16px 10px 20px; }
	.price_plan_monthly_plan_box p, .price_plan_monthly_plan_box span { font-size: 16px; }
	.price_plan_monthly_plan_box span.price_plan_monthly_num { font-size: 28px; }
	.price_plan_monthly_plan_box span.price_plan_monthly_unit { font-size: 16px }
	.price_plan_monthly_plan_box p:has(span.price_plan_monthly_sub) { font-size: 15px; }
	.price_plan_monthly_plan_box span.price_plan_monthly_sub { font-size: 14px; }
}
.price_example { display: flex; flex-wrap: wrap; margin: 15px auto 20px; gap: 0 6px; }
.price_example_label { padding: 7px 4px; order: -1; position: relative; z-index: 1; cursor: pointer; border-radius: 5px; border: 1px solid; display: flex; justify-content: center; align-items: center; margin-bottom: 15px; width: calc(50% - 3px); font-size: 16px; font-weight: bold; text-align: center; }
#price_example_tab-01+.price_example_label { color: #2BB738; border-color: #2BB738; }
#price_example_tab-02+.price_example_label { color: #9C4591; border-color: #9C4591; }
#price_example_tab-03+.price_example_label { color: #FF9600; border-color: #FF9600; }
#price_example_tab-04+.price_example_label { color: #FF5193; border-color: #FF5193; }
#price_example_tab-05+.price_example_label { color: #0E9EC0; border-color: #0E9EC0; }
.price_example_body { width: 100%; height: 0; overflow: hidden; opacity: 0; }
#price_example_tab-01:checked+.price_example_label { background: #2BB738; }
#price_example_tab-02:checked+.price_example_label { background: #9C4591; }
#price_example_tab-03:checked+.price_example_label { background: #FF9600; }
#price_example_tab-04:checked+.price_example_label { background: #FF5193; }
#price_example_tab-05:checked+.price_example_label { background: #0E9EC0; }
#price_example_tab-01:checked+.price_example_label::after { border-top: 8px solid #2BB738; }
#price_example_tab-02:checked+.price_example_label::after { border-top: 8px solid #9C4591; }
#price_example_tab-03:checked+.price_example_label::after { border-top: 8px solid #FF9600; }
#price_example_tab-04:checked+.price_example_label::after { border-top: 8px solid #FF5193; }
#price_example_tab-05:checked+.price_example_label::after { border-top: 8px solid #0E9EC0; }
.price_example_tab:checked+.price_example_label::after { content: ""; border-top: 8px solid #2BB738; border-left: 6px solid transparent; border-right: 6px solid transparent; position: absolute; bottom: -8px; }
.price_example_tab:checked+.price_example_label { color: White!important; }
.price_example_tab:checked+.price_example_label+.price_example_body { height: auto; overflow: auto; padding: 13px 3px; opacity: 1; transition: .5s opacity; border: 2px solid #DDDDDD; border-radius: 5px; }
.price_example_tab { display: none; }
.price_example_body_contents .price_example_body_contents_heading { font-size: 15px; line-height: 1; background-color: #DDDDDD; padding: 4px 10px 5px; }
.price_example_body_contents dl { display: flex; flex-wrap: wrap; width: 100%; }
.price_example_body_contents dt, .price_example_body_contents dd { border-bottom: 1px solid #DDDDDD; padding: 10px 20px; }
.price_example_body_contents dt { width: 70%; padding: 7px 0 7px 22px; display: flex; flex-direction: column; justify-content: center; line-height: 1.5; text-indent: -1em; }
.price_example_body_contents dt .price_example_body_contents_ttl p { font-size: 16px; font-weight: bold; text-align: left; }
.price_example_body_contents dt .price_example_body_contents_tag { margin: 8px 0 0 8px; }
.price_example_body_contents dt .price_example_body_contents_tag p { display: inline; font-size: 14px; color: #35588B; border: 2px solid #35588B; border-radius: 30px; background-color: #fff; padding: 2px 13px 1px; white-space: nowrap; }
.price_example_body_contents dd { width: 50%; text-align: right; font-size: 12px; font-weight: bold; padding: 10px 20px 10px 0; display: flex; align-items: center; justify-content: end; padding-right: 10px; }
.price_example_body_contents dd span { font-size: 12px; font-weight: bold; }
.price_example_body_contents+.price_example_body_contents { margin-top: 24px; }
.price_example_body_contents_caption { font-size: 15px; text-align: left; margin: 12px 10px 0 0; }
.price_example_body_notes { margin-top: 16px; margin-bottom: 0; width: 100%; }
.price_example_body_lead { margin-bottom: 6px; font-size: 24px; font-weight: bold; text-align: center; color: #FF5293; }
@media screen and (min-width:980px), print {
	.price_example { display: flex; flex-wrap: wrap; margin: 20px auto 56px; gap: inherit; }
	.price_example_label { padding: 10px .5em; order: -1; position: relative; z-index: 1; cursor: pointer; border-radius: 10px; flex: 1; border: 2px solid; display: flex; justify-content: center; align-items: center; margin-bottom: 20px; }
	.price_example_label:not(:last-of-type) { margin-right: 12px; }
	#price_example_tab-02:checked+.price_example_label::after { border-top: 12px solid #9C4591; }
	#price_example_tab-01:checked+.price_example_label::after { border-top: 12px solid #2BB738; }
	#price_example_tab-03:checked+.price_example_label::after { border-top: 12px solid #FF9600; }
	#price_example_tab-04:checked+.price_example_label::after { border-top: 12px solid #FF5193; }
	#price_example_tab-05:checked+.price_example_label::after { border-top: 12px solid #0E9EC0; }
	.price_example_tab:checked+.price_example_label::after { border-top: 12px solid #2BB738; border-left: 8px solid transparent; border-right: 8px solid transparent; bottom: -12px; }
	.price_example_tab:checked+.price_example_label+.price_example_body { padding: 36px 46px 36px 46px; border: 4px solid #DDDDDD; border-radius: 10px; }
	.price_example_body_contents .price_example_body_contents_heading { font-size: 16px; padding: 18px 20px; }
	.price_example_body_contents dt { width: 78%; padding: 10px 20px 10px 40px; flex-direction: inherit; align-items: center; justify-content: inherit; }
	.price_example_body_contents dt .price_example_body_contents_ttl { width: 61%; padding-right: 25px; }
	.price_example_body_contents dt .price_example_body_contents_ttl p { font-size: 21px; line-height: 1.5; }
	.price_example_body_contents dt .price_example_body_contents_tag { width: 39%; margin: 0; }
	.price_example_body_contents dt .price_example_body_contents_tag p { padding: 4px 15px 6px; }
	.price_example_body_contents dd { width: 22%; font-size: 20px; padding: 10px 20px 10px 0; }
	.price_example_body_contents dd span { font-size: 16px; }
	.price_example_body_contents_caption { margin-right: 20px; }
	.price_example_body_notes { margin-top: 30px; }
	.price_example_body_lead { margin-bottom: 30px; font-size: 30px; }
}

#price_comparison { margin: 0 10px 150px; }
.price_comparison_lead { font-size: 24px; font-weight: bold; color: #FF5293; text-align: center; }
.price_comparison_img { margin-top: 20px; }
.price_comparison_img img { width: 100%; height: auto; }
@media screen and (min-width:980px), print {
	#price_comparison { margin: 0 auto 150px; width: 1000px; }
	.price_comparison_lead { font-size: 30px; }
	.price_comparison_img { max-width: 780px; margin: auto; margin-top: 33px; }
}

#section08 { position: relative; padding-top: 40px; }
#section08::before { content: ""; position: absolute; width: 100%; height: 224px; top: 0; right: 0; left: 0; margin: auto; background: linear-gradient(rgba(238,238,238,1) 0%, #ffffff 100%, rgba(0,212,255,1) 100%); }
#section08 h2 { padding-top: 50px; }
#section08 h2::before { top: 0; }
@media screen and (min-width:980px), print {
	#section08 { padding-top: 83px; }
}

#flow { margin: 0 10px 76px; }
.flow_section { counter-increment: number 1;  position: relative; padding-bottom: 60px; }
.flow_section::before { content: ""; position: absolute; bottom: 15px; right: 0; left: 0; margin: auto; width: 0; height: 0; border-style: solid; border-right: 22px solid transparent; border-left: 22px solid transparent; border-top: 25px solid #FCD979; border-bottom: 0; }
.flow_section:last-child { padding: 0; }
.flow_section:last-child::before { content: none; }
.flow_ttl { margin-bottom: 24px; background-color: #FCD979; border-radius: 40px 8px 8px 40px; padding: 14px 13px 13px 70px; }
.flow_ttl::before { content: counter(number); position: absolute; left: -4px; top: -4px; font-size: 20px; font-weight: bold; background-color: #FCD979; border-radius: 50%; height: 60px; width: 60px; display: flex; justify-content: center; align-items: center; border: 4px solid #fff; }
.flow_ttl h3 { font-size: 20px; font-weight: bold; }
.flow_ttl p { font-size: 15px; color: #FE5292; font-weight: bold; }
.flow_cards { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 20px 0; }
.flow_cards_item { width: 100%; background-color: #F3F3F3; border-radius: 8px; padding: 15px 20px 24px; }
.flow_cards_item_icon { display: flex; justify-content: center; margin-bottom: 20px; }
.flow_cards_ttl { font-size: 24px; font-weight: bold; text-align: center; margin-bottom: 12px; }
.flow_cards_item p { font-size: 16px; }
.flow_cards_item_link { margin: 17px auto 0; display: flex; justify-content: center; }
.flow_cards_item_link a { font-size: 16px; font-weight: bold; text-align: center; color: #111111; text-decoration: none; padding-right: 18px; position: relative; }
.flow_cards_item_link a::after { content: ""; background: url(../images/icon_arrow.svg) no-repeat 100%; width: 6px; height: 12px; position: absolute; right: 0; top: 2px; }
.flow_cards_item_tel { display: flex; align-items: center; justify-content: center; margin-top: 13px; }
.flow_cards_item_tel p { position: relative; padding-left: 26px; margin-right: 16px; }
.flow_cards_item_tel p::before { content: ""; background: url(../images/icon_tel.svg) no-repeat 100%; width: 20px; height: 20px; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; }
.flow_cards_item_tel a { text-decoration: none; }
.flow_cards_item_tel a, .flow_cards_item_tel p { color: #111111; font-size: 16px; font-weight: bold; }
.flow_cards_item_notes { margin-top: 13px; }
.flow_cards_item_notes li { font-size: 12px; color: #666666; padding-left: 12px; text-indent: -1em;	margin-left: 1em; }
.flow_cards_item_notes li::before { content: "窶ｻ"; }
.flow_btn { margin-top: 16px; }
.flow_btn a { font-size: 16px; font-weight: bold; text-align: center; padding: 15px 15px 14px; background-color: #FFE138; border-radius: 60px; color: #111111; text-decoration: none; display: block; }
@media screen and (min-width:980px), print {
	#flow { margin: 0 auto 150px; width: 1000px; }
	.flow_section { padding-bottom: 55px; }
	.flow_section::before { bottom: 15px; }
	.flow_section:last-child{ padding-bottom: 0; }
	.flow_section:last-child::before { content: none; }
	.flow_ttl { display: flex; align-items: center; margin-bottom: 30px; min-height: 70px; padding: 20px 20px 18px 94px; }
	.flow_ttl::before { font-size: 24px; height: 78px; width: 78px; }
	.flow_ttl h3 { font-size: 24px; }
	.flow_ttl p { font-size: 18px; }
	.flow_cards { margin-top: 26px; gap: 20px 30px; }
	.flow_cards_item { width: calc(50% - 15px); padding: 15px 20px 28px; }
	.flow_cards_item_icon { margin-bottom: 16px; }
	.flow_cards_ttl { font-size: 24px;  margin-bottom: 20px; }
	.flow_btn a { padding: 11px 30px 10px; display: inline-block; }
}

#section09 { background-color: #FFF6C9; position: relative; }
#workshop { background-color: #FFF6C9; margin: 0 auto; padding: 114px 10px 57px; }
.workshop_text { font-size: 16px; }
.workshop_recommend { margin-top: 26px; background-color: #FFF6C9; border-radius: 10px; padding: 26px 10px 30px; }
.workshop_recommend_title { padding-bottom: 10px; margin-bottom: 30px; display: flex; justify-content: center; }
.workshop_recommend_title h3 { position: relative; font-size: 24px; font-weight: bold; text-align: center; display: inline-block; }
.workshop_recommend_title h3::after { content: ""; width: 260px; height: 8px; border-radius: 10px; background-color: #FF9600; position: absolute; bottom: -10px; right: 0; left: -10px; margin: auto; }
.workshop_recommend_bubble p { display: block; text-align: center; font-size: 18px; background-color: #fff; border: 2px solid #FF9601; border-radius: 10px; padding: 12px; margin-bottom: 19px; position: relative; }
.workshop_recommend_bubble p:last-child { margin-bottom: 11px; }
.workshop_recommend_bubble { position: relative; }
.workshop_recommend_bubble:last-child p:last-child { margin-bottom: 0; }
.workshop_recommend_bubble:last-child p::after, .workshop_recommend_bubble:last-child p::before { border: solid transparent; content:''; height: 0; width: 0; pointer-events: none; position: absolute; bottom: 100%; }
.workshop_recommend_bubble:last-child p::after { border-color: rgba(247, 221, 51, 0); border-top-width: 9px; border-bottom-width: 9px; border-left-width: 7px; border-right-width: 7px; margin-left: -7px; border-bottom-color:#fff; right: 17px; }
.workshop_recommend_bubble:last-child p::before { border-color: rgba(30, 144, 255, 0); border-top-width: 11px; border-bottom-width: 11px; border-left-width: 9px; border-right-width: 9px; margin-left: -9px; margin-bottom: 1px; border-bottom-color:#FF9601; right: 15px; }
.workshop_recommend_bubble:last-child p:last-child:after { left: 25px; right: inherit; }
.workshop_recommend_bubble:last-child p:last-child:before { left: 25px; right: inherit; }
.workshop_recommend_bubble:first-child p::after, .workshop_recommend_bubble:first-child p::before { border: solid transparent; content:''; height: 0; width: 0; pointer-events: none; position: absolute; top: 100%; }
.workshop_recommend_bubble:first-child p::after { border-color: rgba(247, 221, 51, 0);  border-top-width: 9px; border-bottom-width: 9px; border-left-width: 7px; border-right-width: 7px; margin-left: -7px; border-top-color:#fff; right: 17px; }
.workshop_recommend_bubble:first-child p::before { border-color: rgba(30, 144, 255, 0);border-top-width: 11px; border-bottom-width: 11px; border-left-width: 9px; border-right-width: 9px; margin-left: -9px; margin-top: 1px; border-top-color:#FF9601; right: 15px; }
.workshop_recommend_bubble:first-child p:last-child:after { left: 25px; right: inherit; }
.workshop_recommend_bubble:first-child p:last-child:before { left: 25px; right: inherit; }
.workshop_recommend_image { width: 97px; margin: 0 auto 12px; }
.workshop_recommend_image img { width: 100%; height: auto; }
.workshop_summary { margin-top: 47px; }
.workshop_summary h3 { font-size: 20px; font-weight: bold; text-align: center; margin-bottom: 17px; }
.workshop_summary_flow { background-color: #FFF; border-radius: 10px; padding: 20px 10px 16px; }
.workshop_summary_flow_item { position: relative; padding-bottom: 40px; }
.workshop_summary_flow_item:last-child { padding-bottom: 0; }
.workshop_summary_flow_item::after { content: ""; background: url(../images/workshop_flow_arrow.png) no-repeat; background-size: 100% auto; position: absolute; bottom: 10px; right: 0; left: 0; margin: auto; width: 18px; height: 24px; transform: rotate(90deg); }
.workshop_summary_flow_item:last-child::after { content: none; }
.workshop_summary_flow_item p { font-size: 16px; text-align: center; }
.workshop_summary_detail { margin-top: 27px; display: flex; justify-content: center; align-items: center; flex-direction: column; align-items: baseline; }
.workshop_summary_detail_item { display: flex; align-items: start; margin-bottom: 14px; }
.workshop_summary_detail_item:last-child { margin-bottom: 0; }
.workshop_summary_detail_item p { font-size: 16px; line-height: 1.4; white-space: nowrap; }
.workshop_summary_detail_item p:first-child { font-size: 18px; font-weight: bold; padding-left: 26px; margin-right: 20px; }
.workshop_summary_detail_item_time { background: url(../images/workshop_icon_time.png) no-repeat; background-position: left center; background-size: 16px auto; }
.workshop_summary_detail_item_format { background: url(../images/workshop_icon_format.png) no-repeat; background-position: left center; background-size: 16px auto; }
.workshop_summary_detail_item_fee { background: url(../images/workshop_icon_fee.png) no-repeat; background-position: left center; background-size: 16px auto; }
.workshop_summary_detail_item_date { background: url(../images/workshop_icon_calendar.png) no-repeat; background-position: left center; background-size: 18px auto; }
.workshop_btn { margin: 40px auto 0; display: flex; justify-content: center; }
.workshop_btn a { font-size:16px; text-align: center; font-weight: bold; color: #111111; padding: 16px 20px; background-color: #FFE138; border-radius: 60px; text-decoration: none; line-height: 1;}
@media screen and (min-width:980px), print {
	#workshop{ width: 1000px; padding: 90px 40px 57px; }
	.workshop_recommend { padding: 26px 20px 0; }
	.workshop_recommend_title { margin-bottom: 40px; }
	.workshop_recommend_contents { display: flex; justify-content: center; }
	.workshop_recommend_bubble p { text-align: left; padding: 20px 14px; width: 362px; margin-bottom: 24px; }
	.workshop_recommend_bubble p:last-child { margin-bottom: 32px; }
	.workshop_recommend_bubble:last-child p::after, .workshop_recommend_bubble:last-child p::before { right: 100%; top: 50%; }
	.workshop_recommend_bubble:last-child p::after { border-color: rgba(247, 221, 51, 0); border-top-width: 8px; border-bottom-width: 8px; border-left-width: 10px; border-right-width: 10px; margin-top: -8px; border-right-color:#fff; top: calc(50% + 1px);}
	.workshop_recommend_bubble:last-child p::before { border-color: rgba(30, 144, 255, 0); border-top-width: 10px; border-bottom-width: 10px; border-left-width: 12px; border-right-width: 12px; margin-top: -9px; margin-right: 1px; border-right-color:#FF9601; }
	.workshop_recommend_bubble:last-child p:last-child::after { right: 100%; left: inherit; }
	.workshop_recommend_bubble:last-child p:last-child::before { right: 100%; left: inherit; }
	.workshop_recommend_bubble:first-child p::after, .workshop_recommend_bubble:first-child p::before { left: 100%; top: 50%; }
	.workshop_recommend_bubble:first-child p::after { border-color: rgba(247, 221, 51, 0); border-top-width: 8px; border-bottom-width: 8px; border-left-width: 10px; border-right-width: 10px; margin-top: -8px; border-left-color:#fff; top: calc(50% + 1px); left: calc(100% + 7px); }
	.workshop_recommend_bubble:first-child p::before { border-color: rgba(30, 144, 255, 0); border-top-width: 10px; border-bottom-width: 10px; border-left-width: 12px; border-right-width: 12px; margin-top: -9px; margin-left: 1px; border-left-color:#FF9601; }
	.workshop_recommend_bubble:first-child p:last-child::after { left: calc(100% + 7px); right: inherit; }
	.workshop_recommend_bubble:first-child p:last-child::before { left: 100%; right: inherit; }
	.workshop_recommend_image { width: 135px; padding: 0 19px; margin: auto 0 0; }
	.workshop_summary { margin-top: 37px; }
	.workshop_summary_flow { padding: 20px 29px 16px; display: flex; align-items: center; justify-content: space-between; }
	.workshop_summary_flow_item { position: relative; padding: 0 46px 0 0; }
	.workshop_summary_flow_item:last-child { padding: 0; }
	.workshop_summary_flow_item p { text-align: left; }
	.workshop_summary_flow_item::after { bottom: 0; top: 0; right: 10px; left: inherit; width: 18px; height: 24px; transform: rotate(0deg); }
	.workshop_summary_detail { margin-top: 47px; flex-direction: row; }
	.workshop_summary_detail_item { margin: 0 80px 0 0; }
	.workshop_summary_detail_item:last-child { margin: 0; }
	.workshop_btn a { padding: 16px; min-width: 400px; }
}

#support { width: 90%; margin: 0 auto 70px; padding: 120px 10px 0; }
.support_contents_item { margin-bottom: 20px; width: 100%; }
.support_contents_item:last-child { margin: 0; }
.support_contents_item_image { margin-bottom: 24px; }
.support_contents_item_image img { width: 100%; height: auto; }
.support_contents_item_title { margin-bottom: 10px; }
.support_contents_item_title p { font-size: 18px; font-weight: bold; }
.support_contents_item_text p { font-size: 16px; }
@media screen and (min-width:980px), print {
	#support { width: 1000px; padding: 120px 0 0; }
	.support_contents { display: flex; }
	.support_contents_item { margin: 0 50px 0 0; width: 300px; }
}

#info{ width: 90%; margin: 0 auto 150px; padding-top: 120px; }
.info_list_item { display: flex; flex-direction: column; position: relative; padding-bottom: 17px; margin-bottom: 16px; }
.info_list_item::after { content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; width: 100%; height: 1px; background-image : linear-gradient(to right, #CCCCCC, #CCCCCC 4px, transparent 4px, transparent 8px); background-size: 8px 1px; background-position: left bottom; background-repeat: repeat-x; }
.info_list_item:last-child { padding-bottom: 0; margin-bottom: 0; }
.info_list_item:last-child::after { content: none; }
.info_list_item_head { display: flex; align-items: center; margin-bottom: 17px; }
.info_list_item_date { width: 155px; margin-right: 16px; }
.info_list_item_date p { font-size: 16px; font-weight: bold; }
.info_list_item_tag { border: 2px solid #111111; border-radius: 100px; padding: 8px 17px 9px 16px; }
.info_list_item_tag p { font-size: 14px; line-height: 1; }
.info_list_item_link a { font-size: 16px; text-decoration: underline; color: #000000; line-height: 26px; }
#info .note01 { margin-top: 50px; padding: 0 1em; }
@media screen and (min-width:980px), print {
	#info{ width: 1000px; padding-top: 168px; }
	.info_list_item { flex-direction: row; align-items: baseline;}
	.info_list_item_head { width: 400px; margin: 0 17px 0 0; }
	.info_list_item_date { width: 160px;}
	.info_list_item_link { width: 830px; margin-top: 6px; display: block;}

	.info_list .chosei01 { height: 80px ; }
	.info_list .chosei01 .info_list_item_head { height: 50px; }
	.info_list .chosei01 .info_list_item_link { height: 50px; margin-top: 0; vertical-align: bottom; }	
	.info_list .chosei01 .info_list_item_link a { height: 50px; margin-top: 0 !important; line-height: 50px;  display: block;}
}
#info h3 { margin:70px 0 20px; border-bottom: 1px solid #000; font-size: 2.5rem; font-weight: 700;}
#campaign{width: 90%; margin: 80px auto 150px; padding-top: 80px;}
#campaign p, #campaign ul li{font-size: 1.5rem;}
#campaign div{ margin: 0 auto 2em;}
#campaign h3 { margin:0 0 .5em; padding: 0 0 0 1.3em; font-size: 2.2rem; font-weight: 700; position: relative;}
#campaign h3::before{ width: 1em; height: 1em; content: ""; display: block; background: #000; position: absolute; left: 0; top: 0;}
#campaign .note01{margin: 0 0 .5em;}
@media screen and (min-width:980px), print {
	#campaign{ width: 550px; }
}

#apply{ padding: 90px 20px 5px; background: #151515; color: #fff; position: relative}
#apply h3{ margin: 0 0 20px; font-weight: 700; text-align: center; font-size: 2.5rem;}

.apply01, .apply02 {text-align: center;}
.apply01 a, .apply02 a{ width: 90%; padding: 1em; font-size: 1.5rem; color: #000; text-decoration: none; font-weight: 700; display: inline-block; border-radius: 80px;}
.apply01 a{ background: #ffe138; border: 4px solid #ffe138; }
.apply02 a{ background: #fff; border: 4px solid #ffe138; }

#apply > div > div{margin: 0 0 140px;}
#apply > div > div p{margin: 0 0 30px;}


@media screen and (min-width:980px), print {
	#apply > div{ width: 1000px; margin: 0 auto 40px; display: flex; justify-content: space-between; }
	#apply > div:first-of-type{ margin: 0 auto 100px;}
	#apply > div > div{ width: 460px; margin: 0;}
	.apply01 a, .apply02 a{ width: 460px; font-size: 1.6rem;}
}


/*footer{padding: 3% 3% 2%; border-top: 1px solid #c6c6c6;}
footer address{font-size: 1.1rem; font-style: normal; text-align: right;}*/
/*
#logo_footer{margin: 0 0 4%;}
@media screen and (min-width:980px), print {
	footer{padding: 30px 0 30px;}
	footer a:hover img{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
	footer > div{width: 1000px; margin: 0 auto; }
	footer > div > div{display: flex; justify-content: space-between; }


    footer > div:after { content: ""; clear: both; display: block;}
	#logo_footer { margin: 0; display:inline-block;}
    footer address{padding: 8px 0 0;   }
}
*/

.follow_area { width: 100%; box-shadow: 0 -3px 10px rgba(0, 0, 0, 0.08); position: fixed; bottom: 0; left: 0; right: 0; margin: auto; z-index: 10; opacity: 0; transition: opacity 0.2s ease-in-out; pointer-events: none; }
.follow_area.is-show { opacity: 1; pointer-events: inherit; }
.follow_area_ttl { display: none; }
.follow_area_btns { background-color: #fff; display: flex; align-items: center; padding: 15px 10px 10px; gap: 0 15px; }
.follow_area_btns a { color: #111111; text-align: center; background-color: #FFE138; border-radius: 60px; padding: 14px; text-decoration: none; width: 100%; font-size: 14px; font-weight: bold; }
@media screen and (min-width:980px), print {
	.follow_area { display: flex; align-items: center; justify-content: center; height: 92px; }
	.follow_area_ttl { display: flex; justify-content: end; align-items: center; background-color: #FF9601; position: relative; padding: 27px 50px 27px 0; height: 100%; width: 38%; }
	.follow_area_ttl::after { content: ""; position: absolute; right: -25px; width: 26px; height: 100%; clip-path: polygon(0 0, 100% 50%, 0 100%); background-color: #FF9601; }
	.follow_area_ttl p { font-size: 28px; font-weight: bold; color: #fff; }
	.follow_area_btns { justify-content: start; padding: 22px 22px 22px 60px; width: 62%; height: 100%; }
	.follow_area_btns a { padding: 16px 16px 11px; width: 300px; size: 15px; }
}

#btn_pagetop { position: fixed; bottom: 90px; right: 10px; width: 40px; height: 40px; border: none; background: none; display: flex; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.2s ease-in-out; scroll-behavior: smooth; pointer-events: none; }
#btn_pagetop img { width: 200%; height: auto; }
#btn_pagetop.is-show { opacity: 1; pointer-events: inherit; }
@media screen and (min-width:980px), print {
	#btn_pagetop { position: fixed; bottom: 112px; right: 20px; }
	#btn_pagetop.is-show:hover { cursor: pointer; opacity: 0.8; }
}

html{ scroll-behavior: smooth; }