@charset "utf-8";

/* 共通 */
figure{position: relative;}

.page-ttl {
    background-image: url(../../safety/page-ttl-bg.png);
}
.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%);
}
/* ----------------------------------
安心安全01
---------------------------------- */
#content_Wrap {
    padding-bottom: 100px;
}

.item-txt{
    line-height: 21px;
}


.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: #6c6b6b;
    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: #8e7824;
    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: #8e7824;
    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: #6c6b6b;
    padding: 10px 0;
}

.guarantee-item {
    background: #eae4d1;
    padding: 20px 20px;
}

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

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


/* ----------------------------------
安心安全02
---------------------------------- */
.item-box {
    width: 100%;
}

.safety-box h4 {
    color: #333;
    background: #eae4d1;
    font-size: 20px;
    padding: 16px 0;
}

.safety-box .se01,
.safety-box .se02 {
    margin-top: 20px;
}

.flex-0102{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.safety-box .se09{
    /* height: 100%; */
    margin-top: 20px;
}



.next{
    width: 50px;
}

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

.setsubi-flex .text {
    width: 48%;
}

.setsubi-flex .image {
    width: 48%;
}

.secom {
    display: inline-block;
    max-width: 90%;
    width: 150px;
    margin-right: 20px;
}

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

.secom01-flex .image {
    width: 20%;
}

.secom01-flex .text {
    width: 78%;
}

.secom01-flex .text .item-ttl {
    margin-top: 0;
}

.secom02-flex {
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 40px;
}

.secom02-flex .interphone {
    flex-wrap: wrap;
    justify-content: space-between;
    width: 58.3%;
}

.secom02-flex .interphone .image {
    width: 20%;
}

.secom02-flex .interphone .text {
    width: 76%;
}

.secom02-flex .interphone .text .item-ttl {
    margin-top: 0;
}

.secom02-flex .camera {
    flex-wrap: wrap;
    justify-content: space-between;
    width: 37.7%;
}

.secom02-flex .camera .image {
    width: 36%;
}

.secom02-flex .camera .text {
    width: 60%;
}

.secom02-flex .camera .text .item-ttl {
    margin-top: 0;
}

.sec-system {
    max-width: 800px;
    margin: 60px auto 0;
}

.shibutani {
    display: inline-block;
    max-width: 90%;
    width: 148px;
    margin-right: 20px;
    padding: .5rem 0;
    mix-blend-mode: multiply;
}

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

.tebra-flex .left {
    width: 60%;
}

.tebra-flex .right {
    width: 35%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.tebra-flex figure {
    margin-top: 20px;
}
/* .tebra-flex .left figure {
    margin-bottom: 20px;
} */

.tebra-flex .cap_Txt{
    bottom: 0px;
} 

/* .tebra-flex .right figure {
    width: 60%;
    margin: 20px auto 0;
} */

.flex-tbr{
    display: flex;
    justify-content: space-between;
}

.flex-tbr figure{
    margin: 0;
}

.flex-tbr-l{
    width: 65%;
}
.flex-tbr-r{
    width: 30%;
    
}
.flex-tbr-r img{
    max-width: 100px;
}



.sec-list {
    /* flex-wrap: wrap; */
    justify-content: space-between;
    align-items: center;
    gap: 1%;
}

.sec-list li {
    /* width: 32%; */
}

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

.sec-ttl span {
    font-size: 1.2em;
}

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

.sec-flex .text {
    width: 70%;
}

.sec-ttl small{
    font-size: 10px;
}

.sec-flex .image {
    width: 26%;
    margin-top: 10px;
}

.sec-item:nth-of-type(2) {
    margin-top: 60px;
}

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

.sec-flex02 .text {
    width: 60%;
}

.sec-flex02 .image {
    width: 36%;
}

.sec-flex02 figure {
    margin-top: 10px;
}

.sec-flex02 figure.se15 {
    width: 80%;
    margin: 10px auto 0 0;
}

.before-text {
    display: block;
    text-align: left;
}

.before-text .small {
    display: block;
    font-size: 13px;
    text-align: left;
    padding-top: 8px;
    line-height: 20px;
}

.before-text .small.pc-only {
    display: block;
}

.small.sp-only {
    display: none;
}

/* 駅前 */
.concrete-item.c-ekimae {
background: #7196ad;
}

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

/*---------------------------
sp
---------------------------*/
@media only screen and (max-width: 767px) {
	.main {
		background-image: url(../img/main_sp.jpg);
		background-position: left center;
		padding: 24% 0;
	}
	.main h2 {
		font-size: 20px;
		width: 100%;
		text-align: center;
	}
    /* ----------------------------------
安心安全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;
    }

    /* ----------------------------------
安心安全02
---------------------------------- */
    .safety-box .item-ttl {
        margin-top: 0;
    }

    .safety-box .copy{
        letter-spacing: .1rem;
    }
    .setsubi-flex .text {
        width: 100%;
    }

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

    .secom {
        width: 100px;
        padding: .5rem 0;
    }

    .secom01-flex .image {
        width: 100%;
    }

    .secom01-flex .text {
        width: 100%;
        margin-top: 20px;
    }

    .secom02-flex .image {
        width: 100%;
    }

    .secom02-flex .text {
        width: 100%;
        margin-top: 20px;
    }

    .secom02-flex .interphone {
        width: 100%;
    }

    .secom02-flex .interphone .image {
        width: 100%;
    }

    .secom02-flex .interphone .text {
        width: 100%;
    }

    .secom02-flex .camera {
        width: 100%;
        margin-top: 40px;
    }

    .secom02-flex .camera .image {
        width: 100%;
    }

    .secom02-flex .camera .text {
        width: 100%;
    }

    .sec-system {
        margin: 20px auto 0;
    }

    .shibutani {
        width: 98px;
        margin-right: 10px;
    }

    .tebra-flex .left {
        width: 100%;
    }

    .tebra-flex .right {
        width: 100%;
        margin-top: 40px;
    }

    .flex-tbr-r img{
    max-width: 120px;
}

    .sec-list {
        margin-top: 20px;
    }

    /* .sec-list li {
        width: 100%;
    } */

    /* .sec-list li .next{
        width: 10px;
    } */

    /* .sec-list li:nth-of-type(n+2) {
        margin-top: 30px;
    } */

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

    .sec-flex .image {
        width: 80%;
        margin: 20px auto 0;
    }

    .sec-flex02 .text {
        width: 100%;
    }

    .sec-flex02 .image {
        width: 100%;
    }

    .sec-flex02 .image .se16 {
        width: 80%;
        margin: 30px auto 0;
    }

    .before-text .small.pc-only {
        display: none;
    }

    .small.sp-only {
        display: block;
        margin-bottom: 4px;
        font-size: 12px;
        order: 3;
    }

    h4.flex {
        flex-wrap: wrap;
    }

    .before-text {
        line-height: 1.3;
        font-feature-settings: "palt";
    }

    .sec-ttl {
        font-size: 14px;
    }

    /* .tebra-flex .right figure {
        width: 80%;
    } */

    .safety-box h4 {
    font-size: 16px;
    line-height: 1.3rem;
    padding: 10px 0;
}

}