@font-face {
  font-family: "icon";
  src: url("../fonts/icomoon.eot");
  src: url("../fonts/icomoon.eot#iefix") format("embedded-opentype"),
    url("../fonts/icomoon.ttf") format("truetype"),
    url("../fonts/icomoon.wof") format("woff"),
    url("../fonts/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}
ul[role="list"],
ol[role="list"] {
  list-style: none;
}
html:focus-within {
  scroll-behavior: smooth;
}
body {
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}
a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}
img,
picture {
  max-width: 100%;
  display: block;
}
input,
button,
textarea,
select {
  font: inherit;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
table {
  border-collapse: collapse;
}
.cf::after {
  content: "";
  display: block;
  clear: both;
}
.clr {
  clear: both;
}
ul {
  list-style: none;
}
ul li {
  padding-left: 1.5em;
  text-indent: -0.5em;
}
ul li::before {
  content: "";
  display: inline-block;
}
ul > a,
ul > span {
  text-indent: 0;
}
ol {
  list-style: decimal;
}
ol li {
  margin-left: 1.5em;
}
.ul_reset {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ul_reset li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.ul_reset li::before {
  content: none;
}
table:not(.acf-table) tr th,
table:not(.acf-table) tr td {
  padding: 0.75em 1em;
  border: 1px solid #ccc;
}
table:not(.acf-table) tr th {
  background: #EBEFEB;
  width: 200px;
  font-weight: 600;
  color: #000000;
}
@media screen and (max-width: 480px){
  table:not(.acf-table) tr th{
    width: 100%;
    display: block;
  }
  table:not(.acf-table) tr td{
    display: block;
  }
}
table:not(.acf-table) tr td {
  background: rgba(0, 0, 0, 0);
}
img {
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: auto;
  display: inline-block;
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: top;
}
strong,
em {
  font-weight: bold;
}
p,
th,
td,
li,
address,
small {
  line-height: 2.19;
}
a:focus,
*:focus {
  outline: none;
}
a {
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  color: #135B13;
  -webkit-transition: opacity 0.5s linear, color 0.5s linear,
    background 0.5s linear;
  transition: opacity 0.5s linear, color 0.5s linear, background 0.5s linear;
}
a.hover:hover {
  opacity: 0.6;
  color: #135B13;
}
a img,
a:before,
a:after,
a.hover:hover,
a span,
button {
  -webkit-transition: opacity 0.5s linear, color 0.5s linear,
    background 0.5s linear;
  transition: opacity 0.5s linear, color 0.5s linear, background 0.5s linear;
}
.btn,
.btn-ol,
form input[type="button"],
form input[type="submit"],
form button {
  display: inline-block;
  max-width: 100%;
  background: #135B13;
  border: 2px solid #135B13;
  border-radius: 0;
  padding: 0.4em 0.75em;
  text-align: center;
  color: #fff;
  cursor: pointer;
}
.btn.hover:hover,
.hover.btn-ol:hover,
form input.hover:hover[type="button"],
form input.hover:hover[type="submit"],
form button.hover:hover {
  background: #fff;
  color: #135B13;
}
.btn-ol {
  background: #fff;
  color: #135B13;
}
.btn-ol.hover:hover {
  background: #135B13;
  color: #fff;
}
form {
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
}
form [type="reset"] {
  display: inline-block;
  max-width: 100%;
  background: #135B13;
  border: 2px solid #135B13;
  padding: 0.4em 0.75em;
  text-align: center;
  color: #fff;
  cursor: pointer;
}
form [type="reset"].hover:hover {
  background: #fff;
  color: #135B13;
}
@media all and (-ms-high-contrast: none) {
  form [type="button"],
  form [type="submit"],
  form [type="reset"],
  form button,
  form .btn,
  form .btn-ol,
  form input[type="button"],
  form input[type="submit"],
  form button,
  form .wp-block-button__link {
    padding: 0.8em 1.5em 0.5em;
  }
}
form textarea,
form input,
form select {
  line-height: 1.5;
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
  font-size: 16px;
  font-size: 1rem;
  outline: none;
  border: none;
  padding: 5px 1em;
  border-radius: 0;
  border: 1px solid #ccc;
}
@media only screen and (max-width: 960px) {
  form textarea,
  form input,
  form select {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}
@media only screen and (max-width: 640px) {
  form textarea,
  form input,
  form select {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
form ::-webkit-input-placeholder {
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
}
form :-moz-placeholder {
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
}
@-moz-document url-prefix() {
  form input[type="text"],
  form input[type="email"],
  form input[type="number"],
  form input[type="tel"] {
    padding: 5px 1em;
  }
}
form input[type="radio"],
form input[type="checkbox"] {
  border: none;
}
form input[type="radio"] {
  border-radius: 100%;
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}
form input[type="text"],
form input[type="email"],
form input[type="url"] {
  width: 100%;
}
form input[type="tel"] {
  width: 100%;
}
form input[type="date"] {
  width: 50%;
}
form input[type="number"] {
  width: 8em;
}
form textarea {
  width: 100%;
  height: 200px;
}
form select {
  position: relative;
  width: 100%;
  padding: 5px 2.5em 5px 1em;
  cursor: pointer;
  -webkit-appearance: button;
  -moz-appearance: none;
  appearance: button;
  text-indent: 0.01px;
  text-overflow: "";
  border-radius: 0;
}
form select:focus {
  color: #000;
}
form selectafter {
  content: "";
}
form .select-wrap {
  position: relative;
}
form .select-wrap::after {
  content: "";
  position: absolute;
  right: 0.5em;
  top: 50%;
  margin-top: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  border-color: #ccc transparent transparent transparent;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none) {
  form select {
    padding: 8px 2.5em 2px 1em;
  }
}
form select::-ms-expand {
  display: none;
}
form .non-select {
  color: #666666;
}
form label {
  display: inline-block;
  margin-right: 1em;
}
form .btn_area {
  text-align: center;
  margin-top: 1.5em;
}
form button {
  display: inline-block;
  width: 180px;
  max-width: calc(100% - 1em);
  margin: 0 0.5em;
  border-color: #135B13;
  background: #135B13;
  color: #fff;
}
form button.hover:hover {
  background: #fff;
  color: #135B13;
}
form button.rtn-btn {
  width: 120px;
  border-color: #ddd;
  background: #ddd;
  color: #666;
}
form button.rtn-btn.hover:hover {
  background: #fff;
  color: #666;
}
.error {
  margin-top: 0.5em !important;
  color: #900;
  font-size: 13px;
  font-size: 0.8125rem;
}
@media print {
  body {
    -webkit-print-color-adjust: exact;
    min-width: 1480px;
    zoom: 0.67;
  }
  #go-top {
    display: none;
  }
}
.pc_view {
  display: inherit !important;
}
.sp_view {
  display: none !important;
}
@media only screen and (max-width: 640px) {
  .pc_view {
    display: none !important;
  }
  .sp_view {
    display: inherit !important;
  }
}
.clear {
  clear: both;
}
.link_arw a,
a.link_arw {
  color: #135B13;
  position: relative;
  line-height: 1.4;
  display: inline-block;
  text-decoration: none;
  padding-left: 12px;
  margin-top: 0.5em;
}
.link_arw a::before,
a.link_arw::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.link_arw a::before,
a.link_arw::before {
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #135B13;
  -webkit-transition: left 0.5s;
  transition: left 0.5s;
}
.link_arw a.hover:hover,
a.link_arw.hover:hover {
  color: #135B13;
  opacity: 1;
}
.link_arw a.hover:hover::before,
a.link_arw.hover:hover::before {
  left: 3px !important;
}
.link_btn a,
a.link_btn {
  display: inline-block;
  color: #fff;
  border: 2px solid #135B13;
  background: #135B13;
  padding: 0.5em 0.8em;
  margin: 0.5em 0;
  position: relative;
  line-height: 1.3;
  text-decoration: none;
}
@media all and (-ms-high-contrast: none) {
  .link_btn a,
  a.link_btn {
    padding: 0.9em 0.8em 0.6em 0.8em;
  }
}
.link_btn a.hover:hover,
a.link_btn.hover:hover {
  opacity: 1;
  background: #fff;
  color: #135B13;
}
.alignright img,
.alignleft img {
  width: 100%;
  height: auto;
  line-height: 0;
}
.alignright {
  width: 48% !important;
  max-width: 48% !important;
  height: auto;
  clear: both;
  float: right;
  margin: 0 0 1em 2.5em;
}
@media screen and (max-width: 480px) {
  .alignright {
    width: 100% !important;
    max-width: 100% !important;
  }
}
.alignright + * {
  margin-top: 0;
}
@media only screen and (max-width: 960px) {
  .alignright {
    margin: 0 0 2.6em 2.8em;
  }
}
@media only screen and (max-width: 640px) {
  .alignright {
    margin: 0 0 1.6em 2em;
  }
}
.alignleft {
  width: 48% !important;
  max-width: 48% !important;
  height: auto;
  clear: both;
  float: left;
  margin: 0 2.5em 2.5em 0;
}
@media screen and (max-width: 480px) {
  .alignleft {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media only screen and (max-width: 960px) {
  .alignleft {
    margin: 0 2.8em 2.6em 0;
  }
}
@media only screen and (max-width: 640px) {
  .alignleft {
    margin: 0 2em 1.6em 0;
  }
}
.alignright img,
.alignleft img,
.aligncenter img,
.alignwide img {
  display: block;
}
a.alignright + h2,
a.alignright + h3,
a.alignright + h4,
a.alignright + h5,
a.alignright + h6,
a.alignright + div a.alignright + p,
a.alignleft + h2,
a.alignleft + h3,
a.alignleft + h4,
a.alignleft + h5,
a.alignleft + h6,
a.alignleft + div a.alignright + p,
img.alignright + h2,
img.alignright + h3,
img.alignright + h4,
img.alignright + h5,
img.alignright + h6,
img.alignright + div a.alignright + p,
img.alignleft + h2,
img.alignleft + h3,
img.alignleft + h4,
img.alignleft + h5,
img.alignleft + h6,
img.alignleft + div a.alignright + p,
a.alignright + div a.alignleft + p,
a.alignleft + div a.alignleft + p,
img.alignright + div a.alignleft + p,
img.alignleft + div a.alignleft + p,
a.alignright + div img.alignright + p,
a.alignleft + div img.alignright + p,
img.alignright + div img.alignright + p,
img.alignleft + div img.alignright + p,
a.alignright + div img.alignleft + p,
a.alignleft + div img.alignleft + p,
img.alignright + div img.alignleft + p,
img.alignleft + div img.alignleft + p {
  display: inline-block;
}
.aligncenter {
  display: block;
  margin: 1.5em auto;
  clear: both;
  max-width: 100%;
  width: auto;
  height: auto;
  text-align: center;
}
.aligncenter img {
  margin: auto;
}
.alignnone {
  display: block;
  width: auto;
  height: auto;
  margin: 0.8em 0;
}
.alignwide {
  margin: 0.8em 0;
  width: 100%;
}
.alignwide img {
  width: 100%;
}
.alignfull {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  left: 50%;
  margin: 0.8em 0;
  margin-left: -50vw;
}
.caption {
  margin-top: 10px !important;
  padding: 0 10px;
  margin-bottom: 0 !important;
}
@media only screen and (max-width: 640px) {
  .caption {
    margin-top: 5px !important;
    padding: 0 5px;
  }
}
.image-arrange-section {
  position: relative;
}
.image-arrange-section .image-arrange-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.image-arrange-section .image-arrange-img {
  position: absolute;
  top: 0;
  width: 70%;
  height: 100%;
  background: no-repeat center center / cover;
}
@media only screen and (max-width: 640px) {
  .image-arrange-section .image-arrange-img {
    position: static;
    width: 100%;
    padding-top: 70%;
    border-radius: 0;
  }
}
.image-arrange-section .image-arrange-content {
  position: relative;
  width: 40%;
}
@media only screen and (max-width: 640px) {
  .image-arrange-section .image-arrange-content {
    width: 100%;
  }
}
.image-arrange-section .image-arrange-content::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
}
.image-arrange-section .image-arrange-content .image-arrange-text {
  font-size: 16px;
  font-size: 1rem;
  position: relative;
  padding: 2.5em;
  width: 100%;
}
.img_common,
.img_l,
.img_r {
  opacity: 1;
  left: 0;
}
.img_l .image-arrange-img {
  left: 0;
}
.img_l .image-arrange-content {
  left: calc((100% - 40%) + 2.5em);
}
@media only screen and (max-width: 640px) {
  .img_l .image-arrange-content {
    left: 0;
  }
}
.img_l .image-arrange-content::before {
  left: 0;
}
.img_r .image-arrange-img {
  right: 0;
}
.img_r .image-arrange-content {
  left: -2.5em;
}
@media only screen and (max-width: 640px) {
  .img_r .image-arrange-content {
    left: 0;
  }
}
.img_r .image-arrange-content::before {
  right: 0;
}
.image-cutout {
  width: 500px;
  height: 500px;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  display: block;
  margin: 0 auto;
}
.image-cutout img {
  max-width: 9999%;
  max-height: 9999%;
  width: auto;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.ib {
  display: inline-block;
}
.flex-col.col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none !important;
  margin-top: calc(1.5em - 20px);
}
.flex-col.col2 > * {
  margin: 0;
  margin-top: 20px;
  padding-left: 0 !important;
  list-style: none !important;
}
.flex-col.col2 > *::before {
  content: none !important;
}
.flex-col.col2 > * > *:first-child {
  margin-top: 0;
}
.flex-col.col2 > * {
  width: calc((100% - 20px) / 2);
}
@media only screen and (max-width: 960px) {
  .flex-col.col2 > * {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 640px) {
  .flex-col.col2 > * {
    width: 100%;
  }
}
.flex-col.col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none !important;
  margin-top: calc(1.5em - 20px);
}
.flex-col.col3 > * {
  margin: 0;
  margin-top: 20px;
  padding-left: 0 !important;
  list-style: none !important;
}
.flex-col.col3 > *::before {
  content: none !important;
}
.flex-col.col3 > * > *:first-child {
  margin-top: 0;
}
.flex-col.col3 > * {
  width: calc((100% - 40px) / 3);
}
.flex-col.col3::after {
  content: "";
  display: block;
  width: calc((100% - 40px) / 3);
}
@media only screen and (max-width: 960px) {
  .flex-col.col3 > * {
    width: calc((100% - 40px) / 3);
  }
}
@media only screen and (max-width: 640px) {
  .flex-col.col3 > * {
    width: calc((100% - 40px) / 2);
  }
  .flex-col.col3::after {
    content: none;
  }
}
.flex-col.col4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none !important;
  margin-top: calc(1.5em - 20px);
}
.flex-col.col4 > * {
  margin: 0;
  margin-top: 20px;
  padding-left: 0 !important;
  list-style: none !important;
}
.flex-col.col4 > *::before {
  content: none !important;
}
.flex-col.col4 > * > *:first-child {
  margin-top: 0;
}
.flex-col.col4 > * {
  width: calc((100% - 60px) / 4);
}
.flex-col.col4::after,
.flex-col.col4::before {
  content: "";
  display: block;
  width: calc((100% - 60px) / 4);
}
.flex-col.col4::before {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}
@media only screen and (max-width: 960px) {
  .flex-col.col4 > * {
    width: calc((100% - 60px) / 2);
  }
  .flex-col.col4::before {
    content: none;
  }
}
@media only screen and (max-width: 640px) {
  .flex-col.col4 > * {
    width: calc((100% - 60px) / 2);
  }
  .flex-col.col4::after {
    content: none;
  }
}
@media only screen and (max-width: 640px) {
  .flex-col.sp-section > div {
    padding-top: 2em;
    margin-top: 2em;
    border-top: 1px dotted #ccc;
  }
  .flex-col.sp-section > div > *:first-child {
    margin-top: 1em;
  }
  .flex-col.sp-section > div:first-child {
    padding-top: 0px;
    margin-top: 0px;
    border-top: none;
  }
}
.box-row {
  display: block;
}
.box-row .image {
  position: relative;
  width: 100%;
  padding-top: 50%;
}
.box-row .image > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: no-repeat center center;
  background-size: cover;
}
.box-row .text {
  padding: 10px 0;
}
.box-row .text p {
  text-align: left;
  line-height: 1.5;
}
.flex-cross {
  margin-top: 1.5em;
  list-style: none !important;
}
.flex-cross > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0;
  padding-left: 0 !important;
  list-style: none !important;
}
.flex-cross > * > div {
  width: 50%;
}
@media only screen and (max-width: 640px) {
  .flex-cross > * > div {
    width: 100%;
  }
}
.flex-cross > *::before {
  content: none !important;
}
.flex-cross > *:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
@media only screen and (max-width: 640px) {
  .flex-cross > *:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
.box-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.box-col .image,
.box-col .text {
  width: 48%;
}
.box-col .image {
  position: relative;
  padding-top: 50%;
}
.box-col .image > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: no-repeat center center;
  background-size: cover;
}
.box-col .image.gallery {
  padding-top: 75%;
}
.box-col .text p {
  text-align: left;
  line-height: 1.5;
}
.notes {
  margin-top: 15px;
  font-size: 12px;
  font-size: 0.75rem;
}
ul.notes {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.notes li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
ul.notes li::before {
  content: none;
}
ul.notes li {
  padding-left: 0 !important;
  text-indent: 0;
}
ul.notes li::before {
  content: none !important;
}
.box_area strong,
.notes strong {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
}
.box_area > *:first-child,
.notes > *:first-child {
  margin-top: 0 !important;
}
.box_area > *:last-child,
.notes > *:last-child {
  margin-bottom: 0 !important;
}
.box_area {
  background: #f3f3f3;
  padding: 1.5em;
}
.scroll-table {
  position: relative;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
.swipe-img {
  display: none;
  position: relative;
  top: -35px;
  left: 5px;
  width: 30px;
  height: 30px;
  background: url(../img/com/sw_mov.gif) no-repeat center center/contain;
}
@media only screen and (max-width: 960px) {
  .swipe-img {
    display: block;
  }
}
.fee_box .fee-list {
  width: 100%;
}
.fee_box .fee-list tr th {
  text-align: center;
  font-weight: bold;
}
.fee_box .fee-list tr.f_price td {
  text-align: center;
}
.fee_box .fee-list tr.f_price td span {
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: bold;
  display: block;
}
.fee_box .fee-list tr.f_link td {
  text-align: center;
}
.fee_box .fee-list tr.f_link td a {
  display: block;
  opacity: 0.75;
}
.fee_box.fee_recommend .fee-list {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.fee_box.fee_recommend .fee-list tr.f_link td a {
  opacity: 1;
}
.movie-container {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.gmap iframe {
  width: 100%;
  height: 400px;
}
@media only screen and (max-width: 640px) {
  .gmap iframe {
    height: 300px;
  }
}
.pagination {
  margin-top: 20px;
  margin-bottom: 20px;
}
.pagination ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-indent: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.pagination ul li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.pagination ul li::before {
  content: none;
}
.pagination ul li {
  padding-left: 0 !important;
}
.pagination ul li::before {
  content: none !important;
}
.pagination ul li a,
.pagination ul li span {
  position: relative;
  display: block;
  padding: 0em 0.5em;
  margin: 0 0.25em;
}
.pagination ul li a::after,
.pagination ul li span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  height: 2px;
  width: calc(100% - 0.5em);
  background: transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.pagination ul li span::after {
  background: #135B13;
}
.pagination ul li a .hover:hover {
  color: #fff7ec;
}
.pagination ul li a .hover:hover::after {
  background: #fff7ec;
}
html {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
  line-height: 1;
  scroll-behavior: auto !important;
}
body {
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
  font-size: 1vw;
  color: #333;
  width: 100%;
  position: relative;
  line-height: 1;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden !important;
}
@media screen and (max-width: 1600px) {
  body {
    font-size: 16px;
  }
}
body.active {
  position: fixed;
  height: 100%;
  overflow-y: scroll;
}
header,
header div,
header span,
header applet,
header object,
header iframe,
header h1,
header h2,
header h3,
header h4,
header h5,
header h6,
header p,
header blockquote,
header pre,
header a,
header abbr,
header acronym,
header address,
header big,
header cite,
header code,
header del,
header dfn,
header em,
header img,
header ins,
header kbd,
header q,
header s,
header samp,
header small,
header strike,
header strong,
header sub,
header sup,
header tt,
header var,
header b,
header u,
header i,
header center,
header dl,
header dt,
header dd,
header ol,
header ul,
header li,
header fieldset,
header form,
header label,
header legend,
header table,
header caption,
header tbody,
header tfoot,
header thead,
header tr,
header th,
header td,
header article,
header aside,
header canvas,
header details,
header embed,
header figure,
header figcaption,
header footer,
header header,
header hgroup,
header menu,
header nav,
header output,
header ruby,
header section,
header summary,
header time,
header mark,
header audio,
header video,
footer,
footer div,
footer span,
footer applet,
footer object,
footer iframe,
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer p,
footer blockquote,
footer pre,
footer a,
footer abbr,
footer acronym,
footer address,
footer big,
footer cite,
footer code,
footer del,
footer dfn,
footer em,
footer img,
footer ins,
footer kbd,
footer q,
footer s,
footer samp,
footer small,
footer strike,
footer strong,
footer sub,
footer sup,
footer tt,
footer var,
footer b,
footer u,
footer i,
footer center,
footer dl,
footer dt,
footer dd,
footer ol,
footer ul,
footer li,
footer fieldset,
footer form,
footer label,
footer legend,
footer table,
footer caption,
footer tbody,
footer tfoot,
footer thead,
footer tr,
footer th,
footer td,
footer article,
footer aside,
footer canvas,
footer details,
footer embed,
footer figure,
footer figcaption,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer output,
footer ruby,
footer section,
footer summary,
footer time,
footer mark,
footer audio,
footer video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
}
header ol,
header ul,
footer ol,
footer ul {
  list-style: none;
}
header table,
footer table {
  border-collapse: collapse;
  border-spacing: 0;
}
header caption,
header th,
header td,
footer caption,
footer th,
footer td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
header q,
header blockquote,
footer q,
footer blockquote {
  quotes: none;
}
header q:before,
header q:after,
header blockquote:before,
header blockquote:after,
footer q:before,
footer q:after,
footer blockquote:before,
footer blockquote:after {
  content: "";
  content: none;
}
header a img,
footer a img {
  border: none;
}
header article,
header aside,
header details,
header figcaption,
header figure,
header footer,
header header,
header hgroup,
header menu,
header nav,
header section,
header summary,
footer article,
footer aside,
footer details,
footer figcaption,
footer figure,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer section,
footer summary {
  display: block;
}
header,
header *,
footer,
footer * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
}
header::before,
header::after,
header *::before,
header *::after,
footer::before,
footer::after,
footer *::before,
footer *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#noscript {
  width: 100%;
  padding: 10px 20px;
  background: #c00;
  color: #fff;
  text-align: center;
  z-index: 100;
  line-height: 1.2;
}
#loader {
  position: fixed;
  z-index: 15000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}
#loader > div {
  content: "";
  position: fixed;
  opacity: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/com/loader.svg) no-repeat center center #fff;
}
.loader-fix {
  position: fixed;
}
.common-inner {
  max-width: 92.5vw;
  margin-right: auto;
  margin-left: auto;
  padding-right: 8.75vw;
  padding-left: 8.75vw;
}
@media screen and (max-width: 1600px) {
  .common-inner {
    max-width: 1340px;
    padding-right: 140px;
    padding-left: 140px;
  }
}
@media only screen and (max-width: 960px) {
  .common-inner {
    padding-right: 80px;
    padding-left: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .common-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 960px) {
  .sp-full {
    margin-left: -80px;
    margin-right: -80px;
    padding-left: 160px;
    padding-right: 160px;
  }
}
@media only screen and (max-width: 640px) {
  .sp-full {
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 40px;
    padding-right: 40px;
  }
}
section {
  padding-top: 6.25em;
  padding-bottom: 6.25em;
}
@media only screen and (max-width: 960px) {
  section {
    padding-top: 6.25em;
    padding-bottom: 6.25em;
  }
}
@media only screen and (max-width: 640px) {
  section {
    padding-top: 5em;
    padding-bottom: 5em;
  }
}
section:first-child {
  padding-top: 0;
}
header {
  position: fixed;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 10;
}
header .header-logo {
  position: fixed;
  top: 3.125em;
  left: 4.375em;
  width: 11.375vw;
  -webkit-transition: top 0.2s linear, left 0.2s linear, width 0.2s linear;
  transition: top 0.2s linear, left 0.2s linear, width 0.2s linear;
}
@media screen and (max-width: 1600px) {
  header .header-logo {
    width: 182px;
  }
}
@media only screen and (max-width: 960px) {
  header .header-logo {
    width: calc(182px * 0.8);
    top: 1.875em;
    left: 1.875em;
  }
}
@media only screen and (max-width: 640px) {
  header .header-logo {
    width: calc(182px * 0.5);
    top: 15px;
    left: 20px;
  }
}
header .header-logo a {
  position: relative;
  display: block;
  width: 100%;
  padding: 80.22% 0 0;
}
header .header-logo a svg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  fill: #fff;
  -webkit-transition: fill 0.5s linear;
  transition: fill 0.3s linear;
}
header.scroll .header-logo{
  width: 130px;
}
header.scroll .header-logo a svg {
  fill: #000;
}
.p-hamburger {
  position: fixed;
  display: inline-block;
  top: 2.38em;
  right: 2.38em;
  width: 3.75em;
  height: 3.75em;
  margin: auto;
  outline: none;
  -webkit-transition: all 0.5s linear;
  transition: all 0.5s linear;
  background: transparent;
  border: 0;
  cursor: pointer;
  z-index: 10;
  border: 1px solid #fff;
  border-radius: 50%;
}
@media only screen and (max-width: 640px) {
  .p-hamburger {
    top: 20px;
    right: 20px;
  }
}
.p-hamburger.hover:hover {
  opacity: 0.5;
}
.p-hamburger__line {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1.5em;
  height: 1px;
  background-color: #fff;
  -webkit-transition: background 0.5s linear;
  transition: background 0.5s linear;
}
.p-hamburger__line::before,
.p-hamburger__line::after {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: inherit;
  content: "";
  -webkit-transition: background-color 0.5s linear,
    -webkit-transform 0.5s linear;
  transition: background-color 0.5s linear, -webkit-transform 0.5s linear;
  transition: background-color 0.5s linear, transform 0.5s linear;
  transition: background-color 0.5s linear, transform 0.5s linear,
    -webkit-transform 0.5s linear;
}
.p-hamburger__line::before {
  top: -0.44em;
}
.p-hamburger__line::after {
  top: 0.44em;
}
.p-hamburger[aria-expanded="true"] {
  border: 1px solid #fff !important;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line {
  background-color: transparent;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line::before,
.p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
  top: 0;
  background-color: #fff;
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.u-visuallyHidden {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
}
.scroll .p-hamburger {
  border: 1px solid #000;
}
.scroll .p-hamburger__line {
  background-color: #000;
}
#gnav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
#gnav ul li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
#gnav ul li::before {
  content: none;
}
#gnav ul li {
  width: 100%;
  text-align: center;
}
#gnav ul li a {
  display: block;
}
#gnav ul li a.on,
#gnav ul li a.hover:hover {
  opacity: 1;
}
#gnav ul li a.on::before,
#gnav ul li a.hover:hover::before {
  opacity: 1;
}
#gnav ul li a.on span::before,
#gnav ul li a.hover:hover span::before {
  opacity: 0;
}
#gnav ul li a.on span::after,
#gnav ul li a.hover:hover span::after {
  opacity: 1;
}
#gnav ul li li {
  width: auto;
}
#gnav .gnav-inner {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #135B13;
}
#gnav .gnav-inner .gnav-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media screen and (max-width: 759px){
  #gnav .gnav-inner .gnav-content{
    width: 100%;
  }
}
#gnav .gnav-inner .nav-logo {
  text-align: center;
}
#gnav .gnav-inner .nav-logo a {
  display: block;
  width: 100%;
  max-width: 18.63em;
  margin: 0 auto;
}
@media only screen and (max-width: 640px) {
  #gnav .gnav-inner .nav-logo a {
    max-width: 46.5625vw;
  }
}
#gnav .gnav-inner .nav-items {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 3.38em !important;
}
#gnav .gnav-inner .nav-items li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
#gnav .gnav-inner .nav-items li::before {
  content: none;
}
#gnav .gnav-inner .nav-items li {
  padding-right: calc(3.75em / 2) !important;
  padding-left: calc(3.75em / 2) !important;
}
@media screen and (max-width: 759px){
  #gnav .gnav-inner .nav-items li {
    padding-right: 0 !important;
    padding-left: 10px !important;
  }
}
#gnav .gnav-inner .nav-items li:first-child {
  padding-left: 0 !important;
}
#gnav .gnav-inner .nav-items li:last-child {
  padding-right: 0 !important;
}
#gnav .gnav-inner .nav-items li a {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5.5em;
  height: 5.5em;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  letter-spacing: 0.05em;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media screen and (max-width: 520px) {
  #gnav .gnav-inner .nav-items li a {
    width: 20.95238vw;
    height: 20.95238vw;
  }
}
#gnav .gnav-inner .nav-items li a.hover:hover {
  opacity: 1;
  background: #fff;
  color: rgba(0, 0, 0, 0.7);
}
body.active #gnav .gnav-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-animation-name: fadein;
  animation-name: fadein;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
body.close #gnav .gnav-inner {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -webkit-animation-name: fadeout;
  animation-name: fadeout;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
main {
  display: block;
}
.contents-body {
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
}
.main-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 31.25em;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-transition: height 0.5s linear;
  transition: height 0.5s linear;
}
@media only screen and (max-width: 960px) {
  .main-header {
    height: 25em;
  }
}
@media only screen and (max-width: 640px) {
  .main-header {
    height: 18.75em;
  }
}
.main-header h1 {
  width: 100%;
  font-size: 2.5em;
  font-weight: normal;
  color: #fff;
  letter-spacing: 0.3em;
  text-align: center;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media only screen and (max-width: 640px) {
  .main-header h1 {
    font-size: 1.75em;
  }
}
.main-content section:first-child {
  padding-top: 6.25em;
}
@media only screen and (max-width: 960px) {
  .main-content section:first-child {
    padding-top: 6.25em;
  }
}
@media only screen and (max-width: 640px) {
  .main-content section:first-child {
    padding-top: 5em;
  }
}
.main-content section:nth-child(even) {
  background: #F8F7F1;
}
.nurture .main-header {
  background-image: url(../img/nurture/visual.jpg);
}
.take .main-header {
  background-image: url(../img/take/visual.jpg);
}
.use .main-header {
  background-image: url(../img/use/visual.jpg);
}
.live .main-header {
  background-image: url(../img/live/visual.jpg);
}
*.phantom {
  opacity: 0;
}
*.phantom.phantom-animation {
  -webkit-animation-name: fade;
  animation-name: fade;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
#footer {
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
  padding: 5em 0;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  #footer {
    padding: 3em 0 6em;
  }
}
#footer .company-name {
  font-weight: bold;
  font-size: 1.44em;
}
@media only screen and (max-width: 640px) {
  #footer .company-name {
    font-size: 16px;
    font-size: 1rem;
  }
}
#footer p {
  margin: 1em 0 0;
}
@media only screen and (max-width: 640px) {
  #footer p {
    line-height: 1.34;
  }
}
#footer p span {
  display: inline-block;
}
#footer p span:first-child {
  margin-right: 0.5em;
}
#footer .copyright {
  margin: 1.5em 0 0;
}
.woody {
  position: fixed;
  width: 6.125vw;
  right: 1.375vw;
  bottom: 1.75vw;
  z-index: 9;
}
@media screen and (max-width: 1600px) {
  .woody {
    width: 98px;
    right: 22px;
    bottom: 28px;
  }
}
@media only screen and (max-width: 640px) {
  .woody {
    width: calc(98px * 0.6);
    right: 0;
    bottom: calc(28px * 0.6);
  }
}
.woody a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.woody a .caracter {
  position: relative;
  display: block;
  width: 100%;
  z-index: 2;
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
.woody a .serif {
  position: absolute;
  display: block;
  width: 4vw;
  right: 0;
  bottom: 111.34%;
  left: 0;
  margin: auto;
  z-index: 1;
  opacity: 1;
  -webkit-transition: opacity 0.5s, bottom 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, bottom 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, bottom 0.5s, transform 0.5s;
  transition: opacity 0.5s, bottom 0.5s, transform 0.5s, -webkit-transform 0.5s;
}
@media screen and (max-width: 1600px) {
  .woody a .serif {
    width: 64px;
  }
}
@media only screen and (max-width: 640px) {
  .woody a .serif {
    width: calc(64px * 0.6);
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    bottom: 90%;
    opacity: 1;
  }
}
.woody a.hover .serif {
  bottom: 0;
  opacity: 0;
  -webkit-transform: scale(0.5, 0.5);
  transform: scale(0.5, 0.5);
}
.woody a.hover:hover {
  opacity: 1;
}
.woody a.hover:hover .caracter {
  -webkit-transform: rotate(15deg);
  transform: rotate(15deg);
}
.woody a.hover:hover .serif {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  bottom: 111.34%;
  opacity: 1;
}
@media screen and (max-width: 1600px) {
  .woody a.hover:hover .serif {
    bottom: 108px;
  }
}
@media only screen and (max-width: 640px) {
  .woody a.hover:hover .serif {
    bottom: 90%;
  }
}
.take section {
  padding-top: 5.75em;
  padding-bottom: 5.75em;
}
.take section:first-child {
  padding-top: 5.75em;
}
#go-top {
  position: fixed;
  bottom: 10px;
  right: 10px;
}
#go-top a {
  display: block;
}
#go-top a span {
  font-size: 12px;
  font-size: 0.75rem;
}
#lightcase-case {
  width: 90% !important;
  max-width: 64vw !important;
}
@media screen and (max-width: 1600px) {
  #lightcase-case {
    max-width: 1024px !important;
  }
}
#lightcase-content {
  background: #fff;
}
.lightcase-icon-close {
  position: relative;
  display: block;
  width: 3em;
  height: 3em;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.lightcase-icon-close::before,
.lightcase-icon-close::after {
  position: absolute;
  display: block;
  content: "" !important;
  width: 100% !important;
  height: 1px;
  background: #000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
.lightcase-icon-close::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.lightcase-icon-close::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.lightcase-icon-close.hover:hover {
  opacity: 0.5;
}
.lightcase-contentInner {
  width: 100% !important;
  max-width: 64vw !important;
  height: 100vh !important;
  max-height: 80vh !important;
}
@media screen and (max-width: 1600px) {
  .lightcase-contentInner {
    max-width: 1024px !important;
  }
}
@media screen and (max-width: 1600px) {
  .lightcase-contentInner {
    height: 80vh !important;
  }
}
.lightcase-contentInner iframe {
  width: 100% !important;
  max-width: 100% !important;
  height: 100vh !important;
  max-height: 80vh !important;
}
.lightbox-detail {
  position: relative;
  width: 100%;
  padding: 3.75em;
  overflow-y: scroll;
  font-size: 1.56vw;
  overflow-x: hidden;
}
@media screen and (max-width: 1024px) {
  .lightbox-detail {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 640px) {
  .lightbox-detail {
    padding: 2em;
  }
}
@media screen and (max-width: 375px) {
  .lightbox-detail {
    padding: 2em 1.5em;
  }
}
@media screen and (max-width: 320px) {
  .lightbox-detail {
    padding: 2em 1em;
  }
}
.lightbox-detail::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.lightbox-detail::-webkit-scrollbar-track {
  background: #dcdcdc;
}
.lightbox-detail::-webkit-scrollbar-thumb {
  background: #135B13;
}
.lightbox-detail .has-eyecatch {
  margin-top: -3.75em;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .has-eyecatch {
    margin-top: -2em;
  }
}
.lightbox-detail .eyecatch {
  width: calc(100% + 7.5em);
  margin: 0 -3.75em 3.38em;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .eyecatch {
    width: calc(100% + 4em);
    margin: 0 -2em 3.38em;
  }
}
.lightbox-detail .eyecatch img {
  width: 100%;
}
.lightbox-detail .eyecatch.detail-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 21.5em;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .eyecatch.detail-header {
    height: 16.5em;
  }
}
.lightbox-detail .eyecatch.detail-header.eyecatch-hiba {
  background-image: url(../img/take/wood_type_hiba.jpg);
}
.lightbox-detail .eyecatch.detail-header.eyecatch-sugi {
  background-image: url(../img/take/wood_type_sugi.jpg);
}
.lightbox-detail .eyecatch.detail-header .wood-title-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.lightbox-detail .eyecatch.detail-header .wood-title {
  font-size: 4.25em;
  margin: 0;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .eyecatch.detail-header .wood-title {
    font-size: 2.5em;
  }
}
.lightbox-detail .eyecatch.detail-header .wood-title-kana {
  font-size: 1.25em;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .eyecatch.detail-header .wood-title-kana {
    font-size: 1em;
  }
}
.lightbox-detail .eyecatch.detail-header .wood-title-caption {
  position: absolute;
  text-align: right;
  font-size: 0.88em;
  right: 2.14em;
  bottom: 1em;
  line-height: 1em;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .eyecatch.detail-header .wood-title-caption {
    font-size: 0.75em;
    right: 1.5em;
  }
}
.lightbox-detail h1 {
  font-size: 2.06em;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-weight: normal;
  line-height: 1.36;
  text-align: center;
  letter-spacing: 0.3em;
  margin: 0 0 1.4em;
}
@media screen and (max-width: 1600px) {
  .lightbox-detail h1 {
    font-size: 22px;
    font-size: 1.375rem;
    letter-spacing: 0.1em;
  }
}
.lightbox-detail h1 span {
  display: inline-block;
}
.lightbox-detail .detail-content {
  width: 50.88em;
  max-width: 100%;
  margin: 0 auto;
}
.lightbox-detail .detail-content .hiba-flex{
  display: flex;
}
.lightbox-detail .detail-content .hiba-flex .caption{
  margin-right: 30px;
}
@media screen and (max-width: 759px) {
  .lightbox-detail .detail-content .hiba-flex{
    display: block;
  }
}
.lightbox-detail .detail-content .subtitle {
  font-size: 20px;
  font-weight: 600;
}
.lightbox-detail .detail-content p .markerUnder{
  background: linear-gradient(transparent 0%, #FFEE00 0%);
  display: inline;
  padding: 0 1px 0px;
}
.lightbox-detail .detail-content .caption {
  font-size: 15px;
  color: #8E8E8E;
}
.lightbox-detail .detail-content > div {
  margin-top: 4em;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .detail-content > div {
    margin-top: 2em;
  }
}
.lightbox-detail .detail-content .detail-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .detail-content .detail-flex {
    width: 100%;
  }
}
.lightbox-detail .detail-content .detail-flex > div {
  width: 47.45%;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .detail-content .detail-flex > div {
    width: 100%;
    margin-top: 1.5em;
  }
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .detail-content .detail-flex > div:first-child {
    margin-top: 0;
  }
}
.lightbox-detail .detail-content .title-bar {
  margin-top: 2.2em;
}
.lightbox-detail .detail-content .is-style-plain {
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .detail-content .is-style-plain {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
.lightbox-detail .detail-content .is-style-plain span {
  white-space: nowrap;
}
.lightbox-detail .detail-content h4.is-style-green {
  margin: 1.5em 0 0;
}
.lightbox-detail .detail-content h4.is-style-green + p {
  margin-top: 0;
}
.lightbox-detail .is-style-green {
  font-size: 1.25em;
  text-align: left;
  color: #135B13;
  letter-spacing: normal;
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
  font-weight: bold;
  margin: 3.5em 0 2em;
  padding: 0;
}
@media only screen and (max-width: 640px) {
  .lightbox-detail .is-style-green {
    margin: 2em 0 1.5em;
  }
}
.lightbox-detail .is-style-green::after {
  display: none;
}
.lightbox-detail .is-style-green + div {
  margin: 0;
}
.lightbox-detail .case-where {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  margin: 0;
}
.lightbox-detail address {
  text-decoration: none;
  font-style: normal;
}
.lightbox-detail address p {
  margin: 0.5em 0 0;
  line-height: 1.88;
}
.lightbox-detail dl {
  width: 100%;
  margin: 1.875em 0 0;
}
.lightbox-detail dl dt {
  font-size: 1.11em;
  border: 1px solid #707070;
  background: #135B13;
  font-weight: bold;
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 0.285em;
}
.lightbox-detail dl dd {
  width: 100%;
  padding: 1em 0 1em 1em;
  border: 1px solid #dcdcdc;
}
.lightbox-detail dl dd *:first-child {
  margin-top: 0;
}
.lightbox-detail dl dd *:last-child {
  margin-bottom: 0;
}
.lightbox-detail dl dd ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.lightbox-detail dl dd ul li {
  padding-left: 1em;
  margin-right: 1em;
}
.lightbox-detail .items {
  margin-top: 0;
}
.lightbox-detail .items .item {
  width: 47.78% !important;
  margin-top: 3em !important;
}
@media screen and (max-width: 960px) {
  .lightbox-detail .items .item {
    width: 100% !important;
  }
}
.contents-body > *:first-child {
  margin-top: 0 !important;
}
.contents-body h1 {
  margin-top: 3em;
  margin-bottom: 2em;
}
@media only screen and (max-width: 640px) {
  .contents-body h1 {
    margin-top: 2em;
    margin-bottom: 1.5em;
  }
}
.contents-body h2 {
  margin-top: 3em;
  margin-bottom: 2em;
}
@media only screen and (max-width: 640px) {
  .contents-body h2 {
    margin-top: 2em;
    margin-bottom: 1.5em;
  }
}
.contents-body h3 {
  margin-top: 3em;
  margin-bottom: 1.75em;
}
@media only screen and (max-width: 640px) {
  .contents-body h3 {
    margin-top: 2em;
    margin-bottom: 1.5em;
  }
}
.contents-body h4 {
  margin-top: 3em;
  margin-bottom: 2em;
}
.contents-body p,
.contents-body table,
.contents-body ul,
.contents-body ol {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}
.contents-body p img:first-child {
  margin-top: 0;
}
.contents-body > *.alignleft:first-child + h1,
.contents-body > *.alignleft:first-child + h2,
.contents-body > *.alignleft:first-child + h3,
.contents-body > *.alignleft:first-child + h4,
.contents-body > *.alignleft:first-child + h5,
.contents-body > *.alignleft:first-child + h6,
.contents-body > *.alignleft:first-child + div,
.contents-body > *.alignleft:first-child + p {
  margin-top: 0;
}
.contents-body > *.alignlight:first-child + h1,
.contents-body > *.alignlight:first-child + h2,
.contents-body > *.alignlight:first-child + h3,
.contents-body > *.alignlight:first-child + h4,
.contents-body > *.alignlight:first-child + h5,
.contents-body > *.alignlight:first-child + h6,
.contents-body > *.alignlight:first-child + div,
.contents-body > *.alignlight:first-child + p {
  margin-top: 0;
}
.contents-body div > *.alignleft:first-child + h1,
.contents-body div > *.alignleft:first-child + h2,
.contents-body div > *.alignleft:first-child + h3,
.contents-body div > *.alignleft:first-child + h4,
.contents-body div > *.alignleft:first-child + h5,
.contents-body div > *.alignleft:first-child + h6,
.contents-body div > *.alignleft:first-child + div,
.contents-body div > *.alignleft:first-child + p,
.contents-body section > *.alignleft:first-child + h1,
.contents-body section > *.alignleft:first-child + h2,
.contents-body section > *.alignleft:first-child + h3,
.contents-body section > *.alignleft:first-child + h4,
.contents-body section > *.alignleft:first-child + h5,
.contents-body section > *.alignleft:first-child + h6,
.contents-body section > *.alignleft:first-child + div,
.contents-body section > *.alignleft:first-child + p,
.contents-body article > *.alignleft:first-child + h1,
.contents-body article > *.alignleft:first-child + h2,
.contents-body article > *.alignleft:first-child + h3,
.contents-body article > *.alignleft:first-child + h4,
.contents-body article > *.alignleft:first-child + h5,
.contents-body article > *.alignleft:first-child + h6,
.contents-body article > *.alignleft:first-child + div,
.contents-body article > *.alignleft:first-child + p {
  margin-top: 0;
}
.contents-body div > *.alignlight:first-child + h1,
.contents-body div > *.alignlight:first-child + h2,
.contents-body div > *.alignlight:first-child + h3,
.contents-body div > *.alignlight:first-child + h4,
.contents-body div > *.alignlight:first-child + h5,
.contents-body div > *.alignlight:first-child + h6,
.contents-body div > *.alignlight:first-child + div,
.contents-body div > *.alignlight:first-child + p,
.contents-body section > *.alignlight:first-child + h1,
.contents-body section > *.alignlight:first-child + h2,
.contents-body section > *.alignlight:first-child + h3,
.contents-body section > *.alignlight:first-child + h4,
.contents-body section > *.alignlight:first-child + h5,
.contents-body section > *.alignlight:first-child + h6,
.contents-body section > *.alignlight:first-child + div,
.contents-body section > *.alignlight:first-child + p,
.contents-body article > *.alignlight:first-child + h1,
.contents-body article > *.alignlight:first-child + h2,
.contents-body article > *.alignlight:first-child + h3,
.contents-body article > *.alignlight:first-child + h4,
.contents-body article > *.alignlight:first-child + h5,
.contents-body article > *.alignlight:first-child + h6,
.contents-body article > *.alignlight:first-child + div,
.contents-body article > *.alignlight:first-child + p {
  margin-top: 0;
}
.contents-body h1.is-style-underbar {
  position: relative;
  font-size: 2.0625vw;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-weight: normal;
  text-align: center;
  line-height: 1.36;
  padding-top: 1.5em;
  padding-bottom: 1.4em;
  letter-spacing: 0.3em;
  width: 100%;
}
@media screen and (max-width: 1600px) {
  .contents-body h1.is-style-underbar {
    font-size: 33px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h1.is-style-underbar {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.contents-body h1.is-style-underbar::after {
  position: absolute;
  display: block;
  content: "";
  width: 4em;
  height: 1px;
  background: #dcdcdc;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.contents-body h1.is-style-underbar span {
  display: inline-block;
  white-space: nowrap;
}
.contents-body h2 {
  position: relative;
  font-size: 2.0625vw;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-weight: normal;
  text-align: center;
  line-height: 1.36;
  padding-bottom: 1.4em;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 1600px) {
  .contents-body h2 {
    font-size: 33px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h2 {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
.contents-body h2::after {
  position: absolute;
  display: block;
  content: "";
  width: 4em;
  height: 1px;
  background: #dcdcdc;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.contents-body h2 span {
  display: inline-block;
}
.contents-body h2.is-style-plain {
  margin-top: 1.45em;
  margin-bottom: 1em;
  padding-bottom: 0;
}
@media only screen and (max-width: 640px) {
  .contents-body h2.is-style-plain {
    letter-spacing: 0.2em;
  }
}
.contents-body h2.is-style-plain::after {
  display: none;
}
.contents-body h3 {
  font-size: 1.25vw;
  font-family: "YuGothic", "游ゴシック", "roboto", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3",
    sans-serif;
  line-height: 1.36;
}
@media screen and (max-width: 1600px) {
  .contents-body h3 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h3 {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.contents-body h3.title-bar {
  background: #135B13;
  color: #fff;
  font-weight: bold;
  border-radius: 0.3em;
  margin: 0 0 0.25em;
  padding: 1em 1.5em;
}
.contents-body h3.title-bar + p {
  margin-top: 1em;
}
.contents-body h3 span {
  display: inline-block;
}
.contents-body h4 {
  font-size: 20px;
  font-size: 1.25rem;
}
.contents-body div,
.contents-body p,
.contents-body table,
.contents-body ul,
.contents-body ol {
  line-height: 2.19;
}
.contents-body figure {
  position: relative;
}
.contents-body .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  padding: 0 0 2em;
}
.contents-body .items .item {
  width: 46.33%;
  margin: 6em 0 0;
}
@media only screen and (max-width: 960px) {
  .contents-body .items .item {
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .items .item {
    margin: 5em 0 0;
  }
}
.contents-body .items .item *:first-child {
  margin-top: 0;
}
.contents-body .items .item *:last-child {
  margin-bottom: 0;
}
.contents-body .items .item p {
  line-height: 2.19;
}
.contents-body .items .item:first-child {
  margin-top: 0;
}
.contents-body .items .item:nth-child(2) {
  margin-top: 0;
}
@media only screen and (max-width: 960px) {
  .contents-body .items .item:nth-child(2) {
    margin-top: 6em;
  }
}
.contents-body .flex-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.contents-body .flex-area > div:first-child {
  width: 47.5%;
}
@media only screen and (max-width: 960px) {
  .contents-body .flex-area > div:first-child {
    width: 100%;
  }
}
.contents-body .flex-area > div:last-child {
  width: 46.67%;
}
@media only screen and (max-width: 960px) {
  .contents-body .flex-area > div:last-child {
    width: 100%;
    margin: 3.5em 0 0;
  }
}
.contents-body .flex-area > div > *:first-child {
  margin-top: 0 !important;
}
.contents-body .flex-area > div > *:last-child {
  margin-bottom: 0 !important;
}
.contents-body ul,
.contents-body ol {
  padding-left: 0;
}
@media only screen and (max-width: 960px) {
  .contents-body .img-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .img-area {
    display: block;
  }
}
.contents-body .img-area .img-item {
  width: 100%;
}
@media only screen and (max-width: 960px) {
  .contents-body .img-area .img-item {
    width: 46.33%;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .img-area .img-item {
    width: 100%;
  }
}
.contents-body .img-area .img-item + .img-item {
  margin-top: 1.69em;
}
@media only screen and (max-width: 960px) {
  .contents-body .img-area .img-item + .img-item {
    margin-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .img-area .img-item + .img-item {
    margin-top: 1.69em;
  }
}
.contents-body a.btn,
.contents-body a.btn-ol {
  display: inline-block;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #135B13;
  border-radius: 3em;
  width: 100%;
  max-width: 20em;
  margin: 1.25em 0 0;
  border-color: #135B13;
}
.contents-body a.btn[target="_blank"] span,
.contents-body a.btn-ol[target="_blank"] span {
  position: relative;
  display: inline-block;
  padding: 0 1em;
  -webkit-transition: color 0.5s linear;
  transition: color 0.5s linear;
}
.contents-body a.btn[target="_blank"] span svg,
.contents-body a.btn-ol[target="_blank"] span svg {
  position: absolute;
  width: 0.75em;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  fill: #fff;
  -webkit-transition: fill 0.5s;
  transition: fill 0.5s;
}
.contents-body a.btn.hover:hover svg,
.contents-body a.hover.btn-ol:hover svg {
  fill: #135B13;
}
.contents-body .slider-items {
  width: 100%;
  overflow: hidden;
}
.contents-body .slick-slide {
  width: w(740, 1600px);
  padding: 0 0.3125vw;
}
@media only screen and (max-width: 640px) {
  .contents-body .slick-slide {
    padding: 0 5px;
  }
}
.contents-body .slick-slide a {
  display: block;
  color: #333;
}
.contents-body .slick-slide a.hover:hover {
  opacity: 0.6;
}
.contents-body .slick-slide .item-img {
  width: 100%;
  padding: 63.7% 0 0;
  background-size: cover;
  background-position: 50% 50%;
}
.contents-body .slick-slide .item-title {
  margin: 1.5em 0 0;
}
.contents-body .slick-slide p {
  margin: 0.75em 0 0;
}
.contents-body .necessary {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media screen and (max-width: 414px) {
  .contents-body .necessary {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.contents-body .necessary > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 46.33%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.75em;
  border: 2px solid #135B13;
  border-radius: 0.376em;
  font-size: 1.25em;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .contents-body .necessary > div {
    font-size: 1em;
  }
}
@media screen and (max-width: 414px) {
  .contents-body .necessary > div {
    width: 100%;
  }
}
.contents-body .necessary > div > div {
  line-height: 1.75;
}
.contents-body .necessary > div span {
  display: inline-block;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 640px) {
  .contents-body .necessary > div span {
    letter-spacing: normal;
  }
}
.contents-body .necessary > div:first-child {
  color: #135B13;
}
@media screen and (max-width: 414px) {
  .contents-body .necessary > div:first-child {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
}
.contents-body .necessary > div:last-child {
  background: #135B13;
  color: #fff;
}
@media screen and (max-width: 414px) {
  .contents-body .necessary > div:last-child {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
}
.contents-body .necessary::after {
  position: absolute;
  display: block;
  content: "";
  width: 5.17%;
  height: 3.88em;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: url(../img/nurture/arw_g.jpg) 50% 50% / contain no-repeat;
}
@media only screen and (max-width: 640px) {
  .contents-body .necessary::after {
    width: 3.25%;
  }
}
@media screen and (max-width: 414px) {
  .contents-body .necessary::after {
    position: static;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 1em;
    height: 3em;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
}
.contents-body .with-shadow {
  width: 100%;
  margin: 3.75em 0 4em;
}
@media only screen and (max-width: 640px) {
  .contents-body .with-shadow{
    position: relative;
    overflow-x: scroll;
  }
  .contents-body .with-shadow .illust-ovf{
    width: 800px;
    height: auto;
  }
  .contents-body .with-shadow .toggle{
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 0;
  height: 0;
  border-left: 20px solid rgb(75, 75, 75);
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .with-shadow {
    margin: 2em 0 4em;
    padding: 20px;
  }
}
.contents-body .with-shadow img {
  width: 100%;
}
.contents-body .wood-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 8em;
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items {
    display: block;
    margin: 0 0 4em;
  }
}
.contents-body .wood-items .wood-item {
  width: 49.58%;
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items .wood-item {
    width: 100%;
  }
}
.contents-body .wood-items .wood-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  padding: 4em 0 2.69em;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items .wood-item a {
    padding: 3em 0 2em;
  }
}
.contents-body .wood-items .wood-item a div {
  text-align: center;
}
.contents-body .wood-items .wood-item a div > *:first-child {
  margin-top: 0;
}
.contents-body .wood-items .wood-item a div > *:last-child {
  margin-bottom: 0;
}
.contents-body .wood-items .wood-item a div .wood-name {
  color: #333;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-size: 4.25em;
  font-weight: normal;
  margin: 0;
  padding: 0;
  line-height: 1;
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items .wood-item a div .wood-name {
    font-size: 2.5em;
  }
}
.contents-body .wood-items .wood-item a div .wood-name-kana {
  color: #333;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-size: 1.25em;
  line-height: 1;
  margin: 1.35em 0 0;
  display: inline-block;
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items .wood-item a div .wood-name-kana {
    font-size: 1em;
  }
}
.contents-body .wood-items .wood-item a div p {
  margin-top: 1.5em;
  color: #333;
  line-height: 1.875;
}
.contents-body .wood-items .wood-item a div p:last-child {
  margin-top: 2em;
}
.contents-body .wood-items .wood-item a div p:last-child .btn,
.contents-body .wood-items .wood-item a div p:last-child .btn-ol,
.contents-body
  .wood-items
  .wood-item
  a
  div
  p:last-child
  form
  input[type="button"],
form
  .contents-body
  .wood-items
  .wood-item
  a
  div
  p:last-child
  input[type="button"],
.contents-body
  .wood-items
  .wood-item
  a
  div
  p:last-child
  form
  input[type="submit"],
form
  .contents-body
  .wood-items
  .wood-item
  a
  div
  p:last-child
  input[type="submit"],
.contents-body .wood-items .wood-item a div p:last-child form button,
form .contents-body .wood-items .wood-item a div p:last-child button {
  display: inline-block;
  border-radius: 50%;
  min-width: 11.375em;
  padding: 0.5em;
  border-radius: 15em;
  background: #135B13;
  border-color: #135B13;
}
.contents-body .wood-items .wood-item.wood-item-hiba a {
  background-image: url(../img/take/wood_hiba.jpg);
}
.contents-body .wood-items .wood-item.wood-item-sugi a {
  background-image: url(../img/take/wood_of_sugi.jpg);
}
@media only screen and (max-width: 640px) {
  .contents-body .wood-items .wood-item + .wood-item {
    margin-top: 10px;
  }
}
.contents-body .take-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
.contents-body .take-content.inversion {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.contents-body .take-text {
  width: 40.83%;
}
@media screen and (max-width: 1024px) {
  .contents-body .take-text {
    width: 100%;
  }
}
.contents-body .take-text p {
  margin: 0;
}
.contents-body .take-title {
  font-size: 2.06em;
  margin: 0 0 1.25em;
  padding: 0;
  text-align: left;
}
@media only screen and (max-width: 640px) {
  .contents-body .take-title {
    font-size: 24px;
    font-size: 1.5rem;
    text-align: center;
  }
}
.contents-body .take-title span {
  display: inline-block;
}
.contents-body .take-title::after {
  display: none;
}
.contents-body .take-image {
  width: 54.167%;
}
@media screen and (max-width: 1024px) {
  .contents-body .take-image {
    width: 100%;
    margin: 3em 0 0;
  }
}
.contents-body .take-image img {
  width: 100%;
}
.contents-body .has-mini-image .take-text {
  width: 72.5%;
}
@media only screen and (max-width: 640px) {
  .contents-body .has-mini-image .take-text {
    width: 100%;
  }
}
.contents-body .has-mini-image .take-image {
  width: 20.83%;
}
@media screen and (max-width: 1024px) {
  .contents-body .has-mini-image .take-image {
    margin: 0;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .has-mini-image .take-image {
    width: 100%;
    max-width: 250px;
    margin: 3em 0 0;
  }
}
.home section {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-height: 100vh;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-font-smoothing: antialiased;
  padding: 5em 0;
}
@media only screen and (max-width: 640px) {
  .home section {
    padding: 12.5vw 0;
  }
}
.home section::before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
}
.home .section .common-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.home .section .fp-tableCell .top_slide .visual-nav {
  margin: 5em 0 0;
}
@media only screen and (max-width: 640px) {
  .home .section .fp-tableCell .top_slide .visual-nav {
    margin: 10.9375vw auto 0;
  }
}
.home .section .fp-tableCell .top_slide .visual-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
 #fullpage .section .fp-tableCell .top_slide .visual-nav ul li {
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li::before {
  content: none;
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li {
  padding: 0 calc(3.75em / 2);
}
@media only screen and (max-width: 640px) {
  #fullpage .section .fp-tableCell .top_slide .visual-nav ul li {
    padding: 0 2.5vw;
  }
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5.5em;
  height: 5.5em;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  letter-spacing: 0.05em;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media screen and (max-width: 520px) {
  #fullpage .section .fp-tableCell .top_slide .visual-nav ul li a {
    width: 18.95238vw;
    height: 18.95238vw;
  }
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li a.hover:hover {
  opacity: 1;
  background: #fff;
  color: rgba(0, 0, 0, 0.7);
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li:first-child {
  padding-left: 0;
}
#fullpage .section .fp-tableCell .top_slide .visual-nav ul li:last-child {
  padding-right: 0;
}
.home section .top-mordal-opener {
  text-align: center;
  line-height: 1;
  margin: 3.38em 0 0;
}
.home section .top-mordal-opener a {
  color: #fff;
  text-decoration: underline;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
.home section .content {
  color: #fff;
}
.home section .content .visual-logo {
  text-align: center;
  font-size: 1em;
}
.home section .content .visual-logo img {
  width: 18.63em;
}
@media only screen and (max-width: 640px) {
  .home section .content .visual-logo img {
    width: 46.5625vw;
  }
}
.home section .content h2 {
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
  font-size: 2.81em;
  font-weight: normal;
  letter-spacing: 0.3em;
  text-align: center;
}
@media screen and (max-width: 520px) {
  .home section .content h2 {
    font-size: 8.65385vw;
  }
}
.home section .content .explanatory {
  text-align: center;
  letter-spacing: 0.35em;
  line-height: 2.19;
  margin: 4.38em 0 0;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
@media only screen and (max-width: 640px) {
  .home section .content .explanatory {
    margin: 10.9375vw 0 0;
  }
}
.home section .content .explanatory span {
  display: inline-block;
}
#fullpage .section .fp-tableCell .content-area .btn-circle {
  margin: 7.75em auto 0;
  padding: 5.75em 0 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media only screen and (max-width: 640px) {
  #fullpage .section .fp-tableCell .content-area .btn-circle {
    margin: 19.375vw auto 0;
    padding: 14.375vw 0 0;
    margin-top: 60%;
    margin-bottom: 0;
    position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  }
}
#fullpage .section .fp-tableCell .content-area .btn-circle::before {
  position: absolute;
  display: block;
  content: "";
  width: 1px;
  height: 6.875em;
  background: #fff;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  #fullpage .section .fp-tableCell .content-area .btn-circle::before {
    height: 17.1875vw;
  }
}
#fullpage .section .fp-tableCell .content-area .btn-circle a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 5.5em;
  height: 5.5em;
  margin: 0 auto;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  font-family: "YuMincho", "游明朝", "Hiragino Mincho Pro",
    "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "Noto Serif Japanese",
    "serif, Century";
}
#fullpage .section .fp-tableCell .content-area .btn-circle a.hover:hover {
  opacity: 1;
  background: #fff;
  color: rgba(0, 0, 0, 0.7);
}
.home .visual {
  background-image: url(../img/top/top_visual.jpg);
  padding-top: 6.25em;
}
@media only screen and (max-width: 640px) {
  .home .visual {
    padding-top: 15.625vw;
  }
}
.home .visual::before {
  background: rgba(0, 0, 0, 0.3);
}
.home #nurture {
  background-image: url(../img/top/top_nurture.jpg);
}
.home #take {
  background-image: url(../img/top/top_take.jpg);
}
.home #use {
  background-image: url(../img/top/top_use.jpg);
}
.home .serif {
  fill: #fff;
}
.add-swiper-bullet {
  padding-bottom: 40px;
}
.swiper-slide {
  text-align: center;
}
.swiper-slide img {
  margin: auto;
}
.swiper-slide p {
  line-height: 1.8;
}
.swiper-pagination {
  bottom: 0;
}
.swiper-pagination-bullet {
  border-radius: 0;
  margin: 0 8px;
}
.swiper-container-horizontal
  > .swiper-pagination-bullets
  .swiper-pagination-bullet {
  margin: 0 8px;
}
.swiper-pagination-bullet-active {
  background: #000;
}
.featherlight .featherlight-content {
  padding: 30px;
  margin: 0;
  max-height: 100%;
  border-bottom: none;
  background: transparent;
}
.featherlight .featherlight-image {
  max-width: 100%;
  max-height: 100%;
}
.featherlight .featherlight-close-icon {
  width: 30px;
  height: 30px;
  text-align: center;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  font-weight: bold;
  border-radius: 0;
  top: 0;
  right: 30px;
  background: transparent;
}
@-webkit-keyframes fade {
  0% {
    opacity: 0;
    z-index: -1;
  }
  100% {
    opacity: 1;
    z-index: 1;
  }
}
@keyframes fade {
  0% {
    opacity: 0;
    z-index: -1;
  }
  100% {
    opacity: 1;
    z-index: 1;
  }
}
@-webkit-keyframes fadein {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: -webkit-box;
    display: flex;
    opacity: 0;
  }
  100% {
    display: -webkit-box;
    display: flex;
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 0;
  }
  100% {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
  }
}
@-webkit-keyframes fadeout {
  0% {
    display: -webkit-box;
    display: flex;
    opacity: 1;
  }
  99% {
    display: -webkit-box;
    display: flex;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}
@keyframes fadeout {
  0% {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
  }
  99% {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}
@-webkit-keyframes slideLtoR {
  0% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}
@keyframes slideLtoR {
  0% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes slideRtoL {
  0% {
    right: -100%;
  }
  100% {
    right: 0;
  }
}
@keyframes slideRtoL {
  0% {
    right: -100%;
  }
  100% {
    right: 0;
  }
}
@-webkit-keyframes resizeWidth {
  0% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}
@keyframes resizeWidth {
  0% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}
@font-face {
  font-family: "lightcase";
  src: url("../fonts/lightcase.eot?55356177");
  src: url("../fonts/lightcase.eot?55356177#iefix") format("embedded-opentype"),
    url("../fonts/lightcase.woff?55356177") format("woff"),
    url("../fonts/lightcase.ttf?55356177") format("truetype"),
    url("../fonts/lightcase.svg?55356177#lightcase") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class*="lightcase-icon-"]:before {
  font-family: "lightcase", sans-serif;
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
}
.lightcase-icon-play:before {
  content: "\e800";
}
.lightcase-icon-pause:before {
  content: "\e801";
}
.lightcase-icon-close:before {
  content: "\e802";
}
.lightcase-icon-prev:before {
  content: "\e803";
}
.lightcase-icon-next:before {
  content: "\e804";
}
.lightcase-icon-spin:before {
  content: "\e805";
}
@-webkit-keyframes lightcase-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes lightcase-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
#lightcase-case {
  display: none;
  position: fixed;
  z-index: 2002;
  top: 50%;
  left: 50%;
  font-family: arial, sans-serif;
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 640px) {
  html[data-lc-type="inline"] #lightcase-case,
  html[data-lc-type="ajax"] #lightcase-case {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    margin: 0 !important;
    padding: 55px 0 70px 0;
    width: 100% !important;
    height: 100% !important;
    overflow: auto !important;
  }
}
@media screen and (min-width: 641px) {
  html:not([data-lc-type="error"]) #lightcase-content {
    position: relative;
    z-index: 1;
    text-shadow: none;
    background-color: #fff;
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
    -o-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
    -webkit-backface-visibility: hidden;
  }
}
@media screen and (min-width: 641px) {
  html[data-lc-type="image"] #lightcase-content,
  html[data-lc-type="video"] #lightcase-content {
    background-color: #333;
  }
}
html[data-lc-type="inline"] #lightcase-content,
html[data-lc-type="ajax"] #lightcase-content,
html[data-lc-type="error"] #lightcase-content {
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}
@media screen and (max-width: 640px) {
  html[data-lc-type="inline"] #lightcase-content,
  html[data-lc-type="ajax"] #lightcase-content,
  html[data-lc-type="error"] #lightcase-content {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
  }
}
html[data-lc-type="inline"] #lightcase-content .lightcase-contentInner,
html[data-lc-type="ajax"] #lightcase-content .lightcase-contentInner,
html[data-lc-type="error"] #lightcase-content .lightcase-contentInner {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  html[data-lc-type="inline"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="ajax"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="error"] #lightcase-content .lightcase-contentInner {
    padding: 15px;
  }
  html[data-lc-type="inline"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="inline"] #lightcase-content .lightcase-contentInner > *,
  html[data-lc-type="ajax"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="ajax"] #lightcase-content .lightcase-contentInner > *,
  html[data-lc-type="error"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="error"] #lightcase-content .lightcase-contentInner > * {
    width: 100% !important;
    max-width: none !important;
  }
  html[data-lc-type="inline"]
    #lightcase-content
    .lightcase-contentInner
    > *:not(iframe),
  html[data-lc-type="ajax"]
    #lightcase-content
    .lightcase-contentInner
    > *:not(iframe),
  html[data-lc-type="error"]
    #lightcase-content
    .lightcase-contentInner
    > *:not(iframe) {
    height: auto !important;
    max-height: none !important;
  }
}
@media screen and (max-width: 640px) {
  html.lightcase-isMobileDevice[data-lc-type="iframe"]
    #lightcase-content
    .lightcase-contentInner
    iframe {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media screen and (max-width: 640px) and (min-width: 641px) {
  html[data-lc-type="image"] #lightcase-content .lightcase-contentInner,
  html[data-lc-type="video"] #lightcase-content .lightcase-contentInner {
    line-height: 0.75;
  }
}
html[data-lc-type="image"] #lightcase-content .lightcase-contentInner {
  position: relative;
  overflow: hidden !important;
}
@media screen and (max-width: 640px) {
  html[data-lc-type="inline"]
    #lightcase-content
    .lightcase-contentInner
    .lightcase-inlineWrap,
  html[data-lc-type="ajax"]
    #lightcase-content
    .lightcase-contentInner
    .lightcase-inlineWrap,
  html[data-lc-type="error"]
    #lightcase-content
    .lightcase-contentInner
    .lightcase-inlineWrap {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
  }
}
@media screen and (min-width: 641px) {
  html:not([data-lc-type="error"])
    #lightcase-content
    .lightcase-contentInner
    .lightcase-inlineWrap {
    padding: 30px;
    overflow: auto;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 640px) {
  #lightcase-content h1,
  #lightcase-content h2,
  #lightcase-content h3,
  #lightcase-content h4,
  #lightcase-content h5,
  #lightcase-content h6,
  #lightcase-content p {
    color: #aaa;
  }
}
@media screen and (min-width: 641px) {
  #lightcase-content h1,
  #lightcase-content h2,
  #lightcase-content h3,
  #lightcase-content h4,
  #lightcase-content h5,
  #lightcase-content h6,
  #lightcase-content p {
    color: #333;
  }
}
#lightcase-case p.lightcase-error {
  margin: 0;
  font-size: 17px;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #aaa;
}
@media screen and (max-width: 640px) {
  #lightcase-case p.lightcase-error {
    padding: 30px 0;
  }
}
@media screen and (min-width: 641px) {
  #lightcase-case p.lightcase-error {
    padding: 0;
  }
}
.lightcase-open body {
  overflow: hidden;
}
.lightcase-isMobileDevice .lightcase-open body {
  max-width: 100%;
  max-height: 100%;
}
#lightcase-info {
  position: absolute;
  padding-top: 15px;
}
#lightcase-info #lightcase-title,
#lightcase-info #lightcase-caption {
  margin: 0;
  padding: 0;
  line-height: 1.5;
  font-weight: normal;
  text-overflow: ellipsis;
}
#lightcase-info #lightcase-title {
  font-size: 17px;
  color: #aaa;
}
@media screen and (max-width: 640px) {
  #lightcase-info #lightcase-title {
    position: fixed;
    top: 10px;
    left: 0;
    max-width: 87.5%;
    padding: 5px 15px;
    background: #333;
  }
}
#lightcase-info #lightcase-caption {
  clear: both;
  font-size: 13px;
  color: #aaa;
}
#lightcase-info #lightcase-sequenceInfo {
  font-size: 11px;
  color: #aaa;
}
@media screen and (max-width: 640px) {
  .lightcase-fullScreenMode #lightcase-info {
    padding-left: 15px;
    padding-right: 15px;
  }
  html:not([data-lc-type="image"]):not([data-lc-type="video"]):not([data-lc-type="flash"]):not([data-lc-type="error"])
    #lightcase-info {
    position: static;
  }
}
#lightcase-loading {
  position: fixed;
  z-index: 9999;
  width: 1.123em;
  height: auto;
  font-size: 38px;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  position: fixed;
  z-index: 2001;
  top: 50%;
  left: 50%;
  margin-top: -0.5em;
  margin-left: -0.5em;
  opacity: 1;
  font-size: 32px;
  text-shadow: 0 0 15px #fff;
  -moz-transform-origin: 50% 53%;
  -webkit-animation: lightcase-spin 0.5s infinite linear;
  animation: lightcase-spin 0.5s infinite linear;
}
#lightcase-loading,
#lightcase-loading:focus {
  text-decoration: none;
  color: #fff;
  -webkit-tap-highlight-color: transparent;
  -webkit-transition: color, opacity, ease-in-out 0.25s;
  transition: color, opacity, ease-in-out 0.25s;
}
#lightcase-loading > span {
  display: inline-block;
  text-indent: -9999px;
}
a[class*="lightcase-icon-"] {
  position: fixed;
  z-index: 9999;
  width: 1.123em;
  height: auto;
  font-size: 38px;
  line-height: 1;
  text-align: center;
  text-shadow: none;
  outline: none;
  cursor: pointer;
}
a[class*="lightcase-icon-"],
a[class*="lightcase-icon-"]:focus {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.6);
  -webkit-tap-highlight-color: transparent;
  -webkit-transition: color, opacity, ease-in-out 0.25s;
  transition: color, opacity, ease-in-out 0.25s;
}
a[class*="lightcase-icon-"] > span {
  display: inline-block;
  text-indent: -9999px;
}
a[class*="lightcase-icon-"]:hover {
  color: white;
  text-shadow: 0 0 15px white;
}
.lightcase-isMobileDevice a[class*="lightcase-icon-"]:hover {
  color: #aaa;
  text-shadow: none;
}
a[class*="lightcase-icon-"].lightcase-icon-close {
  position: fixed;
  top: 15px;
  right: 15px;
  bottom: auto;
  margin: 0;
  opacity: 0;
  outline: none;
}
a[class*="lightcase-icon-"].lightcase-icon-prev {
  left: 15px;
}
a[class*="lightcase-icon-"].lightcase-icon-next {
  right: 15px;
}
a[class*="lightcase-icon-"].lightcase-icon-pause,
a[class*="lightcase-icon-"].lightcase-icon-play {
  left: 50%;
  margin-left: -0.5em;
}
@media screen and (min-width: 641px) {
  a[class*="lightcase-icon-"].lightcase-icon-pause,
  a[class*="lightcase-icon-"].lightcase-icon-play {
    opacity: 0;
  }
}
@media screen and (max-width: 640px) {
  a[class*="lightcase-icon-"] {
    bottom: 15px;
    font-size: 24px;
  }
}
@media screen and (min-width: 641px) {
  a[class*="lightcase-icon-"] {
    bottom: 50%;
    margin-bottom: -0.5em;
  }
  a[class*="lightcase-icon-"]:hover,
  #lightcase-case:hover ~ a[class*="lightcase-icon-"] {
    opacity: 1;
  }
}
#lightcase-overlay {
  display: none;
  width: 100%;
  min-height: 100%;
  position: fixed;
  z-index: 2000;
  top: -9999px;
  bottom: -9999px;
  left: 0;
  background: #fff;
}
@media screen and (max-width: 640px) {
  #lightcase-overlay {
    opacity: 1 !important;
  }
}
.lightcase-open .p-hamburger {
  opacity: 0;
}
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
.slick-loading .slick-list {
  background: #fff url("./../img/ajax-loader.gif") center center no-repeat;
}
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-size: 20px;
  line-height: 1;
  color: #fff;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-prev {
  left: -25px;
}
[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir="rtl"] .slick-prev:before {
  content: "→";
}
.slick-next {
  right: -25px;
}
[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir="rtl"] .slick-next:before {
  content: "←";
}
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}
.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: #000;
  opacity: 0.75;
}
.chartbox {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    height: auto;
    line-height: 1em;
}
.chartbox h3,.chartbox-3 h3,.chartbox-3 h4,.chartbox-1 h3 {
    line-height: 1em;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 30px;
    margin-left: 0px;
}
.chartbox-1 {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    height: auto;
    line-height: 1em;
}
@media screen and (max-width: 759px){
  .chartbox-1{
    max-width: inherit;
    width: 1000px;
    height: auto;
  }
}
.chartbox-3 {
    width: 33%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    line-height: 1em;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-bottom: 30px;
}
.chartbox-3 .flex-chart__wrap .flex-chart{
  margin: 10px;
}
.chartbox-3 .flex-chart__wrap .flex-chart .flex-chart-chi{
  margin: 0;
}
.chartbox-3 .flex-chart__wrap .flex-chart .flex-chart-chi .color1{
  color: #135B13;
 }
.chartbox-3 .flex-chart__wrap .flex-chart .flex-chart-chi .color2{
 color: #D8A100;
}
.chartbox-3 .flex-chart__wrap .flex-chart .flex-chart-chi .color3{
  color: #34A9D0;
 }
 .chartbox-3 .flex-chart__wrap .flex-chart .flex-chart-chi .color4{
  color: #7062BB;
 }
	.box1 {
  width: 100%;
	display:flex;
}
.box-glay {
    background-color: #EBEFEB;
    line-height: 1em;
    margin-left: 15px;
    margin-right: 15px;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
}
.box-glay small {
	line-height: 1em;
}
.box-glay small span {
    line-height: 1em;
    font-weight: bold;
}
.text-right {
    text-align: right;
}
@media screen and (max-width: 640px) {
	.box1 {
    width: 100%;
    display: inherit;
}
	.chartbox-3 {
    width: 100%;
}
}
#myChart1,#myChart2,#myChart3 {
    min-width: 100%;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
.contents-body .with-shadow img.wari {
    width: 95%;
margin-left: 4%;
margin-right: 1%;
}
@media screen and (max-width: 960px) {
		.contents-body .with-shadow img.wari {
    width: 92%;
margin-left: 8%;
margin-right: 1%;
}
}
	@media screen and (max-width: 759px) {
				.contents-body .with-shadow img.wari {
    width: 95%;
margin-left: 4%;
margin-right: 1%;
}
	}
@media screen and (max-width: 640px) {
	.contents-body .with-shadow img.wari {
    width: 94%;
margin-left: 5%;
margin-right: 1%;
}
}
