@charset "utf-8";

/* common
---------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}
table{border-collapse:collapse;border-spacing:0;}
img{vertical-align:bottom;border:0 none;}
ul,ol,li{list-style:none;}
strong{font-weight:700;color:inherit;font-size: 2em;color: #fff;}
em{font-style:normal;font-weight:500;color:inherit;}

/* HTML5 */
header, section, footer, aside, nav, article, figure, figcaption{margin:0;padding:0;display:block;}
canvas{display:block;}
/* IE8+, Chrome */
input,button{outline:0;}
/* Firefox */
input::-moz-focus-inner,button::-moz-focus-inner{border:0;}

html{
  width:100%;
  font-size:62.5%; /*10px*/
  line-height:1.0;
  -webkit-tap-highlight-color:rgba(12,12,12,0.1);
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  scroll-behavior: smooth;
}
body{
  padding: 1.5%;
  font-size:1.8rem;
  letter-spacing: 0.06em;
  line-height: 1.8;
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings:"palt" 1;
  display: flex;
  flex-direction: column;
  font-weight: 500;
  padding: 30px;
}
@media (max-width:1280px){

}
@media (max-width:960px){
body{
  font-size:15.6px;
  font-size:1.56rem;
}
}
@media (max-width:768px){
body{
  font-size:14.6px;
  font-size:1.46rem;
  line-height:1.6;
}
}
@media (max-width:480px){
body{
  font-size:13.2px;
  font-size:1.32rem;
}
}

::selection{background:rgba(12,12,12,0.1);}
::-moz-selection{background:rgba(12,12,12,0.1);}
/* link */
a{color:inherit;text-decoration:none;outline:none;
  -webkit-transition:all 0.2s ease-out 0s;
  transition:all 0.2s ease-out 0s;
}
a:hover{color:inherit;opacity:0.8;text-decoration:none !important;cursor:pointer;}
.a{display:inline-block;position:relative;line-height:1.4;padding-left:1px;padding-right:1px;}
.a:after{position:absolute;bottom:0;left:0;content:"";display:inline-block;width:100%;height:1px;border-bottom:dashed 1px currentColor;opacity:0.6;
-webkit-transition:all 0.2s ease-out 0s;
  transition:all 0.2s ease-out 0s;
}
.a:hover:after{opacity: 0;}
.target{pointer-events:none;}
a.target:after{border-bottom:none !important;}
a.anchor{display:block;height:0;width:0;transform:translateY(-100px);visibility:hidden;}
.arr{
  display: inline-block;
}
.arr:before{
  content:"";
  display:inline-block;
  width:0.5em;
  height:0.5em;
  border-top:solid 1px currentColor;
  border-right:solid 1px currentColor;
  transform: rotate(45deg);
  opacity: 0.8;
  line-height: 1.0;
  margin-right:0.8em;
}
.font01{ 
  font-family:"Zen Antique",serif;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  /*font-family:'Zen Old Mincho',cursive;
  font-weight:900 !important;
  -webkit-font-smoothing:unset;
  -moz-osx-font-smoothing:unset;
  scroll-behavior: unset;*/
}
i {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 700 !important;
}
.cf:before,.cf:after{content:"";display:table;}
.cf:after{clear:both;}
.cf{*zoom:1;}
.fl{float:left !important;}
.fr{float:right !important;}
.cb{clear:both !important;}
.tc{text-align:center;}
.tr{text-align:right !important;;}
.tl{text-align:left !important;}
.ib{display:inline-block;}
br{height:0;width:0;line-height:0;}
.nobr{display:none;}
.mt0{margin-top:0 !important;}
.mt10{margin-top:10px !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;}
.mt70{margin-top:70px !important;}
.mt80{margin-top:80px !important;}
.mt90{margin-top:90px !important;}
.mt100{margin-top:100px !important;}
.mt120{margin-top:120px !important;}
.mb0{margin-bottom:0 !important;}
.mb10{margin-bottom:10 !important;}
.mb20{margin-bottom:20 !important;}
.mb30{margin-bottom:30 !important;}
.mb40{margin-bottom:40 !important;}
.pt0{padding-top:0 !important;}
.pb0{padding-bottom:0 !important;}
@media (max-width:1280px){
br.br1280{display:block;}
.nobr1280{display:none;}
}
@media (max-width:960px){
img{width:100%;height: auto;aspect-ratio:attr(width) / attr(height);}
br.br960{display:block;}
.nobr960{display:none;}
.mt50{margin-top:40px !important;}
.mt60{margin-top:40px !important;}
.mt70{margin-top:40px !important;}
.mt80{margin-top:40px !important;}
.mt90{margin-top:40px !important;}
.mt100{margin-top:40px !important;}
.mt120{margin-top:40px !important;}
}
@media (max-width:768px){
br.br768{display:block;}
.nobr768{display:none;}
}
@media (max-width:600px){
.font01{ 
  letter-spacing: 0.04em !important;
}
br.br600{display:block;}
.nobr600{display:none;}
}
@media (max-width:480px){
br.br480{display:block;}
.nobr480{display:none;}
}
@media (max-width:768px){
  br.br768{display:block;}
  .nobr768{display:none;}
}
@media (max-width:960px){
  br.br960{display:block;}
  .nobr960{display:none;}
}
@media (max-width:1025px){
  br.nobr1025_w{display:none;}
  .br1025_w{display:block;}
}
.w{
  overflow: hidden;
  position: relative;
}
.main{
  display: block;
}
.inner{
  width:92%;
  margin:0 auto;
  padding:80px 4% 60px;
}
.max1080{
  max-width: 1080px;
  margin:0 auto;
}
.max880{
  max-width: 880px;
  margin:0 auto;
}
.max580{
  max-width: 580px;
  margin:0 auto;
}
.h2_ttl{
  text-align: center;
  font-size: 3.4em; 
  /*font-weight: 900;*/
  line-height: 1.1;
  letter-spacing: 0.07em;
  color:rgba(62,44,34,1.0);
}
.h2_ttl_img{
  position: relative;
  margin-bottom: 2em;
}
.h2_ttl_img::after{
  content: '';
  position: absolute;
  top: 1.4em;
  left: 0em;
  background-size: cover;
  height:6vh;
  width:100%;
  /* background: url(img/main/common/h_img.png) center center no-repeat; */
  background: url(img/main/common/h_img.svg) center center no-repeat;
}
.h3_ttl{
  text-align: center;
  font-size: 2.4em; 
  /*font-weight: 900;*/
  line-height: 1.1;
  letter-spacing: 0.07em;
}
.white{
  color: #fff;
}
.phone_area{
  padding: 0.3em 0.5em;
  border: 5px solid rgba(15,54,117,1.0);
  border-radius: 20px;
  background: #fff;
}
.phone_area span{
  color:rgba(15,54,117,1.0);
}
.tel_area{
  margin-left: 0.5em;
  font-size: 2em;
  position: relative;
}
.tel_area::before{
  content: '';
  padding: 0.1em 0;
  background: url(img/main/common/phone_icon.png) center center no-repeat;
  position: absolute;
  top: 0;
  left: -1.5em;
  width: 3vw;
  height: 100%;
}
.contact_icon{
  margin: 3em auto 0;
  width: 86%;
  padding: 0.5em 0;
  border: 3px solid #fff;
  border-radius: 5em;
  background: rgba(15,54,117,1.0);
  box-shadow: 2px 10px 10px 1px rgba(0, 0, 0, 0.6);
  text-align: center;
  z-index: 1;
  position: relative;
}
/* .contact_icon::before{
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top: 29%;
  right: 3em;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
} */
.contact_icon::before{
  content: '';
  width: 3.5rem;
  height: 3.5rem;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top:20px;
  right: 50px;
}
/* .contact_icon::after{
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-top: solid 2px rgba(15,54,117,1.0);
  border-left: solid 2px rgba(15,54,117,1.0);
  transform: translateY(-50%) rotate(135deg);
  transform-origin: center center;
  display: block;
  padding: 0;
  position: absolute;
  top: 50%;
  right: 3.6em;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
} */
.contact_icon::after{
  content: "▶";
  width: 1.6rem;
  height: 1.6rem;
  box-sizing: border-box;
  color: rgba(15,54,117,1.0);
  position: absolute;
  top: 20px;
  right: 58px;
}
.contact_icon a{
  position: relative;
  display: block;
}
.contact_txt{
  font-family:"Zen Antique",serif;
  color: #fff;
  font-size: 1.6em;
}
.catch_pic{
  width: 60vw;
  margin: 0 auto;
}
.bg{
  background-color: rgba(254,220,189,0.1);
}
.bg01{
  position: relative;
  background: url(img/main/common/main_bg01.jpg) center center repeat;
  background-color:rgba(255,255,255,0.5);
  background-blend-mode:lighten;
}
.bg01color{
  position: relative;
  background: url(img/main/common/main_bg01.jpg) center center repeat;
}
.bg01color::after{
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}
.marker_blue{
  background:rgba(15,54,117,0.2);
  z-index: -1;
}
@media (max-width:1280px){
}
@media (max-width:960px){
  .contact_icon::before{
    top:15px;
    right: 50px;
  }
  .contact_icon::after{
    top: 16.5px;
    right: 57px;
  }
}
@media (max-width:768px){
  .contact_icon{
    width: 100%;
  }
  .contact_icon::before{
   top: 10px;
  }
  .contact_icon::after{
    top: 15px;
  }
}
@media (max-width:650px){
  .contact_icon::before{
      right: 30px;
   }
   .contact_icon::after{
     right: 38px;
   }
}
@media (max-width:600px){
  .tel_area::before{
    width: 6vw;
    left: -1em;
  }
  .contact_icon::before{
    top: 30px;
   }
   .contact_icon::after{
     top: 35px;
   }
}
@media (max-width:480px){
  .contact_icon::before{
    right: 1.5em;
    top: 28%;
  }
  .contact_icon::after{
    right: 27px;
    top:30px;
  }
}
@media (max-width:360px){
  .h2_ttl_img::after{
    top:1em;
  }
}
@media (max-width:280px){
  .contact_icon::before,
  .contact_icon::after{
    display: none;
  }
}
/*header*/
.header_w{
  position: static;
  width: 100%;
  background: url(img/header/header_main01_bg.jpg) center center no-repeat;
  background-size: cover;
  border-radius: 20px 20px 0 0;
}
.header_w .iqn{
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  color:  rgba(15,54,117,1.0);
  padding: 0.3em 0;
  background-color:rgba(255,255,255,1.0);
  padding: 0.2em 0.5em;
  border: 5px solid rgba(15,54,117,1.0);
  border-radius: 20px;
  line-height: 1.4;
}
.header_w .iqn .tel_area::before{
  left: -1em;
}
.header_w .inner{
  display: flex;
  flex-wrap: wrap;
  padding: 1em 0 0;
  align-items: center;
}
.header_w .logo{
  margin-top: 1em;
}
.header_w .logo img{
  width: 15vw;
}
.header01{
  margin-left: auto;
  text-align: right;
  color: #fff;
}
.hnav01{
  font-size: 1.06em;
  margin-left: 1.26em;
}
.hnav01 .hnav01_li{
  display: inline-block;
}
.hnav01 .hnav01_li a{
  text-shadow: 1px 1px 1px rgba(62,44,34,1.0);
  padding:0.2em 1em;
  display: block;
}
.header_w .img_area{
  text-align: center;
}
.header_w .img_area img{
  width: 15vw;
  margin-bottom: 3em;
}
.header_w .phone_area{
  display: inline-block;
  font-size: 0.8em;
  text-align: center;
  line-height: 1.4;
}
.header_w .iqn{
  display: none;
}
@media (max-width:1280px){
  .phone_area .tel_area::before{
    top: 0;
    left: -1.2em;
  }
}
@media (max-width:960px){
  .header_w .phone_area{
    display: none;
  }
  .header_w .iqn{
    display: block;
  }
  .header_w .logo img{
    width: 20vw;
  }
}
@media (max-width:768px){
  .header_w .img_area img {
    width: 25vw;
  }
}
@media (max-width:600px){
}
@media (max-width:480px){
  .header_w .img_area img {
    width: 30vw;
  }
  .header_w .iqn .tel_area::before{
    left: -0.8em;
  }
}
@media (max-width:380px){
  .header_w .iqn{
    font-size: 0.6em;
  }
  .header_w .iqn .tel_area::before{
    background: url(img/main/common/phone_icon2.png) center center no-repeat;
    left: -1.3em;
  }
  .header_w .hnav01{
    font-size: 0.8em;
  }
}
@media (max-width:280px){
  .header_w .logo img{
    width: 100%;
  }
  .header01{
    margin: 1em auto;
    text-align: center;
  }
  .header_w .img_area img{
    width: 30vw;
  }
}
/*main*/
/* .main p{
  line-height: 2.5;
}
.main dd{
  line-height: 2;
} */
.under_line_blue{
  padding-bottom: 0.2em;
  border-bottom: 1.7px solid rgba(15,54,117,0.6);
  line-height: 2.6;
}
.under_line_brown{
  padding-bottom: 0.2em;
  border-bottom: 1.7px solid rgba(62,44,34,0.6);
  line-height: 3.1;
  letter-spacing: 0.024em !important;
}
.two_span{
  margin-top: 4em;
}
.two_span_colom{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
}
.two_span_colom:nth-child(odd){
  flex-direction: row-reverse;
}
.two_span_colom img{
  width: 50%;
}
.two_span_colom dl{
  width: 42%;
  margin: 0 auto;
  color: rgba(15,54,117,1.0);
}
.two_span_colom dt{
  line-height: 1.36;
  font-family:"Zen Antique",serif;
  font-size: 2em;
}
.two_span_colom dd{
  line-height: 1.8;
  margin: 1em 0;
}
.three_span{
  color: rgba(15,54,117,1.0);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.three_span dt{
  line-height: 1.36;
  font-family:"Zen Antique",serif;
  font-size: 1.9em;
}
.three_span dd{
  line-height: 1.8;
}
.three_span li{
  width: 32%;
}
.note{
  position: relative;
  background: url(img/main/kaitai08/main_note.png) center center repeat;
  padding: 0.5em;
}
.note::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.page_top{
  right: 1vw;
  display: block;
  width: 6.2rem;
  height: 6.2rem;
  background: rgba(62,44,34,1.0);
  z-index: 2;
}
.page_top a{
  text-align: center;
  color: #fff;
  display: block;
  position: absolute;
  line-height: 1.3;
  top: 8px;
  left: 1px;
  width: 100%;
  height: 100%;
}
/* .page_top span{
  position: relative;
  margin-top: 1.2rem;
  margin-left: 1.2rem;
  width: 1.5rem;
  height: 1.5rem;
  border-top: solid 4px rgba(255,255,255,1.0);
  border-left: solid 4px rgba(255,255,255,1.0);
  display: block;
} */
/* @media (max-width:960px){
  .two_span_colom img,
  .two_span_colom dl{
    width: 100%;
  }
  .two_span{
    display: flex;
    flex-wrap: wrap;
  }
  .two_span_colom{
    display: block;
    width: 100%;
  }
  .three_span li{
    width: 100%;
  }
  .three_span li:nth-child(2),
  .three_span li:nth-child(3){
    margin-top: 1em;
  }
} */
@media (max-width:1025px){
  .two_span_colom img,
  .two_span_colom dl{
    width: 100%;
    padding: 0;
  }
  .two_span_colom dd{
    margin: 1em 0 3em;
  }
  .two_span{
    display: flex;
    flex-wrap: wrap;
  }
  .two_span_colom{
    display: block;
    width: 100%;
  }
  .three_span li{
    width: 100%;
  }
  .three_span img{
    width: 60%;
  }
  .three_span dd{
    text-align: center;
  }
  .three_span dd + dd{
    text-align: left;
  }
  .three_span li:nth-child(2),
  .three_span li:nth-child(3){
    margin-top: 2em;
  }
  .two_span_colom dd,
  .three_span dd{
    font-size: 1.26em;
  }
}
@media (max-width:768px){
  .main .area03 .arrow_area{
    width: 60%;
  }
}
@media (max-width:600px){
}
@media (max-width:480px){
}
@media (max-width:360px){}
/*footer*/
.footer_w{
  background-color: rgba(62,44,34,1.0);
  color: #fff;
  border-radius: 0 0 20px 20px;
}
.footer_w .fnav01{
  display: flex;
  justify-content: center;
  margin-bottom: 1em;
}
.footer_w .fnav01{
  font-size: 1.26em;
}
.footer_w .fnav01 li{
  display: inline-block;
}
.fnav01 li a{
  padding:0.2em 1em;
  display: block;
}
.footer_w .corporate_area{
  padding: 0.5em;
  width: 50%;
  margin: 0 auto;
  border: 5px solid #fff;
  background: rgba(91, 64, 49,1.0);
}
.corporate_area .corporate {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.corporate_area a{
  display: block;
}
.corporate  img{
  width: 40%;
}
.corporate span{
  position: relative;
}
.corporate span::after{
  content: '';
  vertical-align: middle;
  padding-left: 0.2em;
  font-family: 'Material Icons';
  content: "\open_in_new";
}
.footer_w .copyright{
  margin-top: 2em;
  text-align: center;
  font-size: 0.7em;
}
@media (max-width:1280px){
}
@media (max-width:960px){
}
@media (max-width:768px){
}
@media (max-width:600px){
  .footer_w .corporate_area{
    width: 70%;
  }
}
@media (max-width:480px){
  .footer_w .corporate_area{
    width: 80%;
  }
}