﻿/*---------------------------------------------
 YouTube埋め込み
--------------------------------------------*/
.youtube{
    margin-top: 70px;
}
.youtube h3{
    font-size: 2rem;
    width: max(250px, 30%);
    color: #fff;
    margin: 0 auto 30px;
    border-radius: 60px;
    padding: 5px 0;
}
.youtube iframe{
    width: 50vw;
    height: calc(50vw * 0.5625);
    margin: 0 auto;
    display: block;
}
/* タブレット */
@media screen and (max-width: 768px){
    .youtube iframe{
        width: 70vw;
        height: calc(70vw * 0.5625);
    }
}

/* スマホ */
@media screen and (max-width: 667px){
    .youtube iframe{
        width: 77vw;
        height: calc(77vw * 0.5625);
    }
}
/*---------------------------------------------
 テンプレート ・CMS・下層ページ 
--------------------------------------------*/
body,.font_14,.font_12,.font_100per,.font_2dw,.font_2dw_tb,.font_2dw_sp,.font_14_sp{
    font-size: 16px;
}
.font_2up{font-size: 18px;}
.font_4up{font-size: 20px;}

#logo h1.logo img{width: 100%!important;}
.sns_links li{width: 35px;}
.bnr{

}
.bnr a{
    position: absolute;
    right: 0;
    bottom: 16%;
    z-index: 5;
    
        transform: translateX(0px);
    font-size: 1.3em;
    padding: 15px 10px;
    color: #fff;
    border-radius: 10px 0 0 10px;
    box-shadow: 2px 3px 0px #ff8c72;
}
.bnr a:hover{
    padding-right: 50px;
}

.top1{
    display: block;
    width: 50%;
    margin-bottom: 30px;
}

#top_contents1{
    padding: 70px 5% 120px;
    background-color: #fff0cf;
}
#top_contents1 p{
    background-color: #fff;
    border: 3px solid #ffc031;
    padding: 40px 20px;
    border-radius: 15px;
}
#top_contents2{padding: 80px 0;}
#top_contents2 .con_box .text_box{border-radius: 15px 0 0 15px;}
#top_contents2 .con_box:nth-of-type(2) .text_box{border-radius: 0 15px 15px 0;}
#top_contents2 .text_box::-webkit-scrollbar{display:none;}
#top_contents2 .text_box h2{text-shadow: 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff;}
#top_contents2 .con_box:nth-of-type(2) .text_box h2{color: #ff8f03;}
#top_contents2 .top_2{
    z-index: -1;
    top: -5%;
    right: -5%;
    opacity: 0.7;
}
#top_contents2 .top_3{
    z-index: -1;
    top: -5%;
    right: -5%;
    opacity: 0.4;
}

#top_contents2 p.d_flex{    border-bottom: 2px dotted #ffbcbc;}
#top_contents2 p i{
    transform: translateY(3px);
    width:20px;
}
#top_contents2 p span{
    letter-spacing: 0.03em;
    width: calc(100% - 25px);
}

.page{
    background-image: url(./Dup/img/bg.jpg);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* タブレット */
@media screen and (max-width: 768px){
    #fix_menu .bnr{display: none;}
    .bnr a{
        position: fixed;
    }
    .top1{width: 65%; margin-bottom: 10px;}
    #top_contents2 .con_box .text_box,#top_contents2 .con_box:nth-of-type(2) .text_box,#top_contents2 .con_box .con_img{border-radius: 15px;}
    
    #top_contents2 .con_box .text_box{    top: 20px;}
    
    .date2{font-size: 21px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #fix_menu{padding: 42px 0 42px;}
    #logo h1.logo{transform: translateY(-50%);top: 56%;}
    .overlay nav{height: calc(95% - 105px);}
    #wrap{max-width: 100%;padding:0;margin: 0;box-sizing: border-box;}
    .bnr a{
        padding: 10px 5px;
        padding-right: 7px;
        transform: translateX(2px);
        font-size: 1.2em;
        right: 1px;
    }
    .bnr a:hover{
        padding-right: 30px;
        
    }
    #top_contents1{padding: 70px 5% 70px;}
    #top_contents2 .con_box:nth-of-type(2) .text_box{margin-top: 15px;}
    #top_contents2 .con_box .text_box{top: 0px;}
    
    
    
    .top1{width: 90%;}
    
    .date2{font-size: 18px;}
    
    .page{
        position: relative;
        background-attachment: scroll;
            background-image: none;
    }
    .page:before {
        content: " ";
        position: fixed;
        display: inline-block;
        width: 100vw;
        height: 100%;
        background: url(./Dup/img/bg_sp.jpg) no-repeat;
        background-size: cover;
        left: 0px;
        top: 0px;
        z-index: -1;
    }
}
.cms_1-g .date{max-width: 140px;}

/*.contact_type1--------------------------- */
.contact_type1 .left, .contact_type1 .right {
    padding: 40px 27px 30px;
    background-color: #f7f7f7;
    margin: 1%;
    width: 48%!important;
    box-sizing: border-box;
}
.contact_type1 .left_t {
    padding: 40px 27px 30px;
    background-color: #f7f7f7;
    margin: 1%;
    width: 98%!important;
    box-sizing: border-box;
}
.contact_type1 .cate_title {
    padding: 0;
    margin: 0;
    font-size: 19px;
    margin-bottom: 16px;
}
.contact_type1 .con_box1 a {
    display: block;
    max-width: 330px;
    margin: 0 auto 27px;
    transition: opacity .6s;
}
.contact_type1.con_box2 a{
    display: block;
    max-width: 450px;
    margin: 0 auto;
    transition: opacity .6s;
}
.contact_type1 .click_bt {
    cursor: pointer;
    padding: 10px 18px;
    background-color: #fff;
    box-shadow: 0 3px 8px rgb(0 0 0 / 10%);
    border-radius: 5px;
    text-align: center;
}
.contact_type1 .txt_box{
     display: none
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.contact_type1 .left, .contact_type1 .right ,.contact_type1 .left_t{
    width: 80%!important;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
.contact_type1 .left, .contact_type1 .right ,.contact_type1 .left_t{
    padding: 30px 27px 30px;
    width: 100%!important;
    margin-bottom: 20px;
}
.contact_type1 .cate_title {
    font-size: 17px;
}
}
/* 外壁塗装 --------------------------- */
#cms_2-g .cms1 .cate_box{
    background-color: #fff8e6;
    padding: 40px 20px;
    border-radius: 10px;
    width: 48%!important;
}
#cms_2-g .box_img1 img{border-radius: 10px;}

@media screen and (max-width: 667px){
    #cms_2-g .cms1 .cate_box{width: 90%!important;}
}

/* flow_type3 ---------------------------------------------------- */
.flow_type3 .cate{counter-reset: box;}
.flow_type3 .cate_box{
    counter-increment: box;
    background-color: #fff9ea;
    padding: 20px;
    border-radius: 13px;
}
.flow_type3 .box_item{padding-top: 50px;}
.flow_type3 .box_title1{z-index: 0; padding-left: 95px;}
.flow_type3 .box_title1::before, .flow_type3 .box_title1::after{
	position: absolute;
	content: "";
	display: block;
	pointer-events: none
}
.flow_type3 .box_title1::before {
	content: "0"counter(box);
	font-size: 86px;
	color: #ffc8c8;
	left: 0;
	top: -70px;
	z-index: -1;
}
.flow_type3 .box_title1::after{
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #ffaf1e;
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
    .flow_type3 .box_title1::before{
    	left: auto;
    	right: 0;
    	top: -50px
    }
    .flow_type3 .box_item {
        padding-top: 36px;
    }
    .flow_type3 .box_title1{padding-left: 0px;}
}



/* --------------------------------------------
 メインイメージ 
---------------------------------------------*/
#main_img{height: 800px;}
.catch {
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);/* X横 Y縦 始点が要素の中心になる */
    width: 55%;
    max-width: 870px;
}
.dec01{
    position: absolute;
    max-width: 350px;
    width: 25%;
    bottom: 0px;
    left: 7%;
}
@media screen and (max-width: 1260px){
    #main_img > img{height: 100%;width: auto;}
}
/* タブレット */
@media screen and (max-width: 768px){
    #main_img{height: 600px;}
    #main_img > img{top: 95px;transform:translate(-50%,0%);}
    .catch {width: 60%;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #main_img{height: 320px;}
    #main_img > img{top: 78px;}
    .catch {top: 60%;}
}


/*--------------------------------------------
 全体 
----------------------------------------------*/
.linkStyle{
	color:#ff7272;
	text-decoration: underline;
	transition: all 0.5s;
}
.linkStyle:hover{
	color:#ff7272;
	opacity: 0.7;
	text-decoration: none;
}


.txt_color1,.hvr_txt_color1:hover{color: #ffc031;} 
/*.txt_color2,.hvr_txt_color2:hover{color: #f4f3f2;} */
.txt_color3,.hvr_txt_color3:hover{color: #ff7272;} 
/*.txt_color4,.hvr_txt_color4:hover{color: #eae4df;} */

.bg_color1,.hvr_bg_color1:hover{background-color: #ffc031;}
/*.bg_color2,.hvr_bg_color2:hover{background-color: #f4f3f2;}*/
.bg_color3,.hvr_bg_color3:hover{background-color: #ff7272;} 
.bg_color4{background-color: #daeced;} 
.hvr_bg_color4:hover{background-color: #fff1cc;}

.border_color1,.hvr_border_color1:hover{border-color: #ffc031;}
/*.border_color2,.hvr_border_color2:hover{border-color: #f4f3f2;}*/
.border_color3,.hvr_border_color3:hover{border-color: #ff7272;}
/*.border_color4,.hvr_border_color4:hover{border-color: #eae4df;}*/

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){}
