@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-font-smoothing: subpixel-antialiased;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/*
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/*
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 8/9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td {
  padding: 0;
}

/* ----------------------------------------------------------------
	base
----------------------------------------------------------------- */
body,
button,
input,
select,
textarea {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif;
}

html {
  margin: 0;
  padding: 0;
}

body {
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 14px;
}

a {
  color: #e06f00;
  text-decoration: none;
  outline: 0 none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

a:hover,
a:active {
  color: #e06f00;
  text-decoration: none;
}

img {
  border: 0;
  line-height: 1;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

/* ----------------------------------------------------------------
  header
----------------------------------------------------------------- */
.header {
  position: relative;
  margin: 0;
  padding: 0 0 80px 0;
  height: 110px;
  background: #f4a600;
  -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  width: 100%;
}
.header .header-inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.header .header-inner > [itemprop="name"] {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 110px;
  width: 100%;
}
.header .header-inner > [itemprop="name"] > a {
  vertical-align: top;
  float: left;
  display: block;
  overflow: hidden;
  height: 0;
  width: 254px;
  padding: 110px 0 0 0;
  background: url(../img/common/logo.png) no-repeat 0 50%;
  background-size: 100% auto;
}
.header .header-inner > [itemprop="name"]:before {
  content: "";
  width: 162px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 274px;
  display: block;
  background: url(../img/common/header_info--1.png) no-repeat 0 50%;
  background-size: 100% auto;
  margin-top: -20px;
}

.header-sub {
  float: right;
  padding: 18px 0 0 285px;
  min-width: 167px;
  position: relative;
}
.header-sub:before {
  content: "";
  display: block;
  width: 270px;
  height: 85px;
  position: absolute;
  top: 13px;
  left: 0;
  background: url(../img/common/header_info--2.png) no-repeat 0 0;
  background-size: 100% auto;
}
.header-sub .header-sub__tel {
  height: 36px;
}
.header-sub .header-sub__tel a {
  overflow: hidden;
  height: 0;
  padding: 36px 0 0 0;
  line-height: 36px;
  background: url(../img/common/header-tel.png) no-repeat 0 0;
  background-size: auto 100%;
  color: #fff;
  cursor: text;
}
.header-sub .header-sub__tel a:hover {
  color: #fff;
}
.header-sub .header-sub__form {
  height: 37px;
  margin-top: 7px;
}
.header-sub .header-sub__form a {
  background: #562f00;
  height: 34px;
  line-height: 34px;
  border-bottom: 3px solid #331c00;
  border-radius: 5px;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  text-align: center;
  padding: 0 0 0 15px;
}
.header-sub .header-sub__form a:after {
  content: "";
  display: block;
  width: 13px;
  height: 100%;
  background: url(../img/common/header-arrow.png) no-repeat 0 50%;
  background-size: 100% auto;
  position: absolute;
  top: -1px;
  left: 50%;
  margin-left: -5.25em;
}
.header-sub .header-sub__form a:hover {
  height: 37px;
  line-height: 37px;
  border-bottom: 0;
}
.header-sub a {
  display: block;
  position: relative;
}

/* ----------------------------------------------------------------
  gnav
----------------------------------------------------------------- */
.nav {
  position: absolute;
  top: 110px;
  left: 0;
  width: 100%;
  height: 80px;
  line-height: 80px;
  background: #fff;
  z-index: 3;
}
.nav ul {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.nav ul li {
  list-style: none;
  padding: 0;
  margin: 0;
  float: left;
  width: 14.285%;
  text-align: center;
  position: relative;
}
.nav ul li a {
  display: block;
  padding: 80px 0 0 0;
  height: 0;
  overflow: hidden;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border-right: 1px solid #fff;
}
.nav ul li a:hover {
  background-color: #fff9e5;
}
.nav ul li a.is-active {
  background-color: #fff9e5;
}
.nav ul li:after {
  content: "";
  display: block;
  height: 30px;
  position: absolute;
  right: 0;
  top: 25px;
  width: 1px;
  background: #aaa;
}
.nav ul li:first-child {
  width: 14.29%;
}
.nav ul li:first-child a {
  border-left: 1px solid #fff;
}
.nav ul li:first-child:before {
  content: "";
  display: block;
  height: 30px;
  position: absolute;
  left: 0;
  top: 25px;
  width: 1px;
  background: #aaa;
}
.nav ul li:nth-child(1) a {
  background-image: url(../img/common/nav--1.png);
  background-size: 38px 40px;
}
.nav ul li:nth-child(2) a {
  background-image: url(../img/common/nav--2.png);
  background-size: 70px 43px;
}
.nav ul li:nth-child(3) a {
  background-image: url(../img/common/nav--3.png);
  background-size: 71px 41px;
}
.nav ul li:nth-child(4) a {
  background-image: url(../img/common/nav--4.png);
  background-size: 37px 40px;
}
.nav ul li:nth-child(5) a {
  background-image: url(../img/common/nav--5.png);
  background-size: 69px 41px;
}
.nav ul li:nth-child(6) a {
  background-image: url(../img/common/nav--6.png);
  background-size: 80px 39px;
}
.nav ul li:nth-child(7) a {
  background-image: url(../img/common/nav--7.png);
  background-size: 73px 38px;
}

#buildMenuButton {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0 10px 0 10px;
  width: 30px;
  height: 70px;
  cursor: pointer;
  visibility: hidden;
}
#buildMenuButton:before {
  content: "menu";
  font-family: "HelveticaNeue-Thin", "Helvetica Neue Thin", "Helvetica Neue", "HiraKakuInterface-W1", sans-serif;
  font-size: 10px;
  line-height: 1;
  display: inline-block;
  margin: 15px 0 5px 0;
  width: 30px;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  -webkit-transition: color 0.5s;
  transition: color 0.5s;
}
#buildMenuButton span {
  position: relative;
  display: block;
  margin: 0;
  padding: 22px 0 0 0;
  width: 30px;
  height: 0;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.5s, border-color 0.5s;
  transition: transform 0.5s, border-color 0.5s;
}
#buildMenuButton span:before, #buildMenuButton span:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#buildMenuButton span:before {
  margin-top: -1px;
}

.build-menu-animating .nav {
  -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s;
}

.build-menu-animating.build-menu-open body:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: 2;
  background: rgba(0, 0, 0, 0.75);
}
.build-menu-animating.build-menu-open .nav {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  z-index: 999;
}
.build-menu-animating.build-menu-open #buildMenuButton:before {
  color: #999;
}
.build-menu-animating.build-menu-open #buildMenuButton span {
  border-color: transparent;
  background-color: transparent;
}
.build-menu-animating.build-menu-open #buildMenuButton span:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background-color: #999;
  margin-top: 0;
}
.build-menu-animating.build-menu-open #buildMenuButton span:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: #999;
}

/* ----------------------------------------------------------------
  footer
----------------------------------------------------------------- */
.footer {
  background: #f8f0e6;
}
.footer .page-top {
  background: #f8e6cf;
  border-bottom: 1px dotted #c6c0b8;
  position: relative;
  height: 60px;
}
.footer .page-top img {
  position: absolute;
  top: 0;
  left: 50%;
  width: 30px;
  height: 51px;
  margin: -5px 0 0 -15px;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
.footer .page-top a:hover img {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}
.footer .footer__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px 0;
}
.footer .footer__tel {
  background: url(../img/common/footer__appointment.png) no-repeat right center;
  background-size: 40% auto;
  width: 100%;
  margin: 30px 0;
}
.footer .footer__tel a {
  max-width: 60%;
  display: block;
  position: relative;
  padding: 22px 0 0 25px;
  line-height: 30px;
  font-size: 30px;
  font-weight: bold;
  background: url(../img/common/tel.png) no-repeat 0 bottom;
  background-size: auto 30px;
  color: #573100;
  cursor: text;
}
.footer .footer__tel a:after {
  content: "\304A\96FB\8A71\3067\306E\304A\554F\3044\5408\308F\305B\306F\3053\3061\3089";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 14px;
  line-height: 14px;
}
.footer dl {
  margin: 0 0 1em 0;
  text-align: left;
  font-size: 14px;
  padding: 10px 0;
}
.footer dl dt {
  margin: 0;
  padding: 0;
}
.footer dl dt img {
  max-height: 70px;
}
.footer dl dd {
  margin: 0;
  padding: 10px 0 0 0;
  color: #573100;
}
.footer dl dd br {
  display: none;
}
.footer table {
  width: 100%;
  margin: 1em 0 0 0;
  font-size: 14px;
}
.footer table thead th {
  padding: 10px 0;
  text-align: center;
  color: #573100;
  background-color: #f9d2ab;
  border: 1px solid #ddd;
  border-top: 0 none;
  border-left-color: #fff;
  border-right-color: #fff;
}
.footer table thead .time {
  background-color: #f18d00;
  color: #fff;
  border-left-color: #fff;
  border-right-color: #fff;
}
.footer table tbody td {
  padding: 10px 0;
  text-align: center;
  background-color: #fff;
  color: #f18d00;
  border: 1px solid #ddd;
}
.footer table tbody td .holiday {
  color: #573100;
}
.footer table tbody .time {
  color: #573100;
}
.footer .utility {
  text-align: center;
  font-size: 13px;
  padding: 30px 0 0 0;
}
.footer .utility ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer .utility li {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline;
}
.footer .utility li a {
  color: #555;
  text-decoration: underline;
  line-height: 18px;
  padding: 0 0 0 18px;
  background: url(../img/common/footer__arrow.png) no-repeat 0 50%;
  background-size: 13px 13px;
}
.footer .utility li a:hover {
  color: #e06f00;
  text-decoration: none;
}
.footer .utility li + li {
  margin-left: 10px;
}
.footer .footer__map {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 72.5% 0 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 3px solid #fff;
}
.footer .footer__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.footer small {
  background: #f4a600;
  line-height: 45px;
  color: #fff;
  font-size: 11px;
  display: block;
  text-align: center;
}
.footer small a {
  color: #fff;
}

@media (max-width: 1040px) {
  .footer .footer__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .footer .footer__tel {
    background-position: right top;
    background-size: auto 30px;
  }
  .footer .footer__tel a {
    max-width: 100%;
    padding: 34px 0 0 30px;
    line-height: 36px;
    font-size: 36px;
    background-size: auto 36px;
  }
  .footer .footer__tel a:after {
    padding-top: 7px;
    font-size: 16px;
    line-height: 16px;
  }
  .footer .footer__map {
    padding-top: 100%;
  }
}
@media (max-width: 800px) {
  .footer .footer__inner {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .footer .col__box {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
  .footer dl {
    text-align: center;
  }
  .footer dl {
    font-size: 13px;
  }
  .footer .footer__tel {
    background-position: 100% 50%;
    background-size: 30% auto;
  }
  .footer .footer__map {
    margin-top: 30px;
    padding-top: 40%;
  }
}
@media (max-width: 767px) {
  .footer dl {
    font-size: 12px;
  }
}
@media (max-width: 540px) {
  .footer dl dd br {
    display: block;
  }
  .footer .footer__tel {
    background-position: right top;
    background-size: auto 24px;
  }
  .footer .footer__tel a {
    padding: 30px 0 0 20px;
    line-height: 24px;
    font-size: 24px;
    background-size: auto 24px;
  }
  .footer .footer__tel a:after {
    padding-top: 5px;
    font-size: 12px;
    line-height: 12px;
  }
  .footer .footer__map {
    padding-top: 60%;
  }
}
/* ----------------------------------------------------------------
  main
----------------------------------------------------------------- */
#main {
  max-width: 1000px;
  margin: 40px auto;
}
#main:before, #main:after {
  content: "";
  display: table;
}
#main:after {
  clear: both;
}
#main article {
  float: right;
  width: 100%;
  margin-left: -270px;
}
#main article .contents {
  margin-left: 270px;
}
#main aside {
  float: right;
  width: 270px;
}
#main aside .side-nav__wrapper {
  width: 240px;
}

.side-nav a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.side-nav a:hover {
  opacity: 0.7;
}
.side-nav__voice {
  margin-top: 15px;
}
.side-nav__service {
  margin: 15px 0 0 0;
  padding: 0;
}
.side-nav__service dt {
  background: #664116;
  color: #fff;
  font-size: 13px;
  line-height: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
  text-align: center;
}
.side-nav__service dd {
  background: #fff9e5;
  margin: 0;
  padding: 0;
}
.side-nav__service ul {
  list-style: none;
  margin: 1px 0 0 0;
  padding: 0;
}
.side-nav__service ul li {
  margin: 0;
  padding: 0;
}
.side-nav__service ul li a {
  padding: 0 0 0 14px;
  display: block;
  border: 1px solid #ece5dc;
  border-bottom: 0 none;
}
.side-nav__service ul li a img {
  vertical-align: bottom;
}
.side-nav__service ul li:last-child a {
  border-bottom: 1px solid #ece5dc;
}
.side-nav__recruit {
  margin-top: 20px;
}
.side-nav__blog {
  margin-top: 15px;
}
.side-nav__closed {
  margin-top: 15px;
}
.side-nav__ekiten {
  margin-top: 20px;
  text-align: center;
  padding-bottom: 10px;
  border-bottom: 1px dotted #000;
}
.side-nav__ekiten a {
  color: #e06f00;
}
.side-nav__ekiten small {
  display: block;
  margin: 5px 0 15px 0;
  font-size: 12px;
  text-align: center;
  line-height: 16px;
}
.side-nav__lawyers {
  margin-top: 25px;
}
.side-nav__jiko--1 {
  margin-top: 15px;
}
.side-nav__jiko--2 {
  margin-top: 15px;
}
.side-nav__support {
  margin-top: 15px;
}
.side-nav__sangocare {
  margin-top: 15px;
}
.side-nav__tax {
  margin-top: 15px;
}

.main-visual {
  background: url(../img/top/mainbg.jpg) no-repeat 50% 0;
  background-size: cover;
}
.main-visual__wrapper {
  margin: 0;
  padding: 30px 0;
  background: url(../img/top/main.jpg) no-repeat 50% 50%;
  background-size: auto 100%;
}
.main-visual__wrapper a {
  overflow: hidden;
  height: 0;
  max-width: 352px;
  display: block;
  position: relative;
  padding: 344px 0 0 0;
  margin: 0 auto;
}
.main-visual__wrapper a:before, .main-visual__wrapper a:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  margin: 0 0 0 -176px;
  display: block;
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.main-visual__wrapper a:before {
  background-image: url(../img/top/main_cirqle_on.png);
  background-size: auto 100%;
  visibility: hidden;
}
.main-visual__wrapper a:after {
  background-image: url(../img/top/main_cirqle.png);
  background-size: auto 100%;
}
.main-visual__wrapper a:hover:before {
  visibility: visible;
}
.main-visual__wrapper a:hover:after {
  visibility: hidden;
}

/* ----------------------------------------------------------------
  contents
----------------------------------------------------------------- */
.mce-content-body,
.contents {
  line-height: 1.85;
  /* ----------------------------------------------------------------
    classes
  ----------------------------------------------------------------- */
  /* YouTube, Google Map etc */
  /*link*/
}
.mce-content-body section:after,
.contents section:after {
  content: "";
  display: table;
  clear: both;
}
.mce-content-body section section + section,
.contents section section + section {
  margin-top: 30px;
}
.mce-content-body h2,
.contents h2 {
  clear: both;
  font-weight: bold;
  font-size: 16px;
  line-height: 22px;
  padding: 10px 0 10px 25px;
  margin: 60px 0 30px 0;
  background: #fdeedd;
  position: relative;
  text-align: left;
  color: #573100;
  overflow: hidden;
  font-weight: normal;
}
.mce-content-body h2:before,
.contents h2:before {
  content: "";
  display: block;
  background-color: #f4a600;
  position: absolute;
  top: 10px;
  left: 10px;
  width: 5px;
  height: 100%;
}
.mce-content-body h2:after,
.contents h2:after {
  content: "";
  background: #fdeedd;
  position: absolute;
  bottom: 0;
  left: 10px;
  width: 5px;
  height: 10px;
}
.mce-content-body h3,
.contents h3 {
  border-bottom: 4px solid #f5e5d3;
  padding: 0 0 5px 0;
  margin: 40px 0 25px 0;
  line-height: 1.25;
  font-size: 18px;
  font-weight: normal;
}
.mce-content-body h3 strong,
.contents h3 strong {
  font-weight: normal;
}
.mce-content-body h4,
.contents h4 {
  color: #573100;
  font-size: 100%;
  font-weight: normal;
  line-height: 1.25;
  margin: 30px 0 15px 0;
  padding: 0 0 5px;
  border-bottom: 1px dotted #999;
}
.mce-content-body a,
.contents a {
  color: #333;
  text-decoration: underline;
}
.mce-content-body a:hover,
.contents a:hover {
  color: #e06f00;
  text-decoration: none;
}
.mce-content-body a[href^="tel:"],
.contents a[href^="tel:"] {
  text-decoration: none;
  cursor: text;
}
.mce-content-body a[href^="tel:"]:hover,
.contents a[href^="tel:"]:hover {
  color: inherit;
  text-decoration: none;
}
.mce-content-body figure,
.contents figure {
  margin: 0;
  padding: 0;
}
.mce-content-body p,
.contents p {
  margin: 1em 0;
  font-size: 100%;
}
.mce-content-body ul,
.mce-content-body ol,
.contents ul,
.contents ol {
  margin: 1em 0;
  padding: 0 0 0 30px;
}
.mce-content-body ul ol,
.mce-content-body ol ul,
.mce-content-body ul ul,
.mce-content-body ol ol,
.mce-content-body table ol,
.mce-content-body table ul,
.contents ul ol,
.contents ol ul,
.contents ul ul,
.contents ol ol,
.contents table ol,
.contents table ul {
  margin: 0;
}
.mce-content-body ul > li,
.contents ul > li {
  list-style-type: disc;
}
.mce-content-body ul ul li,
.contents ul ul li {
  list-style-type: circle;
}
.mce-content-body li,
.contents li {
  margin: 0.25em 0;
  padding: 0;
}
.mce-content-body b,
.mce-content-body strong,
.contents b,
.contents strong {
  font-weight: bold;
}
.mce-content-body strong,
.contents strong {
  color: #e06f00;
}
.mce-content-body em,
.mce-content-body i,
.contents em,
.contents i {
  font-weight: normal;
  font-style: italic;
}
.mce-content-body s,
.mce-content-body strike,
.mce-content-body del,
.contents s,
.contents strike,
.contents del {
  text-decoration: line-through;
}
.mce-content-body u,
.mce-content-body ins,
.contents u,
.contents ins {
  text-decoration: underline;
}
.mce-content-body blockquote,
.contents blockquote {
  margin: 1em 0;
  padding: 20px;
  background-color: #f5f5f5;
  color: #888;
}
.mce-content-body blockquote p,
.mce-content-body blockquote ul,
.mce-content-body blockquote ol,
.contents blockquote p,
.contents blockquote ul,
.contents blockquote ol {
  margin: 0;
}
.mce-content-body blockquote p + p,
.mce-content-body blockquote p + ul,
.mce-content-body blockquote p + ol,
.mce-content-body blockquote ul + p,
.mce-content-body blockquote ul + ul,
.mce-content-body blockquote ul + ol,
.mce-content-body blockquote ol + p,
.mce-content-body blockquote ol + ul,
.mce-content-body blockquote ol + ol,
.contents blockquote p + p,
.contents blockquote p + ul,
.contents blockquote p + ol,
.contents blockquote ul + p,
.contents blockquote ul + ul,
.contents blockquote ul + ol,
.contents blockquote ol + p,
.contents blockquote ol + ul,
.contents blockquote ol + ol {
  margin-top: 1em;
}
.mce-content-body hr,
.contents hr {
  color: transparent;
  background-color: transparent;
  height: 0;
  display: block;
  width: 100%;
  border-top: 1px dotted #000;
  padding: 0;
  margin: 1em 0;
}
.mce-content-body table,
.contents table {
  border-collapse: collapse;
  background: #fff;
  width: 100%;
  margin: 1em 0;
  font-size: 90%;
}
.mce-content-body caption,
.contents caption {
  margin-bottom: 8px;
  font-weight: bold;
}
.mce-content-body th,
.contents th {
  background: #fffdf1;
  border: 1px solid #e0e0e0;
  text-align: center;
  vertical-align: middle;
  padding: 10px 5px;
  font-weight: normal;
}
.mce-content-body td,
.contents td {
  border: 1px solid #e0e0e0;
  padding: 10px 5px;
  vertical-align: middle;
}
.mce-content-body table p,
.contents table p {
  margin: 0;
}
.mce-content-body table p + p,
.mce-content-body table p + ul,
.mce-content-body table p + ol,
.mce-content-body table ul + p,
.mce-content-body table ul + ul,
.mce-content-body table ul + ol,
.mce-content-body table ol + p,
.mce-content-body table ol + ul,
.mce-content-body table ol + ol,
.contents table p + p,
.contents table p + ul,
.contents table p + ol,
.contents table ul + p,
.contents table ul + ul,
.contents table ul + ol,
.contents table ol + p,
.contents table ol + ul,
.contents table ol + ol {
  margin-top: 1em;
}
.mce-content-body img,
.contents img {
  max-width: 100%;
  height: auto;
}
.mce-content-body form,
.contents form {
  margin: 0;
  padding: 0 0 60px 0;
}
.mce-content-body textarea,
.contents textarea {
  height: 10em;
}
.mce-content-body textarea,
.mce-content-body input[type="number"],
.mce-content-body input[type="text"],
.contents textarea,
.contents input[type="number"],
.contents input[type="text"] {
  background: #fff;
  border: 1px solid #ddd;
  width: 100%;
  padding: 0.75em 0.5em;
  color: #333;
  font-size: 16px;
  -webkit-box-shadow: inset 0 2px 5px 0 rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 2px 5px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.mce-content-body select,
.mce-content-body option,
.contents select,
.contents option {
  font-size: 16px;
}
.mce-content-body input[disabled="disabled"],
.mce-content-body input[disabled],
.mce-content-body input[readonly="readonly"],
.mce-content-body input[readonly],
.contents input[disabled="disabled"],
.contents input[disabled],
.contents input[readonly="readonly"],
.contents input[readonly] {
  color: #999;
}
.mce-content-body .submit,
.contents .submit {
  text-align: center;
  padding: 0;
  margin: 1.5em 0;
}
.mce-content-body label,
.contents label {
  display: block;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
}
.mce-content-body label + label,
.contents label + label {
  margin: 0.5em 0 0 0;
}
.mce-content-body label:hover,
.contents label:hover {
  border-color: #f05f01;
}
.mce-content-body th,
.contents th {
  width: 11.5em;
  line-height: 1.2;
  padding: 0 10px;
  position: relative;
  font-weight: normal;
  text-align: left;
}
.mce-content-body td,
.contents td {
  padding: 10px;
}
.mce-content-body form table,
.contents form table {
  margin-top: 0;
}
.mce-content-body .required,
.contents .required {
  position: relative;
  display: block;
}
.mce-content-body .required:after,
.contents .required:after {
  content: "\5FC5\9808";
  background: #e3850b;
  color: #fff;
  display: block;
  padding: 0.25em 0;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.9em;
  line-height: 1;
  font-size: 80%;
  font-weight: normal;
  text-align: center;
  width: 3em;
  height: 1em;
  z-index: 1;
}
.mce-content-body .ex,
.contents .ex {
  display: block;
  color: #666;
  font-size: 85%;
  line-height: 1.2;
  padding: 0.5em 0 0 0;
  margin: 0;
}
.mce-content-body .municipality-box,
.contents .municipality-box {
  display: block;
  padding-top: 0.75em;
}
.mce-content-body .button,
.contents .button {
  text-align: center;
  margin: 1.5em 0 0 0;
}
.mce-content-body .button + .button,
.contents .button + .button {
  margin-top: 1em;
}
.mce-content-body button,
.contents button {
  background: #796ebe;
  border: 0 none;
  border-bottom: 3px solid #5b4fa6;
  margin: 0;
  padding: 15px 0;
  min-width: 300px;
  color: #fff;
  font-weight: normal;
  display: inline-block;
  border-radius: 5px;
  line-height: 1;
}
.mce-content-body button,
.contents button {
  background-color: #e15a17;
  border-bottom-color: #cf4500;
  color: #fff;
}
.mce-content-body button[name="_back"],
.contents button[name="_back"] {
  background: #eee;
  border-bottom-color: #ccc;
  color: #666;
  margin-left: 1em;
}
.mce-content-body button:hover,
.mce-content-body button:focus,
.mce-content-body button[name="_back"]:hover,
.mce-content-body button[name="_back"]:focus,
.contents button:hover,
.contents button:focus,
.contents button[name="_back"]:hover,
.contents button[name="_back"]:focus {
  padding-top: 18px;
  border-bottom: 0 none;
}
.mce-content-body .errormsg,
.contents .errormsg {
  color: #be3a2c;
  font-weight: bold;
  display: block;
}
.mce-content-body #experienceTarget p,
.contents #experienceTarget p {
  padding: 1.5em 0 0.5em 0;
}
.mce-content-body h2.img,
.mce-content-body h3.img,
.contents h2.img,
.contents h3.img {
  background: none;
  border: 0 none;
  padding: 0;
  margin: 0;
}
.mce-content-body h2.img:before, .mce-content-body h2.img:after,
.mce-content-body h3.img:before,
.mce-content-body h3.img:after,
.contents h2.img:before,
.contents h2.img:after,
.contents h3.img:before,
.contents h3.img:after {
  display: none;
}
.mce-content-body h2.img,
.contents h2.img {
  text-align: center;
}
.mce-content-body .box,
.contents .box {
  background-color: #fcf5e0;
  padding: 20px;
  margin: 60px 0;
}
.mce-content-body .box:before,
.contents .box:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
}
.mce-content-body .box .box-inner,
.contents .box .box-inner {
  background-color: #fff;
  padding: 20px;
}
.mce-content-body .box .box-inner p,
.contents .box .box-inner p {
  margin-top: 0;
}
.mce-content-body .box .box-inner p + p,
.contents .box .box-inner p + p {
  margin-top: 1em;
}
.mce-content-body .box .box-inner .point,
.contents .box .box-inner .point {
  text-align: center;
  color: #573100;
  font-size: 20px;
}
.mce-content-body .box .box-inner .point span,
.contents .box .box-inner .point span {
  margin: 0;
  line-height: 48px;
  background: url(../img/common/notebg.gif) repeat 0 0;
  display: inline-block;
}
.mce-content-body .box .box-inner .point em,
.contents .box .box-inner .point em {
  color: #e06f00;
  font-style: normal;
  font-weight: normal;
}
.mce-content-body .box .box__img,
.contents .box .box__img {
  margin-top: 20px;
}
.mce-content-body .note,
.contents .note {
  margin: 2em 0 0.5em 0;
  padding: 0 0 0 1.15em;
  position: relative;
  font-size: 90%;
  line-height: 1.5;
}
.mce-content-body .note:before,
.contents .note:before {
  content: "\203B";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.mce-content-body .note + .note,
.contents .note + .note {
  margin: 0.5em 0;
}
.mce-content-body .pickup,
.contents .pickup {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 24px;
}
.mce-content-body .pickup li,
.contents .pickup li {
  margin: 0;
  padding: 0 0 0 20px;
  list-style: none;
  background: url(../img/common/listmark.png) no-repeat 0 0.425em;
  background-size: 15px 15px;
}
.mce-content-body .pickup li em,
.contents .pickup li em {
  color: #e06f00;
  font-style: normal;
}
.mce-content-body .beginning,
.contents .beginning {
  border-top: 5px solid #f1b000;
  border-bottom: 5px solid #f1b000;
  padding: 30px 0 20px 0;
  position: relative;
}
.mce-content-body .beginning h2.img,
.contents .beginning h2.img {
  margin-bottom: 15px;
}
.mce-content-body .beginning h2.img + p,
.contents .beginning h2.img + p {
  margin-top: 30px;
}
.mce-content-body .beginning:before,
.contents .beginning:before {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  position: absolute;
  top: 5px;
  left: 0;
  background: #f1b000;
}
.mce-content-body .beginning:after,
.contents .beginning:after {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  position: absolute;
  bottom: 5px;
  left: 0;
  background: #f1b000;
}
.mce-content-body .exbox,
.contents .exbox {
  clear: both;
}
.mce-content-body .exbox dl,
.contents .exbox dl {
  padding: 0;
  margin: 0;
}
.mce-content-body .exbox dt,
.contents .exbox dt {
  color: #e06f00;
  font-weight: normal;
  font-size: 18px;
  line-height: 1;
  padding: 0 0 20px 0;
  text-align: center;
}
.mce-content-body .exbox dt br,
.contents .exbox dt br {
  display: none;
}
.mce-content-body .exbox dd,
.contents .exbox dd {
  background: #fff;
  border-radius: 10px;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.mce-content-body .exbox dd:before,
.contents .exbox dd:before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
  position: absolute;
  right: 20px;
  bottom: 0px;
}
.mce-content-body .exbox dd .pickup,
.contents .exbox dd .pickup {
  position: relative;
  z-index: 1;
  padding: 5px 20px;
}
.mce-content-body .exbox dd .pickup li,
.contents .exbox dd .pickup li {
  margin: 15px 0;
  font-size: 16px;
}
@media (max-width: 767px) {
  .mce-content-body .exbox dd .pickup li,
  .contents .exbox dd .pickup li {
    font-size: 4.5vw;
  }
}
.mce-content-body .img200w,
.contents .img200w {
  max-width: 200px;
}
.mce-content-body .img-left,
.contents .img-left {
  float: left;
  margin: 0 20px 20px 0 !important;
}
.mce-content-body .img-right,
.contents .img-right {
  float: right;
  margin: 0 0 20px 20px !important;
}
.mce-content-body .video,
.contents .video {
  border: 3px solid #ddd;
  margin: 40px 0;
  padding: 40px;
  text-align: center;
}
.mce-content-body .video .video__title,
.contents .video .video__title {
  color: #d8174c;
  text-align: center;
  display: block;
  font-size: 150%;
  line-height: 1;
  margin: 0 0 0.75em 0;
}
.mce-content-body .video .video__titile__inner,
.contents .video .video__titile__inner {
  position: relative;
}
.mce-content-body .video .video__titile__inner:before,
.contents .video .video__titile__inner:before {
  content: "\300C";
}
.mce-content-body .video .video__titile__inner:after,
.contents .video .video__titile__inner:after {
  content: "\300D";
}
.mce-content-body .video p,
.contents .video p {
  font-size: 80%;
  margin: 1em 0 0 0;
}
.mce-content-body .underline,
.contents .underline {
  border-bottom: 5px solid #f8eb85;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0.8, transparent), color-stop(0.8, #f8eb85), to(#f8eb85));
  background: -webkit-linear-gradient(top, transparent 80%, #f8eb85 20%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 80%, #f8eb85 20%);
}
.mce-content-body .embed-iframe,
.contents .embed-iframe {
  padding-top: 50.25%;
  position: relative;
  width: 100%;
  max-width: 640px;
  margin: 30px auto;
  text-align: center;
  display: block;
  overflow: hidden;
}
.mce-content-body .col2 .embed-iframe,
.contents .col2 .embed-iframe {
  padding-top: 125%;
  margin: 0 auto;
}
.mce-content-body .embed-iframe iframe,
.contents .embed-iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.mce-content-body .access,
.contents .access {
  margin: 1em 0;
  padding: 0;
}
.mce-content-body .access dt,
.contents .access dt {
  color: #0e6599;
  font-size: 14px;
}
.mce-content-body .access dd,
.contents .access dd {
  margin: 0;
  padding: 0;
}
.mce-content-body .access dd ul,
.contents .access dd ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.mce-content-body .access dd ul li,
.contents .access dd ul li {
  list-style: none !important;
  margin: 0.5em 0;
  padding: 0 0 0 12px;
  line-height: 21px;
  background: url(https://warakuseikotuin.com/img/common/listbg.png) no-repeat 0 7px;
  background-size: 4px 4px;
}
.mce-content-body .count-list,
.contents .count-list {
  padding: 0 !important;
  margin: 2em 0 !important;
  list-style: none !important;
}
.mce-content-body .count-list > li,
.contents .count-list > li {
  list-style: none !important;
  padding: 1em 1em 1em 2em !important;
  margin: 0 !important;
  border-bottom: 1px dashed #e4e4e4;
  position: relative;
  counter-increment: numbers;
}
.mce-content-body .count-list > li:before,
.contents .count-list > li:before {
  position: absolute;
  top: 1.25em;
  left: 0;
  color: #0e6599;
  content: counter(numbers,decimal) ". ";
}
.mce-content-body .count-list > li ol > li:before,
.contents .count-list > li ol > li:before {
  content: counter(numbers,lower-alpha);
}
.mce-content-body .link,
.contents .link {
  padding: 0 0 0 15px;
  background: url(https://warakuseikotuin.com/img/common/arrow-blue.png) no-repeat 0 50%;
  background-size: 6px 10px;
}
.mce-content-body .link-box,
.contents .link-box {
  margin: 1em 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.mce-content-body .link-box li,
.contents .link-box li {
  border: 1px solid #ddd;
  padding: 10px 10px !important;
  margin: 0 !important;
  list-style: none !important;
}
.mce-content-body .link-box li + li,
.contents .link-box li + li {
  margin-top: 10px !important;
}
.mce-content-body .toc,
.contents .toc {
  margin: 0 0 50px 0;
  padding: 0;
}
.mce-content-body .toc:before, .mce-content-body .toc:after,
.contents .toc:before,
.contents .toc:after {
  content: "";
  display: table;
}
.mce-content-body .toc:after,
.contents .toc:after {
  clear: both;
}
.mce-content-body .toc li,
.contents .toc li {
  float: left;
  padding: 0;
  width: 20%;
  list-style: none;
}
.mce-content-body .toc li a,
.contents .toc li a {
  display: block;
  padding: 0 0 0 20px;
  background: url(https://warakuseikotuin.com/img/common/down-arrow-blue.png) no-repeat 0 50%;
  background-size: 10px 6px;
  color: #333;
}
.mce-content-body .toc li a:hover,
.contents .toc li a:hover {
  color: #e06f00;
}
.mce-content-body .contact,
.contents .contact {
  margin-top: 80px;
  margin-bottom: 60px;
  background-color: #fff2cc;
  position: relative;
}
.mce-content-body .contact:before,
.contents .contact:before {
  content: "";
  display: block;
  width: 160px;
  height: 92px;
  background: url(../img/common/contact__person.png) no-repeat 0 0;
  background-size: 100% auto;
  position: absolute;
  top: -10px;
  left: 25px;
}
.mce-content-body .contact:after,
.contents .contact:after {
  content: "";
  display: block;
  width: 107px;
  height: 90px;
  background: url(../img/common/contact__bg.png) no-repeat 0 0;
  background-size: 100% auto;
  position: absolute;
  top: -15px;
  right: 20px;
}
.mce-content-body .contact dl,
.contents .contact dl {
  margin: 0;
}
.mce-content-body .contact dt,
.contents .contact dt {
  text-align: center;
  margin: 0 0 20px 0;
}
.mce-content-body .contact dt img,
.contents .contact dt img {
  position: relative;
  z-index: 1;
  max-width: 270px;
}
.mce-content-body .contact dd,
.contents .contact dd {
  text-align: center;
  margin: 0;
  padding: 0;
}
.mce-content-body .contact dd > a,
.contents .contact dd > a {
  display: block;
  max-width: 480px;
  margin: 20px auto 0 auto;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.mce-content-body .contact dd > a:hover,
.contents .contact dd > a:hover {
  opacity: 0.75;
}
.mce-content-body .contact--frist,
.contents .contact--frist {
  background: #fff;
  border: 3px solid #f7efbe;
  padding: 20px;
}
.mce-content-body .contact--frist > img,
.contents .contact--frist > img {
  margin: 0 0 20px 0;
  max-width: 150px;
}
.mce-content-body .contact .col,
.contents .contact .col {
  background: url(../img/common/notebg3.gif) repeat-y 50% 0;
}
.mce-content-body .contact .col__box,
.contents .contact .col__box {
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.mce-content-body .contact a[href^="tel:"],
.contents .contact a[href^="tel:"] {
  text-align: left;
  background: url(../img/common/tel.png) no-repeat 0 bottom;
  background-size: auto 30px;
  color: #573100;
  max-width: 100%;
  display: block;
  position: relative;
  padding: 16px 0 0 25px;
  line-height: 30px;
  font-size: 30px;
  font-weight: normal;
}
.mce-content-body .contact a[href^="tel:"]:after,
.contents .contact a[href^="tel:"]:after {
  content: "\304A\96FB\8A71\3067\306E\304A\554F\3044\5408\308F\305B\306F\3053\3061\3089";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 12px;
  line-height: 12px;
}
.mce-content-body .btn,
.contents .btn {
  display: block;
  background: #562f00;
  height: 46px;
  line-height: 46px;
  border-bottom: 3px solid #331c00;
  border-radius: 5px;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  text-align: center;
  padding: 0 0 0 15px;
  position: relative;
}
.mce-content-body .btn:after,
.contents .btn:after {
  content: "";
  display: block;
  width: 13px;
  height: 100%;
  background: url(../img/common/header-arrow.png) no-repeat 0 50%;
  background-size: 100% auto;
  position: absolute;
  top: -1px;
  left: 50%;
  margin-left: -5em;
}
.mce-content-body .btn:hover,
.contents .btn:hover {
  height: 49px;
  line-height: 49px;
  border-bottom: 0;
  color: #fff;
}

/* ----------------------------------------------------------------
  all
----------------------------------------------------------------- */
.nowrap,
.nowrap th {
  white-space: nowrap;
}

table.nowrap {
  white-space: normal;
}

.max-w500 {
  max-width: 500px;
}

.add-padding {
  padding: 2em;
}

.w7em {
  width: 7em;
}

.w8em {
  width: 8em;
}

.w9em {
  width: 9em;
}

.w10em {
  width: 10em;
}

.w11em {
  width: 11em;
}

.w12em {
  width: 12em;
}

.w13em {
  width: 13em;
}

.w14em {
  width: 14em;
}

.w15em {
  width: 15em;
}

.txt-right {
  margin: 1em 0;
  display: block;
  text-align: right;
}

/*multi colum*/
.col:before,
.col:after {
  content: '';
  display: table;
}

.col:after {
  clear: both;
}

.col__box {
  position: relative;
  float: left;
}

.col5 .col__box {
  width: 18.5%;
  margin-right: 1.875%;
}

.col4 .col__box {
  width: 23.5%;
  margin-right: 2%;
}

.col3 .col__box {
  width: 32%;
  margin-right: 2%;
}

.col2 .col__box {
  width: 48.5%;
  margin-right: 3%;
}

.col5 .col__box:nth-child(5n),
.col4 .col__box:nth-child(4n),
.col3 .col__box:nth-child(3n),
.col2 .col__box:nth-child(2n) {
  margin-right: 0;
}

.col5 .col__box:nth-child(5n+1),
.col4 .col__box:nth-child(4n+1),
.col3 .col__box:nth-child(3n+1),
.col2 .col__box:nth-child(2n+1) {
  clear: left;
}

.col5 .col__box:nth-child(n+6),
.col4 .col__box:nth-child(n+5),
.col3 .col__box:nth-child(n+4),
.col2 .col__box:nth-child(n+3) {
  margin-top: 20px;
}

.heading {
  background: #faefd5;
  position: relative;
  z-index: -1;
}
.heading__wrapper {
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px 0;
  position: relative;
}
.heading__wrapper:before {
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: auto 100%;
  content: "";
  width: 200%;
  height: 100%;
  position: absolute;
  top: 0;
  right: -100px;
}
.heading__wrapper [itemprop="headline"] {
  border-left: 5px solid #f4a600;
  line-height: 30px;
  font-size: 26px;
  padding: 14px 0 14px 20px;
  color: #562f00;
  text-shadow: 1px 1px 1px #fff;
  position: relative;
  z-index: 1;
}

/* ----------------------------------------------------------------
  pages
----------------------------------------------------------------- */
/*top*/
.top-1__cont h2.img {
  width: 62.5%;
  margin: 0 auto;
  position: relative;
  overflow: visible;
  padding: 0 85px;
}
.top-1__cont h2.img:before, .top-1__cont h2.img:after {
  content: "";
  display: block;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 72px 92px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.top-1__cont h2.img:before {
  background-position: 0 100%;
  background-image: url(../img/top/top-cont1__title_before.gif);
}
.top-1__cont h2.img:after {
  background-position: 100% 100%;
  background-image: url(../img/top/top-cont1__title_after.gif);
}
.top-1__cont h3.img {
  max-width: 320px;
}
.top-1__cont .box {
  margin-top: 0 !important;
  background-color: #fdeedd;
}
.top-1__cont .box .box-inner {
  position: relative;
  overflow: hidden;
}
.top-1__cont .box .box-inner:before {
  content: "";
  display: block;
  background: url(../img/top/top-cont1__peroson.jpg) no-repeat 0 0;
  background-size: 100% auto;
  width: 295px;
  height: 250px;
  position: absolute;
  right: 20px;
  bottom: 0;
}
.top-1__cont .box .box-inner section {
  position: relative;
}

.top-2__cont {
  margin: 60px 0;
  padding: 0 20px;
  position: relative;
}
.top-2__cont img {
  position: relative;
  z-index: 1;
  vertical-align: middle;
}
.top-2__cont--left {
  width: 27.5%;
}
.top-2__cont--right {
  width: 60%;
  margin-left: 20px;
}
.top-2__cont:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 85%;
  background: #fff9e5;
}

.top-3__cont section {
  margin-top: 40px;
}
.top-3__cont section p {
  position: relative;
  padding: 0 270px 0 0;
  margin-bottom: 40px;
  font-size: 16px;
  min-height: 145px;
}
.top-3__cont section p:before {
  content: "";
  display: block;
  background: url(../img/top/top-cont3__photo.jpg) no-repeat 0 0;
  width: 250px;
  height: 145px;
  position: absolute;
  right: 0;
  top: 10px;
}
.top-3__cont section p span {
  margin: 0;
  line-height: 40px;
  background: url(../img/common/notebg2.gif) repeat 0 0;
  display: inline-block;
}

.top-4__cont {
  margin-top: 60px;
}
.top-4__cont h2.img {
  max-width: 408px;
  margin: -40px auto 0 auto;
}
.top-4__cont .box .box-inner section:first-child h3 {
  margin-top: 10px;
}
.top-4__cont .box .box-inner img {
  max-width: 200px;
}
.top-4__cont .box .box-inner p,
.top-4__cont .box .box-inner p + p {
  margin: 0;
}

.top-5__cont .col2 {
  margin-top: 30px;
}
.top-5__cont .col2 .col__box:nth-child(n+3) {
  margin-top: 15px;
}
.top-5__cont .col2 a {
  display: block;
  cursor: pointer;
}
.top-5__cont .col2 a img {
  border: 1px solid #eee;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.top-5__cont .col2 a:hover img {
  border-color: #e06f00;
  opacity: 0.75;
}

/*intro*/
.dir-intro .heading {
  overflow: hidden;
}
.dir-intro .heading__wrapper:before {
  background-image: url(../img/intro/intro-h2.jpg);
}

.intro__cont1 h2.img img {
  max-width: 80%;
}

/*guide*/
.dir-guide .heading {
  overflow: hidden;
}
.dir-guide .heading__wrapper:before {
  background-image: url(../img/guide/guide-h2.jpg);
}

.guide__cont1 h2.img img {
  max-width: 70%;
}

.guide__cont3.exbox dd:before {
  background-image: url(../img/guide/guide_cont3__person.jpg);
  width: 204px;
  height: 290px;
}

/*fee*/
.dir-fee .heading {
  overflow: hidden;
}
.dir-fee .heading__wrapper:before {
  background-image: url(../img/fee/fee-h2.jpg);
}

.fee__cont1 {
  margin-top: -60px;
}

/*staff*/
.dir-staff .heading {
  overflow: hidden;
}
.dir-staff .heading__wrapper:before {
  background-image: url(../img/staff/staff-h2.jpg);
}

.staff__cont1 h2.img img {
  max-width: 80%;
}

/*faq*/
.dir-faq .heading {
  overflow: hidden;
}
.dir-faq .heading__wrapper:before {
  background-image: url(../img/faq/faq-h2.jpg);
}
.dir-faq .contents {
  margin-top: -60px;
}

.faq-answer {
  margin: -1em 0 0 0;
  padding: 0 0 0 55px;
  background: url(../img/faq/answer.gif) no-repeat 0 10px;
  background-size: 40px 34px;
  min-height: 44px;
}
.faq-answer p {
  margin: 0;
}

/*contact / appointment*/
.dir-appointment .heading,
.dir-yoyaku .heading,
.dir-contact .heading {
  overflow: hidden;
}
.dir-appointment .heading__wrapper:before,
.dir-yoyaku .heading__wrapper:before,
.dir-contact .heading__wrapper:before {
  background-image: url(../img/contact/contact-h2.jpg);
}

.contact__cont1 h2.img img {
  max-width: 80%;
}

.contact__cont1 + form {
  margin-top: 2em;
}

#firstTimeTarget,
#firstTimeTarget2 {
  display: none;
}

/*voice*/
.dir-voice .heading {
  overflow: hidden;
}
.dir-voice .heading__wrapper:before {
  background-image: url(../img/voice/voice-h2.jpg);
}

.voice__cont1 h2.img img {
  max-width: 70%;
}

.buzz__box {
  position: relative;
  clear: both;
}
.buzz__box:after {
  content: "";
  display: table;
  clear: both;
}
.buzz__box p {
  margin-top: 0;
  margin-bottom: 0;
}
.buzz__box p + p {
  margin-top: 1em;
}
.buzz__box .buzz_photo {
  font-size: 13px;
  margin: 0  0 20px 20px;
  padding: 0;
  float: right;
  position: relative;
  max-width: 175px;
}
.buzz__box .buzz_photo .zoom {
  border: 1px solid #ddd;
  position: relative;
  display: inline-block;
}
.buzz__box .buzz_photo .zoom:after {
  content: "";
  display: block;
  width: 23px;
  height: 23px;
  background: url(../img/voice/zoom.png) no-repeat 0 0;
  background-size: 23px 23px;
  position: absolute;
  bottom: 10px;
  right: 10px;
}
.buzz__box .buzz__sign {
  clear: both;
  padding: 0;
  margin: 20px 0 0 0;
  color: #666;
  font-size: 90%;
}

/*about*/
.dir-about .heading {
  overflow: hidden;
}
.dir-about .heading__wrapper:before {
  background-image: url(../img/about/about-h2.jpg);
}

/*privacy*/
.dir-privacy .heading {
  overflow: hidden;
}
.dir-privacy .heading__wrapper:before {
  background-image: url(../img/privacy/privacy-h2.jpg);
}

/*kotuban*/
.dir-kotuban .heading {
  overflow: hidden;
}
.dir-kotuban .heading__wrapper:before {
  background-image: url(../img/kotuban/kotuban-h2.jpg);
}

.kotuban__cont1 h2.img img {
  max-width: 90%;
}

.kotuban__cont3.exbox dd:before {
  background-image: url(../img/katakori/katakori_cont2__person.jpg);
  width: 215px;
  height: 222px;
}

.kotuban__cont5 figure {
  text-align: center;
}
.kotuban__cont5 figure img {
  max-width: 500px;
}

.kotuban__cont7 table th {
  width: 5.5em;
}

.kotuban__cont2,
.kotuban__cont4,
.kotuban__cont8 {
  margin-top: 60px;
}

/*nekoze*/
.dir-nekoze .heading {
  overflow: hidden;
}
.dir-nekoze .heading__wrapper:before {
  background-image: url(../img/nekoze/nekoze-h2.jpg);
}

.nekoze__cont1 h2.img img {
  max-width: 70%;
}

.nekoze__cont4.exbox dd:before {
  background-image: url(../img/nekoze/nekoze_cont4__person.jpg);
  width: 277px;
  height: 223px;
}

/*okyaku*/
.dir-okyaku .heading {
  overflow: hidden;
}
.dir-okyaku .heading__wrapper:before {
  background-image: url(../img/okyaku/okyaku-h2.jpg);
}

.okyaku__cont1 h2.img img {
  max-width: 100%;
}

.okyaku__cont3.exbox dd:before {
  background-image: url(../img/okyaku/okyaku_cont3__person.jpg);
  width: 242px;
  height: 380px;
}

/*kogao*/
.dir-kogao .heading {
  overflow: hidden;
}
.dir-kogao .heading__wrapper:before {
  background-image: url(../img/kogao/kogao-h2.jpg);
}

.kogao__cont1 h2.img img {
  max-width: 80%;
}

.kogao__cont2 {
  margin-top: 60px;
}
.kogao__cont2 h2.img {
  max-width: 354px;
  margin: -40px auto 0 auto;
  padding: 0 0 20px 0;
}
.kogao__cont2 p {
  margin: 0 !important;
}
.kogao__cont2 p:first-child {
  margin-top: -10px !important;
}

.kogao__cont5.exbox dd:before {
  background-image: url(../img/kogao/kogao_cont4__person.jpg);
  width: 282px;
  height: 292px;
}

/*katakori*/
.dir-katakori .heading {
  overflow: hidden;
}
.dir-katakori .heading__wrapper:before {
  background-image: url(../img/katakori/katakori-h2.jpg);
}

.katakori__cont1 h2.img img {
  max-width: 80%;
}

.katakori__cont2.exbox dd:before {
  background-image: url(../img/katakori/katakori_cont2__person.jpg);
  width: 215px;
  height: 222px;
}

/*youtuu*/
.dir-youtuu .heading {
  overflow: hidden;
}
.dir-youtuu .heading__wrapper:before {
  background-image: url(../img/youtuu/youtuu-h2.jpg);
}

.youtuu__cont1 h2.img img {
  max-width: 80%;
}

.youtuu__cont3.exbox dd:before {
  background-image: url(../img/youtuu/youtuu_cont3__person.jpg);
  width: 273px;
  height: 232px;
}

/*muchiuchi*/
.dir-muchiuchi .heading {
  overflow: hidden;
}
.dir-muchiuchi .heading__wrapper:before {
  background-image: url(../img/muchiuchi/muchiuchi-h2.jpg);
}

.muchiuchi__cont1 h2.img img {
  max-width: 80%;
}

.muchiuchi__cont3.exbox dd:before {
  background-image: url(../img/muchiuchi/muchiuchi_cont3__person.jpg);
  width: 215px;
  height: 324px;
}

/*rousai*/
.dir-rousai .heading {
  overflow: hidden;
}
.dir-rousai .heading__wrapper:before {
  background-image: url(../img/rousai/rousai-h2.jpg);
}

.rousai__cont1 h2.img img {
  max-width: 80%;
}

.rousai__cont3.exbox dd:before {
  background-image: url(../img/katakori/katakori_cont2__person.jpg);
  width: 215px;
  height: 222px;
}

/*blog*/
.dir-staffblog .heading,
.dir-blog .heading {
  overflow: hidden;
}
.dir-staffblog .heading__wrapper:before,
.dir-blog .heading__wrapper:before {
  background-image: url(../img/blog/blog-h2.jpg);
}

.dir-staffblog .blog-search + h2 {
  margin-top: -20px !important;
}

.blog-archive__title dt {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  color: #e06f00;
}

.single-title {
  margin: 0 !important;
}

.single-time {
  margin: 1em 0 1.5em 0;
  text-align: right;
  color: #999;
  font-size: 90%;
}

.blog-contents {
  margin: 60px 0;
}
.blog-contents:before, .blog-contents:after {
  content: "";
  display: table;
}
.blog-contents:after {
  clear: both;
}
.blog-contents dl {
  width: 50%;
  float: left;
}
.blog-contents dt {
  text-align: center;
  padding: 0 0 5px 0;
  border-bottom: 1px solid #eee;
}
.blog-contents dd {
  margin: 0;
  padding: 0;
}
.blog-contents--archives {
  width: 100%;
  float: none;
  clear: both;
}
.blog-contents--archives ul {
  list-style: none;
  margin: 0;
  padding: 1em 0 0 0;
}
.blog-contents--archives li {
  width: 25%;
  float: left;
  padding: 0;
}
.blog-contents--recent dt,
.blog-contents--recent dd {
  margin-right: 10px;
}
.blog-contents--categories dt,
.blog-contents--categories dd {
  margin-left: 10px;
}

.post-thumbnail {
  text-align: center;
  display: block;
}

.screen-reader-text {
  position: absolute !important;
  margin: -1px !important;
  padding: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  border: 0 !important;
  word-wrap: normal !important;
}

.nav-links {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  word-wrap: break-word;
}

.post-navigation {
  margin: 5em auto;
  padding: 0;
}
.post-navigation a {
  border-bottom: 1px solid #eaeaea;
  padding: 11px 0 12px;
  width: 100%;
}
.post-navigation .meta-nav {
  color: #777;
  display: block;
  font-size: 13px;
  line-height: 2;
  text-transform: uppercase;
}
.post-navigation .nav-next {
  text-align: right;
}

.pagination,
.loop-pagination {
  text-align: center;
  max-width: 1000px;
  margin: 50px auto;
  overflow: hidden;
  clear: both;
}

.page-numbers {
  border-top: 5px solid transparent;
  display: inline-block;
  font-size: 14px;
  font-weight: 900;
  margin-right: 1px;
  padding: 7px 16px;
  text-transform: uppercase;
}

.pagination .page-numbers.current {
  border-top-color: #f05f01;
}

.pagination a {
  color: #777;
  -webkit-transition: border-top-color 0.3s, color 0.3s;
  transition: border-top-color 0.3s, color 0.3s;
}
.pagination a:hover {
  border-top-color: #f05f01;
}

/*search*/
.blog-search {
  margin: 20px 0;
  position: relative;
  height: 40px;
  width: 100%;
}

.blog-search__box {
  font-size: 16px;
  line-height: 38px;
  height: 40px;
  border: 1px solid #ddd;
  padding: 0 60px 0 1em;
  width: 100%;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.blog-search__submit {
  background-color: #f39d4b;
  color: #fff;
  border: 0 none;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  right: 0;
  height: 40px;
  line-height: 40px;
  width: 60px !important;
  min-width: 0 !important;
  font-size: 12px;
}

.gsc-input {
  height: 25px !important;
  line-height: 25px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  vertical-align: middle !important;
}

.gsc-input-box {
  height: auto !important;
}

.gsib_a {
  padding: 0 8px !important;
}

.gsc-search-box {
  line-height: 1;
}

.gsc-selected-option-container {
  min-width: 7em !important;
}

.gsst_a,
.gscb_a {
  padding-top: 0px !important;
  line-height: 25px !important;
}

.gsc-search-button.gsc-search-button-v2 {
  margin-top: 0 !important;
}

#cse-search-results table,
#cse-search-results th,
#cse-search-results td {
  border: 0 none;
  padding: 0;
  margin: 0;
  vertical-align: middle;
}

.gsc-result .gs-title {
  line-height: 1.4em !important;
}

/* Preload images */
body:after {
  content: url(../img/common/close.png) url(../img/common/loading.gif) url(../img/common/prev.png) url(../img/common/next.png);
  display: none;
}

body.lb-disable-scrolling {
  overflow: hidden;
}

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none;
}

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
}

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  border-radius: 3px;
}

.lightbox a img {
  border: none;
}

.lb-outerContainer {
  position: relative;
  background-color: white;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
}

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-container {
  padding: 4px;
}

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../img/common/loading.gif) no-repeat;
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}

.lb-container > .nav {
  left: 0;
}

.lb-nav a {
  outline: none;
  background-image: url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==");
}

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block;
}

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(../img/common/prev.png) left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(../img/common/next.png) right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-data {
  padding: 0 4px;
  color: #ccc;
}

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em;
}

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: bold;
  line-height: 1em;
}

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999999;
}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../img/common/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

@media (max-width: 1040px) {
  .header .header-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .header .header-inner > [itemprop="name"] {
    left: 20px;
  }

  .heading {
    padding-left: 20px;
    padding-right: 20px;
  }

  #main {
    padding-left: 20px;
    padding-right: 20px;
  }

  /*guide*/
  .guide__cont3.exbox dd:before {
    display: none;
  }
}
@media (max-width: 1000px) {
  .header .header-inner > [itemprop="name"]:before {
    display: none;
  }

  .nav ul li:first-child:before {
    display: none;
  }
  .nav ul li:first-child a {
    border-left: 0 none;
  }
  .nav ul li:last-child:after {
    display: none;
  }

  /*kotuban*/
  .kotuban__cont4__voice {
    display: none;
  }

  /*okyaku*/
  .okyaku__cont3.exbox dd:before {
    display: none;
  }
  .okyaku__cont3.exbox dd li br {
    display: none;
  }

  /*muchiuchi*/
  .muchiuchi__cont3.exbox dd:before {
    display: none;
  }
}
@media (max-width: 1020px) and (min-width: 900px) {
  .top-1__cont h2.img:before, .top-1__cont h2.img:after {
    display: none;
  }
  .top-1__cont .box .box-inner:before {
    width: 200px;
    height: 190px;
    right: 10px;
  }
  .top-1__cont .box .box-inner .point {
    text-align: left !important;
  }
  .top-1__cont .box .box-inner .point span br {
    display: none;
  }
}
@media (max-width: 900px) {
  body {
    font-size: 15px;
  }

  .header .header-inner {
    padding-left: 10px;
    padding-right: 10px;
  }
  .header .header-inner > [itemprop="name"] {
    left: 10px;
  }

  .heading__wrapper:before {
    right: -100px;
  }

  .heading {
    padding-left: 10px;
    padding-right: 10px;
  }

  .main-visual {
    background: none;
  }
  .main-visual__wrapper {
    margin: 0;
    padding: 55px 0;
    background: url(../img/top/main--sp.jpg) repeat-x 50% 0;
    background-size: auto auto;
  }
  .main-visual__wrapper a {
    overflow: hidden;
    height: 0;
    max-width: 270px;
    display: block;
    position: relative;
    padding: 261px 0 0 0;
    margin: 0 auto;
  }
  .main-visual__wrapper a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin: 0 0 0 -135px;
    display: block;
    height: 100%;
    width: 100%;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-image: url(../img/top/main_cirqle--sp.png);
    background-size: 100% auto;
    visibility: visible;
  }
  .main-visual__wrapper a:after {
    display: none;
  }

  #main {
    padding-left: 10px;
    padding-right: 10px;
  }
  #main article {
    float: none;
    margin-left: 0;
  }
  #main article .contents {
    margin-left: 0;
  }
  #main aside {
    margin-top: 50px;
    float: none;
    width: 100%;
  }
  #main aside .side-nav__wrapper {
    width: 100%;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }

  .side-nav__ekiten, .side-nav__jiko--2 {
    max-width: 240px;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 0 none;
    padding-bottom: 0;
  }

  .video {
    margin: 20px 0;
    border: 0 none;
    padding: 0;
  }

  /*top*/
  .top-1__cont h2.img {
    padding: 0;
  }
  .top-1__cont h2.img:before, .top-1__cont h2.img:after {
    display: none;
  }
}
@media (max-width: 767px) {
  #buildMenuButton {
    z-index: 1000;
    visibility: visible;
  }

  .header {
    height: 80px;
    padding-bottom: 0;
  }
  .header .header-inner > [itemprop="name"] > a {
    width: 180px;
    padding-top: 80px;
  }

  .header-sub {
    padding: 0;
    min-width: 30px;
    margin-right: 50px;
  }
  .header-sub .header-sub__form, .header-sub:before {
    display: none;
  }
  .header-sub .header-sub__tel {
    height: 100%;
  }
  .header-sub .header-sub__tel a {
    padding: 80px 0 0 0;
    width: 60px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    background-image: url(../img/common/header-tel--sp.png);
    background-size: 21px 28px;
    background-position: 50% 50%;
  }

  .nav {
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    top: 0;
  }
  .nav ul {
    border-top: 1px solid #ddd;
  }
  .nav ul li {
    width: 50%;
  }
  .nav ul li a {
    border-right: 0;
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  .nav ul li:after {
    display: none;
  }
  .nav ul li:first-child {
    width: 100%;
    float: none;
  }
  .nav ul li:first-child a {
    border-left: 1px solid #ddd;
  }
  .nav ul li:first-child:before {
    display: none;
  }

  .side-nav__ekiten > div,
  .side-nav__support,
  .side-nav__tax {
    display: none;
  }

  .contents h2 {
    margin: 40px 0 25px 0;
    font-weight: bold;
  }
  .contents h3 {
    font-weight: bold;
    margin: 30px 0 20px;
  }
  .contents h3 strong {
    font-weight: bold;
  }
  .contents h3 br {
    display: block;
  }
  .contents .box {
    margin: 30px 0;
    padding: 10px;
  }
  .contents .box .box-inner {
    padding: 10px;
  }
  .contents .box .box-inner .point {
    font-size: 4vw;
    text-align: left;
  }
  .contents .box .box__img {
    margin-top: 10px;
  }
  .contents .pickup {
    font-size: 4.5vw;
  }
  .contents .pickup li {
    background-position: 0 0.6em;
  }
  .contents .img200w {
    margin: 0 auto 20px auto !important;
    display: block;
  }
  .contents .exbox dt {
    padding-bottom: 10px;
  }
  .contents .contact {
    margin-top: 60px;
  }
  .contents .contact:before {
    display: none;
  }
  .contents .contact--frist {
    padding: 10px;
  }
  .contents .contact .col {
    background: none;
  }
  .contents .contact a[href^="tel:"] {
    margin-top: 10px;
    display: inline-block;
  }
  .contents form:not(.wpcf7-form) table,
  .contents form:not(.wpcf7-form) tbody,
  .contents form:not(.wpcf7-form) tr,
  .contents form:not(.wpcf7-form) th,
  .contents form:not(.wpcf7-form) td {
    display: block;
  }
  .contents form:not(.wpcf7-form) table {
    border: 0 none;
  }
  .contents form:not(.wpcf7-form) th {
    width: auto;
    padding: 15px 10px !important;
    line-height: 1;
  }
  .contents form:not(.wpcf7-form) td {
    border: 0 none;
    padding: 15px 1px !important;
  }
  .contents form:not(.wpcf7-form) .required {
    padding: 0;
  }
  .contents form:not(.wpcf7-form) .required:before {
    top: 50%;
    left: auto;
    right: 0;
  }
  .contents form:not(.wpcf7-form) th br {
    display: none;
  }
  .contents form:not(.wpcf7-form) .submit .button {
    min-width: 100%;
  }
  .contents form:not(.wpcf7-form) .confirm .button {
    min-width: 48%;
  }

  .embed-iframe {
    padding-top: 56.25%;
  }

  .col__box {
    float: none;
    margin-top: 0px;
  }

  .col__box + .col__box {
    margin-top: 15px;
  }

  .col5 .col__box,
  .col4 .col__box,
  .col3 .col__box,
  .col2 .col__box {
    width: 100%;
    margin-right: 0;
  }

  /*top*/
  .top-1__cont h2.img {
    width: auto;
    margin: 0 auto;
  }
  .top-1__cont .box .box-inner:before {
    width: 200px;
    height: 180px;
    right: 10px;
  }
  .top-1__cont .box .box-inner .point {
    text-align: left !important;
  }
  .top-1__cont .box .box-inner .point span br {
    display: none;
  }

  /*intro*/
  .intro__cont1 h2.img img {
    max-width: 100%;
  }

  /*guide*/
  .guide__cont1 h2.img img {
    max-width: 100%;
  }

  .guide__cont7 figure {
    text-align: center;
  }

  /*staff*/
  .staff__cont1 h2.img img {
    max-width: 100%;
  }

  /*fee*/
  .fee__cont1 {
    margin-top: -40px;
  }

  /*faq*/
  .dir-faq .contents {
    margin-top: -40px;
  }

  /*contact*/
  .contact__cont1 h2.img img {
    max-width: 100%;
  }

  /*voice*/
  .voice__cont1 h2.img img {
    max-width: 100%;
  }

  .buzz__box .buzz_photo {
    margin: 0 auto 20px auto !important;
    display: block;
    float: none;
  }

  /*kotuban*/
  .kotuban__cont1 h2.img img {
    max-width: 100%;
  }

  .kotuban__cont2,
  .kotuban__cont4,
  .kotuban__cont8 {
    margin-top: 30px;
  }

  .kotuban__cont3.exbox dd:before {
    width: 150px;
    height: 280px;
    bottom: -10px;
    right: 10px;
  }

  .kotuban__cont5 figure img {
    max-width: 100%;
  }

  /*nekoze*/
  .nekoze__cont1 h2.img img {
    max-width: 100%;
  }

  .nekoze__cont4.exbox {
    margin-top: 40px;
    padding-top: 0;
  }
  .nekoze__cont4.exbox dt {
    font-size: 4vw;
  }
  .nekoze__cont4.exbox dd:before {
    display: none;
  }

  /*okyaku*/
  .okyaku__cont1 h2.img img {
    max-width: 100%;
  }

  .okyaku__cont3.exbox dt br {
    display: block;
  }

  /*kogao*/
  .kogao__cont1 h2.img img {
    max-width: 100%;
  }

  .kogao__cont2 h2.img {
    max-width: 80%;
  }

  .kogao__cont5.exbox dd:before {
    display: none;
  }

  /*katakori*/
  .katakori__cont1 h2.img img {
    max-width: 100%;
  }

  .katakori__cont2.exbox dd:before {
    display: none;
  }

  /*youtuu*/
  .youtuu__cont1 h2.img img {
    max-width: 100%;
  }

  .youtuu__cont3.exbox dd:before {
    display: none;
  }

  /*muchiuchi*/
  .muchiuchi__cont1 h2.img img {
    max-width: 100%;
  }

  /*rousai*/
  .rousai__cont1 h2.img img {
    max-width: 100%;
  }

  .rousai__cont3.exbox dd:before {
    display: none;
  }

  /*blog*/
  .blog-search__box {
    padding-right: 40px;
  }

  .blog-search__submit {
    width: 40px;
  }

  .blog-contents {
    margin: 40px 0;
  }
  .blog-contents--recent dt,
  .blog-contents--recent dd {
    margin-right: 5px;
  }
  .blog-contents--categories dt,
  .blog-contents--categories dd {
    margin-left: 5px;
  }
  .blog-contents--archives li {
    width: 33.333333%;
  }
}
@media (max-width: 540px) {
  .contents .img200w,
  .contents .img-left,
  .contents .img-right {
    float: none;
    margin: 20px auto !important;
    max-width: 300px;
  }
  .contents th,
  .contents td {
    padding: 5px;
  }
  .contents .box .box-inner .point span {
    line-height: 40px;
    background-size: auto 40px;
  }
  .contents .pickup {
    font-size: 4vw;
  }

  /*top*/
  .top-1__cont .box .box-inner:before {
    display: none;
  }

  .top-2__cont {
    margin: 30px 0;
    padding: 0 10px;
  }
  .top-2__cont--left {
    width: 200px;
    margin: 0 auto;
    display: block;
  }
  .top-2__cont--right {
    display: block;
    width: auto;
    margin: 0 auto;
    padding: 0 0 20px 0;
  }

  .top-3__cont section p {
    font-size: 4vw;
    padding: 160px 0 0 0;
    margin-bottom: 20px;
    min-height: 0;
  }
  .top-3__cont section p br {
    display: none;
  }
  .top-3__cont section p:before {
    top: 0;
    left: 50%;
    margin-left: -125px;
  }

  .top-4__cont {
    margin-top: 60px;
  }
  .top-4__cont .img-right {
    margin: 0 auto 20px auto !important;
    display: block;
  }

  /*kotuban*/
  .kotuban__cont3.exbox dd:before {
    display: none;
  }

  /*blog*/
  .blog-contents {
    margin: 40px 0;
  }
  .blog-contents dl {
    width: auto;
    float: none;
  }
  .blog-contents--archives li {
    width: 50%;
  }
}
@media (max-width: 480px) {
  body {
    font-size: 4vw;
  }

  .main-visual {
    background: none;
  }
  .main-visual__wrapper a {
    max-width: 240px;
    padding-top: 232px;
  }
  .main-visual__wrapper a:before {
    margin: 0 0 0 -120px;
  }

  .contents .contact a[href^="tel:"] {
    line-height: 26px;
    font-size: 26px;
  }

  .heading__wrapper {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .heading__wrapper:before {
    right: -80px;
  }
  .heading__wrapper [itemprop="headline"] {
    line-height: 22px;
    font-size: 18px;
    padding: 8px 0 8px 15px;
  }
}
@media (max-width: 340px) {
  .header-sub {
    margin-right: 45px;
  }
  .header-sub .header-sub__tel a {
    width: 55px;
  }
}
.alt-title {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

@media (max-width: 767px) {
  .sp--none {
    display: none !important;
  }
}

.sp--only {
  display: none;
}
@media (max-width: 767px) {
  .sp--only {
    display: block;
  }
}

.lp-text--0 {
  margin: 0 !important;
  color: #e06f00 !important;
  font-size: 36px !important;
  font-weight: bold !important;
  text-align: center !important;
  line-height: 1.25 !important;
}
@media (max-width: 1040px) {
  .lp-text--0 {
    font-size: 32px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--0 {
    font-size: 30px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--0 {
    font-size: 5.25vw !important;
  }
}
.lp-text--0 h2,
.lp-text--0 h3,
.lp-text--0 h4,
.lp-text--0 p {
  text-align: center !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--0 h2:before, .lp-text--0 h2:after,
.lp-text--0 h3:before,
.lp-text--0 h3:after,
.lp-text--0 h4:before,
.lp-text--0 h4:after,
.lp-text--0 p:before,
.lp-text--0 p:after {
  display: none !important;
}
.lp-text--0 br {
  display: block !important;
}
.lp-text--1 {
  position: relative !important;
  text-align: center !important;
  color: #ec1e1d !important;
  font-weight: bold !important;
  font-size: 40px !important;
  letter-spacing: 0.15em !important;
  line-height: 1.25 !important;
  padding: 0.2em 1em !important;
  margin: 1em 0 !important;
}
@media (max-width: 1040px) {
  .lp-text--1 {
    font-size: 36px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--1 {
    font-size: 32px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--1 {
    font-size: 5.5vw !important;
  }
}
.lp-text--1 h2,
.lp-text--1 h3,
.lp-text--1 h4,
.lp-text--1 p {
  text-align: center !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--1 h2:before, .lp-text--1 h2:after,
.lp-text--1 h3:before,
.lp-text--1 h3:after,
.lp-text--1 h4:before,
.lp-text--1 h4:after,
.lp-text--1 p:before,
.lp-text--1 p:after {
  display: none !important;
}
.lp-text--1:before {
  content: '';
  display: block;
  width: 1em;
  height: 1em;
  border-top: 0.1em solid #ec1e1d;
  border-left: 0.1em solid #ec1e1d;
  position: absolute;
  top: 0;
  left: 0;
}
.lp-text--1:after {
  content: '';
  display: block;
  width: 1em;
  height: 1em;
  border-bottom: 0.1em solid #ec1e1d;
  border-right: 0.1em solid #ec1e1d;
  position: absolute;
  bottom: 0;
  right: 0;
}
.lp-text--2 {
  margin: 0 !important;
  color: #e06f00 !important;
  font-size: 24px !important;
  font-weight: bold !important;
  text-align: center !important;
  line-height: 1.4 !important;
}
@media (max-width: 1040px) {
  .lp-text--2 {
    font-size: 22px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--2 {
    font-size: 20px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--2 {
    font-size: 4.5vw !important;
  }
}
.lp-text--2 h2,
.lp-text--2 h3,
.lp-text--2 h4,
.lp-text--2 p {
  text-align: center !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--2 h2:before, .lp-text--2 h2:after,
.lp-text--2 h3:before,
.lp-text--2 h3:after,
.lp-text--2 h4:before,
.lp-text--2 h4:after,
.lp-text--2 p:before,
.lp-text--2 p:after {
  display: none !important;
}
.lp-text--2 br {
  display: block !important;
}
.lp-text--3 {
  margin: 0 !important;
  color: #e06f00 !important;
  font-size: 24px !important;
  font-weight: bold !important;
  text-align: left !important;
  line-height: 1.4 !important;
}
@media (max-width: 1040px) {
  .lp-text--3 {
    font-size: 22px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--3 {
    font-size: 20px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--3 {
    font-size: 4.5vw !important;
  }
}
.lp-text--3 h2,
.lp-text--3 h3,
.lp-text--3 h4,
.lp-text--3 p {
  text-align: left !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--3 h2:before, .lp-text--3 h2:after,
.lp-text--3 h3:before,
.lp-text--3 h3:after,
.lp-text--3 h4:before,
.lp-text--3 h4:after,
.lp-text--3 p:before,
.lp-text--3 p:after {
  display: none !important;
}
.lp-text--3 br {
  display: block !important;
}
.lp-text--4 {
  background-color: #fff3f3 !important;
  text-align: center !important;
  color: #ec1e1d !important;
  font-weight: bold !important;
  font-size: 30px !important;
  letter-spacing: 0.15em !important;
  line-height: 1.25 !important;
  padding: 1em 1em !important;
  margin: 1em 0 !important;
}
@media (max-width: 1040px) {
  .lp-text--4 {
    font-size: 28px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--4 {
    font-size: 26px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--4 {
    font-size: 5vw !important;
  }
}
.lp-text--4 h2,
.lp-text--4 h3,
.lp-text--4 h4,
.lp-text--4 p {
  text-align: center !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--4 h2:before, .lp-text--4 h2:after,
.lp-text--4 h3:before,
.lp-text--4 h3:after,
.lp-text--4 h4:before,
.lp-text--4 h4:after,
.lp-text--4 p:before,
.lp-text--4 p:after {
  display: none !important;
}
.lp-text--5 {
  position: relative;
  background-color: #fff3f3 !important;
  text-align: left !important;
  color: #ec1e1d !important;
  font-weight: bold !important;
  font-size: 30px !important;
  letter-spacing: 0.15em !important;
  line-height: 1.25 !important;
  padding: 1em 1em !important;
  margin: 1em 0 2em 0 !important;
}
@media (max-width: 1040px) {
  .lp-text--5 {
    font-size: 28px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--5 {
    font-size: 26px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--5 {
    font-size: 4.75vw !important;
  }
}
.lp-text--5 h2,
.lp-text--5 h3,
.lp-text--5 h4,
.lp-text--5 p {
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--5 h2:before, .lp-text--5 h2:after,
.lp-text--5 h3:before,
.lp-text--5 h3:after,
.lp-text--5 h4:before,
.lp-text--5 h4:after,
.lp-text--5 p:before,
.lp-text--5 p:after {
  display: none !important;
}
.lp-text--5:before {
  content: '';
  display: block;
  position: absolute;
  bottom: calc( -2em + 1px );
  left: 50%;
  margin-left: -1em;
  width: 1em;
  box-sizing: border-box;
  width: 1em;
  height: 1em;
  border: 1em solid transparent;
  border-top: 1em solid #fff3f3;
}
.lp-text--6 {
  position: relative;
  background: none !important;
  text-align: left !important;
  color: inherit !important;
  font-weight: bold !important;
  font-size: 24px !important;
  font-weight: bold !important;
  text-align: left !important;
  line-height: 1.4 !important;
  text-decoration: underline !important;
}
@media (max-width: 1040px) {
  .lp-text--6 {
    font-size: 22px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--6 {
    font-size: 20px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--6 {
    font-size: 4.5vw !important;
  }
}
.lp-text--6 h2,
.lp-text--6 h3,
.lp-text--6 h4,
.lp-text--6 p {
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--6 h2:before, .lp-text--6 h2:after,
.lp-text--6 h3:before,
.lp-text--6 h3:after,
.lp-text--6 h4:before,
.lp-text--6 h4:after,
.lp-text--6 p:before,
.lp-text--6 p:after {
  display: none !important;
}
.lp-text--7 {
  background-color: #fff7df !important;
  text-align: center !important;
  color: #e06f00 !important;
  font-weight: bold !important;
  font-size: 30px !important;
  letter-spacing: 0.15em !important;
  line-height: 1.25 !important;
  padding: 1em 1em !important;
  margin: 1em 0 !important;
}
@media (max-width: 1040px) {
  .lp-text--7 {
    font-size: 28px !important;
  }
}
@media (max-width: 980px) {
  .lp-text--7 {
    font-size: 26px !important;
  }
}
@media (max-width: 767px) {
  .lp-text--7 {
    font-size: 5vw !important;
  }
}
.lp-text--7 h2,
.lp-text--7 h3,
.lp-text--7 h4,
.lp-text--7 p {
  text-align: center !important;
  font-weight: bold !important;
  font-size: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 none !important;
  color: inherit !important;
  line-height: inherit !important;
}
.lp-text--7 h2:before, .lp-text--7 h2:after,
.lp-text--7 h3:before,
.lp-text--7 h3:after,
.lp-text--7 h4:before,
.lp-text--7 h4:after,
.lp-text--7 p:before,
.lp-text--7 p:after {
  display: none !important;
}
.lp-text--first:first-letter {
  font-size: 2em !important;
}

.lyte-wrapper {
  width: 420px !important;
  max-width: 100% !important;
  margin: 5px !important;
}

.lyte,
.lyMe {
  position: static !important;
  padding-bottom: 0 !important;
  height: auto  !important;
  overflow: auto !important;
  background-color: transparent !important;
}

.rll-youtube-player {
  position: static !important;
  padding-bottom: 0 !important;
  height: auto  !important;
  overflow: auto !important;
}

.rll-youtube-player img {
  width: 100% !important;
  height: auto !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  bottom: auto !important;
  right: auto !important;
  transform: translate(0, -11.75%) !important;
}

.rll-youtube-player .play {
  height: 72px;
  width: 72px;
  left: 50%;
  top: 50%;
  margin-left: -36px;
  margin-top: -36px;
  position: absolute;
  background: url(https://warakuseikotuin.com/cms/wp-content/plugins/rocket-lazy-load/assets/img/youtube.png) no-repeat;
  cursor: pointer;
}

.form {
  margin: 1em 0;
  border-top: 1px solid #ddd;
  border-collapse: collapse;
  background-color: #fff;
  width: 100%;
  		/*
  
  		tr:nth-child(odd){
  			th,td{
  				background-color: #ffffdd;
  			}
  		}
  		*/
}
@media (max-width: 767px) {
  .form {
    display: block;
  }
}
.form .notes li {
  list-style: none;
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}
@media (max-width: 767px) {
  .form tbody, .form tr {
    display: block;
  }
}
.form th {
  background: transparent;
  border: 0 none;
  text-align: left;
  line-height: 1;
  width: 8em;
  padding: 0;
  vertical-align: middle;
  border-bottom: 1px solid #ddd;
}
.form th label {
  border: 0 none;
  padding: 0;
}
@media (max-width: 767px) {
  .form th {
    width: 100%;
    border-bottom: 0 none;
    display: block;
    position: relative;
    padding-top: 1em;
  }
}
.form td {
  background: transparent;
  border: 0 none;
  padding: 1.5em 0;
  vertical-align: middle;
  border-bottom: 1px solid #ddd;
}
@media (max-width: 767px) {
  .form td {
    padding: 1em 0;
    display: block;
  }
}
.form td .notes {
  padding: 0 0 0 1.25em;
  margin-bottom: 0 !important;
}
.form textarea {
  height: 10em;
  width: 100%;
}
.form textarea,
.form input[type="tel"],
.form input[type="email"],
.form input[type="number"],
.form input[type="text"] {
  background: #fff;
  border: 1px solid #ddd;
  padding: 0.75em 0.5em;
  color: #000;
  font-size: 16px;
  -webkit-box-shadow: inset 0 2px 3px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 2px 3px 0 rgba(255, 255, 255, 0.1);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 3px;
}
.form textarea:focus,
.form input[type="tel"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="text"]:focus {
  border-color: #fff;
}
.form input[type="tel"],
.form input[type="email"],
.form input[type="number"],
.form input[type="text"] {
  width: 100%;
}
.form select {
  border: 1px solid #ddd;
  -webkit-box-shadow: inset 0 2px 3px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 2px 3px 0 rgba(255, 255, 255, 0.1);
  -webkit-appearance: none;
  border-radius: 3px;
  padding: 0.75em 0.5em;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.form select,
.form option {
  font-size: 16px;
}
.form input[disabled="disabled"],
.form input[disabled],
.form input[readonly="readonly"],
.form input[readonly] {
  color: #999;
}
.form .required {
  text-align: center;
  width: 3em;
  padding: 0.33em;
  margin: 0 0 0.5em 0;
  display: block;
  color: #fff;
  background-color: #a01118;
  font-size: 70%;
  font-weight: normal;
  white-space: nowrap;
}
.form .required:before, .form .required:after {
  display: none;
}
@media (max-width: 767px) {
  .form .required {
    position: absolute;
    top: 1.43em;
    right: 0;
    margin-bottom: 0;
  }
}
.form .errormsg {
  color: #be3a2c;
  font-weight: 700;
  display: block;
  padding: 10px 0 0 0;
}

.wpcf7-form-control-wrap > span {
  display: block;
}
.wpcf7-form-control-wrap > span span.wpcf7-list-item {
  display: block !important;
  margin: 0 !important;
}
.wpcf7-form-control-wrap > span span.wpcf7-list-item + span.wpcf7-list-item {
  margin-top: 0.33em !important;
}

.wpcf7-list-item label {
  display: block;
  padding: 1em;
  border: 1px solid #ddd;
  border-radius: 3px;
}

.button {
  margin-top: 2em;
  text-align: center;
}
.button input {
  min-width: 300px;
  width: 100%;
  border: 0 none;
  background: none;
  padding: 15px 0;
  margin: 0;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.button--submit {
  background: #a01118;
  border: 0 none;
  margin: 0;
  padding: 0;
  min-width: 300px;
  color: #fff;
  font-weight: 400;
  display: inline-block;
  line-height: 1;
  position: relative;
}
.button--submit input {
  color: inherit;
}
.button--submit:after {
  content: "";
  height: 20px;
  width: 10px;
  display: inline-block;
  vertical-align: middle;
  line-height: 20px;
  background-image: url(https://warakuseikotuin.com/img/common/arrow-white.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 11px 7px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -10px 0 0 3em;
}
.button--submit .ajax-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ----------------------------------------------------------------
	notes
----------------------------------------------------------------- */
.notes {
  margin: 1em 0;
  position: relative;
  padding-left: 1.25em;
  font-size: 90%;
  list-style: none;
  line-height: 1.2 !important;
}
.notes li {
  position: relative;
  list-style: none;
}
.notes__head {
  position: absolute;
  top: 0;
  left: -1.25em;
}

#mobileMailError {
  color: #d41717;
  background-color: #fcc;
  display: block;
  padding: 0.5em;
  margin: 0.75em 0 0 0;
  font-weight: bold;
  line-height: 1.6;
}
#mobileMailError b {
  color: #d41717;
  text-decoration: underline;
}