@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.sml01 {
    font-size: 3.7rem!important;
}
.sml02 {
    font-size: 5.4rem!important;
}
.sml03 {
    font-size: 3rem!important;
}
.sml04 {
    font-size: 2rem!important;
}
.sml05 {
    font-size: 1.8rem!important;
}
.sml06 {
    font-size: 2.5rem!important;
}
.content {
    margin: 0 auto;
    width: 1200px;
}
@media all and (max-width: 896px) {
    .content {
        margin: 0 20px;
        width: auto;
    }
    .sml01 {
        font-size: 1.8rem!important;
    }
    .sml02 {
        font-size: 4.1rem!important;
    }
    .sml03 {
        font-size: 1.6rem!important;
    }
}

/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 54px;
	position: relative;
    font-size: 3.4rem;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.12em;
}
.headLine01::after {
	width: 2px;
	height: 30px;
	position: absolute;
	bottom: -41px;
	left: calc(50% - 1px);
	background-color: #00503c;
	content: '';
}
.headLine01 .green {
	margin-left: 6px;
	color: #00503c;
	font-size: 5.9rem;
	letter-spacing: 0.12em;
	vertical-align: -1px;
}
@media all and (max-width: 896px) {
    .headLine01 {
        margin-bottom: 23px;
        font-size: 1.8rem;
    }
    .headLine01::after {
        height: 20px;
        bottom: -16px;
    }
    .headLine01 .green {
        margin: -8px 0 0;
        display: inline-block;
        font-size: 4.1rem;
        vertical-align: 0;
    }
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 30px;
	padding-bottom: 10px;
	color: #00503c;
	font-size: 4.1rem;
	letter-spacing: 0.12em;
    font-weight: 600;
	text-align: center;
	background: url("../../img/common/line01.png") no-repeat center bottom / 90px;
}
.headLine02 span {
	color: #000;
	font-size: 2.4rem;
}
@media all and (max-width: 896px) {
    .headLine02 {
        margin-bottom: 36px;
        padding-bottom: 10px;
        position: relative;
        font-size: 2.8rem;
        background: none;
    }
    .headLine02::after {
        width: 2px;
        height: 20px;
        position: absolute;
        bottom: -12px;
        left: calc(50% - 1px);
        background-color: #00503c;
        content: '';
    }
    .headLine02 span {
        color: #000;
        font-size: 1.4rem;
    }
}

/*------------------------------------------------------------
	contactBox
------------------------------------------------------------*/
.contactBox {
    padding: 50px 0 46px;
    background: url("../../img/index/contact_box_bg.jpg") repeat left top / cover;
    box-shadow: 0 0 10px #666;
}
.contactBox h2 {
    margin-bottom: 22px;
    text-align: center;
}
.contactBox .link {
    margin: 0 auto;
    width: 600px;
    text-align: center;
}
.contactBox .link a {
    display: block;
}
.contactBox .link a:hover {
    opacity: 0.7;
}
@media all and (max-width: 896px) {
    .contactBox {
        padding: 36px 0 28px;
    }
	.contactBox h2 {
		margin-bottom: 18px;
	}
    .contactBox .link {
        width: 100%;
        max-width: 380px;
    }
}
/*------------------------------------------------------------
	pageTop
------------------------------------------------------------*/
.pageTop {
    position: fixed;
    right: 50px;
    bottom: 140px;
    z-index: 9999;
}
.pageTop a {
    display: block;
}
.pageTop a:hover {
    opacity: 0.7;
}
@media all and (max-width: 896px) {
    .pageTop {
        right: 10px;
        bottom: 100px;
    }
}