@charset "utf-8";
/****************************
左側：下層共通
*****************************/
#mv{
	width:50%;
	height:calc(100vh - 60px);
	padding-top:4%;
	position:fixed;
	left:0;
	top:60px;
	z-index:99;
	background:
		url(../images/mv_cover.png)no-repeat center top,
		url(../images/entry/mv_bg.webp)no-repeat center center;
	background-size:100% auto, cover;
}
#mv h1{
	width:47%;
	padding:0.5em 0 0.5em 1em;
	font-size:2.5vw;
	text-align:left;
	background-color:#fff;
	box-shadow:1px 1px 5px rgba(220,123,126,0.8);
}
#mv h1 .en{
	display:block;
	line-height:1;
	font-weight:900;
	letter-spacing:0.1em;
}
#mv h1 .jp{
	display:block;
	font-size:1.25vw;
}

@media screen and (max-width:768px){
	#mv{
		width:auto;
		height:auto;
		min-height:calc(55vh - 50px);
		padding-top:8%;
		position:static;
		left:auto;
		top:auto;
	}
	#mv h1{
		font-size:5vw;
	}
	#mv h1 .jp{
		font-size:2.5vw;
	}
}

/****************************
右側：共通
*****************************/
.box {
    width: 88%;
    margin: 0 auto 50px auto;
}
/*見出し*/
.page_copy {
    font-size: 24px;
    margin-top: 1em;
    margin-bottom: 1em;    
}
.line_gra {
    background-image: url(../images/line_gra.png);
    background-size: 100% 8px;
    background-repeat: no-repeat;
    background-position: left bottom;
    padding-bottom: 15px;
    margin-bottom: 1em;
    font-size: 24px;
    line-height: 1.4;
    text-align: left;
}
/*アンカーリンクボタン*/
.anchor_wrap {
 	display: flex;
	flex-wrap: wrap;
	justify-content:space-around;
	align-items: center;
   }
.anchor_wrap li.anchor_btn {
    list-style: none;
    width: 45%;
  }
 .anchor_btn a{
	width: 100%;
	font-weight: 700;
	line-height: 1.2;
	color: #36A2A0;
	text-decoration: none;
    display: block;
	padding: 1em 0.75em;
	background-color: #FFF;
	box-shadow: 0px 1px 8px 1px rgba(0, 0, 0, 0.05);
    margin:10px auto;
    border: 2px solid #36A2A0;    
    border-radius: 0.5em;
}
.anchor_btn a:hover	{
    opacity: 0.8;
}
@media screen and (max-width:768px){
    .anchor_wrap {
        justify-content:space-between;
       }
    .anchor_wrap li.anchor_btn {
        width: 48%;
      }
     .anchor_btn a{
         font-size: 13px;
         padding: 0.8em 0.75em;
         margin:7px auto;
     }
}
/****************************
TOP
*****************************/
#top #mv-top{
	width:50%;
	height:calc(100vh - 60px);
	position:fixed;
	left:0;
	top:60px;
	z-index:99;
	background:url(../images/top/mv_bg.webp)no-repeat right center;
	background-size:cover;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}
#top #mv-top .inner{
	text-align:left;
}
#top #mv-top .inner h1{
	width:56%;
}
#top #mv-top .inner .lead{
	line-height:2;
	margin-top:0.5em;
	font-size:2vw;
}
#top #mv-top .inner .links{
	width:52%;
	font-size:1.5vw;
}
#top #mv-top .inner .links li{
	margin-top:1.5em;
}
#top #mv-top .inner .links li .btn {
    border: none;
}
@media screen and (max-width:768px){
	#top #mv-top{
		width:auto;
		height:auto;
		min-height:calc(100vh - 50px);
		padding:9% 0;
		position:static;
		left:auto;
		top:auto;
	}
	#top #mv-top .inner h1{
		width:56%;
	}
	#top #mv-top .inner .lead{
		font-size:5vw;
	}
	#top #mv-top .inner .links{
		width:52%;
		font-size:3vw;
        margin-left: 0;
	}
    #top #mv-top .inner .links li .btn {
        width: 100%;
    }
}
/* #top #cont1 */
#top #cont1{
}
#top #cont1 .cont_wrapper{
	margin-top:-7%;
}
#top #cont1 .cont_wrapper p{
	margin-bottom:2em;
     font-size: 15px;
	line-height: 2.5; 
    letter-spacing:-0.03em;    
}
#top #cont1 figure figcaption{
	margin-top:2em;
    font-size: 15px;
	line-height: 2.5;         
    letter-spacing:-0.03em;
}
@media screen and (max-width:768px){
	#top #cont1 .cont_wrapper{
		margin-top:-4%;
}
#top #cont1 .cont_wrapper p{
     font-size: 16px;
	line-height: 2.0; 
}
#top #cont1 figure figcaption{
    font-size: 16px;
	line-height: 2.0;
}    
}

/****************************
インタビュー一覧
*****************************/
#interview #mv{
	background:
		url(../images/mv_cover.png)no-repeat center top,
		url(../images/interview/mv_bg.webp)no-repeat center center;
	background-size:100% auto, cover;
}
#interview-list{
}
#interview-list .interview{
	/*margin-top:-9.4%;*/
}
#interview-list .interview li{
	padding-bottom:9%;
	background:url(../images/interview/cont1_h2.png)no-repeat center 70%;
	background-size:100% auto;        
}
        #top #interview-list .interview li{
            background:none;
        }
#interview-list .interview li figure{
	position:relative;
}
#interview-list .interview li figure img {
    width: 88%;
    margin-left: auto;
    margin-right: auto;
}
        #top #interview-list .interview li figure img {
            width: 100%;
        }
#interview-list .interview li figure figcaption{
	position:absolute;
	right:0;
	bottom:15%;
	font-size:2.3vw;
	text-align:left;
}
#interview-list .interview li:nth-child(even) figure figcaption{
	right:auto;
	left:0;
}
#interview-list .interview li figure figcaption .curtain{
	display:inline-block;
	line-height:1.8;
	position:relative;
}
#interview-list .interview li figure figcaption .curtain:after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	background-color:#dc7b7e;
	position:absolute;
	top:0;
	left:0;
	transform: scaleX(0);
}
#interview-list .interview li figure figcaption .curtain span{
	letter-spacing:-0.06em;
	padding:0 0.5em;
	background-color:#fff;
	opacity:0;
	transition: all 0s 1s ease;
}
#interview-list .interview li figure figcaption .curtain.active span{
	opacity:1;
}
#interview-list .interview li figure figcaption .curtain.active:after{
	animation: curtain 1s ease 0.5s 1;
}
@keyframes curtain {
	0% {
		transform-origin: left center;
		transform: scaleX(0)
	}
	49.999% {
		transform-origin: left center;
		transform: scaleX(1)
	}
	50% {
		transform-origin: right center;
		transform: scaleX(1)
	}
	100% {
		transform-origin: right center;
		transform: scaleX(0)
	}
}

#interview-list .interview li .name{
	margin-top:2%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
#top #interview-list .interview li .name{
    margin-top:-5%;
}
#interview-list .interview li .name dt{
	text-align:left;
}
#interview-list .interview li .name dt .small{
	display:block;
	font-size:1.5vw;
    line-height: 1.4;
}
#interview-list .interview li .name dt .large{
	line-height:1.3;
	display:block;
	font-size:2.2vw;
}
@media screen and (max-width:768px){
	#interview-list .interview li figure figcaption{
		font-size:4.6vw;
	}

	#interview-list .interview li .name dt .small{
		font-size:3vw;
	}
	#interview-list .interview li .name dt .large{
		font-size:4.4vw;
	}
}
/****************************
インタビュー詳細
*****************************/
#interview-detail{
	padding:0 0 15%;
}
#interview-detail .h2_wrapper{
	padding:5% 6% 3% 6%;
	background:url(../images/interview/cont1_h2.png)no-repeat center bottom;
	background-size:100% auto;
}
#interview-detail .h2_wrapper h2{
	font-size:1.87vw;
	height:4em;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	-webkit-flex-direction: column;
	flex-direction: column;
	transform:translate(6.8%,-0.9em);
}
#interview-detail .h2_wrapper h2 span{
	display:block;
	line-height:1.8;
	padding-left:0.5em;
	font-size:1.87vw;
	font-weight:500;
	background-color:#fff;
}
#interview-detail .name{
	margin-top:5%;
}
#interview-detail .name div{
	margin-top:0.5em;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#interview-detail .name div dt{
	line-height:1.8;
	padding:0 1em;
}
#interview-detail .name div dd{
    line-height: 1.4;
	padding:0 0.5em;
	font-size:1.5vw;
	letter-spacing:-0.06em;
     text-align: left;
}

#interview-detail .cont_wrapper{
	padding-bottom:9%;
	text-align:left;
}
#interview-detail .cont_wrapper h3{
	line-height:1.6;
	margin-top:2em;
	/*font-size:1.5vw;*/
}
#interview-detail .cont_wrapper p{
	margin-top:1em;
	/*font-size:1.1vw;*/
    ont-size: 14px;    
}
#interview-detail .cont_wrapper figure{
	margin-top:1em;
	padding: 0 15%;
}

#interview-detail .btn{
	line-height:calc(3em - 4px);
	margin:auto;
	padding:0;
}
#interview-detail .btn img{
	right:auto;
	left:1em;
	transform:translateY(-50%) rotate(180deg);
}

@media screen and (max-width:768px){
	#interview-detail .h2_wrapper h2{
		font-size:5vw;
	}
	#interview-detail .h2_wrapper h2 span{
		font-size:5vw;
	}
	#interview-detail .name div dd{
		font-size:4vw;
	}
	#interview-detail .cont_wrapper h3{
		/*font-size:3.8vw;*/
	}
	#interview-detail .cont_wrapper p{
		/*font-size:3.2vw;*/
        font-size: 14px;
	}
}
/****************************
採用情報　一覧
*****************************/
#information #mv{
	background:
		url(../images/mv_cover.png)no-repeat center top,
		url(../images/information/mv_bg.webp)no-repeat center center;
	background-size:100% auto, cover;
}
#information .page_copy {
	/*一覧・詳細共通*/
    margin-bottom: 0em !important;    
}
#information .cont {
	/*一覧・詳細共通*/
	padding:0% 0 12% 0;  
}
#info-list .cont {
    padding: 3% 0 12% 0 !important;
}
#info-list dl.type {
    border-bottom: 1px dotted #AAA;
}
#info-list dl.type a {
    width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
    padding: 5px 0 7px 0;
}
#info-list dl.type a:hover {
    color: #dc7b7e;
}
#info-list dl.type dt {
    font-size: 16px;
}
#info-list dl.type dd {
}
#info-list dl.type dd span {
    color: #dc7b7e;
    font-size: 12px;
    padding: 1px 5px;
    display: inline-block;
    margin-left: 7px;
    border: 1px solid #dc7b7e;
}
#info-list .arrow_btn{
    margin: 20px 0 50px auto;
}
@media screen and (max-width:768px){
    #info-list dl.type a {
        padding: 15px 0 17px 0;
    }
    #info-list dl.type dt {
        font-size: 14px;
    }
    #info-list dl.type dd span {
        font-size: 11px;
        margin-left: 5px;
    }
	#info-list .arrow_btn{
        font-size:3.5vw;
		border-bottom:0.4vw solid;
	}
}
#info-list .kome,
#info-detail .kome{
	text-align: left !important;
	font-size: 12px;
}
/****************************
採用情報　詳細
*****************************/
#info-detail .cont {
    padding: 0% 0 12% 0;
}
#info-detail table {
    text-align: left;
    margin-bottom: 30px;
}
#info-detail table th,td {
    border-bottom: 1px dotted #AAA;
    font-size: 14px;
    line-height: 1.6;
    padding: 10px;
}
#info-detail table th {
    width: 27%;
    background-color: #F3F3F3;
}
#info-detail table th.bg_pink {
    font-size: 16px;
    text-align: center;
    color: #FFF;
    background-color: #dc7b7e;
}
/*インタビューリンクボタン*/
.interview_link {
    margin: 10px 0;
}
.interview_link a {
    border: 1px solid #36A2A0;
    border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;    
}
.interview_link a .ph {
    width: 25%;
    border-bottom-left-radius: 10px;
    border-top-left-radius: 10px;
    overflow: hidden;
}
.interview_link a .text_link {
    width: 70%;
	color: #36A2A0;
}
.interview_link a:hover .text_link {
	text-decoration: underline;
}
#info-detail .btn{
	line-height:calc(3em - 4px);
	margin:auto;
	padding:0;
}
#info-detail .btn img{
	right:auto;
	left:1em;
	transform:translateY(-50%) rotate(180deg);
}
@media screen and (max-width:768px){
    #info-detail table th,td {
    }
    #info-detail table th {
        width: 30%;
        font-size: 13px;    
    }
}
/****************************
応募フォーム
*****************************/
#contact #mv{
	background:
		url(../images/mv_cover.png)no-repeat center top,
		url(../images/entry/mv_bg.webp)no-repeat center center;
	background-size:100% auto, cover;
}
/****************************
送信完了
*****************************/
#thanks {
	margin: 100px auto;
	text-align: center;
}
#thanks dl {
}
#thanks dt {
	font-size: 30px;
	font-weight: bold;
	margin: 50px auto;
}
#thanks dd p.cap {
    text-align: center;
    width: 90%;
    margin: 0 auto;
}
#thanks dd address {
	font-style: normal;
	max-width: 700px;
	width: 90%;
	margin: 30px auto 0 auto;
	padding-top: 30px;
	padding-bottom: 30px;
	font-size: 16px;
	/*border-top: 1px solid #333;
	border-bottom: 1px solid #333;*/
}
#thanks .bt {
	margin-top: 50px;
	width: 35%;
	margin-left: auto;
	margin-right: auto;
}
#thanks .bt .css_btn_class_kei {
	width: 100%;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	color: #888;
	display: inline-block;
	line-height: 160%;
	padding-top: 15px;
	padding-bottom: 15px;
	border-radius: 50px;
	font-weight: bold;
	border: 2px solid #888;
}
#thanks .bt .css_btn_class_kei:hover {
	background-color: #888;
	color: #FFF;
	opacity: 1.0 !important;
}

