@charset "UTF-8";

main h1{
    background: url(../images/corporate/h1_bg.jpg) no-repeat center 0 / cover;
    height: 240px;
    font-size: 3.6rem;
    text-align: center;
    font-family: "Noto Sans JP";
    line-height: 1.6;
    padding-top: 75px;
    color: #3d3d3d;
}
main h1 span{
    display: block;
    font-size: 2.4rem;
    font-weight: normal;
}
#sec01{
    background: #f9f9f9;
    padding: 40px 0 35px;
}
#sec01 h2{
    text-align: center;
    font-size: 3rem;
    font-family: "Noto Sans JP";
    font-weight: bold;
    margin-bottom: 15px;
}
#sec01 .copy{
    text-align: center;
    font-size: 2.8rem;
    font-family: "Noto Sans JP";
    color: #d1112a;
    line-height: 1.6;
    font-weight: bold;
}
#sec01 p{
    text-align: center;
    font-size: 2rem;
    font-family: "Noto Sans JP";
}
#sec02{
    padding: 50px 0 150px;
    position: relative;
    overflow: hidden;
}
#sec02 figure{
    text-align: right;
    width: 55%;
    margin-left: auto;
}
#sec02 figure img{
    width: 100%;
}
#sec02 .txt{
    position: absolute;
    background: rgba(255,255,255,0.7);
    top:15%;
    padding: 20px 40px 20px 180px;
    width: 75%;
    box-sizing: border-box;
	z-index: 100;
}
#sec02 .txt h2{
    color: #d1112a;
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 20px;
    font-family: "Noto Sans JP";
}
#sec02 .txt h3{
    font-size: 1.8rem;
    font-weight: bold;
    font-family: "Noto Sans JP";
    margin-bottom: 10px;
}
#sec02 .txt p{
    font-family: "Noto Sans JP";
    line-height: 1.9;
    margin-bottom: 2rem;
}
#sec02 .txt p.name{
    text-align: right;
    font-size: 1.8rem;
}
#sec02 .txt p.name span{
    font-family: "Noto Serif JP";
    font-weight: bold;
}
#sec03{
    background: #f9f9f9;
    padding: 50px 0 20px;
}
#sec03 h2{
    text-align: center;
    font-size: 3rem;
    font-family: "Noto Sans JP";
    font-weight: bold;
    margin-bottom: 50px;
}
#sec03 .inner{
    max-width: 1010px;
    margin: 0 auto;
}
#sec03 .inner .box table:first-child{
    width: 67%;
}
#sec03 .inner .box table th{
    color: #555;
    text-decoration: underline;
    vertical-align: text-top;
}
#sec03 .inner .box table td{
    padding-bottom: 20px;
}
#sec03 .inner .box table td li{
    margin-bottom: 20px;
}
#sec03 .inner .box table td li a{
    padding-left: 1px;
}
#sec03 .inner .box table:last-child{
    width: 33%;
}
#sec03 .inner .box table:last-child th,
#sec03 .inner .box table:last-child td{
    width: 100%;
    display: block;
}
#sec03 .inner .box table td li:last-child{
    margin-bottom: 0;
}
#sec03 .inner .box table:last-child th{
    margin-bottom: 15px;
}
#sec03 .inner .box table:last-child td{
    padding-left: 18px;
    padding-bottom: 10px;
}
#sec03 .inner .box table:last-child td ul{
    margin-bottom: 10px;
}
#sec03 .inner .box table:last-child td.download{
    padding: 20px 0 20px 30px;
}
#sec03 .inner .box table:last-child td.download a{
    background: #486901;
    display: block;
    color: #fff;
    padding: 20px;
    text-align: center;
}
#sec03 .inner .box table:last-child td.download a:hover{
    text-decoration: none;
}
#sec04{
    padding: 40px 0 150px;
}
#sec04 h2{
    text-align: center;
    font-size: 3rem;
    font-family: "Noto Sans JP";
    font-weight: bold;
    margin-bottom: 40px;
}
#sec04 table{
    width: 1010px;
    margin: 0 auto;
    border-top: 1px solid #ccc;
    border-collapse:collapse;
}
#sec04 table th{
    width: 13%;
}
#sec04 table th,
#sec04 table td{
    padding: 32px 0;
    border-bottom: 1px solid #ccc;
}
#sec04 table td{
    width: 75%;
}

@media only screen and (max-width: 1400px) {
    #sec02{
        padding-bottom: 20%;
    }
}

@media only screen and (max-width: 1350px) {
    #sec02{
        padding-bottom: 30%;
    }
}

@media only screen and (max-width: 1200px) {
    #sec02{
        padding-bottom: 40%;
    }
}

@media only screen and (max-width: 768px) {
    main h1{
        background: url(../images/corporate/h1_bg_sp.jpg) no-repeat 0 0 / cover;
        height: 46vw;
        font-size: 2.8rem;
        font-family: "Noto Sans JP";
        padding-top: 15%;
        border-top: 1px solid #eee;
    }
    main h1 span{
        font-size: 2rem;
    }
    #sec01 .inner{
        width: 90%;
        margin: 0 auto;
    }
    #sec01 h2{
        font-size: 2rem;
    }
    #sec01 .copy{
        font-size: 1.6rem;
        letter-spacing: -1px;
    }
    #sec01 p{
        font-size: 1.2rem;
    }
    #sec02{
        padding: 0 0 5%;
    }
    #sec02 .inner{
        display: flex;
        flex-wrap: wrap;
    }
    #sec02 .txt{
        position: relative;
        width: 90%;
        margin: 0 auto;
        padding: 0;
        order: 2;
		z-index: 0;
    }
    #sec02 .txt h2{
        font-size: 2rem;
        margin-bottom: 3%;
    }
    #sec02 .txt h3{
        font-size: 1.4rem;
        margin-bottom: 2%;
    }
    #sec02 .txt p{
        font-size: 1.2rem;
        line-height: 1.8;
    }
    #sec02 .txt p.name{
        font-size: 1.2rem;
    }
    #sec02 figure{
        order: 1;
        width: 90%;
        margin: 0 auto 5%;
    }
    #sec03{
        padding: 8% 0;
    }
    #sec03 h2{
        font-size: 2rem;
        margin-bottom: 8%;
    }
    #sec03 .inner{
        width: 90%;
        margin: 0 auto;
    }
    #sec03 .inner .box{
        flex-wrap: wrap;
    }
    #sec03 .inner .box table{
        width: 100% !important;
    }
    #sec03 .inner .box table th{
        width: 28% !important;
        display: table-cell !important;
        font-size: 1.2rem;
        line-height: 1.5;
        vertical-align: text-top;
        padding-bottom: 2%;
    }
    #sec03 .inner .box table td{
        width: 70% !important;
        padding-left: 0 !important;
        display: table-cell !important;
        font-size: 1.2rem;
        line-height: 1.5;
        padding-bottom: 2%;
   }
    #sec03 .inner .box table td li{
        font-size: 1.2rem;
        margin-bottom:1%;
        line-height: 1.5;
    }
    #sec03 .inner .box table:last-child td.download{
        padding: 0;
    }
    #sec03 .inner .box table:last-child td.download a{
        width: 50%;
        float: right;
        padding: 2%;
    }
    #sec04{
        padding: 10% 0 20%;
    }
    #sec04 h2{
        font-size: 2rem;
        margin-bottom: 8%;
    }
    #sec04 table{
        width: 90%;
        margin: 0 auto;
    }
    #sec04 table th, #sec04 table td{
        padding: 5% 0;
        font-size: 1.2rem;
    }
    #sec04 table th{
        width: 25%;
    }
}
