@charset "utf-8";

/*共通枠*/

* {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
	background-color: #fff;
	line-height: 1;
	color: #202020;
}

body.is-menuOpen {
	position: fixed;
	width: 100%;
}

img {
	border:0;
	vertical-align:bottom;
}

*:focus {
	outline: none;
}

a {
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	cursor: pointer;
	text-decoration: none;
}
.nolink {
    pointer-events: none;
}

/* 共通
======================================================*/

.container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.container_form {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.container_wrap {
	padding: 0 60px;
}

@media screen and (max-width: 1200px) {

.container_wrap {
	padding: 0 45px;
}

}

@media screen and (max-width: 599px) {
.container_wrap {
	padding: 0 30px;
}
}

@media screen and (max-width: 359px) {
.container_wrap {
	padding: 0 15px;
}
}

.block1300 { display: none; }
@media screen and (max-width: 1300px) {
.block1300 { display: block; }
}
.block1200 { display: none; }
@media screen and (max-width: 1200px) {
.block1200 { display: block; }
}
.block1100 { display: none; }
@media screen and (max-width: 1100px) {
.block1100 { display: block; }
}
.block1024 { display: none; }
@media screen and (max-width: 1024px) {
.block1024 { display: block; }
}
.block999 { display: none; }
@media screen and (max-width: 999px) {
.block999 { display: block; }
}
.block900 { display: none; }
@media screen and (max-width: 900px) {
.block900 { display: block; }
}
.block800 { display: none; }
@media screen and (max-width: 800px) {
.block800 { display: block; }
}

.block768 { display: none; }
@media screen and (max-width: 768px) {
.block768 { display: block; }
}

.block599 { display: none; }
@media screen and (max-width: 599px) {
.block599 { display: block; }
}

.block374 { display: none; }
@media screen and (max-width: 374px) {
.block374 { display: block; }
}

.block359 { display: none; }
@media screen and (max-width: 359px) {
.block359 { display: block; }
}

@media screen and (max-width: 1300px) {
.none1300 { display: none; }
}

@media screen and (max-width: 1200px) {
.none1200 { display: none; }
}

@media screen and (max-width: 1024px) {
.none1024 { display: none; }
}

@media screen and (max-width: 999px) {
.none999 { display: none; }
}

@media screen and (max-width: 900px) {
.none900 { display: none; }
}

@media screen and (max-width: 800px) {
.none800 { display: none; }
}

@media screen and (max-width: 768px) {
.none768 { display: none; }
}

@media screen and (max-width: 599px) {
.none599 { display: none; }
}

@media screen and (max-width: 374px) {
.none374 { display: none; }
}

.anchor {
	padding-top: 200px;
	margin-top: -200px;
	display: block;
	position: relative;
	z-index: -1;
}

@media screen and (max-width: 1200px) {

.anchor {
	padding-top: 160px;
	margin-top: -160px;
}

}

/* header
======================================================*/

.header {
	width: 100%;
	height: 80px;
	position: fixed;
	top: 60px;
	z-index: 100;
	box-sizing: border-box;
	padding: 0 74px;
}
.header_content {
	width: 100%;
	height: 80px;
	background-color: #fff;
	border-radius: 40px;
	box-shadow: 0px 10px 10px rgba(0,0,0,0.16);
	box-sizing: border-box;
	padding-left: 55px;
}
.header_content_inner {
	position: relative;
}
.header_content h1 {
	width: 136px;
	height: 80px;
}
.header_content h1 a {
	width: 136px;
	height: 80px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	text-align: center;
}
.header_content .header_nav {
	list-style: none;
	width: 800px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: absolute;
	top: 18px;
	right: 43px;
}
.header_content .header_nav a {
	display: block;
	text-align: center;
	height: 45px;
	line-height: 45px;
	color: #222222;
	font-weight: 500;
	font-size: 18px;
	padding: 0 20px;
	transition: color 0.3s;
}
.header_content .header_nav a:hover {
	color: #666666;
}

.header_content .header_nav .header_nav_contact {
	padding: 0 0 0 26px;
}
.header_content .header_nav .header_nav_contact a {
	width: 200px;
	background-color: #222222;
	color: #fff;
	box-sizing: border-box;
	border-radius: 100vh;
	transition: color 0.3s, background-color 0.3s;
}
.header_content .header_nav .header_nav_contact a:hover {
	background-color: #F8EF00;
	color: #222222;
}

.sp_contact {
	display: none;
}

@media screen and (max-width: 1300px) {

.header_content .header_nav {
	width: 754px;
	top: 18px;
	right: 43px;
}
.header_content .header_nav a {
	font-size: 16px;
	padding: 0 20px;
}

}
@media screen and (max-width: 1200px) {

.header_content .header_nav {
	display: none;
}
.header {
	width: 100%;
	height: 65px;
	top: 30px;
	padding: 0 30px;
}
.header_content {
	width: 100%;
	height: 65px;
	border-radius: 32.5px;
	padding-left: 23px;
	transition: height 0.3s;
}
.header_content h1 {
	width: 89px;
	height: 65px;
}
.header_content h1 a {
	width: 89px;
	height: 65px;
}
.header_content h1 a img {
	width: 100%;
	height: auto;
}

.sp_contact {
	display: block;
	width: 45px;
	height: 45px;
	border-radius: 100vh;
	background: url(../img/sp_mail.svg) center center no-repeat;
	background-color: #000000;
	position: absolute;
	top: 10px;
	right: 86px;
}

.header.panelactive {
	width: 100%;
	height: 324px;
}
.header.panelactive .header_content {
	width: 100%;
	height: 324px;
	background-color: #fff;
}
}

@media screen and (max-width: 599px) {

.header {
	padding: 0 15px;
}
.sp_contact {
	right: 86px;
}
}


/* g_nav
======================================================*/

.g_nav,
.openbtn-wrap,
.g_nav_wrap {
	display: none;
}


@media screen and (max-width: 1200px) {

.openbtn-wrap {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 44px;
	height: 45px;
	position: fixed;
	top: 40px;
	right: 58px;
	z-index: 9999;
	cursor: pointer;
}
.openbtn {
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
	position: relative;
	box-sizing: border-box;
}

/* ハンバーガーSET */

.openbtn span {
	display: inline-block;
	position: absolute;
	transition: all .2s;
	border-radius: 1px;
	background: #fff;
  	width: 44px; /* line-width */
	height: 3px; /* line-height */
	border-radius: 100vh;
	transition: all 0.2s;
	background-color: #000000;
}

.openbtn span:nth-of-type(1) { top: 9px; }
.openbtn span:nth-of-type(2) { top: 21px; }
.openbtn span:nth-of-type(3) { top: 33px; }

/* 3line - active */

.openbtn-wrap.active .openbtn span:nth-of-type(1) {
	top: 21px;
	left: 0px;
	transform: rotate(210deg);
}
.openbtn-wrap.active .openbtn span:nth-of-type(2) { opacity: 0; /*center*/ }
.openbtn-wrap.active .openbtn span:nth-of-type(3) {
	top: 21px;
 	left: 0px;
	transform: rotate(-210deg);
}


/* Gナビ 背景 */

.g_nav_wrap {
	display :none;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}
.g_nav_wrap.active {
	display: block;
	z-index: 98;
}

/* Gナビ */

.g_nav {
	display: block;
}

.g_nav {
	position: fixed;
	z-index: 9998;
	opacity: 0;
	top: 95px;
	left: 0;
	width: 100%;
	height: 0px;
	overflow-y: hidden;
	transition: opacity 1s, height 0.3s;
	box-sizing: border-box;
	padding: 0px 30px 0px 30px;
}

.g_nav.panelactive {
	top: 95px;
	height: 260px;
	opacity: 1;
	width: 100%;
	transition: opacity 0.4s, height 0.3s;
	overflow-y: auto;
}

.g_nav_inner {
	width: 100%;
	box-sizing: border-box;
}
/* スクロールバー */
.g_nav::-webkit-scrollbar {
   width: 2px;
   opacity: 0.5;
}
.g_nav::-webkit-scrollbar-track {
   background-color: #eee;
}
.g_nav::-webkit-scrollbar-thumb {
   background-color: #8B8B8B;
}


/* Gナビ リスト */

.g_nav .g_nav_list {
	list-style: none;
	padding-top: 0px;
	transition: padding-top 0.3s;
}
.g_nav.panelactive .g_nav_list {
	padding-top: 18px;
}

.g_nav .g_nav_list li a {
	font-weight: 500;
	font-size: 18px;
	line-height: 1;
	color: #222222;
	display: block;
	padding: 17px 38px 17px 38px;
	transition: color 0.2s;
}
.g_nav .g_nav_list li a:hover {
	color: #666666;
}

.g_nav_inst {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	height: 40px;
	font-weight: 700;
	font-size: 18px;
	color: #54674D;
	padding-left: 47px;
	margin-top: 24px;
	position: relative;
}
.g_nav_inst span {
	display: block;
	width: 40px;
	height: 40px;
	background: url("../img/gnav_inst.svg") center center no-repeat;
	background-color: #54674D;
	border-radius: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

}

@media screen and (max-width: 599px) {

.openbtn-wrap {
	right: 43px;
}

.g_nav {
	padding: 0px 15px 0px 15px;
}

}



/* sc01
======================================================*/

.sc01 {
	width: 100%;
	height: auto;
	background: url("../img/sc01_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc01 .sc_inner {
	width: 100%;
	position: relative;
	padding: 283px 0 90px 0;
}
.sc01_container_wrap {
	aspect-ratio: 1594 / 680;
	width: 1594px;
	margin: 0 auto;
}
.sc01_container {
	width: 100%;
	max-width: 1594px;
	margin: 0 auto;
	height: 100%;
	position: relative;
}
.sc01_cc {
	aspect-ratio: 1594 / 591;
	width: 100%;
	background: url(../img/sc01_cc.svg) center bottom no-repeat;
	background-size: cover;
	display: block;
}
.sc01_sub_cc {
	font-weight: 900;
	font-size: 40px;
	width: 15em;
	position: absolute;
	bottom: 0px;
	right: 0;
}
.sc01_sub_cc span:nth-of-type(1) {
	font-weight: 900;
	font-size: 40px;
	line-height: 1;
	color: #fff;
	display: inline-block;
}
.sc01_sub_cc span:nth-of-type(2) {
	font-weight: 500;
	font-size: 20px;
	line-height: 1;
	color: #fff;
	display: inline-block;
}

@media screen and (max-width: 1920px) {

.sc01_container_wrap {
	width: 80%;
}
.sc01_sub_cc {
	font-size: 2.08vw;
}
.sc01_sub_cc span:nth-of-type(1) {
	font-size: 2.08vw;
}
.sc01_sub_cc span:nth-of-type(2) {
	font-size: 1.04vw;
}
}

@media screen and (max-width: 1200px) {

.sc01 {
	width: 100%;
}
.sc01 .sc_inner {
	width: 100%;
	position: relative;
	padding: 200px 0 90px 0;
	box-sizing: border-box;
}

.sc01_container_wrap {
	aspect-ratio: auto;
	width: 100%;
	margin: 0 auto;
}
.sc01_container {
	width: 100%;
	max-width: 88%;
	margin: 0 auto;
	height: auto;
	position: relative;
}
.sc01_sub_cc {
	width: 15em;
	position: relative;
	bottom: auto;
	right: auto;
	font-size: 5.86vw;
	margin-top: 1.5em;
}
.sc01_sub_cc span:nth-of-type(1) {
	font-size: 5.86vw;
}
.sc01_sub_cc span:nth-of-type(2) {
	font-size: 4.3vw;
	margin-top: 0.5em;
}

}

@media screen and (max-width: 599px) {

.sc01 {
	background: url("../img/sc01_back_sp.jpg") center center no-repeat;
	background-size: cover;
}
.sc01_container {
	max-width: calc( 100% - 44px );
}
.sc01_sub_cc {
	width: 15em;
	font-size: 22px;
	margin: 1.5em auto 0 auto;
}
.sc01_sub_cc span:nth-of-type(1) {
	font-size: 22px;
}
.sc01_sub_cc span:nth-of-type(2) {
	font-size: 16px;
	margin-top: 0.5em;
}
}

@media screen and (max-width: 359px) {

.sc01_sub_cc {
	font-size: 19px;
}
.sc01_sub_cc span:nth-of-type(1) {
	font-size: 19px;
}

}


/* sc02
======================================================*/

.sc02 {
	width: 100%;
	height: auto;
	background: url("../img/sc02_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc02 .sc_inner {
	width: 100%;
	position: relative;
	padding: 145px 0 140px 0;
}
.sc02_container_wrap {
	width: 1020px;
	margin: 0 auto;
}
.sc02_container {
	display: -webkit-flex;
	display: flex;
	gap: 0 150px;
}
.sc02 h2 {
	font-weight: 900;
	font-size: 80px;
	color: #fff;
	writing-mode: vertical-rl;
	line-height: 1.4;
	display: inline-block;
	width: 195px;
}
.sc02 .sc02_set {
	width: calc( 100% - 345px );
}
.sc02 .sc02_set .txt p {
	font-weight: 700;
	font-size: 20px;
	line-height: 2;
	color: #fff;
}
.sc02 .sc02_set .txt p:not(:first-child) {
	margin-top: 1.4em;
}
.sc02 .sc02_set .txt h3 {
	font-weight: 900;
	font-size: 40px;
	line-height: 1.45;
	color: #F8EF00;
	margin-top: 0.9em;
}
.sc02 .sc02_set ul {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	gap: 0 35px;
	margin-top: 54px;
}
.sc02 .sc02_set ul li {
	width: calc(( 100% - 35px ) / 2 );
	background-color: #fff;
	border-radius: 20px;
	text-align: center;
	padding: 25px 0;
}
.sc02 .sc02_set ul li h4 {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.5;
	height: 3em;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
}
.sc02 .sc02_set ul li .sc02_mail {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	width: 238px;
	height: 76px;
	border-radius: 100vh;
	background-color: #0B9ECE;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.33;
	text-align: center;
	margin: 15px auto 0 auto;
}
.sc02 .sc02_set ul li .sc02_tel {
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 36px;
	line-height: 1;
	color: #0089D0;
}
.sc02 .sc02_set ul li .sc02_tel_txt {
	font-weight: 500;
	font-size: 14px;
	line-height: 1.7;
	margin-top: 5px;
}

@media screen and (max-width: 1200px) {

.sc02 {
	width: 100%;
	height: auto;
	background: url("../img/sc02_back01.png") left top no-repeat;
	background-size: 100% auto;
	background-color: #090A0D;
	position: relative;
}
.sc02 .sc_inner {
	padding: 0px 0 113px 0;
}
.sc02_container_wrap {
	width: 100%;
	margin: 0 auto;
	padding: 0 0px;
	box-sizing: border-box;
}
.sc02_container {
	display:block;
}
.sc02 h2 {
	font-size: 52px;
	line-height: 1.4;
	display: -webkit-flex;
	display: flex;
	width: auto;
	-webkit-justify-content: center;
	justify-content: center;
	margin: 0 auto;
}
.sc02 .sc02_set {
	width: 100%;
	padding: 0 45px;
	margin-top: 150px;
	background: url(../img/sc02_back02_sp.png) right top no-repeat;
	background-size: 100% auto;
	box-sizing: border-box;
}
.sc02 .sc02_set .txt p {
	font-size: 18px;
}
.sc02 .sc02_set .txt h3 {
	font-size: 30px;
}
.sc02 .sc02_set ul li .sc02_tel {
	margin-top: 10px;
	display: block;
}
}

@media screen and (max-width: 800px) {

.sc02 .sc02_set ul {
	display: block;
	margin-top: 54px;
}
.sc02 .sc02_set ul li {
	width: 100%;
	padding: 28px 0;
}
.sc02 .sc02_set ul li:nth-of-type(2) {
	margin-top: 30px;
}
.sc02 .sc02_set ul li h4 {
	font-size: 18px;
	line-height: 1.5;
	height: auto;
}
.sc02 .sc02_set ul li .sc02_mail {
	width: 240px;
	height: 54px;
	font-size: 16px;
	line-height: 1;
	margin: 15px auto 0 auto;
}

}

@media screen and (max-width: 599px) {

.sc02 .sc_inner {
	padding: 0px 0 80px 0;
}
.sc02 h2 {
	font-size: 35px;
}
.sc02 .sc02_set {
	padding: 0 30px;
	margin-top: 100px;
	background: url(../img/sc02_back02_sp.png) right top 90px no-repeat;
	background-size: 100% auto;
	box-sizing: border-box;
}
.sc02 .sc02_set .txt p {
	font-size: 16px;
}
.sc02 .sc02_set .txt h3 {
	font-size: 20px;
}

}

@media screen and (max-width: 359px) {

.sc02 .sc02_set {
	padding: 0 15px;
}

}


/* sc03
======================================================*/

.sc03 {
	width: 100%;
	height: auto;
	background: url("../img/sc03_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
	min-height: 1080px;
}
.sc03 .sc_inner {
	width: 100%;
	position: relative;
	padding: 94px 0 0px 0;
	overflow: hidden;
	box-sizing: border-box;
}
.sc03 .slide_wrap {
	width: 51%;
	padding-bottom: 150px;
	margin: 0 0 0 auto;
	overflow: hidden;
}
.sc03 .slide_wrap2 {
	width: 570px;
	overflow: visible;
}

.sc03 .splide__track {
	overflow: visible;
}
.sc03 .splide__slide {
	height: 801px;
	background-color: #fff;
	border-radius: 20px;
	opacity: 0.75;
	transition: opacity .3s ease;
	position: relative;
	overflow: hidden;
}
.sc03 .splide__slide.is-active {
	opacity: 1;
}
.sc03 .slide-link_btn {
	display: block;
	width: 74px;
	height: 74px;
	border-radius: 100vh;
	background: url(../img/next_w.svg) center center no-repeat;
	background-color: #0B9ECE;
	position: absolute;
	right: 30px;
	bottom: 30px;
}

.sc03 .splide__arrows {
	width: 150px;
	position: relative;
	display: block;
	padding-top: 30px;
}
.sc03 .splide__arrow {
	width: 60px;
	height: 60px;
	transform: translateY(0%);
	opacity: 1;
	background-color: #E3E3E3;
}
.splide__arrow svg {
	display: none;
}
.splide__arrow:hover:not(:disabled){
	opacity: 1;
	background-color: #fff;
}
.splide__arrow:disabled{
	opacity:.3
}
.splide__arrow--prev{
	left: 0;
	background: url(../img/prev.svg) center center no-repeat;
}
.splide__arrow--next{
	right: 0;
	background: url(../img/next.svg) center center no-repeat;
}
.sc03_left {
	position: absolute;
	width: 450px;
	overflow: visible;
	top: 114px;
	left: calc(( 100% - 1100px ) / 2 );
	z-index: 100;
}
.sc03_left_inner {
	width: 450px;
	position: relative;
}
.sc03_left h2 {
	font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 90px;
	line-height: 1;
	color: #fff;
}
.sc03_left p {
	font-weight: 700;
	font-size: 40px;
	line-height: 1.45;
	color: #fff;
	margin-top: 20px;
}
.thumbnail-navigation {
	display: block;
	width: 450px;
	margin-top: 40px;
	position: relative;
}
.nav-button {
	display: block;
	cursor: pointer;
	background-color: #fff;
	border-radius: 100vh;
	box-sizing: border-box;
	width: 323px;
	height: 42px;
	text-align: center;
	line-height: 42px;
	font-size: 18px;
	font-weight: 700;
	color: #090A0D;
	position: relative;
	transition: all 0.3s;
}
.nav-button:not(:first-child) {
	margin-top: 30px;
}
.nav-button.is-active {
	background-color: #0B9ECE;
	color: #fff;
	width: 400px;
	height: 55px;
	line-height: 55px;
	font-size: 30px;
	position: relative;
}
.nav-button.nav-button03.is-active {
	font-size: 26px;
}
.nav-button.nav-button04.is-active {
	font-size: 26px;
}


@media screen and (max-width: 1200px) {

.sc03 {
	padding: 70px 0 0 0;
	width: 100%;
	height: auto;
	background: url("../img/sc03_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
	min-height: auto;
}
.sc03 .sc_inner {
	width: 100%;
	position: relative;
	padding: 70px 0 0px 0px;
	overflow: hidden;
	box-sizing: border-box;
}
.sc03 .slide_wrap {
	width: 100%;
	padding-bottom: 115px;
	padding-left: 60px;
	margin: 0 0 0 auto;
	overflow: hidden;
}
.sc03 .slide_wrap2 {
	width: 570px;
	overflow: visible;
}

.sc03_left {
	position: relative;
	width: calc( 100% - 60px );
	top: auto;
	left: 60px;
}
.sc03_left_inner {
	width: 100%;
}
.sc03_left h2 {
	font-size: 70px;
}
.sc03_left p {
	font-weight: 700;
	font-size: 30px;
	margin-top: 20px;
}
.thumbnail-navigation {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 40px;
	position: relative;
	gap: 10px 10px;
}
.nav-button {
	display: block;
	cursor: pointer;
	background-color: #fff;
	border-radius: 100vh;
	box-sizing: border-box;
	width: 270px;
	height: 38px;
	text-align: center;
	line-height: 38px;
	font-size: 16px;
	font-weight: 700;
	color: #090A0D;
	position: relative;
	transition: all 0.3s;
}
.nav-button:not(:first-child) {
	margin-top: 0px;
}
.nav-button.is-active {
	width: 315px;
	height: 43px;
	line-height: 43px;
	font-size: 23px;
}
.nav-button.nav-button03.is-active {
	font-size: 20px;
}
.nav-button.nav-button04.is-active {
	font-size: 20px;
}

}

@media screen and (max-width: 1024px) {

.sc03_left {
	position: relative;
	width: 640px;
	top: auto;
	left: 60px;
}

}

@media screen and (max-width: 730px) {

.sc03 .sc_inner {
	padding: 50px 0 0px 0px;
}

.sc03 .slide_wrap {
	width: 100%;
	padding-bottom: 80px;
	padding-left: 30px;
	margin: 0 0 0 auto;
	overflow: hidden;
}
.sc03 .slide_wrap2 {
	width: 460px;
	overflow: visible;
}

.sc03 .splide__slide {
	height: auto;
	padding-bottom: 30px;
}

.sc03 .splide__arrows {
	width: 117px;
	position: relative;
	display: block;
	padding-top: 30px;
}
.sc03 .splide__arrow {
	width: 47px;
	height: 47px;
	transform: translateY(0%);
	opacity: 1;
	background-color: #E3E3E3;
}
.splide__arrow svg {
	display: none;
}
.splide__arrow:hover:not(:disabled){
	opacity: 1;
	background-color: #fff;
}
.splide__arrow:disabled{
	opacity:.3
}
.splide__arrow--prev{
	left: 0;
	background: url(../img/prev.svg) center center no-repeat;
}
.splide__arrow--next{
	right: 0;
	background: url(../img/next.svg) center center no-repeat;
}

.sc03_left {
	width: calc( 100% - 30px );
	left: 30px;
}

.thumbnail-navigation {
	width: 315px;
	margin-top: 45px;
	gap: 15px 0px;
}
.sc03 .slide-link_btn {
	width: 47px;
	height: 47px;
	background: url(../img/next_w.svg) center center no-repeat;
	background-size: 19px 15px;
	background-color: #0B9ECE;
	right: 20px;
	bottom: 20px;
}
}

@media screen and (max-width: 599px) {

.sc03 {
	background: url("../img/sc03_back_sp.jpg") center top no-repeat;
	background-size: cover;
}

.sc03_left h2 {
	font-size: 50px;
}
.sc03_left p {
	font-size: 22px;
	margin-top: 10px;
}
.sc03 .slide_wrap2 {
	width: calc( 100% - 30px );
}
.sc03 .splide__arrows {
	padding-top: 40px;
	margin: 0 auto;
}
}

/* sc03 slide中身
======================================================*/

.sc03 .splide__slide .slide_head {
	display: block;
	height: 175px;
	width: 100%;
}
.sc03 .sc03_slide01 .slide_head {
	background: url(../img/slide_head01.png) center top no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide02 .slide_head {
	background: url(../img/slide_head02.png) center top no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide03 .slide_head {
	background: url(../img/slide_head03.png) center top no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide04 .slide_head {
	background: url(../img/slide_head04.png) center top no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide05 .slide_head {
	background: url(../img/slide_head05.png) center top no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide06 .slide_head {
	background: url(../img/slide_head06.png) center top no-repeat;
	background-size: cover;
}

.sc03 .splide__slide h3 {
	font-weight: 700;
	font-size: 30px;
	line-height: 1;
	color: #090A0D;
	padding-left: 46px;
	background: url(../img/slide_h3.svg) left center no-repeat;
}
.sc03 .splide__slide .slide_content {
	padding: 60px 40px 0 40px;
}
.sc03 .splide__slide dl dt {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.45;
	color: #0B9ECE;
	margin: 28px 0 14px 0;
}
.sc03 .splide__slide dl dd {
	font-weight: 500;
	font-size: 18px;
	line-height: 1.66;
	color: #090A0D;
}
.sc03 .sc03_slide03 dl dt {
	letter-spacing: -0.05em;
}
.sc03 .splide__slide ul {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	height: 120px;
	position: absolute;
	bottom: 30px;
	left: 40px;
}
.sc03 .splide__slide ul li {
	font-weight: 400;
	font-size: 18px;
	line-height: 1.66;
	color: #090A0D;
}
.sc03 .sc03_slide03 ul {
	gap: 0 30px;
}
.sc03 .sc03_slide04 ul {
	gap: 0 60px;
}


@media screen and (max-width: 1200px) {

.sc03 .splide__slide h3 {
	font-size: 27px;
	padding-left: 40px;
}
.sc03 .splide__slide .slide_content {
	padding: 30px 30px 0 30px;
}
.sc03 .splide__slide ul li {
	font-weight: 400;
	font-size: 16px;
	line-height: 1.66;
	color: #090A0D;
}
.sc03 .splide__slide ul {
	height: 120px;
	bottom: 30px;
	left: 30px;
}
}

@media screen and (max-width: 730px) {

.sc03 .splide__slide .slide_head {
	height: 117px;
}
.sc03 .sc03_slide01 .slide_head {
	background: url(../img/slide_head01_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide02 .slide_head {
	background: url(../img/slide_head02_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide03 .slide_head {
	background: url(../img/slide_head03_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide04 .slide_head {
	background: url(../img/slide_head04_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide05 .slide_head {
	background: url(../img/slide_head05_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .sc03_slide06 .slide_head {
	background: url(../img/slide_head06_sp.png) center center no-repeat;
	background-size: cover;
}
.sc03 .splide__slide h3 {
	font-size: 24px;
	line-height: 1.45;
	padding-left: 42px;
	background: url(../img/slide_h3.svg) left top no-repeat;
}
.sc03 .splide__slide .slide_content {
	padding: 30px 15px 0 20px;
}
.sc03 .splide__slide dl dt {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.45;
	letter-spacing: -0.015em;
	color: #0B9ECE;
	margin: 28px 0 14px 0;
}
.sc03 .splide__slide ul {
	height: auto;
	position: relative;
	bottom: auto;
	left: auto;
	margin-top: 40px;
}
}

/* sc04
======================================================*/

.sc04 {
	width: 100%;
	height: auto;
	background: url("../img/sc04_back.svg") center center no-repeat;
	background-color: #090A0D;
	position: relative;
}
.sc04 .sc_inner {
	width: 100%;
	position: relative;
	padding: 0;
}
.sc04_container_wrap {
	width: 1100px;
	min-height: 1080px;
	margin: 0 auto;
	background-color: #FFE940;
	box-shadow: 0px -20px 60px rgba(0,0,0,0.28);
	padding: 140px 0 0 0;
}
.sc04_container {
	width: 532px;
	margin: 0 auto;
}
.sc04 h2 {
	font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 90px;
	line-height: 1;
	color: #0B9ECE;
}
.sc04 h3 {
	font-weight: 700;
	font-size: 40px;
	line-height: 1;
	color: #090A0D;
	margin: 26px 0 70px 0;
}
.sc04 p {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.66;
	color: #090A0D;
}
.sc04 p:not(:first-child) {
	margin-top: 1.5em;
}

.sc04_cc {
	display: none;
}

@media screen and (max-width: 1300px) {

.sc04 {
	width: 100%;
	height: auto;
	background: none;
	background-color: #090A0D;
	position: relative;
}
.sc04_cc {
	display: block;
	padding: 20px 0 50px 0;
	text-align: center;
}
.sc04_cc img {
	max-width: 100%;
	height: auto;
}
.sc04 .sc_inner {
	padding: 0 45px 80px 45px;
}
.sc04_container_wrap {
	width: 100%;
	box-sizing: border-box;
	min-height: auto;
	margin: 0 auto;
	background-color: #FFE940;
	box-shadow: 0px -20px 60px rgba(0,0,0,0.28);
	padding: 70px 25px 50px 25px;
}
.sc04_container {
	width: 100%;
	max-width: 532px;
	margin: 0 auto;
}
.sc04 h2 {
	font-size: 70px;
}

}

@media screen and (max-width: 599px) {

.sc04 .sc_inner {
	padding: 0 30px 80px 30px;
}

.sc04 h2 {
	font-size: 50px;
}
.sc04 h3 {
	font-size: 22px;
	margin: 15px 0 50px 0;
}
.sc04_container_wrap {
	padding: 70px 20px 50px 20px;
}
}

@media screen and (max-width: 359px) {

.sc04 .sc_inner {
	padding: 0 15px 80px 15px;
}
.sc04_img img {
	width: 100%;
	height: auto;
}
.sc04 h2 {
	font-size: 46px;
}

}


/* sc05
======================================================*/

.sc05 {
	width: 100%;
	height: auto;
	background: url("../img/sc05_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc05 .sc_inner {
	width: 100%;
	position: relative;
	padding: 178px 0 145px 0;
	box-sizing: border-box;
}
.sc05_container {
	width: 100%;
	max-width: 650px;
	margin: 0 auto;
}
.sc05 h2 {
	font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size:  90px;
	line-height: 1;
	color: #FFE940;
}
.sc05 h3 {
	font-weight: 700;
	font-size:  40px;
	line-height: 1;
	color: #fff;
	margin: 25px 0 64px 0;
}
.sc05 p {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.75;
	color: #fff;
}
.sc05 p:not(:first-child) {
	margin-top: 1.5em;
}

@media screen and (max-width: 1300px) {

.sc05 .sc_inner {
	padding: 140px 45px 112px 45px;
}
.sc05 h2 {
	font-size:  70px;
}
}

@media screen and (max-width: 599px) {

.sc05 {
	background: url("../img/sc05_back_sp.jpg") center center no-repeat;
	background-size: cover;
}
.sc05 .sc_inner {
	padding: 100px 30px 80px 30px;
}
.sc05 h2 {
	font-size: 50px;
}
.sc05 h3 {
	font-size: 22px;
	margin: 12px 0 50px 0;
}
.sc05_img img {
	max-width: 100%;
	height: auto;
}

}


/* sc06
======================================================*/

.sc06 {
	width: 100%;
	height: auto;
	background: url("../img/sc06_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc06 .sc_inner {
	width: 100%;
	position: relative;
	padding: 180px 0 165px 0;
}
.sc06 h2 {
	font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-weight: 900;
	font-size:  90px;
	line-height: 1.22;
	color: #FFE940;
}
.sc06 h3 {
	font-weight: 700;
	font-size:  39px;
	line-height: 1;
	color: #fff;
	margin: 17px 0 0px 0;
}
.sc06_container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.sc06 .profile {
	width: 100%;
	max-width: 770px;
	border-top: solid 1px #fff;
	margin: 60px 0 0 auto;
}
.sc06 .profile dl {
	width: 100%;
	border-bottom: solid 1px #fff;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	padding: 30px 0;
}
.sc06 .profile dl dt {
	width: 180px;
	line-height: 1.6;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
}
.sc06 .profile dl dd {
	width: calc( 100% - 180px );
	line-height: 1.6;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
}

@media screen and (max-width: 1300px) {

.sc06 .sc_inner {
	padding: 135px 0 122px 0;
}
.sc06 h2 {
	font-size:  70px;
}
.sc06 h3 {
	font-size:  30px;
	margin: 16px 0 0px 0;
}
.sc06 .profile dl {
	padding: 25px 0;
}
.sc06 .profile dl dt {
	width: 110px;
}
.sc06 .profile dl dd {
	width: calc( 100% - 110px );
}
}

@media screen and (max-width: 599px) {

.sc06 {
	width: 100%;
	height: auto;
	background: url("../img/sc06_back_sp.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc06 .sc_inner {
	padding: 90px 0 80px 0;
}
.sc06 h2 {
	font-size:  50px;
	line-height: 1.52;
}
.sc06 h3 {
	font-size:  22px;
	margin: 15px 0 0px 0;
}
.sc06 .profile {
	border-top: solid 1px #fff;
	margin: 130px 0 0 auto;
}
}

/* sc07
======================================================*/

.sc07 {
	width: 100%;
	height: auto;
	background: url("../img/sc07_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
}
.sc07 .sc_inner {
	width: 100%;
	position: relative;
	padding: 140px 0 254px 0;
}
.sc07 h2 {
	font-family: "Poppins", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-weight: 900;
	font-size:  90px;
	line-height: 1;
	color: #fff;
}
.sc07 h3 {
	font-weight: 700;
	font-size:  39px;
	line-height: 1;
	color: #fff;
	margin: 15px 0 0px 0;
}
.cp_p {
	width: 100%;
	border-radius: 30px;
	background-color: #FFFFFF;
	padding: 67px 94px 94px 94px;
	margin-top: 96px;
	box-shadow: 0px 0px 50px rgba(0,0,0,0.10);
}
.contact_form dl {
	display: -webkit-flex;
	display: flex;
	width: 100%;
}
.contact_form dl:not(:first-child) {
	margin-top: 48px;
}
.contact_form dl dt {
	width: 280px;
	font-size: 20px;
	line-height: 1;
	color: #333;
	padding-top: 20px;
}
.contact_form dl dt span {
	font-size: 16px;
	line-height: 1;
	color: #EB0000;
	display: inline-block;
	margin-left: 23px;
	position: relative;
	top: -2px;
}

.contact_form dl dd {
	width: calc( 100% - 280px );
}
.contact_form .pp_head_txt {
	font-size: 20px;
	line-height: 1;
	color: #333333;
	margin-top: 40px;
}
.pp_box {
	width: 100%;
	height: 215px;
	overflow-y: scroll;
	background-color: #F0F4F7;
	margin-top: 18px;
}
.pp_box div {
	padding: 20px;
}
/* スクロールバー */
.pp_box::-webkit-scrollbar {
	width: 2px;
	opacity: 0.5;
}
.pp_box::-webkit-scrollbar-track {
	background-color: #eee;
}
.pp_box::-webkit-scrollbar-thumb {
	background-color: #666666;
}
.pp_box div p {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.42;
}
.pp_box div p:not(:first-child) {
	margin-top: 1.5em;
}

@media screen and (max-width: 1300px) {

.sc07 .sc_inner {
	padding: 120px 0 160px 0;
}
.sc07 h2 {
	font-size:  70px;
}
.sc07 h3 {
	font-size:  30px;
	margin: 16px 0 0px 0;
}
.cp_p {
	padding: 62px 45px 45px 45px;
	margin-top: 75px;
}
.contact_form dl dt {
	width: 280px;
	font-size: 18px;
}
.contact_form .pp_head_txt {
	font-size: 18px;
	margin-top: 40px;
}
.pp_box div p {
	font-size: 14px;
}
}

@media screen and (max-width: 1024px) {

.contact_form dl {
	display: block;
	width: 100%;
}
.contact_form dl:not(:first-child) {
	margin-top: 26px;
}
.contact_form dl dt {
	width: 100%;
	padding-top: 0px;
}
.contact_form dl dd {
	width: 100%;
	margin-top: 16px;
}
}

@media screen and (max-width: 599px) {

.sc07 {
	background: url("../img/sc07_back_sp.jpg") center center no-repeat;
	background-size: cover;
}
.sc07 .sc_inner {
	padding: 100px 0 80px 0;
}
.sc07 .container_wrap {
	padding: 0 15px;
}
 
.sc07 h2 {
	font-size:  50px;
	line-height: 1;
	color: #fff;
}
.sc07 h3 {
	font-size:  22px;
	margin: 15px 0 0px 0;
}
.cp_p {
	width: 100%;
	border-radius: 30px;
	background-color: #FFFFFF;
	padding: 56px 20px 30px 20px;
	margin-top: 54px;
}
.pp_box {
	height: 400px;
}
}


/* contact_form
======================================================*/

.contact_form .form_txt {
	background-color: #F0F4F7;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	line-height: 1.6;
	padding: 15px;
	width: 100%;
}
.contact_form .form_txt.form_txtarea {
	height: 360px;
}

#doi {
	font-size: 16px;
	line-height: 1;
	text-align: center;
	margin: 40px 0 0 0;
	font-weight: 500;
	font-style: normal;
}
#doi span {
	text-decoration: underline;
}

#doi .wpcf7-list-item-label {
	display: none;
}
#doi input[type=checkbox] {
	margin-right: 14px;
	position: relative;
	top: 1px;
	width: 22px;
	height: 22px;
	box-sizing: border-box;
	border: solid 1px #707070;
	position: relative;
	top: 4px;
}
.contact_form .send {
	text-align: center;
	margin-top: 40px;
}
.contact_form .send input {
	width: 350px;
	height: 80px;
	border-radius: 100vh;
	background-color: #2C2C2C;
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	box-sizing: border-box;
	transition: background-color 0.3s;
}
.contact_form .send input:hover {
	background-color: #1069C3;
}

@media screen and (max-width: 599px) {

#doi {
	font-size: 15px;
	margin: 30px 0 0 0;;
}
.contact_form .send {
	margin-top: 40px;
}
.contact_form .send input {
	width: 265px;
	height: 66px;
}

}

/* contactform7設定
======================================================*/

.wpcf7-not-valid-tip{
   box-sizing: border-box;
   border-bottom: 1px dotted #CB4A2D;
   color: #CB4A2D;
   margin-top: 10px;
   margin-bottom: 10px;
   padding: 6px 6px 6px 40px;
   text-indent: -30px;
   font-size: 16px;
}
.wpcf7-not-valid-tip::before{
   content: "";
   background: url(../img/sankaku.png) no-repeat center/cover;
   display: inline-block;
   margin-right: 10px;
   margin-bottom: 4px;
   vertical-align: middle;
   width: 20px;
   height: 18px;
}

div.wpcf7 .wpcf7-spinner {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
	color: #fff;
	font-weight: 700;
	border: 1px solid #CB4A2D;
	background-color: #CB4A2D;
	border-radius: 2px;
	margin: 40px 0 0 0;
	padding: 0.8em 1em;
	text-align: center;
	font-size: 16px;
	line-height: 1.4;
}
.wpcf7 form.sent .wpcf7-response-output {
	border: 1px solid #1069C3;
	background-color: #1069C3;
}


/* footer
======================================================*/

.footer {
	padding: 90px 0 85px 0;
}
.footer_content {
	position: relative;
	padding-bottom: 80px;
	border-bottom: solid 2px #707070;
}
.footer nav {
	display: inline-block;
	position: absolute;
	top: 60px;
	right: 0;
}
.footer nav ul {
	display: -webkit-flex;
	display: flex;
	gap: 0 40px;
	list-style: none;
}
.footer nav ul li span:nth-of-type(1) {
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 16px;
	color: #0B9ECE;
	display: block;
}
.footer nav ul li span:nth-of-type(2) {
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	color: #222;
	display: block;
	padding: 7px 0 0 9px;
}
.copy {
	font-family: "Poppins", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 16px;
	line-height: 1;
	text-align: right;
	padding-top: 15px;
}

@media screen and (max-width: 1024px) {

.footer {
	padding: 80px 0 45px 0;
}
.footer nav {
	display: inline-block;
	position: absolute;
	top: 90px;
	right: 0;
}

}

@media screen and (max-width: 800px) {

.footer_content {
	position: relative;
	padding-bottom: 50px;
}
.footer nav {
	display: inline-block;
	position: relative;
	top: auto;
	right: auto;
}
.footer nav ul {
	display: block;
	margin-top: 80px;
}
.footer nav ul li:not(:first-child) {
	margin-top: 38px;
}
.copy {
	font-size: 14px;
	line-height: 1;
	padding-top: 15px;
}
}


@media screen and (max-width: 599px) {

.footer {
	padding: 80px 0 30px 0;
}
.copy {
	font-size: 14px;
	line-height: 1;
	padding-top: 15px;
	text-align: center;
}
}

@media screen and (max-width: 374px) {
.copy {
	font-size: 12px;
}
}


/* clearfix：float対策
======================================================*/

.clear:after {
	content: "";
	display: block;
	clear: both;
}
 
.clear:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clear {
	display: block;
}