@charset "UTF-8";

/* kisen ================== */

.kisen01 {
position:relative;
background:#f5f1df;
overflow:hidden;}
.kisen01::before , .kisen01::after {
content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:300px;
background:url("../../images/kisen01_bg01.svg") no-repeat center center / 100% 100%;}
.kisen01::after {
top:auto;
bottom:0;
background:url("../../images/kisen01_bg02.svg") no-repeat center center / 100% 100%;}
.kisen01 .logo {
position:absolute;
z-index:3;
left:7px;
top:7px;
width:44%;
max-width:360px;}
.kisen01 .logo a {
display:block;
width:100%;
height:70px;
background:url("../../images/logo01.png") no-repeat center center / 100%;}
.kisen01-contents {
position:relative;
z-index:2;
margin:0 auto;
width:90%;
max-width:1250px;
aspect-ratio:130 / 90;
background:url("../../images/kisen01_bg05.svg") no-repeat center bottom / 100%;}
.kisen01-contents::before {
content:"";
position:absolute;
right:23%;
top:2.5%;
width:19%;
aspect-ratio:27 / 19;
background:url("../../images/kisen01_bg03.svg") no-repeat center bottom / 100% 100%;}
.kisen01-contents h1 {
/*
top:27.5%;
width:54%;
*/
position:absolute;
left:-0.5%;
top:31.45%;
width:50%;}
.kisen01-contents .img02 {
/*
top:43%;
width:52%;
*/
position:absolute;
left:0.5%;
top:45.45%;
width:48%;}
.kisen01-contents h2 {
/*
top:62.5%;
width:54%;
*/
position:absolute;
left:-0.5%;
top:61.45%;
width:50%;}
.kisen01-contents .img01 {
/*
left:56%;
width:54%;
*/
position:absolute;
left:52%;
top:50%;
width:56%;
transform:translate(0,-44%);}
.kisen01-contents .img01::after {
content:"";
position:absolute;
z-index:2;
right:25%;
bottom:93%;
width:34%;
aspect-ratio:26 / 9;
background:url("../../images/kisen01_bg04.svg") no-repeat center bottom / 100% 100%;}
.kisen01 .chara {
position:absolute;
width:10.5%;}
.kisen01 .chara01 {
top:6%;
left:47%;}
.kisen01 .chara02 {
bottom:2.5%;
left:-3%;}
.kisen01 .chara03 {
bottom:1.5%;
left:27%;}
.kisen01 .chara04 {
bottom:8%;
left:70%;}
.kisen01 .chara05 {
bottom:1.5%;
right:-4%;}

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

.kisen01::before , .kisen01::after {
height:auto;
aspect-ratio:5 / 1;}

}

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

.kisen01-contents {
aspect-ratio:130 / 90;}

}

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

.kisen01 .logo {
width:66.6666%;}
.kisen01-contents {
margin:26% auto 15%;
aspect-ratio:auto;
background:none;}
.kisen01-contents::before {
display:none;}
.kisen01-contents h1 {
position:static;
margin:0 auto;
/* width:100%; */
width:96%;}
.kisen01-contents .img01 {
position:static;
margin:7.75% auto 0;
width:96%;
transform:translate(0,0);}
.kisen01-contents .img01::after {
right:16%;
bottom:88%;
width:40%;}
.kisen01-contents .img02 {
position:static;
margin:1.5% auto 0;
width:100%;}
.kisen01-contents h2 {
position:static;
margin:5% auto 0;
width:100%;}
.kisen01 .chara {
width:20%;}
.kisen01 .chara01 {
top:15%;
left:-2%;}
.kisen01 .chara02 {
display:none;}
.kisen01 .chara03 {
display:none;}
.kisen01 .chara04 {
bottom:30%;
left:80%;}
.kisen01 .chara05 {
display:none;}

}

.kisen02 {
text-align:center;
background:#e2eec5;
overflow:hidden;}
.kisen02 img {
pointer-events:none;}
.kisen02 .contents {
width:100%;
max-width:1350px;
aspect-ratio:14 / 9;}
.kisen02 .bg01, .kisen02 .bg02 {
position:absolute;
top:0;
width:53.58%;}
.kisen02 .bg01 {
right:52%;}
.kisen02 .bg02 {
left:52%;}
.kisen02 .bg03 {
display:none;
position:absolute;
left:0;
bottom:0;
width:100%;}
.kisen02 h2 {
position:relative;
margin:2% auto 3%;
width:56%;
max-width:720px;}
.kisen02 .txt {
position:relative;
margin:0 auto;
width:45%;
max-width:560px;}
.kisen02 .chara {
position:absolute;
width:10.0%;}
.kisen02 .chara01 {
top:7%;
right:0%;}
.kisen02 .chara02 {
bottom:25%;
left:4%;}
.kisen02 .chara03 {
bottom:0%;
left:67%;}
.kisen02 .chara04 {
bottom:0%;
left:78%;}

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

.kisen02 .contents {
max-width:750px;
aspect-ratio:50 / 82;}
.kisen02 h2 {
margin:0.5% auto 5.0%;
width:91%;}
.kisen02 .txt {
position:relative;
width:85%;}
.kisen02 .bg01, .kisen02 .bg02 {
display:none;}
.kisen02 .bg03 {
display:block;}
.kisen02 .chara {
position:absolute;
width:18%;}
.kisen02 .chara01 {
top:58%;
right:13%;}
.kisen02 .chara02 {
bottom:12%;
left:3%;}
.kisen02 .chara03 {
bottom:-3.5%;
left:66.5%;
width:14.5%;}
.kisen02 .chara04 {
bottom:-3.5%;
left:82%;
width:14.8%;}

}

.kisen03 {
pointer-events:none;
position:relative;
z-index:2;
width:100%;
background:#e2eec5;}
.kisen03::before {
content:"";
position:absolute;
left:50%;
top:0;
width:90%;
max-width:1100px;
height:100%;
background:#614d3f;
border-radius:40px 40px 0 0;
transform:translate(-50%,0);}
.kisen03 h2 {
text-align:center;
position:relative;
padding:1.8% 0 1.5% 0;
width:100%;
line-height:0;}
.kisen03 h2 img {
width:64%;}
.kisen03 h2::before , .kisen03 h2::after {
content:"";
position:absolute;
left:1%;
bottom:15%;
width:14%;
aspect-ratio:36 / 32;
background:url("../../images/kisen03_ttl02.png") no-repeat center center / 100% 100%;
animation:vertical 2s steps(1) infinite;}
.kisen03 h2::after {
left:84%;
bottom:10%;
background:url("../../images/kisen03_ttl03.png") no-repeat center center / 100% 100%;}
.swiper-digest {
width:100%;
margin:0 auto;}
.swiper-digest .swiper-wrapper {
transition-timing-function:linear;}
.swiper-digest .swiper-slide {
padding:1.0% 0;
max-width:290px;
height:auto;}
.swiper-digest .swiper-slide img {
border-radius:12px;
border:2px solid #fff;
box-shadow:3px 3px 6px 0 rgba(0,0,0,0.4);}
.kisen03 h3 {
position:relative;
padding:1.5% 0 0 0;
margin:0 auto;
width:94%;
line-height:0;}
.kisen03 h3 img {
width:72%;}
.kisen03 h3::before {
content:"";
position:absolute;
right:0%;
top:1%;
width:25%;
aspect-ratio:2 / 1;
background:url("../../images/kisen03_ttl05.png") no-repeat center center / 100% 100%;
animation:vertical 2s steps(1) 1s infinite;}

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

.kisen03::before {
width:100%;
border-radius:0;}
.kisen03 h2 {
padding:3.0% 0 2.4% 0;}
.kisen03 h2::before , .kisen03 h2::after {
display:none;}
.kisen03 h2 img {
width:100%;}
.kisen03 h3 {
padding:2.25% 0 15% 0;
width:100%;}
.kisen03 h3 img {
width:100%;}
.kisen03 h3::before {
right:25%;
top:44%;
width:50%;}

}

.kisen04 {
font-family:"Noto Sans JP", sans-serif;
overflow:hidden;
color:#614d3f;
background:#dff2fc;}
.kisen0400 {
position:relative;
margin:30px 0 30px 0;}
.kisen0400 .chara {
position:absolute;
top:50%;
width:10.0%;}
.kisen0400 .chara01 {
right:27%;
transform:translate(0,-50%);}
.kisen0400 .chara02 {
right:13.5%;
transform:translate(0,-34%);}
.kisen0400 .chara03 {
right:0%;
transform:translate(0,-58%);}
.kisen0400 h2 {
position:relative;
display:inline-block;
z-index:2;
font-size:324%;
line-height:1.2;
font-weight:700;
letter-spacing:0.05em;
white-space:nowrap;}
.kisen0400 h2 span {
display:block;
margin-top:0.3em;
font-size:40%;
font-weight:300;
letter-spacing:0.2em;}
.kisen0400 h2::before {
content:"";
position:absolute;
z-index:-1;
right:-8%;
top:40%;
width:200%;
height:70%;
background:#9fd9f6;}
.kisen0400 p {
margin-top:0.8em;
font-size:120%;
line-heigt:1.2;
font-weight:600;
white-space:nowrap;}

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

.kisen0400 .chara {
width:11.5%;}
.kisen0400 h2 {
font-size:5.5vw;}
.kisen0400 p {
font-size:2.1vw;}

}

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

.kisen0400 {
text-align:center;
position:relative;
margin:9% 0 0 0;}
.kisen0400 .chara {
display:none;}
.kisen0400 h2 {
display:block;
font-size:9.5vw;}
.kisen0400 h2::before {
right:0;}
.kisen0400 p {
font-size:3.5vw;}

}

.kisen04 .txt {
position:relative;
z-index:2;
padding:13% 0;
width:40%;}
.kisen04 .txt::before {
content:"";
position:absolute;
z-index:-1;
top:50%;}
.kisen04 .txt img {
width:100%;}
.kisen04 .txt h3 {
margin:0 0 0.6em 0;
font-size:276%;
line-height:1.25;
font-weight:700;
white-space:nowrap;}
.kisen04 .txt h3 span {
margin:0 0.25em 0 0;
font-size:40%;}
.kisen04 .txt .desc {
font-size:116%;
line-height:1.65;
font-weight:500;
letter-spacing:0.3em;
white-space:nowrap;}
.kisen04 .txt .btn01 {
margin:2.2em auto 1.1em;
width:53%;}
.kisen04 .txt .btn01 img:hover {
animation:vertical 2s steps(1) infinite;}
.kisen04 .img {
position:absolute;
top:50%;
width:70%;
transform:translate(0,-50%);}
.kisen0401 {
position:relative;}
.kisen0401 .txt {
margin:0 auto 0 0;}
.kisen0401 .txt::before {
right:0;
width:115%;
aspect-ratio:1 / 1;
background:url("../../images/kisen04_img0102.png") no-repeat center center / 100% 100%;
transform:translate(-15%,-50%);}
.kisen0401 .img {
left:42%;}
.kisen0401 .img::after {
content:"";
position:absolute;
right:20%;
bottom:0%;
width:16%;
aspect-ratio:6 / 7;
background:url("../../images/kisen04_chara0101.png") no-repeat center center / 100% 100%;
animation:vertical 2s steps(1) infinite;}
.kisen0402 {
position:relative;}
.kisen0402 .txt {
margin:0 0 0 auto;}
.kisen0402 .txt::before {
left:0;
width:115%;
aspect-ratio:1 / 1;
background:url("../../images/kisen04_img0202.png") no-repeat center center / 100% 100%;
transform:translate(15%,-50%);}
.kisen0402 .img {
right:42%;}
.kisen0402 .img::after {
content:"";
position:absolute;
left:20%;
bottom:-5%;
width:16%;
aspect-ratio:6 / 7;
background:url("../../images/kisen04_chara0201.png") no-repeat center center / 100% 100%;
animation:vertical 2s steps(1) 1.5s infinite;}
.kisen0403 {
position:relative;}
.kisen0403 .txt {
margin:0 auto 0 0;}
.kisen0403 .txt::before {
right:0;
width:160%;
aspect-ratio:5 / 4;
background:url("../../images/kisen04_img0302.png") no-repeat center center / 100% 100%;
transform:translate(0%,-50%);}
.kisen0403 .img {
left:42%;}
.kisen0403 .img::after {
content:"";
position:absolute;
right:40%;
top:-5%;
width:17%;
aspect-ratio:6 / 7;
background:url("../../images/kisen04_chara0301.png") no-repeat center center / 100% 100%;
animation:vertical 2s steps(1) infinite;}

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

.kisen04 .txt h3 {
font-size:3.8vw;}
.kisen04 .txt .desc {
font-size:1.6vw;}

}

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

.kisen04 .txt {
text-align:center;
padding:9.5% 0 0 0;;
margin:9.5% auto 2.5%;
width:100%;}
.kisen04 .txt::before {
display:none;}
.kisen04 .txt::after {
content:"";
position:absolute;
z-index:-1;
left:50%;
top:0%;
width:15px;
height:15px;
background:#9fd9f6;
border-radius:50%;
transform:translate(-50%,-50%);}
.kisen04 .txt h3 {
margin:0 0 0.5em 0;
font-size:8.6vw;}
.kisen04 .txt .desc {
font-size:3.6vw;}
.kisen04 .txt .btn01{
margin:5% auto 1.1%;
width:60%;}
.kisen04 .img {
position:static;
margin:0 auto;
width:100%;
transform:translate(0,0%);}
.kisen0401 .img::after {
width:20%;}
.kisen0402 .img::after {
width:20%;}
.kisen0403 .img::after {
width:20%;}

}

.kisen-recruit {
text-align:center;
font-family:"Noto Sans JP", sans-serif;
padding:0 0 120px 0;
background:#dff2fc;}
.kisen-recruit .ttl01 {
margin-bottom:1%;
white-space:nowrap;}
.kisen-recruit .ttl01 h2 {
text-align:left;
display:block;
padding:0 0 4px 0;
width:calc(100% - 210px);
font-size:360%;
line-height:1.2;
font-weight:900;
color:#614d3f;
background:url("../../images/kisen_recruit01.png") no-repeat right center / 1200px;}
.kisen-recruit .ttl01 h2 span {
padding:0 0.25em 0 0;
background:#dff2fc;}
.kisen-recruit .ttl01 h3 {
text-align:right;
display:block;
padding:0 0 4px 0;
width:210px;
font-size:140%;
line-height:3.1;
font-weight:600;}
.kisen-recruit .ttl01 h3 a {
color:#614d3f;}
.kisen-recruit .bnr01 {
position:relative;
padding:2em 0 1.5em;
background:url("../../images/kisen_recruit02.jpg") no-repeat center center / cover;
border-radius:20px;}
.kisen-recruit .bnr01::before, .kisen-recruit .bnr01::after {
content:"";
pointer-events:none;
position:absolute;
z-index:2;
bottom:5%;
width:90px;
aspect-ratio:5 / 6;
animation:vertical 2s steps(1) infinite;}
.kisen-recruit .bnr01::before {
right:70.5%;
background:url("../../images/kisen_recruit0301.png") no-repeat center center / cover;}
.kisen-recruit .bnr01::after {
left:70.5%;
background:url("../../images/kisen_recruit0302.png") no-repeat center center / cover;}
.kisen-recruit .bnr01 h2 {
margin-bottom:0.6em;
font-size:260%;
line-height:1.3;
font-weight:600;
color:#614d3f;}
.kisen-recruit .bnr01 h2 br {
display:none;}
.kisen-recruit .bnr01 .txt01 {
margin-bottom:0.6em;
font-size:140%;
line-height:1.6;
font-weight:600;
color:#614d3f;}

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

.kisen-recruit .bnr01 h2 {
font-size:3.8vw;}
.kisen-recruit .bnr01 .txt01 {
font-size:2vw;}

}

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

.kisen-recruit {
padding:0 0 12% 0;}
.kisen-recruit .bnr01::before, .kisen-recruit .bnr01::after {
width:9%;}

}

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

.kisen-recruit .ttl01 h2 {
width:65%;
font-size:8.1vw;
line-height:1.2;
background:url("../../images/kisen_recruit01.png") no-repeat right center / 290%;}
.kisen-recruit .ttl01 h3 {
width:35%;
font-size:3.6vw;
line-height:2.7;}
.kisen-recruit .bnr01::before, .kisen-recruit .bnr01::after {
bottom:-3.5%;
width:16%;}
.kisen-recruit .bnr01::before {
right:-3.5%;}
.kisen-recruit .bnr01::after {
left:-3.5%;}
.kisen-recruit .bnr01 h2 {
font-size:8.3vw;}
.kisen-recruit .bnr01 h2 br {
display:block;}
.kisen-recruit .bnr01 .txt01 {
font-size:3.3vw;}

}

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

.kisen-recruit {
padding:20px 0 84px 0;}

}
