@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@300;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');

@font-face {
    font-family: 'SmoothStone-Regular';
    src: url("fonts/SmoothStone-Regular.otf") format("opentype");
}

/* Reset CSS
-------------------------------*/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
    margin:0;
    padding:0;
}
table{
    border-collapse:collapse;
    border-spacing:0;
}
fieldset,img{
    border:0;
}
address,caption,cite,code,dfn,em,strong,th,var{
    font-style:normal;
    font-weight:normal;
}
ul,ol,li{
    list-style:none;
}
caption,th{
    text-align:left;
}
h1,h2,h3,h4,h5,h6{
    font-size:100%;
    font-weight:normal;
}
q:before,q:after{
    content:'';
}
abbr,acronym {border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
hr {display:none;}
input,textarea,select{
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    *font-size:100%;
}
*,
*::before,
*::after {
    box-sizing: border-box;
}

img{
    max-width:100%;
    height:auto;
    vertical-align: bottom;
    margin:0;
    padding:0;
}
.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

/* スムーススクロール　（IE以外） */
html {scroll-behavior: smooth;}

a {
  outline:none;
  color: #2e2e2e;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  filter: alpha(opacity=70);
  -moz-opacity:0.70;
  opacity:0.70;
}

/* PCで電話リンクしない */
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

.flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


/* マウスストーカー */
#stalker {
    pointer-events:none;
    position:fixed;
    top:-6px;
    left:-6px;
    width:12px;
    height:12px;
    background:#205dab;
    border-radius:50%;
  
    -webkit-transition:visibility .5s,top,.5s,left .5s,width .5s,height .5s,background-color .5s,-webkit-transform .5s;
    transition:visibility .5s,top,.5s,left .5s,width .5s,height .5s,background-color .5s,-webkit-transform .5s;
    -o-transition:visibility .5s,top,.5s,left .5s,width .5s,height .5s,background-color .5s,-o-transform .5s;
    
    transition:visibility .5s,transform 0s,top,.5s,left .5s,width .5s,height .5s,background-color .5s;
    transition:visibility .5s,transform 0s,top,.5s,left .5s,width .5s,height .5s,background-color .5s,-webkit-transform 0s,-o-transform 0s;
    
    -webkit-transition-timing-function:ease-out;
    -o-transition-timing-function:ease-out;
    transition-timing-function:ease-out;

    z-index:99999;
}
#stalker.hov_ {
    top:-35px;
    left:-35px;
    width:70px;
    height:70px;
    background:rgba(32, 93, 171, 0.4);
}
@media screen and (max-width: 810px){
    #stalker{
        display:none;
    }
}




/* Basic setting
-------------------------------*/

body {
	font-family: 'Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 1.8em;
    font-feature-settings: "palt";
	color: #000;
	-webkit-text-size-adjust: 100%;
    background: url(../img/common/bg_body.png) center top repeat-x;
}
#wrapper{
	margin:0 auto;
	padding:0;
	width:100%;
	overflow:hidden;
}


/* ヘッダー
-------------------------------*/
* html #header{height:1%;}
#header{
    width: 100%;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s;
/*    border-bottom: solid 1px #eee;*/
}
#header .inner{
    width: 90%;
    margin: auto;
}
#header .logo a{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
#header .logo span{
    display: inline-block;
}
#header .logo span:first-child{
    margin-right: 20px;
}
#header .logo span:nth-child(2) img{
    background-color: #fff;
    border-radius: 3px;
}

#header.fixed{
    position: fixed;
    z-index: 9999;
    height: 80px;
}
#header.bg_w{
    background-color: #fff;
}

@media screen and (max-width:910px){
    #header .inner{
        width: 95%;
    }
    #header{
        height: 80px;
    }
    #header.fixed{
        position: static;
    }
}
@media screen and (max-width:640px){
    #header .logo{
        width: calc(100% - 100px);
    }
    #header .logo span:first-child img{
        width: 42vw;
        height: auto;
        margin-right: 3vw;
    }
    #header .logo span:nth-child(2) img{
        width: 26vw;
        height: auto;
    }
}
@media screen and (max-width:480px){
    #header{
        height: auto;
        padding: 10px 0;
    }
    #header .logo a{
        display: block;
    }
    #header .logo span:first-child img{
        width: 250px;
        height: auto;
        margin-right: 0;
    }
    #header .logo span:nth-child(2){
        margin-top: 10px;
        margin-left: 50px;
    }
    #header .logo span:nth-child(2) img{
        width: 150px;
        height: auto;
    }
}





/* フッター
-------------------------------*/
#footer{
    width: 100%;
    background-color: #0861d6;
    padding-top: 150px;
    color: #fff;
}
#footer a{
    color: #fff;
}
#footer .inner{
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

#footer .sec1{
    text-align: center;
}
#footer .sec1 .cap{
    margin-top: 50px;
    margin-bottom: 10px;
    font-size: 34px;
    line-height: 1.2em;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
}
#footer .sec2{
    width: 100%;
    margin-top: 80px;
}

#footer .sec2 .cat{
    margin-bottom: 30px;
}
#footer .sec2 .cat .en{
    font-size: 16px;
    line-height: 1.2em;
    letter-spacing: 0.07em;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    margin-bottom: 7px;
}
#footer .sec2 .cat .ja{
    font-size: 20px;
    line-height: 1.2em;
    color: #83b0ea;
    font-weight: 400;
}
#footer .sec2 li{
    font-weight: 700;
    margin-bottom: 10px;
}
#footer .sec2 li span{
    font-size: 85%;
    padding-left: 5px;
}
#footer .sec2 li .sub li{
    font-weight: 400;
    margin-left: 1em;
    margin-bottom: 0;
}
#footer .sec2 li.sns{
    line-height: 1em;
    padding-left: 1em;
}
#footer .sec2 li.sns img{
    margin-top: 10px;
    vertical-align: middle;
}

#footer .sec3{
    margin-top: 80px;
    text-align: right;
}
#footer .sec3 a{
    color: #83b0ea;
    font-size: 14px;
}

#footer .copy{
    margin-top: 20px;
    width: 100%;
    background-color: #0151a6;
	padding:30px 0;
}
#footer .copy ._in{
    width: 90%;
    max-width: 1200px;
    margin: auto;
    text-align: right;
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.2em;
}


#footer .sec2 a{
    position: relative;
}
#footer .sec2 a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    /*線の形状*/
    width: 100%;
    height: 1px;
    background:#fff;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: left top;/*左上基点*/
}
#footer .sec2 a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}
#footer .sec2 li.sns a::after {
    display: none;
}


/*  ページトップへ */
#pageTop{
	position:fixed;
	bottom:90px;
	right:20px;
}

@media screen and (max-width:910px){
    #footer .inner{
        padding-bottom: 100px;
    }
    #footer .sec1 .f_logo img{
        width: 200px;
        height: auto;
    }
    
    #footer .sec1 .cap{
        margin-bottom: 20px;
        font-size: 28px;
        line-height: 1.2em;
    }
    #footer .sec2{
        display: none;
    }
    #footer .sec3{
        display: none;
    }

    #footer .copy ._in{
        text-align: center;
        font-weight: 400;
    }

}
@media screen and (max-width:640px){

    #footer{
        padding-top: 60px;
    }
    #footer .inner{
        padding-bottom: 40px;
    }
    #footer .sec1 .f_logo img{
        width: 170px;
        height: auto;
    }

    #footer .copy{
        padding:20px 0;
    }
    #pageTop img{
        width:40px;
        height:auto;
    }

}













/* 共通
-------------------------------*/
.ttl_box{
    width: 90%;
    max-width: 1600px;
    height: 340px;
    padding-top: 50px;
    margin: auto;
}

.ttl_box .p1{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
}
.ttl_box .p2{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2em;
    position: relative;
}
.ttl_box .p2 .ja{
    position: relative;
    z-index: 2;
}
.ttl_box .p2 .en{
    position: absolute;
    left: 15px;
    top: 40px;
    z-index: 1;
    font-size: 62px;
    color: #d6d6d6;
    font-family: 'SmoothStone-Regular';
}
.ttl_box .p3{
    margin-top: 90px;
    display: inline-block;
    width: auto;
    padding: 10px 20px;
    border: solid 1px #d6d6d6;
    border-radius: 3px;
    background-color: #fff;
    font-size: 13px;
    line-height: 1.2em;
}
.ttl_box .p3 a,
.ttl_box .p3 span{
    display: inline-block;
    vertical-align: middle;
}
.ttl_box .p3 a{
    color: #d6d6d6;
}
.ttl_box .p3 a:hover{
    color: #0861d6;
}

.ttl_box .p3 a.logo{
    width: 15px;
    height: 15px;
    background: url(../img/common/p3_logo.png) center center/contain no-repeat;
}
.ttl_box .p3 a.logo:hover{
    background-image: url(../img/common/p3_logo_b.png);
}
.ttl_box .p3 span.kei{
    width: 35px;
    height: 1px;
    background-color: #d6d6d6;
    margin-left: 10px;
    margin-right: 10px;
}

.w1600{
    width: 90%;
    max-width: 1600px;
    margin: auto;
}
.w1200{
    width: 90%;
    max-width: 1200px;
    margin: auto;
}
.w1000{
    width: 90%;
    max-width: 1000px;
    margin: auto;
}
.w960{
    width: 90%;
    max-width: 960px;
    margin: auto;
}

.ttl01{
    text-align: center;
    margin-bottom: 90px;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;

}
.ttl01 .ja{
    font-size: 30px;
    line-height: 1em;
    padding-bottom: 1em;
    position: relative;
}
.ttl01 .ja:after{
    position: absolute;
    left: calc(50% - 0.5em);
    bottom: 0;
    content: "・";
    color: #0861d6;
}
.ttl01 .en{
    font-size: 12px;
    line-height: 1.2em;
    letter-spacing: 0.1em;
    color: #c9c9c9;
}

.btn a{
    width: 100%;
    max-width: 360px;
    height: 56px;
    border: solid 1px#0861d6;
    border-radius: 28px;
    background-color: #fff;
    padding: 0 30px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 700;
    position: relative;
    transition: 0.5s;
}
.btn a:after{
    position: absolute;
    right: 25px;
    top: calc(50% - 15px);
    width: 30px;
    height: 30px;
    background: url(../img/common/btn_maru.png) center center/contain no-repeat;
    content: "";
    transition: 0.5s;
}
.btn a:hover{
    opacity: 1;
}
.btn a:hover:after{
    transform: scale(1.2);
}
.btn a .btn-txt {
    line-height: 1;
    overflow: hidden;
    display: block;
    padding-right: 10px;
}
.btn a .btn-txt-in{
    display: inline-block;
    font-size: 16px;
}
.btn a:hover .btn-txt-in {
    -webkit-animation: hover_txt_link 0.5s linear forwards;
    animation: hov_txt_link 0.5s linear forwards;
}
@keyframes hov_txt_link {
    0% {
        transform: translateY(0%);
    }
    50% {
        transform: translateY(-100%);
    }
    50.5% {
        transform: translateY(100%);
    }
    100% {
        transform: translateY(0%);
    }
}


@media screen and (max-width:1300px){

    .ttl_box{
        height: auto;
        padding-top: 30px;
        padding-bottom: 50px;
    }
    .ttl_box .p1{
        margin-bottom: 10px;
    }

}

@media screen and (max-width:910px){
    
    .ttl_box .p2{
        font-size: 38px;
        line-height: 1.2em;
    }
    .ttl_box .p2 .en{
        top: 30px;
        font-size: 40px;
    }
    .ttl_box .p3{
        margin-top: 50px;
    }
    
    .ttl01 .ja{
        font-size: 26px;
        line-height: 1em;
    }
    
}
@media screen and (max-width:640px){

    .ttl_box{
        padding-top: 20px;
        padding-bottom: 80px;
    }

    .ttl_box .p1{
        font-size: 14px;
    }
    .ttl_box .p2{
        font-size: 30px;
        line-height: 1.2em;
    }
    .ttl_box .p2 .en{
        top: 20px;
        font-size: 35px;
    }

    .ttl_box .p3{
        display: none;
    }

    .ttl01{
        margin-bottom: 50px;
    }
    .ttl01 .ja{
        font-size: 21px;
        line-height: 1em;
    }

    .btn a{
        width: 280px;
    }

}









/* データで見る白月工業
-------------------------------*/
.about #wrapper{
    background-image: url(../img/about/aobut_top_bg.png);
    background-position:  right top;
    background-repeat: no-repeat;
    transition: 0.3s;
}

#data01{
    padding-top: 100px;
}
#data02,
#data03{
    padding-top: 120px;
}
#data01 .ttl01,
#data02 .ttl01,
#data03 .ttl01{
    margin-bottom: 50px;
}

.d-item{
    border: solid 1px #cecece;
    background-color: #fff;
    border-radius: 3px;
    padding: 20px 30px 30px;
    margin-bottom: 30px;
    text-align: center;
}
.d-item a{
    display: block;
}
.d-item .cat{
    text-align: center;
    font-size: 25px;
    line-height: 1.3em;
    margin-bottom: 30px;
}
.d-item.d-in10{
    width: 100%;
}
.d-item.d-in06{
    width: 57.5%;
}
.d-item.d-in05{
    width: 48.5%;
}
.d-item.d-in04{
    width: 39.5%;
}
.d-item.d-in035{
    width: 35.5%;
}
.d-item.d-in03{
    width: 31.5%;
}
.d-item.d-in02{
    width: 26%;
}
.d-item img.sp{
    display: none;
}

#modal-container {
    display: none;
    position: fixed;
    background: rgba(0, 0, 0, .6);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99;
    & > div {
        display: flex;
        height: 100vh;
        justify-content: center;
        align-items: center;
        & > img {
            max-width: calc(100vw - 30px);
            max-height: calc(100vh - 30px);
        }
    }
}
img.popup {
    cursor: pointer;
}

.mc_in{
    width: 90%;
    max-width: 800px;
    background-color: #fff;
    border-radius: 10px;
    padding: 40px;
    text-align: left;
}
.mc_in .ttl{
    color: #0861d6;
    font-size: 25px;
    line-height: 1.2em;
    margin-bottom: 30px;
}
.mc_in .btn-x{
    display: block;
    width: 110px;
    text-align: center;
    padding: 5px 0;
    border: solid 1px #999;
    border-radius: 5px;
    margin: 80px auto 0;
    cursor: pointer;
}


.ab04{
    width: 90%;
    max-width: 880px;
    height: 160px;
    margin: 120px auto 0;
    position: relative;
}
.ab04 .bg1{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 260px;
    background-image: url(../img/about/ab04_bg1.png);
    background-position: center center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 7px;
}
.ab04 .bg2{
    width: 100%;
    height: 100%;
    background-image: url(../img/about/ab04_bg2.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0 5%;
}

.ab04 .bg2 .p1{
    color: #0861d6;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
}
.ab04 .bg2 .btn{
    margin-top: 20px;
}
.ab04 .bg2 .btn a{
    margin: auto;
    border: none;
    width: 90%;
    max-width: 280px;
}

@media screen and (min-width:641px){
    .d-item.d-num04 img{
        margin-bottom: -30px;
    }
    .d-item.d-num07 .cat{
        margin-bottom: 0;
    }
    .d-item.d-num203 img{
        margin-top: -50px;
    }
    .d-item.d-num207 img.pc{
        margin-top: -30px;
    }
}

@media screen and (max-width:1300px){
    .about #wrapper{
        background-position:  center top;
        background-size: contain;
    }
}

@media screen and (max-width:910px){
    .d-item.d-in06{
        width: 48%;
    }
    .d-item.d-in04{
        width: 48%;
    }
    .d-item.d-in035{
        width: 48%;
    }
    .d-item.d-in03{
        width: 48%;
    }
    .d-item.d-in02{
        width: 48%;
    }
    .d-item.d-num207{
        width: 100%;
    }
    
    .ab04{
        height: auto;
        margin-bottom: 60px;
    }
    .ab04 .bg1{
        position: static;
        height: auto;
    }
    .ab04 .bg2{
        padding: 30px 3%;
    }
    
}
@media screen and (max-width:640px){
    #data01{
        padding-top: 100px;
        margin-top: -100px;
    }
    #data02,
    #data03{
        padding-top: 80px;
    }
    #data01 .ttl01,
    #data02 .ttl01,
    #data03 .ttl01{
        margin-bottom: 30px;
    }
    .about #wrapper{
        background-image:none;
    }
    .d-item{
        padding: 15px 15px;
        margin-bottom: 15px;
    }
    .d-item .cat{
        font-size: 19px;
        line-height: 1.3em;
        margin-bottom: 20px;
    }
    .d-item.d-in06{
        width: 100%;
    }
    .d-item.d-in05{
        width: 100%;
    }
    .d-item.d-in04{
        width: 100%;
    }
    .d-item.d-in035{
        width: 100%;
    }
    .d-item.d-in03{
        width: 100%;
    }
    .d-item.d-in02{
        width: 100%;
    }
    .d-item img.pc{
        display: none;
    }
    .d-item img.sp{
        display: inline-block;
    }

    .ab04{
        margin-top: 60px;
    }
    .ab04 .bg2 .p1{
        font-size: 18px;
        margin-bottom: 10px;
    }
    .ab04 .bg2 .p2{
        text-align: left;
    }

}











/* インタビュー　TOP
-------------------------------*/

.interview #wrapper{
    background-image: url(../img/interview/inte_top_bg.png);
    background-position:  right top;
    background-repeat: no-repeat;
    transition: 0.3s;
}
.inte01{
    width: 100%;
    max-width: 1920px;
    margin: 0 auto 100px;
}
.inte01{
    align-items: center;
}
.inte01 .img{
    width: 980px;
}
.inte01 .txt{
    width: calc(100% - 1100px);
}
.inte01 .txt ._in{
    width: 95%;
    position: relative;
}
.inte01 .txt ._in:before{
    position: absolute;
    left: -250px;
    top: -270px;
    width: 633px;
    height: 328px;
    background:url(../img/interview/inte_00_txt.png) center center/contain no-repeat;
    content: "";
}
.inte02{
    padding-top: 100px;
    margin-top: -100px;
}
.voice-list{
    justify-content: center;
}
.voice-list .v-item{
    width: 31.6%;
    margin-left: 0.85%;
    margin-right: 0.85%;
    margin-bottom: 100px;
}

.voice-list .v-item a{
    display: block;
}
.voice-list .v-item .img{
    overflow: hidden;
}
.voice-list .v-item .img img{
    width: 100%;
    height: 500px;
    object-fit: cover;
    transition: 0.3s;
}
.voice-list .v-item a:hover .img img{
    transform: scale(1.1);
}

.voice-list .v-item .txt{
    margin-top: 20px;
    margin-left: 20px;
}
.voice-list .v-item .num{
    color: #0861d6;
    font-size: 13px;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    margin-left: 16px;
}
.voice-list .v-item .sec{
    display: inline-block;
    border: solid 1px #0861d6;
    border-radius: 30px;
    color: #0861d6;
    font-weight: 700;
    padding: 3px 1em;
    margin-top: 5px;
    margin-bottom: 5px;
}
.voice-list .v-item .name span{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 1.2em;
    margin-left: 15px;
    vertical-align: middle;
}

@media screen and (max-width:1600px){

    .inte01 .img{
        width: 61%;
    }
    .inte01 .txt{
        width: 35%;
    }
    .inte01 .txt ._in:before{
        left: -15.6vw;
        top: -16.8vw;
        width: 39.5vw;
        height: 20.5vw;
    }
}

@media screen and (max-width:1333px){
    .interview #wrapper{
        background-position:  center top;
        background-size: contain;
    }
    
    .voice-list .v-item .img img{
        height: 37.5vw;
    }
    .voice-list .v-item .txt{
        margin-left: 0;
    }
    .voice-list .v-item .name span{
        display: inline-block;
    }
}

@media screen and (max-width:910px){
    .inte01{
        margin-bottom: 10px;
    }
    .inte01 .img{
        width: 100%;
    }
    .inte01 .txt{
        width: 100%;
        padding-top: 100px;
        padding-bottom: 100px;
        background:url(../img/interview/inte_00_txt.png) left top/50% auto no-repeat;
    }
    .inte01 .txt ._in{
        width: 90%;
        margin: auto;
    }
    .inte01 .txt ._in:before{
        display: none;
    }

    .voice-list .v-item .txt{
        margin-top: 5px;
    }
    .voice-list .v-item .num{
        margin-left: 0;
    }
    .voice-list .v-item .name span{
        font-size: 30px;
        line-height: 1.2em;
        margin-left: 10px;
    }
    .voice-list .v-item .sec{
        font-size: 15px;
        line-height: 1.2em;
        padding: 3px 0.7em;
        margin-top: 3px;
        margin-bottom: 3px;
        text-align: center;
    }
    .voice-list .v-item .name{
        font-size: 15px;
    }

}
@media screen and (max-width:640px){
    .interview #wrapper{
        background-image: none;
    }
    .inte01 .txt{
        padding-top: 20px;
        padding-bottom: 60px;
        background: none;
    }
    .voice-list{
        justify-content: space-between;
    }
    .voice-list .v-item{
        width: 48.5%;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 30px;
    }
    .voice-list .v-item .img img{
        height: 54.9vw;
    }
    .voice-list .v-item .name span{
        display: block;
        font-size: 22px;
        line-height: 1.2em;
        margin-left: 0;
    }

}







/* インタビュー　詳細ページ
-------------------------------*/

.v-box1{
    width: 100%;
    height: 55.2vw;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 8vw;
    background-position:  center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -120px;
}
.v-box1.staff01{
    background-image: url(../img/voice/staff01_01.jpg);
}
.v-box1.staff02{
    background-image: url(../img/voice/staff02_01.jpg);
}
.v-box1.staff03{
    background-image: url(../img/voice/staff03_01.jpg);
}
.v-box1.staff04{
    background-image: url(../img/voice/staff04_01.jpg);
}
.v-box1.staff05{
    background-image: url(../img/voice/staff05_01.jpg);
}
.v-box1.staff06{
    background-image: url(../img/voice/staff06_01.jpg);
}


.v-box1 ._in{
    width: 36.5vw;
}
.v-box1 ._in .sub{
    margin-bottom: 2vw;
}
.v-box1 ._in .sub img{
    width: 11.25vw;
}
.v-box1 ._in .txt img{
    width: auto;
    height: 6.14vw;
}

.v-box2{
    width: 50%;
    margin-top: -250px;
    margin-right: auto;
    margin-bottom: 100px;
    background-color: #0861d6;
    padding: 70px;
    transition: 0.3s;
}
.v-box2 ._in{
    width: 520px;
    color: #fff;
    margin-left: auto;
    position: relative;
}
.v-box2 .p1{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.2em;
    margin-bottom: 60px;
}
.v-box2 .p2{
    font-size: 14px;
    line-height: 1.8em;
}
.v-box2 .p3{
    font-weight: 700;
}
.v-box2 .p4{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 1.2em;
    margin-top: 20px;
    margin-bottom: 40px;
}
.v-box2 dl{
    font-size: 14px;
    line-height: 1.7em;
}
.v-box2 dl dt{
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: solid 1px #fff;
}
.v-box2 .img{
    position: absolute;
    right: 0;
    top: 0;
    padding-left: 40px;
    background: url(../img/voice/img_bg.png) left center/contain no-repeat;
}

.v-box3 .txt{
    width: 47%;
    margin-bottom: 60px;
}
.v-box3 .txt dt{
    color: #0861d6;
    font-size: 22px;
    line-height: 1.4em;
    font-weight: 700;
    margin-bottom: 20px;
}
.v-box3 .txt dt span{
    display: block;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
}
.v-box3 .txt dd{
    border: solid 1px #cecece;
    border-radius: 3px;
    padding: 35px;
}
.v-box3 .img{
    width: 47%;
    height: 630px;
    margin-bottom: 60px;
    position: relative;
}
.v-box3 .img img{
    position: absolute;
    left: 0;
    top: 0;
    max-width: none;
    width: auto;
    height: 100%;
}

.v-box4{
    width: 100%;
    max-width: 1920px;
    margin: auto;
}
.v-box4 li{
    width: 50%;
}

.v-box5{
    width: 100%;
    background-color: #0861d6;
    padding-top: 80px;
    padding-bottom: 100px;
}
.v-box5 .ttl01 .ja,
.v-box5 .ttl01 .ja::after,
.v-box5 .ttl01 .en{
    color: #fff;
}
.v-box5-time{
    position: relative;
    height: 400px;
}
.daily-work{
    position: absolute;
    left: 0;
    top: 0;
    width: 1540px;
}
.daily-work .min{
    width: 380px;
    height: 400px;
    background-color: #fff;
    padding: 20px 30px;
    line-height: 1.7em;
    margin-left: 5px;
    margin-right: 5px;
}
.daily-work .min .sec{
    margin-top: 10px;
    margin-bottom: 15px;
    font-size: 20px;
    line-height: 1.2em;
    color: #818181;
}

.daily-work .slick-prev,
.daily-work .slick-next{
    top: -30px;
    width: 48px;
    height: 26px;
    background-color: #e6effb;
    border-radius: 20px;
    transition: 0.3s;
}
.daily-work .slick-prev:hover,
.daily-work .slick-next:hover{
    background-color: #fff;
    background: #fff;
}
.daily-work .slick-prev{
    left: 1040px;
}
.daily-work .slick-next{
    left: 1100px;
    right: auto;
}
.daily-work .slick-prev::before,
.daily-work .slick-next::before{
    color: #0861d6;
    font-size: 16px;
    line-height: 1.2em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}

.daily-work .slick-prev::before{
    content: '＜';
}
.daily-work .slick-next::before{
    content: '＞';
}


.v-box6{
    width: 100%;
    overflow: hidden;
    text-align: center;
}
.v-box6 img{
    width: 100%;
    height: 520px;
    object-fit: cover;
}

.v-box7{
    width: 100%;
    background-color: #f0f0f0;
    padding-top: 140px;
    padding-bottom: 10px;
}
.v-box7-item{
    margin-bottom: 50px;
}
.v-box7-item .ttl{
    width: 35%;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
}
.v-box7-item .txt{
    width: 63%;
}
.v-box7-item .ttl .p1{
    font-size: 18px;
    line-height: 1.em;
    margin-bottom: 10px;
}
.v-box7-item .ttl .p2{
    color: #0861d6;
    font-size: 30px;
    line-height: 1.2em;
}
.v-box7-item .txt ._in{
    background-color: #fff;
    padding: 30px;
    margin-bottom: 30px;
    font-size: 90%;
    line-height: 1.8em;
}
.v-box7-item .txt ._in .p3{
    width: 25%;
    text-align: center;
    padding-right: 5%;
    border-right: solid 1px #000;
        
}
.v-box7-item .txt ._in .p4{
    width: 70%;
}
.v-box7-item .txt ._in .p5{
    width: 48%;
}

.v-box8{
    width: 100%;
    background-color: #f0f0f0;
    padding-top: 100px;
    padding-bottom: 140px;
}
.v-box8 ._in{
    width: 100%;
    max-width: 1280px;
    margin: auto;
    background:url(../img/voice/fuki_bg.png) center top no-repeat; 
    padding-top: 70px;
    padding-bottom: 130px;
}
.v-box8 .fuki{
    width: 90%;
    max-width: 800px;
    height: 348px;
    background:url(../img/voice/fuki_w.png) center top no-repeat; 
    background-size: 100% 100%;
    padding: 60px;
    margin: auto;
}
.v-box8 .fuki .sub{
    text-align: center;
    font-size: 22px;
    line-height: 1.2em;
    font-weight: 700;
    margin-bottom: 25px;
}
.v-box9{
    width: 100%;
    padding-top: 80px;
    padding-bottom: 80px;
    background-color: #3981de;
}

.v-box9 ul{
    width: 90%;
    max-width: 700px;
    margin: auto;
    align-items: center;
}
.v-box9 li.indx a{
    font-weight: 700;
    color: #fff;
    font-size: 20px;
    line-height: 1.2em;
    position:relative;
}
.v-box9 li.indx a span{
    position:relative;
    z-index: 2;
}
.v-box9 li.indx a:after{
    position:absolute;
    left: 40px;
    top: 10px;
    z-index: 1;
    font-family: 'SmoothStone-Regular';
    font-size: 37px;
    line-height: 1.2em;
    color: #959595;
    content: "Interview";
}
.v-box9 li.prev,
.v-box9 li.next{
    width: 150px;
}
.v-box9 li.prev a,
.v-box9 li.next a{
    display: block;
    position: relative;
}
.v-box9 li.prev a:hover,
.v-box9 li.next a:hover{
    opacity: 1;
}
.v-box9 li a .txt{
    width: 96px;
    background-color: #fff;
    border: solid 1px #000;
    text-align: center;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    text-align: center;
    padding: 3px 0;
    position: absolute;
    top: calc(50% - 13px);
}
.v-box9 li.prev a .txt{
    right: -45px;
}
.v-box9 li.next a .txt{
    left: -45px;
}
.v-box9 li a .img{
    overflow: hidden;
    position: relative;
}
.v-box9 li a .img:before{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(8,97,214,0.5);
    content: "";
}
.v-box9 li a:hover .img:before{
    background-color: rgba(8,97,214,0);
}
.v-box9 li a .img img{
    transition: 0.3s;
}
.v-box9 li a:hover .img img{
    transform: scale(1.1);
}



@media screen and (max-width:1600px){
    .v-box3 .img{
        height: 39vw;
    }
    .v-box2{
        margin-top: -200px;
    }
}

@media screen and (max-width:1300px){
    .v-box2{
        display: inline-block;
        width: auto;
        margin-top: -120px;
    }
    
    .v-box3 .txt dd br.pc{
        display: none;
        
    }
    
}
@media screen and (max-width:1280px){
    .daily-work .slick-prev{
        left: 80vw;
    }
    .daily-work .slick-next{
        left: 86vw;
    }
    
    
    .v-box6 img{
        width: 100%;
        height: 40.625vw;
    }
}
@media screen and (max-width:910px){

    .v-box1{
        height: 65vw;
        padding-bottom: 0;
        margin-top: -80px;
    }
    .v-box1 ._in{
        width: 80%;
    }
    .v-box1 ._in .sub{
        margin-bottom: 3.5vw;
    }
    .v-box1 ._in .sub img{
        width: 20vw;
    }
    .v-box1 ._in .txt img{
        width: auto;
        height: 10vw;
    }
    .v-box2{
        display: block;
        width: 100%;
        margin-top: 0;
        margin-right: 0;
        margin-bottom: 50px;
        padding: 40px 5%;
    }
    .v-box2 ._in{
        width: 100%;
        max-width: 520px;
        margin: auto;
    }
    .v-box3 .txt{
        width: 100%;
        margin-bottom: 30px;
    }
    .v-box3 .txt dt{
        margin-bottom: 5px;
    }
    .v-box3 .txt dt span{
        display: inline-block;
        margin-right: 8px;
    }
    .v-box3 .txt dd{
        padding: 20px;
    }
    .v-box3 .img{
        width: 100%;
        height: auto;
        margin-bottom: 30px;
    }
    .v-box3 .img img{
        position: static;
        max-width: 100%;
        width: auto;
        height: auto;
    }

    
    .v-box5-time{
        height: auto;
    }
    .daily-work{
        position: static;
        width: 100%;
    }
    .daily-work .min{
        height: auto;
        min-height: 400px;
        padding: 20px 15px;
        line-height: 1.7em;
        margin-left: 5px;
        margin-right: 5px;
    }
    .daily-work .min .sec{
        font-size: 18px;
        line-height: 1.2em;
    }
    .daily-work .slick-prev{
        left: auto;
        right: 53px;
    }
    .daily-work .slick-next{
        left: auto;
        right: 0;
    }
    
    .v-box7{
        padding-top: 100px;
    }
    .v-box7-item .ttl{
        width: 100%;
        margin-bottom: 20px;
    }
    .v-box7-item .txt{
        width: 100%;
    }
    .v-box7-item .ttl .p1{
        font-size: 16px;
        line-height: 1.2em;
    }
    .v-box7-item .ttl .p2{
        font-size: 24px;
        line-height: 1.2em;
    }
    
    .v-box8 ._in{
        background-size: auto 100%;
    }
    .v-box8 .fuki{
        height: auto;
        padding: 30px 20px;
        padding-bottom: 70px;
    }
}
@media screen and (max-width:640px){
    .v-box1{
        margin-top: 0;
        padding-bottom: 7vw;
        align-items: flex-end;
    }
    .v-box1 ._in{
        width: 90%;
    }
    .v-box1 ._in .txt img{
        width: auto;
        height: 14vw;
    }
    .v-box2 .p1{
        margin-bottom: 20px;
        text-align: center;
    }
    .v-box2 .p2,.v-box2 .p3{
        text-align: center;
    }
    .v-box2 .p4{
        font-size: 22px;
        line-height: 1.2em;
        margin-top: 10px;
        margin-bottom: 20px;
        text-align: center;
    }
    .v-box2 .img{
        position: static;
        width: 290px;
        margin: auto;
    }
    .v-box3 .txt dt{
        font-size: 19px;
        line-height: 1.4em;
    }
    .v-box3 .txt dt span{
        margin-right: 0;
    }
    .v-box3 .txt dd{
        padding: 15px;
    }
    .v-box4 li{
        width: 100%;
        margin-bottom: 20px;
    }


    .v-box5{
        padding-top: 60px;
        padding-bottom: 40px;
    }
    .v-box5-time{
        margin-top: 80px;
    }

    .daily-work .min{
        min-height: 300px;
    }

    .v-box6{
        margin-top: 20px;
    }
    .v-box7{
        padding-top: 60px;
    }
    .v-box7-item{
        margin-bottom: 30px;
    }
    .v-box7-item .ttl{
        margin-bottom: 10px;
    }
    .v-box7-item .ttl .p2{
        font-size: 19px;
        line-height: 1.2em;
    }
    .v-box7-item .txt ._in{
        padding: 20px;
        margin-bottom: 20px;
    }
    .v-box7-item .txt ._in .p3{
        width: 100%;
        margin-bottom: 5px;
        text-align: left;
        padding-right: 0;
        border-right: none;
    }
    .v-box7-item .txt ._in .p3 p{
        display: inline-block;
        vertical-align: middle;
    }
    .v-box7-item .txt ._in .p3 img{
        width: 40px;
        height: auto;
        vertical-align: middle;
        margin-right: 10px;
    }
    .v-box7-item .txt ._in .p4{
        width: 100%;
    }
    .v-box7-item .txt ._in .p5{
        width: 100%;
    }
    .v-box8{
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .v-box8 ._in{
        padding-bottom: 90px;
    }
    .v-box8 .fuki{
        background-size: auto 100%;
        background-position: left top;
        padding-bottom: 100px;
    }
    .v-box8 .fuki .sub{
        font-size: 19px;
        line-height: 1.2em;
        margin-bottom: 15px;
    }
    
    .v-box9{
        padding-top: 40px;
        padding-bottom: 50px;
    }
    .v-box9 ul{
        max-width: 350px;
        position: relative;
        padding-bottom: 60px;
    }
    .v-box9 li.indx{
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        text-align: center;
    }
    .v-box9 li.indx a::after{
        display: none;
    }
    .v-box9 li.prev,
    .v-box9 li.next{
        width: 48%;
        max-width: 150px;
    }
    .v-box9 li a .txt{
        width: 100%;
        margin-top: 10px;
        font-size: 90%;
        line-height: 1.2em;
        padding-top: 10px;
        padding-bottom: 7px;
        position: static;
    }
    .v-box9 li a .img:before{
        display: none;
    }

}













/* 環境・制度
-------------------------------*/

.culture #wrapper{
    background-image: url(../img/culture/culture_bg.png);
    background-position:  right top;
    background-repeat: no-repeat;
    transition: 0.3s;
}

#ct01{
    padding-top: 100px;
    margin-top: -100px;
    padding-bottom: 150px;
}

#ct02,
#ct03{
    padding-top: 100px;
    padding-bottom: 150px;
}

.edu-sys01{
    width: 100%;
    max-width: 800px;
    margin: 0 auto 90px;
}
.edu-sys02{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 90px;
}

.edu-sys02 .tabs {
    display: flex;
    flex-wrap: wrap;
}

.edu-sys02 .tab_label {
    color: #0861d6;
    font-weight: 700;
    border: solid 1px #0861d6;
    border-radius: 3px;
    position: relative;
    z-index: 1;
    cursor: pointer;
    width: 160px;
    text-align: center;
 /*   flex: 1;*/
    padding: 5px 0;
    margin: 0 5px; 
}

.edu-sys02 .tab_label:hover {
    opacity: 0.75;
}

.edu-sys02 .tab_cont {
    flex: 100%;
/*    display: none;*/
    overflow: hidden;
}

.edu-sys02 input[name="tab_switch"] {
    display: none;
}

.edu-sys02 .tabs input:checked + .tab_label {
    background-color: #cedff7;
    border-color: #cedff7;
}

.edu-sys02 #tab01:checked ~ #tab01_cont,
.edu-sys02 #tab02:checked ~ #tab02_cont,
.edu-sys02 #tab03:checked ~ #tab03_cont {
    display: block;
}

.edu-sys02 .tab_cont{
    position: relative;
    animation: fadeIn 1s ease;
    padding-top: 40px;
}
.edu-sys02 .tab_cont p.gr{
    margin-bottom: 10px;
    color: #666;
}
.edu-sys02 .tab_cont .waku{
    overflow: auto;
}
.edu-sys02 .tab_cont .waku img{
    min-width: 680px;
    height: auto;
}

.edu-sys03{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 90px;
}
.edu-sys03 .img{
    width: 40%;
    text-align: center;
}
.edu-sys03 .txt{
    width: 55%;
}
.edu-sys03 .txt dl{
    width: 100%;
    max-width: 460px;
}
.edu-sys03 .txt dt{
    font-size: 24px;
    color: #0861d6;
    margin-bottom: 7px;
}
.edu-sys03 .txt dd{
    margin-bottom: 40px;
}

.edu-sys04{
    width: 100%;
    margin-bottom: 50px;
}
.edu-sys04 .step{
    width: 40%;
    max-width: 300px;
}

.edu-sys04 .step dt{
    color: #0861d6;
    font-weight: 700;
    font-size: 22px;
    padding-bottom: 20px;
    border-bottom: solid 1px #cbcbcb;
    margin-bottom: 20px;
}
.edu-sys04 .step dd{
    padding-left: 15px;
}

.edu-sys04 .txt{
    width: 57%;;
}

.edu-sys04 .txt dt{
    font-size: 22px;
    line-height: 1.4em;
    margin-bottom: 20px;
}
.edu-sys04 .txt dd{
    margin-bottom: 40px;
}

.edu-sys04 .txt .sub_cap{
    padding-bottom: 8px;
    margin-bottom: 15px;
    border-bottom: solid 1px #cbcbcb;
}
.edu-sys04 .txt .sub_list li{
    display: inline-block;
    margin-right: 2em;
    vertical-align: top;
}

.edu-sys05{
    width: 90%;
    max-width: 1000px;
    margin: 100px auto 0;
}
.edu-sys05 .ttl{
    width: 100%;
    background-color: #333;
    text-align: center;
    color: #fff;
    font-size: 18px;
    line-height: 1.2em;
    padding: 10px;
    margin-bottom: 30px;
}
.edu-sys05 .txt1{
    width: 280px;
}
.edu-sys05 .txt2{
    width: calc(100% - 360px);
}
.edu-sys05 .txt2 .cap{
    padding-bottom: 8px;
    margin-bottom: 15px;
    border-bottom: solid 1px #cbcbcb;
}
.edu-sys05 .txt3{
    width: 100%;
    max-width: 680px;
    margin: auto;
}

#ct02{
    background-color: #f0f6fd;
}
.cal_fukuri{
    width: 100%;
    margin-bottom: 50px;
}
.cal_fukuri .ttl{
    width: 33%;
}
.cal_fukuri .ttl .sub1{
    color: #0861d6;
    font-size: 26px;
    line-height: 1.4em;
    margin-bottom: 10px;
}
.cal_fukuri .ttl .sub1 span{
    font-size: 14px;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 300;
    margin-right: 10px;
}
.cal_fukuri .ttl .sub2{
    margin-top: 30px;
}

.cal_fukuri .txt{
    width: 64%;
}
.cal_fukuri .txt li{
    width: 48.5%;
    min-height: 240px;
    margin-bottom: 15px;
    background-color: #fff;
    border-radius: 3px;
    padding: 25px;
}
.cal_fukuri .txt li .sub3{
    font-size: 20px;
    line-height: 1.3em;
    margin-bottom: 30px;
}

.cal_fukuri .txt li .sub4{
    margin-top: 10px;
    margin-bottom: 15px;
}
.cal_fukuri .txt li .sub4 .cap{
    line-height: 1.4em;
    text-indent: -2em;
    margin-left: 2em;
    margin-bottom: 5px;
}
.cal_fukuri .txt li .btn.sub5 a {
    max-width: 240px;
    margin: auto;
    border-color: #ccc;
}


.cul_gallery{
    width: 100%;
    margin-bottom: 40px;
}
.cul_gallery li{
    width: 32.5%;
    margin-bottom: 10px;
}
.cul_gallery li.wide{
    width: 49.1%;
}

@media screen and (max-width:1300px){
    .culture #wrapper{
        background-position:  center top;
        background-size: contain;
    }
}

@media screen and (max-width:910px){
    .edu-sys04 .step{
        width: 100%;
        max-width: initial;
        max-width: auto;
        margin-bottom: 30px;
    }
    .edu-sys04 .txt{
        width: 100%;;
    }
    .edu-sys04 .txt dt{
        margin-bottom: 10px;
    }
    
    .edu-sys05{
        margin-top: 80px;
    }
    .edu-sys05 .ttl{
        margin-bottom: 20px;
    }
    .edu-sys05 .txt1{
        width: 100%;
        margin-bottom: 30px;
    }
    .edu-sys05 .txt2{
        width: 100%;
    }
    
    
    .cal_fukuri .ttl{
        width: 100%;
        margin-bottom: 20px;
        position: relative;
    }
    .cal_fukuri .ttl .sub1{
        font-size: 22px;
        line-height: 1.4em;
        margin-bottom: 10px;
    }
    .cal_fukuri .ttl p{
        margin-left: 1em;
    }
    .cal_fukuri .ttl .sub2{
        position: absolute;
        right: 0;
        bottom: -20px;
        margin-top: 0;
        width: 150px;
    }
    .cal_fukuri .txt{
        width: 100%;
    }
}
@media screen and (max-width:640px){
    .culture #wrapper{
        background-image: none;
    }
    #ct01,
    #ct02,
    #ct03{
        padding-bottom: 80px;
    }

    .edu-sys01{
        margin-bottom: 50px;
    }

    .edu-sys02{
        margin-bottom: 50px;
    }

    .edu-sys02 .tab_label {
        font-size: 14px;
        width: auto;
        flex: auto;
        margin: 0 3px;
    }
    .edu-sys02 .tab_cont{
        padding-top: 20px;
    }
    .edu-sys02 .tab_cont p.gr{
        font-size: 15px;
    }
    .edu-sys03{
        margin-bottom: 50px;
    }
    .edu-sys03 .img{
        width: 80%;
        margin: auto;
    }
    .edu-sys03 .txt{
        width: 100%;
    }
    .edu-sys03 .txt dl{
        max-width: initial;
        max-width: auto;
    }
    .edu-sys03 .txt dt{
        font-size: 20px;
        margin-bottom: 3px;
    }
    .edu-sys03 .txt dd{
        margin-bottom: 20px;

    }

    .edu-sys04 .step dt{
        font-size: 20px;
    }
    .edu-sys04 .step dd{
        padding-left: 15px;
    }
    .edu-sys04 .txt dt{
        font-size: 18px;
        line-height: 1.4em;
    }
    .edu-sys04 .txt dd{
        margin-bottom: 30px;
    }

    .edu-sys05{
        margin-top: 40px;
    }
    .edu-sys05 .ttl{
        font-size: 16px;
        line-height: 1.2em;
        padding: 8px;
        margin-bottom: 15px;
    }
    .cal_fukuri .ttl .sub2{
        display: none;
    }
    .cal_fukuri .txt li{
        width: 100%;
        min-height: initial;
        min-height: auto;
        padding: 20px;
    }
    .cal_fukuri .txt li .sub3{
        font-size: 18px;
        line-height: 1.3em;
        margin-bottom: 15px;
    }
    .cul_gallery li{
        width: 49.1%;
    }
    .cul_gallery li.wide{
        width: 100%;
    }
    
}














/* 求める人物像
-------------------------------*/

.recruit #wrapper{
    background-image: url(../img/recruit/rec01_bg.png);
    background-position:  right top;
    background-repeat: no-repeat;
    transition: 0.3s;
}

.rec01_01{
    width: 100%;
    background: url(../img/recruit/rec01_bg_2.png) center bottom repeat-x;
    padding-bottom: 60px;
}
.rec_person_bg{
    width: 100%;
    background:url(../img/recruit/rec01_bg_4.png) center top no-repeat; 
    padding-bottom: 180px;
}
.rec_person_1{
    width: 90%;
    max-width: 980px;
    margin: 0 auto 80px;
    align-items: center;
}
.rec_person_1 .txt{
    width: 310px;
    font-size: 30px;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
}
.rec_person_1 .fig{
    width: calc(100% - 310px);
}

.rec_person_2{
    width: 90%;
    max-width: 800px;
    margin: auto;
}

.rec_person_list{
    width: 90%;
    max-width: 1100px;
    margin: auto;
}
.rec_person_list li{
    width: 48%;
    max-width: 480px;
    margin-bottom: 120px;
}
.rec_person_list dl{
    width: 100%;
    display: flex;
    justify-content: space-between;
/*    align-items: flex-end;*/
    align-items: center;
}
.rec_person_list dt{
    width: 160px;
    height: 160px;
    border: solid 1px #fff;
    border-radius: 3px;
    background:url(../img/recruit/rec01_bg_3.jpg) left bottom/cover no-repeat;
    color: #fff;
    padding-top: 35px;
    padding-left: 35px;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 300;
    position: relative;
}
.rec_person_list dt .ja{
    font-size: 26px;
    line-height: 1.2em;
}
.rec_person_list dt .en{
    position: absolute;
    left: 15px;
    bottom: 15px;
    font-size: 14px;
}
.rec_person_list dd{
    width: calc(100% - 230px);
    color: #0861d6;
    padding-bottom: 15px;
}

.rec_person_list li:last-child dd{
    color: #fff;
}

.rec01_02{
    width: 100%;
    padding-top: 120px;
    padding-bottom: 170px;
    background-color: #f0f0f0;
}
.rec_message{
    width: 100%;
    max-width: 1920px;
    margin: auto;
    padding-top: 130px;
    position: relative;
}
.rec_message .img{
    position: absolute;
    left: 0;
    top: 0;
    width: 51%;
}
.rec_message .txt{
    position: relative;
    z-index: 2;
    margin-left: 46%;
    width: 54%;
    max-width: 860px;
    padding: 80px;
    background-color: #fff;
}
.rec_message .txt p{
    width: 100%;
    max-width: 580px;
    margin-bottom: 30px;
}
.rec_message .txt p.name{
    margin-top: 50px;
}

@media screen and (max-width:1300px){
    .recruit #wrapper{
        background-position:  center top;
        background-size: contain;
    }
    .rec_person_list li{
        margin-bottom: 60px;
    }
    .rec_message .txt{
        padding: 60px 40px;
    }
    
}

@media screen and (max-width:910px){
    .rec_message{
        width: 90%;
        padding-top: 0;
    }
    .rec_person_bg{
        padding-bottom: 80px;
    }
    .rec_person_1{
        margin-bottom: 40px;
    }
    .rec_person_1 .txt{
        width: 100%;
        text-align: center;
        margin-bottom: 40px;
    }
    .rec_person_1 .fig{
        width: 100%;
        text-align: center;
    }
    
    .rec_person_list dl{
        align-items: center;
    }
    .rec_person_list dt{
        width: 130px;
        height: 130px;
        padding-top: 20px;
        padding-left: 15px;
    }
    .rec_person_list dt .ja{
        font-size: 20px;
        line-height: 1.2em;
    }
    .rec_person_list dd{
        width: calc(100% - 150px);
        line-height: 1.7em;
        padding-bottom: 0;
    }
    .rec_person_list dd br.sp{
        display: none;
    }
    .rec_person_list dd.f_siro{
        color: #fff;
    }

    .rec01_02{
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .rec_message .img{
        position: static;
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    .rec_message .txt{
        margin-left: 0;
        width: 100%;
        max-width: initial;
        max-width: auto;
        padding: 40px;
    }
    .rec_message .txt p{
        max-width: initial;
        max-width: auto;
    }

}
@media screen and (max-width:640px){

    .recruit #wrapper{
        background-image: none;
    }
    .rec_person_bg{
        padding-bottom: 40px;
        background-image: none;
    }
    
    .rec_person_1{
        margin-bottom: 20px;
    }
    .rec_person_1 .txt{
        font-size: 20px;
        margin-bottom: 10px;
    }
    
    .rec_person_list li{
        width: 100%;
        max-width: initial;
        max-width: auto;
        margin-bottom: 20px;
    }
    .rec_person_list dt{
        width: 100px;
        height: 100px;
        padding-top: 15px;
        padding-left: 10px;
    }
    
    .rec_person_list dt .ja{
        font-size: 17.5px;
        line-height: 1.4em;
    }
    .rec_person_list dt .en{
        left: 8px;
        bottom: 7px;
        font-size: 13px;
        line-height: 1em;
    }
    .rec_person_list dd{
        width: calc(100% - 120px);
        line-height: 1.7em;
        padding-bottom: 0;
    }
    .rec_person_list dd br.sp{
        display: none;
    }
    .rec_person_list li:nth-last-child(2) dd{
        color: #fff;
    }
    
    .rec01_02{
        padding-top: 70px;
        padding-bottom: 60px;
    }
    .rec_message .txt{
        padding: 20px;
    }
    .rec_message .txt p{
        margin-bottom: 20px;
    }
    .rec_message .txt p.name{
        margin-top: 20px;
    }

}
@media screen and (max-width:380px){
    .rec_person_list dd{
        font-size: 95%;
        line-height: 1.7em;
    }

}









/* 新卒採用・中途採用
-------------------------------*/
#r-data01{
    padding-top: 100px;
    margin-top: -100px;
    padding-bottom: 150px;
}
#r-data04{
    padding-top: 100px;
    margin-top: -100px;
    padding-bottom: 20px;
}

#r-data02,
#r-data03,
#r-data05{
    padding-top: 100px;
    padding-bottom: 150px;
}

.bosyu-youkou{
    width: 100%;
}
.bosyu-youkou th{
    width: 200px;
    color: #0861d6;
    padding-top: 25px;
    padding-bottom: 25px;
    padding-left: 35px;
    vertical-align: top;
    position: relative;
    border: none;
}
.bosyu-youkou th:after{
    position: absolute;
    left: 0;
    bottom: -0.5px;
    width: 200px;
    height: 1px;
    background: url(../img/recruit/bosyu_kei.png) left bottom repeat-y;
    content: "";
}
.bosyu-youkou tr:first-child th:before{
    position: absolute;
    left: 0;
    top: -0.5px;
    width: 200px;
    height: 1px;
    background: url(../img/recruit/bosyu_kei.png) left top repeat-y;
    content: "";
}

.bosyu-youkou td{
    width: calc(100% - 200px);
    padding-top: 25px;
    padding-bottom: 25px;
    padding-left: 50px;
    border-bottom: solid 1px #dadada;
}
.bosyu-youkou tr:first-child td{
    border-top: solid 1px #dadada;
}

.rec_flow_step01{
    width: 100%;
    margin-bottom: 60px;
    justify-content: flex-start;
    align-items: center;
}
.rec_flow_step01 li{
    width: 16%;
    text-align: center;
}
.rec_flow_step01 li.ya{
    width: 5%;
    height: 20px;
    background:url(../img/recruit/rec_flow_step_ya.png) center center no-repeat; 
}

.rec_flow_in{
    width: 100%;
    background: url(../img/recruit/rec_flow_bg.png) left top no-repeat;
}
.rec_flow_step02{
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    position: relative;
}
.rec_flow_step02 .kikan{
    position: absolute;
    left: -120px;
    top: 7px;
    width: 75px;
    font-size: 15px;
    line-height: 1.2em;
    font-weight: 700;
}
.rec_flow_step02 .kikan.th1{
    top: -25px;
}
.rec_flow_step02 .kikan .maru{
    width: 75px;
    height: 64px;
    border: solid 5px #000;
    border-radius: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.rec_flow_step02 .kikan p{
    text-align: center;
    margin-bottom: 8px;
}

.rec_flow_step02 dt{
    background-color: #0861d6;
    color: #fff;
    padding: 20px;
    font-size: 26px;
    line-height: 1.2em;
    font-weight: 700;
    position: relative;
}
.rec_flow_step02 dt .step{
    display: inline-block;
    vertical-align: top;
    font-size: 12px;
    padding-right: 0.5em;
}
.rec_flow_step02 dt .num{
    font-size: 30px;
    line-height: 1.2em;
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
}
.rec_flow_step02 dt .sub{
    position: absolute;
    right: 40px;
    top: 20px;
    font-size: 15px;
}

.rec_flow_step02 dd{
    padding-top: 20px;
    padding-left: 20px;
    margin-bottom: 50px;
}
.rec_flow_step02:last-child dd{
    margin-bottom: 0;
}
.rec_flow_step02 dd p{
    margin-bottom: 20px;
}
.rec_flow_step02 .rf01{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.rec_flow_step02 .rf01 div{
    margin-right: 1px;
    margin-bottom: 10px;
}

.rec_flow_step02 .rf02{
    width: 100%;
    max-width: 330px;
    padding: 15px 20px;
    border: solid 1px #000;
    border-radius: 3px;
    display: flex;
    justify-content: space-between;
}
.rec_flow_step02 .rf02 div:nth-child(1){
    width: 6em;
    font-weight: 700;
    color: #808080;
}
.rec_flow_step02 .rf02 div:nth-child(2){
    width: calc(100% - 6em);
}
.rec_flow_step02 .rf02 div:nth-child(2) a{
    font-size: 130%;
}

.rec_flow_step02 .rf01 .rf02{
    padding: 14px 20px;
}



.rec_flow_step02 .rf03{
    margin-bottom: 20px;
}
.rec_flow_step02 .rf03 p{
    font-weight: 700;
    margin-bottom: 10px;
    padding-left: 25px;
}
.rec_flow_step02 .rf03 ul{
    width: 100%;
    max-width: 460px;
    border: solid 1px #dadada;
    border-radius: 3px;
    padding: 15px 25px;
    font-size: 15px;
    line-height: 1.7em;
}
.rec_flow_step02 .rf03 ul li:nth-child(odd){
    width: 130px;
}
.rec_flow_step02 .rf03 ul li:nth-child(even){
    width: calc(100% - 130px);
}

.rec_flow_step02 .rf04 .img{
    width: 160px;
}
.rec_flow_step02 .rf04 .txt{
    width: calc(100% - 160px);
    padding-top: 20px;
}

.rec_flow_step02 .rf05{
    margin-top: 60px;
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.8em;
    font-weight: 700;
}
.rec_flow_step02 .rf06 {
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 22px;
}



.rec_flow_step02 .rf03 table{
    width: 100%;
    max-width: 460px;
    border: solid 1px #dadada;
    border-radius: 3px;
    padding: 15px 25px;
    font-size: 15px;
    line-height: 1.7em;
}
.rec_flow_step02 .rf03 table th{
    width: 130px;
}
.rec_flow_step02 .rf03 table td{
    width: calc(100% - 130px);
}

#r-data03{
    background-color: #fafafa;
}
.saiyo-data dt{
    font-weight: 700;
    background-color: #e3e3e3;
    padding: 5px 15px;
    margin-bottom: 15px;
}
.saiyo-data dd{
    padding-left: 15px;
    margin-bottom: 60px;
}
.saiyo-data dd p{
    width: 100%;
    max-width: 860px;
    margin-bottom: 20px;
}
.saiyo-data dd .num li{
    display: inline-block;
    vertical-align: top;
}
.saiyo-data dd .num li:not(:last-child){
    margin-right: 3em;
}

.saiyo-nav{
    background-color: #cedff7;
    padding-top: 110px;
    padding-bottom: 140px;
}
.saiyo-nav li{
    width: 48%;
    height: 220px;
    background-color: #0861d6;
    border-radius: 3px;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background-position: center top;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(../img/recruit/sai_nav_bg1.png);
}
.saiyo-nav li:nth-child(2){
    background-image: url(../img/recruit/sai_nav_bg2.png);
}
.saiyo-nav li .fuki{
    position: absolute;
    left: 50px;
    top: 30px;
}
.saiyo-nav li ._in{
    width: 90%;
    max-width: 280px;
}
.saiyo-nav li .sub{
    font-family: 'IBM Plex Sans JP', sans-serif;
    font-weight: 700;
    font-size: 22px;
    margin-bottom: 30px;
}

@media screen and (max-width:1300px){
    .saiyo-nav li .fuki{
        left: 30px;
        top: 30px;
    }
}
@media (max-width:1050px) and (min-width:911px){
    .saiyo-nav li .fuki{
        width: 8.7vw;
        left: 1.8vw;
        top: 1.8vw;
    }
}

@media (max-width:990px) and (min-width:911px){
    .rec_flow_step02{
        max-width: 750px;
    }
    .rec_flow_step02 .kikan{
        left: -80px;
    }
}

@media screen and (max-width:910px){

    .bosyu-youkou th{
        padding-left: 20px;
    }
    .bosyu-youkou td{
        padding-left: 25px;
    }
    
    .rec_flow_step01 li{
        width: 25%;
        margin-bottom: 20px;
    }
    .rec_flow_step01 li.ya{
        width: 8.3%;
    }

    .rec_flow_in{
        background: none;
    }
    
    .rec_flow_step02 .kikan{
        position: static;
        width: auto;
        margin-bottom: 10px;
    }
    .rec_flow_step02 .kikan .maru{
        width: auto;
        height: auto;
        border: none;
        border-radius: 0;
        display: block;
        padding-left: 10px;
        border-left: solid 5px #000;
    }
    .rec_flow_step02 .kikan .maru span br{
        display: none;
    }
    .rec_flow_step02 .kikan p{
        display: none;
    }
    .rec_flow_step02 dt{
        padding: 15px 20px;
        font-size: 20px;
        line-height: 1.2em;
    }
    .rec_flow_step02 dt .num{
        font-size: 24px;
        line-height: 1.2em;
    }
    .rec_flow_step02 dt .sub{
        top: 15px;
    }
    
    .saiyo-nav{
        padding-top: 80px;
        padding-bottom: 100px;
    }
    .saiyo-nav li{
        width: 100%;
        max-width: 580px;
        height: 220px;
        margin: 0 auto 30px;
    }
    
}
@media screen and (max-width:640px){
    #r-data01,
    #r-data02,
    #r-data03,
    #r-data04,
    #r-data05{
        padding-bottom: 80px;
    }
    
    .bosyu-youkou{
        border-top: solid 1px #dadada;
    }
    .bosyu-youkou th{
        display: inline-block;
        width: 100%;
        padding: 10px;
        background-color: #f4f4f4;
    }
    .bosyu-youkou th:after{
        display: none;
    }
    .bosyu-youkou tr:first-child th:before{
        display: none;
    }
    .bosyu-youkou td{
        display: inline-block;
        width: 100%;
        padding: 10px;
        padding-bottom: 15px;
    }
    .bosyu-youkou tr:first-child td{
        border-top: none;
    }
    .rec_flow_step02 dt{
        padding: 10px 15px;
        font-size: 18px;
        line-height: 1.2em;
    }
    .rec_flow_step02 dt .num{
        font-size: 20px;
        line-height: 1.2em;
    }
    .rec_flow_step02 dt .sub{
        position: static;
        margin-top: 5px;
        text-align: right;
        font-size: 14px;
    }
    .rec_flow_step02 dd{
        padding-left: 3px;
    }
    .rec_flow_step02 .rf04 .img{
        width: 100px;
    }
    .rec_flow_step02 .rf04 .txt{
        width: calc(100% - 120px);
        padding-top: 10px;
    }

    .rec_flow_step02 .rf05{
        margin-top: 40px;
        font-size: 16px;
        line-height: 1.8em;
    }
    .rec_flow_step02 .rf06 {
        font-size: 20px;
    }

    .saiyo-data dd{
        margin-bottom: 30px;
    }
    .saiyo-nav{
        padding-top: 60px;
        padding-bottom: 30px;
    }
    .saiyo-nav li{
        align-items: flex-end;
        padding-bottom: 30px;
    }
    .saiyo-nav li .fuki{
        left: 10px;
        top: 10px;
    }
}

@media screen and (max-width:480px){

    .rec_flow_step01 li{
        width: 42%;
    }
    .rec_flow_step01 li.ya{
        width: 8%;
    }
    .rec_flow_step02 .rf01 div{
        width: 80%;
    }
    .rec_flow_step02 .rf01 div.rf02{
        width: 100%;
    }


    .saiyo-nav li{
        height: 170px;
    }
    .saiyo-nav li .sub{
        font-size: 19px;
    }
    .saiyo-nav li .fuki{
        width: 60px;
    }

}
























/* FAQ
-------------------------------*/
.faq_box{
    margin-bottom: 120px;
}

.faq-item{
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 60px;
}
.faq-item span{
    position: relative;
}
.faq-item span:after{
    position: absolute;
    left: calc(50% - 30px);
    bottom: -20px;
    width: 60px;
    height: 1px;
    background-color: #c9c9c9;
    content: "";
}
.faq_box details{
    border: solid 1px #f0f0f0;
    border-radius: 3px;
    padding: 30px;
    margin-bottom: 30px;
}

.faq_box details summary{
    display: block;
    background-image: url(../img/faq/faq_open.png);
    background-position: right center;
    background-repeat: no-repeat;
}
.faq_box details summary::-webkit-details-marker {
    display: none;
}
.faq_box details[open] summary{
    background-image: url(../img/faq/faq_close.png);
}
.faq_box details summary div{
    padding: 20px 20px 20px 100px;
    background: url(../img/faq/faq_q.png) 20px center no-repeat;
}
.faq_box details p{
    background-color: #f0f6fd;
    border-radius: 3px;
    padding: 30px 30px 30px 100px;
    min-height: 80px;
    position: relative;
}
.faq_box details p:before{
    position: absolute;
    left: 30px;
    top: 20px;
    width: 40px;
    height: 40px;
    background: url(../img/faq/faq_a.png) no-repeat;
    content: "";
}

.faq_other{
    height: 160px;
    position: relative;
}
.faq_other_item{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    border: solid 2px #0861d6;
    border-radius: 10px;
    background-color: #fff;
    padding: 30px 50px;
    align-items: center;
}

.faq_other_item .txt1{
    width: 50%;
    background: url(../img/faq/faq_other_bg.png) right bottom/contain no-repeat;
    padding-bottom: 30px;
}
.faq_other_item .txt1 .sub2{
    margin-top: 30px;
    font-size: 18px;
    line-height: 1.8em;
    font-weight: 700;
    color: #0861d6;
}

.faq_other_item .txt2{
    width: 38%;
}

@media screen and (max-width:1300px){

    .faq_box details{
        padding: 20px;
        margin-bottom: 20px;
    }
    .faq_box details summary div{
        padding-left: 80px;
        background-position: 10px center;
    }
    .faq_box details p{
        padding: 20px 20px 20px 80px;
        min-height: 80px;
    }
    .faq_box details p:before{
        left: 20px;
    }

}

@media screen and (max-width:910px){
    
    .faq_other{
        height: auto;
        margin-bottom: 100px;
    }
    .faq_other_item{
        position: static;
        padding: 30px;
    }

    .faq_other_item .txt1{
        width: 100%;
    }
    .faq_other_item .txt1 .sub2{
        margin-top: 20px;
        text-align: center;
    }
    .faq_other_item .txt2{
        width: 100%;
    }
    .faq_other_item .txt2 .btn a{
        margin: auto;
    }
    
}
@media screen and (max-width:640px){
    .faq_box{
        margin-bottom: 60px;
    }
    .faq-item{
        font-size: 16px;
        margin-bottom: 30px;
    }
    .faq-item span:after{
        bottom: -10px;
    }
    
    .faq_box details{
        padding: 10px;
        margin-bottom: 10px;
    }

    .faq_box details summary{
        background-size: 20px 20px;
    }

    .faq_box details summary div{
        padding: 12px 50px 12px 40px;
        background-size: 30px 30px;
        background-position: 0px center;
    }
    .faq_box details p{
        padding: 40px 10px 10px;
    }
    .faq_box details p:before{
        top: 5px;
        left: 8px;
        width: 30px;
        height: 30px;
        background-size: contain;
    }
    .faq_other{
        margin-bottom: 60px;
    }
    .faq_other_item{
        position: static;
        padding: 30px 20px;
    }
    .faq_other_item .txt1 .sub2{
        margin-top: 20px;
        font-size: 16px;
        line-height: 1.8em;
    }
    .faq_other_item .txt1 .sub2 span{
        display: inline-block;
    }

}



















/* エントリーフォーム
-------------------------------*/

.ent01{
    border: solid 1px #f0f0f0;
    border-radius: 3px;
    padding: 30px;
    margin-bottom: 80px;
}
.ent02{
    margin-bottom: 120px;
}

.ent-item{
    width: 100%;
    background-color: #0861d6;
    border-radius: 3px;
    padding: 13px 30px;
    font-size: 22px;
    line-height: 1.2em;
    color: #fff;
    margin-bottom: 10px;
}
.entryform{
    width: 100%;
    border-collapse: separate;
    border-spacing: 20px 10px; /* 左右、上下 */
    margin-bottom: 50px;
}
.entryform th{
    width: 170px;
    vertical-align: top;
    padding-top: 10px;
    position: relative;
}
.entryform th .hissu{
    position: absolute;
    right: 20px;
    top:10px;
    color: #0861d6;
    font-size: 12px;
    font-weight: 700;
}
.entryform td{
    width: calc(100% - 170px);
}
.entryform td label{
    margin-right: 2em;
}

.length_l{
    width: 100%;
    padding: 15px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
    margin-bottom: 10px;
}
.length_m{
    width: 100%;
    max-width: 360px;
    padding: 15px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
}
.length_s{
    width: 120px;
    padding: 15px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
}
.length_ss{
    width: 80px;
    padding: 15px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
}
.naiyou{
    width: 100%;
    height: 230px;
    padding: 15px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
    resize: none;
}

.ent-policy{
    text-align: center;
    margin-top: 30px;
    margin-bottom: 30px;
}
.ent-policy .p1{
    margin-bottom: 20px;
}
.ent-policy .p1 br{
    display: none;
}
.ent-policy .p2 a{
    color: #0861d6;
    font-weight: 700;
}

.ent_btn{
    text-align: center;
}
.ent_btn p{
    width: 240px;
    margin: auto;
    line-height: 1em;
}

.ent_btn .maru{
    display: inline-block;
    position: relative;
}
.ent_btn .maru:after{
    position: absolute;
    left: calc(100% - 54px);
    top: 18px;
    width: 24px;
    height: 24px;
    background: url(../img/common/btn_maru.png) center center/contain no-repeat;
    border-radius: 12px;
    content: "";
    transition: 0.2s;
}
.ent_btn .maru:hover:after{
    left: calc(100% - 57px);
    top: 15px;
    width: 30px;
    height: 30px;
}
.ent_sousin{
    width: 240px;
    height: 56px;
    border: solid 1px #f0f0f0;
    background-color: #fff;
    border-radius: 30px;
    padding: 0 30px;
    text-align: left;
    cursor: pointer;
}

@media screen and (max-width:910px){
    .entryform{
        border-spacing: 0 10px; /* 左右、上下 */
    }
    
}

@media screen and (max-width:640px){
    .ent01{
        border: none;
        padding: 20px 0;
        margin-bottom: 50px;
    }
    .ent02{
        margin-bottom: 60px;
    }
    
    .ent-item{
        padding: 10px 20px;
        font-size: 20px;
        line-height: 1.2em;
    }
    .entryform{
        border-spacing: 0 20px; /* 左右、上下 */
        margin-bottom: 20px;
    }
    .entryform th{
        display: inline-block;
        width: 100%;
        padding: 5px 10px;
        background-color: #f4f4f4;
    }
    .entryform th .hissu{
        position: static;
        padding-left: 10px;
    }
    .entryform td{
        display: inline-block;
        width: 100%;
        padding-top: 5px;
    }
    .entryform td.sibo label{
        display: block;
        margin-right: 0;
    }
    .entryform td.sibo br{
        display: none;
    }

    .length_l{
        padding: 10px;
    }
    .length_m{
        padding: 10px;
    }
    .length_s{
        width: 25%;
        padding: 10px;
    }
    .length_ss{
        width: 18%;
        padding: 10px;
    }
    .naiyou{
        height: 180px;
        padding: 10px;
    }

    .ent-policy .p1 br{
        display: inline-block;
    }


}





















.ar { text-align: right; }
.ac { text-align: center; }

/* プリントの表示設定 */
@media print{
    #wrapper{
        width:1110px;
        margin:auto;
    }
}








