@charset "UTF-8";

/* about ==================== */

.about-hashira {
position:relative;
width:100%;
aspect-ratio:120 / 85;}
.about-hashira img {
width:100%;}
.about-hashira .box-hashira {
position:absolute;
z-index:2;
width:30%;
aspect-ratio:1 / 1;}
.about-hashira .box-hashira::before {
content:"";
position:absolute;
z-index:-1;
left:10%;
bottom:0;
width:80%;
aspect-ratio:1 / 1;
border-radius:50%;}
.about-hashira .box-hashira .txt {
text-align:left;
margin:1.6em auto 0;
width:90%;
line-height:1.6;}
.about-hashira .box-hashira.box-hashira01 {
left:0;
top:10%;}
.about-hashira .box-hashira.box-hashira01::before {
background:radial-gradient(circle at 50% 50%, #fceded 65%, #fff 70.7%);}
.about-hashira .box-hashira.box-hashira02 {
left:35%;
top:0%;}
.about-hashira .box-hashira.box-hashira02::before {
background:radial-gradient(circle at 50% 50%, #fff6e9 65%, #fff 70.7%);}
.about-hashira .box-hashira.box-hashira03 {
right:0%;
top:10%;}
.about-hashira .box-hashira.box-hashira03::before {
background:radial-gradient(circle at 50% 50%, #eff6e5 65%, #fff 70.7%);}
.about-hashira .box-hashira.box-hashira04 {
left:17.5%;
bottom:0%;}
.about-hashira .box-hashira.box-hashira04::before {
background:radial-gradient(circle at 50% 50%, #f0eef6 65%, #fff 70.7%);}
.about-hashira .box-hashira.box-hashira05 {
right:17.5%;
bottom:0%;}
.about-hashira .box-hashira.box-hashira05::before {
background:radial-gradient(circle at 50% 50%, #eaf5f5 65%, #fff 70.7%);}
.about-hashira .img01 {
position:absolute;
width:18%;
left:50%;
top:50%;
transform:translate(-50%,-20%);}
.about-hashira .img0201 {
position:absolute;
width:48%;
right:3%;
top:1.5%;
transform:translate(0%,-50%);}
.about-hashira .img0202 {
position:absolute;
width:48%;
right:-9%;
top:12%;
transform:translate(0%,-50%);}
.about-hashira .img0203 {
position:absolute;
width:48%;
right:-10%;
top:19%;
transform:translate(0%,-50%);}

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

.about-hashira {
aspect-ratio:120 / 90;}
.about-hashira .box-hashira .txt {
font-size:1.5vw;}

}

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

.about-hashira {
aspect-ratio:auto;
margin:35% auto 0;
width:95%;
max-width:600px;}
.about-hashira .box-hashira {
position:relative;
margin-top:9%;
left:auto !important;
right:auto !important;
top:auto !important;
bottom:auto !important;
width:100%;}
.about-hashira .box-hashira .txt {
font-size:4vw;}
.about-hashira .img01 {
position:static;
margin:12% auto;
width:70%;
transform:translate(0%,0%);}

}

.about-map {
text-align:left;}
.about-map iframe {
display:block;
width:100%;
vertical-align:bottom;
margin-bottom:1.5em;
border-radius:1.5em;}

.about-history {
justify-content:space-between;
flex-direction:row-reverse;
margin:0 auto;
max-width:900px;}
.about-history .txt {
text-align:left;
width:70%;}
.about-history table {}
.about-history table th {
text-align:left;
vertical-align:top;
padding:0.8em 0;
width:115px;
line-height:1.4;
font-weight:700;
white-space:nowrap;}
.about-history table td {
text-align:left;
vertical-align:top;
padding:0.8em 0;
line-height:1.4;}
.about-history .img {
width:25%;}
.about-history .img img {
width:100%;
border-radius:1.0em;}
.about-history .img ul {
width:100%;
margin:0.8em 0 0 0;
justify-content:space-between;}
.about-history .img ul li {
width:100%;
margin:0 0 0.8em 0;}

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

.about-history {
flex-direction:row;}
.about-history .txt {
width:100%;}
.about-history table th {
display:block;
padding:0.8em 0 0.15em 0;
width:100%;
font-size:93.75%;}
.about-history table td {
display:block;
padding:0.15em 0 0.8em 0;
width:100%;
font-size:93.75%;}
.about-history .img {
width:100%;}
.about-history .img ul {
margin:0;}
.about-history .img ul li {
width:48%;
margin:0 0 4% 0;}

}

/* support ==================== */

.support01 {}
.support01 ul {
justify-content:space-between;
margin:0 auto;
width:100%;
max-width:1000px;}
.support01 ul li {
padding:2% 0;
width:22%;}
.support01 ul li img {
width:100%;}
.support02 {}
.support02 ul {
justify-content:space-between;
margin:0 auto;
width:100%;
max-width:1000px;}
.support02 ul li {
width:47.5%;}

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

.support01 ul {
max-width:640px;}
.support01 ul li {
padding:2% 0;
width:48%;}
.support02 ul li {
width:100%;}
.support02 ul li:nth-child(1) table {
border-bottom:none;}

}

/* life ==================== */

.life-day {}
.life-day ul {
justify-content:space-between;
margin:0 auto;
width:100%;}
.life-day ul.col-reverse {
flex-direction:row-reverse;}
.life-day ul li.img {
width:58%;}
.life-day ul li.img img {
width:100%;
border-radius:1.5em;}
.life-day ul li.txt {
text-align:left;
width:37%;}
.life-day ul li.txt .time {
text-align:center;
font-family:"Zen Maru Gothic", sans-serif;
margin:0.4em 0 0 0;
width:165px;
font-size:125%;
line-height:1.2;
font-weight:700;
color:#727171;}
.life-day ul li.txt h3 {
font-family:"Zen Maru Gothic", sans-serif;
margin:0.6em 0;
font-size:200%;
line-height:1.3;
color:#f19ca6;
font-weight:700;}
.life-day ul li.txt .desc {}
.life-day-divide {
margin:1em 0;
padding-top:90px;
width:100%;
height:0;
background:url("../images/life_day_divide.svg") repeat-y center top / 10px;}

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

.life-day ul {
max-width:640px;}
.life-day ul li.img {
width:100%;}
.life-day ul li.txt {
text-align:center;
margin-bottom:5%;
width:100%;}
.life-day ul li.txt .time {
width:100%;}
.life-day ul li.txt .desc {
text-align:left;}
.life-day-divide {
padding-top:70px;}

}

.life-season {
position:relative;
z-index:1;
margin:0 auto;
width:100%;
max-width:1200px;}
.life-season::before {
content:"";
position:absolute;
z-index:-1;
right:0%;
top:0%;
width:calc(50% + 0px);
height:70%;
background:#fdeff5;
border-radius:80px 0 80px 0;}
.life-season.season-spring::before {
background:#fdeff5;}
.life-season.season-autumn::before {
background:#fdede4;}
.life-season.season-summer::before , .life-season.season-winter::before {
right:auto;
left:0%;
background:#fffde5;
border-radius:0 80px 0 80px;}
.life-season.season-winter::before {
background:#eaf6fd;}
.life-season ul {
justify-content:space-between;
align-items:flex-end;
margin:0 auto;
width:92%;
max-width:1100px;}
.life-season ul.col-reverse {
flex-direction:row-reverse;}
.life-season ul li {
padding:25px 0;
width:calc(50% - 30px);}
.life-season ul li.txt {
text-align:right;
padding:40px 25px 25px 0px;
font-size:93.75%;}
.life-season ul.col-reverse li.txt {
text-align:left;
padding:40px 0px 25px 25px;}
.life-season ul li.txt h3 {
margin:0 0 1.5em 0;}
.life-season ul li .img img {
width:100%;
pointer-events:none;
border-radius:1.5em;}

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

.life-season::before {
width:calc(50% + 350px);}
.life-season ul {
max-width:640px;}
.life-season ul li {
padding:15px 0;
width:100%;}
.life-season ul li.txt {
padding:35px 30px 15px 0px;}
.life-season ul.col-reverse li.txt {
padding:35px 0px 15px 30px;}

}

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

.life-season::before {
width:calc(96% - 10px);
border-radius:60px 0 60px 0;}
.life-season.season-summer::before , .life-season.season-winter::before {
border-radius:0 60px 0 60px;}
.life-season ul li {
padding:12px 0;}
.life-season ul li.txt {
padding:35px 40px 12px 0px;}
.life-season ul.col-reverse li.txt {
padding:35px 0px 12px 40px;}

}

/* recruit ======================= */

.recruit-message {
margin-bottom:3%;}
.recruit-message .img01 , .recruit-message .img02 {
position:absolute;
top:50%;
width:21.5%;
transform:translate(0%,-55%);}
.recruit-message .img01 {
left:5%;}
.recruit-message .img02 {
right:1%;}

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

.recruit-message {
margin-bottom:0;}
.recruit-message .img {
display:flex;
flex-wrap:wrap;
justify-content:space-between;
margin:5% auto 0;
width:90%;
max-width:640px;}
.recruit-message .img01 , .recruit-message .img02 {
position:static;
width:48%;
transform:translate(0%,0%);}

}

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

.recruit-message .img {
margin:35px auto 0;}

}

.recruit-interview {
margin:0 auto;
width:100%;
justify-content:space-between;}
.recruit-interview.col-reverse {
flex-direction:row-reverse;}
.recruit-interview .img {
width:35%;}
.recruit-interview .txt {
text-align:left;
width:60%;
line-height:1.6;}
.recruit-interview .txt .ttl {
position:relative;
margin-bottom:2em;}
.recruit-interview .txt .ttl::after {
content:"";
position:absolute;
left:0;
top:0;
width:20%;
aspect-ratio:12 / 13;
background:url("../images/recruit_interview_ttl.png") no-repeat center center / cover;}
.recruit-interview .txt .ttl h3 {
font-family:"Zen Maru Gothic", sans-serif;
margin:0 0 0.1em 11%;
padding:0 0 0.25em 11%;
font-size:250%;
line-height:1.25;
color:#6a4331;
font-weight:700;
border-bottom:3px dotted #6a4331;}
.recruit-interview .txt .ttl .name {
text-align:right;
font-size:87.5%;
line-height:1.5;}
.recruit-interview .txt .ttl .name span {
font-size:150%;}
.recruit-interview .txt h4 {
margin:1.5em 0 0.5em 0;
font-size:112.5%;
line-height:1.35;
color:#f08300;
font-weight:700;}

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

.recruit-interview {
max-width:640px;}
.recruit-interview .img {
width:100%;}
.recruit-interview .img img {
max-width:85%;}
.recruit-interview .txt {
margin:2em 0 0 0;
width:100%;}

}

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

.recruit-interview .txt .ttl h3 {
font-size:6.4vw;}
.recruit-interview .txt .ttl h3 br {
display:none;}
.recruit-interview .txt .ttl .name {
font-size:3.2vw;}

}
