﻿
/* ---------- font ---------- */
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

:root{
    --font-jp: "Shippori Mincho","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";;
}
body, .font_sans-serif, .font_serif, .font_en, .date, a[href^="tel:"], a[href^="mailto:"]{
    font-family: var(--font-jp)!important;
    font-weight: 500;
}
.font_bold, h2, h3, .txt2, .txt4{
    font-weight: 700;
}


/* ---------- color ---------- */
.head_banner a:hover{
    background-color: #ffffff;
    color: var(--color1);
}
/*{
    background: var(--color1);
    background: linear-gradient(188deg, rgb(72 125 199) 0%, rgb(25 65 161) 24%, rgba(0, 64, 143, 1) 50%, rgb(20 37 129) 90%, rgb(37 82 147) 100%);
}*/
.button:hover::after {
    box-shadow: inset 0 0 0 15em var(--color1);
}
#tel_txt .title, .txt_color3, .hvr_txt_color3:hover {
    color: #a78e67 !important;
}



/* ======================================================================================
　　all
======================================================================================== */

html, body {
    font-size: 18px;
}
body{
    line-height: 1.7;
}

/* ---------- header ---------- */
header.bg_color4, #contents3, #fakeloader{
    background: url( "../img/header_bg.jpg" ) center / cover no-repeat;
}
#main_menu ul li a,header .tel_bt a {
    color: #fff;
}
#main_menu ul li a::before{
    background-color: #ffffff;
}
.hamburger__icon, .hamburger__icon:before, .hamburger__icon:after {
    background-color: rgb(255 255 255);
}
.hamburger.active .hamburger__icon:before, .hamburger.active .hamburger__icon:after{
    background-color: var(--color1);
}



/* ---------- footer ---------- */
#copyright{
   font-size: 23px; 
}


/*======================================================================================
　　top
======================================================================================== */
#main_img {
    max-height: 100%;
    min-height: 100%;
}
.txt7, .txt5 {
    font-size: 27px;
    margin-bottom: 32px;
}



/*======================================================================================
　　under
======================================================================================== */

article.page_wrap {
    padding: 100px 6%;
}

#cms_2-b .cate_img1{
    max-width: 650px;
}
.cms_2-a .swiper-button-prev, .cms_2-a .swiper-button-next{
    display: none;
}

.form_wrap {
    padding: 50px 30px;
    background-color: var(--color2);
    border-radius: 5px;
}
.line_bnr{
    width: min(100%, 404px);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 67px;
    margin-top: -7px;
}




/*======================================================================================
　　size
======================================================================================== */
/* ---------- tablet ---------- */
@media screen and (max-width: 768px){
.head_box {
    max-width: 374px;
}
header #logo {
    max-width: 377px;
}
.fat-nav li {
        font-size: 19px;
    }

#contents1 {
    padding: 50px 10%;
}
#contents3 {
    padding: 0 10% 0px;
}
#contents3 .grid_6 {
    margin-top: -50px;
    width: 90% !important;
    margin: -50px auto 100px;
}
#contents3 .title {
    font-size: 25px;
}
.cms_title h2{
    font-size: 25px;
}
}

/* ---------- mobile ---------- */
@media screen and (max-width: 667px){
html, body {
    font-size: 16px;
}
.font_14 {
    font-size: 16px!important;
}
.fat-nav li {
    font-size: 16px;
}

header #logo {
    padding: 0px 31px 3px 0px;
    max-width: 293px;
}
.main_box {
    padding-top: 64px;
}
#contents1 {
    padding: 50px 5%;
}
#contents2 {
    padding: 50px 5% 135px;
}
#contents3 {
    padding: 0 5% 50px;
}
#contents3 .grid_6 {
    margin-top: -50px;
    width: 90% !important;
    margin: -50px auto 10px;
}
.form_wrap {
    padding: 30px 15px;
    background-color: transparent;
    border-radius: 5px;
}
.txt2 {
    font-size: clamp(18px, 6vw, 25px);
    letter-spacing: 0;
}
#contents3 .title {
    line-height: 1.5;
    letter-spacing: 0px;
}
#copyright {
    font-size: 18px;
}
}






/* フォントサイズ */
.font_10{font-size: 11px;}.font_11{font-size: 12px;}.font_12{font-size: 13px;}.font_13{font-size: 14px;}
.font_14{font-size: 18px;}.font_15{font-size: 16px;}.font_16{font-size: 17px;}.font_17{font-size: 18px;}
.font_18{font-size: 19px;}.font_19{font-size: 20px;}.font_20{font-size: 25px;}.font_21{font-size: 22px;}
.font_22{font-size: 23px;}.font_23{font-size: 24px;}.font_24{font-size: 28px;}.font_25{font-size: 26px;}
.font_26{font-size: 27px;}.font_27{font-size: 28px;}.font_28{font-size: 29px;}.font_29{font-size: 30px;}
.font_30{font-size: 31px;}.font_31{font-size: 32px;}.font_32{font-size: 33px;}.font_33{font-size: 34px;}
.font_34{font-size: 35px;}.font_35{font-size: 36px;}.font_36{font-size: 37px;}.font_37{font-size: 38px;}
.font_38{font-size: 39px;}.font_39{font-size: 40px;}.font_40{font-size: 41px;}.font_41{font-size: 42px;}
.font_42{font-size: 43px;}.font_43{font-size: 44px;}.font_44{font-size: 45px;}.font_45{font-size: 46px;}
.font_46{font-size: 47px;}.font_47{font-size: 48px;}.font_48{font-size: 49px;}.font_49{font-size: 50px;}
.font_50{font-size: 51px;}

/* フォントサイズ 基準値から+- */
.font_100per{font-size:-webkit-calc(1rem + 1px);font-size : calc(1rem + 1px);}
.font_200per{font-size:-webkit-calc(2rem + 1px);font-size : calc(2rem + 1px);}
.font_2up{font-size:-webkit-calc(1rem + 3px);font-size : calc(1rem + 3px);}
.font_4up{font-size:-webkit-calc(1rem + 5px);font-size : calc(1rem + 5px);}
.font_6up{font-size:-webkit-calc(1rem + 7px);font-size : calc(1rem + 7px);}
.font_8up{font-size:-webkit-calc(1rem + 9px);font-size : calc(1rem + 9px);}
.font_10up{font-size:-webkit-calc(1rem + 11px);font-size : calc(1rem + 11px);}
.font_12up{font-size:-webkit-calc(1rem + 13px);font-size : calc(1rem + 13px);}
.font_14up{font-size:-webkit-calc(1rem + 15px);font-size : calc(1rem + 15px);}
.font_2dw{font-size:-webkit-calc(1rem - 1px);font-size : calc(1rem - 1px);}
.font_4dw{font-size:-webkit-calc(1rem - 3px);font-size : calc(1rem - 3px);}
.font_6dw{font-size:-webkit-calc(1rem - 5px);font-size : calc(1rem - 5px);}
.font_8dw{font-size:-webkit-calc(1rem - 7px);font-size : calc(1rem - 7px);}

/*タブレット*/
@media screen and (max-width: 768px){
/* フォントサイズ　タブレット */
.font_10_tb{font-size: 11px;}.font_11_tb{font-size: 12px;}.font_12_tb{font-size: 13px;}.font_13_tb{font-size: 14px;}
.font_14_tb{font-size: 15px;}.font_15_tb{font-size: 16px;}.font_16_tb{font-size: 17px;}.font_17_tb{font-size: 18px;}
.font_18_tb{font-size: 19px;}.font_19_tb{font-size: 20px;}.font_20_tb{font-size: 21px;}.font_21_tb{font-size: 22px;}
.font_22_tb{font-size: 23px;}.font_23_tb{font-size: 24px;}.font_24_tb{font-size: 25px;}.font_25_tb{font-size: 26px;}
.font_26_tb{font-size: 27px;}.font_27_tb{font-size: 28px;}.font_28_tb{font-size: 29px;}.font_29_tb{font-size: 30px;}
.font_30_tb{font-size: 31px;}.font_31_tb{font-size: 32px;}.font_32_tb{font-size: 33px;}.font_33_tb{font-size: 34px;}
.font_34_tb{font-size: 35px;}.font_35_tb{font-size: 36px;}.font_36_tb{font-size: 37px;}.font_37_tb{font-size: 38px;}
.font_38_tb{font-size: 39px;}.font_39_tb{font-size: 40px;}.font_40_tb{font-size: 41px;}.font_41_tb{font-size: 42px;}
.font_42_tb{font-size: 43px;}.font_43_tb{font-size: 44px;}.font_44_tb{font-size: 45px;}.font_45_tb{font-size: 46px;}
.font_46_tb{font-size: 47px;}.font_47_tb{font-size: 48px;}.font_48_tb{font-size: 49px;}.font_49_tb{font-size: 50px;}
.font_50_tb{font-size: 51px;}

/* フォントサイズ 基準値から+- */
.font_100per_tb{font-size:-webkit-calc(1rem + 1px);font-size : calc(1rem + 1px);}
.font_200per_tb{font-size:-webkit-calc(2rem + 1px);font-size : calc(2rem + 1px);}
.font_2up_tb{font-size:-webkit-calc(1rem + 3px);font-size : calc(1rem + 3px);}
.font_4up_tb{font-size:-webkit-calc(1rem + 5px);font-size : calc(1rem + 5px);}
.font_6up_tb{font-size:-webkit-calc(1rem + 7px);font-size : calc(1rem + 7px);}
.font_8up_tb{font-size:-webkit-calc(1rem + 9px);font-size : calc(1rem + 9px);}
.font_10up_tb{font-size:-webkit-calc(1rem + 11px);font-size : calc(1rem + 11px);}
.font_12up_tb{font-size:-webkit-calc(1rem + 13px);font-size : calc(1rem + 13px);}
.font_14up_tb{font-size:-webkit-calc(1rem + 15px);font-size : calc(1rem + 15px);}
.font_2dw_tb{font-size:-webkit-calc(1rem - 1px);font-size : calc(1rem - 1px);}
}


/*スマホ*/
@media screen and (max-width: 667px){
/* フォントサイズ　スマホ */
.font_10_sp{font-size: 11px;}.font_11_sp{font-size: 12px;}.font_12_sp{font-size: 13px;}.font_13_sp{font-size: 14px;}
.font_14_sp{font-size: 14px;}.font_15_sp{font-size: 16px;}.font_16_sp{font-size: 17px;}.font_17_sp{font-size: 18px;}
.font_18_sp{font-size: 19px;}.font_19_sp{font-size: 20px;}.font_20_sp{font-size: 24px;}.font_21_sp{font-size: 22px;}
.font_22_sp{font-size: 23px;}.font_23_sp{font-size: 24px;}.font_24_sp{font-size: 25px;}.font_25_sp{font-size: 26px;}
.font_26_sp{font-size: 27px;}.font_27_sp{font-size: 28px;}.font_28_sp{font-size: 29px;}.font_29_sp{font-size: 30px;}
.font_30_sp{font-size: 31px;}.font_31_sp{font-size: 32px;}.font_32_sp{font-size: 33px;}.font_33_sp{font-size: 34px;}
.font_34_sp{font-size: 35px;}.font_35_sp{font-size: 36px;}.font_36_sp{font-size: 37px;}.font_37_sp{font-size: 38px;}
.font_38_sp{font-size: 39px;}.font_39_sp{font-size: 40px;}.font_40_sp{font-size: 41px;}.font_41_sp{font-size: 42px;}
.font_42_sp{font-size: 43px;}.font_43_sp{font-size: 44px;}.font_44_sp{font-size: 45px;}.font_45_sp{font-size: 46px;}
.font_46_sp{font-size: 47px;}.font_47_sp{font-size: 48px;}.font_48_sp{font-size: 49px;}.font_49_sp{font-size: 50px;}
.font_50_sp{font-size: 51px;}

/* フォントサイズ 基準値から+- */
.font_100per_sp{font-size:-webkit-calc(1rem + 1px);font-size : calc(1rem + 1px);}
.font_200per_sp{font-size:-webkit-calc(2rem + 1px);font-size : calc(2rem + 1px);}
.font_2up_sp{font-size:-webkit-calc(1rem + 3px);font-size : calc(1rem + 3px);}
.font_4up_sp{font-size:-webkit-calc(1rem + 5px);font-size : calc(1rem + 5px);}
.font_6up_sp{font-size:-webkit-calc(1rem + 7px);font-size : calc(1rem + 7px);}
.font_8up_sp{font-size:-webkit-calc(1rem + 9px);font-size : calc(1rem + 9px);}
.font_10up_sp{font-size:-webkit-calc(1rem + 11px);font-size : calc(1rem + 11px);}
.font_12up_sp{font-size:-webkit-calc(1rem + 13px);font-size : calc(1rem + 13px);}
.font_14up_sp{font-size:-webkit-calc(1rem + 15px);font-size : calc(1rem + 15px);}
.font_2dw_sp{font-size:-webkit-calc(1rem - 1px);font-size : calc(1rem - 1px);}

}
