﻿
/* ---------- font ---------- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root{
    --font-jp: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
}
body, .font_sans-serif, .font_serif,.more, #header_menu, .top_cms_box .cms_title h2, #bottom_menu, #copyright, #page_title, .cate_list::before, .foot_link a, .con_no{
    font-family: var(--font-jp)!important;
    font-weight: 500;
}
/*.font_en, a[href^="tel:"]{
    font-family: var(--font-en);
}*/

/* ---------- color ---------- */
#wrap {
    background-color:  var(--color2);
}
#intro, footer .bg_color2{
    background-color: var(--color5);
}


/* ---------- all ---------- */
#fakeloader{
    z-index: 999999!important;
}
.drawer-nav{
        z-index: 999991!important;
}
header #logo .logo {
    width: 100%;
    max-width: 120px;
}
#logo2 {
    width: 150px;
}
header #header #header_menu li:last-of-type{
    display: none;
}
#header_menu {
    width: 100% !important;
    
    ul.flex_top-right {
        justify-content: center;
        align-items: flex-start;
    }
}


/* ---------- top ---------- */
#top_logo{
    left: 20px;
    top: 26px;
    z-index: 99999;
    
    .logo{
        text-align: left!important;
        width: 9vw!important;
        margin: 0 !important;
    }
}
#main_img {
    height: 100%;
    max-height: 100%;
}
.intro_txt .con_no {
    color: var(--color3);
    opacity: 1;
    font-style: normal;
}
#contents .con_no {
    font-style: normal;
    font-weight: 600;
    color: var(--color3);
}
.top_cms_box .cms_title h2 {
    font-style: normal;
    font-weight: 500;
    letter-spacing: 4px;
}
.top_cms_box .cms_title {
    margin-bottom: 50px;
}
.cms_2-g .box_wrap {
    box-shadow: rgb(73 73 73 / 3%) 0px 5px 39px 0px;
}
.foot_link a {
    font-style: normal;
}


/* ---------- under ---------- */
#page_title {
    margin-bottom: 50px;
    padding-bottom: 100px;
    background: url( "../img/page_title_bg.jpg" ) center bottom / cover no-repeat;
}
.cate_list::before{
    font-style: normal;
}
#cms_5-f .cate_box .box_txt1, .cms_5-f .cate_box .box_txt1 {
    background-color:var(--color5);
}
.blog_list .border_color2, .hvr_border_color2:hover {
    border-color: var(--color4)!important;
}



/* ---------- tablet ---------- */
@media screen and (max-width: 768px){
header #header {
    justify-content: end;
}
header .menu_bt {
    text-align: right;
    left: -18px;
    position: relative;
}
#top_logo {
    left: 16px;
    top: 21px;
    z-index:　99999;
    
    .logo {
        width: 13vw !important;
    }
}  
.fv_item {
    z-index: 2;
    bottom: 6%;
    left: 0;
    right: 0;
    margin: auto;
    width: 70vw;
}

}

/* ---------- mobile ---------- */
@media screen and (max-width: 667px){
header .menu_bt {
    left: -5px;
}
.fv_item {
    bottom: 5%;
    width: 76vw;
}
#top_logo {
    left: 9px;
    top: 11px;
    
    .logo {
        width: 18vw !important;
    }
}
.top_cms_box_inner {
    padding: 50px 15px;
}
#top_cms_h .top_cms_box_inner {
    padding: 50px 15px 50px;
}
#logo2 {
    width: 130px;
    transform: translateX(-17px);
}
#page_title h2 {
    font-size: 25px;
}
footer .bg_color2 {
    padding: 15px 0 20px;
}
#cms_5-f .cate_box .box_item, .cms_5-f .cate_box .box_item {
    padding-left: 0;
    padding-right: 0;
}
.cms_wrap{
    padding-left: 0;
    padding-right: 0;
}
}


/* fix_bnr ---------------------------------------------------------------------------------------------*/
#fix_bnr {
    bottom: 9px;
    right: 99px;
    z-index: 10;
    width: 70%;
    max-width: 320px;
    transition: 0.5s;
    opacity: 0;
pointer-events: none;
z-index: 2;
}
#fix_bnr.scroll{
    opacity: 1;
pointer-events: auto;
}
#fix_bnr.close{
    opacity: 0;
    z-index: -1;
}
@media screen and (max-width: 768px){
#fix_bnr.close{
    transform: translateX(200px);
}
}
@media screen and (max-width: 667px){
#fix_bnr {
    width: 64% !important;
    right: auto;
    left: 20px;
    margin: auto;
    bottom: 10px;
}
}
/* fix_bnr end ---------------------------------------------------------------------------------------------*/





