﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&display=swap');

body{
 letter-spacing: 1px;
 line-height: 1.5;
 font-family: "Zen Kaku Gothic Antique", sans-serif,"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
 /*font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";*/
 font-style: normal;
 word-wrap : break-word;
 overflow-wrap : break-word;
 background-color:#fffef8;
}

/*-----共通　メニュー-----*/
.head_banner .hvr_bg_color4:hover{
    background-color:var(--color4)!important;
}

/*-----共有　ヘッダー　ロゴ-----*/
@media screen and (max-width: 768px){
 #logo img {
    width: 40%!important;
 }
 .head_box{
         margin: 0 auto 1% -5%!important;
 }
}

/*-----TOP FV-----*/
#main_img img.object_fit_img{
 border-radius:210px;
    margin:0 auto;
}
.fv_sp{
    display: none;
}
.flexslider{
    top: 10%;
}
.fv_item01{
    position: absolute;
    z-index: 999;
    top: 3%;
    left: 3%;
    width: 40%;
}
.fv_item02{
    position: absolute;
    z-index: 999;
    bottom: 2%;
    right: 2%;
    width: 51%;
}
.fv_item03{
    position: absolute;
    z-index: 999;
    top: 1%;
    right: 4%;
    width: 17%;
}
.fv_item04{
    position: absolute;
    z-index: 999;
    bottom: 4%;
    left: 4%;
    width: 15%;
}
.fv_item05{
position: absolute;
    z-index: 999;
    right: 20%;
    top: 14%;
    width: 8%;
}
.fv_item06{
position: absolute;
    z-index: 999;
right: 2%;
    top: 0%;
    width: 27%;
}

/* スライド枠の高さを固定＆角丸 */
.flexslider .slides li {
  height: 400px;          /* 固定高さ */
  border-radius: 20px;     /* 角丸 */
  display: flex;           /* 画像を中央に配置 */
  justify-content: center;
  align-items: center;
}

/* 画像は縦横比を維持して枠内に収める */
.flexslider .slides img {
  max-width: 100%;         /* 幅は枠に収める */
  max-height: 100%;        /* 高さは枠に収める */
  /* width: auto; */
  width: 94%;
  height: 48vh;
  border-radius: 20px;     /* 角丸 */
  object-fit: contain;     /* IE対応（ofi.min.js が有効） */
  display: block;          /* 余白をなくす */
}

@media screen and (max-width: 768px){
#main_img{
    height:50vh;
}
#main_img img.object_fit_img {
    max-height: initial;
    min-height: initial;
}
.flexslider {
    top: 21%;
}
.flexslider .slides img{
    height: 40vh;
}
.fv_item06{
        top: 5%;
        width: 32%;
}
.fv_item04 {
    bottom: 8%;
    width: 19%;
}
.fv_item01{
        top: 12%;
        width: 50%;
}
.fv_item02 {
    bottom: 4%;
    width: 63%;
}
}
@media screen and (max-width: 667px){
    .head_box {
        margin: 0 auto 1% -18% !important;
    }
    .main_box {
        padding-top: 3px;
    }
    .fv_sp{
    display: block;
    }
    .fv_pc{
        display: none;
    }
    .fv_item01_sp {
        width: 14%;
        position: absolute;
        z-index: 999;
        right: 6%;
        top: 12%;
    }
    .fv_item02_sp {
        width: 94%;
        position: absolute;
        z-index: 999;
        bottom: 3%;
        left: 3%;
    }
    .fv_item03_sp {
        width: 27%;
        position: absolute;
        z-index: 999;
        top: 11%;
        left: 3%;
    }
    .fv_item04_sp {
        width: 25%;
        position: absolute;
        z-index: 999;
        bottom: 10%;
        right: 6%;
    }
    #main_img {
        height: 93vh;
        padding-bottom:24%!important;
    }
    .flexslider .slides img {
        height: 520px;
        width: 78%;
    }
    .flexslider {
        top: 15%;
    }
}

/*-----FV　intro -----*/
.intro_item01 {
    position: absolute;
    width: 16%;
    right: 8%;
    bottom: -60%;
}
@media screen and (max-width: 1430px){
    .intro_item01{
        right: 5%;
    }
}
@media screen and (max-width: 1360px){
    .intro_item01{
        right: 8%;
        bottom: -44%;
    }
}
@media screen and (max-width: 1100px){
    .intro_item01{
        bottom: -40%;
    }
}
@media screen and (max-width: 920px){
    .intro_item01{
        bottom: -33%;
    }
}
@media screen and (max-width: 768px){
    .intro_item01{
        width: 26%;
        bottom: -5%;
    }
}
@media screen and (max-width: 600px){
    .intro_item01{
        bottom: -20%;
    }
}

/*-----TOP こだわり-----*/
.link_type1 .link_top .link_title {
    font-size: 20px;
    margin-bottom: 20px;
    text-align: center;
	margin-bottom: 30px;
    color: #474521;
    font-weight: 500;
}
.link_type1 .link_top .link_title{
    font-size: 20px;
    margin-bottom: 20px;
}
.link_type1 .link_top a{
	padding-top: 80px;
    padding-bottom: 60px;
}
.link_type1 .link_top a:hover{
    background-color: #ededeb;
}
.link_type1 .link_top a:hover .link_img1{
    transform: translate(-50%, -50%) scale(1.1,1.1);
    opacity: 0.1;
}
@media screen and (max-width: 667px){
.link_type1 .link_top .link_title{
    font-size: 15px;
}
}

/*-----お知らせ-----*/
.blog_list .blogListPattern_item .border_color2{
    border-color: var(--color1);
}

/*----- 問い合わせ追従 -----*/

.head_banner {
  position: fixed;
  left: 0;
  bottom: -100px; 初期は画面外
  width: 100%;
  font-size: 18px;
  z-index: 999;

  /* フェード用 */
  opacity: 0;
  visibility: hidden;

  /* スライド＋フェードのアニメーション */
  transition: bottom 0.4s ease, opacity 0.6s ease;
}

.head_banner.active {
  bottom: 0; 
  opacity: 1;
  visibility: visible;
}

/* PCでは非表示 */
@media screen and (min-width: 769px) {
.head_banner {
    display: none;
  }
}