@charset "UTF-8";
/*

*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700&family=Zen+Kaku+Gothic+New:wght@500;700&display=swap');
@import url("ress.css");
/*@import url("assets/css/font.css");*/

/*      
font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:500;
font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:700;
font-family: 'Montserrat', sans-serif; font-weight:700;
*/

/*----------------------------------------------------------------- 
リセット
----------------------------------------------------------------- */
*,
*:after,
*:before {
	margin:0;
	padding:0;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
	border: 0;
	outline: 0;
	}
ol, ul,li{ list-style: none; margin:0; padding:0;}
:focus,
:active { outline:0;}
table {
	border-collapse: collapse;
	border-spacing: 0;
	}
th,
td { padding:8px; /*line-height:1.4em;*/}
input{ }
.switch {
	visibility: hidden;
}
h1, h2, h3, h4, h5, h6, p,dt ,dl,dd{ font-size:inherit; margin:0; padding:0;  }
hr{ display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
ul{ list-style:none; margin:0; padding:0; }
li{ margin:0; padding:0; }
*{margin:0; padding:0; }
html{font:62.5%/1.8 ArialMT;}
/* IE11だけに適応 */
_:lang(x)::-ms-backdrop, .selector {
	font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:400;
}
body{
	font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:400;
    color: #4A3535;
	-moz-font-feature-settings: "pkna" 1;
  -webkit-font-feature-settings: "pkna" 1;
  font-feature-settings: "pkna" 1;
	letter-spacing: 0.05em;
	font-size:1.6rem;
	line-height:1.8;
	}
h1, h2, h3, h4, h5, h6{font-weight:700;}
b, strong, .textB{font-weight:700;}
@media screen and (min-width: 360px) { * { -webkit-text-size-adjust: none; } }
/* ----------- anchor */
a {color: #4A3535; text-decoration:none;}
a:hover {opacity:0.8;}
a .imgbt:hover{opacity:0.8;filter:alpha(opacity=80);cursor:pointer;}
a { -webkit-tap-highlight-color: rgba(0,0,0,0); }
a.telLink:hover{opacity:1; cursor:default;}


body{
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
footer {
  margin-top: auto;
}

body.noscroll {
  overflow: hidden;
}

/*----------------------------------------------------
 heater
----------------------------------------------------*/
header{}
header h1 img{width: 100%; height: auto;}
@media only screen and (min-width:813px){
}
@media only screen and (max-width:812px){
header h1 img{max-width:812px;}
}


/*----------------------------------------------------
 menu
----------------------------------------------------*/



input[type=checkbox]#nav_btn{display: none;}
@media only screen and (min-width:813px) {
    #btn_menu{display: none;}  
.menuBox{background-color:#fff;
    border-bottom: 1px solid #D7E3ED;
}
    .menuBox.fixed{
        position: fixed;
	    top: 0;
	    width: 100% !important;
	    z-index: 99;
        background-color:#fff;
        border-bottom: 1px solid #D7E3ED;
    }
 
    
    
.menuBox ul{width:100%; max-width: 1080px; margin: 0 auto;}
.menuBox ul{display: flex; justify-content: center;}
.menuBox ul li{width: calc(100% / 6); padding:15px 25px; text-align:center;
font-size: 1.5rem;
font-style: normal;
line-height: 1.6;
letter-spacing: 0.8px;
    border-bottom: 2px solid #fff;}
}



@media only screen and (min-width:813px){
    .menuBox ul li:hover{
        border-bottom: 2px solid #FF6D1F;
        transition: 1.0s;
-webkit-transition: 1.0s; /* Chrome、Safari用 */
-moz-transition: 1.0s; /* Firefox用 */
-o-transition: 1.0s; /* Opera用 */
    }   
}
@media only screen and (max-width:812px){
    
    #btn_menu:not(.fixed){
        top: -60px;
    }    
    
#btn_menu {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
    display: block;
    width: 60px;
    height: 60px;
    color: #fff;
    cursor: pointer;
    padding: 10px 10px 10px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2260%22%20height%3D%2260%22%20viewBox%3D%220%200%2060%2060%22%20fill%3D%22none%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0%200H60V52V55.2604C57.5405%2055.2936%2055.0811%2056.0834%2052.6216%2057.6296C47.5946%2060.7901%2042.5676%2060.7901%2037.5405%2057.6296C35.027%2056.0494%2032.5135%2055.2593%2030%2055.2593V55.2604C27.5405%2055.2936%2025.0811%2056.0834%2022.6216%2057.6296C17.5946%2060.7901%2012.5676%2060.7901%207.54053%2057.6296C5.02702%2056.0494%202.51351%2055.2593%200%2055.2593V52V0Z%22%20fill%3D%22%23005AAD%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-size: 60px 60px;
    transition: 0.5s;
-webkit-transition: 0.5s; /* Chrome、Safari用 */
-moz-transition: 0.5s; /* Firefox用 */
-o-transition: 0.5s; /* Opera用 */

  }
  #btn_menu:before, #btn_menu:after {
    position: absolute;
    display: block;
    width: 28px;
    height: 2px;
    content: '';
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-color: #fff;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 13px;
  }
    
    #btn_menu:before{top:11px;}
    #btn_menu:after{top:19px;}
    
  #btn_menu span:first-child {
    position: relative;
    margin: 8px 0;
    display: block;
  }

 #btn_menu.active::before {
    -webkit-transform: translateY(2px) rotate(45deg);
    transform: translateY(5px) rotate(19deg);
  }
#btn_menu.active::after {
    -webkit-transform: translateY(-6px) rotate(-45deg);
    transform: translateY(-3px) rotate(-25deg);
  }
  #btn_menu span:last-child {
    font-family: 'Montserrat', sans-serif;
      font-size: 1.1rem;
font-weight: 700;
line-height: 0px; /* 0% */
letter-spacing: 0.65px;
    position: absolute;
    bottom: 23px;
    width: 100%;
    left: 0;
    display: block;
    text-align: center;
  }
  #btn_menu span:last-child::before {
    content: "MENU";
  }
  #btn_menu.active span:last-child::before {
    content: "CLOSE";
  }
    .h_menuBox{
    position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 9;
        background-color: #fff;
        padding: 0 2% 60px;
        border: none;
        display: none;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
  }
    header .h_menuBox.active {
        display: flex;
        flex-flow: column;
        justify-content: center;
    }
    
    header .h_menuBox .menuBox{padding-top: 13vw;margin-bottom: 40px;}
    header .h_menuBox .menuBox ul{}
    header .h_menuBox .menuBox ul li{text-align: center; font-size: 20px; font-weight: 600;}
    header .h_menuBox .menuBox ul li:not(:last-of-type){margin-bottom: 5vw;}
    
    .menuLogo{display: block;
width: 120px;
margin: auto auto 0 auto;}
}


.langMenu {
    background-color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
padding: 20px 20px 20px 40px;
line-height: 1em;
border-radius: 50px;
width: 154px;
}

.langMenu::before{
    content: "";
display: block;
  position: absolute;
  left: 15px;
  top: 50%;
  margin-top: -8px;
  content: "";
  width: 16px;
  height: 16px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%227.5%22%20stroke%3D%22black%22%2F%3E%3Cpath%20d%3D%22M11.1%208C11.1%2010.1552%2010.7059%2012.0822%2010.0896%2013.4517C9.4522%2014.8681%208.67477%2015.5%207.99996%2015.5C7.32516%2015.5%206.54773%2014.8681%205.91034%2013.4517C5.29407%2012.0822%204.89996%2010.1552%204.89996%208C4.89996%205.84482%205.29407%203.91781%205.91034%202.54833C6.54773%201.13191%207.32516%200.5%207.99996%200.5C8.67477%200.5%209.4522%201.13191%2010.0896%202.54833C10.7059%203.91781%2011.1%205.84482%2011.1%208Z%22%20stroke%3D%22black%22%2F%3E%3Cline%20x1%3D%220.200012%22%20y1%3D%227.5%22%20x2%3D%2215.8%22%20y2%3D%227.5%22%20stroke%3D%22black%22%2F%3E%3C%2Fsvg%3E');
    
}

.langMenu #clts-lang-selecter{font-size: 1.4rem;
font-weight: 700;
background:none;
width: 96px;
text-align: center;
}
#clts-lang-selecter {-webkit-appearance: none;
    appearance: none;
color: #111;}

.langMenu::after{
display: block;
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -3px;
  content: "";
  width: 10px;
  height: 5px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%227%22%20viewBox%3D%220%200%2013%207%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1.5%201L6.5%206L11.5%201%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E');
}
    .langMenu{position:absolute; right:20px; top: 20px; z-index: 10;}
    .langMenu #clts-lang-selecter{font-size: 1.6rem;}
    .langMenu{padding: 15px 20px 15px 30px;}
@media only screen and (min-width:813px) {

    
}

/*----------------------------------------------------
 footer
----------------------------------------------------*/
footer{padding: 40px 4%;
  background-color: #000000;
  font-size: 1.4rem;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;}
footer .flogo{margin-bottom: 20px;}
footer .okinawa{display: inline-block; margin-bottom: 20px;}
@media only screen and (max-width:812px){
    footer{padding: 40px 4%;}
}






/*----------------------------------------------------
 contactBox
----------------------------------------------------*/

.style_wap > section > .box:not(:last-of-type){
    margin-bottom: 40px;
}
.style_wap > section > .box{
    /*! max-width: 700px; */
    /*! width: 100%; */
    /*! margin-left: auto; */
    /*! margin-right: auto; */
}

.style-01{padding:80px 4%;position: relative;}
.style_wap > .style-01:nth-of-type(even){padding:80px 4%; background-color: #FFF2DF;
}


.style_wap > .style-01:nth-of-type(odd)::after{
    z-index: 1;
    position: absolute;
    bottom: -19px;
    left: 0;
 content: "";
  display: block;
  width: 100vw;
  height: 20px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2274%22%20height%3D%2220%22%20viewBox%3D%220%200%2074%2020%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23clip0_62_272)%22%3E%3Cpath%20d%3D%22M55.4%205.92593C43%20-1.97531%2030.6%20-1.97531%2018.2%205.92593C12.1333%209.79158%206.06666%2011.766%200%2011.8491L0%2020L74%2020L74%2011.8519C67.8%2011.8518%2061.6%209.87653%2055.4%205.92593Z%22%20fill%3D%22white%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_62_272%22%3E%3Crect%20width%3D%2274%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E');
  background-position-x: 0%;
  background-position-y: bottom;
  background-repeat: repeat-x;
  background-size: 74px;
  animation-name: slide_img;
  animation-duration: 200s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  margin: calc(-50vw + 50%) 0;
   transform: scaleY(-1); 
}

.style_wap > .style-01:nth-of-type(even)::after{
  z-index: 1;
    position: absolute;
    bottom: -19px;
    left: 0;
 content: "";
  display: block;
  width: 100vw;
  height: 20px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2274%22%20height%3D%2220%22%20viewBox%3D%220%200%2074%2020%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23clip0_62_273)%22%3E%3Cpath%20d%3D%22M55.4%205.92593C43%20-1.97531%2030.6%20-1.97531%2018.2%205.92593C12.1333%209.79158%206.06666%2011.766%200%2011.8491L0%2020L74%2020L74%2011.8519C67.8%2011.8518%2061.6%209.87653%2055.4%205.92593Z%22%20fill%3D%22%23FFF2DF%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_62_273%22%3E%3Crect%20width%3D%2274%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E');
  background-position-x: 0%;
  background-position-y: bottom;
  background-repeat: repeat-x;
  background-size: 74px;
  animation-name: slide_img;
  animation-duration: 200s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  margin: calc(-50vw + 50%) 0;
    transform: scaleY(-1);
}


.style_wap > section > .box > div:not(:last-of-type){
    margin-bottom: 40px;
}

.style-02{padding:80px 4%; background-color: #FFF2DF;}


.content_bg{position: relative; overflow:hidden;
padding-top: 400px;
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
}

.content_bg.bg01::after{
    z-index: 1;
    position: absolute;
    bottom: 0;
    left: 0;
 content: "";
  display: block;
  width: 100vw;
  height: 20px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2274%22%20height%3D%2220%22%20viewBox%3D%220%200%2074%2020%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23clip0_62_272)%22%3E%3Cpath%20d%3D%22M55.4%205.92593C43%20-1.97531%2030.6%20-1.97531%2018.2%205.92593C12.1333%209.79158%206.06666%2011.766%200%2011.8491L0%2020L74%2020L74%2011.8519C67.8%2011.8518%2061.6%209.87653%2055.4%205.92593Z%22%20fill%3D%22white%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_62_272%22%3E%3Crect%20width%3D%2274%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E');
  background-position-x: 0%;
  background-position-y: bottom;
  background-repeat: repeat-x;
  background-size: 74px;
  animation-name: slide_img_r;
  animation-duration: 200s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  margin: calc(-50vw + 50%) 0;
}
.content_bg.bg02::after{
    z-index: 1;
    position: absolute;
    bottom: 0;
    left: 0;
 content: "";
  display: block;
  width: 100vw;
  height: 20px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2274%22%20height%3D%2220%22%20viewBox%3D%220%200%2074%2020%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23clip0_62_273)%22%3E%3Cpath%20d%3D%22M55.4%205.92593C43%20-1.97531%2030.6%20-1.97531%2018.2%205.92593C12.1333%209.79158%206.06666%2011.766%200%2011.8491L0%2020L74%2020L74%2011.8519C67.8%2011.8518%2061.6%209.87653%2055.4%205.92593Z%22%20fill%3D%22%23FFF2DF%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_62_273%22%3E%3Crect%20width%3D%2274%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E');
  background-position-x: 0%;
  background-position-y: bottom;
  background-repeat: repeat-x;
  background-size: 74px;
  animation-name: slide_img_r;
  animation-duration: 200s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  margin: calc(-50vw + 50%) 0;
}

@media only screen and (max-width:812px){
.content_bg{position: relative; overflow:hidden;
padding-top: 250px;
    }
}



/* */
.textBox{}

/* テキスト */
.Box01{text-align: center;}

/*  */
.Box02{
margin-left: auto;
margin-right: auto;
max-width: 600px;    
text-align: center;}
.Box02 > p.textB{font-size: 2.0rem;
font-weight: 700;
line-height: 160%; /* 32px */
letter-spacing: 1px;
}
.Box02 > p:not(:last-of-type){
    margin-bottom: 10px;
}

.Box02 > p:not(.textB){
 text-align: center;
}

.Box03{
margin-left: auto;
margin-right: auto;
max-width: 600px;
background: #E6F3FF;
padding:30px;

border-radius: 8px;
}
.Box03 .tit{
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
}

.style_buyer .Box04:not(:last-of-type){margin-bottom: 40px;}

.style_buyer .Box04 figure{
    width: 244px;
    background: #fff;
    position: relative;
    overflow: hidden;
    margin-right: 40px;
    margin-bottom: 0;
    border: 1px solid #eaeaea;
}
.style_buyer .Box04 figure::before{
    content: "";
    padding-top: 100%;
    display: block;
}
.style_buyer .Box04 figure img{
 width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    right: 0;
    bottom: 0;
    margin: auto;
}

.style_buyer .Box04 dl{display: flex;flex-wrap: wrap;
font-size: 1.4rem;}
.style_buyer .Box04 dl dt{
    width:90px;
    font-weight: 700;
}
.style_buyer .Box04 dl dd{width:calc(100% - 90px);}

.style_buyer .Box04 dl dt:not(:first-of-type),
.style_buyer .Box04 dl dd:not(:first-of-type){margin-top: 5px;}

.mapBox {
  position: relative;
  width: 100%;
    max-width: 1404px;
  height: 0;
  padding-top: 30%;
    margin-top: 20px;
    margin: 0 auto 80px;
}
.mapBox iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.style_buyer .Box04 h4{width:100%;
border-bottom: 2px #FF7328 solid;
padding: 0 0 10px 0;
margin-bottom: 20px;
    font-size: 2.0rem;
}

@media only screen and (min-width:813px) {
    .style_buyer .Box04{display: flex; flex-wrap: wrap;width: 100%;max-width: 700px;margin-left: auto;margin-right: auto;align-items: start;}
    .style_buyer .Box04 h4{width:100%;}
    .style_buyer .Box04 .figure{width:264px; margin-right: 40px;}
    .style_buyer .Box04 dl{width: calc(100% - 284px);}
    
}
@media only screen and (max-width:812px){
.style_buyer .Box04 figure{
    width: 100%;
    max-width: 350px; margin: 0 auto 20px auto;}
    .style_buyer .Box04 h4{font-size: 1.8rem;}
.mapBox {

  padding-top: 50%;
    }
    
      
    }

.style_info .infoBox{width:100%; margin:0 auto; max-width: 600px;}

.style_info .infoBox dt{color: rgba(0, 0, 0, 0.50);
font-family: 'Montserrat', sans-serif; font-weight:600;
font-size: 1.4rem;
font-style: normal;
line-height: 140%;
letter-spacing: 0.7px;}
.style_info .infoBox dd{}
.style_info .infoBox dl{
    border-bottom: 1px solid #EAEAEA;
    padding-bottom:20px;
}
.style_info .infoBox > dl:not(:last-of-type){margin-bottom:20px;}

#btn_info{margin: 40px auto 0 auto;
display: block;
padding-right: 20px;
background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        appearance: none;
position: relative;
height: 19px;
line-height: 19px;
    font-size: 1.6rem;
}
#btn_info::before{content: "もっと見る";
color: #000;
text-align: center;
font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:700;
font-size: 1.6rem;
font-style: normal;
line-height: 140%; /* 22.4px */
letter-spacing: 0.8px;}
#btn_info::after{content: "";
display: block;
width: 19px;
height: 19px;
position: absolute;
right: 0;
top: 2px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Ccircle%20cx%3D%229.5%22%20cy%3D%229.5%22%20r%3D%229.5%22%20transform%3D%22matrix(1%200%200%20-1%200.5%2019.5)%22%20fill%3D%22%23FF6D1F%22%2F%3E%3Cpath%20d%3D%22M6%2011.5L10%207.5L14%2011.5%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E');
background-repeat: no-repeat;
background-position: center center;
background-size: 19px;
transform: scaleY(-1);
}

#btn_info.on::before{content: "閉じる";
color: #000;
text-align: center;
font-family: 'Zen Kaku Gothic New', sans-serif; font-weight:700;
font-size: 1.6rem;
font-style: normal;
line-height: 140%; /* 22.4px */
letter-spacing: 0.8px;}
#btn_info.on::after{
transform: scaleY(1);
}




.otopaBox{width:100%; max-width: 600px;
display: flex;
justify-content: center;
margin: 0 auto;
}
.otopaBox > div:first-of-type{margin-right: 40px;}
.otopaBox > div img{max-width:100%; height: auto;}
.tgdeta{display: none;}
/* 画像のみ */
.parts_img figcaption{margin-top: 1px; text-align: center;}
.parts_img.imgBox01{text-align: center;}
.parts_img.imgBox01 .img{text-align: center;}
.parts_img.imgBox01 .img span img{max-width: 100%; height: auto;}

.parts_img.imgBox02{width:100%; max-width: 1080px;margin: 0 auto;}
.parts_img.imgBox02{
    display: flex;
    flex-wrap: wrap;
  gap:12px;
}


.parts_img.imgBox02 .img figure{
  width: 100%;
}

.parts_img.imgBox02 .img span{
   background-color: #fff;
border: 1px solid #EAEAEA;
/*! margin-bottom: 12px; */
height: 80px;
justify-content: center;
align-items: center;
padding: 8px;
   position: relative;
  display: flex;
  width: 100%;
  height: 80px;
}
.parts_img.imgBox02 .img span img{
   /*! max-width: 100%; */ /*! height: auto; */
/*   width: auto;
   height: auto;*/
   max-width: 90%;
   max-height: 90%;
   position: absolute;
   top: 0;
   left: 0;
   object-fit: cover;
   right: 0;
   bottom: 0;
   margin: auto;
}
@media only screen and (min-width:813px){

.parts_img.imgBox02 > .img{
    width: calc((100% - 36px) / 4);
}
    .parts_img.imgBox02 > .img:not(:nth-child(4n)){
        /*! margin-right: 12px; */
    }
    
    
    
}
@media only screen and (max-width:812px){
.parts_img.imgBox02 .img{ 
    width: calc((100% - 12px) / 2);
}
    .parts_img.imgBox02 > .img:not(:nth-child(2n)){
       /* margin-right: 12px;*/
    }
    
    .parts_img.imgBox02 > .img img{
   /*! max-width: 100%; */ /*! height: auto; */
   width: auto;
   height: auto;
   max-width: 80%;
        max-height: 80%;}
}


.flexBox01{width:100%; max-width: 1080px; margin-left: auto; margin-right: auto;}
.flexBox01 h3,
.flexBox01 h4,
.flexBox01 h5{color: #005AAD;
font-weight: 700;
line-height: 140%; /* 33.6px */
letter-spacing: 1.2px;
font-size: 2.4rem;
text-align: center;
}
.flexBox01 .subtit{color: #005AAD;
font-weight: 700;
line-height: 160%; /* 25.6px */
letter-spacing: 0.8px;
text-align: center}
.flexBox01 > div .txt{margin-top: 20px;
  padding-bottom: 20px;}

.flexBox01 > div .txt img{width:100%; height: auto;}

.flexBox01 > div{
    background-color: #fff;
    padding: 20px 20px 30px 20px;
    border-radius: 8px;
    margin-bottom: 40px;
}
.flexBox01 > div .btn-m{
margin-top: auto;
    display: block;
    padding: 18px 0px;
    font-weight: 700;
line-height: 140%; /* 22.4px */
letter-spacing: 0.8px;
    color: #fff;
    text-align: center;
    position: relative;
    background-color: #005AAD;
    border-radius: 50px;
}

.flexBox01 > div .btn-m::after{
position: absolute;
  display: block;
  right: 15px;
  top: 44%;
  width: 4px;
  height: 8px;
  content: "";
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226%22%20height%3D%2210%22%20viewBox%3D%220%200%206%2010%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1%209L5%205L1%201%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E');
background-size: contain;
background-repeat: no-repeat;
}

@media only screen and (min-width:813px){
    .flexBox01{display: flex; flex-wrap: wrap;}
.flexBox01 > div{ display: flex;
    flex-flow: column;
    width: calc((100% - 78px) / 3);
}
.flexBox01 > div:not(:nth-of-type(3n)){
        margin-right: 39px;
    }    
}

#about{padding: 80px 4% 40px 4%;}
#about p.toptext{text-align: center; font-size: 2.0rem; line-height: 1.8; margin-bottom: 80px;}
#about .slide_img{text-align: center; margin-bottom: 40px;}
#about .slide_img img{margin: 0 auto;}

#about .aboutBox{}

#about .aboutBox h2{
background: linear-gradient(#c30f23 0%, #910817 100%);
    padding: 20px 10px;
    text-align: center;
    font-weight: 700;
    font-size: 2.0rem;
    color: #fff;
}

#about .aboutBox > div > div{background-color: #fff; padding: 20px; border-left: 1px solid #E4E4E4; border-right: 1px solid #E4E4E4; border-bottom: 1px solid #E4E4E4;}
#about .aboutBox > div > div p{font-size: 1.8rem;}
.btn01{
    border: 1px solid #910717;
    border-radius: 3px;
    font-size: 1.6rem;
    padding: 8px;
    text-align: center;
    font-weight: 700;
    color: #910717;
    display: inline-block;
    background-color: #fff;
}

.btn01:hover{background-color: #910717; color: #fff;}


#about .aboutBox > div > div figure{text-align: center;}
#about .aboutBox > div > div figure img{max-width: 100%; height: auto;}
#about .slide_img{display: flex; width:100%; max-width: 1404px; margin: 0 auto 40px;}

@media only screen and (min-width:813px){
#about .slide_img img{width: calc(100% / 6); height: auto;}

#about .aboutBox{display: flex; max-width: 1404px; margin: 0 auto; gap:40px;}
    #about .aboutBox > div{width: calc((100% - 40px) /2);}
    #about .aboutBox > div > div{height: calc(100% - 76px);}
}
@media only screen and (max-width:812px){
#about{padding: 30px 4% 30px 4%;}
#about .slide_img{display: flex; flex-wrap: wrap; gap:20px 0;}
#about .slide_img img{width: calc(100% / 3); height: auto;}   
}

.style_contents > section{padding: 40px 4%;}


.title01{font-size: 3.0rem;font-weight: 700;padding-bottom: 20px; margin-bottom: 40px;text-align: center;}
.title01::after{
    content: "";
    display:block;
    margin: 20px auto 0 auto;
    height: 3px;
    width: 80px;
    background-color: #bc0e22;
}

.style_free .page_nav{
    max-width: 1404px;
    margin: 0 auto;
    background-color: #F6F8FA;
    padding: 20px;
    display: flex;
    gap:20px;
}
.style_free .page_nav li{width: calc((100% - 100px) / 6);}

.style_free .page_nav li a{border: 1px solid #910717;
    border-radius: 3px;
    font-size: 1.6rem;
    padding: 8px;
    text-align: center;
    font-weight: 700;
    color: #910717;
display: inline-block;
    background-color: #fff;
width: 100%;}
.style_free .page_nav li a:hover{background-color: #910717; color: #fff;}

.shopdeta{
background: #fff;
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
}


.shopdeta h4{
    background: linear-gradient(#c30f23 0%, #910817 100%);
    padding:10px;
    font-weight: 700;
    font-size: 2.0rem;
    color: #fff;
}

.shopdeta > div{
    padding: 20px 0;
}

.shopdeta > div{background-color: #fff; padding: 20px;}
.shopdeta{border: 1px solid rgba(0, 0,0,0.04);}
.shopdeta:hover{border:1px solid #910717;}

.shopdeta > div > p:first-of-type{font-size: 1.8rem; margin-bottom: 20px;}
.shopdeta .deta{padding: 10px; background-color:#F6F8FA; margin-bottom: 20px}

.shoplistBox .shopdeta figure{overflow: hidden;}
.shoplistBox .shopdeta figure img{width: 100%;height: auto;}
.shoplistBox .shopdeta .btn01{width: 100%;}
@media only screen and (min-width:813px){
    .shoplistBox{display: flex; flex-wrap: wrap;
        gap:20px;
        
    max-width: 1404px;
    margin: 0 auto;}
    .shoplistBox .shopdeta{width: calc((100% - 40px)/3);}
}
@media only screen and (max-width:812px){
    .shoplistBox .shopdeta:not(:last-of-type){margin-bottom: 40px;}
    .style_free .page_nav{flex-wrap: wrap;}
    .style_free .page_nav li{width: calc((100% - 20px) / 2);}
}


.gmap_iframe {
    aspect-ratio: 16 / 9;
    max-width: 1000px;
    width: 100%;
    height: auto;
}

/*----------------------------------------------------
 title
----------------------------------------------------*/
.title01{font-size: 3.0rem;font-weight: 700;padding-bottom: 20px; margin-bottom: 40px;text-align: center;}
.title01::after{
    content: "";
    display:block;
    margin: 20px auto 0 auto;
    height: 3px;
    width: 80px;
    background-color: #bc0e22;
}

.title02 {
    display: flex;
    align-items: center;
}

.title02:before,
.title02:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #BC0E22;
}

.title02:before {
    margin-right: 4rem;
}

.title02:after {
    margin-left: 4rem;
}

.title02{display: flex;
  text-align: center;
  justify-content: center;
  font-size: 2.0rem;
  align-items: center;
  margin-bottom: 40px;
color: #BC0E22;}

.title03::before, .title03::after {
  content: "";
  display: block;
  width: 2px;
  height: 26px;
  background-color: #005AAD;
}

.title03::before {
  transform: rotate(-34deg);
  margin-right: 15px;
}

.title03::after {
  transform: rotate(34deg);
  margin-left: 15px;
}

@media only screen and (max-width:812px){
    .title01{font-size: 2.6rem;}
    .title03{font-size: 2.4rem;}
}



/*- list --------  */
.list01{list-style:none;}
.list01 li{position:relative; padding-left:1.6rem; margin-bottom:5px;}
.list01 li:before{content:"・"; display:inline-block; line-height:140%; position:absolute; margin-top:3px; left:0;}
.list01 li:last-child{margin-bottom:0;}
@media only screen and (max-width:812px){
    .list01 li{line-height: 1.4;}
    .list01 li:before{line-height: 1.4;top:0;}
}

/* 枠付き */
.list02{list-style:none; padding: 20px 30px; border:1px solid #ccc; -moz-border-radius: 20px;
-webkit-border-radius: 20px;
-ms-border-radius: 20px;
border-radius: 20px;}
.list02 li{position:relative; padding-left:2.8rem; margin-bottom:5px;}
.list02 li:before{content:"●"; display:inline-block; line-height:140%; position:absolute; margin-top:3px; left:0; color:#094;}
.list02 li:last-child{margin-bottom:0;}

.list03{list-style:none;}
.list03 li{margin-bottom:15px;}
.list03 li:last-child{margin-bottom:0;}

.list_notes{list-style:none;font-size: 1.3rem;}
.list_notes li{position:relative; padding-left:1.6rem;}
.list_notes li:before{content:"※"; display:inline-block; line-height:140%; position:absolute; margin-top:3px; left:0;}
.list_notes li:last-child{margin-bottom:0;}

/* 英数字 */
.list_n01{counter-reset:number; list-style:none; }
.list_n01 > li{padding-left:17px; position:relative;}
.list_n01 > li:before{counter-increment: number; content: counter(number) "."; display:inline-block;position:absolute; left:0;}
.list_n01 > li:last-child{margin-bottom:0;}

/* 英数字 */
.list_n02{counter-reset:number2; list-style:none;}
.list_n02 > li{padding-left:25px; position:relative;}
.list_n02 > li:before{counter-increment: number2; content: counter(number2) ")"; display:inline-block; position:absolute; left:0;}
.list_n02 > li:last-child{margin-bottom:0;}

/* 漢数字 */
.list_n04{counter-reset:number3; list-style:none;}
.list_n04 li{padding-left:25px; position:relative;}
.list_n04 li:before{counter-increment: number3; content: counter(number3,cjk-ideographic) ; display:inline-block; position:absolute; left:0;}
.list_n04 li:last-child{margin-bottom:0;}

/* カタカナ */
.list_kana{counter-reset:kana; list-style:none; }
.list_kana li{padding-left:20px; position:relative;}
.list_kana li:before{counter-increment: kana; content: counter(kana,katakana) ")"; display:inline-block; position:absolute; left:0;}
.list_kana li:last-child{margin-bottom:0;}

/*wp-pagenavi base*/


@media only screen and (max-width:812px){
.sp_scrolle_wap{border:1px solid #dcdcdd;width:100%; padding:10px;}
.sp_scrolle{
overflow-x: scroll;
width:100%;
max-width:1000px;
}
.sp_scrolle img{
width:640px;
display: block;
margin:0 auto;}
.sp_scrolle table{white-space: nowrap; width:1080px;}

.scroll-hint-icon{width: 150px !important;
height: 90px !important;}
.scroll-hint-text{font-size:11px !important;}
}

.slick-dots li button {      
  background: transparent;   
  border:0;   
  font-size: 0pt; 
}
main.form{margin:0 0 0}


.wap01{width:100%; max-width: 700px; margin-left: auto; margin-right:auto;}
.wap02{width:100%; max-width: 740px; margin-left: auto; margin-right:auto;
line-height: 150%; /* 21px */
letter-spacing: 0.7px;}
.wap{width:100%; max-width: 1080px; margin-left: auto; margin-right:auto;}
.wap03{width:100%; max-width: 1404px; margin-left: auto; margin-right:auto;}


/*----------------------------------------------------
 Anime
----------------------------------------------------*/
@keyframes slide_img {
  100% {
    background-position:-10000px 0;
  }
}
@keyframes slide_img_r {
  100% {
    background-position:10000px 0;
  }
}
/*----------------------------------------------------
 common
----------------------------------------------------*/
.fl { float: left; }
.fr { float: right; }

/* placeholder */
input::-webkit-input-placeholder {
 font-size: smaller;
}
input:-moz-placeholder {
 font-size: smaller;
}

.pcNone{ display:none !important;}
.spNone{ display:initial !important;}
.spOnly{display: none !important;}
.btPCNone{display:none !important;}
@media only screen and (max-width:812px){
.pcNone{ display:initial !important;}
.spNone{ display:none !important;}
.spOnly{display:inline !important;}
.btPCNone{display:inline;}
}

a[href*="tel:"] {
	pointer-events: none;
}

@media only screen and (max-width: 812px) {
	
	a[href*="tel:"] {
		pointer-events: initial;
	}
}

.mb0 { margin-bottom:0 !important;}
.mb5 { margin-bottom:5px!important;}
.mb10 { margin-bottom:10px!important;}
.mb15 { margin-bottom:15px!important;}
.mb20 { margin-bottom:20px!important;}
.mb25 { margin-bottom:25px!important;}
.mb30 { margin-bottom:30px!important;}
.mb40 { margin-bottom:40px!important;}
.mb50 { margin-bottom:50px!important;}
.mb60 { margin-bottom:60px!important;}
.mb70 { margin-bottom:70px!important;}
.mb80 { margin-bottom:80px!important;}
.mb90 { margin-bottom:90px!important;}
.mb100 { margin-bottom:100px!important;}
.mb120 { margin-bottom:120px!important;}

.ml0 { margin-left:0 !important;}
.ml5 { margin-left:5px!important;}
.ml10 { margin-left:10px!important;}
.ml12 { margin-left:12px!important;}
.ml13 { margin-left:13px!important;}
.ml15 { margin-left:15px!important;}
.ml20 { margin-left:20px!important;}
.ml25 { margin-left:25px!important;}
.ml30 { margin-left:30px!important;}

.mr0 { margin-right:0 !important;}
.mr5 { margin-right:5px!important;}
.mr10 { margin-right:10px!important;}
.mr15 { margin-right:15px!important;}
.mr20 { margin-right:20px!important;}
.mr30 { margin-right:30px!important;}

.mt0 { margin-top:0 !important;}
.mt5 { margin-top:5px!important;}
.mt10 { margin-top:10px!important;}
.mt15 { margin-top:15px!important;}
.mt20 { margin-top:20px!important;}
.mt30 { margin-top:30px!important;}
.mt40 { margin-top:40px!important;}
.mt50 { margin-top:50px!important;}
.mt60 { margin-top:60px!important;}

.pt5 { padding-top:5px!important;}
.pt10 { padding-top:10px!important;}
.pt20 { padding-top:20px!important;}
.pt30 { padding-top:30px!important;}
.pt40 { padding-top:40px!important;}

.pb5 { padding-bottom:5px!important;}
.pb10 { padding-bottom:10px!important;}
.pb20 { padding-bottom:20px!important;}
.pb60 { padding-bottom:60px!important;}
.pb100{ padding-bottom: 100px!important;}
.text08{ font-size:0.8rem!important;}
.text09{ font-size:0.9rem!important;}
.text10{ font-size:1rem!important;}
.text11{ font-size:1.1rem!important;}
.text12{ font-size:1.2rem!important;}
.text13{ font-size:1.3rem!important;}
.text14{ font-size:1.4rem!important;}
.text15{ font-size:1.5rem!important;}
.text16{ font-size:1.6rem!important;}
.text18{ font-size:1.8rem!important;}
.text20{ font-size:2rem!important;}
.text24{ font-size:2.4rem!important;}
.text28{ font-size:2.8rem!important;}
.text30{ font-size:3rem!important;}
.textC { text-align:center!important;}
.textR { text-align:right!important;}
.textL{ text-align: left!important;}
.textB {font-weight: 700!important;}
.textN{font-weight: 500!important;}
.textU{text-decoration:underline!important;}
.textI{padding-left: 1rem!important; text-indent: -1rem!important;}
.textI2{padding-left: 1.6rem!important; text-indent: -1.6rem!important;}

.bold{font-weight: bold;}

.red { color:#952525;}
.blue{ color: #00428E;}
.yellow{ color: #fffa00;}
.green{ color: #009944;}
.pink{ color: #FF505A;}
.orange{ color: #E97700;}
.brown{ color:#41342b;}
.gray{color:#555;}

.box10p { width: 10% !important;}
.box15p { width: 15% !important;}
.box20p { width: 20% !important;}
.box35p { width: 35% !important;}
.box40p { width: 40% !important;}
.box45p { width: 45% !important;}
.box48p { width: 48% !important;}
.box49p { width: 49% !important;}
.box50p { width: 50% !important;}
.box55p { width: 55% !important;}
.box60p { width: 60% !important;}
.box65p { width: 65% !important;}
.box70p { width: 70% !important;}
.box75p { width: 75% !important;}
.box80p { width: 80% !important;}
.box100p{ width: 100% !important;}

.lrAuto{ margin-left:auto; margin-right:auto;}


@media only screen and (min-width:813px) {
    .flex02{display: flex; flex-wrap: wrap;}
    .flex02 > div{width:46%;}
    .flex02 > div:nth-of-type(n+3){margin-top: 8%;}
    .flex02 > div:not(:nth-of-type(2n)){margin-right: 8%;}
}
@media only screen and (max-width:812px){
 .flex02 > div:not(:last-child){margin-bottom: 40px;}
}

@media only screen and (min-width:813px) {
    .flex03{display: flex; flex-wrap: wrap;}
    .flex03 > div{width:32%;}
    .flex03 > div:nth-of-type(n+4){margin-top: 4%;}
    .flex03 > div:not(:nth-of-type(3n)){margin-right: 2%;}
}
@media only screen and (max-width:812px){
 .flex03 > div:not(:last-child){margin-bottom: 40px;}
}

a.link_y {text-decoration:underline; color: #FDB500;}
a.link_y:hover{ text-decoration:none;}




a.link{text-decoration:underline;}
a.link:hover{ text-decoration:none;}

@media only screen and (min-width:813px) {
a[href*="tel:"].link{
pointer-events: none;
text-decoration:none;
}
}

.va_b{ vertical-align:bottom;}
.va_m{ display:inline-block;vertical-align:middle;}
.va_t{ vertical-align: top;}
@media only screen and (max-width:812px){
.textCsp { text-align:center!important;}
.textRsp { text-align:right!important;}
.textLsp { text-align: left!important;}
.mb20sp{margin-bottom:20px !important;}
}


/* 20221227 add mapImg */
.footWap { display: inherit; max-width: 880px;}
.logoBox { margin-bottom:40px;}
.f_logo{ margin: 0 auto;}
.footerAddress { display: flex; margin-bottom:60px}
.mapImgBox  img { max-width: 100%; height: auto;}

/* cookie */
.cookieJP:not(:lang(ja)){display: none !important;}
.cookieEN:not(:lang(en-US)){display: none !important;}
.cookieCN:not(:lang(zh-hant)){display: none !important;}

@media only screen and (min-width:667px){
.mapImgBox { width: 50%; max-width: 350px; margin-right: 40px;}
.adrBox { margin-bottom: 0;}
}

@media only screen and (max-width:666px){
  .footerAddress { flex-wrap: wrap;}
  .mapImgBox { width: 100%; order: 2; margin-bottom:0;}
  .adrBox { width: 100%; order: 1; margin-bottom:40px;}
}

