@charset "utf-8";

body{
    font-family: "Hiragino Kaku Gothic W3 JIS2004";
    line-height: 1.7;
    letter-spacing: 0.06em;
    color: #333;
    -webkit-font-smoothing: antialiased;
}

.robo {
    font-family: 'Roboto', sans-serif;
}

#billboard h2 {
    color: #fff;
    text-align: center;
    background: #d93129;
    padding: 0 0 0.75em;
}
#billboard .breadCrumb {
    width: 100%;
    background: #d93129;
}
#billboard h2 .sp01 {
    font-size: 250%;
    font-weight: 200;
    font-style: italic;
}
#billboard h2 .sp02 {
    display: block;
    font-size: 87.5%;
    font-weight: normal;
    max-width: 15em;
    margin: auto;
    padding-top: 0.75em;
    border-top: 1px solid #fff;
}
section {
	margin-top: -160px;
	padding-top: 160px;
}

/*------------
   contents
-------------*/

#contents .sp{
    display: none;
}
#contents {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
#contents .innerWrap{
    padding: 100px 50px 128px;
}
#contents .lnb {
    margin-bottom: 30px;
}
#contents .lnb li a::before{
    content: '〉';
    display: inline-block;
    width: 16px;
    height: 16px;
    color: #d93129;
}
#contents .lnb li a{
    color: #0000ff;
}
#contents h3{
    color: #d93129;
    font-size: 160%;
    border-bottom: solid 1px #d93129;
    margin-bottom: 0.5em;
}
#contents h4{
    font-weight: 400;
    border-bottom: solid 1px #d2d2d2;
    margin-bottom: 0.5em;
}

/*------------
   policy
-------------*/
#contents.policy .lnb{
    margin-bottom: 70px;
}
#contents.policy section .policyWrap{
    border: solid 1px #bfbfbf;
    padding: 30px 45px 35px;
    margin-top: 25px;
}
#contents.policy section .policyWrap > p{
    padding: 0.5em;
}
#contents.policy section .policyWrap .policyrWrap_inner{
    margin-top: 1.5em;
}
#contents.policy section .page_top{
    margin-top: 0.5em;
    text-align: right; 
}
#contents.policy section .page_top a{
    display: inline-block;
    background: #a0a0a0;
    color: #fff;
    padding: 0.1em 0.8em;
    border-radius: 2px;
}
#contents.policy section .page_top a::before{
    content: '';
    display: inline-block;
    width: 17px;
    height: 17px;
    background: url(../images/policy/icon_arr_top.png) no-repeat center/contain;
    vertical-align: middle;
    margin-right: 2px;
}

/* ----------------------------------------------------
　W：〜767
------------------------------------------------------- */
@media screen and (max-width: 767px) {
    #contents .sp{
        display: block;
    }
    #contents .innerWrap {
        padding: 3em 2em 3.5em;
    }
    section {
			margin-top: -80px;
			padding-top: 80px;
		}

    /*------------
       policy
    -------------*/
    #contents.policy .lnb{
        margin-bottom: 3em;
    }
    #contents.policy section .policyWrap {
        padding: 2em 1.5em;
        margin-top: 25px;
    }
    
}