@charset "UTF-8";
/*
@mixin tabMpc { 
	@media screen and (min-width: 768px) and (max-width: 1280px){
		@content;
	}	
}
@mixin tabwMpc { 
	@media screen and (min-width: 961px) and (max-width: 1280px){
		@content;
	}	
}
*/
/* Reset */
/*-----------------------------------------------*/
html {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  width: auto !important;
  width: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%; }

body {
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-family: "Zen Maru Gothic", serif;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.02em;
  vertical-align: baseline;
  color: #231815;
  box-sizing: padding-box;
  background-color: #FFFFFF;
  margin: 0;
  padding: 0;
  overflow-x: hidden; }

body {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
:root {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  outline: 0;
  font-size: 1.6rem;
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }
  @media screen and (max-width: 960px) {
    div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, font, img, ins, kbd, q, s, samp,
    small, strike, strong, sub, sup, tt, var,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td {
      font-size: 1.6rem; } }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0px; }

a {
  text-decoration: none;
  color: #231815; }
  a.decoration {
    text-decoration: underline; }
    a.decoration:visited, a.decoration:focus, a.decoration:active {
      text-decoration: underline;
      outline: 0; }
  a:visited, a:focus, a:active {
    text-decoration: none;
    color: #231815;
    outline: 0; }

/* clearfix */
/*-----------------------------------------------*/
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

* html .clearfix {
  zoom: 1; }

*:first-child + html .clearfix {
  zoom: 1; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  transition: all .25s ease-out;
  /*a &:hover {
  	filter:alpha(opacity=80);
  	-moz-opacity: 0.8;
  	opacity: 0.8;
  }*/ }
  img .centerize {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    display: block; }

.centerize {
  text-align: center;
  margin-left: auto;
  margin-right: auto; }

.center {
  text-align: center !important; }

.right {
  text-align: right !important; }

.left {
  text-align: left !important; }

.rightBox {
  float: right !important; }

.leftBox {
  float: left !important; }

.clear {
  clear: both; }

.bold {
  font-weight: bold !important; }

.noline {
  border: none !important; }

.hide {
  display: none !important; }

@media screen and (max-width: 767px) {
  .onlyPc {
    display: none; } }
@media screen and (min-width: 768px) {
  .onlySp {
    display: none; } }
/*-----------------------------------------------*/
/* Reset */
strong {
  font-weight: bold; }

#container {
  overflow: hidden;
  position: relative; }

body.fix {
  position: fixed;
  width: 100%;
  height: 100%; }
  body.fix #navWrap {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }

/* 画面外にいる状態 */
.fadein {
  opacity: 0.1;
  transform: translate(0, 0px);
  transition: opacity 1s; }

/* 画面内に入った状態 */
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0); }

/* ----------------------------------------
	header
---------------------------------------- */
header#masthead {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 65px;
  color: #ffffff;
  line-height: 1.2;
  z-index: 99;
  transition: all .25s ease-out;
  /* ------#nav_global------------ */
  	/*&.fixed {
  	@include minTabw{
  		.headcontact{
  			top:-55px;
  			bottom:auto !important;
  			a{
  				padding:13px 10px 13px 10px !important;
  				font-size: 1.4rem;
  				&::after{
  					top:7px;
  				}
  			}
  			&:nth-child(1){
  				a{
  					padding: 10px 0px 0px 0px !important;
  				}
  			}
  		}
  	}
  	
  }*/ }
  @media screen and (min-width: 961px) {
    header#masthead {
      height: 100px;
      background: url("../images/common/bghead_sub.png?5") repeat-x;
      background-size: auto 100%; }
      header#masthead.fixed {
        height: 100px; } }
  @media screen and (min-width: 961px) and (max-width: 1280px) {
    header#masthead {
      height: 100px !important; } }
  @media screen and (min-width: 1281px) {
    header#masthead {
      height: 135px; } }
  header#masthead.fixed {
    background: white; }
    @media screen and (max-width: 767px) {
      header#masthead.fixed {
        background: white; } }
  header#masthead .siteNote {
    color: #000000;
    font-size: 1.0rem;
    position: absolute;
    top: 6px;
    left: 10px; }
  header#masthead .siteTitle {
    position: absolute;
    top: 80%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 2%;
    width: 160px;
    z-index: 100; }
    @media screen and (min-width: 961px) {
      header#masthead .siteTitle {
        width: 100%;
        transition: all .25s ease-out;
        background: none; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      header#masthead .siteTitle {
        left: 20px;
        width: 240px;
        top: 75px !important; } }
    @media screen and (min-width: 1281px) {
      header#masthead .siteTitle {
        left: 30px;
        width: 280px;
        top: 75px !important; } }
  @media screen and (min-width: 961px) {
    header#masthead.fixed .siteTitle {
      width: 200px;
      top: 55px !important; } }
  header#masthead #navArea {
    background: #ffffff;
    position: absolute;
    right: 0;
    top: 0;
    /*width: 650px;*/
    width: 450px;
    border-radius: 0px 0px 0px 30px;
    height: 125px; }
    @media screen and (max-width: 960px) {
      header#masthead #navArea {
        background: none; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      header#masthead #navArea {
        height: 125px; } }
    @media screen and (min-width: 1281px) {
      header#masthead #navArea {
        height: 125px; } }
  @media screen and (min-width: 961px) {
    header#masthead {
      /*&.fixed {
      	@include minTabw{
      		ul#nav_main{
      			top:65px;
      			bottom:auto !important;
      		}
      	}
      }*/ }
      header#masthead ul#nav_main {
        position: absolute;
        right: 0px;
        top: 65px;
        width: -webkit-calc(100% - 350px);
        width: calc(100% - 350px);
        display: flex;
        justify-content: space-between;
        /*width: 600px;	*/
        width: 400px; }
        header#masthead ul#nav_main li.gnav {
          padding-right: 10px;
          /*第2階層*/ }
          header#masthead ul#nav_main li.gnav a.gnav {
            position: relative;
            display: block;
            /*padding-bottom: 17px;*/
            font-weight: bold;
            font-size: 1.3rem;
            color: #000000;
            vertical-align: baseline;
            text-align: center;
            transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1); }
            header#masthead ul#nav_main li.gnav a.gnav:hover {
              color: #79A84C; }
          header#masthead ul#nav_main li.gnav a.arrow_d {
            background: url("../images/common/arrow_down.svg?1") right no-repeat;
            background-size: 10px;
            padding-right: 15px;
            background-position: 100% 10px; } }
        @media screen and (min-width: 961px) and (min-width: 961px) and (max-width: 1280px) {
          header#masthead ul#nav_main li.gnav a.arrow_d {
            background-position: 100% 6px; } }
  @media screen and (min-width: 961px) {
          header#masthead ul#nav_main li.gnav:hover a.gnav::after {
            background: #ffffff; }
          header#masthead ul#nav_main li.gnav ul.nav_sub {
            list-style: none;
            position: absolute;
            z-index: 99;
            top: 10px;
            margin: 0;
            padding: 30px 30px 30px 30px;
            opacity: 0;
            background: #0038b5;
            visibility: hidden;
            transition: all .5s ease-out;
            /*max-width: 220px;*/
            width: 100%;
            border-radius: 0px 0px 0px 0px;
            box-shadow: 0 10px 20px #00000017;
            display: flex;
            justify-content: space-between;
            left: 0px;
            width: 100%; }
            header#masthead ul#nav_main li.gnav ul.nav_sub li {
              position: relative;
              width: 48%;
              background: #EAF0FC;
              border-radius: 5px; }
              header#masthead ul#nav_main li.gnav ul.nav_sub li a {
                display: block;
                color: #0038b5;
                line-height: 1.4;
                padding: 20px 20px;
                transition: all .25s ease-out;
                font-weight: bold; }
                header#masthead ul#nav_main li.gnav ul.nav_sub li a::after {
                  content: url("../images/common/arrow_b.svg");
                  display: inline-block;
                  width: 20px;
                  background-size: contain;
                  vertical-align: middle;
                  position: absolute;
                  bottom: 18px;
                  right: 20px; }
                header#masthead ul#nav_main li.gnav ul.nav_sub li a:hover {
                  background: #ffffff;
                  border-radius: 5px; }
              header#masthead ul#nav_main li.gnav ul.nav_sub li:first-child {
                /*padding-top:10px;*/ }
              header#masthead ul#nav_main li.gnav ul.nav_sub li .sub {
                font-weight: normal;
                font-size: 1.5rem; }
          header#masthead ul#nav_main li.gnav:hover ul.nav_sub {
            top: 45px;
            visibility: visible;
            opacity: 1; } }
  @media screen and (min-width: 961px) and (max-width: 1280px) {
    header#masthead ul#nav_main {
      /*width: 600px;*/
      width: 400px;
      top: 90px !important;
      padding-right: 10px; }
      header#masthead ul#nav_main li.gnav {
        padding-right: 10px !important; }
        header#masthead ul#nav_main li.gnav a.gnav {
          font-size: 1.4rem !important; } }
  @media screen and (min-width: 1281px) {
    header#masthead ul#nav_main {
      /*width: 600px;*/
      width: 400px;
      top: 90px; }
      header#masthead ul#nav_main li.gnav {
        /*padding-right: 20px;*/
        padding-right: 30px; }
        header#masthead ul#nav_main li.gnav a.gnav {
          font-size: 1.6rem; } }
  @media screen and (min-width: 961px) {
    header#masthead.fixed a.gnav:hover {
      color: #032f7c !important; } }
  header#masthead .headcontact {
    text-align: center;
    position: absolute;
    transition: all .25s ease-out;
    right: 0px; }
    @media screen and (max-width: 960px) {
      header#masthead .headcontact {
        display: none; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      header#masthead .headcontact {
        top: -70px;
        right: 20px;
        width: 500px; } }
    @media screen and (min-width: 1281px) {
      header#masthead .headcontact {
        top: -70px;
        right: 20px;
        width: 500px; } }
    header#masthead .headcontact .ol {
      display: flex;
      justify-content: space-between; }
      header#masthead .headcontact .ol div {
        /*&:nth-child(2){
        	width: 20%;
        	a{
        		background: linear-gradient(transparent 70%, $orange 30%);
        		display: inline-block;
        		margin: 20px 0px;
        		&:hover{
        			
        		}
        	}
        }*/ }
        header#masthead .headcontact .ol div a {
          font-weight: 800;
          position: relative;
          font-size: 1.4rem;
          transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1); }
          @media screen and (min-width: 1281px) {
            header#masthead .headcontact .ol div a {
              font-size: 1.6rem; } }
        header#masthead .headcontact .ol div:nth-child(1) {
          width: 50%; }
          header#masthead .headcontact .ol div:nth-child(1) a {
            background: linear-gradient(transparent 70%, #DFC44A 30%);
            display: inline-block;
            margin: 20px 0px; }
        header#masthead .headcontact .ol div:nth-child(2) {
          width: 50%;
          position: relative; }
          header#masthead .headcontact .ol div:nth-child(2) a {
            background: #79A84C;
            color: #ffffff;
            padding: 13px 10px 13px 10px;
            display: block;
            line-height: 1.0;
            border-radius: 30px;
            font-size: 1.8rem; }
            header#masthead .headcontact .ol div:nth-child(2) a span {
              display: inline-block;
              width: 100%;
              font-size: 1.2rem; }
            header#masthead .headcontact .ol div:nth-child(2) a:hover {
              background: #006934; }
          header#masthead .headcontact .ol div:nth-child(2)::before {
            content: url("../images/common/icon_mail_w.svg");
            width: 35px;
            left: 14px;
            top: 30%;
            position: absolute;
            z-index: 1; }
          header#masthead .headcontact .ol div:nth-child(2)::after {
            content: url("../images/common/arrow_white.svg");
            width: 15px;
            right: 10px;
            top: 30%;
            position: absolute; }
      @media screen and (min-width: 961px) {
        header#masthead .headcontact .ol div.sp_only {
          display: none; } }
  header#masthead li.sp_only {
    width: 50%;
    float: left; }
    header#masthead li.sp_only a {
      font-size: 1.4rem;
      color: #032f7c; }
    @media screen and (min-width: 961px) {
      header#masthead li.sp_only {
        display: none; } }
  header#masthead li.sp_only2 {
    width: 50%;
    float: left;
    background: #2b64c9;
    border-radius: 5px; }
    header#masthead li.sp_only2 a {
      font-size: 1.5rem;
      color: #ffffff;
      border-top: 1px solid #ffffff !important;
      border-left: 1px solid #ffffff !important;
      text-align: center; }
    @media screen and (min-width: 961px) {
      header#masthead li.sp_only2 {
        display: none; } }
  header#masthead .sp_requestArea {
    max-width: 350px;
    margin: 0px auto;
    width: 100%;
    text-align: center;
    border-radius: 10px; }
    @media screen and (min-width: 961px) {
      header#masthead .sp_requestArea {
        display: none; } }
    header#masthead .sp_requestArea div {
      border-radius: 10px; }
      header#masthead .sp_requestArea div a {
        color: #ffffff;
        padding: 25px 10px;
        display: block;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 1.0;
        position: relative; }
        header#masthead .sp_requestArea div a::after {
          content: url("../images/common/arrow_white2.svg");
          display: inline-block;
          top: 35%;
          right: 15px;
          width: 8px;
          background-size: contain;
          vertical-align: middle;
          position: absolute; }
    header#masthead .sp_requestArea div.request {
      background: #79A84C;
      margin-bottom: 15px; }
    header#masthead .sp_requestArea div.reserve {
      background: #006934;
      margin-bottom: 30px; }

/******第2階層以降ヘッダー***************/
header.masthead_sub {
  background-size: auto 100%; }
  @media screen and (min-width: 961px) {
    header.masthead_sub {
      background: url("../images/common/bghead_sub.png?5") repeat-x;
      height: 74px; } }
  @media screen and (min-width: 961px) {
    header.masthead_sub .siteTitle {
      max-width: 150px;
      top: 65%; } }

/* ----------------------------------------
	MeanMenu
---------------------------------------- */
@media screen and (max-width: 960px) {
  body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1; }

  #nav_global #nav_main {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal; }
  @keyframes fadeIn {
    0% {
      opacity: 0; }
    100% {
      opacity: 1; } }
  @-webkit-keyframes fadeIn {
    0% {
      opacity: 0; }
    100% {
      opacity: 1; } } }
a.meanmenu-reveal {
  display: none; }

.mean-container .mean-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  min-height: 60px;
  z-index: 13; }
.mean-container a.meanmenu-reveal {
  width: 37px;
  height: 37px;
  padding: 0;
  display: block;
  position: absolute;
  top: 15px;
  right: 3%;
  text-decoration: none;
  z-index: 13;
  border: 1px solid #79A84C;
  border-radius: 30px; }
  .mean-container a.meanmenu-reveal span {
    position: absolute;
    left: 8px;
    right: 8px;
    top: 10px;
    width: 17px;
    height: 1px;
    display: block;
    background: #79A84C;
    margin: 0 auto;
    transition: all .4s; }
  .mean-container a.meanmenu-reveal span:nth-of-type(2) {
    top: 17px;
    transform: rotate(1);
    background: #79A84C; }
  .mean-container a.meanmenu-reveal span:nth-of-type(3) {
    top: 24px; }
  .mean-container a.meanmenu-reveal.meanclose span:nth-of-type(1) {
    top: 16px;
    transform: rotate(45deg); }
  .mean-container a.meanmenu-reveal.meanclose span:nth-of-type(2) {
    transform: scaleX(0); }
  .mean-container a.meanmenu-reveal.meanclose span:nth-of-type(3) {
    top: 16px;
    transform: rotate(135deg);
    background: #79A84C; }
  .mean-container a.meanmenu-reveal.meanclose::after {
    position: fixed;
    top: 60px;
    bottom: -50px;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: white;
    z-index: 10; }
.mean-container .mean-nav {
  width: 90%;
  margin: 0px auto;
  max-height: 100vh;
  padding: 30px 0px 20px 0px;
  margin-top: 65px;
  position: relative;
  z-index: 99;
  overflow: auto; }
  .mean-container .mean-nav ul.nav_sub {
    padding-bottom: 0px; }
  .mean-container .mean-nav ul {
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: 650px;
    margin: 0px auto;
    list-style-type: none;
    -webkit-overflow-scrolling: touch;
    position: relative;
    z-index: 99;
    max-height: 100vh;
    max-height: calc(100vh - 65px);
    overflow-x: hidden;
    overflow-y: scroll;
    padding-bottom: 300px;
    padding-top: 30px;
    max-width: 350px;
    margin: 0px auto;
    /*スクロールバー非表示（IE・Edge）*/
    -ms-overflow-style: none;
    /*スクロールバー非表示（Firefox）*/
    scrollbar-width: none;
    /*スクロールバー非表示（Chrome・Safari）*/ }
    .mean-container .mean-nav ul::-webkit-scrollbar {
      display: none; }
    .mean-container .mean-nav ul li {
      position: relative;
      float: left;
      width: 100%; }
      .mean-container .mean-nav ul li a {
        display: block;
        float: left;
        width: 100%;
        max-width: 650px;
        margin: 0px auto;
        padding: 15px 0px;
        margin: 0;
        text-align: left;
        color: #DFC44A;
        border-top: 1px solid #DFC44A;
        text-decoration: none;
        text-transform: uppercase;
        font-size: 1.8rem;
        font-weight: bold;
        text-align: center;
        position: relative; }
        .mean-container .mean-nav ul li a span {
          font-size: 1.2rem;
          padding-left: 5px;
          font-weight: normal; }
        .mean-container .mean-nav ul li a::after {
          content: url("../images/common/arrow_orange2.svg");
          display: inline-block;
          top: 30%;
          right: 15px;
          width: 8px;
          background-size: contain;
          vertical-align: middle;
          position: absolute; }
      .mean-container .mean-nav ul li li a {
        width: 100%;
        padding: 15px 0;
        border-top: 1px dotted #DFC44A;
        opacity: 0.9;
        filter: alpha(opacity=9);
        text-shadow: none !important;
        visibility: visible;
        color: #DFC44A;
        font-size: 1.5rem; }
      .mean-container .mean-nav ul li li a.sub {
        font-weight: normal;
        border-top: 1px solid #ffffff;
        padding-top: 0px; }
      .mean-container .mean-nav ul li a.mean-expand {
        margin-top: 1px;
        width: 26px;
        padding: 16px 12px !important;
        text-align: center;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 2;
        font-weight: 700;
        background: rgba(255, 255, 255, 0);
        border: none !important; }
        .mean-container .mean-nav ul li a.mean-expand:hover {
          color: #DFC44A; }
    .mean-container .mean-nav ul .mean-last {
      border-bottom: 1px solid #DFC44A; }
.mean-container .mean-push {
  float: left;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both; }

.mean-nav .wrapper {
  width: 100%;
  padding: 0;
  margin: 0; }

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  box-sizing: border-box; }

.mean-remove {
  display: none !important; }

.headcontactArea {
  border: none;
  position: relative;
  float: left;
  width: 100%;
  border-top: 1px solid #ffffff;
  padding-top: 30px; }
  @media screen and (min-width: 961px) {
    .headcontactArea {
      display: none; } }
  .headcontactArea div {
    text-align: center;
    font-weight: bold;
    max-width: 300px;
    margin: 0px auto; }
    .headcontactArea div a {
      display: block;
      padding: 20px 10px;
      color: #ffffff;
      font-size: 1.2rem;
      position: relative; }
      .headcontactArea div a span {
        font-size: 2.7rem; }
      .headcontactArea div a::after {
        content: url("../images/common/arrow_w.svg");
        display: inline-block;
        background-size: contain;
        vertical-align: middle;
        position: absolute;
        width: 25px;
        bottom: 7px;
        right: 10px; }

/* ----------------------------------------
	#content
---------------------------------------- */
#content {
  margin: 0 auto;
  padding: 0px 0px 0px 0px;
  min-height: 200px;
  height: 100%; }
  @media screen and (max-width: 1280px) {
    #content {
      padding-top: 65px;
      margin-top: 35px; } }
  @media screen and (max-width: 960px) {
    #content {
      margin-top: 0px; } }
  @media screen and (min-width: 1281px) {
    #content {
      min-height: 650px;
      margin-top: 90px; } }
  #content #main {
    position: relative;
    padding: 0px 0px 0px 0px; }
    @media screen and (min-width: 961px) {
      #content #main {
        padding: 0px 0px 0px 0px; } }
  #content .inner {
    margin: 0 auto;
    padding: 60px 5%;
    max-width: 1280px;
    width: 100%; }
    @media screen and (min-width: 768px) and (max-width: 960px) {
      #content .inner {
        padding: 80px 5%; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #content .inner {
        padding: 100px 5%; } }
    @media screen and (min-width: 1281px) {
      #content .inner {
        padding: 120px 30px; } }
  #content .inner2 {
    margin: 0 auto;
    padding: 80px 5%;
    max-width: 1280px;
    width: 100%; }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #content .inner2 {
        padding: 100px 5%; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #content .inner2 {
        padding: 150px 5% !important; } }
    @media screen and (min-width: 1281px) {
      #content .inner2 {
        padding: 150px 30px; } }
  #content .inner3 {
    margin: 0 auto;
    padding: 25px 5%;
    max-width: 900px;
    width: 100%; }
    @media screen and (min-width: 768px) {
      #content .inner3 {
        padding: 40px 20px; } }
  #content section,
  #content div.group {
    position: relative; }
  #content section.last,
  #content div.group.last {
    margin-bottom: 0; }
  #content section:after,
  #content div.group:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden; }
  #content .fullWidth {
    margin-left: -500%;
    margin-right: -500%;
    padding-left: 500%;
    padding-right: 500%; }
  #content .flex_between {
    display: flex;
    justify-content: space-between; }
  #content .flex_center {
    display: flex;
    justify-content: center; }
  #content p {
    margin: 0 0 1em;
    line-height: 1.8; }
  #content ol.decimal li {
    list-style-type: decimal;
    margin-left: 23px;
    padding: 0 0 10px 10px; }
  #content ul.square li {
    list-style-type: square;
    margin-left: 20px;
    padding: 0 0 10px 0px; }
  #content ul.disc li {
    list-style-type: disc;
    margin-left: 20px;
    margin-bottom: 1em; }
  #content ul.listWrap li.empty {
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important; }
    #content ul.listWrap li.empty::after {
      display: none; }

.entry-content {
  /*padding-top:50px;
  @include spTab{
  	padding-top:50px;
  }
  @include tabPc{
  	padding-top:60px;
  }
  @include minPc{
  	padding-top:80px;
  }*/ }

#mainArea {
  position: relative;
  top: -50px;
  padding: 0px 3%; }
  @media screen and (min-width: 481px) and (max-width: 767px) {
    #mainArea {
      top: -100px; } }
  @media screen and (min-width: 768px) {
    #mainArea {
      top: -90px; } }
  #mainArea #mainArea_ol {
    background: #ffffff;
    border-radius: 10px 10px 0px 0px;
    margin: 0 auto;
    max-width: 1280px;
    width: 100%; }
    @media screen and (max-width: 480px) {
      #mainArea #mainArea_ol {
        border-radius: 6px 6px 0px 0px;
        padding: 60px 0%; } }
    @media screen and (min-width: 481px) and (max-width: 960px) {
      #mainArea #mainArea_ol {
        padding: 50px 0% 50px 0%; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #mainArea #mainArea_ol {
        padding: 50px 0% 50px 0%; } }
    @media screen and (min-width: 1281px) {
      #mainArea #mainArea_ol {
        padding: 80px 50px 120px 50px; } }

/* ----------------------------------------
	#共通
---------------------------------------- */
/* ----------------------------------------
	#breadcrumbs
---------------------------------------- */
#breadcrumbs {
  padding: 7px 5% 7px 5%;
  text-align: left;
  font-size: 1.1rem;
  line-height: 1.1;
  color: #333333 !important;
  z-index: 95;
  text-shadow: none;
  max-width: 1280px;
  width: 100%;
  margin: 0px auto; }
  @media screen and (min-width: 961px) and (max-width: 1280px) {
    #breadcrumbs {
      padding: 10px 5% 10px 5% !important; } }
  @media screen and (min-width: 1281px) {
    #breadcrumbs {
      padding: 10px 30px 10px 30px; } }
  #breadcrumbs span {
    font-size: 1.1rem; }
    #breadcrumbs span a {
      font-size: 1.1rem;
      color: #333333; }
      #breadcrumbs span a:visited, #breadcrumbs span a:focus, #breadcrumbs span a:active {
        color: #333333; }
      #breadcrumbs span a:hover {
        text-decoration: underline; }

/* ----------------------------------------
	.wp-pagenavi
---------------------------------------- */
.wp-pagenavi {
  margin: 0px auto 50px;
  padding: 15px 0 0;
  width: 100%;
  text-align: center;
  /*border-top: 1px solid #E2E2E2;*/
  /*display: flex;*/
  justify-content: center;
  display: inline-block; }
  @media screen and (min-width: 768px) {
    .wp-pagenavi {
      margin: 50px auto 0; } }
  .wp-pagenavi a,
  .wp-pagenavi span {
    text-decoration: none !important;
    white-space: nowrap;
    border: 1px solid #79A84C !important;
    margin: 2px 4px !important;
    padding: 8px 10px !important;
    font-size: 1.3rem;
    line-height: 1;
    color: #79A84C;
    display: inline-block;
    transition-property: all;
    transition: 0.2s linear;
    border-radius: 2px; }
    .wp-pagenavi a.current, .wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink, .wp-pagenavi a:hover,
    .wp-pagenavi span.current,
    .wp-pagenavi span.previouspostslink,
    .wp-pagenavi span.nextpostslink,
    .wp-pagenavi span:hover {
      font-weight: normal;
      color: #FFFFFF;
      background: #79A84C;
      border: 1px solid #79A84C;
      display: inline-block; }
    .wp-pagenavi a.extend,
    .wp-pagenavi span.extend {
      border: none; }

/* ----------------------------------------
	.p_navi
---------------------------------------- */
.p_navi {
  margin: 0px auto 0;
  padding: 30px 0 0;
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 768px) {
    .p_navi {
      margin: 50px auto 0; } }
  .p_navi div {
    margin: 0 3px; }
  .p_navi a {
    display: inline-block;
    padding: 8px;
    font-size: 1.3rem;
    line-height: 1;
    color: #ffffff;
    text-decoration: none !important;
    transition: 0.2s linear;
    background: #006934;
    border-radius: 5px; }
    .p_navi a:hover {
      color: #FFFFFF;
      background: #333333; }
  .p_navi .prev a:before {
    content: url("../images/common/arrow_back.svg");
    width: 7px;
    background-size: contain;
    padding-right: 3px;
    display: inline-block; }
  .p_navi .next a:after {
    content: url("../images/common/arrow_next.svg");
    width: 7px;
    background-size: contain;
    padding-left: 3px;
    display: inline-block; }
  .p_navi .list a {
    padding: 8px 20px; }

/******************************************************
#foot_contactArea
******************************************************/
#foot_contactArea {
  background: url("../images/common/contact_bg.jpg?4") no-repeat;
  background-size: cover;
  position: relative; }
  #foot_contactArea img.imgLeft {
    position: absolute;
    left: 3%;
    bottom: -2%;
    width: 15%;
    max-width: 200px; }
  #foot_contactArea img.imgRight {
    position: absolute;
    right: 3%;
    bottom: -2%;
    width: 12%;
    max-width: 200px; }
  #foot_contactArea img.imgCenter {
    position: absolute;
    right: 0%;
    left: 0%;
    bottom: -2%;
    width: 5%;
    max-width: 200px;
    margin: 0px auto; }
    @media screen and (max-width: 767px) {
      #foot_contactArea img.imgCenter {
        width: 10%; } }
  #foot_contactArea .inner {
    background: url("../images/common/contact_top.png?1") no-repeat top;
    background-size: 100%;
    margin: 0 auto;
    padding: 60px 5%;
    max-width: 1280px;
    width: 100%; }
    @media screen and (min-width: 768px) and (max-width: 960px) {
      #foot_contactArea .inner {
        padding: 80px 5% 50px 5%; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #foot_contactArea .inner {
        padding: 120px 5% 80px 5%; } }
    @media screen and (min-width: 1281px) {
      #foot_contactArea .inner {
        padding: 150px 30px 100px 30px; } }
    @media screen and (min-width: 768px) {
      #foot_contactArea .inner .foot_contact_ol {
        display: flex;
        justify-content: space-between; } }
  #foot_contactArea .catch {
    text-align: center;
    font-weight: bold;
    font-size: 3.0rem;
    margin-bottom: 30px;
    line-height: 1.0;
    color: #231815; }
    @media screen and (max-width: 767px) {
      #foot_contactArea .catch {
        margin-bottom: 60px; } }
    @media screen and (min-width: 1281px) {
      #foot_contactArea .catch {
        font-size: 4.0rem;
        margin-bottom: 60px; } }
    #foot_contactArea .catch span {
      display: inline-block;
      margin: 0px auto;
      font-weight: bold;
      width: 100%; }
      @media screen and (min-width: 1281px) {
        #foot_contactArea .catch span {
          font-size: 2.0rem; } }
  #foot_contactArea .contactArea {
    color: #ffffff;
    text-align: center;
    border-radius: 10px;
    padding: 35px 20px 30px 20px;
    position: relative;
    /*.time{
    	font-size: 1.4rem;
    }*/ }
    @media screen and (max-width: 767px) {
      #foot_contactArea .contactArea {
        max-width: 500px;
        margin: 0px auto; } }
    @media screen and (min-width: 768px) {
      #foot_contactArea .contactArea {
        width: 48%; } }
    #foot_contactArea .contactArea img {
      width: 100px;
      height: 100px;
      position: absolute;
      left: 0;
      right: 0;
      margin: 0px auto;
      top: -40px; }
    #foot_contactArea .contactArea .tit {
      font-weight: bold;
      font-size: 2.5rem; }
      @media screen and (min-width: 961px) {
        #foot_contactArea .contactArea .tit {
          font-size: 3.0rem; } }
    #foot_contactArea .contactArea .contactcall {
      font-weight: bold;
      line-height: 1.0;
      margin-bottom: 20px; }
      @media screen and (min-width: 768px) {
        #foot_contactArea .contactArea .contactcall {
          font-size: 2.0rem; } }
    #foot_contactArea .contactArea .more {
      background: #ffffff;
      border-radius: 50px;
      text-align: center;
      max-width: 400px;
      margin: 0px auto;
      position: relative; }
      #foot_contactArea .contactArea .more::after {
        display: inline-block;
        width: 15px;
        background-size: contain;
        vertical-align: middle;
        position: absolute;
        top: 30%;
        right: 10px; }
        @media screen and (min-width: 961px) {
          #foot_contactArea .contactArea .more::after {
            width: 20px;
            top: 37%;
            right: 15px; } }
      #foot_contactArea .contactArea .more a {
        display: block;
        padding: 15px 10px 15px 10px;
        font-size: 1.8rem;
        font-weight: bold; }
        @media screen and (min-width: 961px) {
          #foot_contactArea .contactArea .more a {
            font-size: 2.3rem;
            padding: 19px 10px 19px 10px; } }
    #foot_contactArea .contactArea .btn_orange::after {
      content: url("../images/common/arrow_orange.svg"); }
    #foot_contactArea .contactArea .btn_orange a {
      color: #DFC44A; }
    #foot_contactArea .contactArea .btn_green::after {
      content: url("../images/common/arrow_green.svg"); }
    #foot_contactArea .contactArea .btn_green::before {
      content: url("../images/home/contactfree.svg");
      display: inline-block;
      width: 50px;
      background-size: contain;
      vertical-align: middle;
      position: absolute;
      bottom: -1px;
      left: 5px; }
      @media screen and (min-width: 961px) {
        #foot_contactArea .contactArea .btn_green::before {
          width: 60px;
          bottom: 2px;
          left: 7px; } }
    #foot_contactArea .contactArea .btn_green a {
      color: #79A84C; }
  #foot_contactArea .contactTel {
    background: #DFC44A; }
    @media screen and (max-width: 767px) {
      #foot_contactArea .contactTel {
        margin-bottom: 50px; } }
    #foot_contactArea .contactTel .tit {
      position: relative;
      display: inline-block;
      /*&::before{
      	content: '';
      	position: absolute;
      	bottom: -15px;
      	display: inline-block;
      	width: 110px;
      	height: 1px;
      	left: 50%;
      	-webkit-transform: translateX(-50%);
      	transform: translateX(-50%);
      	background-color:#ffffff;
      }*/ }
  #foot_contactArea .contactMail {
    background: #79A84C; }
    #foot_contactArea .contactMail .tit {
      margin-bottom: 15px;
      z-index: 1;
      position: relative; }

/******************************************************
#foot_areapage
******************************************************/
#foot_areapage {
  text-align: center; }
  #foot_areapage .inner {
    margin: 0 auto;
    padding: 0px 0%;
    max-width: 100%;
    width: 100%; }
    @media screen and (min-width: 768px) {
      #foot_areapage .inner {
        display: flex;
        justify-content: space-between; } }
    #foot_areapage .inner .ol {
      padding: 3% 3%; }
      @media screen and (min-width: 768px) {
        #foot_areapage .inner .ol {
          width: 50%; } }
    #foot_areapage .inner .area_dismantling {
      background: #f7edde; }
    #foot_areapage .inner .area_petit {
      background: #BAD3A2; }
    #foot_areapage .inner h4 {
      font-size: clamp(2.4rem, 3.33vw, 3.4rem);
      font-weight: bold;
      margin-bottom: 20px;
      color: #5C411F; }
    #foot_areapage .inner ul {
      display: flex;
      flex-wrap: wrap;
      background: #ffffff;
      padding: 12px;
      border-radius: 10px;
      text-align: center;
      line-height: 1.0; }
      @media screen and (min-width: 768px) {
        #foot_areapage .inner ul {
          padding: 20px 30px; } }
      #foot_areapage .inner ul li {
        display: inline-block; }
        #foot_areapage .inner ul li a {
          display: block;
          padding: 5px 7px;
          font-weight: bold; }

/* ----------------------------------------
	#mastfoot
---------------------------------------- */
#mastfoot {
  position: relative;
  line-height: 1.3;
  font-size: 13px !important;
  background: url("../images/common/foot_bg.jpg?2") no-repeat top;
  background-size: cover;
  position: relative;
  /* ------pagetop------------*/
  /* ------foot_copy------------*/ }
  @media screen and (min-width: 961px) {
    #mastfoot {
      background-size: 100% !important; } }
  #mastfoot img.imgRight {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 25%; }
  #mastfoot img.imgLeft {
    position: absolute;
    bottom: 0px;
    left: 10px;
    width: 20%; }
  #mastfoot .inner {
    margin: 0 auto;
    padding: 50px 5%;
    max-width: 1000px;
    width: 100%; }
    @media screen and (min-width: 961px) {
      #mastfoot .inner {
        display: flex;
        justify-content: space-between; } }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      #mastfoot .inner {
        padding: 70px 5%; } }
    @media screen and (min-width: 1281px) {
      #mastfoot .inner {
        padding: 80px 30px; } }
    @media screen and (max-width: 960px) {
      #mastfoot .inner #sitemapArea {
        display: none; } }
    @media screen and (min-width: 961px) {
      #mastfoot .inner #sitemapArea {
        width: -webkit-calc(100% - 280px);
        width: calc(100% - 280px); } }
    @media screen and (min-width: 961px) {
      #mastfoot .inner #sitemapArea #sitemap_ol {
        display: flex;
        justify-content: space-between;
        max-width: 500px; } }
    @media screen and (min-width: 961px) {
      #mastfoot .inner #infoArea {
        width: 280px; } }
  #mastfoot #sitemapArea .foot_logo {
    width: 250px;
    margin-bottom: 20px; }
    @media screen and (max-width: 960px) {
      #mastfoot #sitemapArea .foot_logo {
        margin: 0px auto; } }
  #mastfoot #sitemapArea .foot_catch {
    font-weight: 700;
    color: #006934;
    margin-bottom: 40px;
    font-size: 1.4rem; }
    @media screen and (min-width: 1281px) {
      #mastfoot #sitemapArea .foot_catch {
        margin-bottom: 60px; } }
  #mastfoot #sitemapArea ul.main {
    width: 48%; }
    #mastfoot #sitemapArea ul.main li {
      /*第2階層*/ }
      #mastfoot #sitemapArea ul.main li a {
        font-size: 1.3rem;
        line-height: 1.0;
        color: #5C411F;
        display: flex;
        padding: 9px 20px 9px 12px;
        font-weight: bold;
        position: relative; }
        @media screen and (min-width: 1281px) {
          #mastfoot #sitemapArea ul.main li a {
            font-size: 1.5rem; } }
        @media screen and (min-width: 961px) and (max-width: 1280px) {
          #mastfoot #sitemapArea ul.main li a {
            font-size: 1.3rem; } }
        #mastfoot #sitemapArea ul.main li a::before {
          content: url("../images/common/arrow_brown.svg");
          display: inline-block;
          width: 5px;
          background-size: contain;
          vertical-align: middle;
          position: absolute;
          top: 6px;
          left: 0px; }
      #mastfoot #sitemapArea ul.main li ul.sub {
        padding-top: 10px; }
        #mastfoot #sitemapArea ul.main li ul.sub li {
          margin-bottom: 10px;
          padding-left: 10px; }
          #mastfoot #sitemapArea ul.main li ul.sub li a {
            color: #5C411F;
            font-size: 1.2rem;
            line-height: 1.0; }
            @media screen and (min-width: 1281px) {
              #mastfoot #sitemapArea ul.main li ul.sub li a {
                font-size: 1.4rem; } }
            @media screen and (min-width: 961px) and (max-width: 1280px) {
              #mastfoot #sitemapArea ul.main li ul.sub li a {
                font-size: 1.2rem; } }
  #mastfoot #infoArea div, #mastfoot #infoArea dl, #mastfoot #infoArea dt, #mastfoot #infoArea dd, #mastfoot #infoArea span {
    font-size: 1.4rem;
    color: #5C411F; }
  #mastfoot #infoArea ul.foot_shopList {
    border-top: 1px solid #5C411F; }
    #mastfoot #infoArea ul.foot_shopList li {
      padding: 10px 0px;
      border-bottom: 1px solid #5C411F;
      font-weight: bold; }
      @media screen and (min-width: 961px) {
        #mastfoot #infoArea ul.foot_shopList li {
          padding: 15px 0px; } }
    #mastfoot #infoArea ul.foot_shopList .name {
      font-weight: bold;
      font-size: 2.2rem;
      color: #006934; }
      @media screen and (min-width: 961px) {
        #mastfoot #infoArea ul.foot_shopList .name {
          text-align: left; } }
      #mastfoot #infoArea ul.foot_shopList .name span {
        padding-left: 5px; }
    #mastfoot #infoArea ul.foot_shopList .call {
      max-width: 330px;
      margin-bottom: 5px;
      text-align: left; }
      @media screen and (max-width: 480px) {
        #mastfoot #infoArea ul.foot_shopList .call {
          padding: 15px 10px;
          border-radius: 30px;
          margin: 0px auto;
          color: #79A84C;
          border: 1px solid #79A84C;
          margin-bottom: 20px;
          text-align: center; } }
      @media screen and (max-width: 960px) {
        #mastfoot #infoArea ul.foot_shopList .call {
          text-align: center;
          margin: 0px auto;
          margin-bottom: 5px; } }
      #mastfoot #infoArea ul.foot_shopList .call span {
        font-weight: 900;
        font-size: 2.4rem; }
    @media screen and (max-width: 960px) {
      #mastfoot #infoArea ul.foot_shopList .time {
        display: inline-block;
        margin: 0px auto; } }
    #mastfoot #infoArea ul.foot_shopList .time dl.foot_info {
      display: flex;
      text-align: left;
      flex-wrap: wrap; }
      @media screen and (max-width: 960px) {
        #mastfoot #infoArea ul.foot_shopList .time dl.foot_info {
          margin-bottom: 5px; } }
      #mastfoot #infoArea ul.foot_shopList .time dl.foot_info dt {
        width: 65px; }
      #mastfoot #infoArea ul.foot_shopList .time dl.foot_info dd {
        width: -webkit-calc(100% - 65px);
        width: calc(100% - 65px); }
  #mastfoot .pagetop {
    position: fixed;
    right: 5px;
    bottom: 10px;
    z-index: 99; }
    @media screen and (min-width: 768px) {
      #mastfoot .pagetop {
        right: 10px;
        bottom: 20px; } }
    #mastfoot .pagetop img {
      width: 50px; }
      @media screen and (min-width: 768px) {
        #mastfoot .pagetop img {
          width: 50px; } }
  #mastfoot #copyright {
    padding: 10px;
    text-align: center;
    border-top: 1px solid #cccccc; }
    @media screen and (min-width: 768px) {
      #mastfoot #copyright {
        text-align: right; } }
    #mastfoot #copyright .inner {
      min-height: 30px !important;
      padding: 10px 30px !important;
      font-size: 1.2rem !important; }

/* ----------------------------------------
	reCAPTCHA
---------------------------------------- */
/*reCAPTCHA*/
.grecaptcha-badge {
  visibility: hidden; }

/*reCAPTCHA*/
p.recaptcha {
  padding-top: 20px;
  font-size: 1.0rem;
  font-weight: 400;
  color: #626262; }
  p.recaptcha a {
    color: #626262;
    font-size: 1.0rem; }
    p.recaptcha a:hover {
      text-decoration: underline; }
