@charset "UTF-8";

/* 必須指定 */
#contWrap {
    margin: 0 auto;
    width: 100%;
    color: #333;
}
#contWrap ul{
    list-style-type: none;
}
#contWrap h3,#contWrap h4,#contWrap ul,#contWrap a{
    margin: 0;
}
@media screen and (max-width: 750px)  {
	#contWrap {
		width: 100%;
        max-width: 100%;
        min-width: 100%;
	}
}
.product-box__ttl,.product-box__price,.product-box__catch{
    text-align: left;
}
/*共通パーツ
---------------------------------------*/
.link-btn:hover{
    text-decoration: none;
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.wrap{
    width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
    margin: 0 auto;
    text-align: center;
}
.wrap_wrap{
    margin-top: 70px;
}
.ttl3{
    width: 100%;
    font-size: 20px;
    font-weight: 700;
    color: #FFF;
    letter-spacing:5px;
    background-color: #002558;
    text-align: center;
    margin: 0 0 30px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.ttl3::before{
    content: url("images/ttl3_img01.png");
    position: absolute;
    top:14px;
    left:-100px;
}
.ttl3::after{
    content: url("images/ttl3_img02.png");
    position: absolute;
    top:14px;
    right:-100px;
}
.ttl3 span{
    font-size: 18px;
}
.ttl4{
    font-size: 24px;
    font-weight: 700;
}


#contWrap .ttle02-h3{
    width: 60%;
    font-size: 20px;
    font-weight: bold;
    color: #002558;
    letter-spacing:5px;
        background:#ff6;
    text-align: center;
    margin: 0 0 30px;
    padding-top: 20px;
    padding-bottom: 20px;
        margin: 20px auto;
}

.ttle02-h3::before{
    content: url("images/ttl3_img01.png");
    position: absolute;
    top:14px;
    left:-100px;
}
.ttle02-h3::after{
    content: url("images/ttl3_img02.png");
    position: absolute;
    top:14px;
    right:-100px;
}
.ttle02-h3 span{
    font-size: 18px;
        background:linear-gradient(transparent 60%, #ff6 60%);
}
.ttl4{
    font-size: 24px;
    font-weight: 700;
}




.textbox{
    font-size: 16px;
    text-align: left;
    line-height: 1.8;
}
.textbox a{
    color: #002558;
}
@media screen and (max-width: 750px) {
    .wrap{
        width: 94.66666666666667%;
        padding-top: 50px;
        margin: 0 auto;
        text-align: center;
        padding-bottom: 50px;
    }
    .wrap_wrap{
        margin-top: 50px;
    }
    .ttl3{
        font-size: 20px;
        line-height: 1.4;
        padding-bottom: 10px;
        border-bottom: #002558 solid 4px;
    }
    .ttl3 span{
        font-size: 16px;
        font-weight: 300;
    }
    .ttl3::before,.ttl3::after{
        content: none;
    }
    .ttl4{
        font-size: 20px;
    }
}
@media screen and (max-width: 320px){
    .ttl3 {
        font-size: 18px;
    }
    .ttl3 span{
        font-size: 14px;
    }
}

@media screen and (max-width: 750px) {
    #contWrap .ttle-h3,#contWrap .ttle02-h3{
        font-size: 16px;
    }
    #contWrap .ttle-h4{
        font-size: 16px;
        margin-top: 30px;
    }
    #contWrap .ttle-h4::before,#contWrap .ttle-h4::after{
        width: 26%;
    }
}


/*--テキスト---*/
span.hosoku{font-size: 14px;}
span.komi{font-size: 14px;}
.center{text-align: center;}
.bold{font-weight: 700;}
.cored{color: #FF375C;}
.fs18{font-size: 18px;}
.fs17{font-size: 17px;}
.fw{font-weight: bold;}
.fs20{font-size: 20px;}
.mab30{margin-bottom: 30px;} 
.ma10{margin: 30px auto 10px;} 
.ma50{margin: 50px auto;} 
.patb{padding: 30px 0 10px;} 
@media screen and (max-width: 750px) {
    .fs18{font-size: 14px;}
    .fs20{font-size: 14px;}
    .center{text-align: center;margin-left: 2%;margin-right: 2%;}
}


/*mv
---------------------------------------*/
#mv{
    width: 100%;
}

/*サインシティなら解決します
---------------------------------------*/
#resolution{
    width: 100%;
    background-color: #fff;
}
#resolution>.wrap{
    padding-bottom: 0;
}
#resolution .wrap_wrap{
    margin-top: 100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.resolution_box{
    width: 48.392857142857146%;
    margin-bottom: 100px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}
.resolution_box_box{
    background-color: #FFF;
    border-radius: 10px;
    padding: 40px 40px 20px 40px;
    border: solid 4px #2ab3d7;
    align-items: stretch;
    width: 100%;
}
.resolution_box_box img{
    height: 80px;
    margin-top: 10px;
    margin-bottom: 4px;
}
.resolution_box_box > p{
    margin-bottom: 14px;
}
.resolution_box_box strong{
    font-size: 24px;
    font-weight: 700;
}
/*吹き出し部分*/
.resolution_box_voice{
    font-size: 20px;
    color: #FFF;
    display: inline-block;
    width: 69.18819188191881%;
    background-color: #2ab3d7;
    border-radius: 10px;
    padding: 20px 0;
    position: absolute;
    top: -36px;
    left: 15%;
}
.resolution_box_voice::before{
    position: absolute;
    content: "";
    border-top: solid 20px #2ab3d7;
    border-left: solid 20px transparent;
    border-right: solid 20px transparent;
    bottom: -10px;
    left:45%;
}
@media screen and (max-width: 750px) {
    #resolution .wrap_wrap{
        margin-top: 70px;
        display: block;
    }
    .resolution_box{
        width: 100%;
    }
    #resolution>.wrap{
        padding-bottom: 60px;
    }
    .resolution_box_voice{
        font-size: 16px;
        width: 85.33333333333334%;
        left: 7%;
    }
    .resolution_box_voice h4{
        font-size: 20px;
    }
    .resolution_box_box{
        padding: 40px 6% 20px 6%;
    }
    .resolution_box:nth-child(4) > .resolution_box_box{
        padding-top: 60px;
    }
    .resolution_box_box strong{
        font-size: 20px;
    }
}
@media screen and (max-width: 320px) {
    .resolution_box_voice h4{
        font-size: 18px;
    }
}
/*専門のお値打ちセット看板です！
---------------------------------------*/
#resolution{
    width: 100%;
    background-image: url("images/resolution_bg.png");
}
#resolution>.wrap{
    padding-bottom: 0;
}
#resolution .wrap_wrap{
    margin-top: 100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.resolution_box{
    width: 48.392857142857146%;
    margin-bottom: 100px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}
.resolution_box_box{
    background-color: #FFF;
    border-radius: 10px;
    padding: 40px 40px 20px 40px;
    border: solid 4px #002558;
    align-items: stretch;
    width: 100%;
}
.resolution_box_box img{
    height: 80px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.resolution_box_box > p{
    margin-bottom: 14px;
}
.resolution_box_box strong{
    font-size: 24px;
    font-weight: 700;
}
/*吹き出し部分*/
.resolution_box_voice{
    font-size: 20px;
    color: #FFF;
    display: inline-block;
    width: 79%;
    background-color: #002558;
    border-radius: 10px;
    padding: 20px 0;
    position: absolute;
    top: -36px;
    left: 15%;
}
.resolution_box_voice::before{
    position: absolute;
    content: "";
    border-top: solid 20px #002558;
    border-left: solid 20px transparent;
    border-right: solid 20px transparent;
    bottom: -10px;
    left:45%;
}
@media screen and (max-width: 750px) {
    #resolution .wrap_wrap{
        margin-top: 70px;
        display: block;
    }
    .resolution_box{
        width: 100%;
    }
    #resolution>.wrap{
        padding-bottom: 2px;
    }
    .resolution_box_voice{
        font-size: 16px;
        width: 85.33333333333334%;
        left: 7%;
    }
    .resolution_box_voice h4{
        font-size: 20px;
    }
    .resolution_box_box{
        padding: 40px 6% 20px 6%;
    }
    .resolution_box_box strong{
        font-size: 20px;
    }
}
@media screen and (max-width: 320px) {
    .resolution_box_voice h4{
        font-size: 18px;
    }
}


/*サインシティならこんなご依頼も可能です
---------------------------------------*/
#service{
    width: 100%;
}
.service_box{
    display: flex;
    margin-bottom: 0;
}
#service h4{
    text-align: left;
    margin: 20px 0 42px 40px;
    position: relative;
}
#service h4::before{
    content: "";
    display: inline-block;
    position: absolute;
    width: 110%;
    border-bottom: solid 4px #2ab3d7;
    bottom: -20px;
    left: -40px;
}
#service .textbox{
    margin: 0 40px;
}
#service img{
    width: 50%;
}
@media screen and (max-width: 750px) {
    .service_box{
        display: block;
    }
    #service h4{
        margin: 20px 0;
        text-align: center;
    }
    #service h4::before{
        width: 50%;
        left: 90px;
        bottom: -14px;
    }
    #service .textbox{
        margin: 30px 0 0 0;
    }
    #service img{
        width: 100%;
    }
}




    /*人気商品紹介ページ一覧
---------------------------------------*/
#topics{
    width: 100%;
}
#topics .wrap{
    padding-top: 120px;
    padding-bottom: 60px;
}
#topics .wrap_wrap{
    width: 82.93103448275862%;
    margin: 50px auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#topics a{
    display: block;
    margin-bottom: 40px;
    width: 46.77754677754678%;
}
#topics a > img{
    width: 100%;
}
@media screen and (max-width: 750px) {
    #topics .wrap{
        padding-top: 50px;
    }
    #topics .wrap_wrap{
        width: 94.66666666666667%;
        margin: 50px auto 0 auto;
        display: block;
    }
    #topics a{
        display: block;
        margin-bottom: 16px;
        width: 100%;
    }
    #topics a > img{
        width: 100%;
    }
}
/*オリジナルデザインもお任せください！
---------------------------------------*/
#design-link ul{
    margin: 0 auto;
    padding: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
}  
#design-link li{
    width: 48.82882882882883%;
}
#design-link img{
    width: 100%;
}
@media screen and (max-width: 750px) {
    #design-link .wrap{
        padding-bottom: 60px;
    }
    #design-link .wrap_wrap{
        padding: 0;
    }
    #design-link ul{
        display: block;
    }
    #design-link li{
    width: 100%;
}
}


/*商品をもっと見るボタン
----------------------------------*/
.listpageBtn{
    margin: 10px auto;
    text-align: center;
        padding-bottom: 50px;
}
.listpageBtn a{
    display: inline-block;
    text-decoration: none;
    border: 3px solid #ed4574;
    background: #fff;
    color: #ed4574;
    border-radius: 3px;
    padding: 10px 100px;
    font-weight: 700;
    line-height: 1.4;
}
@media screen and (max-width: 750px) {
.listpageBtn a{
        padding: 10px 0;
        width: 95%;
    }
}


/*contactB お問合せエリア-FAX付き
---------------------------------------*/
.contactB-area{
    background-color: #faf8cb;
}
.contactB-area>div:nth-child(1){
    text-align: center;
    background-color: #FFF;
    padding: 30px 0 50px;
}
.contactB-area>div:nth-child(2){
    display: flex;
    justify-content: space-between;
    width: 75.86%;
    margin: 0 auto;
    padding: 30px 0;
}
.contactB-area>div:nth-child(1)>h4{
    text-align: center;
    font-size: 20px;
    color: #ed0076;
    font-weight: 600;
    margin-bottom: 18px;
}
.contactB-area>div:nth-child(2) h4{
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}
.contactB-tel,.contactB-fax{
    text-align: center;
    width: 48.86%;
    background-color: #FFF;
    padding: 20px;
    border-radius: 6px;
}
.contactB-tel-no{
    color: #ff6c00;
    text-decoration: none;
    font-size: 42px;
    font-weight: 700;
    line-height: 0.8;
    margin-left: 10px;
}
.contactB-tel-Tel{
    font-size: 24px;
    font-weight: 600;
    color: #ff6c00;
    margin-top: 22px;
}
.contactB-tel-eigyo{
    margin: 5px 0;
    font-size: 14px;
}
.contactB-fax>div{
    display: flex;
    margin: 0 auto;
}
.contactB-fax>div>div:nth-child(1){
    width: 18%;
}
.contactB-fax>div>div:nth-child(2){
    width: 82%;
}
.contactB-fax-no{
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 6px;
}
.contactB-btn-form,.contactB-btn-fax{/*ボタン*/
    text-align: center;
    font-weight: 600;
    display: inline-block;
    background-color: #009245;
    border-bottom: solid 4px #006837;
    color: #fff;
    border-radius: 6px;
    padding: 15px 11% 12px 11%;
    text-decoration: none;
}
.contactB-btn-form:hover,.contactB-btn-fax:hover,.contactB-tel-no:hover{/*ボタン-ホバー*/
    text-decoration: none;
    opacity: 0.8;
}
.contactB-btn-form{
    font-size: 20px;
}
.contactB-fax>div>div:nth-child(1) img{
    border: solid 1px #ccc;
}
@media screen and (max-width: 750px) {
    .contactB-area>div:nth-child(2){
        display: block;
        width: auto;
    }
    .contactB-tel,.contactB-fax{
        width: 95%;
        margin: 0 auto 10px auto;
    }
    .contactB-tel-Tel{
        margin-top: 0;
    }
    .contactB-tel-no{
        font-size: 30px;
    }
    .contactB-area>div:nth-child(1)>h4 {
        font-size: 14px;
        margin-left:  2%;
        margin-right: 2%;
    }
}
@media screen and (max-width: 340px) {
    .contactB-fax>div{
        display: block;
    }
    .contactB-fax>div>div:nth-child(1){
        width: 38%;
        margin: 0 auto;
    }
    .contactB-fax>div>div:nth-child(2){
        width: auto;
    }
}

/*バナー
---------------------------------------*/
#contWrap .btnArea {
    max-width: 1000px;
    margin: 0 auto;
    }
@media screen and (max-width: 750px) {
    #contWrap .btnArea {
    max-width: 1000px;
    text-align: center;margin-left: 2%;margin-right: 2%;
    }
}