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

#main {
    width:100vw;
    height:340px;
    position:relative;
    background:url(../images/homepage/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;
}


#website{
    margin-bottom: 40px;
    background-color: ;
}

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

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

#website p{
	text-align: center;
	font-size: 20px;
	font-weight: bold;

}


.website{
	width: 1000px;
	margin: 0 auto 100px;
	background-color: #f8f8f8;
}


.website p{
	padding: 60px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 2;
}


.website1{
    position: relative;
    margin-bottom: 100px;
    background: linear-gradient(90deg, #f8f8f8 0%, #f8f8f8 80%, #fff 80%, #fff 100%);
}

.website1 .cont,
.website13 .cont{
    margin: 0 auto;
    width: 1000px;
    display: flex;
    flex-wrap: wrap;
}

.websiteTitle{
	text-align: left;
    width: 40%;
    margin: 0 auto;
    padding: 60px;
}

.websiteTitle p{
    font-size: 28px;
    font-weight: bold;
	margin-bottom: 10px;
}

.websiteTitle p.en{
    font-size: 28px;
    font-weight: bold;
	color:  #c2c2c2;
	text-decoration : underline 4px solid #fdd23e;
}
.websiteCont{
    width: 60%;
    margin: 200px 0 0;
	padding-bottom: 40px;
}

.websiteCont p{
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 2;
}

.seosem2{
	width: 1000px;
	margin: 0 auto 100px;
	background-color: #f8f8f8;
}


.seosem2 p{
	padding: 0px 60px 60px 60px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 2;
}
.seosem2 p.enginText{
	padding: 60px 60px 0 60px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 2;
}



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

#main {
	height:300px;
	background:url(../images/homepage/main_bg_sp.png) no-repeat center top;
}

#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;
}

#website div.cont{
	width: 90%;
}

#website div.cont h2{
	font-size: 20px;
}

.website{
	width: 90%;
	margin: 0 auto 40px;
}

.website p{
	padding: 20px;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 2;
}



.website1 .cont{
    width:90%;
	flex-direction:column;
}

.websiteTitle{
	text-align: left;
    width: 40%;
    margin: 0 auto;
    padding: 60px;
}

.websiteTitle{
	width: 100%;
	padding: 40px 0 0;
	margin-bottom: 20px;
}
.websiteTitle p{
    font-size: 16px;
    font-weight: bold;
	margin-bottom: 10px;
}

.websiteTitle p.en{
    font-size: 16px;
}
.websiteCont{
	width: 100%;
	margin-top: 0px;
}
.websiteCont img{
	height: 30px;
}


#webcate div.cont ul li{
	display: inline-block;
	vertical-align: top;
	width: 300px;
	margin: 0 22px;
	letter-spacing: normal;
    margin-bottom: 40px;
}
}