﻿.bg_color3{
    background-color: #f9e4f4;
}
.mg_b-80px{
    margin-bottom: 80px;
}
/*fv*/
main.toppage{
    background-image: url('Dup/img/colorful_bg.jpg');
    background-size: contain;
    background-repeat: no-repeat;
}
.catch{
    display: none;
}
#main_img .triangle01{
    display: none;
}
#header #sns_link{
    background-color: rgba(254,254,254,0.7);
}
.head_tel.mg_t-50px{
    margin-top: 250px;
}
.head_tel p, .head_tel a{
    color: #fff;
}
.head_tel a{
    transition-duration: 0.8s;
}
.head_tel a:hover{
    opacity: 0.6;
    transition-duration: 0.8s;
}

.head_tel.border_so3{
    border: none;
}
.head_tel.border_color2 {
    border-color: #fab822;
}
@media (max-width: 768px){
    .mainwrap-r h1{
        width: 100px;
    }
    main.toppage{
        background-image: url('Dup/img/colorful_bg_sp.jpg');
    }
}
@media (max-width: 668px){
    .mainwrap-r h1{
        width: 65px;
    }    
}
/*固定バナー*/
.fixbnr{
    transition-duration: 0.4s;
}
.fixbnr.posi_abs{
    position: fixed;
}
.fixbnr.active{
    animation: move forwards 0.7s linear;
}

#page-top{
    right: 35px;
}
#page-top.bg_color1{
    background-color: #fab822;
}
@keyframes move{
    0%{
        transform: translate(0);
    }
    10%{
        transform: translate(0, -20px);
    }
    20%{
        transform: translate(0, -40px);
    }
    30%{
        transform:translate(0, -80px);
    }
    40%{
        transform:translate(0, -160px);
    }
    50%{
        transform:translate(0, -320px);
    }
    60%{
        transform:translate(25px, -160px);
    }
    70%{
        transform:translate(25px, -200px);
    }
    80%{
        transform:translate(25px, -160px);
    }
    90%{
        transform:translate(25px, -180px);
    }
    100%{
        transform:translate(25px, -160px);
    }
}
.fixbnr.active.bottomReached{
    animation: none;
    transform: translate(-125px, 30px);
    transition-duration: 0.8s;
}
@media (max-width: 768px){
    .fixbnr.active{
        animation: none;
    }
    .fixbnr.active.bottomReached{
        transform: none;
    }
}
@media (max-width: 668px){
    .fixbnr{
        width: 120px;
    }
}
/*header*/
#con_nav li a.bg_color1{
    background-color: #fab822;
}
@media (max-width: 768px){
    .head_line{
        display: none;
    }
}
/*TOP*/
.img-container:before{
    background-image: url('./Dup/img/TOP5.jpg');
}
#top_news.bg_white{
    background-color: #f9e4f4;
}
#top_news .cms1inner.bg_white{
    background-color: transparent;
}

#top_contents1{
    background-image: url('./Dup/img/colorful_bg2.jpg');
    background-size: cover;
}

#top_contents1 .con1_txt_wrap {
    padding-top: 50px;
    padding-left: 5%;
    padding-bottom: 50px;
    padding-right: 4%;
    margin-top: 100px;
    margin-left: 5%;
    margin-bottom: 100px;
    margin-right: 8%;
    background-color: rgba(255,255,255,0.8);
    border-radius: 24px;
}
#top_contents1 .con1_txt_wrap.grid_6 {
    width: 41%!important;
}
#top_contents3 h3.con_title br{
    display: none;
}
#top_contents3 .font_2dw{
    font-size: calc(1rem + 2px);
}
#top_contents3 .con3_img4{
    position: relative;
}
#top_contents3 .con3_img4 .ownerProf {
    top: 0;
    left: -440px;
    max-width: 400px;
}
@media (max-width: 1600px){
    #top_contents3{
        padding-bottom: 280px;
    }
    #top_contents3 .con3_img4 .ownerProf {
        top: 340px;
        left: -302px;
        max-width: 400px;
    }
}
@media (max-width: 768px){
    #top_contents1 .con1_txt_wrap.grid_6{
        width: 100%!important;
    }
    #top_contents1 .con1_img2{
        bottom: -120px;
    }
    #top_contents3 .con3_img4 .ownerProf {
        top: 0;
        left: -440px;
        max-width: 400px;
    }
    #top_contents3{
        padding-bottom: 0;
    }
    #top_contents3 .con3_img4 .ownerProf{
        left: -360px;
    }
    #top_contents3 .ownerProf.posi_abs{
    position: relative;
}
}
@media (max-width: 667px){
    #top_contents3 h3.con_title br{
        display: block;
    }
    #top_contents3 .con3_img4 .ownerProf{
        width: 290px;
    }
    #top_contents3 .con3_img4 .ownerProf{
        left: -175px;
    }
}
@media (max-width: 376px){
    #top_contents1 .con_title.font_8up{
            font-size: calc(1rem + 4px);
    }
    #top_contents1 .con1_img2 div{
        min-width: 190px;
    }
    #top_contents3 .con_title.font_8up{
            font-size: calc(1rem + 4px);
    }

}
/*top-cms*/
#top_news figure{
    border: solid 1px #601884;
    border-radius: 24px;
}
/*制作事例*/
#cms_3-a .cate_list li:last-child{
    display: none;
}

/*店舗情報*/
.info_box.border_color4{
    border-color: #E86368;
}
/*お問い合わせ*/
#page08 .tel{
    max-width: 300px;
    margin: 40px auto 0 auto;
}
@media (max-width: 330px){
    a.contMail{
        font-size: 20px;
    }
}
/*サイトマップ*/
#page10 ul li a:hover{
    border-color: #E86368;
}
/*footer*/
#footer_info_logo.grid_2{
    width: 5.66667%!important;
}
footer .footer_item.pd_b-30px{
    padding-bottom: 60px;
}
.footer_tel.pd_10px, .footer_tel.pd_l-20px, .footer_tel.pd_r-20px {
    padding: 0;
    padding-left: 0;
    padding-right: 0;
}
.footer_tel.border_so3{
    border: none;
}
.footer_tel p{
    text-align: left;
    font-size: 16px;
    margin-bottom: 20px;
}
@media (max-width: 768px){
    .footer_tel a{
        padding-right: 20px;
    }
}
@media (max-width: 667px){
    #footer_info .info_txt_wrap{
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .footer_tel a{
        padding-right:0;
    }
}
/* ---------- loopSlider ---------- */
#topcms_gallery_type1 .loopSliderWrap{
    top: 0;
    left: 0;
    height: 450px;
}
#topcms_gallery_type1 .loopSlider {
    margin: 0 auto;
    height: 450px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
#topcms_gallery_type1 .loopSlider .ul {
    height:450px;
    float: left;
    overflow: hidden;
}
#topcms_gallery_type1 .loopSlider .ul .li {
    width: 450px;
    height: 450px;
    float: left;
    display: inline;
    overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding: 0;
}
#topcms_gallery_type1 .loopSlider .ul .li img{
    border-radius: 0;
}
#topcms_gallery_type1 .loopSliderWrap:after {
    content: "";
    display: none;
    clear: none;
}

/*リンクボタン*/
#topcms_gallery_type1 .btn{z-index: 3;}
#topcms_gallery_type1 .btn a::before {
    content: '';
    position: absolute;
    bottom: 55px;
    right: 27%;
    width: 42%;
    height: 1px;
    background: #333;
    transition: all .3s;
}
#topcms_gallery_type1 .btn a::after {
    content: '';
    position: absolute;
    bottom: 60px;
    right: 27%;
    width: 15px;
    height: 1px;
    background: #333;
    transform: rotate(35deg);
    transition: all .3s;
}
#topcms_gallery_type1 .btn a:hover::before {
    right: 16%;
    background: #fff;
}
#topcms_gallery_type1 .btn a:hover::after {
    right: 15%;
    background: #fff;
}
#topcms_gallery_type1 .btn {
    display: block;
}
#topcms_gallery_type1 .btn a {
    background: #fff;
    color: #212121;
    width: 200px;
    height: 200px;
    display: flex;
    align-content: center;
    justify-content: center;
    border-radius: 50%;
    flex-wrap: wrap;
    transition: all 0.4s;
}
#topcms_gallery_type1 .btn a:hover {
    background: #1c1c1c;
    color: #fff;
}
#topcms_gallery_type1 .btn a span, .btn a strong {
    text-align: center;
}
@media(max-width: 768px) {
#topcms_gallery_type1,#topcms_gallery_type1 .loopSliderWrap,#topcms_gallery_type1 .loopSlider,#topcms_gallery_type1 .loopSlider ul,#topcms_gallery_type1 .loopSlider .ul .li{
	height: 280px;
}
#topcms_gallery_type1 .loopSlider .ul .li{
    width: 280px;
}
#topcms_gallery_type1 {
    padding-bottom: 0;
    padding-top: 0;
}
}
@media(max-width: 667px) {
#topcms_gallery_type1,.loopSliderWrap,.loopSlider,.loopSlider .ul,.loopSlider .ul .li{
	height: 179px!important;
}
#topcms_gallery_type1 .loopSlider .ul .li{
    width: 179px;
}
#topcms_gallery_type1 .btn a::after {
    bottom: 35px;
    right: 27%;
}
#topcms_gallery_type1 .btn a::before {
    bottom: 30px;
    right: 27%;
}
#topcms_gallery_type1 .btn a {
    width: 140px;
    height: 140px;
    line-height: 1.7;
}
}