﻿/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
:root{
    --color1: #1d2089;
    --color2: #c9c9c9;
    --color3: #bcdd3d;
    --color4: #f5fbfd;
	--text: #1e1e1e;
	--black: #111111;
	--red: #C12326;
    --base: #ffffff;
    
    --font1: 16px;
    --fontB1: 34px;
    --fontB2: 28px;
    --font-jp: 'Noto Sans JP', "游ゴシック Medium", sans-serif;
}
.mg_t-80px_sppx{margin-top: 80px;}
.mg_b-30px_sppx{margin-bottom: 30px;}

/* タブレット */
@media screen and (max-width: 768px){
    .mg_b-30px_sppx{margin-bottom: 24px;}
}

/* スマホ */
@media screen and (max-width: 667px){
    :root{
        --fontB1: 24px;
        --fontB2: 23px;
    }
    .mg_t-80px_sppx{margin-top: 40px;}
    .mg_b-30px_sppx{margin-bottom: 8px;}
}

/*--------------------------------------------
 募集要項
----------------------------------------------*/
#cms_6-b .cate_box:first-of-type,.cms_6-b .cate_box:first-of-type{border-color: var(--color1);}
#cms_6-b .cate_box:last-of-type .box_txt1,.cms_6-b .cate_box:last-of-type .box_txt1{
    border-bottom: none;
}
#cms_6-b .cate_box, #cms_6-b .cate_box .box_txt1, #cms_6-b .cate_box .box_txt2,
.cms_6-b .cate_box, .cms_6-b .cate_box .box_txt1, .cms_6-b .cate_box .box_txt2{
    border-color: var(--color1);
    background-color: var(--base);
}
#cms_6-b .cate_box .box_txt1,.cms_6-b .cate_box .box_txt1{
    background-color: var(--color1);
    color: var(--base);
    border-bottom: 1px solid var(--color2);
}
/*--------------------------------------------
 問い合わせ
----------------------------------------------*/
.contact_line{
    width: min(450px, 100%);
    margin: 0 auto;
}
.contact_line a{padding: 0!important;}

.contact_tel{
    margin-top: 20px;
}
.contact_tel a{
    padding: 10px 16px;
    width: min(450px, 100%);
    border-radius: 15px;
}

/*スマホ*/
@media screen and (max-width: 667px){
    .page8 .contact_tel a{
        letter-spacing: 0em;
        width: min(220px, 100%);
    }
    .contact_other{padding-bottom: 30px;}
}

/*--------------------------------------------
 テンプレートの調整
----------------------------------------------*/
.load_logo figure{margin:0;}

/*--------------------------------------------
 白黒反転
----------------------------------------------*/
.content_wrap,#page_title .sns_link li,.g-menu,.top_cms_box,#header,#main .sns_link li{
    background-color: #fff;
}
.back_color{
        background: linear-gradient(rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.975) 20%, rgba(255,255,255,0.975) 80%,rgba(255,255,255,0.5) 100%);
}
#contents .box .box_item:before{background-color: rgba(255,255,255,0.6);}
.menu-body .txt_white,footer .txt_white, main .txt_white,#header .txt_white{
    color: var(--black);
}
.no.txt_white, .shop_info .txt_white, .cate_list .txt_white,.page7 .box_item .txt_white,.page9 .top_txt,.page9 .box_wrap a{
    color: var(--base);
}
.page9 .box_wrap a:hover{
    color: var(--color1);
}
footer .entry.more a:after{
    background-color: var(--base);
}
#page-top .scroll_u span{
    background-color: var(--color1);
}
footer.bg_color1{
    background-color: var(--color4);
}
#page_title:before{
    /*background: linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #ededef 50.5%) no-repeat top left/100% 100%;*/
    display: none;
}
.no.bg_color1{background-color: var(--color1);}
#contents .box .box_item:after{
    background: linear-gradient(to bottom left, rgba(255,255,255,0) 50%, var(--color1) 50.5%) no-repeat top left/100% 100%;
}
#cms_6-b .box_txt1,.cms_6-b .box_txt1{background-color: var(--color4);}
.g-menu-btn.active:after{
    border-color: var(--color1);
}
.g-menu-btn.active .dot span{
    background: var(--color1);
}
/* スマホ */
@media screen and (max-width: 667px){
    #contents .box .box_item:after{
        background: linear-gradient(to bottom left, var(--color1) 50%, rgba(255,255,255,0) 50.5%) no-repeat top left/100% 100%;
    }
}

/* --------------------------------------------
 メインイメージ 
---------------------------------------------*/
/*#main::before{*/
    /*content: "";*/
    /*width: 65%;*/
    /*height: 100%;*/
    /*position: absolute;*/
    /*bottom: 0;*/
    /*right: 0;*/
    /*background: linear-gradient(270deg, #fff 55%, transparent 100%);*/
/*}*/
#main,.cms_img1,#main .cms_img1 img{
    height: calc(100vw * (1080 / 1920))!important;
}
#main .main_box{
    left: 50%;
    transform: translate(-50%,-50%);
    -webkit- transform: translate(-50%,-50%);
    /*right: 8%;*/
}
#main .main_box .logo img{
    max-width: 230px;
}
#main .main_box .more a{
    width: 92%;
}
#main .main_box .catch{
    margin-bottom: 20px;
}
@media screen and (max-width: 1220px){
    #main .main_box{
        right: 6%;
        width: 45%;
    }
}
/* タブレット */
@media screen and (max-width: 768px){
    /*    #main::before{*/
    /*    content: "";*/
    /*    width: 100vw;*/
    /*    height: 65vh;*/
    /*    position: absolute;*/
    /*    bottom: 0;*/
    /*    right: auto;*/
    /*    left: 0;*/
    /*    background: linear-gradient(0deg, #fff 50%, transparent 100%);*/
    /*}*/
    #main .main_box{
        top: auto;
        bottom: 5vh;
        right: auto;
        left: 50%;
        width: 70%;
        transform: translate(-50%, 0%);
    }
    #main .main_box .more a{
        width: 86.5%;
    }
}
/* スマホ */
@media screen and (max-width: 667px){
    #main,.cms_img1,#main .cms_img1 img{
        height: 100vh!important;
        max-height: calc(100vw * 1.6)!important;
    }
    /*#main::before{*/
    /*    content: "";*/
    /*    width: 100vw;*/
    /*    height: 65vh;*/
    /*    position: absolute;*/
    /*    bottom: 0;*/
    /*    right: auto;*/
    /*    left: 0;*/
    /*    background: linear-gradient(0deg, #fff 50%, transparent 100%);*/
    /*}*/
    #main .main_box{
        top: auto;
        bottom: 10vh;
        right: auto;
        left: 50%;
        width: 84%;
        transform: translate(-50%, 0%);
    }
    #main .main_box .more a{
        width: 86.5%;
        background-color: var(--color3);
            color: var(--color1);
    }
    #main .main_box .more a:hover{
        background-color: var(--color1);
            color: var(--base);
    }
}



/*--------------------------------------------
 TOPコンテンツ、ほか
----------------------------------------------*/
.catch_txt h2{
    font-size: var(--fontB1);
    text-align: center;
    color: var(--color1);
    margin-bottom: 40px;
    line-height: 1.7;
}
.underline{
    border-bottom: solid 4px var(--color1);
}
#contents h2{
    font-size: var(--fontB2);
    font-weight: bold;
}
#contents .box .box_item{
    font-weight: bold;
    color: var(--text);
}

.cms_title p span{
    color: var(--color3);
}

/* スマホ */
@media screen and (max-width: 667px){
    .catch_txt h2{
        letter-spacing: 0em;
        margin-bottom: 25px;
    }
    #contents .box .box_item{
        padding: 50px 6%;
        letter-spacing: 0.03em;
        line-height: 1.7;
        font-weight: normal;
    }
    #contents .box .box_item:before{
        background-color: rgba(255,255,255,0.8);
    }
}
/*--------------------------------------------
 CMS
----------------------------------------------*/
#page_title:after{background-color: transparent;}
#page_title{
    background-attachment: scroll;
    background-position: bottom;
}
/* スマホ */
@media screen and (max-width: 667px){
    .page_title_box .font_30up{
        letter-spacing: 0em;
        font-size: 28px;
    }
}

/* --------------------------------------------
 リンクボタン 
---------------------------------------------*/
.linkStyle,a{
	color: var(--color1);
	text-decoration: underline;
	transition: all 0.5s;
}
a{
	text-decoration: none;
}
.linkStyle:hover,a:hover{
	opacity: 0.7;
	text-decoration: none;
}

.cate_list li a,#page10 ul li a,.more a{
    background-color: var(--color1);
    color: var(--base);
    font-weight: bold;
    padding: 10px 20px;
    transition: all 0.8s;
}
#page10 ul li a{
    padding-top: 15px;
    padding-bottom: 15px;
}
.cate_list li a:hover,#page10 ul li a:hover,.more a:hover{
    background-color:var(--color3);
    color: var(--color1);
    opacity: 1;
}
.cate_list li a{
    width: 80%;
}
.cate_list li a:hover{
    transform: scale(1.05) translateY(-2px);
}

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){
    .page10 .more a{width: 70vw;}
    .more a:after{width: 10%;}
}
/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
html,body,.font_10,.font_11,.font_12,.font_13,.font_14,.font_15{font-size: var(--font1);}
.font_2up{font-size: max(calc(var(--font1) + 2px), calc(1rem  + 2px));}
.font_4up{font-size: max(calc(var(--font1) + 4px), calc(1rem  + 4px));}
.font_2dw{font-size: max(calc(var(--font1) - 2px), calc(1rem  - 2px));}
.font_4dw{font-size: max(calc(var(--font1) - 4px), calc(1rem  - 4px));}
.font_6dw{font-size: max(calc(var(--font1) - 6px), calc(1rem  - 6px));}
.back_color{
    background: linear-gradient(rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.975) 20%, rgba(255,255,255,0.975) 30%,rgba(255,255,255,0.5) 100%);
}

#loader.load #loading_bg,.g-menu.is-active,.cms_bg{
    background: linear-gradient(45deg, #c7c7cd 10%, #fff 85%);
}
.logo img{max-width: 150px;}
#footer .logo img{max-width: 400px;}

.catch_txt{
    background-color: rgba(255,255,255,0.8);
}

.content_wrap, #page_title .sns_link li, .g-menu, .top_cms_box, #header, #main .sns_link li{
    background-color: transparent;
}

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){
    .shop_info h2{
        letter-spacing: 0em;
        width: 80%;
    }
}


/* color */
body, .txt_color_nomal, .hvr_txt_color_nomal:hover{color: var(--text);}
.linkStyle{transition: 0.5s;color: var(--text)}
.linkStyle:hover{opacity: 0.7}

.txt_white, .hvr_txt_white:hover{color: white;}
.txt_red, .hvr_txt_red:hover{color: var(--red);}
.txt_color1, .hvr_txt_color1:hover{color: var(--color1)} /* メインカラー */
.txt_color2, .hvr_txt_color2:hover{color: var(--color2)} /* サブカラー */
.txt_color3, .hvr_txt_color3:hover{color: var(--color3)} /* アクセントカラー1 */
.txt_color4, .hvr_txt_color4:hover{color: var(--color4)} /* アクセントカラー2 */

/* background-color */
.bg_white, .hvr_bg_white:hover{background-color: white} /* 白背景 */
.bg_black, .hvr_bg_black:hover{background-color: var(--black)} /* 黒背景 */
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1)} /* メインカラー */
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2)} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: var(--color3)} /* アクセントカラー1 */
.bg_color4, .hvr_bg_color4:hover{background-color: var(--color4)} /* アクセントカラー2 */
.bg_color_clear, .hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.border_white, .hvr_border_white:hover{border-color: white}
.border_black, .hvr_border_black:hover{border-color: var(--black)}
.border_color1, .hvr_border_color1:hover{border-color: var(--color1)}
.border_color2, .hvr_border_color2:hover{border-color: var(--color2)}
.border_color3, .hvr_border_color3:hover{border-color: var(--color3)}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4)}