@charset "utf-8";


/*common
************************************************************************************/

.contents_title{
    font-size: 1.875em;
    font-weight: 600;
    margin-bottom: 30px;
}
.contents_title span{
    color: #f19ec2;
    font-size: 0.533em;
    display: block;
    margin-bottom: 15px;
}
@media screen and (max-width: 979px) {
    .contents_title{
        font-size: 1.5em;
    }
    .contents_title span{
        margin-bottom: 10px;
    }
    
}
@media screen and (max-width: 768px){
}
@media screen and (max-width: 620px) {
}
@media screen and (max-width: 480px){
} 

/*mainph
************************************************************************************/
#MainPhoto{
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: 29.3vw;
	font-size: 0;
	text-align: center;
	overflow: hidden;
}
#MainPhoto img{
	width: 100%;
	height: auto;
	margin: 0 auto;
}
#MainPhoto .swiper-container {
	display: block;
	width: 100%;
	height: 100%;
}
.swiper-slide,
.swiper-slide a{
	text-align: center;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
.swiper-slide img{
	margin: 0 auto;
	max-width: 100%;
	height: auto;
}
@media screen and (max-width: 979px){
}
@media screen and (max-width: 768px){
}
@media screen and (max-width: 620px){
}
@media screen and (max-width: 480px){
}



/*About
************************************************************************************/
#about{
	padding: 80px 0;
}
#about .frame_ph{
    width: 35%;
    float: left;
}
#about .frame_ph img{
    max-width: 100%;
    height: auto;
    display: block;
}
#about .frame_about{
    width: 65%;
    float: right;
    padding: 50px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#about .frame_about .cmt{
    line-height: 2.0;
}

#about .frame_about ul.about_list{
	margin-top: 30px;
	width:100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
#about .frame_about ul.about_list li{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    width: 31%;
	display: block;
	border: 1px solid #b9d7ed;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	padding: 15px 35px;
	background: url("../../img/common/ar_blue.svg") no-repeat right 20px center;
	-moz-background-size: 13px auto;
	-webkit-background-size: 13px auto;
	background-size: 13px auto;
    margin-bottom: 13px;
}
#about .frame_about ul.about_list li a{
	color: #298dd8;
	text-decoration: none;
	display: block;
}

@media screen and (min-width: 980px) {
    #about .frame_about ul.about_list li{
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    #about .frame_about ul.about_list li:hover {
        background-position: right 15px center;
    }
}
@media screen and (max-width: 1400px) {
    #about .frame_ph{
        width: 25%;
    }
    #about .frame_about{
        width: 73%;
        padding: 0 15px;
    }
    #about .frame_about ul.about_list li{
        width: 32%;
    }
}
@media screen and (max-width: 979px) {
    #about .frame_ph{
        width: 100%;
        float: none;
        display: block;
        text-align: center;
    }
    #about .frame_ph img{
        max-width: 70%;
        height: auto;
        display: block;
        margin: 0 auto;
    }
    #about .frame_about{
        width: 100%;
        float: none;
        display: block;
    }
    #about .frame_about ul.about_list li{
        width: 47%;
    }
}
@media screen and (max-width: 768px){
}
@media screen and (max-width: 620px) {
    #about .frame_about ul.about_list li{
        width: 98%;
    }
}
@media screen and (max-width: 480px){
} 

/*service
************************************************************************************/

#service{
	padding: 80px 0;
    background: #ecf9ff;
    text-align: center;
}
#service  ul.service_list{
	margin-top: 30px;
	width:100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: space-between;
	justify-content: space-between;
}
#service  ul.service_list li{
    width: 32%;
	display: block;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
    margin-bottom: 10px;
    background: #FFF;
    overflow: hidden;
}
#service  ul.service_list li .thum img{
    width: 100%;
    height: auto;
    margin: auto;
}
#service  ul.service_list li .service_ttl a{
    width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    color: #000;
    text-decoration: none;
    font-size: 1.125em;
    padding: 30px 45px 30px 35px;
	background: url("../../img/common/ar_circle_blue.svg") no-repeat right 30px center;
	-moz-background-size: 35px auto;
	-webkit-background-size: 35px auto;
	background-size: 35px auto;
    display: block;
}

@media screen and (min-width: 980px) {
    #service  ul.service_list li .service_ttl a{
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    #service  ul.service_list li .service_ttl a:hover {
        background-position: right 25px center;
    }
}

@media screen and (max-width: 979px) {
    #service{
        padding: 50px 0;
    }
    #service  ul.service_list li{
        width: 48%;
    }
}
@media screen and (max-width: 768px){
    #service  ul.service_list li .service_ttl a{
        font-size: 1em;
    }
}
@media screen and (max-width: 620px) {
    #service  ul.service_list li{
        width: 96%;
        margin: 0 auto 15px auto;
    }
    #service  ul.service_list li .service_ttl a{
        font-size: 1.125em;
    }
}
@media screen and (max-width: 480px){
} 

/*reason
************************************************************************************/

#reason{
	padding: 80px 0;
    background: url("../../img/toppage/bg_reason.jpg") no-repeat top center;
    -moz-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}

#reason .contents_title{
    color: #FFF;
    text-align: center;
}

#reason  ul.reason_list{
	margin-top: 30px;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#reason  ul.reason_list li{
    width: 19%;
	display: block;
    margin: 10px auto;
}

#reason  ul.reason_list li .reason_ttl{
    display: table;
    font-weight: 600;
}
#reason  ul.reason_list li .reason_ttl span{
    display: table-cell;
    vertical-align: middle;
}
#reason  ul.reason_list li .reason_ttl span:first-child{
    font-size: 2.5em;
    color: #acadae;
    padding-right: 7px;
}
#reason  ul.reason_list li .reason_ttl span:second-child{
    font-size: 1.125em;
}
#reason  ul.reason_list li .reason_ttl span a{
    color: #FFF;
    text-decoration: none;
}
#reason  ul.reason_list li .thum img{
    width: 100%;
    height: auto;
    margin: auto;
}

@media screen and (max-width: 979px) {
    #reason{
        padding: 50px 0;
    }
    #reason  ul.reason_list{
        -webkit-justify-content: left;
        -ms-flex-pack: left;
        justify-content: left;
    }
    #reason  ul.reason_list li{
        width: 32%;
        margin: 10px 0.5%; 
    }

    
}
@media screen and (max-width: 768px){
}
@media screen and (max-width: 620px) {
    #reason  ul.reason_list li{
        width: 49%;
    }
}
@media screen and (max-width: 480px){
    #reason  ul.reason_list li{
        width: 99%;
    }
} 

/*topics
************************************************************************************/
#topics{
	padding: 80px 0;
    background: #ecf9ff;
}
#topics .frame_topics{
    width: 1200px;
    padding: 50px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    margin: 0 auto;
    background: #FFF;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
#topics .contents_title{
    text-align: center;
}

#topics ul.topics li{
    width: 100%;
    display: table;
    border-bottom: 1px solid #d7d7d7;
    padding: 20px 0;
}
#topics ul.topics li .date{
    width: 8em;
    display: table-cell;
    color: #a3a3a3;
    text-align: center;
}
#topics ul.topics li .title{
    display: table-cell;
	text-align: left;
	width: calc(100% - 21em);
    color: #000;
}
#topics ul.topics li .title a{
    color: #000;
    text-decoration: none;
}

#topics ul.topics li .category{
	width: 12em;
	padding: 0 1em;
    display: table-cell;
}
#topics ul.topics li .category span{
	display: block;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	padding: 5px 1em;
	font-size: 0.75em;
	text-align: center;
}
#topics ul.topics li .category span.new{
	background: #F5DBDC;
}
#topics ul.topics li .category span.staff{
	background: #C3E7F4;
}
#topics ul.topics li .category span.topics{
	background: #E1E7FB;
}
#topics ul.topics li .category span.other{
	background: #f1f1f1;
}

#topics .bot_more a{
    width: 100%;
    padding: 30px 40px 30px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    text-align: center;
    border-bottom: 1px solid #36a9ff;
    background: url("../../img/common/ar_circle_blue.svg")  no-repeat right 20px center;
	-moz-background-size: 35px auto;
	-webkit-background-size: 35px auto;
	background-size: 35px auto;
    display: block;
    color: #000;
    text-decoration: none;
	font-weight: bold;
}

@media screen and (min-width: 980px) {
    #topics .bot_more a{
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    #topics .bot_more a:hover {
        background-position: right 10px center;
		background-color: #ecf9ff;
    }
}

@media screen and (max-width: 979px) {
    #topics{
        padding: 50px 0;
    }
    #topics .frame_topics{
        width: 98%;
        padding: 30px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 768px){
    #topics ul.topics li{
        display: block;
    }
    #topics ul.topics li .date{
        width: auto;
        display: block;
        border-bottom: none;
        color: #a3a3a3;
        text-align: left;
        padding: 15px 0 0 0;
    }
    #topics ul.topics li .txt{
        width: 100%;
        display: block;
        padding: 10px 0;
    }
}
@media screen and (max-width: 620px) {
}
@media screen and (max-width: 480px){
} 


/*company
************************************************************************************/
#company{
	padding: 80px 0;
    background: url("../../img/toppage/bg_company.png") no-repeat right bottom #ffeef5;
    text-align: center;
	-moz-background-size: 25% auto;
	-webkit-background-size: 25% auto;
	background-size: 25% auto;
}
#company ul.company_list{
	margin-top: 30px;
	width:100%;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: space-between;
	justify-content: space-between;
}
#company ul.company_list li{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    width: 31%;
	display: block;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	padding: 20px 45px 20px 15px;
	background: url("../../img/common/ar_circle_pink.svg") no-repeat right 20px center #FFF;
	-moz-background-size: 35px auto;
	-webkit-background-size: 35px auto;
	background-size: 35px auto;
    margin-bottom: 20px;
}
#company ul.company_list li a{
	color: #000;
	text-decoration: none;
	display: block;
}

@media screen and (min-width: 980px) {
    #company ul.company_list li{
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    #company ul.company_list li:hover {
        background-position: right 15px center;
    }
}

#company .bot_more{
    width: 60%;
    margin: 30px auto;
    padding: 20px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
    text-align: center;
    background: #f09bc0;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
#company .bot_more img{
    width: 30px;
    height: auto;
    margin-right: 10px;
    vertical-align: middle;
}
#company .bot_more a{
    color: #FFF;
    text-decoration: none;
}
#company .contact_tel{
	margin-top: 40px;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
    align-items: center;
}
#company .contact_tel p{
    padding: 0 10px;
}
#company .contact_tel img{
    width: 40px;
    height: auto;
    display: block;
}
#company .contact_tel .tel{
    font-size: 2.5em;
    font-weight: 600;
}
#company .contact_tel .contact{
}
#company .contact_tel .contact span{
    font-size: 0.875em;
    display: block;
}

@media screen and (max-width: 979px) {
    #company{
        padding: 50px 0;
    }
}
@media screen and (max-width: 768px){
    #company ul.company_list li{
        width: 48%;
    }
    #company .bot_more{
        width: 80%;
    }

}
@media screen and (max-width: 620px) {
    #company ul.company_list li{
        width: 98%;
    }
}
@media screen and (max-width: 480px){
} 
