@charset "utf-8";

/* 共通 */
/*
body {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", "Noto Serif JP", serif;
	font-weight: 500;
	font-style: normal;
	font-feature-settings: "palt" !important;
	-webkit-text-size-adjust: 100%;
	letter-spacing: 1.5px;
	line-height: 1.5;
}
*/
.main {
	background-image: url(../img/main.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding: 16% 0;
	position: relative;
    z-index: 1;
}

.main h2 {
	font-size: 24px;
	letter-spacing: 6px;
	color: #fefefe;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.blank_W {
    padding-bottom: 30px;
    background: white;
}

small {
    font-size: smaller;
}

/* ----------------------------------
安心安全01
---------------------------------- */
#content_Wrap {
    padding-bottom: 100px;
}

figure {
    position: relative;
}

/*基本構造*/

.structure-flex {
    flex-wrap: wrap;
    justify-content: space-between;
}
.structure-flex .image {
    width: 38.3%;
}
.structure-flex .text {
    width: 58.3%;
}
.str-item:nth-of-type(n+2) {
    margin-top: 20px;
}

.str-ttl {
    display: flex;
    align-items: center;
    color: #fff;
    background: #18586e;
    padding: 10px 0 10px 20px;
}

.str-ttl .icon {
    display: inline-block;
    width: 29px;
    height: 29px;
    margin-right: 10px;
}

.concrete-item {
    flex-wrap: wrap;
    justify-content: space-between;
    background: #757a76;
    padding: 20px 20px;
    margin-top: 20px;
}

.concrete-item .text {
    width: 58%;
    color: #fff;
}

.concrete-item .image {
    width: 38%;
}

.concrete-ttl {
    font-size: 22px;
    border-bottom: 1px solid #fff;
    padding-bottom: 10px;
}

.star {
    display: inline-block;
    font-size: 13px;
    color: #fff;
    background: #9b1e23;
    padding: 8px 8px;
    margin-left: 20px;
}

.item-ttl span.star {
    flex: 1;
    text-align: center;
}

.floor-flex {
    flex-wrap: wrap;
    justify-content: space-between;
}

.floor-flex .text {
    width: 44%;
}

.floor-flex .image {
    width: 52%;
}

.floor-ttl {
    color: #fff;
    text-align: center;
    background: #18586e;
    padding: 10px 0;
}

.guarantee-item {
    border: 2px solid #18586e;
    padding: 20px 20px;
}

.guarantee-ttl {
    font-size: 20px;
    color: #fff;
    background: #18586e;
    text-align: center;
    padding: 8px 0;
}

.guarantee-ttl span {
    display: inline-block;
    font-size: 0.7em;
    margin-right: 15px;
}


/* ----------------------------------
安心安全02
---------------------------------- */

/*---------------------------
tab
---------------------------*/
@media only screen and (max-width: 1024px) {
    .sec-ttl {
        font-size: 12px;
        letter-spacing: 0.6px;
    }
}

/*---------------------------
sp
---------------------------*/
@media only screen and (max-width: 820px) {

/* ----------------------------------
安心安全01
---------------------------------- */
    .structure-flex .image {
        width: 100%;
    }

    .structure-flex .text {
        width: 100%;
        margin-top: 30px;
    }

    .concrete-item .text {
        margin-top: 0;
    }

    .concrete-item .image {
        margin-top: 20px;
    }

    .concrete-ttl {
        font-size: 18px;
    }

    .floor-flex .text {
        width: 100%;
    }

    .floor-flex .image {
        width: 100%;
        margin-top: 20px;
    }

    .item-ttl span {
        display: block;
        width: 100%;
    }

    .item-ttl span.star {
        width: 100%;
        margin-left: 0;
        margin-top: 5px;
    }


}