*{font-feature-settings: "palt";}
em{font-style: normal;}
.clr{clear: both; padding-top: 40px;}
.mgn0{margin: 0;}
.main { max-width: 1600px; margin: 0 auto;}
.main .main_visual { position: relative; z-index: -1; /* margin-bottom: 40px;  */margin-top: 10px;}
.main .main_visual .wave01 { position: absolute; top: 0; left: 0; width: 100%; height: 101%; z-index: 10;}
.main .main_visual img{width: 100%;}
.main .main_visual p{ font-family: 'Noto Sans JP', sans-serif; font-weight: 300;  position: absolute; color: #000;}
.main .main_visual .message { font-size: 3.5vw; top: 25%;  left: 50px; z-index: 10; line-height: 1.4; font-weight: bold;}
.main .main_visual p + p{z-index: 10; left: 50px; font-weight: bold; font-size: 2.5vw; top: 57%; line-height: 1.2}
.main .main_visual p + p + p{z-index: 10; left: 45px; font-size: 6vw; top: 67%;}
.main .main_visual small{position: absolute; left: 45px; bottom:17%;z-index: 10; color: #666; }
.career_step{ background: #E4555E; padding: 0 0 40px 0 }
.career_step ul{max-width: 960px; margin: 0 auto;}
.career_step ul.career li.slick-slide::before {content: ''; position: absolute; top: 0; bottom: 0; right: 0; left: 0; background-color: #fff; z-index: -1; transform: skew(-10deg);}
.career_step ul.career li.slick-slide{ position: relative; height: auto; margin:0 20px; color: #000; padding: 10px 0; height: 120px;}
.career_step ul.career li.slick-slide *{ font-style: normal !important; } 
.career_step ul.career li.slick-slide em{ font-size: 2.5rem; color: #D80C18; font-weight: bold; display: block; margin-left: 15px; }
.career_step ul.career li.slick-slide div{ font-size: 1.6rem;margin: 5px 65px 15px 0; font-weight: bold;  margin-left: 10px; line-height: 1.5;}
.career_step ul.career li.slick-slide div u{ color: #D80C18;}
.career_step ul.career li.slick-slide p{ font-size: 1.6rem; color: #666; line-height: 1.3; }
.career_step ul.career li.icon1{background: url('../img/icon1.png') right top no-repeat;}
.career_step ul.career li.icon2{background: url('../img/icon2.png') right top no-repeat;}
.career_step ul.career li.icon3{background: url('../img/icon3.png') right top no-repeat;}
.career_step .cat_name{margin: 0 0 40px 0;}
.slick-arrow{ display: block !important ;}
.slick-prev:before, .slick-next:before{font-size:2.5rem !important}
.slick-prev{left: -35px;}
.interview{max-width: 1680px; margin: 0 auto;}
.interview .item{margin: 80px 40px;}
.interview .item h3{color: #fff; font-size: 2.7rem; font-style: normal; font-weight: bold; display: inline; background: linear-gradient(transparent 75%, #EB868C 0%); padding: 0 20px 0 0;}
.interview .item p{font-size:1.8rem; line-height: 1.8; margin-top: 20px; opacity: 0.9}
.interview figure{position: relative;}
.interview figure.photo_r{max-width: 50%; float: right; margin: 0 0 40px 60px;}
.interview figure.photo_r:before{content: ''; position: absolute; top: 20px; bottom: -20px; right: 0; left: -20px; background-color: #E4555E; z-index: -1; }
.interview figure.photo_l{max-width: 50%; float: left; margin: 0 60px 40px 0;}
.interview figure.photo_l:before{content: ''; position: absolute; top: 20px; bottom: -20px; right: -20px; left: 0; background-color: #E4555E; z-index: -1; }
.interview figure.photo_center{ float: none; }
.interview figure img{width: 100%;}
.css-fade1,
.css-fade2,
.css-fade3{ opacity: 0; }
.css-fade--in { animation-name: fade-in; animation-duration: 1s; animation-timing-function: ease-out; animation-delay: 0; animation-iteration-count: 1; animation-direction: normal;  animation-fill-mode: forwards;  }

  @keyframes fade-in {
    0% { opacity: 0; transform: translateY(-30px);}
    100% { opacity: 1; transform: translateY(0); }
  }

.css-fade2 + .item{margin-top: 0;}
.message_area{ background: #FFFCED; padding: 40px; }
.message_area h2{display: flex; align-items: center; font-size:3rem; font-weight: bold; color: #D80C18; max-width: 960px; margin: 0 auto;}
.message_area h2:before, .message_area h2:after {content: ""; flex-grow: 1; height: 1px; background: #D80C18; display: block;}
.message_area h2:before {margin-right: .4em;}
.message_area h2:after {margin-left: .4em;}
.message_area h2 span{ display: block; position: relative; font-size: 1.8rem; color: #fff; background: url(../img/fusen.png) 0 4px no-repeat; background-size: cover; margin-left: 10px; padding: 15px 65px 15px 10px;}
.message_area h2 span br{display: none;}



.message_area div{ display: flex; justify-content: space-between; max-width: 960px; margin: 40px auto 0; align-items: center;}
.message_area div figure img{ border-radius: 100px; }
.message_area div p{width: 80%; background: #D80C18; padding: 20px; font-size:1.6rem; line-height: 1.7;position: relative; border-radius: 10px;}
.message_area div p:before{content: ""; position: absolute; top: 50%; left: -30px; margin-top: -25px; border: 15px solid transparent; border-right: 25px solid #D80C18;}

.daily_schedule{ background: #E4555E; padding:40px 0 }
.daily_schedule ul{max-width: 960px; margin: 0 auto; }
.daily_schedule ul.career li.slick-slide::before {content: ''; position: absolute; top: 0; bottom: 0; right: 0; left: 0; background-color: #fff; z-index: -1; transform: skew(-10deg);}
.daily_schedule ul.career li.slick-slide{ position: relative; height: auto; margin:0 20px; color: #000; padding: 20px; height: 180px;}
.daily_schedule ul.career li.slick-slide *{ font-style: normal !important; } 
.daily_schedule ul.career li.slick-slide em{ font-size: 2.5rem; color: #D80C18; font-weight: bold; display: block; margin-bottom: 10px;}
.daily_schedule ul.career li.slick-slide p{ font-size: 1.6rem; color: #666; line-height: 1.3; }
.daily_schedule .cat_name{margin: 0 0 40px 0;}

.daily_schedule ul{ max-width: 600px; margin: 0 auto;}
.schedule li em { font-weight: bold; display: block; color: #D80C18; padding: 10px; background: #FFDDDF;}
.schedule li p { border-left: solid 2px #FFBFBF; margin: 0 10px; padding: 10px 10px 30px; line-height: 1.5;}

.private{display: flex; justify-content: space-between; max-width: 960px; margin: 60px auto; background: #fff; border-radius: 20px; padding: 20px;}
.private h3{color: #D80C18; font-size: 2.5rem; font-weight: bold;}
.private div {max-width: 55%;margin: 0 25px;}
.private div p{color: #000; line-height: 1.7; margin: 25px 0 0 0;}
.private div + figure {max-width: 280px;}
.private div + figure img{border-radius: 20px;}

.people_list{background: #fff; padding: 30px 0 60px 0; box-shadow: #800 0px 0px 20px;}
.people_list ul.people{max-width: 960px; margin: 0 auto;}
.people_list ul.people li.icon {border:solid 1px #ccc; width: 150px; height: 150px; border-radius: 50%; overflow: hidden; margin: 0 20px}
.people_list ul.people li.icon a figure{width: 100%; height: auto; position: relative; overflow: hidden;}
.people_list ul.people li.icon:hover {border:solid 1px #D80C18}
.people_list ul.people li.icon a figure img{width: 100%;}
.people_list ul.people li.icon a figure figcaption{ text-align: center; width: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(255,255,255,0.8); opacity: 0; color: #000;  text-align: center; display: flex; justify-content: center; align-items: center;}
.people_list ul.people li.icon a:hover figure figcaption{opacity: 1; transition:all 0.3s ease;}
.people_list .slick-prev:before, .people_list .slick-next:before{color: #D80C18;}

.slick-prev, .slick-next, .slick-prev:before, .slick-next:before{ z-index: 100; overflow: visible; }
.slick-dots{ bottom: -45px;}
.slick-dots li button:before{color: #ccc; opacity: 1 !important;}
.slick-dots li.slick-active button:before{color: #D80C18 !important; opacity: 1 !important}

.link_top{ background: #fff;text-align: center;}
.link_top a{ display: inline-block; padding: 20px; background: #d80c18; border-radius: 50px; margin-top: 20px;}
.link_top a:hover{opacity: 0.8;}

@media screen and (max-width: 1000px) {
	.career_step ul,
	.daily_schedule ul,
	.people_list ul.people{  width: 90%; }
	.people_list ul.people li.icon{  }
}

@media screen and (max-width: 960px) {
	.private{ margin: 60px 40px; }
}

@media screen and (max-width: 700px) {
	.main .main_visual .message{/* font-size:1.8rem;  */ left: 20px;  top: 15%; width: 60%; font-weight:400 !important; /* line-height: 1.3; */}
	.main .main_visual p + p,
	.main .main_visual p + p + p{font-size:1.5rem; left: 20px;}
	.main .main_visual p + p{ top: 45%; }
	.main .main_visual p + p + p{top: 62%; font-size: 2.2rem;}
	.main .main_visual small{ left: 20px; bottom: 16%; font-size: 10px; }
	/* .message br{display: none;} */
	.private{ margin: 40px 20px; }
	.career_step,
	.daily_schedule {padding: 20px 0 30px}
	.career_step .cat_name,
	.daily_schedule .cat_name{margin-bottom: 30px;}
	.career_step ul.career li.slick-slide{ height: 100px; }
	.career_step ul.career li.slick-slide em,
	.daily_schedule ul.career li.slick-slide em,
	.career_step ul.career li.slick-slide div,
	.career_step ul.career li.slick-slide p,
	.daily_schedule ul.career li.slick-slide p{font-size: 1.4rem;}
	.cat_name em{font-size:1.2rem;}
	.cat_name h2{font-size:2.3rem; margin-top: 5px;}
	.interview .item{margin:40px 20px;}
	.interview .item h3{font-size:2.3rem;}
	.interview .item p{font-size: 1.6rem; line-height: 1.6; text-align: justify;text-justify: inter-ideograph; }
	.interview figure.photo_r,
	.interview figure.photo_l{ float: none; max-width: 100%; }
	.interview figure.photo_r{ margin: 0 0 40px 40px;}
	.interview figure.photo_l{ margin: 0 40px 40px 0;}
	.clr{padding-top: 0;}
	.slick-next{ right: -10px; }
	.slick-prev{left: -10px;}
	.message_area{padding:40px 20px;}
	.message_area h2{font-size: 1.8rem;}
	.message_area h2 span{font-size: 1.4rem; background: url(../img/fusen.png) 0 6px no-repeat; margin-left: 10px; background-size: cover; padding: 15px 40px 15px 5px;}
	.message_area h2:before,
	.message_area h2:after { margin: 0; display: none}
	.message_area div{display: block; margin-top: 20px;}
	.message_area div figure{text-align: center;}
	.message_area div figure img{width: 160px;}
	.message_area div p{width: 100%; margin-top: 20px; font-size: 1.4rem; text-align: justify;text-justify: inter-ideograph;}
	.message_area div p:before{top: -29px; left: 50%; margin-left: -15px; border: 15px solid transparent; border-bottom: 15px solid #D80C18; margin-top: 0;}
	.daily_schedule ul.career li.slick-slide{height: 150px;}
	.private{flex-wrap: wrap;}
	.private figure{ margin: 20px 0 0 0 }
	.private div{max-width: 60%; margin: 0 0 0 10px;}
	.private div p{ margin-top: 15px; text-align: justify;text-justify: inter-ideograph; font-size: 1.4rem;}
	.private h3{font-size: 2.1rem;}
	.private div + figure{width: 100%; max-width: 100%; margin: 20px auto 0;}
	.people_list ul.people li.icon{height: auto; border-radius: 10px;}
	.people_list ul.people li.icon a figure{width: auto;}
	.people_list ul.people li.icon a figure figcaption{opacity: 1; top: inherit; font-size:11px; padding: 5px 0;}
	.people_list ul.people li.icon a figure figcaption br:first-child{display: none;}
	.slick-prev:before,
	.slick-next:before{ opacity: 1;}
	.slick-prev, .slick-next{width: 27px; height: 27px;}
	.slick-dots li{margin: 0;}
	.link_top{ padding-bottom: 20px;}
	.link_top a{margin-top: 0;}
}
