@charset "utf-8";
/* reset 2018.11
-------------------------------------------------------*/
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 62.5%;
font: inherit;
vertical-align: baseline;
}
html {
font-size: 62.5%;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section, small {
display: block;
}
body {
font-family: 'Noto Sans JP', sans-serif;
font-size: 1.6rem;
font-weight: 400;
line-height: 1.6;
color: #000;
background: #F5F3EE;
height: 100%;
-webkit-text-size-adjust: none;
-webkit-overflow-scrolling: touch;/*iOS滑らかスクロール*/
}
a {
color: #4c351f;
text-decoration: none;
transition: .3s;
cursor: pointer;
}
a:hover {
opacity: 0.7;
}
b {
font-weight: 500;
}
img {
width: auto;
max-width: 100%;
vertical-align: bottom;
height: auto;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
@media screen and (max-width: 768px) {
body {
font-size: 1.4rem;
}
a:hover {
opacity: 1;
}
}

/* common
-------------------------------------------------------*/
#wrapper {
overflow: hidden;
}
.sp {
display: none;
}
.area {
padding: 70px 20px;
box-sizing: border-box;
}
.inner {
width: 100%;
max-width: 1000px;
margin: 0 auto;
box-sizing: border-box;
}
@media screen and (max-width:768px) {
.pc {
display: none;
}
.sp {
display: block;
}
.area {
padding: 40px 20px;
}
.inner {
max-width: 100%;
}
}

/* header
-------------------------------------------------------*/
#header {
background: #fff;
padding: 15px 20px;
position: relative;
}
#header::before {
content: "";
display: block;
position: absolute;
right: 0;
top: 0;
height: 86px;
width: 17%;
max-width: 270px;
background: url(../img/rainbow_top.png) no-repeat left top / auto 100%;
}
#header .logo_box {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: flex-start;
}
#header .logo_jip img {
max-width: 64px
}
#header .cross {
margin: 0 15px;
}
#header .cross img {
max-width: 28px;
}
#header .logo_tech img {
max-width: 121px;
}
#header .txt {
font-size: 1.2rem;
font-weight: 500;
margin: 0 15px;
}
#header .logo_mynavi img {
max-width: 205px;
}
@media screen and (max-width:890px) {
#header .rainbow img {
max-width: 30%;
}
}
@media screen and (max-width:768px) {
#header {
padding: 10px;
}
#header::before {
height: 50px;
width: 17%;
}
#header .logo_jip img {
max-width: 32px
}
#header .cross {
margin: 0 10px;
}
#header .cross img {
max-width: 14px;
}
#header .logo_tech img {
max-width: 60px;
}
#header .txt {
font-size: 0.8rem;
margin: 0 10px;
line-height: 1.1;
padding: 5px 0 0;
}
#header .logo_mynavi img {
max-width: 100px;
}
#header .rainbow {
text-align: right;
}
#header .cross {
margin: 0 5px!important;
}
#header .txt {
margin: 0 5px!important;
}
}
@media screen and (max-width:450px) {
#header::before {
display: none;
}
}
@media screen and (max-width:320px) {
#wrapper {
overflow-x: scroll;
width: 320px;
}
#header .logo_box {
transform: scale(0.8);
transform-origin: left;
}
}

@media screen and (max-width:400px) {
}
/* visual
-------------------------------------------------------*/
#visual .inner {
max-width: 1000px;
opacity: 0;
transition: .6s;
transform: translate(0,30px)
}
.effectdelay.effect_active #visual .inner {
opacity: 1;
transform: translate(0,0)
}
#visual .inner {
}
#visual .area_in img {
width: 100%;
height: 900px;
}
/*@media screen and (min-width: 768px) and (max-width: 1200px) {*/
@media screen and (max-width: 1000px) {
#visual img {
height: calc(100vw * (900 / 1000));
}
}

/* lead
-------------------------------------------------------*/
#lead.area {
padding: 0 0 70px;
position: relative;
}
#lead .lead_wrap01.effect,
#lead .lead_wrap02.effect {
transition: .6s;
opacity: 0;
transform: translate(0,30px);
}
#lead .lead_wrap01.effect.effect_active,
#lead .lead_wrap02.effect.effect_active {
opacity: 1;
transform: translate(0,0);
}
.lead_wrap02 {
position: relative;
background: #184A24;
padding: 20px 20px 0;
text-align: center;
margin-bottom: 50px;
}
.lead_wrap02::before {
content: "";
width: 100%;
height: 50px;
position: absolute;
left: 0;
top: 100%;
background: url("../img/nami01.png") repeat-x;
}
.lead_wrap01 {
position: relative;
background: #ECEEDB;
padding: 0;
margin-bottom: 50px;
}
.lead_wrap01::before {
content: "";
width: 100%;
height: 50px;
position: absolute;
left: 0;
top: 100%;
background: url("../img/nami02.png") repeat-x;
}
.lead_txt {
padding: 20px 20px 0;
text-align: center;
font-size: 120%;
line-height: 2;
}
.lead_txt b {
font-weight: 800;
}
.lead_img_box {
position: relative;
text-align: center;
}
.lead_img_box .img {
transition: .6s;
opacity: 0;
transform: translate(0,100px);
}
.lead_img_box .img.effect_active {
opacity: 1;
transform: translate(0,0);
}
.lead_img_list {
position: absolute;
top: 50%;
transform: translate(0,-50%);
}
.lead_img_list.L {
left: 0;
}
.lead_img_list.R {
right: 0;
}
.lead_img_list > * {
opacity: 0;
position: relative;
transition: .3s;
width: 200px;
border: 5px solid #fff;
box-shadow: 0 0 20px rgba(0,0,0,0.1);
}
.lead_img_list > *.effect_active {
opacity: 1;
}
.lead_img_list01 {
width: 265px;
}
.lead_img_list01.effect_active {
transform: translate(-20%,-20%) rotate(15deg);
}
.lead_img_list02.effect_active {
transform: translate(-20%,20%) rotate(-15deg);
}
.lead_img_list03.effect_active {
transform: translate(20%,-20%) rotate(15deg);
}
.lead_img_list04.effect_active {
transform: translate(20%,20%) rotate(-15deg);
}
.lead_img_list05.effect_active {
transform: translate(20%,20%) rotate(15deg);
}
@media screen and (max-width: 1000px) {
.lead_img_box {
padding: 120px 0 50px;
}
.lead_img_list {
display: flex;
justify-content: center;
}
.lead_img_list.L {
top: 0;
bottom: inherit;
left: 50%;
right: inherit;
transform: translate(-50%,0);
}
.lead_img_list.R {
top: inherit;
bottom: 0;
left: 50%;
right: inherit;
transform: translate(-50%,0);
}
.lead_img_list > * {
width: 150px;
transform-origin: center;
}
.lead_img_list01 {
width: 165px;
}
.lead_img_list01.effect_active {
transform: translate(-20%,0%) rotate(15deg);
}
.lead_img_list02.effect_active {
transform: translate(0%,10%) rotate(-15deg);
}
.lead_img_list03.effect_active {
transform: translate(-20%,0%) rotate(15deg);
}
.lead_img_list04.effect_active {
transform: translate(0%,20%) rotate(-15deg);
}
.lead_img_list05.effect_active {
transform: translate(20%,0%) rotate(15deg);
}
}
@media screen and (max-width: 768px) {
.lead_img_box {
padding: 200px 0 130px;
}
}

/* movie
-------------------------------------------------------*/
#movie.area {
position: relative;
padding: 0 0 70px;
background: #9EC731;
margin-bottom: 50px;
}
#movie.area::before {
content: "";
width: 100%;
height: 50px;
position: absolute;
left: 0;
top: 100%;
background: url("../img/nami03.png") repeat-x;
}
#movie.effect {
transition: .6s;
opacity: 0;
transform: translate(0,30px);
}
#movie.effect.effect_active {
opacity: 1;
transform: translate(0,0);
}
.movie_wrap01 {
position: relative;
background: #184A24;
padding: 20px 20px 0;
text-align: center;
margin-bottom: 50px;
}
.movie_wrap01::before {
content: "";
width: 100%;
height: 50px;
position: absolute;
left: 0;
top: 100%;
background: url("../img/nami01.png") repeat-x;
}
#movie .ttl01 {
margin: 0 0 10px;
text-align: center;
}
#movie ul {
position: relative;
max-width: 860px;
background: #fff;
border-radius: 10px;
margin: 0 auto;
padding: 70px 100px;
}
#movie ul::before {
content: "";
display: block;
position: absolute;
left: -10px;
top: -10px;
width: calc(100% + 20px);
height: calc(100% + 20px);
border-radius: 10px;
background: rgba(255,255,255,0.3);
}
.slick-prev {
left: -30px;
}
.slick-next {
right: -30px;
}
#movie ul li {
margin: 0;
}
#movie .txt a {
color: #fff;
margin: 20px 0 0;
font-size: 2rem;
font-weight: 500;
display: block;
}
	@media screen and (max-width:1000px) {
	#movie ul {
	max-width: 80%;
	}
	}
	@media screen and (max-width:768px) {
	#movie ul {
	margin: 0 auto;
	padding: 20px 30px;
	}
	#movie ul li {
	margin: 0;
	}
	#movie iframe {
	height:400px;
	}
	}
/* interview
-------------------------------------------------------*/
#interview {
padding: 0 20px 100px;
background: url("../img/nami04.png") repeat-x bottom;
}
#interview .inner {
position: relative;
padding: 30px 0 0;
max-width: 1200px;
}
#interview .effect {
transition: .6s;
opacity: 0;
transform: translate(0,30px);
}
#interview .effect.effect_active {
opacity: 1;
transform: translate(0,0);
}
#interview .ttl01 {
text-align: center;
}
#interview .interview_list {
max-width: 900px;
max-width: 100%;
margin: 0 auto;
}
#interview .interview_list_box {
position: relative;
background: #fff;
border-radius: 20px;
margin-bottom: 30px;
}
#interview .interview_list_box .layout {
display: flex;
padding: 50px;
align-items: flex-start;
}
#interview .interview_list_box .layout .img {
background: #9ec731;
padding: 10px;
box-shadow: 10px 10px 0 rgba(0,0,0,0.1);
}
#interview .interview_list_box .layout .info {
flex: 1 0 0%;
padding-left: 30px;
align-self: center;
}
#interview .interview_list_box .layout .info .ttl {
font-size: 130%;
line-height: 1.4;
margin-bottom: 10px;
font-weight: bold;
}
#interview .interview_list_box .layout .info .txt {
margin-bottom: 20px;
}
#interview .interview_list_box .layout .info .btn_more a {
display: flex;
width: 100%;
max-width: 300px;
height: 60px;
align-items: center;
justify-content: center;
border-radius: 30px;
color: #fff;
background: #184A24;
box-shadow: 5px 5px 0 rgba(0,0,0,0.1);
margin: 0 auto;
}

#interview .interview_list_box.comingsoon .layout {
opacity: 0;
}
.interview_comingSoon {
position: absolute;
width: 100%;
height: 100%;
display: none;
justify-content: center;
align-items: center;
color: #ccc;
}
#interview .interview_list_box.comingsoon .interview_comingSoon {
display: flex;
flex-flow: column;
}
#interview .interview_list_box .interview_comingSoon b {
font-size: 200%;
}
#interview .interview_list_box .interview_comingSoon span {
font-size: 150%;
}
	@media screen and (max-width:1000px) {
	#interview .interview_list_box .layout {
	padding: 30px;
	}
	}
	@media screen and (max-width:800px) {
	#interview .interview_list_box .layout {
	flex-flow: column nowrap;
	max-width: 460px;
	margin: 0 auto;
	}
	#interview .interview_list_box .layout .info {
	padding: 20px 0 0;
	}
	}

/* schedule
-------------------------------------------------------*/
#schedule {
position: relative;
padding: 0 20px 100px;
background: #9EC731;
margin-bottom: 50px;
}
#schedule::before {
content: "";
width: 100%;
height: 50px;
position: absolute;
left: 0;
top: 100%;
background: url("../img/nami03.png") repeat-x;
}
#schedule .inner {
position: relative;
padding: 30px 0 0;
}
#schedule .ttl01 {
text-align: center;
}
.schedule_list {
}
.schedule_list_box {
position: relative;
}
.schedule_list_box:nth-child(1) {
z-index: 3;
}
.schedule_list_box:nth-child(2) {
z-index: 2;
}
.schedule_list_box:nth-child(3) {
z-index: 1;
}
.schedule_list_box:nth-child(2)::before,
.schedule_list_box:nth-child(3)::before {
content: "";
display: block;
position: absolute;
left: 50%;
bottom: 100%;
transform: translate(-50%,-50%) rotate(45deg);
width: 500px;
height: 30px;
background: url("../img/line02.png") no-repeat center;
z-index: 1;
}
.schedule_list_box:nth-child(3)::before {
transform: translate(-50%,-50%) rotate(-45deg);
}
.schedule_list_box .layout {
display: flex;
}
.schedule_list_box .layout .img {
position: relative;
display: flex;
flex: 0 1 450px;
width: 450px;
border-radius: 225px;
}
.schedule_list_box .layout .img span {
position: relative;
display: block;
overflow: hidden;
width: 450px;
border-radius: 225px;
z-index: 2;
}
.schedule_list_box .layout .img::before {
content: "";
position: absolute;
left: -10px;
top: -10px;
width: calc(100% + 20px);
height: calc(100% + 20px);
border-radius: 235px;
background: rgba(255,255,255,0.3);
}
.schedule_list_box .layout .info {
flex: 1 0 0%;
align-self: center;
color: #184A24;
font-weight: bold;
font-size: 110%;
line-height: 1.6;
padding-left: 50px;
}
@media screen and (min-width:900px) {
.schedule_list_box:nth-child(2) .layout {
flex-flow: row-reverse nowrap;
}
.schedule_list_box:nth-child(2) .layout .info {
text-align: right;
padding-left: 0;
padding-right: 50px;
}
}


#schedule .effect {
transition: .6s;
opacity: 0;
transform: translate(0,30px);
}
#schedule .effect.effect_active {
opacity: 1;
transform: translate(0,0);
}
@media screen and (max-width:900px) {
#schedule {
padding-bottom: 10px;
}
.schedule_list_box {
margin-bottom: 80px;
}
.schedule_list_box .layout .info {
font-size: 100%;
padding-left: 20px;
}
.schedule_list_box .layout .img {
flex: 0 1 300px;
width: 300px;
border-radius: 150px;
}
.schedule_list_box .layout .img span {
width: 300px;
border-radius: 150px;
}
.schedule_list_box .layout .img::before {
border-radius: 160px;
}
.schedule_list_box:nth-child(2)::before,
.schedule_list_box:nth-child(3)::before {
left: 150px;
width: 30px;
height: 200px;
background: url("../img/line03.png") no-repeat center / 10px auto;
transform: translate(-50%,50%) rotate(0);
}
}
@media screen and (max-width:750px) {
.schedule_list_box {
margin-bottom: 20px;
}
.schedule_list_box .layout .img {
flex: 0 1 150px;
width: 150px;
border-radius: 75px;
}
.schedule_list_box .layout .img span {
width: 150px;
border-radius: 75px;
background: none;
}
.schedule_list_box .layout .img::before {
border-radius: 80px;
}
.schedule_list_box:nth-child(2)::before,
.schedule_list_box:nth-child(3)::before {
left: 75px;
}
}
@media screen and (max-width:600px) {
.schedule_list_box .layout {
display: block;
text-align: center;
}
.schedule_list_box .layout .info {
padding: 0;
}

.schedule_list_box .layout .img {
width: 100%;
}
.schedule_list_box .layout .img span {
margin: 0 auto 10px;
width: 200px;
border-radius: 110px;
border: 10px solid rgba(255,255,255,0.3);
}
.schedule_list_box::before {
display: none!important;
}
.schedule_list_box .layout .img::before {
display: none!important;
}
}
/* company
-------------------------------------------------------*/
#company.area {
padding: 70px 20px;
}
#company .inner {
max-width: 700px;
}
#company.effect {
transition: .6s;
opacity: 0;
transform: translate(0,30px);
}
#company.effect.effect_active {
opacity: 1;
transform: translate(0,0);
}
#company .logo {
text-align: center;
margin: 0 0 30px;
}
#company .logo img {
max-width: 418px;
}
#company .recruit a {
display: block;
text-align: center;
max-width: 300px;
height: 50px;
border-radius: 100px;
font-size: 2.6rem;
font-weight: 700;
display: flex;
align-items: center;
justify-content: center;
background: #184A24;
margin: 0 auto 50px;
color: #fff;
}
#company .contact {
border: 5px solid #9ec731;
border-radius: 20px;
padding: 20px 20px 30px;
background: #fff;
text-align: center;
display: flex;
flex-flow: column;
align-items: center;
margin: 0 0 50px;
}
#company .contact .contact_ttl {
font-size: 2rem;
font-weight: 700;
color: #000000;
margin: 0 0 20px;
padding: 0 0 15px;
border-bottom: 1px solid #9ec731;
width: 100%;
}
#company .contact dl {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
margin: 0 0 20px;
}
#company .contact dl dt {
margin: 0 20px 0 0;
}
#company .contact dl dt img {
max-width: 239px;
}
#company .contact dl dd {
font-weight: 700;
font-size: 1.8rem;
color: #070f26;
}
#company .contact .mid_ttl {
font-size: 1.8rem;
margin: 0 0 20px;
}
#company .contact_list li {
font-weight: 700;
font-size: 2rem;
line-height: 1;
}
#company .contact_list li a {
color: #000;
display: flex;
align-items: center;
}
#company .contact_list li:not(:last-child) {
margin: 0 0 10px;
}
#company .contact_list li img {
margin-right: 20px;
max-width: 32px;
}
#company .company_list li {
font-weight: 700;
font-size: 2rem;
line-height: 1;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
padding: 0;
background: #fff;
border-radius: 10px;
overflow: hidden;
margin-bottom: 30px;
}
#company .company_list li .ttl {
flex: 0 1 35%;
text-align: center;
font-size: 1.5rem;
font-weight: 700;
color: #184A24;
background: #E2EEC1;
padding: 30px;
display: flex;
align-items: center;
}
#company .company_list li a {
display: flex;
flex-flow: column nowrap;
align-items: flex-start;
justify-content: center;
padding: 30px 20px;
width: 65%;
}
#company .company_list li a span {
font-size: 1.3rem;
color: #333;
display: block;
margin-bottom: 10px;
}
#company .company_list li img {
width: auto;
height: 60px;
}
#company .company_list li:first-child img {
height: 80px;
}
#company .company_list li:nth-child(2) img {
height: 80px;
}
#company .company_list li:nth-child(3) img {
}
#company .company_list li:last-child img {
}
@media screen and (max-width:768px) {
#company.area {
padding: 50px 20px 100px;
}
#company .inner {
max-width: 700px;
}
#company .logo {
text-align: center;
margin: 0 0 30px;
}
#company .logo img {
max-width: 200px;
}
#company .recruit a {
font-size: 2rem;
margin: 0 auto 40px;
}
#company .contact {
border: 3px solid #9ec731;
margin: 0 0 50px;
}
#company .contact .contact_ttl {
font-size: 1.6rem;
}
#company .contact dl {
flex-flow: column;
}
#company .contact dl dt {
margin: 0 0 10px;
}
#company .contact dl dt img {
max-width: 239px;
}
#company .contact dl dd {
font-size: 1.4rem;
}
#company .contact .mid_ttl {
font-size: 1.4rem;
margin: 0 0 20px;
}
#company .contact_list li {
font-weight: 700;
font-size: 2rem;
line-height: 1;
}
#company .contact_list li a {
font-size: 1.4rem;
}
#company .contact_list li:not(:last-child) {
margin: 0 0 10px;
}
#company .contact_list li img {
margin-right: 10px;
max-width: 25px;
}
#company .company_list li {
flex-flow: column;
align-items: center;
justify-content: center;
padding: 0 20px;
}
#company .company_list li:not(:last-child) {
padding: 0 20px 30px;
margin: 0 0 30px;
}
#company .company_list li .ttl {
width: 100%;
font-size: 1.6rem;
margin: 0 0 20px;
}
#company .company_list li a {
width: 100%;
align-items: center;
}
#company .company_list li a span {
font-size: 1.2rem;
margin-bottom: 15px;
}
}
/* footer
-------------------------------------------------------*/
#footer {
display: flex;
height: 100px;
width: 100%;
justify-content: center;
align-items: center;
background: #184A24;
color: #fff;
font-size: 1.4rem;
text-align: center;
position: relative;
}
#footer::before {
content: "";
display: block;
position: absolute;
right: 0;
bottom: 0;
height: 112px;
width: 17%;
max-width: 270px;
background: url("../img/rainbow_bottom.png") no-repeat left top / auto 100%;
}
#footer.area {
padding: 10px 20px;
}
#footer .txt {
margin: 0 0 5px;
}
#footer .rainbow {
position: absolute;
right: 0;
bottom: 0;
text-align: right;
}
#footer .rainbow img {
max-width: 326px;
}
@media screen and (max-width:890px) {
#footer .rainbow img {
max-width: 30%;
}
}
@media screen and (max-width:768px) {
#footer {
font-size: 1.4rem;
}
#footer.area {
padding: 20px;
}
#footer .txt {
font-size: 1rem;
}
#footer .copy {
font-size: 1rem;
}
#footer .rainbow {
text-align: right;
}
#footer .rainbow img {
max-width: 20%;
}
}
@media screen and (max-width:450px) {
#footer::before {
display: none;
}
}

/* page_top
-------------------------------------------------------*/
#page_top {
position: fixed;
right: 10px;
bottom: 10px;
width: 40px;
height: 40px;
cursor: pointer;
background: #184A24;
border: 1px solid #fff;
border: none;
border-radius: 50px;
z-index: 10;
display: flex;
justify-content: center;
align-items: flex-end;
}
#page_top::before {
position: absolute;
display: block;
content: "";
width: 10px;
height: 10px;
border-top: solid 2px;
border-right: solid 2px;
transform: rotate(-45deg);
top: 40%;
bottom:  50%;
color: #fff;
}
@media screen and (max-width:768px) {
#page_top {
width: 40px;
height: 40px;
}
#page_top::before {
width: 10px;
height: 10px;
}
}

