/*
Theme Name: aureo
Template: twentytwenty
*/

@import url('https://fonts.googleapis.com/css2?family=Karla:wght@200;300;400;500;600;700;800&family=Noto+Sans+JP:wght@300;400;500&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');

html{
  font-size:100%;
}

:root { 
--key-Color: #34367e;
--Gold: #817d69;
--Yellow: #fefae7;
--Gray: #f8f8f8;
--Gray02: #fcfaf9;
--Blue: #f5fbfd;
--row-space : 2.604166666666667vw;
--col-space : 8.2vh;
--s1-space: 7.5vh;
--s2-space: 5vh;
--s3-space: 2.5vh;
--containner: 1100px;
--containner_small: 1000px;
--h1 :2.841rem;
--h2 :2.278125vw;
--h3 : 1.8rem;
--Text-normal: 1.0rem;
--navi-ft-size: 1.0rem;
--flex_hurf : calc((100% - 5vw) / 2);
--flex_third : calc((100% - 5vw) / 3);
--flex_four : calc((100% - 5vw) / 4);
--flex_six : calc(100% / 3);
--flex_concept01 : 55%;
--flex_concept02 : 40%;
--logo_wide: 290px;
--nav_ft_size: 17px;
--out_image: -25%;
--out_image02: -15%;
--fix_head_margin: 70px;
}

@media screen and (min-width: 768px) and (max-width: 1350px) {

  :root { 
    --logo_wide: 200px;
    --nav_ft_size: 15px;
    --row-space : 5vw;
    --fix_head_margin: 69px;
  }

}

@media screen and (max-width: 767px) {

  :root { 
    --row-space : 4vw;
    --col-space : 5vh;
    --s1-space: 5vh;
    --s2-space: 2.5vh;
    --s3-space: 1.5vh;
    --containner: 1200px;
    --h1 :1.8rem;
    --h2 :1.6rem;
    --h3 : 1.25rem;
    --Text-normal: 16px;
    --flex_hurf : 100%;
    --flex_four: 100%;
    --flex_third : calc(96% / 2);
    --flex_six : calc(100% / 2);
    --sp-none: none;
    --fix_head_margin: 50px;
    --flex_concept01 : calc(100% / 2);
    --flex_concept02 : calc(100% / 2);
    }

}

html{
  overflow-x: hidden;
}

body{
    background:#fff;
    font-size: var(--navi-ft-size);
    overflow-x:hidden;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: 400;
    overflow-x: hidden;
}

p{
text-align: justify;
text-justify: inter-ideograph;
}

.load-wrap {
  animation: fadein 1s forwards;
}

@keyframes fadein {
  0% {opacity: 0}
  100% {opacity: 1}
}

a img{
  -webkit-transition: all .3s;
  transition: all .3s;
}

a img:hover{
  opacity:0.8;
}

p{
  font-weight: 400;
}

p.mt{
  margin-top: 2em;
}

p.price{
  font-weight: bold;
  font-size: 1.3rem;
  margin-top: 1em;
}

p.Center{
  text-align: center;
}

p.mb{
	margin-bottom:var(--s2-space);
}

.slick-slider{
  margin-bottom: 1em;
  margin-left: auto;
  margin-right: auto;
}

li.slick-slide{
  margin-left: 0;
}

.slick-arrow {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  padding: 0;
  width: 20px;
  height: 38px;
  color: transparent;
  z-index: 1;
  transition: opacity 0.5s;
  z-index: 1;
}
.slick-arrow:hover {
  opacity: 0.7;
}

/* 共通設定 */

.slick-next::before,
.slick-next::after,
.slick-prev::before,
.slick-prev::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.slick-next::after,
.slick-prev::after {
  width: 26px;
  height: 26px;
  border-top: 3px solid var(--key-Color);
  border-right: 3px solid var(--key-Color);
}

/* next */

.slick-next {
  right: 0;
}
.slick-next::after {
  right: 4px;
  transform: rotate(45deg);
}

button:hover, .slick-next:focus{
  background: transparent !important;
  opacity:0.5;
}

/* prev */

.slick-prev {
  left: 0;
}
.slick-prev::after {
  left: 4px;
  transform: rotate(-135deg);
}

a.detail_btn{
  background: #307dbf;
  border:1px solid #307dbf;
  color: #fff;
  display: block;
  max-width: 200px;
  text-align: center;
  margin: .5em auto 0;
  padding: .5em;
  border-radius: 2.46em;
  text-decoration: none;
}

a.detail_btn:hover{
  background: #fff;
  color:#307dbf;
}

@media screen and (max-width: 767px) {
  .slick-next::after,
  .slick-prev::after {
    width: 20px;
    height: 20px;
  }
  .slick-next {
    right: 8px;
  }
  .slick-prev {
    left: 8px;
  }
  .slick-next::after {
    right: 2px;
  }
}

.scroll::-webkit-scrollbar {
    width: 10px;
    height: 10px;
    }
    
    .scroll::-webkit-scrollbar-thumb {
    background-color: #989898;
    border-radius:0;
    }
    
    .scroll::-webkit-scrollbar-track {
    background-color: rgb(220,220,220);
    border-radius: 0;
    box-shadow: inset 3px -3px 5px rgba(0,0,0,0.1.0);
    }
    
    .scroll::-webkit-scrollbar-corner {
    display: none;
    }

header{
  background: #fff;
border-top: 10px solid var(--key-Color);
position:fixed;
top: 0;
left: 0;
width: 100%;
padding:0;
z-index:15;
color:var(--Black);
}

header .wrap{
display: flex;
flex-direction: row;
justify-content: space-between;
flex-wrap: wrap;
position:relative;
align-items:center;
}

header .wrap .top__section{
  border-bottom: 1px solid var(--key-Color);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width:100%;
  padding: 0 var(--row-space);
}

header .wrap .bottom__section{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 1em var(--row-space);
  width: 100%;
 background:#fff;
	position:relative;
}

header .wrap .top__section .left-box{
  padding-right: 3vw;
  position: relative;
  height: 100%;
  padding: 1em 0;
  max-width: 30%;
}

header .wrap .top__section .left-box h1{
 font-size: 0.8rem;
 line-height: 1.255;
}

header .wrap .top__section .left-box::before{
  content: '';
  background: var(--key-Color);
  height:3px;
  width:100%;
  position: absolute;
  right: -15vw;
  bottom:0;
  transform:rotate(-25deg);
}

header .wrap .top__section .left-box::after{
  content: '';
  background: var(--key-Color);
  height:1px;
  width:100%;
  position: absolute;
  right:calc(-15vw + 10px);
  bottom:0;
  transform:rotate(-25deg);
}

header .wrap .top__section .right-box{
  width:70%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.tel__number{
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 800;
  font-size: 24px;
  color: #34367e;
  text-decoration: none;
  margin-right: .5em;
}

.tel__number i{
  vertical-align: middle;
}

.language__btn{
  background:var(--key-Color);
}

.language-sub i, a.business i, a.contact i{
  margin-right: .25em;
  vertical-align: middle;
}

header .wrap .top__section .language-sub, header .wrap .top__section a.business{
  margin-right: 5px;
}

.logo{
    padding:1vh 0;
    max-width: 140px;
    width:100%;
}

header .wrap nav.gloval{
    width:calc(100% - 300px);
    font-size: var(--nav_ft_size);
}

header .wrap nav.gloval > ul{
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    flex-wrap: wrap;
    list-style: none;
    margin:0 0 0 auto;
}

header .wrap nav.gloval ul li{
    margin:0;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: 400;
    letter-spacing: 0.055em;
    position: relative;
}

header .wrap nav.gloval ul li a{
  display: flex;
  flex-direction: column;
  justify-content: center;
    padding:10px 1em;
    text-decoration:none;
    color: var(--key-Color);
    height:100%;
}

header .wrap nav.gloval ul li a:hover{
    background:  var(--key-Color);
    color:#fff;
}

header .wrap nav.gloval ul li.contact a{
    background: var(--key-Color);
    color: #fff;
    height:100%;
    padding:10px 1em;
}

header .wrap nav.gloval ul li.contact a:hover{
    background: var(--Gold);
    color:#fff;
}

header.change-color {
  background-color: #fff;
  transition: 0.65s;
}

header.change-color .wrap nav.gloval ul li a:hover{
  background:var(--key-Color);
  color: #fff;
}

ul.sub-menu a{
  font-size: 0.8rem;
}

ul.bogo-language-switcher, ul.bogo-language-switcher li{
	margin:0px;
    background:#34367e;
    border-radius: 10px;
}

ul.bogo-language-switcher a:hover{
  font-color: #222464;
}


.sub-language.active{
	height:auto;
}

ul.bogo-language-switcher li{
  min-height:0px;
  margin-top:10;
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 3px;
  padding-right: 3px;
  /*font-family: "Varela Round" sans-serif;*/
  text-align: center;
}

.cls-1{
  transition: 0.3s;
}

header.change-color .wrap svg .st0 {
  fill: #fff;
}

header.change-color .wrap::before{
  display:none;
}

nav.gloval{
display: flex;
flex-direction: row;
justify-content: space-between;
flex-wrap: wrap;
}

.language-sub{
    position: relative;
    background: var(--key-Color);
    padding:.5em;
    color:#fff;
    text-align: center;
}

  .language-sub > li {
    position: relative;
    width: 100px;
  }
  
  .language-subav a {
    display: block;
    line-height: 1;
    z-index: 1;
  }
  .language-sub {
    flex-flow: row wrap;
  }
  header .language-sub a {
    padding: 0.5em 1em;
    font-size: 16px;
    color:#fff;
    text-align: center;
    display:block;
	  text-decoration:none;
  }
  .sub-language {
    background:  var(--Gold);
    overflow: hidden;
    position: absolute;
    text-align: center;
    left: 0;
    top: 2.05em;
    width: 100%;
    min-height: 0;
    height: 0;
    z-index: 3;
    transition: min-height 0.5s;
  }

  .sub-menu {
    position: absolute;
    padding: 0;
    left: 0;
    top: 27px;
    display: none;
    width: 100%;
    z-index: 3;
    min-height: 0;
    height: 0;
    z-index: 3;
    transition: min-height 1s;
    list-style: none;
    margin-left: 0;
  }
  .sub-menu > li > a {
    line-height: 1.75;
    background-color: #0071b9;
    color: #fff !important;
  }
  .sub-menu > li > a:hover {
    background-color: #004b83;
    opacity: 1;
  }

  .bogo-language-name a{
    padding:0 .2em !important;
    color:#fff !important;
  }

  .bogo-language-switcher li{
    width:100%;
  }

  .bogo-language-switcher li{
    border-top: 1px solid #ffffff;
  }

  span.bogo-language-name{
    display: block;
    padding:.5em .2em;
    font: size 15px;
  }

  .bogoflags{
    display:none;
  }

  .sub-menu > li > a {
    line-height: 1.75;
    padding:.2em;
  }
  .sub-menu > li > a:hover {
    opacity: 1;
  }
  .sub-menu.active {
    min-height: 115px;
    display: block;
  }

  .Center{
    text-align: center;
  }

  a.business{
    background:#eaa01f;
    color:#fff;
    padding: .5em;
    text-align: center;
    text-decoration: none;
  }

  a.contact{
    background:#6bc1bc;
    color:#fff;
    padding: .5em;
    text-align: center;
    text-decoration: none;
  }

  p{
    letter-spacing: 0.125em;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  }

  @media screen and (min-width: 768px) and (max-width: 1350px) {

    header .wrap nav.gloval ul li a, header .wrap nav.gloval ul li.contact a{
      padding:5px .5em;
      font-size: 0.95rem;
    }

    header .wrap .bottom__section, header .wrap .top__section{
      padding: 1em;
    }

    header .wrap .bottom__section{
      padding-top: .5em;
      padding-bottom: .5em;
    }

    header .wrap .top__section .left-box::before,
    header .wrap .top__section .left-box::after{
      display: none;
    }
    

  }

  @media screen and (min-width: 1025px) {
    .toggle-btn{
      display: none !important;
    }
  }

  @media screen and (min-width: 768px) and (max-width: 1024px) {

    ul#menu-navigation{
      display:none;
    }

    .toggle-btn{
      display: block;
    }

    nav.gloval{
      justify-content: flex-end;
    }

  }
  @media screen and (min-width: 768px) {
  .br-sp{
    display: none;
  }
}

  @media screen and (max-width: 767px) {

    header .wrap{
      align-items: inherit;
    }

    header .wrap nav.gloval ul{
      display:none;
    }

    header .wrap nav.gloval {
      width: auto;
      margin-right:35px;
  }

  .tel__number{
    display: block;
    margin-right: 50px;
    font-size: 20px;
  }

  a.business, a.contact{
    margin-top: .5em;
  }

  header .wrap .top__section .left-box h1{
    max-width:87%;
    line-height: 1.55;
    margin-bottom: .5em;
  }

  header .wrap .top__section .left-box{
    padding-bottom: .5em;
  }

  .top__section .right-box, .top__section .right-box a{
    margin: auto;
  }

  header .wrap .top__section .left-box::before, header .wrap .top__section .left-box::after{
    display: none;
  }

  header .wrap .top__section .right-box, header .wrap .top__section .left-box{
    width:100%;
    height:auto;
    max-width: 100%;
  }

    .logo {
      width: 100px;
      margin:0;
    }

    header .wrap nav.gloval{
      margin: auto;
      display: none;
    }

    header .wrap .top__section .left-box{
      display: none;
    }

    .language-sub::before{
      width:20px;
      height:20px;
    }

    #kv--wrap{margin-top:0;height: 50vh;}

    header .wrap nav.gloval ul.bogo-language-switcher{
      display: block;
    }

    span.bogo-language-name{
      font-size:13px;
    }

    .sub-language.active {
      min-height: 105px;
      top: 2.5em;
      width:100%;
  }

  .sub-language{
    width:150%;
  }

    header .language-sub a{
      font-size:13px;
    }

  }

  /*************************************

Loading

****************************************/

#loading {
position: fixed;
width: 100%;
height: 100%;
background:#fff;
text-align:center;
color:#101010;
z-index:999999;
top:0;
left:0;
}

.loading__wrap{
 width:100vw;
 height:100vh;
 display: flex;
}

.loading__left{
  width:50vw;
  height:100vh;
  background:#fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.loading__left img{
  max-width:200px;
  margin:auto;
}

.loading__right{
  background: #000;
  position: relative;
  width:50vw;
  height:100vh;
}

#loading_text {
position: absolute;
top: 50%;
left: 50%;
  z-index: 999;
width: 100%;
transform: translate(-50%, -50%);
font-family: var(--zen);
color: #fff;
}

#loading_text svg{
  height: 1px;
}

  /*************************************

Drawer

****************************************/

.toggle-btn {
  position: fixed;
  top: 0;
  right:1.55em;
  display: block;
  width: 52px;
  height: 52px;
  z-index: 999;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  cursor: pointer;
  background: var(--key-Color);
}
.toggle-btn__inner {
  position: relative;
  top: 50%;
  left: 50%;
}

.toggle-btn:after{
	content:"MENU";
    font-size:9px;
    display:block;
    text-align:center;
    position:absolute;
    bottom:5px;
	  left: 50%;
  transform:translateX(-50%);
	width:100%;
    color:#fff;
}

.toggle-btn.close:after{
	content:"CLOSE";
}

.bar {
  width: 40px;
  height: 2px;
  position: absolute;
  transform: translateX(-50%);
  background-color: #fff;
  transition: .3s cubic-bezier(0, .45, .47, 1);
}

.change-color .bar{
  background:#fff;
}

.toggle-btn:hover .bar_top, .toggle-btn:hover .bar_bottom {
  transform: translateX(-50%);
}
.bar_top {
  top: -16px;
}
.bar_mid {
  top: -6px;
}
.bar_bottom {
  bottom: -5px;
}
.toggle-btn.close .bar_top {
  transform: translate(-50%, 10.5px) rotate(45deg);
  transition: -webkit-transform .3s cubic-bezier(0, .45, .47, 1);
  transition: transform .3s cubic-bezier(0, .45, .47, 1);
  transition: transform .3s cubic-bezier(0, .45, .47, 1), -webkit-transform .3s cubic-bezier(0, .45, .47, 1);
}
.toggle-btn.close .bar_mid {
  opacity: 0;
  transition: opacity .3s cubic-bezier(0, .45, .47, 1);
}
.toggle-btn.close .bar_bottom {
  transform: translate(-50%, -10.5px) rotate(-45deg);
  transition: -webkit-transform .3s cubic-bezier(0, .45, .47, 1);
  transition: transform .3s cubic-bezier(0, .45, .47, 1);
  transition: transform .3s cubic-bezier(0, .45, .47, 1), -webkit-transform .3s cubic-bezier(0, .45, .47, 1);
}

.menu-gl {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 900;
  opacity: 0;
  transition: all 0.3s cubic-bezier(0, .45, .47, 1);
  background: #fff;
  background-size:cover;
}
.menu__bg {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: var(--bg);
}

.menu__body .logo{
  margin:0 auto 2.5vh;
  max-width:150px;
}

.menu__body {
  position: relative;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  max-width: 950px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.menu__logo {
  display: block;
  width: 80px;
}
.menu__nav {
  display: flex;
  flex-direction: row;
  width: 600px;
  justify-content: space-between;
  margin:auto;
}
.menu__nav-main {
  display: flex;
  flex-flow: column;
  margin-right: 10px;
  list-style:none;
}

.menu__nav-main__item {
  margin-bottom: 30px;
  padding-right: 40px;
}
.menu__nav-main__item:last-child {
  margin-bottom: 0px;
}
.menu__nav-main__item a {
  display: flex;
  flex-direction: column;
  position: relative;
  color: var(--key-Color);
  text-decoration:none;
   font-style:var(--zen);
}
.menu__nav-main__item a:hover span {
  animation: horizontalFade 0.4s cubic-bezier(.8, 0, .2, 1) forwards;
}
.menu__nav-main__item a span {
  transition: all 0.3s cubic-bezier(0, .45, .47, 1);
}

span.en{
  font-family:  var(--karla);
  color: var(--Gold);
  font-size:0.8rem;
}

p.Center{
  text-align: center;
}

p.Text{
  text-align: left;
}

p.Center img{
  margin: auto;
}

.products p.Center img{
  margin:0 auto -1.5em;
}

.menu__nav-main__item a:hover {
  opacity: 1;
}

.menu__nav-main .ja {
  font-size: 20px;
  line-height: 1.44;
  margin-top: 3px;
  font-weight: 600;
 font-family: var(--zen), serif;
}
.menu__nav-sub {
  display: flex;
  flex-direction: column;
  margin-right:0;
}
.menu__nav-sub__item {
  font-size: 1.4rem;
  margin-bottom: 32px;
  margin-top: 29px;
  font-weight: 600;
}
.menu__nav-sub__item a {
  position: relative;
  font-family: var(--zen), serif;
  color: var(--White);
  text-decoration:none;
}
.menu__nav-sub__item a:hover {
  opacity: 1;
}
.menu__nav-main__item a:after, .menu__nav-sub__item a:after{
  content: '';
  position: absolute;
  left: 0;
  bottom:0;
  width: 0%;
  height: 1px;
  background: var(--keyColor);
  transition: all 0.2s cubic-bezier(0, .45, .47, 1);
}
.menu__nav-sub__item a:hover:after, .menu__nav-main__item a:hover::after{
  width: 100%;
}
.menu__nav-sub__item:last-child {
  margin-bottom: 0px;
}

.menu-gl.fade-in {
  opacity: 1;
}
.menu-gl .fadeInDelay {
  opacity: 0;
  -webkit-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.menu-gl .fadeInDelay.fade-in {
  opacity: 1;
}
.menu-gl .fadeInDelay02 li {
  overflow: hidden;
}
.menu-gl .fadeInDelay02 li a {
  -webkit-transform: translateY(120%);
  -ms-transform: translateY(120%);
  transform: translateY(120%);
  -webkit-transition: all 0.3s cubic-bezier(0, .45, .47, 1);
  -o-transition: all 0.3s cubic-bezier(0, .45, .47, 1);
  transition: all 0.3s cubic-bezier(0, .45, .47, 1);
  position: relative;
}
.menu-gl .fadeInDelay02 li.fade-in a {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  font-feature-settings: "palt";
}

.menu-gl .fadeInDelay02 li.fade-in a::before{
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 1px;
  background-color: #000;
  transition: .3s;
}

.menu-gl .fadeInDelay02 li.fade-in a:hover::before{
  width: 100%;
}

.menu-gl .fadeInDelay03 {
  opacity: 0;
  -webkit-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.menu .fadeInDelay03.fade-in {
  opacity: 1;
}


/************* 

SP  

************************************/
@media screen and (max-width: 767px) {

  header .wrap .bottom__section{
    padding: .5em 1em;
  }

  .toggle-btn{
	 right:0;
   top:0px;
   width:55px;
   height:55px;
	}

  .bar{
    width:32px;
  }

  .menu__body {
    margin-top:0;
    align-items: flex-start;
    flex-direction: column;
  }
  .menu__logo {
    margin: 0 auto 2em auto;
    width: 240px;
  }
  .menu__nav {
    flex-direction: column;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  a.contact{
    margin-bottom: 1em;
  }

  .menu__nav-main {
    margin-right: 0;
  }

  .menu__nav-main{
    margin-bottom:0;
    margin-top:0;
    margin-left:0;
  }

  .menu__body .logo{
    width:150px;
    margin:0 auto 1em;
  }

  .menu__nav-main__item {
   margin:auto;
   padding: .5em;
   width: 100%;
  }

  .menu__nav-main .en {
    font-size: 0.8rem;
  }
  .menu__nav-main .ja {
    font-size: 17px;
    margin-top: 2px;
  }
  .menu__nav-sub {
    flex-direction: row;
    margin-top: 45px;
    margin-right: 0;
  }
  .menu__nav-sub__item {
    margin-bottom: 20px;
    margin-top: 0;
    margin-right: 20px;
    font-size:1.1rem;
    width:100%;
  }
  .menu__nav-sub__item:last-child {
    margin-bottom: 20px;
  }
  .menu__nav-sns {
    margin-top: 25px;
  }
  .menu__nav-sns__item {
    margin-bottom: 20px;
    margin-top: 0px;
    padding-right: 20px;
  }

  .menu__nav-sub{
	 flex-wrap: wrap;
	}
}

  /************* K-Visual **************/

#kv--wrap{
    width:calc(100% - 5.208333333333334vw);
    border-radius: 1.46em;
    position:relative;
    height:55vh;
    overflow:hidden;
    margin-top: 155px;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
}

#kv--wrap .container{
 position:relative;
 height: 100%;
}

.kv__overlay, .vegas-slide-inner{
 height: 100%;
}

.vegas-overlay {
    opacity: .10;
}

.vegas-timer{
  display: none;
}

#kv--wrap .caption__wrap{
  font-family: 'Zen Maru Gothic', sans-serif;
  position: absolute;
  font-weight: 500;
  font-size:3.3333333333333335vw;
  color: #fff;
  margin-bottom: 1em;
  bottom:1em;
  left:1em;
  line-height: 1.55;
}

#kv--wrap .caption__wrap span{
  display: block;
  width: 100%;
  padding-left: 1em;
  border-left: 5px solid #fff;
  font-size: 1.25rem;
  margin-top: 1em;
  font-weight: 400;
}

  /************* 見出し **************/

  h1, h2, h3, h4, .concept__title{
    font-family: 'Zen Maru Gothic', sans-serif;
  }

  h1{
  font-size: var(--h1);
  font-weight:400;
  margin:0;
  padding:0;
  line-height:2.0;
  }

  h2{
    position:relative;
    font-weight:600;
    color:#4e3b30;
    font-size: var(--h2);
    display:block;
    margin:0 auto var(--s3-space);
    line-height:1.55;
    text-align: center;
  }

  section.pr .containner__wrap__small h2{
    margin-top: var(--s1-space);
    margin-bottom:  var(--s2-space);
    padding-bottom:0;
  }

  section.pr .containner__wrap__small h2::after{
    display:none;
  }

  section.youtube{
    background: url(images/youtube__bg.jpg)no-repeat left center;
    background-size:cover;
    min-height: 50vh;
    display:flex;
    flex-direction: column;
    width: 100%;
  }
  
  .youtube .Inner{
    background: rgba(255,255,255,0.5);
    padding: var(--s3-space);
   }

   .youtube-video {
    width: 100%;
    aspect-ratio: 16 / 9;
  }
  .youtube-video iframe {
    width: 100%;
    height: 100%;
  }

  section.concept{
    background: url(images/concept__bg.png)no-repeat right center;
    background-size:cover;
    max-width: calc(100vw - var(--row-space) * 2);
    width:100vw;
    margin-left: auto;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: calc(var(--s1-space) * 2);
    padding-bottom: var(--s2-space); 
  }

  section.product{
    background: url(images/product/spec__bg.jpg)no-repeat center center;
    background-size:cover;
    max-width: calc(100vw - var(--row-space) * 2);
    width:100vw;
    margin-left: auto;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  section.concept .containner__wrap{
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 5;
  }

  section.concept::before{
    content: '';
    bottom:-10vh;
    left:-2vw;
    background: url(images/concept__left.png)no-repeat center center;
    background-size: contain;
    position: absolute;
    width:17.1875vw;
    height:17.1875vw;
    z-index: 7;
    display:none;
  }

  section.concept::after{
    content: '';
    top:1vw;
    left:-2vw;
    background: url(images/concept.svg)no-repeat center center;
    background-size: contain;
    position: absolute;
    width:6.406249999999999vw;
    height:70%;
    z-index: 4;
  }

  section.concept .left_contents{
    width:27%;
  }

  section.concept .right_contents{
    width:70%;
    position: relative;
    padding: var(--s2-space) 0 var(--s2-space) var(--s2-space);
  }

  section.concept .right_contents .box{
    position: relative;
    z-index:6;
  }

  section.concept .right_contents .box figure{
    margin-top: -10%;
    margin-bottom: var(--s3-space);
  }

  section.concept .right_contents .box figcaption{
    background: #fff;
    border-top-right-radius: 1.46em;
    border-bottom-right-radius: 1.46em;
    margin-top: -5vh;
    padding: var(--s3-space) var(--s3-space) 0;
    font-size: 1.0rem;
    line-height: 1.8;
    position: relative;
    z-index: 6;
    width:90%;
  }

  section.concept .right_contents::after{
    content: '';
    background: #fff;
    height:90%;
    position: absolute;
    left: 0;
    bottom:0;
    border-radius: 1.46em;
    width:100%;
    z-index:0;
  }

  section.info{
    background: #fffdf7;
    margin-top:0;
    border-top: 5px solid #716257;
    padding-top:2em;
  }

section.info::after{
	position:absolute;
    content:"";
    background:url(https://www.loveforpet.net/wp-content/uploads/2023/08/info_ilust.png)no-repeat;
    background-size:contain;
	width:8vw;
	height:8vh;
	top:-8vh;
	right:var(--row-space);
}

  section.info .three{
    margin-top: 0;
    text-align: center;
  }

  section.info .three a.text,  section.info .four a.text{
    font-size: 1.25rem;
    font-weight: 600;
    color:#4e3b30;
    text-decoration: none;
    margin-top: .5em;
    position: relative;
    font-family: 'Zen Maru Gothic', sans-serif;
    text-align: center;
  }

  section.info .four{
    text-align: center;
  }

  section.info .three a.text img{
    display: block;
    margin: .5em auto 0;
  }

  .concept__title{
   color:#4e3b30;
   font-weight: 500;
   font-size:1.5411458333333332vw;
   padding-bottom: .5em;
   margin-bottom: .5em;
   border-bottom:1px solid #4e3b30;
   font-weight: 700;
   text-align: center;
  }

  h2.Center{
    display:block;
    text-align: center;
  }

  h2 div.marker{
    display: inline-block;
    background: #fff;
    padding: 8px;
    margin-top: 5px;
    width: auto !important;
  }

  h2.left{
    text-align: left;
  }

  h3{
    font-size:  var(--h3);
    font-weight: 700;
    color:#4e3b30;
    margin-bottom: 1em;
  }

  section.info h3:nth-of-type(2){
    margin-top: var(--s2-space);
  }

  p.bold{
    font-size: 1.4rem;
    font-weight: bold;
  }

 img.insta{
		  max-width:180px;
          margin-left:auto;
	 margin-right:auto;
	  }

  @media screen and (max-width: 767px) {

    h2{
      display:block;
      text-align: center;
    }
    
    section.info .three a.text{
      font-size: 1.25rem;
    }

	  section.info{
		  padding-top:1.2em;
	  }

    section.info .three{
      margin-bottom: 2em;
      width:100%;
    }

    section.info .three:last-child{
      margin: 0 auto;
    }

	  section.info .four{
		width:calc(98% / 2) !important;
	  }

    section.concept::before{
      width: 27.1875vw;
      height: 27.1875vw;
      display:none;
    }

    section.concept::after{
      left: -4vw;
      z-index: 5;
    }

    section.product{
      width:100%;
      max-width: 100%;
    }
	  img.insta{
		  max-width:120px;
	  }
section.info::after{
    width: 15vw;
    height: 5vh;
    top: -5vh;
	right:var(--row-space);
}

  }

  /************* Section **************/

  img.Round{
    border-radius: 1.46em;
  }
  img.Round_small{
    border-radius: .746em;
  }
  section{
    padding: var(--col-space) var(--row-space);
    position:relative;
  }

  section.bg__cr{
    background: #fff;
    padding: var(--col-space) var(--row-space);
    position: relative;
  }

  section.bg__cr.top-area{
    padding-top:calc(var(--s1-space) * 2);
    margin-top: -10vh;
    position: relative;
    z-index: 0;
  }

  section.blue{
    background: var(--Blue);
  }

  section.bg__cr.top-area.pb_none{
    padding-bottom: 0;
  }

  section.bg__cr.top-area::before{
    content: '';
    background: url(images/footprints-left.png)no-repeat;
    background-size:contain;
    width:25.677083333333332vw;
    height:16.822916666666668vw;
    position: absolute;
    top:15vh;
    left:var(--row-space);
	z-index:-1;
  }
  section.bg__cr.top-area::after{
    content: '';
    background: url(images/footprints-right.png)no-repeat right bottom;
    background-size:contain;
    width:25.677083333333332vw;
    height:16.822916666666668vw;
    position: absolute;
    top:30vh;
    right:var(--row-space);
	z-index:-1;
  }

  section.bg__bk + section{
    padding-top:var(--col-space);
  }

  .containner__wrap{
    max-width: var(--containner);
    margin:auto;
    position:relative;
  }
  .containner__wrap__small{
    max-width: var(--containner_small);
    margin:auto;
    position:relative;
  }

  .containner__wrap + .containner__wrap{
    margin-top: var(--s2-space);
  }

  p{
    font-size: var(--Text-normal);
    line-height:2.0;
    font-weight:400;
  }

  li{
    font-size: var(--Text-normal);
    font-weight:400;
    letter-spacing: 0.125em;
    font-family: 'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  }

  p:last-child{
    margin-bottom:0;
  }

  section.bg__bk p{
    color: #fff;
  }

/************* Layout **************/

.Flex__wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    position: relative;
    z-index: 6;
}

.Flex__wrap.align__items__center{
    align-items: center;
}

.Flex__wrap.flex__start{
  align-items: flex-start;
}

.Flex__wrap.center{
  justify-content: center;
}


.Flex__wrap.start{
  justify-content: flex-start;
}

.Flex__wrap.nowrap{
    flex-wrap: nowrap;
}

.Flex__wrap h1{
    min-width:55%;
    line-height:1.55;
    border-right:1px solid #fff
}

section.bg__bk .Flex__wrap p.Text{
    width:40%;
}

section.gray::after{
  content:'';
  background:  var(--Gray02);
  position:absolute;
  left:0;
  top:0;
  width:calc(100% - var(--row-space));
  height:100%;
  z-index: -1;
}

section.gray.bottom{
  padding-top:0;
}

section.gray.center::after{
  top:32.5%;
  max-height:77.5vh;
}

section.gray.bottom::after{
  top:35.5%;
  max-height:77.5vh;
}

section.sns__wrap{
  padding-top:0;
}

section.sns__wrap::after{
  content:'';
  background:  var(--Gray);
  position:absolute;
  left:0;
  bottom: -25vh;
  width:calc(100% - var(--row-space));
  height:50vh;
  z-index: -1;
}

section.access::after{
  content:'';
  background:  var(--Gray02);
  position:absolute;
  right:0;
  top:0;
  width:calc(100% - var(--row-space));
  height:100%;
  z-index: -1;
}

.Flex__wrap .Hurf{
    width: var(--flex_hurf);
    position: relative;
}

.Flex__wrap .Hurf.auto{
  margin-left: auto;
  margin-right: auto;
}

.Flex__wrap .Hurf.mb{
  margin-bottom: var(--s3-space);
}

.Flex__wrap .Hurf h3:first-child{
  margin-top:0;
}

.Flex__wrap .three{
  width: var(--flex_third);
  margin-top: var(--s2-space);
}

.Flex__wrap .four{
  width: var(--flex_four);
  margin-top: var(--s2-space);
}

.Flex__wrap.center{
  justify-content: center;
}

.Flex__wrap.row_reverse{
  flex-direction: row-reverse;
}

section.concept::after{
  width: 9.406249999999998vw;
}

p.name{
  color:#141414;
  font-weight: 500;
  text-align: center;
  font-size: 1.2411458333333332vw;
  letter-spacing: 0;
}

p.name span{
  display: block;
  font-size: 0.9rem;
}

.blog.Flex__wrap .three{
  margin-right: var(--s3-space);
  margin-top:0; 
}

.blog.Flex__wrap .three:nth-of-type(n+4){
  margin-top: var(--s2-space);
}


.blog.Flex__wrap .three:nth-of-type(3n){
  margin-right: 0;
}

.blog.Flex__wrap .three img{
  margin-left:auto;
  margin-right:auto;
}

.Flex__wrap .three h3{
  margin-top:0;
  font-size:1.25rem;
}

.Flex__wrap + .Flex__wrap{
    margin-top: var(--col-space);
}

.Right{
    text-align:right;
}

@media screen and (max-width: 767px) {

  #kv--wrap{
    height:30vh;
  }
  .Flex__wrap h1{
    border-right:0;
    margin-bottom: var(--col-space);
  }

  .Flex__wrap.nowrap{
    flex-wrap: wrap;
  }


.Flex__wrap.product .four{
	width:calc(98% / 2);
}
  
.Flex__wrap .three:last-child{
  margin-left: auto;
  margin-right: auto;
}

  .post-11 .Flex__wrap.nowrap{
    flex-wrap: nowrap;
  }

  section.bg__bk .Flex__wrap p.Text {
    width: 100%;
}

.Flex__wrap .Hurf:first-child{
  margin-bottom: 1em;
}
	
.Flex__wrap.food .three{
	width:100%;
}

.blog.Flex__wrap .three{
  width:100%;
  margin-right: 0;
}

.blog.Flex__wrap .three img{
  max-width:80%;
}

section.bg__cr.top-area::before{
  top:5vh;
  width: 35.677083333333332vw;
  height: 36.822916666666668vw;
}

section.bg__cr.top-area::after{
  width: 35.677083333333332vw;
  height: 36.822916666666668vw;
}

}

/************* リンク **************/

a.cart{
  background: #cf2343;
  border-radius: 4.6em;
  padding:1.05em 1em;
  display: block;
  margin: 2em auto;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  max-width: 600px;
  font-family: 'Zen Maru Gothic', sans-serif;
}

a.cart:hover{
	opacity:0.7;
}

a.cart i{
  font-weight: 400;
  font-size: 30px;
  display: inline-block;
  margin-right: .25em;
  vertical-align: middle;
  margin-top: -10px;
}

a.detail__link{
    font-family: var(--zen), serif;
    display:inline-block;
    padding:.5em 1em;
    border-top:1px solid var(--key-Color);
    position: relative;
    margin: var(--s2-space) 0 0 auto;
    color:var(--key-Color);
    text-decoration:none;
    font-size: var(--Text-normal);
}

a.detail__link::after{
    content:'';
    background:#bcbcbc;
    width:25px;
    height:1px;
    position: absolute;
    right:1em;
    top:-1px;
}

a.reserved{
  background: var(--Gold);
  color:#fff;
  padding: var(--s3-space);
  display: block;
  max-width: 600px;
  margin: var(--s3-space) auto;
  font-size: var(--h3);
  font-family: var(--zen);
  text-align: center;
  text-decoration: none;
  border-radius: 0.26em;
  line-height: 1.1;
  -webkit-transition: all .3s;
  transition: all .3s;
}

a.reserved:hover{
 background:#000;
}

a.reserved i{
  vertical-align: middle;
  margin-left: .5em;
  margin-top:-.2em;
  display: inline-block;
}

a.detail__link::before {
  position: absolute;
  top: -1px;
  left: 0;
  content: '';
  width: 0;
  height: 2px;
  background-color: #000;
  transition: .3s;
  z-index:5;
}

a.detail__link:hover::before {
  width: 100%;
}

a.detail__link:hover{
  color:#aaa;
}

a.clinic{
  background: #ffbb00;
}

/************* 画像 **************/

figure img{
  margin-left:auto;
  margin-right:auto;
}

figure.Center{
  margin-bottom: var(--s1-space);
}

figure.wide{
  position:relative;
  background: var(--Gray);
  text-align:center;
  width:100vw;
  margin: 0 calc(50% - 50vw) var(--s1-space);
}

figure.wide:last-child{
  margin-bottom:0;
}

img.access--logo{
max-width:320px;
}

.Tel {
  font-family: 'Fjalla One',sans-serif;
  font-weight: 700;
  color: var(--key-Color);
  font-size: 21px;
  margin: 0 0 0 0.5em;
  text-align: center;
}

/*.Tel_b:before {
  font-family: FontAwesome;
  content: '\f095';
  margin-right: 0.1em;
  font-size: 1.8rem;
}*/

.Tel a{
  color: var(--key-Color);
  text-decoration: none;
}

.Tel_b {
  font-size: 34px;
  margin: 0 auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {

  img.access--logo{
    max-width:200px;
    margin:auto;
    }

    figure.wide img{
      object-fit:cover;
      min-height:33.33vh;
    }

}


/************* Footer **************/

#site-footer{
  background: #f2f7ff;
  color :#121212;
  padding: var(--s2-space) var(--row-space);
  border:none;
  width:100vw;
}

#site-footer .containner__wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#site-footer .containner__wrap .Item{
  width: var(--flex_hurf);
}

#site-footer p{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 400;
}

#site-footer p img{
  margin: auto;
  max-width:140px;
}

footer .title{
  max-width: 1100px;
  margin: 0 auto 2em;
}

ul#menu-footer-nav{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-wrap: wrap;
  list-style:none;
  font-size: var(--Text-normal);
  margin:0 0 0;
}

a.freedial{
  color:var(--key-Color);
  font-weight: 600;
  font-size: 1.6411458333333334vw;
  text-decoration: none;
}

a.freedial i{vertical-align: middle;}

ul#menu-footer-nav li{
  margin:0 .5em;
}

.copy{
  padding: 1em;
  font-size: 0.7rem !important;
  text-align: center;
}

ul#menu-footer-nav li a{
  display:block;
  padding:.5em;
  color:#121212;
  font-weight: 400;
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

ul#menu-footer-nav li a:before{
  content:'ー';
}

.sns-icon{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:center;
  padding-bottom:.5em;
  position: relative;
  margin-bottom: var(--s3-space);
}

.sns-icon::after{
  content: '';
  position: absolute;
  background-color: #fff;
  width: 0.5px;
  height:25px;
  left: 50%;
  transform:translateX(-50%);
  bottom:-.5em;
}

.sns-icon i{
  margin:0 .5em;
  font-size:24px;
  color:#fff;
}

.sns-icon a:hover{
  text-decoration: none !important;
  opacity: 0.8;
}


@media screen and (max-width: 767px) {

  .containner__wrap div:last-child{
   width: 100%;
  }

  ul#menu-footer-nav{
    margin-left:auto;
    margin-right:auto;
    margin-top: 1em;
    width: 100%;
  }

  ul#menu-footer-nav li a{
    border:1px solid #ddd;
    text-align: center;
  }

  ul#menu-footer-nav li{
    margin-top: 1em;
  }

  .sns-icon{
    margin-top:1em;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

	#site-footer p img{
		max-width:100px;
	}
	
	.sns-icon img{
		max-width:150px;
	}

}

/************* Page-FV **************/

.page-fv-wrap{
  width:calc(100% - 5.208333333333334vw);
  border-radius: 1.46em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  min-height:50vh;
  position: relative;
  margin-top: 170px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  z-index: 5;
}

.page-fv-wrap .Image{
  width:50%;
  background: url(images/product/products_fv.jpg)no-repeat;
  background-size: cover;
}

.page-fv-wrap .Image.company{
  background:url(images/company/company_fv.jpg)no-repeat center center;
  background-size: cover;
}

.page-fv-wrap .product-safety{
  background: url(images/safety/safety_fv.jpg)no-repeat;
  background-size: cover;
}

.page-fv-wrap .health-for-pet{
  background: url(images/health/health_fv.jpg)no-repeat;
  background-size: cover;
}

.page-fv-wrap .Contents{
  background:#dbeeff;
  background-size: cover;
  position: relative;
  width:50%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  padding:  var(--s3-space);
  text-align: center;
}


.page-fv-wrap .Contents:before{
  position: absolute;
  top: 50%;
  left: 5vw;
  transform: translateY(-50%);
  content: '';
  background: url(images/product/hurt.png)no-repeat;
  background-size: contain;
  width:11.041666666666668vw;
  height:11.041666666666668vw;
}

.page-fv-wrap .Contents.pet:before{
  position: absolute;
  top: 50%;
  left: 5vw;
  transform: translateY(-50%);
  content: '';
  background: url(images/product/dog-cat.svg)no-repeat;
  background-size: contain;
  width:15.041666666666668vw;
  height:15.041666666666668vw;
}

.page-fv-wrap .Contents h1{
  color: #212121;
  font-size: var(--h1);
  font-weight: 500;
  letter-spacing: 0.085em;
  margin-bottom: 0;
  position: relative;
  z-index: 5;
}

.page-fv-wrap .Contents h1 span.kana{
  display: block;
  font-size: 1.0rem;
  text-align: center;
  line-height: 1.2;
  margin-bottom: -1em;
}

.Contents.none::before{
	display:none;
}

.page-fv-wrap .Contents h1 font{
	font-size:1.0rem;
	margin-top:-.5em;
display:block;
}

.breadcrumb{
  background:rgba(255,255,255,0.85);
  padding: var(--s3-space);
  text-align: center;
  color:#fff;
  position: absolute;
  right: 0;
  bottom:0;
  font-size: 0.8rem;
  color: #fff;
  min-width:20vw;
}

.breadcrumb ul{
  margin:0;
  list-style: none;
  font-size: 0.755rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.breadcrumb ul a{
  color: #212121;
  text-decoration: none;
}

.breadcrumb ul li{
  margin:0;
  font-size: 0.755rem;
  color:#969696;
}

.breadcrumb ul li:nth-child(n+2)::before{
  content:'>';
  margin:0 5px;
}

/************* Concept **************/

.Concept__out__image{
  position:relative;
  left:-50%;
  margin-top: var(--out_image);
}

.Flex__wrap:nth-child(even) .Concept__out__image{
  position:relative;
  left:30%;
  margin-top: var(--out_image02);
}

.Flex__wrap:nth-child(even) .Concept__out__image:nth-child(3){
  position:relative;
  left:0;
  margin-top: var(--out_image02);
}

.Flex__wrap .Concents01{
 width: var(--flex_concept01);
}

.Flex__wrap .Concents02{
  width: var(--flex_concept02);
  margin-top:15%;
 }

 .page-fv-wrap .Contents-mission{
   text-align: center;
   margin:auto;
 }

 @media screen and (max-width: 767px) {

  .breadcrumb{
    width:100%;
    padding:.45em .5em;
  }

  .page-fv-wrap .Contents-mission{
    max-width:200px;
  }

  .page-fv-wrap{
      min-height:20vh;
      border-radius: 0.56em;
  }

  .page-fv-wrap .Contents, .page-fv-wrap .Image{
    width:50%;
  }

  .page-fv-wrap .Contents h1{
    font-size:1.1rem;
    line-height: 1.25;
  }

  .page-fv-wrap .Contents h1 span.kana{
    font-size: 0.6rem;
    margin-bottom:0;
  }

  .Flex__wrap:nth-child(even) .Concept__out__image{
    max-width:75%;
  }
	 .page-fv-wrap .Contents h1 font{
		 font-size:0.755rem;
		 margin-top:.5em;
	 }

 }

 /************* Table **************/

 .page-fv-wrap .Image.contact, .page-fv-wrap .Image.privacy-policy, .page-fv-wrap .Image.complete{
  background:url(images/contact/contact_fv.jpg)no-repeat right center;
  background-size: cover;
}

.privacy-policy {
  margin: 0;
}

 dl.list{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  border-top: #fff 1px solid;
  margin:auto;
  background: #fefcf4;
 }

 dl.list:last-of-type{
  border-bottom: #fff 1px solid;
  margin-bottom: 1em;
 }

 dl.list dt{
  width:30%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  font-weight: normal;
  justify-content: center;
  align-items: center;
  background: #f0ece4;
  color:#66564b;
  text-align: center;
 }

 dl.list dt div{
  display: flex;
  flex-direction: row;
 }

 dl.list dt.news{
  width:auto;
  max-width:20%;
 }

 dl.list dt,  dl.list dd{
  padding:1em .5em;
  margin:0;
 }

 dl.list dd{
  padding: 1em;
 }

 dl.list dd{
  width:70%;
 }

 .rev_caution dl.list dt{
  font-style: normal;
  font-weight: bold;
 }

 .submit_wrap p{
text-align: center;
font-weight: normal;
 }
 
 dl.list.min{
  font-size:15px;
  padding:.2em;
 }

 dl.list a{
  color: var(--key-Color);
  font-family: var(--zen), serif !important;
 }

 .single_bottom_arrow{
  margin-top: var(--s2-space);
  padding-top: var(--s2-space);
  color:var(--key-Color);
  border-top:1px solid var(--key-Color);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
 }

 .single_bottom_arrow a{
  color: var(--key-Color);
  font-family: var(--zen), serif;
  text-decoration: none;
  padding:1em;
  border:1px solid var(--key-Color);
 }

 input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="date"], input[type="month"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="week"], input[type="number"], input[type="search"], input[type="tel"], input[type="color"], textarea{
  padding:.5em;
  border:1px solid #ccc;
 }

 select{
  padding:1em;
  border:1px solid #ccc;
  width: 100%;
 }
 
 button, .button, .faux-button, .wp-block-button__link, .wp-block-file .wp-block-file__button, input[type="button"], input[type="reset"], input[type="submit"], .bg-accent, .bg-accent-hover:hover, .bg-accent-hover:focus, :root .has-accent-background-color, .comment-reply-link{
  width:100%;
  border-radius:.46em;
  max-width:600px;
  margin:auto;
  font-size:18px !important;
   font-family: var(--zen), serif !important;
 }
 
 button:hover, .button:focus, .button:hover, .faux-button:focus, .faux-button:hover, .wp-block-button .wp-block-button__link:focus, .wp-block-button .wp-block-button__link:hover, .wp-block-file .wp-block-file__button:focus, .wp-block-file .wp-block-file__button:hover, input[type="button"]:focus, input[type="button"]:hover, input[type="reset"]:focus, input[type="reset"]:hover, input[type="submit"]:focus, input[type="submit"]:hover {
     text-decoration: none;
     background:#e31313;
 }
button:focus{
	background:transparent;
}
 
 .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
     border-color: #ffb900;
     font-size:16px;
     font-family: var(--zen), serif !important;
 }
 
 textarea {
     height: 30rem;
     line-height: 1.5;
     width: 100%;
 }

 span.text_red {
  background: #fe0000;
  padding: 0.2em 0.75em 0.2em 0.75em;
  color: #fff;
  font-size: 13px;
  margin-left: 0.3em;
  text-align: center;
  border-radius: 1.35em;
  line-height: 1.5;
  display:inline-block;
  max-width: 90px;
}

label {
  display: block;
  font-size: 15px;
  font-weight: 400;
  margin: 0;
}

input[type="checkbox"]{
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  top: 5px;
  display: inline-block;
  margin: 0;
  width: 1.5rem;
  min-width: 1.5rem;
  height: 1.5rem;
  background: #fff;
  border-radius: 0;
  border-style: solid;
  border-width: 0.1rem;
  border-color: #6e6c65;
  box-shadow: none;
  cursor: pointer;
}

input[type="radio"]{
  width:18px;
  height:18px;
  vertical-align: middle;
  line-height: 1.0;
  margin-top: -5px;
}

 @media screen and (max-width: 767px) {

  #kv--wrap, .page-fv-wrap{
    margin-top: 80px;
  }

  .br-pc{
    display: none;
  }

  h2.left br.br-pc{
    display: block;
  }
 
  dl.list dt, dl.list dd{
    width:100%;
   }
 
  dl.list dd{
    padding-left:.5em;
    padding-right:.5em;
   }
 
  dl.list dt{
    border-right:none;
          justify-content: flex-start;
   }

   dl.list dt.news{
    width:100%;
    max-width:100%;
   }

   #kv--wrap .caption__wrap{
    font-size: 1.5rem;
    margin-bottom: 0;
    margin-right: 1em;
  }

  #kv--wrap .caption__wrap span{
    font-size: 1.1rem;
    display:none;
  }

  section.bg__cr.top-area{
    margin-top: -5vh;
  }

  p.name{
    font-size: 1.25rem;
    margin-top: -2em;
    position: relative;
    z-index: 2;
  }

  section.concept .left_contents, section.concept .right_contents{
    width:100%;
  }

  section.concept .right_contents{
    margin-top: 1em;
  }

  section.concept{
    padding-top:2.5vh;
  }

  .concept__title{
    font-size: 1.4rem;
  }

  section.concept .right_contents .box figcaption{
    margin-top: 0;
  }

  section.concept .right_contents .box figure img{
    height:30vh;
    object-fit: cover;
  }

  section.concept .right_contents .box figcaption{
    margin-right: 0;
    width: 100%;
  }

  
  a.freedial{
    display: block;
    text-align: center;
    font-size: 30px;
  }

  #site-footer p{
    font-size: 0.9rem;
  }

 
 }
 
 .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
     border-color: #fe0000;
     color: #fe0000;
 }
 
/************* Blog **************/

.page-fv-wrap .Image.blog, .page-fv-wrap .Image.news{
  background:url(images/contact/contact_fv.jpg)no-repeat right center;
  background-size: cover;
}

.blog a{
  color: var(--key-Color);
  text-decoration: none;
}

.blog a:hover{
  text-decoration: underline;
}

hr {
  margin: 4rem auto;
}

p.info{
  font-family: var(--zen);
  font-style: italic;
  font-size: var(--h3);
  text-align: center;
}

.page_navi{
  margin: var(--s1-space) auto 0;
  text-align: center;
  display:block;
}

.wp-pagenavi a, .wp-pagenavi span{
  border: 1px solid var(--key-Color);
  color:var(--key-Color);
  padding:10px 15px;
  font-family: var(--zen), serif !important;
}

.wp-pagenavi span.current{
  background: var(--key-Color);
  color:#fff;
}

.wp-pagenavi a:hover{
  background: var(--key-Color);
  color:#fff;
}

/****************** アニメーション *********************/

.blurTrigger,
.blurTrigger2,
.blurTrigger3 {
  -webkit-filter: blur(10px);
  filter: blur(10px);
  opacity: 0;
  transform: translateY(80px);
  transition: all 1s ease;
}

.blurTrigger.blur{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateY(0);
    transition: all 1s ease;
}

.blurTrigger2.blur2{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateY(0);
    transition: all 1s ease;
}

.blurTrigger3.blur3{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateY(0);
    transition: all 1.5s ease;
}

.blurTrigger4 .three{
  -webkit-filter: blur(10px);
  filter: blur(10px);
  opacity: 0;
  transform: translateY(200px);
}

.blurTrigger4 .three.blur4{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateY(0);
}

.blurTrigger4 .three:first-child{
  transition: all .5s ease;
}

.blurTrigger4 .three:nth-child(2){
  transition: all .8s ease;
}

.blurTrigger4 .three:nth-child(3){
  transition: all 1.1s ease;
}

.blurTrigger4 .three:nth-child(4){
  transition: all 1.2s ease;
}

.blurTrigger4 .three:nth-child(5){
  transition: all 1.4s ease;
}

.blurTrigger4 .three:nth-child(6){
  transition: all 1.7s ease;
}


.blurTriggerleft{
  -webkit-filter: blur(10px);
  filter: blur(10px);
  opacity: 0;
  transform: translateX(80px);
  transition: all .5s ease;
}

.blurTriggerright{
  -webkit-filter: blur(10px);
  filter: blur(10px);
  opacity: 0;
  transform: translateX(-80px);
  transition: all .5s ease;
}

.blurTriggerleft.bluractive{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateX(0);
    transition: all 1s ease;
}

.blurTriggerright.bluractive{
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: translateX(0);
    transition: all 1.5s ease;
}

.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}

h2::after{
  height:0;
}

h2.appeartext::after{
  height: 5vh;
  transition: all 1.5s ease;
}

/****************** お客様の声 *********************/

.rev__title{
font-size:1.92rem;
  color:#3b1616;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: bold;
  margin-bottom: .5em;
  position: relative;
  line-height: 1.055;
}

.rev__title span{
  display: block;
  font-size: 1.56rem;
}

.rev__title.cat::after{
  content: '';
  background: url(images/review/cat.png)no-repeat right bottom;
  background-size: contain;
  width:10vw;
  height: 10vh;
  position: absolute;
  right: 0;
  top:0;
z-index:-1;
}

.rev__title.dog::after{
  content: '';
  background: url(images/review/dog.png)no-repeat right bottom;
  background-size: contain;
  width:10vw;
  height: 10vh;
  position: absolute;
  right: 0;
  top:0;
z-index:-1;
}

.rev_name{
  color:#3b1616;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size:1.25rem;
  margin-bottom: .5em;
  font-weight: bold
}

.rev_day{
  font-size: 1.1rem;
  color:#66564b;
  margin-bottom: .5em;
}

.rev_text{
  position: relative;
}
.rev_text .inner{
  padding: 1em;
z-index: 2;
background: #fffae8;
border:8px solid rgba(255,255,255,0.85);
box-shadow: 0px 0px 15px -5px #b6b68b;
font-family: 'Zen Maru Gothic', sans-serif;
font-size: 1.1rem;
line-height: 1.85;
}

.rev_text b{
  font-weight: 700;
  display: block;
  color:#3b1616;
  margin-bottom: .5em;
}

.rev_text::after{
  content: '';
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #fbf4db;
  transform:rotate(-5deg);
  position: absolute;
  top:5%;
  left:0;
}

section.rev_caution{
  background: url(images/review/recruting-bg.jpg)no-repeat;
  background-size: cover;
}

.rev__caution_wrap{
  padding: 1em;
  border-radius: 1.2em;
  border:solid 10px rgba(255,255,255,0.55);
  margin-top: 2em;
  background: #fff;
}

.rev__caution_wrap b.underline{
 text-decoration: underline;
 font-weight: bold;
 color:#3b1616;
}

.rev__caution_wrap .orange{
  color:#ffa800;
  text-decoration: underline;
}

.rev__caution_wrap h3 img{
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

.rev__caution_wrap h3{
	margin-top:0;
}

.logo-min{
	max-width:170px;
}

@media screen and (max-width: 767px) {
	.rev__title{
		font-size:2.2rem;
	}
		.rev__title span{
		font-size:1.4rem;
	}
	.rev_name{
		font-size:1.25rem;
	}
	.logo-min{
	max-width:100px;
}
	
}
