@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* *****************************************************************************
=01 reset style
=02 option style
=03 common style
=04 layout style
***************************************************************************** */
/*---------- =01 reset style ----------*/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote::before, blockquote::after,
q::before, q::after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/*---------- //end reset style ----------*/

/*---------- =02 option style ----------*/
.tal{text-align:left!important;}
.tac{text-align:center!important;}
.tar{text-align:right!important;}
.mtNone{margin-top:0!important;}
.mbNone{margin-bottom:0!important;}
.mbShort{margin-bottom:1em!important;}
.mbMiddle{margin-bottom:2em!important;}
.mbLong{margin-bottom:3em!important;}
.bold{font-weight:bold;}
.red{color:#;}
.cf{zoom:1;}
.cf:before,.cf:after{content:"";display:table;}
.cf:after{clear:both;}
/*---------- //end option style ----------*/

/*---------- =03 common style ----------*/
*{
	-o-box-sizing: border-box;
	box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
html{
	font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
}
body{
    font-family: YakuHanJP, "FOT-ロダン Pro DB";
    color: #333333;
    font-size: 1.6rem;
    line-height: 2;
    background-color: #e9f8f2;
}
a{
    color: #333333;
	text-decoration: none;
}
a:hover,
a:active{
	text-decoration: none;
}
img{
    height: auto;
}
img,a img{
	border: none;
    vertical-align: bottom;
    display: block;
}
b,
strong,
.bold{
    font-weight: 700;
}
::selection{
	background-color: #333333;
	color: #ffffff;
}
::-moz-selection {
	background-color: #333333;
	color: #ffffff;
}
.en{
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

@media print, screen and (max-width: 760px){
    body{
    }
}

/*---------- //end common style ----------*/

/*---------- =04 layout style ----------*/
/*========================================
header layout
========================================*/
/* site-header */
.site-header{
    width: 100%;
    height: 150px;
    padding-left: 8.333%;
    padding-right: 8.333%;
    overflow: hidden;
}
.site-header > .-inner{
    height: 150px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media print, screen and (max-width: 1357px){
    /* site-header */
    .site-header{
        padding-left: 60px;
        padding-right: 60px;
    }
    .site-header > .-inner{
        max-width: 1120px;
    }
}

@media print, screen and (max-width: 1000px){
    /* site-header */
    .site-header{
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media print, screen and (max-width: 760px){
    /* site-header */
    .site-header{
        height: 80px;
        padding-left: 10px;
        padding-right: 0;
    }
    .site-header > .-inner{
        height: 80px;
    }
}

/* header-logo */
.header-logo{
    width: 228px;
}
.header-logo > a{
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.header-logo > a:hover{
    opacity: 0.75;
}
.header-logo > a > img{
    width: 100%;
}

@media print, screen and (max-width: 1000px){
    /* header-logo */
    .header-logo{
        width: 200px;
    }
}

@media print, screen and (max-width: 760px){
    /* header-logo */
}

/* header-primary */
.header-primary{
    display: flex;
    align-items: center;
}

@media print, screen and (max-width: 760px){
    /* header-primary */
    .header-primary{
        display: flex;
        align-items: flex-start;
    }
}

/* header-tel */
.header-tel{
    background: url(/campaign/recruit-book/assets/images/icon-tel-green.svg) left 2px no-repeat;
    background-size: 16px auto;
    padding-left: 2.6rem;
    margin-right: 3rem;
}
.header-tel > .-number{
    font-size: 2rem;
    color: #1cb57b;
    line-height: 1;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}
.header-tel > .-note{
    font-size: 1.2rem;
    line-height: 1;
    margin-top: 4px;
}
.header-tel > .-note > span{
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}

@media print, screen and (max-width: 1000px){
    /* header-tel */
    .header-tel{
        margin-right: 1.5rem;
    }
    .header-tel > .-number{
        font-size: 1.9rem;
    }
}

@media print, screen and (max-width: 760px){
    /* header-tel */
    .header-tel{
        display: none;
    }
}

/* header-button */
.header-button{
    height: 50px;
}
.header-button > a{
    font-size: 1.6rem;
    text-align: center;
    display: inline-block;
    width: 100%;
    border-radius: 4px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    vertical-align: top;
}
.header-button > a > span{
    display: inline-block;
}

@media print, screen and (max-width: 1000px){
    /* header-button */
    .header-button > a{
        font-size: 1.5rem;
    }
}

@media print, screen and (max-width: 760px){
    /* header-button */
    .header-button{
        height: 80px;
    }
    .header-button > a{
        font-size: 1.2rem;
        border-radius: 0;
        height: 80px;
        display: flex;
        align-items: flex-end;
    }
    .header-button > a > span{
        width: 100%;
        padding-bottom: 10px;
    }
}

/* header-request */
.header-request{
    width: 160px;
}
.header-request > a{
    color: #ffffff;
    background-color: #1cb57b;
    line-height: 50px;
}
.header-request > a:hover{
    opacity: 0.75;
}
.header-request > a > span{
    background: url(/campaign/recruit-book/assets/images/icon-download-white.svg) left center no-repeat;
    background-size: 12px auto;
    padding-left: 2rem;
}

@media print, screen and (max-width: 1000px){
    /* header-request */
    .header-request{
        width: 120px;
    }
}

@media print, screen and (max-width: 760px){
    /* header-request */
    .header-request{
        width: 80px;
    }
    .header-request > a{
        border: 1px solid #1cb57b;
        line-height: normal;
        background: #1cb57b url(/campaign/recruit-book/assets/images/icon-download-white.svg) center top 20px no-repeat;
        background-size: 20px auto;
    }
    .header-request > a > span{
        padding-left: 0;
        background-image: none;
        width: 100%;
    }
}

/* header-contact */
.header-contact{
    margin-left: 2rem;
    width: 160px;
}
.header-contact > a{
    color: #1cb57b;
    background-color: #ffffff;
    border: 1px solid #1cb57b;
    line-height: 48px;
}
.header-contact > a:hover{
    color: #ffffff;
    background-color: #1cb57b;
}
.header-contact > a > span{
    background: url(/campaign/recruit-book/assets/images/icon-mail-green.svg) left center no-repeat;
    background-size: 16px auto;
    padding-left: 24px;
}
.header-contact > a:hover > span{
    background: url(/campaign/recruit-book/assets/images/icon-mail-white.svg) left center no-repeat;
    background-size: 16px auto;
}

@media print, screen and (max-width: 1000px){
    /* header-contact */
    .header-contact{
        width: 150px;
        margin-left: 10px;
    }
}

@media print, screen and (max-width: 760px){
    /* header-contact */
    .header-contact{
        width: 80px;
        margin-left: 0;
    }
    .header-contact > a{
        line-height: normal;
        background: #ffffff url(/campaign/recruit-book/assets/images/icon-mail-green.svg) center top 26px no-repeat;
        background-size: 21px auto;
    }
    .header-contact > a:hover{
        background: #1cb57b url(/campaign/recruit-book/assets/images/icon-mail-white.svg) center top 26px no-repeat;
        background-size: 21px auto;
    }
    .header-contact > a > span{
        padding-left: 0;
        background-image: none;
    }
    .header-contact > a:hover > span{
        background-image: none;
    }
}

/*========================================
contents layout
========================================*/
/* note */
.note{
    margin-left: 1em;
    display: block;
}
.note::before{
  content: '※';
  margin-left: -1em;
}

/* mt */
.mt-none{
    margin-top: 0!important;
}

/* page-wrap */
.page-wrap{
    background-color: #f7f7f7;
}

/* basic-section */
.basic-section{
    padding: 120px 60px;
}
.basic-section > .-inner{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
}

@media print, screen and (max-width: 1000px){
    /* basic-section */
    .basic-section{
        padding: 100px 40px;
    }
}
  
@media print, screen and (max-width: 760px){
    /* basic-section */
    .basic-section{
        padding: 80px 20px;
    }
}

/* basic-heading */
.basic-heading{
    text-align: center;
}
.basic-heading > .-en{
    font-size: 1.8rem;
    color: #1cb57b;
    line-height: 1;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    margin-bottom: 2.4rem;
}
.basic-heading > .-main{
    font-family: "FOT-ロダン Pro B";
    font-size: 3.6rem;
    line-height: 1.5556;
}

@media print, screen and (max-width: 760px){
    /* basic-heading */
    .basic-heading > .-en{
        font-size: 1.7rem;
        margin-bottom: 2rem;
    }
    .basic-heading > .-main{
        font-size: 3.2rem;
    }
}

/* basic-box */
.basic-box{
    margin-top: 80px;
}

@media print, screen and (max-width: 760px){
    /* basic-box */
    .basic-box{
        margin-top: 60px;
    }
}

/* basic-text */
.basic-text{
    font-size: 1.6rem;
    line-height: 1.75;
}
.basic-text.-center{
    text-align: center;
}
.basic-text > p{
    margin-top: 1.5em;
}
.basic-text > p:nth-child(1){
    margin-top: 0;
}

@media print, screen and (max-width: 760px){
    /* basic-text */
    .basic-text{
        font-size: 1.5rem;
    }
}

@media print, screen and (max-width: 540px){
    /* basic-text */
    .basic-text.-center{
        text-align: left;
    }
}

/* basic-button */
.basic-button{
  margin-top: 80px;
  text-align: center;
}
.basic-button > a{
  color: #ffffff;
  padding-left: 50px;
  padding-right: 50px;
  font-family: "FOT-ロダン Pro B";
  text-align: center;
  display: inline-block;
  border-radius: 4px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  line-height: 60px;
  font-size: 1.6rem;
  background-color: #1CB57B;
  white-space: nowrap;
}
.basic-button > a:hover{
  opacity: 0.75;  
}

@media print, screen and (max-width: 760px){
  /* basic-button */
  .basic-button{
    margin-top: 60px;
  }
  .basic-button > a{
    font-size: 1.5rem;
    line-height: 56px;
  }
}

@media print, screen and (max-width: 400px){
  /* basic-button */
  .basic-button > a{
    width: 100%;
    padding-left: 0;
    padding-right: 0
  }
}

/*========================================
footer layout
========================================*/
/* site-footer */
.site-footer{
    background-color: #e9f8f2;
    padding: 3rem 6rem;
}
.site-footer > .-inner{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
}

@media print, screen and (max-width: 1000px){
    /* site-footer */
    .site-footer{
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

@media print, screen and (max-width: 760px){
    /* site-footer */
    .site-footer{
        padding: 2.5rem;
    }
}

/* footer-contents */
.footer-contents{
    display: flex;
    align-items: center;
}

@media print, screen and (max-width: 760px){
    /* footer-contents */
    .footer-contents{
        display: block;
    }
}

/* footer-nav */
.footer-nav{
    letter-spacing:-.4em;
    padding-left: 6.25%;
}
.footer-nav > .-item{
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: normal;
    position: relative;
    margin-left: 3.5rem;
}
.footer-nav > .-item:nth-child(1){
    margin-left: 0;
}
.footer-nav > .-item > a{
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.footer-nav > .-item > a:hover{
    color: #1CB57B;
}

@media print, screen and (max-width: 760px){
    /* footer-nav */
    .footer-nav{
        text-align: center;
        padding-left: 0;
        margin-bottom: 2rem;
    }
    .footer-nav > .-item{
        margin-left: 2.5rem;
    }
}

/* copyright */
.copyright{
    font-size: 1.4rem;
    line-height: 1;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    padding-top: 4px;
}
.copyright.-sp{
    display: none;
}

@media print, screen and (max-width: 760px){
    /* copyright */
    .copyright.-pc{
        display: none;
    }
    .copyright.-sp{
        display: block;
    }
}
