@charset "utf-8";

/* ****************************************************
Title: index.css
---------------------------------------------------------------------------- */

#va {
    position: relative;
}

#va img {
    border-radius: 0 0 25px 25px;
}

#va .catch {
    position: absolute;
    top:38%;
    left: 4%;
}

#va .catch h1,
#va .catch h2 {
    color: #fff;
}

#va .catch h1 {
    font-size: 2.604165vw;
}

#va .catch h2 {
    font-size:1.666666vw;
}

@media screen and (max-width: 639px) {

#va img {
    border-radius: 0 0 20px 20px;
}

#va .catch {
    position: inherit;
    top: inherit;
    left: inherit;
    padding: 20px 5% 0;
}

#va .catch h1, #va .catch h2 {
    color: #333;
}


#va .catch h1 {
    font-size: 3rem;
}

#va .catch h2 {
    font-size: 2rem;
}

    }



/* =============================
 .section1
==============================*/

.sec01 {
    padding: 75px 0 100px;

}


.sec01 .service_txt p.reg {
    font-size: 2rem;
    line-height: 2;
    font-weight: bold;
}
.sec01 .service_txt p.kome {
    font-size: 1.4rem;
}


.sec01 .service_txt p span {
    font-size: 1.4rem;
}



#scroll {
  display: flex;
  flex-direction: row;
  overflow-x: auto;
  max-width:1500px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}

#scroll li {
    width: 24%;
    background: #F4F4F4;
    border-radius: 15px;
}

#scroll li figure img {
    border-radius: 15px 15px 0 0;
}

#scroll li figcaption {
  box-sizing: border-box;
  padding: 30px 25px;
}

#scroll li figcaption dl dt {
    font-size: 2.5rem;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
}


#scroll li figcaption dl dd {
    font-size: 1.6rem;
    line-height: 2;
}



@media screen and (max-width: 639px) {
.sec01 {
    padding: 50px 5% 70px;
}

#scroll {
    width: 100%;
}

#scroll li {
    width: 100%;
     margin-bottom: 40px;
}

#scroll li:last-child {
     margin-bottom: 0;
}

#scroll li figcaption{
    padding: 30px 20px;
}

#scroll li figcaption dl dt {
    height: inherit;
    font-size: 2rem;
}


}




/* =============================
 .section 2
==============================*/

#contents .sec02 {
    background: #213FB7;
    color: #fff;
    padding: 140px 0;
}


#contents .sec02 .bar {
    color: #fff;
}

#contents .sec02 .column {
    border-bottom: solid 1px #777777;
    position: relative;
}
#contents .sec02 .column.rightcolumn{
	align-self:flex-start;
}


#contents .sec02 .column:after{
    position: absolute;
    content: "";
    width: 120px;
    bottom:-1px;
    left: 0;
    height: 1px;
    background-color: #fff;

}

#contents .sec02 .column dl {
    padding: 40px 0;
    border-top: solid 1px #777777;
    position: relative;
    width: 100%;
}

#contents .sec02 .column dl:before {
    position: absolute;
    content: "";
    width: 120px;
    top:-1px;
    left: 0;
    height: 1px;
    background-color: #fff;
}

#contents .sec02 .column dl.flex.ai_ce{
    padding: 28px 0;
}

#contents .sec02 .column dl dt {
    width: 120px;
    text-align: center;
}

#contents .sec02 .column dl dd {
    padding-left: 20px;
}

#contents .sec02 .column dl dd a {
	color:#FFF;
}
#contents .sec02 .column dl dd a:hover {
	text-decoration:underline;
}


#contents .sec02 .bar.wg500 {
    font-weight: 500;
}

#contents .sec02 .thought h2{
    font-size: 2.8rem;
}

#contents .sec02 .thought p {
    line-height: 2.5;
}



@media screen and (max-width: 639px) {
#contents .sec02 {
    padding: 75px 5%;
    background-position: center 20%;
    background-size: 70%;

}

	#contents .sec02 .column.rightcolumn{
		    margin-top: -1px;
	}
	
	
#contents .sec02 .column dl{
    padding: 22px 0;
}
#contents .sec02 .column dl.flex.ai_ce{
    padding: 22px 0;
}
#contents .sec02 .column dl dt {
    width: 20%;
}

#contents .sec02 .column:after{
    width: 20%;

}

#contents .sec02 .column dl:before{
    width: 20%;
}

#contents .sec02 .thought h2 {
    font-size: 2.2rem;
    line-height: 2;
}

#contents .sec02 .thought p {
    line-height: 2;
}

}


/* =============================
 .section3
==============================*/

#contents .sec03 {
    padding: 140px 0;
}

#contents .sec03 .ceopro .ceoname .bold {
    font-size: 2.8rem;
    font-weight: bold;
    margin-right: 50px;
}

#contents .sec03 .ceopro .ceoname .position {
    vertical-align: super;
}

#contents .sec03 .ceopro p {
    line-height: 2;
}

#contents .sec03 .sbar {
    font-size: 2.8rem;
    margin-bottom: ;
}

#contents .sec03 .ceoimg img{
    border-radius: 15px;
}

#contents .sec03 .ceotxt p {
    line-height: 2;
}

#contents .sec03 .ceotxt p span {
    color: #000;
    font-size: 2rem;
}


@media screen and (max-width: 639px) {

#contents .sec03 {
    padding: 70px 5%;
}
}



/* =============================
 .section4
==============================*/

#contents .sec04 {
}

#contents .sec04 dl:last-child{
    border-bottom: solid #DEDEDE 1px;
}

#contents .sec04 dl{
    padding: 30px 0;
    border-top: solid #DEDEDE 1px;
}

#contents .sec04 dl dt {
    width: 20%;
}

#contents .sec04 dl dd {
    width: 80%;
   line-height: 2;
    text-align: left;
    box-sizing: border-box;
    padding-right: 40px;
}

#contents .sec04 dd a {color: #001155}
#contents .sec04 dd a:hover {text-decoration: underline;}



@media screen and (max-width: 639px) {

#contents .sec04 {
    padding: 0 5%;
}

#contents .sec04 dl{
    flex-wrap: wrap;
    padding: 20px 5%;
}

#contents .sec04 dl dt {
    font-weight: bold;
    width: 100%;
    margin-bottom: 10px;
}

#contents .sec04 dl dd {
    width: 100%;
}


}

/* =============================
 .section5
==============================*/
#contents .sec05 {
    padding: 100px 0 200px;
}

#contents .sec05 .fs08 {
	margin-left:60px;
}

#contents .sec05 .forminput {
    width: 100%;
}

#contents .sec05 dl{
    margin-bottom: 30px;
}

#contents .sec05 dt {
    width: 20%;
}

#contents .sec05 dl.textarea dt {
    padding-top: 10px;
    width: 20%;
}

#contents .sec05 dd {
    width: 80%;
	font-size:1.6rem;
}


#contents .sec05 dd select {
	font-size:1.6rem;
	height: 50px;
    border: 1px solid #CDD6DD;
    padding: 10px 20px;
}

#contents .sec05 dd input {
    height: 50px;
    border:1px solid #CDD6DD;
    padding: 10px 20px;
    box-sizing: border-box;
	font-size:1.6rem;
}

#contents .sec05 dl.textarea textarea {
    height: 230px;
    border:1px solid #CDD6DD;
        box-sizing: border-box;
	font-size:1.6rem;
    padding: 10px 20px;
}


#contents .sec05 .sendbtn input[type="submit"]{
    margin: 0 auto;
    width: 320px;
    text-align: center;
    color: #fff;
    background-color: #004BB1;
    border-radius: 34px;
    border: none;
    padding: 12px 0;
    font-size: 2rem;
    display: block;
    cursor: pointer;
}

#contents .sec05 .sendbtn input[type="submit"]:hover {
    opacity: .7;
}

#contents .sec05 .sendbtn .back input[type="submit"] {
    background-color: #999;
	    width: 180px;
    font-size: 1.5rem;
}


#contents .sec05 .privacy {
     height: 260px;
    overflow-y: scroll;
    border: none;
    background-color: #F8F8F8;
    font-size: 14px;
    padding: 25px 40px;
    margin-bottom: 40px;
    width: 80%;
    border-bottom: 10px solid #F8F8F8;
    border-top: 10px solid #F8F8F8;
}

#contents .sec05 .privacy .area p {
    line-height: 2;
}


@media screen and (max-width: 639px) {
#contents .sec05 {
    padding: 80px 5%;
}
#contents .sec05 .fs08 {
margin-left: 30px;
}

#contents .sec05 dt {
    width: 100%;
    margin-bottom: 10px;
}

#contents .sec05 dl.textarea dt {
    padding-top: 0;
    width: 100%;
}


#contents .sec05 dd {
    width: 100%;
}

#contents .sec05 .privacy {
    width: 100%;
    box-sizing: border-box;
    padding: 0 20px;
    border-bottom: 15px solid #F8F8F8;
    border-top: 15px solid #F8F8F8;
}


    }


.second #contents .sec05 .privacy,
.second #contents .sec05 .doi {
	display:none;
}
