@charset "utf-8";
/* CSS Document */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {padding: 0; margin: 0; font-weight: normal;}
a{text-decoration:none;}
table {border-spacing: 0;}
fieldset,img {border: 0;}
address,caption,cite,code,dfn,em,strong,th,var {font-weight: normal; font-style: normal;}
strong{font-weight: bold;}
ol,ul,li {list-style: none; margin:0;padding:0;}
caption,th {text-align: left;}
h1,h3,h4,h5,h6 {margin:0; padding:0;}
q:before,q:after {content:'';}
abbr,acronym {border: 0;}
img {max-width: 100%;}
table {width: 100%;}
.clear {clear:both;}
.clearfix:after {content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix { min-height: 1px;}
* html .clearfix { height: 1px;}
*{box-sizing: border-box; list-style: none;}
input[type="text"],input[type="tel"],input[type="email"],input[type="reset"],input[type="submit"], textarea {-webkit-appearance: none; border-radius: 0;}

img,canvas,iframe,video,svg{max-width:100%}
img,svg{margin: 0; padding: 0; vertical-align: bottom; max-width: 100%; height: auto;}

.overflow-container{overflow-y:scroll; -webkit-overflow-scrolling:touch;}
a, a:link, a:active{color: #231815; text-decoration: none; transition: all 0.5s ease 0s;}
a:hover{opacity: 0.7;}

.float-left{float:left;}
.float-right{float:right;}

.iv{opacity: 0;}

html{
overflow: auto;
width: 100%;
height: 100%;
}
body{
width: 100%;
height: 100%;
margin: 0;
padding: 0;
font-family: "游ゴシック Medium", "Yu Gothic Medium", "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
font-size: 14px;
line-height: 1.6;
color:#1D1717;
background: #fff;

-webkit-text-size-adjust: 100%; 
	-ms-text-size-adjust: 100%;
 -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;

}


/* レイアウト
*************************************************************/
#wrap{
display: block;
padding: 0 3%;
/*padding-top: 80px;*/
}

#contents-wrap{
display: block;
padding: 0 3%;
/*padding-top: 80px;*/
}

.content{
max-width: 1000px;
margin:0 auto;
}

/*article, section, .content{
margin-bottom: 3.0em;
}*/

article, .content{
margin-bottom: 5.0em;
}
.content{
margin-bottom: 5.0em;
}


#fixed {
display: block;
position: fixed;
background: url(../img/top-bg.png) 50% 100% no-repeat;
background-size: cover;
top: 0;
left: 0;
width: 100vw;
height: 120%;
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
z-index: -1;
}







/* 文字・共通
*************************************************************/
h1, h2, h3, h4, h5, h6 {margin-bottom: .25em;}
h1 {
width: 100%;
font-size: 1.2em;
font-weight: bold;
margin-bottom: 2.0em;
padding: 0.5em 0.3em;
line-height: 1.6;
color: #fff;
background-color: #00A0DA;
}
h2, .h2-style {
font-size: 1.2em;
font-weight: bold;
color: #00A0DA;
text-align: center;
margin-bottom: 1.6em;
background-color: transparent;
}
h3 {font-size: 1.1em;}
h4, h5, h6 {font-size: 1em;}
p {font-size: 1.0em; margin: 0 0 .5em 0;}
br {line-height: 0.6em;}


.svg-icon{
width: 40px;
height: auto;
margin: 0 auto 1.0em;
}

.recruit-flow p a:link, .recruit-flow p a:visited, 
.recruit-faq p a:link, .recruit-faq p a:visited,
.recruit-entry p a:link, .recruit-entry p a:visited,
.recruit-jobdescription p a:link, .recruit-jobdescription p a:visited {
color: #1111cc;
}
.recruit-flow p a:hover, 
.recruit-faq p a:hover,
.recruit-entry p a:hover,
.recruit-jobdescription p a:hover {
text-decoration:underline;
}








.entry-nav-sp, .entry-nav-pc{height: 100%;}

.entry-nav-sp a, .entry-nav-pc a{
height: 100%;
margin-left: 0.75em;
padding: 0 0.75em;
font-size: 1.0em;
font-weight: bold;
background-color: #FFE200;
border-left: 2px solid #1D1717;
border-right: 2px solid #1D1717;

display: flex;
justify-content: center;
align-items: center;
}
.entry-nav-pc a{
padding: 0 1.2em;
font-size: 1.2em!important;
}

.entry-nav-pc .drawer-menu-item:hover {
text-decoration: none;
background-color: #FFE200 !important;
}

@media screen and (min-width: 450px) {
.entry-nav-sp a, .entry-nav-pc a{
padding: 0 1.2em;
font-size: 1.2em;
}
}
@media screen and (min-width: 980px) {
.entry-nav-sp{ display: none;}
.entry-nav-pc a{ width: 110px;}
}

@media screen and (max-width: 980px) {
.entry-nav-pc{ display: none;}
}



/* トップページ
*************************************************************/
#main, #top-content{background-color: #fff;}

.main-bg{
position: relative;
width: 100%;
max-width: 1150px;
height: 100vh;
margin: 0 auto;
background-image: url(../img/main.png);
background-repeat: no-repeat;
background-position: right 40% bottom 80%;
background-origin: content-box;
background-size: auto 100vh;
}


.top-layout{
padding: 8% 3%;
max-width: 1000px;
margin: 0 auto;
transition: opacity .5s ease .75s;
}
.top-layout::before {
content: "";
display: block;
}


/* セクション0 ヒーローイメージ
*************************************************************/
/* ヒーローイメージ テキスト */
.main-text{
position: absolute;
top: 8%;
right: 3%;
margin: auto;

display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}

#main .main-text img{height: 50vh;}

.scroll-wrap{margin-left: 10px;}

.main-tategaki{
-webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
margin-left: 3px;
margin-top: 30px;
}


/* マウススクロールアイコン */
#scrolldown {}
#scrolldown a {
position: relative;
padding: 10px;
color: inherit;
z-index: 2;
}
#scrolldown a span {
position: absolute;
top: -4px;
left: 0%;
width: 30px;
height: 50px;
border: 2px solid #00A0DA;
border-radius: 50px;
box-sizing: border-box;
}
#scrolldown a span::before {
position: absolute;
top: 3px;
left: 50%;
content: '';
width: 6px;
height: 6px;
margin-left: -3px;
background-color: #00A0DA;
border-radius: 100%;
animation: sdb 2s infinite;
box-sizing: border-box;
}

@keyframes sdb {
0%   {transform: translate(0, 0); opacity: 0;}
40%  {opacity: 1;}
80%  {transform: translate(0, 15px); opacity: 0;}
100% {opacity: 0;}
}



/* セクション1 私たちはセールスプロモーション...
*************************************************************/
#top-work{
height: 100vh;
display: flex;
/*justify-content: center;*/
align-items: center;
}

#top-work h2, #top-support h2{
font-size: 1.4em;
color: #FFE200;
margin-bottom: 1.5em;
}
#top-work p{color: #fff;}

/* アイコン */
.top-sp-wrap{
display: flex;
justify-content :space-between;
flex-wrap: wrap;
color: #fff;
margin-top: 1.5em;
margin-bottom: 3.0em;
}
.top-sp{
width: 24%;
margin: 0%;
padding: 1.0em 0.5em 0;
text-align: center;
font-size: 0.5em;
line-height: 1.2;
color: #fff;
border: 4px solid #fff;
}
.top-sp img{
height: 50px;
margin-bottom: 1.0em;
}


/* セクション2 代表メッセージ
*************************************************************/
#top-message{
height: 100vh;
display: flex;
align-items: center;
background-color: #fff;
}

#top-message h2{
font-size: 1.4em;
/*border-bottom: 2px solid #1D1717;*/
margin-bottom: 2.0em;
}

#top-message img{
border: 4px solid #1D1717;
}


/* セクション2 サポート体制
*************************************************************/
#top-support section{
margin: 3.0em 0;
text-align: center;
}

#top-support h3{
font-size: 1.4em;
font-style: italic;
color: #fff;
margin-bottom: 1.5em;
text-align: left;
display: flex;
align-items: center;
}
#top-support h3:after {
border-top: 1px solid;
content: "";
flex-grow: 1;
margin-left: 1rem;
}
#top-support p{
color: #fff;
text-align: left;
}
#top-support img{
width: 90%;
max-width: 500px;
margin-bottom: 2.0em;
}


/* セクション3 「成長」への「近道」ストーリー
*************************************************************/
#top-shortcut{
width: 100%;
background-color: #fff;
}

#top-shortcut h2, #top-interview h2{
font-size: 1.4em;
border-bottom: 2px solid #1D1717;
margin-bottom: 1.5em;
}

#top-shortcut h3{
font-weight: bold;
text-align: center;
margin-top: 1.0em;
margin-bottom: 0.8em;
}
#top-shortcut h4{
width: 130px;
height: 130px;
font-size: 1.4em;
font-weight: bold;
text-align: center;
color: #fff;
padding: 0.5em;
border: 4px solid #fff;
}
#top-shortcut h4 span{
display: block;
font-size: 0.8em;
}
.top-shortcut-wrap{
width: 100%;
margin: 0 auto;
margin-bottom: 2.0em;
}
.top-shortcut-cont{
display: flex;
align-items: center;
padding: 0.5em;
border: 4px solid #FFE200;
/*background-color: #00A0DA;*/
}
.top-shortcut-cont p{
display: block;
font-size: 1.0em;
font-weight: bold;
margin: 0 1.0em;
}
.top-shortcut-cont img{
width: 80px;
height: auto;
/*object-fit: contain;*/
margin-left: auto;
}


.arrow-wrap{
height: 80px;

}
.arrow{
position: relative;
width: 0px;
height: 70px;
margin-left: 0.5em;
margin-right: 0.5em;
border-top: 30px solid #FFE200;
border-right: 30px solid #FFE200;
box-sizing: border-box;
}
.arrow p{
/*position: absolute;
top: -10px;
right: -45px;*/
margin-left: 4px;
margin-top: -15px;
-webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
	  writing-mode: vertical-rl;
-webkit-text-orientation: upright;
text-orientation: upright;
z-index: 1000;
}
.arrow::after{
content: "";
position: absolute;
bottom: -15px;
right: -39px;
border-top: 25px solid #FFE200;
border-left: 25px solid transparent;
border-right: 25px solid transparent;
z-index: -1;
}

.top-shortcut-main{position: relative;}
.top-shortcut-main img{
width: 100%;
height: 170px;
object-fit: cover;
object-position: 0 0;
}
.top-shortcut-main-ofi{
object-fit: cover;
object-position: 0 0;
font-family: 'object-fit: cover; object-position: 0 0;';
}

.top-shortcut-main-text{
display: flex;
align-items: center;
position: absolute;
top: 0;
bottom: 0;
right: 20px;
margin: auto;
}


/* スタッフ・社員インタビュー
*************************************************************/
#top-interview{
width: 100%;
background-color: #fafafa;
}

.swiper-container{
margin-top: 3.0em;
}
.swiper-wrapper{
text-align: center;
}
.swiper-wrapper img{
/*width: 75%;*/
text-align: center;
}

.swiper-button-prev,
.swiper-button-next {
  width: 24px !important;
  height: 24px !important;
  margin-top: -10px;
}

@media screen and (max-width: 800px) {
.swiper-wrapper img{width: 80%;}
}


/* 共通エリア
*************************************************************/
.common-area{}

.common-area h2 {margin-bottom: 0.3em;}
.common-area h3 {
text-align: center;
margin-bottom: 0.3em;
}


/* ボタン */
.top-btn-wrap{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.faq-btn{
width: 49%;
margin-bottom: 1.0em;
}
.top-entry-btn, .entry-btn, .andmore-btn{
width: 100%;
margin-bottom: 2.0em;
}
.top-entry-btn a, .entry-btn a, .faq-btn a, .andmore-btn a{
display: block;
width: 100%;
font-size: 1.4em;
padding: 0.8em;
text-align: center;
font-weight: bold;
background-color: #FFE200;
border: 4px solid #1D1717;
}

.float-entry-btn{
width: 80%;
margin-bottom: 2.0em;
position: fixed;
bottom: 1.0em;
right: 0;
left: 0;
margin: auto;
z-index: 99999;
}
.float-entry-btn a{
display: block;
width: 100%;
font-size: 1.4em;
padding: 0.5em;
text-align: center;
font-weight: bold;
background-color: #FFE200;
border: 4px solid #1D1717;
box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}
.float-entry-btn a:hover{
color: #1D1717;
background-color: #ffed66;
border: 4px solid #1D1717;
opacity: 1.0;
}

.top-entry-btn a span, .float-entry-btn a span{
font-size: 0.8em;
margin-left: 0.3em;
}
.faq-btn a{
font-size: 1.0em;
color: #fff;
background-color: #555;
border: 4px solid #555;
}
.andmore-btn a{
color: #fff;
background-color: transparent;
border: 4px solid #fff;
}
.andmore-btn a:hover{
color: #1D1717;
background-color: #fff;
border: 4px solid #fff;
opacity: 1.0;
}

.area-btn{
display: flex;
justify-content :space-between;
flex-wrap: wrap;
margin-bottom: 2.0em;
}
.area-btn li{
width: 31.33%;
margin: 1%;
}
.area-btn li a{
display: block;
width: 100%;
padding: 1.0em;
text-align: center;
color: #fff;
font-weight: bold;
background-color: #00A0DA;
/*border: 4px solid #1D1717;*/
}

/* banner */
.banner-wrap{
margin: 3.0em auto;
text-align: center;
}
.banner-img{margin-bottom: 2.0em;}



/* コンテンツページ
*************************************************************/
.cont-head{margin-bottom: 3.0em;}
.cont-head h2{margin-bottom: 0.5em;}


/* 募集ページ
*************************************************************/

/* 募集要項
*************************************************************/
.recruit-requirements{
width: 100%;
margin: 0 auto;
display: block;
text-align: left;
line-height: 1.4;
border-top: 2px solid #1D1717; 
}
.recruit-requirements h3{
font-size: 1.0em;
font-weight: bold;
margin: 0;
}
.recruit-requirements dt{
padding: 0.5em 0.5em 0;
}
.recruit-requirements dd{
margin-bottom: 0.5em;
padding: 0.5em;
border-bottom: 1px dashed #1D1717; 
}


/* お問い合せ */
.recruit-contact p{
text-align: center;

}
.recruit-freedial{
font-size: 1.8em;
font-weight: bold;
color: #00A0DA;
}
.recruit-freedial img{
display: inline-block;
width: 42px;
margin-right: 0.2em;
}
.recruit-contact .foot-contact{
width: 50%;
}
.recruit-contact .foot-contact a{
font-weight: bold;
background-color: #00A0DA;
}


/* 採用フロー
*************************************************************/
.recruit-flow-wrap{
max-width: 1000px;
}

.recruit-list{
width: 100%;
height: 200px;
margin-bottom: 0.3em;
display: flex;
justify-content: space-between;
align-items: center;
background: #00A0DA;
}

.recruit-img{
width: auto;
flex: 1 0 auto;
margin: 0 auto;
text-align: center;
}
.recruit-img img{
max-width: 150px;
min-width: 120px;
}

.recruit-step-wrap{
flex: 0.7 0 auto;
}

.recruit-step{
color: #fff;
border: solid thin #fff;
border-radius: 50%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 120px;
height: 120px;
margin: 0 auto;
box-sizing: border-box;
}

.recruit-step-number{
color: #FFFFFF;
text-align: center;
font-size: 3.0em;
font-weight: bold;
line-height: 1;
}

.recruit-step-text{
text-align: center;
font-size: 1.3em;
margin-bottom: 0.2em;
line-height: 1;
}

.recruit-text-wrap{
flex: 1 0 10%;
}

.recruit-text-wrap hr{
color: #fff;
}

.recruit-jpn{
color: #fff;
font-size: 2.0em;
font-weight: bold;
text-align: left;
}

.recruit-border{
width: 100%;
border: #fff medium;
}

.recruit-en{
color: #fff;
font-size: 1.5em;
text-align: left;
}

@media screen and (max-width: 640px) {
.recruit-list{height: 130px;}
.recruit-step{
width: 80px;
height: 80px;
margin: auto;
}
.recruit-step-number{font-size: 2.0em;}
.recruit-step-text{font-size: 1.0em;}
	.recruit-img{margin: 0 -5% 0 -10%;}
.recruit-img img{
max-width: 100px;
min-width: 70px;
}
.recruit-jpn{
font-size: 1.4em;
}
.recruit-en{
font-size: 1.2em;
}
}


.contact-bg{background-image: url(../img/contact.png) ;}
.interviewing-bg{background-image: url(../img/interviewing.png) ;}
.job-offer-bg{background-image: url(../img/job-offer.png) ; background-position: center top 40%;}
.training-bg{background-image: url(../img/training.png) ; background-position: center top 15%;}
.start-work-bg{background-image: url(../img/start.png) ; background-position: center top 30%;}

.recruit-flow-head h3{
text-align: center;
color: #fff;
}
.h3-step{display: block;}
.h3-en{
display: block;
font-size: 1.2em;
font-weight: bold;
line-height: 1.2;
}
.h3-jpn{
display: block;
font-size: 1.2em;
line-height: 1.2;
}

.balloon {
position: relative;
background-color: #fff;
border-bottom: solid 2px #525252;
width: 100%;
margin-top: 1.5em;
margin-bottom: 20px;
text-align: center;
}
.balloon:before,
.balloon:after {
content: "";
position: absolute;
top: 100%;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
.balloon:before {
border: solid 20px transparent;
border-top: solid 20px #525252;
}
.balloon:after {
border: solid 22px transparent;
border-top: solid 22px #fff;
margin-top: -5px;
}


/* 仕事内容
*************************************************************/
.cont-sec-head{
position: relative;
}
.cont-sec-head h3{
position: absolute;
top : 5px;
left: 5px;
}

.recruit-jobdescription h3{
font-size: 1.2em;
font-weight: bold;
}
.recruit-jobdescription h4{
font-size: 1.1em;
font-weight: bold;
color: #00A0DA;
}

.recruit-job-explanation{
margin: 1.4em 0;
}

.recruit-job-flow{
padding: 2.0em;
margin: 0 auto;
margin-bottom: 1.0em;
text-align: center;
border: 1px solid #1D1717;
}
.recruit-job-flow p{
margin-top: 2.0em;
}
.recruit-job-flow img{max-width: 500px;}

.recruit-jobcont{padding-left: 1.3em;}
.recruit-jobcont li{list-style: outside;}


/* FAQ
*************************************************************/
.recruit-faq {}

/* アコーディオンメニュー */
.cp_actab {
position: relative;
overflow: hidden;
width: 100%;
margin: 0 auto 1.0em;
color: #1D1717;
border: 3px solid #1D1717;
z-index: 999;
}

/* タイトル */
.cp_actab input {
position: absolute;
z-index: -1;
opacity: 0;
}
.cp_actab label {
position: relative;
display: block;
padding: 0 0 0 1em;
cursor: pointer;
margin-bottom: -4px;
background: #888;
color: #fff;
border-bottom: 2px solid #1D1717;
border-collapse: collapse;
}
.cp_actab h3 {
position: relative;
font-size: 1.0em;
font-weight: bold;
line-height: 1.6;
padding: 0.7em;
padding-left: 2.2em;
}
.recruit-requirements-faq .cp_actab h3 {
padding-right: 2.5em;
}

/* 中身 */
.cp_actab .cp_actab-content {
overflow: hidden;
max-height: 0;
-webkit-transition: max-height 0.35s;
transition: max-height 0.35s;
color: #1D1717;
background: #fff;
}
.cp_actab .cp_actab-content p {
position: relative;
margin: 1em;
padding-left: 2.2em;
}

.cp_actab h3::before {
position: absolute;
top: 0.7em;
left: 0;
content: "";
width: 1.6em;
height: 1.6em;
background: url(../img/question.svg) no-repeat;
background-size: contain;
}

.cp_actab .cp_actab-content p::before{
position: absolute;
top: -1px;
left: 0;
content: "";
width: 1.6em;
height: 1.6em;
background: url(../img/answer.svg) no-repeat;
background-size: contain;
}

/* :checked */
.cp_actab input:checked ~ .cp_actab-content {max-height: 9999px;}

.cp_actab [type="checkbox"] ~ .cp_actab-content {max-height: 9999px;}

/* Icon */
.cp_actab label::after {
line-height: 3;
position: absolute;
top: 0;
right: 0;
display: block;
width: 3em;
height: 3em;
-webkit-transition: all 0.35s;
transition: all 0.35s;
text-align: center;
}
/*.cp_actab input[type="checkbox"] + label::after {content: '+';}
.cp_actab input[type="checkbox"]:checked + label::after {transform: rotate(180deg); content: '－';}*/

.cp_actab input[type="radio"] + label::after {content: '+';}
.cp_actab input[type="radio"]:checked + label::after {transform: rotate(180deg); content: '－';}



/* 募集ページ タブ
*************************************************************/
/*.tab_wrap {
width: 100%;
margin: 0 auto;
}
ul.tab {
position: relative;
margin: 3em 0;
}
ul.tab{
display: table;
width: 100%;
padding: 0;
border: 3px solid #1D1717;
}
ul.tab li {
display: table-cell;
list-style: none;
vertical-align: middle;
cursor: pointer;
border: 1px solid #1D1717;
color: #aaa;
width: 25%;
text-align: center;
padding: 14px 0.2em;
font-size: 0.8em;
font-weight: bold;
}

ul.tab li.current{
background: #FFE200;
color: #1D1717;
}
.tab_wrap .content_wrap{ position: relative; }
.tab_wrap .content_wrap .content {top:0; left: 0;}

.tab_wrap .content_wrap .content{ display: none; }
.tab_wrap .content_wrap .content.current{ display: block; }*/



/* パンくずリスト
------------------------------------------------------------*/
.breadcrumb {
  padding-left:0;
  margin-left:0;
  margin: 0.5em 0 0.7em;
  line-height: 1.0;
}
.breadcrumb li{
  display:inline;/*横に並ぶように*/
  list-style: none;
  font-size: 0.7em;
  /*font-weight: bold;*//*太字*/
}
.breadcrumb li:after{/* >を表示*/
  content: '>';
  padding: 0 3px;
  color: #1D1717;
}
.breadcrumb li:last-child:after{
  content: '';
}
.breadcrumb li a {
    text-decoration: none;
    color: #00A0DA;/*色*/
}
.breadcrumb li a:hover {text-decoration: underline;}



/* ページトップへもどる
------------------------------------------------------------*/
.pagetop {
display: none;
position: fixed;
bottom: 30px;
right: 30px;
z-index: 999;
}

.pagetop a {
display: block;
font-size: 2.8em;
line-height: 0;
text-align: center;
text-decoration: none;
padding: 12px 16px 15px;
background-color: rgba(255,255,255,0.7);
border-radius: 50%;
}
.pagetop a:hover {background-color: #00A0DA; color: #fff;}


@media screen and (max-width: 800px) {
.pagetop {bottom: 4%; right: 2%;}
.pagetop a {font-size: 2.0em;}
.pagetop a:hover {background-color: rgba(255,255,255,0.7); color: #555;}
}



/* インタビュー
------------------------------------------------------------*/
.interview-head h3{
font-size: 1.4em;
font-weight: bold;
padding: 0.5em 1.0em;
text-align: left;
color: #00A0DA;
background-color: #fff;
line-height: 1.4;
}
.interview-head h3 span{
display: block;
font-size: 0.7em;
}

.interview-head{
position: relative;
margin-bottom: 4.0em;
}
.interview-head img{
width: 100%;
height: 200px;
object-fit: cover;
object-position: 100% 15%;
}
.interview-head-ofi{
object-fit: cover;
object-position: 0 0;
font-family: 'object-fit: cover; object-position: 100% 15%;';
}
.interview-head-text{
position: absolute;
bottom: 5px;
left: 0;
}


.interview-cont-wrap{
display: block;
margin-bottom: 2.0em;
}
.interview-img{
width: 100%;
margin-bottom: 2.0em;
}
.interview-img img{
width: 100%;
height: 200px;
object-fit: cover;
object-position: center 20%;
}
.interview-img-ofi{
object-fit: cover;
object-position: 0 0;
font-family: 'object-fit: cover; object-position: center 20%;';
}
.interview-cont-wrap .interview-cont{width: 100%;}

.interview-cont{margin-bottom: 2.0em;}

.interview-question{
position: relative;
font-size: 1.2em;
font-weight: bold;
line-height: 1.6;
margin-bottom: 1.0em;
padding: 0.7em;
padding-left: 2.7em;
background: #FFE200;
border: 4px solid #1D1717;
}
.interview-answer{
position: relative;
font-size: 1.1em;
padding-left: 3.1em;
padding-right: 0.5em;
line-height: 2.0;
}

.interview-question::before {
position: absolute;
top: 0.7em;
left: 0.5em;
content: "";
width: 1.6em;
height: 1.6em;
background: url(../img/question.svg) no-repeat;
background-size: contain;
}
.interview-answer::before{
position: absolute;
top: 0.2em;
left: 0.8em;
content: "";
width: 1.6em;
height: 1.6em;
background: url(../img/answer.svg) no-repeat;
background-size: contain;
}



/* 会社概要
------------------------------------------------------------*/
.outline-table{
width: 100%;
margin: 0 auto;
}
.outline-table th{
width: 12%;
margin: 0;
padding: 15px 0.5em;
vertical-align: top;
border-bottom: 1px #aaa solid;
}
.outline-table td{
margin: 0;
padding: 15px 0.5em;
line-height: 1.6;
border-bottom: 1px #aaa solid;
}

/* Access */
#access{
margin-top: 4em;
text-align: left;
}

#access dl{
position: relative;
width: 80%;
margin: 30px auto;
}

#access dt{
display: inline-block;
width: 100px;
font-weight: bold;
vertical-align: top;
line-height: 2.0;
}
#access dd{
display: inline-block;
margin-left: 2%;
line-height: 1.8;
}

.btn-work{
position: absolute;
bottom: 0.3em;
right: 0%;
}
.btn-work a{
display: block;
width: 100%;
margin: 0;
padding: 2px 15px;
font-family: "Century Gothic", Futura, "Trebuchet MS", Arial, sans-serif;
font-size: 0.8rem;
text-align: center;
color: #aaa;
border: 2px #aaa solid;
transition: .3s;
}
.btn-work a:hover{
color: #fff;
background-color: #aaa;
font-weight: bold;
transform: scale(1.1);
}

.btn-work a span::after {
content: "\f39c";
font-family: ionicons;
margin-left: 0.5em;
}


/* CONTACT
------------------------------------------------------------*/
/* お問い合わせフォーム */
.form-cont{margin-bottom: 1.2em;}
.form-text, .form-select li select{
display: block;
width:100%;
margin:0.5em 0 0;
padding:5px;
font-size:1.0em;
border:solid 1px #ccc;
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
transition: all .5s;
}
.form-select li select{margin:0 auto;}
.form-select .form-text{margin:0 auto;}
.form-select {
display: flex;
justify-content: flex-start;
align-items: center;
flex-wrap: wrap;
width: 100%;
margin: 0 auto 1.2em;
}
.form-select li{margin: 0; margin-right: 15px;}
.form-select li:first-child{margin-right: 25px;}

#input_name, #input_kana, #input_tel, #email_addr{max-width: 450px;}
#input_age{max-width: 50px;}


/* プレースホルダーの色 */
input::-webkit-input-placeholder { color: #aaa; }
input::-moz-placeholder { color: #aaa; }
/*入力時の背景色*/
input:focus, select:focus, textarea:focus {
border:solid 1px #4b84bd;
/*box-shadow: 0 0 7px #4b84bd;*/
}

/* 必須 */
.requisite ::after {
content: "必須";
margin-left: 0.5em;
padding: 2px 3px 1px;
font-size: 0.7em;
color: #fff;
vertical-align: middle;
background-color: #B41E21;
border-radius: 1px;
line-height: 1.0;
}

/* 同意するボタン */
.check {font-size: 1.1em; text-align: center;}
.check input[type="checkbox"]{margin-right: 0.5em;}

/* 確認ボタン */
.form-wrap input[type="submit"]{
display: block;
width: 100%;
margin: 3% auto;
padding: 1.0em 5%;
font-size: 1.2em;
font-weight:bold;
text-decoration:none;
text-align:center;
color: #fff;
background-color: #00A0DA;
border:none;
border-radius: 3px;
box-shadow: 1px 2px 7.7px 2.3px rgba(105, 105, 105, 0.27);
}
.form-wrap input[type="submit"]:hover {opacity: 0.7;}
/* 送信ボタン - 押せないとき */
.form-wrap input[type="submit"][disabled] {
background: #999;
color: #fff;
cursor: default;
}
.form-wrap input[type="submit"][disabled]:hover {opacity: inherit;}



/* Privacy Policy
------------------------------------------------------------*/
#privacypolicy h3{
font-size: 1.1em;
color: inherit;
}
#privacypolicy h4{
font-size: 1.0em;
margin-top: 1.0em;
}

#privacypolicy ul{ font-size: 0.9em;}
#privacypolicy li{
list-style: inside;
padding-left: 1.0em; 
text-indent: -1.0em; 
}

#privacypolicy dl{margin-top: 1.0em;}
#privacypolicy dt{
padding-left: 1.0em; 
text-indent: -1.0em;
margin-top: 0.6em;
font-size: 0.95em;
}
#privacypolicy dd{ font-size: 0.9em;}

.pp-window{
height:250px;
margin: 0.7em 0 2em;
padding: 0 2% 2%;
overflow:auto;
border: 1px #ccc solid;
}

.pp-bg{
background-color: #f0f0f0;
margin: 1.0em 0;
padding: 0.7em 1em 1em;
}

.pp-window h4{font-size: 0.8em;}
#privacypolicy .pp-bg h4:nth-child(1){margin: 0;}
#privacypolicy .pp-bg p:last-child{margin: 0;}





@media screen and (max-width: 640px) {
/* 会社概要 */
.outline-table th{width: 18%;}
/* Access */
#access dl{margin: 2em auto;}
#access dl{width: 100%;}
#access dl:first-of-type{margin: 0px auto 1em;}
.btn-work{bottom: -1em;}
/* CONTACT */
.form-select li:first-child{
width: 100%;
margin-bottom: 0.5em;
}
}

@media screen and (max-width: 450px) {
/* 会社概要 */
.outline-table{border: 1px #aaa solid; border-bottom: 0;}
.outline-table th{
width: 100%;
padding: 10px 0.5em;
display: block;
background-color: #f0f0f0;
}
.outline-table td{padding: 10px 0.5em; display: block;}
/* Access */
#access dl{margin: 40px auto;}
#access dd{display: block;margin-left: 0;}
}






@media screen and (min-width: 450px) {
.top-interview-wrap img{height: 250px;}
.top-interview-bottom img{height: 100px;}
.interview-btn a{height: 100px;}

/* banner */
.banner-wrap{
display: flex;
justify-content: space-between;
}
.banner-img{width: 49%;}

.top-shortcut-wrap{max-width: 80%;}

.recruit-requirements{
display: flex;
flex-wrap: wrap;
text-align: left;
}
.recruit-requirements h3{
font-size: 1.0em;
margin: 0;
}
.recruit-requirements dt{
flex-basis: 110px;
padding: 1.2em 0;
border-bottom: 1px dashed #1D1717; 
}
.recruit-requirements dd{
width: calc(100% - 110px);
margin-bottom: 0;
padding: 1.2em 0;
}

.top-shortcut-cont img{width: 100px;}
.arrow-wrap{height: 100px;}
.arrow{height: 90px;}
.arrow p{margin-top: -7px;}
}


@media screen and (min-width: 640px) {
h1 {
font-size: 1.4em;
padding: 0.3em 0.5em;
}
h2 {font-size: 1.4em;}
h3 {font-size: 1.3em;}

.cont-sec-head h3{
position: absolute;
top : 20px;
left: 20px;
}

.recruit-jobdescription h3{font-size: 1.3em;}
.recruit-flow-head{height: 200px;}
.recruit-flow-head h3{font-size: 1.4em;}
.h3-step{}
.h3-en{font-size: 2.4em;}

.scroll-wrap{margin-left: 15px;}

.top-shortcut-wrap{max-width: 60%;}
.top-shortcut-cont p{font-size: 1.2em;}
.arrow p{margin-left: 2px;}
.top-shortcut-main img{height: 200px;}


.interview-cont-wrap{
display: flex;
justify-content: space-between;
margin-bottom: 4.0em;
}
.interview-img{width: 48%;}
.interview-img img{height: 300px;}
.interview-cont-wrap .interview-cont{width: 48%;}
.interview-cont{margin-bottom: 4.0em;}

}

@media screen and (min-width: 800px) {
.top-shortcut-wrap{max-width: 45%;}

.interview-head h3{font-size: 1.8em;}
.interview-head h3 span{display: inline-block; margin-right: 0.5em;}
.interview-head img{height: 300px;}
.interview-head-text{bottom: 10px;}



#nav-open { display:none; }
}


@media screen and (min-width: 980px) { 
.main-text{right: 10%;}


}



@media all and (-ms-high-contrast: none){
.top-layout{opacity: 1;}

#section1{display: block;}
.main-bg{max-width: none;}
.main-text{
position: absolute;
top: 12%;
right: 3%;
/*margin: auto;*/
}

}

/*pp-link
------------------------------------------------------------*/
.pp-link a:link{ color:#0000FF; }
.pp-link a:visited { color:#6600FF; } 
.pp-link a:hover { color:#555; } 
.pp-link a { text-decoration: underline; }
.pp-link { margin:10px 0 20px 0 }

