@charset "UTF-8";
/* ---------------------------------------------------------
   amamori_o.css【雨漏り診断】
----------------------------------------------------------*/
/********雨漏り****************/
.amamori_o_mv{
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
}
.amamori_o_mv .amamori_o_mv_bg{
    text-align: center;
    background: url(../img/amamori/amamori_o_grid.png);
    background-size:cover;
    background-repeat:no-repeat;
}
.amamori_o_mv p{
    font-size: 16px;
    line-height: 1.8;
    margin: 20px 0;
}
.self_check_txt{
    font-size: 20px;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
    text-align: center;
    color: #2E7AB1;
    margin-bottom: 14px;
}
.bg_orange{
    margin-bottom: 70px;
}
.bg_light_blue .amamori_o_bar{
    background: linear-gradient(white 50%, #EFF8FF 50%);
}
.bg_white .amamori_o_bar{
    margin: 60px 0 40px;
}
.bg_orange .amamori_o_bar{
    background: linear-gradient(white 50%, #FFF1EB 50%);
}
.amamori_o_bar_txt{
    font-size: 30px;
    padding: 16px 0;
}
.bg_light_blue .amamori_o_bar_txt{
    max-width: 980px;
    font-weight: bold;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
    text-align: center;
    color: #FFED05;
    background-color: #2E7AB1;
    margin: 0 auto;
}
.bg_white .amamori_o_bar_txt, .bg_orange .amamori_o_bar_txt{
    max-width: 980px;
    font-weight: bold;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
    text-align: center;
    color: #fff;
    background-color: #EB6120;
    margin: 0 auto;
}
.bg_light_blue .amamori_o_block{
    font-family: 'Noto Sans JP';
    text-align: center;
    background-color: #EFF8FF;
    padding-bottom: 4px;
}
.bg_orange .amamori_o_block{
    font-family: 'Noto Sans JP';
    text-align: center;
    background-color: #FFF1EB;
    padding-bottom: 4px;
}
.amamori_o_block_image{
    padding: 40px;
}
.amamori_o_block_txt{
    font-size: 30px;
    font-weight: 500;
    line-height: 1.5;
}
.amamori_o_block_txt span{
    color: #F25E3D;
    font-weight: 500;
}
.amamori_o_btn{
    position: relative;
    max-width: 630px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #EB6120;
    border-radius: 50px;
    padding: 25px 30px;
    margin: 30px auto 50px;
    box-shadow: 0px 8px 0 #6e2604;
    transition: .3s;
}
.amamori_o_btn:hover {
    box-shadow: none;
    transform: translate3d(0, 5px, 0);
}
.left_btn_txt{
    position: absolute;
    font-size: 20px;
    font-weight: bold;
    color: #EB6120;
    background-color: #FFF56F;
    margin-right: auto;
    padding: 10px 20px;
    left: 40px;
}
.center_btn_txt{
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    margin-left: 80px;
}
.right_btn_txt{
    position: absolute;
    font-size: 22px;
    color: #fff;
    right: 40px;
}
.line_txt{
	font-size: 24px;
	margin: 0 auto 30px;
	padding-bottom: 16px;
}
.line_txt:has(.line_txt_label){
	position: relative;
}
.line_txt_label{
	z-index: 1;
	margin-right: 8px;
	margin-left: -200px;
	border-radius: 8px;
	padding: 3px 16px 4px;
	position: relative;
	top: -15px;
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	background-color: #F38C1F;
}
.line_txt_label::after{
	z-index: -1;
	content: "";
	width: 30px;
	height: 20px;
	position: absolute;
	bottom: -5px;
	right: 15px;
	transform: rotate(20deg);
	background-color: #f38c1f;
	clip-path: polygon(0 0,100% 100%,0 100%);
}
@media screen and (max-width: 767px) {
	.line_txt_label{
		width: fit-content;
		margin: 0 auto 8px;
		top: 0;
		font-size: 14px;
		display: block;
	}
	.line_txt_label::after{
		right: 40%;
	}
}
.bg_light_blue .line_txt{
    font-weight: bold;
    border-bottom: solid #82C1EA 4px;
}
.bg_white .line_txt{
    text-align: center;
    border-bottom: solid #EB6120 4px;
}
.bg_orange .line_txt{
    border-bottom: solid #EB6120 4px;
}
.three_choices,.four_choices{
    display: flex;
    margin: 0 auto;
}
.three_choices{
    gap: 31px;
}
.four_choices{
    gap: 20px;
    margin-bottom: 50px;
}
.three_choices li:has(.three_choices_label){
	position: relative;
}
.three_choices_label{
	z-index: 1;
	border-radius: 8px;
	padding: 3px 16px 4px;
	position: absolute;
	top: -23px;
	right: -4px;
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	background-color: #F38C1F;
}
@media screen and (max-width: 767px) {
	.three_choices_label{
		top: -16px;
		font-size: 14px;
	}
}
.three_choices_label::after{
	z-index: -1;
	content: "";
	width: 30px;
	height: 20px;
	position: absolute;
	bottom: -5px;
	right: 30px;
	transform: rotate(-20deg);
	background-color: #f38c1f;
	clip-path: polygon(100% 0,100% 100%,0 100%);
}
.three_choices_wrap{
    max-width: 306px;
    background-color: #FFFFFF;
    border: solid #82C1EA 3px;
}
.four_choices_wrap{
    max-width: 230px;
}
.three_choices_wrap .choices_title{
    font-size: 20px;
    font-weight: bold;
    padding: 20px 0;
}
.four_choices_wrap .choices_title{
    font-size: 20px;
    padding: 10px 0;
}
.three_choices_wrap .choices_txt{
    text-align: start;
    line-height: 1.8;
    padding: 0 20px 20px;
}
.four_choices_wrap .choices_txt{
    text-align: start;
    line-height: 1.8;
}
.three_choices_wrap .choices_txt span{
    color: #EB6120;
}
.bg_light_blue .flex_wrap{
    display: flex;
    align-items: center;
    gap: 50px;
    font-size: 20px;
    text-align: left;
    margin: 30px 0 40px;
    padding: 20px 30px;
    background-color: #ffffff;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
}
.bg_orange .flex_wrap{
    display: flex;
    align-items: center;
    gap: 80px;
    font-size: 20px;
    text-align: left;
    padding: 20px 0 26px;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
}
.bg_light_blue .flex_wrap .flex_wrap_txt{
    max-width: 600px;
    line-height: 1.8;
}
.bg_orange .flex_wrap .flex_wrap_txt{
    max-width: 720px;
    line-height: 1.8;
}
.bg_light_blue .flex_wrap .flex_wrap_txt span{
    color: #EB6120;
}
.flex_wrap .flex_wrap_img{
    flex: none;
}
.repair_wrap{
    display: flex;
    gap: 30px;
    font-size: 16px;
    text-align: left;
    margin-bottom: 36px;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
}
.repair_wrap .repair_wrap_img{
    flex: none;
}
.repair_wrap .repair_wrap_txt{
    max-width: 600px;
    line-height: 1.8;
}
.diagnosis_wrap{
    position: relative;
    display: flex;
    font-size: 16px;
    text-align: left;
    margin-bottom: 36px;
    border: solid #EB6120 3px;
    font-family: '源ノ角ゴシック','Noto Sans JP','Hiragino Kaku Gothic ProN','メイリオ',sans-serif;
}
.diagnosis_wrap .diagnosis_wrap_img{
    flex: none;
}
.diagnosis_wrap ul{
    display: flex;
    flex-flow: column;
    gap: 22px;
    padding: 30px 30px 0 30px;
}
.diagnosis_wrap .diagnosis_wrap_title{
    font-size: 20px;
    font-weight: bold;
    font-family: 'Noto Sans JP';
}
.diagnosis_wrap .diagnosis_wrap_txt{
    line-height: 1.8;
}
.diagnosis_wrap .diagnosis_wrap_min{
    font-size: 12px;
    line-height: 1.6;
}
.diagnosis_wrap .diagnosis_wrap_flag{
    position: absolute;
    top: -10px;
    left: 14px
}
.sekou_wrap{
    display: flex;
    gap: 40px;
    margin-bottom: 40px;
}
.sekou_wrap .sekou_wrap_img{
    display: flex;
    gap: 10px;
    flex: none;
}
.sekou_wrap_table{
    margin-top: 16px;
}
.sekou_wrap_table .color{
    width: 162px;
    background-color: #fdf4e6;
    padding-left: 16px;
}
.sekou_wrap_table td{
    width: 253px;
    line-height: 1.6;
    padding: 14px 0 14px 16px;
    border: 1px solid #f1f2f6;
}
.sekou_wrap .sekou_wrap_txt p{
    font-size: 20px;
    line-height: 1.8;
}
/* kasai area start */
.p-kasai * {
    box-sizing: border-box;
}
#detail_container .ttl-sekou{
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 20px;
}
.phot_before_after_title {
	margin: 0 0 10px;
}
.phot_before_after {
    margin: 0 0 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
}
.phot_before_after::after {
    content: url(../img/case/case_arrow.gif);
    position: absolute;
    top: 43%;
    left: 50%;
    -webkit-transform : translate(-50%,-50%);
    transform : translate(-50%,-50%);
    z-index:5;
    text-align: center;
    visibility: initial;
}
.phot_before_after li {
    width: 48%;
    float: left;
}
.phot_before_after li img {
    width: 100%;
    height: auto;
}
#detail_container{
    margin-top: 40px;
  }
#detail_container .about{
	float: left;
	width: 100%;
    position: relative;
	margin-right: 30px;
    margin-bottom: 30px;
}
#detail_container .ttl-sekou{
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 20px;
}
#detail_container .about:last-child{
	margin-right: 0;
}
#detail_container .about tbody{
    display: flex;
}
#detail_container .about tbody tr{
    display: flex;
    flex-direction: column;
    width: 25%;
    text-align: center;
}
#detail_container .about tbody tr:last-child .color{
    color: #fff;
    background-color: #EB6120;
}
#detail_container .about tbody tr td:last-child{
    height: 116px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ffffff;
}
#detail_container .about th,
#detail_container .about td{
	padding: 8px;
	font-size: 15px;
	line-height: 24px;
	font-weight: bold;
	vertical-align: middle;
	border: 1px solid #f1f2f6;
}
#detail_container .about .p-about{
    text-align: left;
    font-size: 15px;
    font-weight: 400;
}
#detail_container .about .p-about-price{
    font-size: 24px;
}
#detail_container .about .about-last{
    color: #EB6120;
}
#detail_container .about th{
	line-height: 1.5;
	background-color: #f8deb5;
	font-weight: 900;
}
#detail_container .about td.color{
	background-color: #fdf4e6;
}

#detail_container .gallery .photo{
	position: relative;
}
#detail_container .gallery .photo img{
	width: 100%;
	height: auto;
}
#detail_container .gallery .photo .stamp{
	position: absolute;
	width: 150px;
	right: 20px;
	bottom: 20px;
}

#detail_container .before-ttl{
	margin-top: 60px;
	padding: 15px 0 15px 30px;
	background-color: #eb6120;
	font-size: 22px;
	color: #fff;
	font-weight: bold;
}
#detail_container .before_list li{
	margin-top: 35px;
}
#detail_container .before_list li img{
	width: 100%;
	height: auto;
}
.gallery_two_column,
.gallery_one_column{
	display: flex;
	justify-content: flex-start;
    flex-wrap: wrap;
	width: auto;
	margin: 20px auto;
	
}
.photo_gallery{
	width: 30%;
	height: auto;
	margin-right: 5%;
}
.photo_gallery:nth-child(3n){
	margin-right: 0;
}
#detail_container .gallery .comment{
	margin-top: 60px;
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 60px;
}
#detail_container .gallery .photo_comment{
  text-align: center;
  margin-top: 10px;
}
.ab-tbl_wrap .about::before {
    content: url(../img/amamori/icon_plus.svg);
    position: absolute;
    left: 75%;
    top: 62%;
    width: 40px;
    height: 40px;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 5;
    text-align: center;
    visibility: initial;
}
#kasai-cont #sekou_detail .sec-inner:first-child{
    margin-bottom: 80px;
}
/* kasai area end */
.sp_br{
    display: none;
}
.sp_menu{
    display: none;
}
.mar_t_100{
    margin-top: 100px;
}

.amamori_o_block a:hover{
    opacity: 1 ;
}

@media screen and (max-width: 953px) {
}
@media screen and (max-width: 767px) {
    .amamori_o_bar_txt{
        font-size: 20px;
        line-height: 1.3;
        padding: 12px 0;
    }
    .amamori_o_block_txt{
        font-size: 18px;
        margin: 30px 0 40px;
    }
    .amamori_o_block_image{
        padding: 30px 0 0 0;
    }
    .left_btn_txt{
        top: -20px;
        left: auto;
    }
    .center_btn_txt{
        font-size: 20px;
        font-weight: bold;
        color: #fff;
        margin-left: unset;
    }
    .right_btn_txt{
        position: absolute;
        font-size: 20px;
        color: #fff;
        right: 16px;
    }
    .line_txt{
        font-size: 18px;
        line-height: 1.5;
        padding-bottom: 6px;
    }
    .bg_orange .line_txt{
        font-size: 16px;
        margin: 0 auto -10px;
        padding-bottom: 6px;
    }
    .bg_orange .flex_wrap{
        gap: 0;
    }
    .bg_orange .flex_wrap .flex_wrap_txt{
        font-size: 16px;
    }
    .three_choices{
        flex-flow: column;
        align-items: center;
        gap: 40px;
    }
    .three_choices_wrap{
        position: relative;
    }
    .three_choices_wrap .choices_title{
        font-size: 18px;
    }
    .four_choices{
        flex-wrap: wrap;
        justify-content: space-around;
        margin: auto;
    }
    .four_choices_wrap{
        max-width: 170px;
        margin-bottom: 20px;
    }
    .bg_light_blue .flex_wrap{
        gap: 10px;
        font-size: 16px;
        padding: 20px 10px;
    }
    .flex_wrap {
        flex-flow: column;
        gap: 10px;
        font-size: 16px;
        padding: 20px 16px;
    }
    .repair_wrap{
        flex-flow: column;
        align-items: center;
        gap: 16px;
    }
    .reverse_wrap{
        flex-flow: column-reverse;
    }
    .diagnosis_wrap{
        flex-flow: column;
        max-width: 361px;
        margin: 0 auto 36px;
    }
    .diagnosis_wrap ul{
        padding: 14px 12px;
    }
    .diagnosis_wrap .diagnosis_wrap_title{
        font-size: 18px;
        line-height: 1.6;
    }
    .diagnosis_wrap .diagnosis_wrap_min{
        font-size: 12px;
        line-height: unset;
    }
    .sekou_wrap{
        flex-flow: column;
    }
    .sekou_wrap_img{
        justify-content: center;
    }
    .sekou_wrap .sekou_wrap_txt{
        margin: 0 auto;
    }
    /* kasai area start */
    .photo_complete {
		width: 100%;
		margin: 0 0 60px;
		border-radius: 10px;
		box-sizing: border-box;
	}
	.photo_complete::after {
		top: -4px;
		right: 4%;
		z-index: 5;
		content: '';
		display: inline-block;
		background: url(../img/case/complete_flag.png) no-repeat;
		background-size: contain;
		height: 110px;
		width: 60px;
	}
	.phot_before_after li {
		width: 100%;
		float: none;
	}
	.phot_before_after li:first-child {
        margin-bottom: 20px;
	}
	.phot_before_after::after {
		top: 45%;
		transform: rotate(90deg);
	}
    #detail_container .about tbody{
        flex-direction: column;
    }
    #detail_container .about tbody tr{
        width: 100%;
    }
    #detail_container .about tbody tr td:last-child{
        height: auto;
        padding: 5%;
    }
    .about-last::before{
        display: none;
    }
    .gallery_two_column, .gallery_one_column{
        display: block;
    }
    .photo_gallery{
        width: 96%;
        margin: 0 auto 10px;
    }
    .photo_gallery:nth-child(3n){
        margin-right: auto;
    }
    #detail_container .gallery .photo_comment{
        padding: 10px 0 10px;
        margin: 0 auto;
    }
    #detail_container .about:first-child{
        margin-bottom: 20px;
    }
    #detail_container .about td.color {
        width: auto;
    }
    #detail_container .about th, #detail_container .about td {
        display: block;
        padding: 10px;
        font-size: 13px;
        line-height: 18px;
    }
    .ab-tbl_wrap .about::before{
        width: 20px;
        height: 20px;
        left: 50%;
        top: 78%;
    }
    #kasai-cont #sekou_detail .sec-inner:first-child{
        margin-bottom: 40px;
    }
    .photo_gallery .photo img{
        width: 288px;
        height: 160px;
    }
    /* kasai area end */

    /* drop menu start*/
    .btn {
        display: block;
        cursor: pointer;
        width: 160px;
        position: absolute;
        color: #ffffff;
        font-weight: bold;
        padding: 10px 0px;
        border-radius: 20px;
        left: calc(50% - 80px);
        bottom: -18px;
    }
    .bg_light_blue .btn {
        background-color: #82C1EA;
    }
    .bg_white .btn {
        text-align: center;
        background-color: #EB6120;
    }
    .diagnosis_wrap ul .submenuItems{
        padding: 0;
    }
    .submenuItems.is-open > .choices_txt {
        /* 開いている状態 */
        padding-bottom: 20px;
        /* 開くアニメーション */
        transition:
            border-top     .3s ease-out,
            padding-top    .3s ease-out,
            padding-bottom .3s ease-out;
    }
    .submenuItems.is-open > .diagnosis_wrap_txt {
        /* 開いている状態 */
        padding-bottom: 20px;
        /* 開くアニメーション */
        transition:
            border-top     .3s ease-out,
            padding-top    .3s ease-out,
            padding-bottom .3s ease-out;
    }
    .submenuItems > .choices_txt {
        /* 閉じている状態 */
        line-height: 0;
        opacity: 0;
        visibility: hidden;
        /* 閉じるアニメーション */
        transition:
            line-height .3s ease-out,
            opacity     .1s linear,
            visibility  .1s linear;
    }
    .submenuItems > .diagnosis_wrap_txt {
        /* 閉じている状態 */
        line-height: 0;
        opacity: 0;
        visibility: hidden;
        /* 閉じるアニメーション */
        transition:
            line-height .3s ease-out,
            opacity     .1s linear,
            visibility  .1s linear;
    }
    .submenuItems.is-open > .choices_txt {
        /* 開いている状態 */
        line-height: 1.8;
        opacity: 1;
        visibility: visible;
        /* 開くアニメーション */
        transition:
            line-height .3s ease-out,
            opacity     .1s linear .1s,
            visibility  .1s linear .1s;
    }
    .submenuItems.is-open > .diagnosis_wrap_txt {
        /* 開いている状態 */
        line-height: 1.8;
        opacity: 1;
        visibility: visible;
        /* 開くアニメーション */
        transition:
            line-height .3s ease-out,
            opacity     .1s linear .1s,
            visibility  .1s linear .1s;
    }
    /* drop menu end*/
    .sp_br{
        display: block;
    }
    .pc_menu{
        display: none;
    }
    .sp_menu{
        display: block;
    }
}
@media screen and (max-width: 380px) {
    .four_choices{
        gap: 10px;
    }
}
@media screen and (max-width: 375px) {
    .center_btn_txt{
        margin-right: auto;
    }
}

.shiroari_list{
	margin-bottom: 36px;
	display: flex;
	gap: 20px;
}
.shiroari_item img{
	height: 293px;
	object-fit: cover;
}
@media screen and (max-width: 767px) {
	.shiroari_list{
		flex-direction: column;
	}
	.shiroari_item img{
		max-width: 220px;
		height: auto;
	}
}