@charset "UTF-8";
/*--------------------------------------------------
**************************************************
  PC スマホ共通
**************************************************
--------------------------------------------------*/

#main {
    width:100vw;
    height:340px;
    position:relative;
    background:url(../images/web/main_bg.png) no-repeat center top;
    background-size:cover;
}

#main .main_text_area {
    top:10vh;
    left:0;
    right:0;
    margin:auto;
    text-align:center;
    position:absolute;
    z-index:1;
}

#main .main_text_area .main_text {
    margin-top:30px;
    font-size:21px;
    line-height:1.8em;
    font-weight:500;
}

.main_text_area .cont{
	margin: 0 auto;
	width: 40%;
    background-color: rgb(255, 255, 255,0.8);

}
.main_text_area p{
	font-weight: bold;
	font-family: 'ヒラギノ明朝 Pro','sans-serif';
}

.main_text_area p.text1{
    margin: 0;
	font-size: 40px;
	padding-top: 30px;
}

.main_text_area p.text2{
	padding-bottom: 20px;
}

.main_text_area p.text3{
	margin: 10px 10px 30px;
}

#web{
    margin-bottom: 100px;
}

#web div.cont{
	width: 1000px;
	margin: 0 auto;
}

#web h2{
	text-align: center;
	padding: 50px 0;
	font-size: 30px;
}

#websubtitle{
    margin-bottom: 100px;
    background:url(../images/common/icon_subbk.png) no-repeat center center;
}

#websubtitle div.cont{
	text-align: center;
	width: 1100px;
	margin: 0 auto;
    padding: 40px 0 20px;
	font-size: 18px;
	font-weight: bold;
}


.web1Cont,
.web3Cont{
    margin-bottom: 100px;
    position: relative;
}


.webImg{
    width: 70%;
    min-height: 480px;
}


.web1Cont,
.web3Cont{
    position: relative;
    padding: 50px 0;
    margin-bottom: 0;
    background: linear-gradient(180deg, #fff 0%, #fff 50%, #eeeeee 50%, #eeeeee 100%);
}


.web3Cont{
    margin-bottom: 100px;
}


.web1right,
.web3right{
    width: 40%;
    position: absolute;
    bottom: 30%;
    right: 10%;
    background-color: #fff;
    border-right: 1px solid #dddddd;
    filter: drop-shadow(0px 0px 10px rgb(148, 148, 148));
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -o-transition: all 0.6s ease;
    transition: all  0.6s ease;
}

.web1Cont h2,
.web2Cont h2,
.web3Cont h2{
	text-decoration : underline 4px solid #fdd23e;
}

.web1Cont p,
.web2Cont p,
.web3Cont p{
    padding-top: 20px;
	font-weight: bold;
}
.web2Cont{
    position: relative;
    padding: 50px 0;
    background: linear-gradient(180deg, #eeeeee 0%, #eeeeee 50%, #fff 50%,#fff 100%);
}

.web2Cont .webImg{
    width: 70%;
    margin: 0 0 100px auto;
    min-height: 480px;
}

a .web1right{
    color: #000;
}

.web1right:hover {
    color: #fff;
    background-color: #1476c7;
}

a:hover,
a h2:hover{
    color: #fff;
}


.web1right .websaite{
    width: 90%;
    margin-right: 9%;
    padding: 55px 10%;
    border-right: 1px solid #dddddd;
}


.web1right .arrow1{
    position: absolute;
    width: 12px;
    height: 12px;
    right: 6.23818%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}


.web2left{
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0;
    margin-top: 100px;
    margin: 0 0 0 auto;
    margin-left: 25vw;
    width: 75vw;
    max-width: 1600px;
    left: 0;
}


.web2right{
    position: absolute;
    width: 38.7262%;
    top: 50%;
    -webkit-transform: translateY(calc(-50% + 15px)) !important;
    transform: translateY(calc(-50% + 15px)) !important;
    right: 40%;
    margin-right: 9%;
    transform: translateY(-50%) !important;
    opacity: 1;
    bottom: none;
    background-color: #fff;
    border-right: 1px solid #dddddd;
    filter: drop-shadow(0px 0px 10px rgb(122, 122, 122));
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -o-transition: all 0.6s ease;
    transition: all  0.6s ease;
}

a .web2right{
    color: #000;
}

.web2right:hover {
    color: #fff;
    background-color: #1476c7;
}


.web2right .websaite{
    width: 90%;
    margin-right: 9%;
    padding: 55px 10%;
    border-right: 1px solid #dddddd;
}


.web2right .arrow1{
    position: absolute;
    width: 12px;
    height: 12px;
    right: 6.23818%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}


a .web3right{
    color: #000;
}

.web3right:hover {
    color: #fff;
    background-color: #1476c7;
}



.web3right .websaite{
    width: 90%;
    margin-right: 9%;
    padding: 55px 10%;
    border-right: 1px solid #dddddd;
}


.web3right .arrow1{
    position: absolute;
    width: 12px;
    height: 12px;
    right: 6.23818%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}



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


    #main {
        height:300px;
        background:url(../images/web/main_bg_sp.png) no-repeat center top;
        margin-bottom: 20px;
    }
    
    #main div.cont{
        text-align: center;
        width: 80%;
    }
    
    .main_text_area{
        padding-top: 30px;
    }

    .main_text_area p.text1{
        margin: 0;
        font-size: 24px;
        padding-top: 30px;
    }
    
    .main_text_area p.text2{
        padding-bottom: 20px;
    }


    #websubtitle{
        background:url(../images/common/icon_subk_sp.png) no-repeat center center;
    }

    #websubtitle div.cont {
        width: 100%;
        padding-top: 0px;
    }
    #websubtitle{
        font-size: 20px;
        margin-bottom: 20px;
    }
    #websubtitle h2{
        font-size: 20px;
        padding: 30px 0;
    }

    #websubtitle div.cont h2{
        font-size: 20px;
    }
    .web1Cont,
    .web2Cont,
    .web3Cont{
        margin-bottom: 0px;
    }
    
    .web2Cont{
        padding-bottom: 20px;
    }

    .web1Cont .webImg,
    .web2Cont .webImg,
    .web3Cont .webImg {
        width: 100%;
        background:none;
        margin: 0;
        min-height: 300px;
    }
    .web1Cont h3,
    .web2Cont h3,
    .web3Cont h3{
        font-size: 18px;
    }
        
    .web1right,
    .web3right{
        width: 80%;
        margin: -180px auto;
        -webkit-transform: translateY(calc(-50% + 15px)) !important;
        transform: translateY(calc(-50% + 15px)) !important;
        transform: translateY(-50%) !important;
        opacity: 1;
    }

    
    .web2right{
        width: 80%;
        right: 10%;
        margin: 80px auto;
        -webkit-transform: translateY(calc(-50% + 15px)) !important;
        transform: translateY(calc(-50% + 15px)) !important;
        transform: translateY(-50%) !important;
        opacity: 1;
    }
    
    .web1right .websaite,
    .web2right .websaite,
    .web3right .websaite{
        padding: 20px;
        min-height: 100px;
    }

   
    .web1right p,
    .web2right p,
    .web3right p{
        font-size: 14px;
    }
    .pankz{
        margin-bottom: 0;
    }
}