@charset "UTF-8";

/* reset 
------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, img, dl, dt, dd, ol, ul, li, form, label, legend, table, tbody, tr, th, td, article, embed, footer, header, hgroup, nav, section, time {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    font-weight: normal;
  }
ul,li{list-style-type:none;}
a{ 
    text-decoration: none;
    color:#707070;
}
a:hover{
    color:#da3925;
}
body {
    font-family:  "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif; 
    font-size:16px;
    color:#2e2e2e;
    letter-spacing: 0.09em;
}
@media (min-width:1024px){
    body{
        font-size:18px;
    }
}

.sp{    display: inline-block;}
@media (min-width:1024px){
    .sp{    display: none;}
}

.wrapper{
    margin: 0 20px;
}
@media (min-width:1200px){
    .wrapper{
        width:1200px;
        margin: auto;
    }   
}
@media (min-width:1024px){
    .wrapper{
        width:900px;
        margin: auto;
    }   
}
section{
    display:block;
    margin:0 auto;
    padding:50px 0;
}
@media (min-width:1024px){
    section{
        padding:100px 0;
    }
   
}
section:first-of-type{
    margin:0 auto 0px;
}

.contents-header{
    margin-bottom:50px;
}
.contents-title{
    font-size:28px;
    margin:auto;
    margin-bottom:10px;
    text-align: center;
}
@media (min-width:1024px){
    .contents-title{
        font-size:38px;
    }
}
.contents-engtitle{
    font-size:14px;
    margin:auto;
    text-align: center;
}
@media (min-width:1024px){
    .contents-engtitle{
        font-size:20px;
        margin:auto;
        text-align: center;
    }
}


/* header
------------------------------------------- */

header{
    position: absolute;
    width:100%;
    z-index: 5;
}

@media (min-width:768px){
    header{
        padding-top:10px;
    }
}
.header-inner{
    width:auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:15px 0;

}
@media (min-width:1024px){
    .header-inner{
        padding:10px 20px;
    }   
}
@media (min-width:1200px){
    .header-inner{
        width:1200px;
        padding:10px 0;
    }   
}

/*
header h1{
    width:200px;
}
@media (min-width:1024px){
    header h1{
        width:350px;
    }   
}
*/

header h1 a{
    width: 44vw;
    display: flex;
}
@media (min-width:1024px){
    header h1 a{
    width: 350px;
    }
}

header h1 div.yagou{
    display:contents;
}
header h1 div.yagou img{
    width:30%;
    padding-right:10px;
}



header h1 img{
    width:100%;
    filter: drop-shadow(2px 2px 1px #fff);
}
.header-btn{
    text-align:center;
    white-space: nowrap;
}
.header-btn a{
    border:1px solid #fff;
    padding: 6px 14px;
    color: #FFF;
    width: 100%;
    font-size:12px;
    transition: all 0.5s 0s ease;
}
@media (min-width:1024px){
    .header-btn a{
        padding: 10px 40px;
        font-size:16px;
    }
}

.header-btn a:hover{
    background:#fff;
    color:#707070;
}

/* main
------------------------------------------- */

section#main{
    background-color:#000;
    background:url(../images/top_main_image_sp.jpg);
     background:url(../images/top_main_image_dt.jpg);
    background-position:center;
    background-repeat:  no-repeat;
    background-size: cover;
    width:100%;
    height:400px;
    padding:0;
}
@media (min-width:768px){
    section#main{
         height:370px;
    }
}
@media (min-width:1024px){
    section#main{
        background:url(../images/top_main_image_dt.jpg) center/cover;
        background-position:top center;
        background-repeat: no-repeat;
        height:80vh;
        width:100%;
    }   
}
@media (min-width:1585px){
    section#main{
        background-position:top center;
        background-repeat: no-repeat;
        height:100vh;
        width:100%;
    }   
}


.main-catchcopy{
    position: relative;
    left: 0;
    top: 24%;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","Noto Serif JP", serif;
    color: #fff;
}
@media (min-width:768px){
    .main-catchcopy{
        top:20%;
    }
}
@media (min-width:1024px){
    .main-catchcopy{
        top: 20%;
    }
}

.main-catchcopy h2{
    text-align: center;
    font-size: 4.2vw;
}
@media (min-width:1024px){
    .main-catchcopy h2{
        font-size: 3.2vw;
    }
}

/* catchcopy
------------------------------------------- */
section#catchcopy{
background: rgb(255,255,255);
background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(245,245,245,1) 4%, rgba(164,133,101,1) 24%, rgba(152,116,79,1) 29%, rgba(111,60,7,1) 44%, rgba(3,3,3,1) 100%);    color:#fff;
    padding: 30px 0 100px;
}
@media(min-width:768px){
    section#catchcopy{
        padding: 80px 0;
        font-size:2.0vw;
    }

}

@media(min-width:1024px){
    section#catchcopy{
        padding: 100px 0;
        font-size:1.8vw;
    }
}
@media(min-width:1585px){
    section#catchcopy{
        padding: 40px 150px 160px;
        font-size:1.4vw;
    }
}



.catchcopy-inner{
    width: auto;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","Noto Serif JP", serif;
    padding:0 20px;
}
@media (min-width:768px){
    .catchcopy-inner{
        padding:0 40px;
    }
}
@media (min-width:1024px){
    .catchcopy-inner{
        width: 940px;
        margin:0 auto;
    }
}
.catchcopy-title{
    font-size:30px;
    font-weight: bold;
    text-align:center;
    margin-bottom:20px;
}
@media (min-width:1024px){
    .catchcopy-title{
        font-size:50px;
    }   
}


.catchcopy-title_letter{
    display:block;
}
@media (min-width:1024px){
    .catchcopy-title_letter{
        display:inline;
    }    
}


.catchcopy-title span{
    color:#FFD037
}

.catchcopy-content{
    line-height: 2.6em;
    text-shadow: 1px 1px 10px #2a2200;
    font-size:3.6vw;
}
@media (min-width:768px){
    .catchcopy-content{
        font-size:2.6vw;
    }
}
@media (min-width:1024px){
    .catchcopy-content{
        font-size:1.4vw;
    }
}




/* infomation
------------------------------------------- */
.info_wrap{
    margin: 10px 20px;
    border:2px solid #e70000;
    padding:15px;
}
@media (min-width:768px){
    .info_wrap{
        width:700px;
        margin:auto;
    }
}

.info_title{
    font-size:110%;
    font-weight: bold;
}
.info_desc{
    color:#ee0000;
    padding:15px;
}
.vtimer{display:none;}

/* business
------------------------------------------- */
#business{
    background:#FCF5E8;
}

.business-inner{
    width:auto;
}
@media (min-width:768px){
    .business-inner{
        width:auto;
    }
}
@media (min-width:1200px){
    .business-inner{
        width:1200px;
    }
}

.box{
    display:block;
}
@media (min-width:768px){
    .box{
        display:flex;
        justify-content: space-around;
    }    
}
.box-item{
    width: auto;
    margin: 0 auto;
    border: 1px solid #e1e1e1;
    background: #fff;
    padding:20px 30px;
    margin: 0 5px;
    margin-bottom:20px;
    border-radius: 3px;
}
@media (min-width:768px){
    .box-item{
        width: 90%;
        padding: 50px 20px;

    }
}
.box-item img{
    width:100%;
}
.box-item-logo{
    height:90px;
    display:flex;
    margin-bottom:20px;
}

.box-item-title{
    font-size:22px;
    color:#2E7D01;
    margin:10px auto;
    text-align:center;
}
.box-item-summary{
    line-height: 2.0em;
    margin-bottom:20px;
}
@media (min-width:768px){
    .box-item-summary{
        min-height:250px;
        margin-bottom:20px;
    }
}

.service-link-btn{
    position:relative;
    font-size:1.0rem;
    display:flex;
    justify-content: center;
}
@media (min-width:768px){
.service-link-btn{
    font-size:1.0rem;
}
}
.service-link-btn a{
    padding:18px 40px 18px 15px;
    display:inline-block;
    line-height: 1;
    border:1px solid #666;
    position:relative;
    transition: all 0.5s 0s ease;
}
.service-link-btn a:hover{
    background:#69b82d;
    color:#fff;
}
.service-link-btn a span:before{
    content:"";
    position:absolute;
    background:url(../images/link_icon.svg) no-repeat 50% 50%;
    background-size:cover;
    top: 50%;
    right: 16px;
    transform: translate(0, -50%);
    margin-top: -2px;
    width: 16px;
    height: 16px;
}

/* message
------------------------------------------- */
#message{

}
.message-inner{
    width:auto;
}
@media (min-width:1024px){
    .message-inner{
        width:720px;
    }
}

.message-contents{
    line-height: 2em;
    text-indent: 1em;
}
@media (min-width:768px){
    .message-contents{
        line-height:3em;
    }
}


.message-contents_sign{
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","Noto Serif JP", serif;
    font-size: 24px;
    text-align: right;
    margin-top:20px;
    display: block;
}
.message-contents_sign span{
    font-size:18px;
}


/* company
------------------------------------------- */
#company{
    background: url(/images/bill1000.png) no-repeat;
    background-color:rgba(255,255,255,0.9);
    background-blend-mode:lighten;
    background-position: bottom;
    background-size: 100%;
}

.company-inner{
    width:auto;
    margin:0 30px;
}
@media (min-width:1024px){
    .company-inner{
        width:650px;
        margin:auto;
    }
}


.company-contents{
    display:flex;
    padding: 30px 5px;
    border-bottom: 1px dotted #707070;
}

.company-contents dt{
    width:30%;
    flex-wrap: nowrap;
}

.company-contents dd{
    width:70%;
    padding-left: 10px;
}



/* 求人バナー枠
---------------------- */
.recruit-info{
    margin-top: 40px;
    display: block;
    background-color: rgba(255, 255, 255, 0.6);
    border: 1px solid #000;
    padding: 30px;
    box-shadow: 2px 2px 3px 1px #aba9a9;
}
.recruit-info-title{
    font-weight:bold;
    font-size:1.5rem;
    border-bottom:1px solid #ef0d0d;
    margin-bottom:12px;
}
.recruit-info>p{
    margin-bottom: 20px;
}



/* footer
------------------------------------------- */
footer{
    border-top:1px solid #707070;
    padding-top:20px;
    padding-bottom:50px;
}
@media (min-width:768px){
    footer{
        padding-top:50px;
    }
}

.footer-inner{
    width:auto;
    padding:0 20px;
}

@media (min-width:1200px){
    .footer-inner{
        width:1200px;
    }   
}

.footer-contents{
    display:block;
    text-align: center;
}
@media (min-width:768px){
.footer-contents{
    display: flex;
    justify-content: space-between;
}
}

.footer-wrapper{
    padding:5px 0;
}
@media (min-width:768px){
    .footer-wrapper{
        padding:20px 0;
    }    
}

.footer-menu{
    display: flex;
    justify-content: center;
    justify-items: center;
}
@media (min-width:768px){
    .footer-menu{
        justify-content: right;
    }
}

.footer-menu li{
    font-size:14px;
    padding:5px 10px;
}
.footer-menu li a{
    text-decoration: initial;
}
.footer-logo{
    width:180px;
    margin:auto;
}
@media (min-width:768px){
    .footer-logo{
        width:140px;
        margin:unset;
    }   
}
.footer-logo img{
    width:100%;
    margin-right:10px;
    margin-top:5px;
}

.ssl-box{
    margin-top:40px;
}
@media (min-width:768px){
    .ssl-box{
        margin-top:10px;
    }
}

.footer-wrapper p img{
    width:100%;
}

.footer-sign{
    font-size:12px;
    display: block;
    text-align: center;
    margin-top: 30px;
}

@media (min-width:768px){
    .footer-sign{
 
    }
    
}


/* お問い合わせ
------------------------------------------- */
.form-inner{
        width: auto;
        margin:0 auto;
}
@media (min-width:1024px){
    .form-inner{
        width:940px;
    }
}

span.hissu {
	display:inline;
	font-size:12px;	
	color:#F3060A;
	border:#D10D10 1px solid;
	padding:1px 5px;
	margin:0 10px;
	vertical-align: middle;
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
    white-space: nowrap;
}

section#toiawase-main{
    background:url(../images/toiawase_main_img_dt.jpg);
    background-position:center center;
    background-repeat:  no-repeat;
    background-size: auto,cover;
    width:100%;
    height:250px;
    padding:0;
    display:flex;
    justify-content: center;
    align-items: center;
}
@media (min-width:768px){
    section#toiawase-main{
        background:url(../images/toiawase_main_img_dt.jpg);
        background-position:center center;
        background-repeat:  no-repeat;
        background-size: 100%,auto,cover;
        height:350px;
    }
}

section#toiawase-main::before{
    content: " ";
    background-color: rgba(0,0,0,0.3);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height:inherit;
}

.main-title{
    color:#FFF;
    z-index: 5;
}
.main-title h2{
    font-size:30px;

}
.main-title p{
    font-size:14px;
    text-align:center;
}




.form-group{
	padding:20px 20px;	
}

.form-group label{
	text-align:right;
}
.address_parts{
	margin-bottom:10px;	
}

input[type="text"]{
	padding:9px;	
}

/**mailformproのcss上書き***/
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
    border-radius: 5px;
    padding: 5px 10px;
    border: solid 1px #CCC;
    background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
    background: -webkit-gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
    background: -moz-linear-gradient(top, #EEE, #CCC);
    background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
    text-shadow: 0px 0px 0px #FFF;
    font-size: 18px;
    cursor: pointer;
    outline: none;
}
.mfp_element_submit:hover, .mfp_element_reset:hover, .mfp_element_button:hover, button.mfp_next:hover, button.mfp_prev:hover {
    background: gradient(linear, center top, center bottom, from(#FFF), to(#CCC));
    background: -webkit-gradient(linear, center top, center bottom, from(#FFF), to(#CCC));
    background: -moz-linear-gradient(top, #FFF, #CCC);
    background: -ms-linear-gradient(top, #FFF 0%, #CCC 100%);
    box-shadow: 0px 0px 0px #CCC;
}

form#mailformpro {
     padding-bottom:60px;   
}
.btn-success {
    background-color: #31b395;
    border-color: #31b395;
}
.btn-success:hover {
    background-color: #FF9800;
    border-color: #FF9800;
}

/**mailformproのcss上書き***/
form#mailformpro label {
    margin: 0;    
}


/** 問合せ総合 **/

.form_wrap{
    display: flex;
    list-style-type: none;
    justify-content: center;
    padding:0;
    margin-top: 50px;
    margin-bottom:40px;

}
@media (max-width:767px){
    .form_wrap{
        display: block;
		margin: 30px 0;
    }   
}

.form_wrap li{
    width: auto;
    margin: 1.2rem 1.5rem;
    border: 1px solid;
    padding: 2.2rem 2.5rem;
    border:1px solid #999;
    border-radius: 5px;
}
@media (max-width:767px){
.form_wrap li{
	margin: 1.2rem 0;
	}
}

.form_wrap li p.title {
    font-size:24px;
    font-weight: bold;
    border-bottom:1px solid #999;
}
.form_wrap span.link_btn{
    width: 100%;
    position:relative;
    border: 1px solid #115ead;
    border-radius: 6px;
    display: inline-block;
    margin-top: 15px;
}
.form_wrap span.link_btn a{
    width: 100%;
    padding: 10px 15px;
    display: inline-block;
    transition: all .6s ease;
}
.form_wrap span.link_btn a:hover{
    background-color: #0667c7;
    border-radius: 6px;
    color: #fff;
}
.form_wrap span.link_btn a:after{
    content: "";
    display: block;
    position:absolute;
    top:20px;
    right:20px;
    border:2px solid ;
    border-width:2px 2px 0 0;
    padding:2px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}




/* プライバシーポリシー
------------------------------------------- */

section#privacy-head{
    background:url(../images/toiawase_main_img_dt.jpg);
    background-position:center center;
    background-repeat:  no-repeat;
    background-size: 100%,auto,cover;
    width:100%;
    height:200px;
    padding:0;
    display:flex;
    justify-content: center;
    align-items: center;
}
section#privacy-head::before{
    content: " ";
    background-color: rgba(0,0,0,0.3);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height:inherit;
}


section#privacy-main {
    margin:0 20px;
}
@media (min-width:1024px){
    section#privacy-main {
        margin:0 200px;
    }
}

@media screen and (min-width: 769px) {
section#privacy-main h3.h3_1 {
	display: block;
	height: 30px;
	margin: 0 0 20px 25px;
}
}

section#privacy-main h4.h4_1 {
	margin: 0 0 20px 25px;
	border-top:solid 1px #000;
	border-bottom:solid 1px #000;
	padding:10px 5px;
	font-size:93%;
}

@media screen and (max-width: 768px) {
section#privacy-main h4.h4_1 {
	width: auto;
	margin: 20px;
}
}

/* pタグ */
section#privacy-main p.p1 {
	margin: 20px 0 0 40px;
	padding-bottom: 10px;
	color: #4f5a60;
	clear:both;
}

@media screen and (max-width: 768px) {
    section#privacy-main p.p1 {
	width: auto;
	margin: 20px;
}
}


ol{
	margin:0 0 30px 40px;
	list-style-type: decimal;
}

@media screen and (max-width: 768px) {
ol{
	width: auto;
}
}

ol li.privacy01{
	margin:0 0 15px 30px;
}

@media screen and (max-width: 768px) {
ol li.privacy01{
	margin:15px;
}
}

ol li.privacy01 ul{
	margin-top:5px;
}
ol li.privacy01 ul li{
	margin:0 0 5px 0;
}



/* thanks
------------------------------------------- */

.page_title_area {
    text-align: center;
    padding: 30px 0 100px 0;
}



/* 求人 recruit
------------------------------------------- */
header#fixed-box{
    position: static;
}

section#recruit-head{
    background: #2e7d01;
    justify-content: center;
    align-items: center;
    display: flex;
    text-align:center;
    padding:30px 0;
}
#recruit-head>main-title{
    color: #FFF;
    z-index: 1;
    background: #e95308;
    /* display: block; */
    width: 100%;
    /* margin-top: 50px; */
    text-align: center;
    padding: 20px;
}

section#recruit-main {
    margin:20px;
}

section#recruit-main {
    padding:20px;
}
@media (min-width: 1024px){
section#recruit-main {
    max-width: 900px;
    margin:auto;
}
}
h3 {
    font-size: 1.75rem;
}
section#recruit-main h3.h3_1 {
	display: block;
    padding-bottom:8px;
    margin: 38px 0 20px;
    border-bottom:1px solid #ccc;
}

@media screen and (min-width: 769px) {
section#recruit-main h3.h3_1 {
	display: block;
    padding-bottom:8px;
    border-bottom:1px solid #ccc;
}
}
section#recruit-main h3.h3_1::after {
    content: " ";
	display: block;
    position:relative;
    bottom:-9px;
    border-bottom:1px solid #FF9900;
    width:30%;
    }
.oubo-tel{
    margin:20px 0;
}
.oubo-tel span{
    display:inline-block;
    font-size:2rem;
    margin:0 10px 10px 10px;
}
.oubo-tel a{
    text-decoration: underline;
}
@media(min-width: 769px){
  a[href^="tel:"]{
    pointer-events: none;
    text-decoration:none;
  }
}

