@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=Anton");
abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent
}

body {
  line-height: 1
}

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

ul {
  list-style: none
}

blockquote, q {
  quotes: none
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold
}

del {
  text-decoration: line-through
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

input, select {
  vertical-align: middle
}

button, input, select, textarea {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none
}

button, input, select, textarea {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  background: #fff;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.075);
  padding: 12px;
  width: 100%;
  max-width: 100%
}

button img, input img, select img, textarea img {
  width: 26px;
  height: 26px
}

button:hover, input:hover, select:hover, textarea:hover {
  -webkit-box-shadow: none;
  box-shadow: none
}

button:focus, input:focus, select:focus, textarea:focus {
  border: 1px solid #4d90fe;
  outline: none;
  -webkit-box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.1)
}

button:disabled, input:disabled, select:disabled, textarea:disabled {
  opacity: .8;
  background: #e9e9e9
}

::-webkit-input-placeholder {
  color: #ccc
}

:-ms-input-placeholder {
  color: #ccc
}

::-ms-input-placeholder {
  color: #ccc
}

::placeholder {
  color: #ccc
}

select {
  position: relative;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iIzY2NiI+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTkuMSw3LjFhLjg3Ljg3LDAsMCwwLS4yNi0uNjNMMTIuNjQuM2EuODcuODcsMCwwLDAtMS4yNywwTDUuMTcsNi40N2EuOS45LDAsMCwwLDAsMS4zbC42Ni42M2EuODcuODcsMCwwLDAsMS4yNywwTDEyLDMuNTNsNC45LDQuODhhLjg3Ljg3LDAsMCwwLDEuMjcsMGwuNjYtLjYzQS45My45MywwLDAsMCwxOS4xLDcuMVptMCw5LjgxYS45My45MywwLDAsMC0uMjYtLjY2bC0uNjYtLjYzYS44Ny44NywwLDAsMC0xLjI3LDBMMTIsMjAuNDksNy4xLDE1LjYxYS44Ny44NywwLDAsMC0xLjI3LDBsLS42Ni42M2EuOS45LDAsMCwwLDAsMS4zbDYuMiw2LjE3YS44Ny44NywwLDAsMCwxLjI3LDBsNi4yLTYuMTdBLjg3Ljg3LDAsMCwwLDE5LjEsMTYuOTFaIi8+PC9zdmc+") no-repeat center left 10px #fff;
  background-size: 16px;
  padding-left: 36px
}

textarea {
  width: 100%;
  height: 200px;
  resize: vertical
}

.submit {
  padding: 20px 0;
  text-align: center
}

button, input[type=button], input[type=file]+label, input[type=submit] {
  color: #fff;
  width: auto;
  min-width: 150px;
  text-align: center;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: #1986fb;
  border: 1px solid #2962ff;
  padding: 10px 40px;
  border-radius: 5px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

button:hover, input[type=button]:hover, input[type=file]+label:hover, input[type=submit]:hover {
  background: #2962ff
}

button.return, input[type=button].return, input[type=file]+label.return, input[type=submit].return {
  color: #212121;
  background: #ddd;
  border: 1px solid #aaa;
  padding: 10px 20px
}

button.return:hover, input[type=button].return:hover, input[type=file]+label.return:hover, input[type=submit].return:hover {
  background: #aaa
}

button:disabled, input[type=button]:disabled, input[type=file]+label:disabled, input[type=submit]:disabled {
  cursor: auto;
  color: #eee;
  background: #666;
  border: 1px solid #666;
  padding: 10px 20px
}

button:disabled:hover, input[type=button]:disabled:hover, input[type=file]+label:disabled:hover, input[type=submit]:disabled:hover {
  background: #666
}

.tel input[type=tel] {
  width: 25%
}

@media (max-width:1023px) {
  .tel input[type=tel] {
    width: 100%
  }
}

.input-min {
  width: 25%
}

@media (max-width:767px) {
  .input-min {
    width: 30%
  }
}

.input-mid {
  width: 75%
}

@media (max-width:767px) {
  .input-mid {
    width: 70%
  }
}

.submits {
  text-align: center;
  padding: 20px
}

input[type=checkbox], input[type=radio] {
  display: none!important
}

input[type=checkbox]+span, input[type=radio]+span {
  font-size: 16px;
  font-size: 1.6rem;
  background: #ddd;
  border: 1px solid #aaa;
  padding: 10px 20px 10px 45px;
  margin: 5px;
  cursor: pointer;
  position: relative;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

input[type=checkbox]+span:after, input[type=checkbox]+span:before, input[type=radio]+span:after, input[type=radio]+span:before {
  content: '';
  display: block;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: absolute
}

input[type=checkbox]+span:before, input[type=radio]+span:before {
  background: #fff;
  border: 1px solid #aaa;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 0
}

input[type=checkbox]+span:after, input[type=radio]+span:after {
  width: 10px;
  height: 5px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  top: 50%;
  left: 15px;
  margin-top: -2px;
  z-index: 1;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  opacity: 0
}

input[type=checkbox]:checked+span, input[type=radio]:checked+span {
  color: #fff;
  border: 1px solid;
  background: #2570f9
}

input[type=checkbox]:checked+span:before, input[type=radio]:checked+span:before {
  border-color: #2570f9;
  background: rgba(0, 0, 0, 0.5)
}

input[type=checkbox]:checked+span:after, input[type=radio]:checked+span:after {
  opacity: 1
}

input[type=checkbox]:disabled+span, input[type=radio]:disabled+span {
  cursor: auto;
  background: #666
}

input[type=checkbox]:disabled+span:before, input[type=radio]:disabled+span:before {
  background: #ddd
}

input[type=checkbox]+span {
  border-radius: 50px
}

input[type=checkbox]+span:before {
  width: 25px;
  height: 25px;
  border-radius: 50px
}

input[type=checkbox]+span:after {
  left: 17px
}

input[type=radio]+span {
  border-radius: 5px
}

input[type=radio]+span:before {
  width: 20px;
  height: 20px;
  border-radius: 3px
}

input[type=radio]+span:after {
  width: 10px;
  height: 10px;
  border-radius: 1px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 0;
  border: none;
  left: 16px
}

input[type=radio]:checked+span:after {
  background: #fff
}

input[type=date], input[type=datetime], input[type=datetime-local], input[type=month], input[type=time], input[type=week] {
  padding: 6px 12px
}

input[type=date]::-webkit-inner-spin-button, input[type=datetime]::-webkit-inner-spin-button, input[type=datetime-local]::-webkit-inner-spin-button, input[type=month]::-webkit-inner-spin-button, input[type=time]::-webkit-inner-spin-button, input[type=week]::-webkit-inner-spin-button {
  display: none
}

::-webkit-datetime-edit-day-field:after, ::-webkit-datetime-edit-month-field:after, ::-webkit-datetime-edit-year-field:after {
  content: ""
}

::-webkit-datetime-edit-day-field:not([aria-valuenow]), ::-webkit-datetime-edit-month-field:not([aria-valuenow]), ::-webkit-datetime-edit-year-field:not([aria-valuenow]) {
  color: transparent
}

::-webkit-datetime-edit-text {
  color: #212121
}

::-webkit-clear-button {
  margin-left: 0px;
  margin-right: 10px
}

::-webkit-calendar-picker-indicator {
  color: transparent;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMHB4IiBoZWlnaHQ9IjMwcHgiIHZpZXdCb3g9Ii01IC01IDM0IDM0IiBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMTcsMTJoLTV2NWg1VjEyeiBNMTYsMXYySDhWMUg2djJINUMzLjg5LDMsMy4wMSwzLjksMy4wMSw1TDMsMTljMCwxLjEsMC44OSwyLDIsMmgxNGMxLjEsMCwyLTAuOSwyLTJWNSBjMC0xLjEtMC45LTItMi0yaC0xVjFIMTZ6IE0xOSwxOUg1VjhoMTRWMTl6Ii8+PC9zdmc+") center no-repeat #1986fb;
  border: 1px solid #2962ff;
  background-size: 30px 30px;
  width: 24px;
  height: 24px;
  padding: 5px;
  opacity: 1;
  border-radius: 50%;
  cursor: pointer
}

::-webkit-calendar-picker-indicator:hover {
  background-color: #2962ff
}

input[type=file] {
  display: none
}

#upload_file_name {
  display: none;
  color: #fff;
  background: #009688;
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  opacity: 1;
  border-radius: 5px;
  margin: 10px 0
}

#upload_file_name.active {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

form .error {
  color: red;
  padding: 2px 5px;
  margin: 5px
}

form .any th label:before, form .required th label:before {
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
  padding: 1px 5px;
  margin: 0 10px 0 0;
  border-radius: 5px;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

form .required th label {
  color: red
}

form .required th label:before {
  content: '必須';
  background: red
}

form .any th label:before {
  content: '任意';
  background: #1986fb
}

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

html {
  width: 100%!important;
  font-size: 62.5%;
  word-wrap: break-word
}

body {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  color: #404040;
  background: top center repeat #fff;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  width: 100%;
  min-width: 960px;
  text-align: center
}

@media (max-width:1023px) {
  body {
    min-width: initial
  }
}

a {
  color: inherit;
  text-decoration: none
}

img {
  vertical-align: middle;
  max-width: 100%
}

svg {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

ol, ul {
  list-style: none
}

pre {
  font-size: 14px;
  font-size: 1.4rem
}

::-moz-selection {
  background-color: #9ec45f;
  color: #fff
}

::selection {
  background-color: #9ec45f;
  color: #fff
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px
}

::-webkit-scrollbar-track {
  background: #140633
}

::-webkit-scrollbar-thumb {
  border-radius: 15px;
  background: #9ec45f
}

a {
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

a:hover {
  opacity: .7;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.inner, .table2 table, .table table {
  max-width: 1080px;
  margin: 0 auto
}

@media (max-width:1023px) {
  .inner, .table2 table, .table table {
    max-width: 98%
  }
}

@media (max-width:767px) {
  .inner, .table2 table, .table table {
    max-width: 98%
  }
}

.inner:after, .table2 table:after, .table table:after {
  content: "";
  display: block;
  clear: both
}

.wrap {
  max-width: 1080px;
  margin: 0 40px
}

@media (max-width:1023px) {
  .wrap {
    max-width: 98%;
    margin: 0 10px
  }
}

.box {
  background: #fff;
  border-radius: 6px;
  margin-bottom: 60px;
  padding: 30px;
  overflow: hidden;
  position: relative
}

.spbr {
  display: none
}

@media (max-width:1023px) {
  .spbr {
    display: block
  }
}

.pcbr {
  display: block
}

@media (max-width:1023px) {
  .pcbr {
    display: none
  }
}

.align-center {
  text-align: center;
  margin: 0 auto
}

.align-left {
  text-align: left
}

.align-right {
  text-align: right
}

.mgb30 {
  margin-bottom: 32px!important
}

.mgb60 {
  margin-bottom: 64px!important
}

.mgb100 {
  margin-bottom: 100px!important
}

.pd30:after {
  padding: 30% 0 0!important
}

.image-none {
  display: none
}

.split {
  font-size: 0
}

.split>article, .split>div, .split>li {
  width: 100%;
  font-size: initial;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline
}

.split>article.column-left, .split>div.column-left, .split>li.column-left {
  padding-right: 15px
}

@media (max-width:767px) {
  .split>article.column-left, .split>div.column-left, .split>li.column-left {
    padding-right: 0
  }
}

.split>article.column-right, .split>div.column-right, .split>li.column-right {
  padding-left: 15px
}

@media (max-width:767px) {
  .split>article.column-right, .split>div.column-right, .split>li.column-right {
    padding-left: 0
  }
}

.split[data-length="1"]>article, .split[data-length="1"]>div, .split[data-length="1"]>li {
  width: calc(100% / 1)
}

@media (max-width:767px) {
  .split[data-length="1"]>article, .split[data-length="1"]>div, .split[data-length="1"]>li {
    width: 100%
  }
}

.split[data-length="2"]>article, .split[data-length="2"]>div, .split[data-length="2"]>li {
  width: calc(100% / 2)
}

@media (max-width:767px) {
  .split[data-length="2"]>article, .split[data-length="2"]>div, .split[data-length="2"]>li {
    width: 100%
  }
}

.split[data-length="3"]>article, .split[data-length="3"]>div, .split[data-length="3"]>li {
  width: calc(100% / 3)
}

@media (max-width:767px) {
  .split[data-length="3"]>article, .split[data-length="3"]>div, .split[data-length="3"]>li {
    width: 100%
  }
}

.split[data-length="4"]>article, .split[data-length="4"]>div, .split[data-length="4"]>li {
  width: calc(100% / 4)
}

@media (max-width:767px) {
  .split[data-length="4"]>article, .split[data-length="4"]>div, .split[data-length="4"]>li {
    width: 100%
  }
}

.split[data-length="5"]>article, .split[data-length="5"]>div, .split[data-length="5"]>li {
  width: calc(100% / 5)
}

@media (max-width:767px) {
  .split[data-length="5"]>article, .split[data-length="5"]>div, .split[data-length="5"]>li {
    width: 100%
  }
}

.split[data-length="6"]>article, .split[data-length="6"]>div, .split[data-length="6"]>li {
  width: calc(100% / 6)
}

@media (max-width:767px) {
  .split[data-length="6"]>article, .split[data-length="6"]>div, .split[data-length="6"]>li {
    width: 100%
  }
}

.split[data-length="7"]>article, .split[data-length="7"]>div, .split[data-length="7"]>li {
  width: calc(100% / 7)
}

@media (max-width:767px) {
  .split[data-length="7"]>article, .split[data-length="7"]>div, .split[data-length="7"]>li {
    width: 100%
  }
}

.split[data-length="8"]>article, .split[data-length="8"]>div, .split[data-length="8"]>li {
  width: calc(100% / 8)
}

@media (max-width:767px) {
  .split[data-length="8"]>article, .split[data-length="8"]>div, .split[data-length="8"]>li {
    width: 100%
  }
}

.split[data-length="9"]>article, .split[data-length="9"]>div, .split[data-length="9"]>li {
  width: calc(100% / 9)
}

@media (max-width:767px) {
  .split[data-length="9"]>article, .split[data-length="9"]>div, .split[data-length="9"]>li {
    width: 100%
  }
}

.split[data-length="10"]>article, .split[data-length="10"]>div, .split[data-length="10"]>li {
  width: calc(100% / 10)
}

@media (max-width:767px) {
  .split[data-length="10"]>article, .split[data-length="10"]>div, .split[data-length="10"]>li {
    width: 100%
  }
}

.split[data-length="3"]>article.column-left, .split[data-length="3"]>div.column-left, .split[data-length="3"]>li.column-left {
  padding-right: 10px
}

@media (max-width:767px) {
  .split[data-length="3"]>article.column-left, .split[data-length="3"]>div.column-left, .split[data-length="3"]>li.column-left {
    padding-right: 0
  }
}

.split[data-length="3"]>article.column-right, .split[data-length="3"]>div.column-right, .split[data-length="3"]>li.column-right {
  padding-left: 10px
}

@media (max-width:767px) {
  .split[data-length="3"]>article.column-right, .split[data-length="3"]>div.column-right, .split[data-length="3"]>li.column-right {
    padding-left: 0
  }
}

.split[data-length="3"]>article.column-center, .split[data-length="3"]>div.column-center, .split[data-length="3"]>li.column-center {
  padding: 0 10px
}

@media (max-width:767px) {
  .split[data-length="3"]>article.column-center, .split[data-length="3"]>div.column-center, .split[data-length="3"]>li.column-center {
    padding: 0
  }
}

.split[data-length="2-2-1"]>div:first-child {
  width: calc(100% / 3 * 2)
}

.split[data-length="2-2-1"]>div:nth-child(2) {
  width: calc(100% / 3 * 1)
}

.split[data-length="2-1-2"]>div:first-child {
  width: calc(100% / 3 * 1)
}

.split[data-length="2-1-2"]>div:nth-child(2) {
  width: calc(100% / 3 * 2)
}

.split[data-length="2-3-1"]>div:first-child {
  width: calc(100% / 4 * 3)
}

.split[data-length="2-3-1"]>div:nth-child(2) {
  width: calc(100% / 4 * 1)
}

.split[data-length="2-1-3"]>div:first-child {
  width: calc(100% / 4 * 1)
}

.split[data-length="2-1-3"]>div:nth-child(2) {
  width: calc(100% / 4 * 3)
}

@media (max-width:767px) {
  .split[data-length="2-1-2"]>article:first-child, .split[data-length="2-1-2"]>article:nth-child(2), .split[data-length="2-1-2"]>div:first-child, .split[data-length="2-1-2"]>div:nth-child(2), .split[data-length="2-1-2"]>li:first-child, .split[data-length="2-1-2"]>li:nth-child(2), .split[data-length="2-1-3"]>article:first-child, .split[data-length="2-1-3"]>article:nth-child(2), .split[data-length="2-1-3"]>div:first-child, .split[data-length="2-1-3"]>div:nth-child(2), .split[data-length="2-1-3"]>li:first-child, .split[data-length="2-1-3"]>li:nth-child(2), .split[data-length="2-2-1"]>article:first-child, .split[data-length="2-2-1"]>article:nth-child(2), .split[data-length="2-2-1"]>div:first-child, .split[data-length="2-2-1"]>div:nth-child(2), .split[data-length="2-2-1"]>li:first-child, .split[data-length="2-2-1"]>li:nth-child(2), .split[data-length="2-3-1"]>article:first-child, .split[data-length="2-3-1"]>article:nth-child(2), .split[data-length="2-3-1"]>div:first-child, .split[data-length="2-3-1"]>div:nth-child(2), .split[data-length="2-3-1"]>li:first-child, .split[data-length="2-3-1"]>li:nth-child(2) {
    width: 100%
  }
}

.split>.right {
  float: right
}

.split>.right+.text {
  padding: 0 20px 0 0
}

.lazyload:after {
  background-position: center!important;
  background-image: url(../img/set/loading.gif)!important;
  background-repeat: no-repeat;
  background-size: 48px!important
}

img.lazyload {
  background: none!important
}

.hover-brightness article:hover .image .src, .hover-brightness li:hover .image .src {
  opacity: 1;
  -webkit-animation: brightness 0.5s;
  animation: brightness 0.5s
}

.hover-brightness article:hover a:hover, .hover-brightness li:hover a:hover {
  opacity: 1!important
}

.hover-brightness .image {
  overflow: hidden
}

.hover-zoom article:hover .image .src, .hover-zoom li:hover .image .src {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.hover-zoom .image {
  overflow: hidden
}

.hover-zoom .image .src {
  background-size: cover;
  background-position: center center;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.fly-in, .fly-in2, .fly-in3, .fly-in4 {
  -webkit-transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -webkit-transform: translateY(100px);
  -ms-transform: translateY(100px);
  transform: translateY(100px);
  opacity: 0
}

.fly-in2.active, .fly-in3.active, .fly-in4.active, .fly-in.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.fly-in2 {
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s
}

.fly-in3 {
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s
}

.fly-in4 {
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s
}

.fly-in-right {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateX(100px);
  -ms-transform: translateX(100px);
  transform: translateX(100px);
  opacity: 0;
  visibility: hidden
}

.fly-in-right.active {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
  visibility: visible
}

.fly-in-left {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateX(-100px);
  -ms-transform: translateX(-100px);
  transform: translateX(-100px);
  opacity: 0;
  visibility: hidden
}

.fly-in-left.active {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
  visibility: visible
}

.fly-in-down {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateY(-100px);
  -ms-transform: translateY(-100px);
  transform: translateY(-100px);
  opacity: 0
}

.fly-in-down.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.fade-in {
  -webkit-transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  opacity: 0
}

.fade-in.active {
  opacity: 1
}

@-webkit-keyframes scroll_line {
  0% {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: center top;
    transform-origin: center top
  }
  30% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: center top;
    transform-origin: center top
  }
  60% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom
  }
  to {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom
  }
}

@keyframes scroll_line {
  0% {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: center top;
    transform-origin: center top
  }
  30% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: center top;
    transform-origin: center top
  }
  60% {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom
  }
  to {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom
  }
}

@-webkit-keyframes scroll_line_polygon {
  0% {
    stroke-dashoffset: 80
  }
  to {
    stroke-dashoffset: 0
  }
}

@keyframes scroll_line_polygon {
  0% {
    stroke-dashoffset: 80
  }
  to {
    stroke-dashoffset: 0
  }
}

@-webkit-keyframes pagedown {
  0% {
    -webkit-transform: translate(0, 4px);
    opacity: 0
  }
  50% {
    opacity: 1
  }
  to {
    -webkit-transform: translate(0, 16px);
    opacity: 0
  }
}

@keyframes pagedown {
  0% {
    -webkit-transform: translate(0, 4px);
    transform: translate(0, 4px);
    opacity: 0
  }
  50% {
    opacity: 1
  }
  to {
    -webkit-transform: translate(0, 16px);
    transform: translate(0, 16px);
    opacity: 0
  }
}

@-webkit-keyframes menuani {
  0% {
    -webkit-transform: translate(-50%, -50%) scaleX(0);
    -webkit-transform-origin: right top
  }
  20% {
    -webkit-transform: translate(-50%, -50%) scaleX(1);
    -webkit-transform-origin: right top
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scaleX(1);
    -webkit-transform-origin: right top
  }
  to {
    -webkit-transform: translate(-50%, -50%) scaleX(0);
    -webkit-transform-origin: left top
  }
}

@keyframes menuani {
  0% {
    -webkit-transform: translate(-50%, -50%) scaleX(0);
    transform: translate(-50%, -50%) scaleX(0);
    -webkit-transform-origin: right top;
    transform-origin: right top
  }
  20% {
    -webkit-transform: translate(-50%, -50%) scaleX(1);
    transform: translate(-50%, -50%) scaleX(1);
    -webkit-transform-origin: right top;
    transform-origin: right top
  }
  80% {
    -webkit-transform: translate(-50%, -50%) scaleX(1);
    transform: translate(-50%, -50%) scaleX(1);
    -webkit-transform-origin: right top;
    transform-origin: right top
  }
  to {
    -webkit-transform: translate(-50%, -50%) scaleX(0);
    transform: translate(-50%, -50%) scaleX(0);
    -webkit-transform-origin: left top;
    transform-origin: left top
  }
}

@-webkit-keyframes brightness {
  0% {
    -webkit-filter: brightness(800%);
    filter: brightness(800%)
  }
  to {
    -webkit-filter: brightness(100%);
    filter: brightness(100%)
  }
}

@keyframes brightness {
  0% {
    -webkit-filter: brightness(800%);
    filter: brightness(800%)
  }
  to {
    -webkit-filter: brightness(100%);
    filter: brightness(100%)
  }
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0
  }
  1% {
    display: block;
    opacity: 0
  }
  to {
    display: block;
    opacity: 1
  }
}

@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0
  }
  1% {
    display: block;
    opacity: 0
  }
  to {
    display: block;
    opacity: 1
  }
}

@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0
  }
  1% {
    display: block;
    opacity: 0
  }
  to {
    display: block;
    opacity: 1
  }
}

.vegas-animation-wmpzoomup {
  -webkit-animation: wmpzoomup ease-out;
  animation: wmpzoomup ease-out
}

@-webkit-keyframes wmpzoomup {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
  }
}

@keyframes wmpzoomup {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
  }
}

.post-content {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  color: #404040;
  float: left;
  text-align: justify
}

@media (max-width:767px) {
  .post-content {
    width: 95%;
    float: none;
    margin: 0 auto;
    padding: 20px 0
  }
}

.post-content h1 {
  font-size: 32px;
  font-size: 3.2rem;
  margin: 40px 0;
  clear: both
}

.post-content h2 {
  font-size: 24px;
  font-size: 2.4rem;
  margin: 64px 0 32px;
  padding: 0 0 12px;
  clear: both;
  border-bottom: 1px solid #efefef
}

.post-content h2:first-child {
  margin: 0 0 32px
}

@media (max-width:767px) {
  .post-content h2 {
    margin: 2em 0
  }
}

.post-content h3 {
  font-size: 22px;
  font-size: 2.2rem;
  clear: both;
  border-left: 5px solid #e5e5e5;
  margin: 64px 0 32px;
  padding: 0 13px
}

.post-content h4 {
  font-size: 18px;
  font-size: 1.8rem;
  color: #b4df6c;
  margin: 2em 0 1em
}

@media (max-width:767px) {
  .post-content h1 {
    font-size: 24px;
    font-size: 2.4rem
  }
  .post-content h2 {
    font-size: 22px;
    font-size: 2.2rem;
    padding: 16px
  }
  .post-content h3 {
    font-size: 20px;
    font-size: 2rem
  }
  .post-content h4 {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.post-content p {
  line-height: 2;
  margin-bottom: 1.6em
}

.post-content a {
  color: #404040
}

.post-content hr {
  border-bottom: 1px solid #efefef;
  margin: 20px 0;
  clear: both
}

.post-content strong {
  font-weight: bold
}

.post-content ul {
  color: #404040;
  margin: 1em 0 2em 0;
  padding-left: 40px
}

.post-content ul li {
  position: relative;
  padding-left: 12px;
  margin: 6px 0
}

.post-content ul li:after {
  content: '';
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #b4df6c
}

.post-content ol {
  color: #404040;
  margin: 1em 0 2em 0;
  padding-left: 40px;
  list-style-type: decimal
}

.post-content dl {
  margin: 1em 0 2em 0
}

.post-content dl dt {
  font-weight: bold;
  margin-bottom: 4px
}

.post-content dl dd {
  margin: 0 0 20px;
  border-left: 4px solid #e5e5e5;
  padding: 0 0 0 10px
}

.post-content pre {
  padding: 20px;
  overflow: scroll;
  font-family: 'Courier', monospace
}

.post-content table {
  border: 1px #ddd solid;
  max-width: 100%
}

.post-content table td, .post-content table th {
  padding: 8px 10px;
  border: #ddd solid 1px
}

.post-content table th {
  color: #181818
}

.post-content table thead th {
  background: rgba(0, 0, 0, 0.1)
}

.post-content table tbody th {
  background: rgba(0, 0, 0, 0.1)
}

.post-content table.table-line table, .post-content table.table-line td, .post-content table.table-line th {
  border-color: #fff
}

.post-content table.table-line th {
  background: transparent;
  color: #383838;
  font-weight: bold
}

.post-content table.table-line thead th {
  background: #5e6265;
  color: #fff
}

.post-content table.table-line tr {
  background: #eee
}

.post-content table.table-line tr:nth-child(odd) {
  background: #ddd
}

.post-content img {
  height: auto
}

.post-content img.alignleft {
  float: left;
  margin-right: 60px;
  margin-bottom: 60px
}

.post-content img.alignright {
  float: right;
  margin-left: 60px;
  margin-bottom: 60px
}

.post-content img.aligncenter {
  display: block;
  margin: 0 auto
}

.post-content blockquote {
  position: relative;
  padding: 10px 12px;
  color: #9ec45f;
  border-left: solid 40px #c4c4c4;
  background: #f3f3f3;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.19);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.19);
  margin-bottom: 2em
}

.post-content blockquote:before {
  color: #fff;
  display: inline-block;
  position: absolute;
  top: 10px;
  left: -32px;
  vertical-align: middle;
  content: "“";
  font-size: 60px;
  font-size: 6rem;
  line-height: 1
}

.post-content blockquote p {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7
}

.post-content blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em
}

.post-content .date {
  display: inline-block;
  position: absolute;
  top: -70px;
  right: -70px;
  width: 140px;
  height: 140px;
  background: rgba(223, 182, 101, 0.8);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg)
}

.post-content .date time {
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center
}

.post-content ul.gallery-item-light {
  margin: 1em 0 0 0;
  padding-left: 0;
  list-style-type: none
}

.post-content ul.list-article-vertical .image .src:after {
  padding: 100% 0 0
}

@media (max-width:767px) {
  .post-content ul .list-article-vertical-inner {
    width: 33.3333%!important
  }
}

.post-content .content {
  margin-bottom: 64px
}

.post-content .badge, .post-content .ref, .post-content .reffer, .post-content .sankou {
  color: #fff;
  background-color: #fc7a22;
  padding: 1px 5px 0;
  border-radius: 2px;
  font-size: 12px
}

.post-content .fz-12px {
  font-size: 12px
}

.post-content .fz-13px {
  font-size: 13px
}

.post-content .fz-14px {
  font-size: 14px
}

.post-content .fz-15px {
  font-size: 15px
}

.post-content .fz-16px {
  font-size: 16px
}

.post-content .fz-17px {
  font-size: 17px
}

.post-content .fz-18px {
  font-size: 18px
}

.post-content .fz-19px {
  font-size: 19px
}

.post-content .fz-20px {
  font-size: 20px
}

.post-content .fz-21px {
  font-size: 21px
}

.post-content .fz-22px {
  font-size: 22px
}

.post-content .fz-24px {
  font-size: 24px
}

.post-content .fz-28px {
  font-size: 28px
}

.post-content .fz-32px {
  font-size: 32px
}

.post-content .fz-36px {
  font-size: 36px
}

.post-content .fz-40px {
  font-size: 40px
}

.post-content .fz-44px {
  font-size: 44px
}

.post-content .fz-48px {
  font-size: 48px
}

.post-content .fw-100 {
  font-weight: 100
}

.post-content .fw-200 {
  font-weight: 200
}

.post-content .fw-300 {
  font-weight: 300
}

.post-content .fw-400 {
  font-weight: 400
}

.post-content .fw-500 {
  font-weight: 500
}

.post-content .fw-600 {
  font-weight: 600
}

.post-content .fw-700 {
  font-weight: 700
}

.post-content .fw-800 {
  font-weight: 800
}

.post-content .fw-900 {
  font-weight: 900
}

.post-content .badge-red {
  background-color: #d71d3b
}

.post-content .badge-pink {
  background-color: #e91e63
}

.post-content .badge-purple {
  background-color: #9c27b0
}

.post-content .badge-blue {
  background-color: #2196f3
}

.post-content .badge-green {
  background-color: #4caf50
}

.post-content .badge-yellow {
  background-color: #edd60e
}

.post-content .badge-brown {
  background-color: #795548
}

.post-content .badge-grey {
  background-color: #9e9e9e
}

.post-content .bold {
  font-weight: bold
}

.post-content .red {
  color: #E50202
}

.post-content .bold-red {
  font-weight: bold;
  color: #E50202
}

.post-content .blue {
  color: blue
}

.post-content .green {
  color: green
}

.post-content .red-under {
  border-bottom: 2px solid red
}

.post-content .marker {
  background-color: #ff9
}

.post-content .marker-red {
  background-color: #ffd0d1
}

.post-content .marker-blue {
  background-color: #a5d7f9
}

.post-content .marker-under {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fffb80));
  background: -webkit-linear-gradient(transparent 70%, #fffb80 70%);
  background: -o-linear-gradient(transparent 70%, #fffb80 70%);
  background: linear-gradient(transparent 70%, #fffb80 70%)
}

.post-content .marker-under-red {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffb6b9));
  background: -webkit-linear-gradient(transparent 70%, #ffb6b9 70%);
  background: -o-linear-gradient(transparent 70%, #ffb6b9 70%);
  background: linear-gradient(transparent 70%, #ffb6b9 70%)
}

.post-content .marker-under-blue {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #a8dafb));
  background: -webkit-linear-gradient(transparent 70%, #a8dafb 70%);
  background: -o-linear-gradient(transparent 70%, #a8dafb 70%);
  background: linear-gradient(transparent 70%, #a8dafb 70%)
}

.post-content .strike {
  text-decoration: line-through
}

.post-content .keyboard-key {
  background-color: #f9f9f9;
  background-image: -moz-linear-gradient(center top, #eee, #f9f9f9, #eee);
  border: 1px solid dashed;
  border-radius: 2px;
  -webkit-box-shadow: 1px 2px 2px #ddd;
  box-shadow: 1px 2px 2px #ddd;
  font-family: inherit;
  font-size: 0.85em;
  padding: 1px 3px
}

.post-content .primary, .post-content .primary-box, .post-content .sp-primary {
  background-color: #428BCA;
  color: #FFFFFF;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px
}

.post-content .sp-success, .post-content .success, .post-content .success-box {
  background-color: #DFF0D8;
  border-color: #D6E9C6;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px
}

.post-content .info, .post-content .info-box, .post-content .sp-info {
  background-color: #D9EDF7;
  border-color: #BCE8F1;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px
}

.post-content .sp-warning, .post-content .warning, .post-content .warning-box {
  background-color: #fcf8e3;
  border: 1px solid #fbeed5;
  color: #c09853;
  padding: 15px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  margin-bottom: 20px;
  border-color: #FAEBCC;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5)
}

.post-content .danger, .post-content .danger-box, .post-content .sp-danger {
  background-color: #F2DEDE;
  border-color: #EBCCD1;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px
}

.post-content .alert, .post-content .alert-box, .post-content .comment-box, .post-content .common-icon-box, .post-content .information, .post-content .information-box, .post-content .memo-box, .post-content .question, .post-content .question-box {
  padding: 20px 20px 20px 72px;
  border-radius: 4px;
  position: relative;
  display: block;
  margin-top: 1em;
  margin-bottom: 1em
}

.post-content .information, .post-content .information-box {
  background: #f3fafe;
  border: 1px solid #bde4fc
}

.post-content .question, .post-content .question-box {
  background: #fff7cc;
  border: 1px solid #ffe766
}

.post-content .alert, .post-content .alert-box {
  background: #fdf2f2;
  border: 1px solid #f6b9b9
}

.post-content .memo-box {
  background: #ebf8f4;
  border: 1px solid #8dd7c1
}

.post-content .comment-box {
  background: #fefefe;
  border: 1px solid #ccd
}

.post-content .ok-box {
  background: #f2fafb;
  border: 1px solid #3cb2cc
}

.post-content .ng-box {
  background: #ffe7e7;
  border: 1px solid #dd5454
}

.post-content .good-box {
  background: #f7fcf7;
  border: 1px solid #98e093
}

.post-content .bad-box {
  background: #fff1f4;
  border: 1px solid #eb6980
}

.post-content .profile-box {
  background: #fefefe;
  border: 1px solid #ccd
}

.post-content .alert-box:before, .post-content .alert:before, .post-content .comment-box:before, .post-content .common-icon-box:before, .post-content .information-box:before, .post-content .information:before, .post-content .memo-box:before, .post-content .question-box:before, .post-content .question:before {
  font-family: "FontAwesome";
  font-size: 50px;
  position: absolute;
  top: -13px;
  left: 13px;
  padding-right: .15em;
  line-height: 1em;
  top: 50%;
  margin-top: -.5em;
  width: 44px;
  text-align: center
}

.post-content .information-box:before, .post-content .information:before {
  content: '\f05a';
  color: #87cefa;
  border-right: 1px solid #bde4fc
}

.post-content .question-box:before, .post-content .question:before {
  content: '\f059';
  color: gold;
  border-right: 1px solid #ffe766
}

.post-content .alert-box:before, .post-content .alert:before {
  content: '\f06a';
  color: #f3aca9;
  border-right: 1px solid #f6b9b9
}

.post-content .memo-box:before {
  content: '\f040';
  color: #7ad0b6;
  border-right: 1px solid #8dd7c1;
  font-size: 36px
}

.post-content .comment-box:before, .post-content .profile-box:before {
  content: '\f0e5';
  color: #999;
  border-right: 1px solid #ccd;
  font-size: 36px
}

.post-content .profile-box:before {
  content: '\f007'
}

.post-content .ok-box:before {
  content: '\f10c';
  color: #3cb2cc;
  border-right: 1px solid #3cb2cc;
  font-size: 36px
}

.post-content .ng-box:before {
  content: '\f00d';
  color: #dd5454;
  border-right: 1px solid #dd5454;
  font-size: 36px
}

.post-content .good-box:before {
  content: '\f164';
  color: #98e093;
  border-right: 1px solid #98e093;
  font-size: 36px
}

.post-content .bad-box:before {
  content: '\f165';
  color: #eb6980;
  border-right: 1px solid #eb6980;
  font-size: 36px
}

.post-content #wpadminbar .alert:before {
  display: none
}

@media screen and (max-width:440px) {
  .post-content .alert, .post-content .alert-box, .post-content .comment-box, .post-content .common-icon-box, .post-content .information, .post-content .information-box, .post-content .memo-box, .post-content .question, .post-content .question-box {
    padding: 6px 6px 6px 26px
  }
  .post-content .alert-box:before, .post-content .alert:before, .post-content .comment-box:before, .post-content .common-icon-box:before, .post-content .information-box:before, .post-content .information:before, .post-content .memo-box:before, .post-content .question-box:before, .post-content .question:before {
    top: 1em;
    left: 6px;
    font-size: 18px;
    border: none;
    width: auto
  }
}

.post-content .blank-box {
  border: 2px solid #999;
  padding: 1.2em 1em;
  margin: 1em 2%
}

.post-content .blank-box ol, .post-content .blank-box ul {
  margin: 0
}

.post-content .blank-box.bb-yellow {
  border-color: #fc9f4d
}

.post-content .blank-box.bb-red {
  border-color: #d05a6e
}

.post-content .blank-box.bb-blue {
  border-color: #2ea9df
}

.post-content .blank-box.bb-green {
  border-color: #3eb370
}

.post-content .blank-box.bb-tab {
  position: relative;
  margin-top: 2em
}

.post-content .blank-box.bb-tab:before {
  background-color: #999;
  font-family: FontAwesome, Aharoni, "Arial Black", Impact, Arial, sans-serif;
  position: absolute;
  font-size: .8em;
  top: -20px;
  left: -2px;
  padding: 0 1em 0 .8em;
  color: #fff;
  border-radius: 6px 6px 0 0
}

.post-content .blank-box.bb-tab.bb-yellow:before {
  background-color: #fc9f4d
}

.post-content .blank-box.bb-tab.bb-red:before {
  background-color: #d05a6e
}

.post-content .blank-box.bb-tab.bb-blue:before {
  background-color: #2ea9df
}

.post-content .blank-box.bb-tab.bb-green:before {
  background-color: #3eb370
}

.post-content .blank-box.sticky {
  border-width: 0 0 0 6px;
  border-color: #9ec45f;
  background-color: #b4df6c
}

.post-content .blank-box.sticky.st-yellow {
  border-color: #FFA103;
  background-color: #ffeac7
}

.post-content .blank-box.sticky.st-red {
  border-color: #CD3740;
  background-color: #F5DADC
}

.post-content .blank-box.sticky.st-blue {
  border-color: #0066cc;
  background-color: #E5F2FF
}

.post-content .blank-box.sticky.st-green {
  border-color: #028760;
  background-color: #CBEFE4
}

.post-content .bb-check:before {
  content: "\f00c  CHECK"
}

.post-content .bb-comment:before {
  content: "\f075  COMMENT"
}

.post-content .bb-point:before {
  content: "\f0eb  POINT"
}

.post-content .bb-tips:before {
  content: "\f19d  TIPS"
}

.post-content .bb-hint:before {
  content: "\f0f3  HINT"
}

.post-content .bb-pickup:before {
  content: "\f005  PICKUP"
}

.post-content .bb-bookmark:before {
  content: "\f02e  BOOKMARK"
}

.post-content .bb-memo:before {
  content: "\f040  MEMO"
}

.post-content .bb-download:before {
  content: "\f019  DOWNLOAD"
}

.post-content .bb-break:before {
  content: "\f0f4  BREAK"
}

.post-content .bb-amazon:before {
  content: "\f270  AMAZON"
}

.post-content .bb-ok:before {
  content: "\f10c  OK"
}

.post-content .bb-ng:before {
  content: "\f00d  NG"
}

.post-content .bb-good:before {
  content: "\f164  GOOD"
}

.post-content .bb-bad:before {
  content: "\f165  BAD"
}

.post-content .bb-profile:before {
  content: "\f007  PROFILE"
}

.post-content .search-form {
  margin: 3em 0
}

.post-content .search-form div {
  border: 1px solid #555;
  border-radius: 2px;
  padding: 5px;
  margin-left: 10px;
  display: inline-block
}

.post-content .search-form div.sform {
  min-width: 280px;
  background-color: #fff
}

.post-content .search-form div.sbtn {
  background-color: #1155EE;
  color: #fff;
  padding-left: 20px;
  padding-right: 30px;
  position: absolute
}

.post-content .search-form div.sbtn:before {
  content: "\f002";
  font-family: FontAwesome;
  margin-right: 7px
}

.post-content .search-form div.sbtn:after {
  content: "\f25a";
  font-family: FontAwesome;
  color: #000;
  position: absolute;
  bottom: -1.4em;
  font-size: 25px
}

@media screen and (max-width:450px) {
  .post-content .search-form div {
    padding: 3px 5px;
    font-size: 75%
  }
  .post-content .search-form div.sform {
    min-width: 180px
  }
  .post-content .search-form div.sbtn {
    padding-left: 5px;
    padding-right: 10px
  }
  .post-content .search-form div.sbtn:after {
    font-size: 20px;
    margin-left: -10px
  }
}

.post-content .btn-wrap img[width="1"] {
  position: absolute;
  bottom: 0;
  right: 0
}

.post-content .btn, .post-content .btn-wrap>a, .post-content .wp-block-freeform .btn-wrap>a {
  color: #fff;
  font-weight: bold;
  border-radius: 4px;
  display: inline-block;
  cursor: pointer;
  line-height: normal;
  padding: 10px 16px;
  text-decoration: none;
  text-align: center;
  font-size: 14px;
  border: 2px solid transparent;
  position: relative
}

.post-content .btn-wrap>a amp-img, .post-content .btn amp-img, .post-content .wp-block-freeform .btn-wrap>a amp-img {
  position: absolute
}

.post-content .btn-wrap>a:after, .post-content .btn-wrap>a:before, .post-content .btn:after, .post-content .btn:before {
  font-family: FontAwesome;
  margin-right: 12px
}

.post-content .btn-wrap.btn-wrap-l>a:after, .post-content .btn.btn-l:after {
  content: "\f105";
  position: absolute;
  right: 0;
  margin-top: -0.15em;
  font-size: 30px
}

.post-content #container .btn-wrap>a:hover, .post-content #container .btn:hover {
  color: #333;
  background-color: #fff;
  border: 2px solid #000;
  -webkit-transition: ease();
  -o-transition: ease();
  transition: ease()
}

.post-content .btn-m, .post-content .btn-wrap.btn-wrap-m>a {
  padding: 14px 45px;
  font-size: 16px
}

.post-content .btn-l, .post-content .btn-wrap.btn-wrap-l>a {
  padding: 20px 0;
  font-size: 18px;
  display: block;
  margin: 1em
}

.post-content .btn-white, .post-content .btn-wrap.btn-wrap-white>a {
  color: #333;
  background-color: #fff
}

.post-content #container .btn-white:hover, .post-content #container .btn-wrap.btn-wrap-white>a:hover {
  color: #333
}

.post-content .btn-red, .post-content .btn-wrap.btn-wrap-red>a {
  background-color: #f44336
}

.post-content .btn-pink, .post-content .btn-wrap.btn-wrap-pink>a {
  background-color: #e91e63
}

.post-content .btn-purple, .post-content .btn-wrap.btn-wrap-purple>a {
  background-color: #9c27b0
}

.post-content .btn-deep, .post-content .btn-wrap.btn-wrap-deep>a {
  background-color: #673ab7
}

.post-content .btn-indigo, .post-content .btn-wrap.btn-wrap-indigo>a {
  background-color: #3f51b5
}

.post-content .btn-blue, .post-content .btn-wrap.btn-wrap-blue>a {
  background-color: #2196f3
}

.post-content .btn-light-blue, .post-content .btn-wrap.btn-wrap-light-blue>a {
  background-color: #03a9f4
}

.post-content .btn-cyan, .post-content .btn-wrap.btn-wrap-cyan>a {
  background-color: #00bcd4
}

.post-content .btn-teal, .post-content .btn-wrap.btn-wrap-teal>a {
  background-color: #009688
}

.post-content .btn-green, .post-content .btn-wrap.btn-wrap-green>a {
  background-color: #4caf50
}

.post-content .btn-light-green, .post-content .btn-wrap.btn-wrap-light-green>a {
  background-color: #8bc34a
}

.post-content .btn-lime, .post-content .btn-wrap.btn-wrap-lime>a {
  background-color: #cddc39
}

.post-content .btn-wrap.btn-wrap-yellow>a, .post-content .btn-yellow {
  background-color: #edd60e
}

.post-content .btn-amber, .post-content .btn-wrap.btn-wrap-amber>a {
  background-color: #ffc107
}

.post-content .btn-orange, .post-content .btn-wrap.btn-wrap-orange>a {
  background-color: #ff9800
}

.post-content .btn-deep-orange, .post-content .btn-wrap.btn-wrap-deep-orange>a {
  background-color: #ff5722
}

.post-content .btn-brown, .post-content .btn-wrap.btn-wrap-brown>a {
  background-color: #795548
}

.post-content .btn-grey, .post-content .btn-wrap.btn-wrap-grey>a {
  background-color: #9e9e9e
}

.post-content .btn-blue-grey, .post-content .btn-wrap.btn-wrap-blue-grey>a {
  background-color: #607d8b
}

.post-content .btn-arrow-right:before, .post-content .btn-wrap.btn-wrap-arrow-right>a:before {
  content: "\f061"
}

.post-content .btn-chevron-right:before, .post-content .btn-wrap.btn-wrap-chevron-circle-right>a:before {
  content: "\f054"
}

.post-content .btn-angle-right:before, .post-content .btn-wrap.btn-wrap-angle-right>a:before {
  content: "\f105"
}

.post-content .btn-caret-right:before, .post-content .btn-wrap.btn-wrap-caret-right>a:before {
  content: "\f0da"
}

.post-content .btn-long-arrow-right:before, .post-content .btn-wrap.btn-wrap-long-arrow-right>a:before {
  content: "\f178"
}

.post-content .btn-chevron-circle-right:before, .post-content .btn-wrap.btn-wrap-chevron-circle-right>a:before {
  content: "\f138"
}

.post-content .btn-angle-double-right:before, .post-content .btn-wrap.btn-wrap-angle-double-right>a:before {
  content: "\f101"
}

.post-content .btn-arrow-circle-right:before, .post-content .btn-wrap.btn-wrap-arrow-circle-right>a:before {
  content: "\f0a9"
}

.post-content .btn-hand-o-right:before, .post-content .btn-wrap.btn-wrap-hand-o-right>a:before {
  content: "\f0a4"
}

.post-content .btn-arrow-circle-o-right:before, .post-content .btn-wrap.btn-wrap-arrow-circle-o-right>a:before {
  content: "\f18e"
}

.post-content .btn-caret-square-o-right:before, .post-content .btn-wrap.btn-wrap-caret-square-o-right>a:before {
  content: "\f152"
}

.post-content .micro-top {
  font-size: 0.8em;
  margin-bottom: -1em;
  margin-top: 1em
}

.post-content .micro-bottom {
  font-size: 0.8em;
  margin-top: -0.8em;
  margin-bottom: 1em
}

.post-content .micro-center {
  text-align: center
}

.post-content .micro-right {
  text-align: right
}

.post-content .micro-balloon {
  position: relative;
  background: #fff;
  border: 1px solid #9ec45f;
  border-radius: 4px;
  padding: 3px 8px;
  display: table;
  margin-bottom: -.7em
}

.post-content .micro-balloon:after, .post-content .micro-balloon:before {
  top: 97%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none
}

.post-content .micro-balloon:after {
  border-top-color: #fff;
  border-width: 7px;
  margin-left: -7px
}

.post-content .micro-balloon:before {
  border-top-color: #b4df6c;
  border-width: 8px;
  margin-left: -8px
}

.post-content .micro-balloon-center {
  margin-left: auto;
  margin-right: auto
}

.post-content .micro-balloon-right {
  margin-left: auto
}

.post-content .micro-bottom.micro-balloon {
  margin-top: -.5em
}

.post-content .micro-bottom.micro-balloon:after, .post-content .micro-bottom.micro-balloon:before {
  bottom: 97%;
  top: auto
}

.post-content .micro-bottom.micro-balloon:after {
  border-bottom-color: #fff;
  border-top-color: transparent
}

.post-content .micro-bottom.micro-balloon:before {
  border-bottom-color: #b4df6c;
  border-top-color: transparent
}

.single .post-content {
  width: 70%!important
}

@media (max-width:1023px) {
  .single .post-content {
    width: 95%!important
  }
}

.single .post-content-non {
  width: 100%!important
}

.single .section .image .caption {
  margin-bottom: 0
}

.single .table2 {
  font-size: 14px;
  font-size: 1.4rem
}

.single .table2 td, .single .table2 th {
  vertical-align: middle
}

.post-thum {
  margin-bottom: 40px
}

.post-thum img {
  height: auto
}

.post-cta {
  background-position: center!important;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.5)
}

.post-cta .inner, .post-cta .table2 table, .post-cta .table table, .table2 .post-cta table, .table .post-cta table {
  position: relative;
  z-index: 10
}

.post-cta p {
  margin-bottom: 10px
}

.post-cta ul {
  padding: 20px
}

.post-cta li {
  font-weight: bold
}

.post-cta .title {
  margin-bottom: 30px
}

.post-cta .image {
  background: none
}

#header {
  background: white;
  position: fixed;
  top: 0;
  left: 0;
  right: 0
}

#header:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

#header .inner, #header .table2 table, #header .table table, .table2 #header table, .table #header table {
  max-width: 100%;
  position: relative
}

#header .title {
  display: inline-block
}

#header .title a {
  display: inline-block
}

#header .title .image {
  padding: 0
}

#header .title .image img {
  height: 80px;
  padding: 0
}

@media (max-width:1023px) {
  #header .title .image img {
    height: 70px;
    padding: 6px
  }
}

#header .tel {
  width: 460px;
  padding: 0;
  border-radius: 10px;
  color: #9ec45f;
  line-height: 1.2;
  text-align: right;
  position: absolute;
  right: 20px;
  top: 30px;
  z-index: 10
}

@media (max-width:1023px) {
  #header .tel {
    display: none
  }
}

#header .tel .number {
  font-size: 36px;
  font-size: 3.6rem;
  display: inline-block;
  color: #9ec45f;
  font-family: 'Anton', sans-serif;
  font-weight: bold;
  margin: 0
}

@media (max-width:1023px) {
  #header .tel .number {
    font-size: 21px;
    font-size: 2.1rem
  }
}

#header .tel .time {
  font-size: 12px;
  font-size: 1.2rem;
  color: #ccc;
  display: none
}

#header .tel a {
  display: block
}

#header .tel .tel-item {
  width: 70%
}

#header .tel .tel-detail {
  width: 30%;
  display: none
}

#header .tel .tel-detail .icon {
  font-size: 12px;
  font-size: 1.2rem;
  background: #c2baac;
  border-radius: 6px;
  color: #fff;
  margin-bottom: 6px;
  padding: 4px 8px;
  text-align: center
}

#header .tel .tel-detail .btn {
  font-size: 12px;
  font-size: 1.2rem;
  background: #fea60e;
  border-radius: 6px;
  margin-bottom: 0;
  padding: 4px 8px 4px 15px;
  text-align: left
}

#header .tel .tel-detail .btn i {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 2px;
  margin-right: 6px;
  vertical-align: middle
}

#header .summary {
  font-size: 11px;
  font-size: 1.1rem;
  width: 400px;
  color: #9ec45f;
  position: absolute;
  top: 3px;
  left: 0;
  right: 0;
  margin: auto
}

@media (max-width:1023px) {
  #header .summary {
    display: none
  }
}

#header .summary-headcopy {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 4px
}

#header .lnav {
  width: 320px;
  position: absolute;
  top: 0;
  right: 0;
  text-align: right
}

@media (max-width:1023px) {
  #header .lnav {
    display: none
  }
}

#header .lnav-inner li {
  font-size: 12px;
  font-size: 1.2rem;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  text-align: center
}

#header .lnav-inner li:last-child {
  border-right: 0
}

#header .lnav-inner li a {
  color: #fff;
  display: block;
  padding: 2px 10px;
  background: #c2baac;
  text-indent: -.5em
}

#header .lnav-inner li i {
  font-size: 12px;
  font-size: 1.2rem;
  margin-right: 4px;
  margin-bottom: 2px;
  vertical-align: middle
}

#header.active {
  -webkit-transform: translateY(-122px);
  -ms-transform: translateY(-122px);
  transform: translateY(-122px)
}

@media (max-width:767px) {
  #header.active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
  }
}

#menu {
  width: 56px;
  height: 56px;
  min-width: initial;
  background: #9ec45f;
  border: none;
  border-radius: 50%;
  display: none;
  padding: 0;
  text-align: center;
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 991
}

@media (max-width:1023px) {
  #menu {
    width: 45px;
    height: 45px;
    display: block;
    position: fixed
  }
}

#menu:after {
  content: 'MENU';
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

#menu div {
  width: 24px;
  border-bottom: 1px #fff solid;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scaleX(1);
  -ms-transform: translate(-50%, -50%) scaleX(1);
  transform: translate(-50%, -50%) scaleX(1);
  -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1)
}

#menu div:first-child {
  width: 12px;
  top: 35%;
  -webkit-animation: menuani 5s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
  animation: menuani 5s cubic-bezier(0.215, 0.61, 0.355, 1) infinite
}

#menu div:nth-child(2) {
  -webkit-animation: menuani 5s 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
  animation: menuani 5s 0.2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite
}

#menu div:nth-child(3) {
  width: 12px;
  top: 65%;
  -webkit-animation: menuani 5s 0.45s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
  animation: menuani 5s 0.45s cubic-bezier(0.215, 0.61, 0.355, 1) infinite
}

#menu-wrap {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  top: 0;
  left: 0;
  z-index: 990
}

@media (max-width:1023px) {
  #menu-wrap {
    display: block
  }
}

#menu-wrap .menu-bgs {
  position: absolute;
  top: 0;
  left: -50%;
  width: 200%;
  height: 100%;
  text-align: center
}

#menu-wrap .menu-bgs .menu-bg {
  background: rgba(158, 196, 95, 0.95);
  z-index: 1;
  left: 100%;
  width: 10%
}

#menu-wrap .menu-bgs2 {
  position: absolute;
  top: 0;
  left: -50%;
  width: 200%;
  height: 100%;
  font-size: 0;
  white-space: nowrap;
  text-align: center
}

#menu-wrap .menu-bgs2 .menu-bg {
  background: #dae1e8;
  z-index: 2;
  left: 0;
  width: 100%
}

#menu-wrap .menu-bgs2 .menu-bg:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  opacity: 1
}

#menu-wrap .menu-bg {
  position: absolute;
  top: 0;
  height: 100%
}

#menu-wrap .menu-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  z-index: 100
}

#menu-wrap .menu-content .menu-image {
  width: 30%
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-image {
    width: 100%;
    height: 15vh;
    overflow: hidden
  }
}

#menu-wrap .menu-content .menu-image .src {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-image .src {
    background-position: top -80px center!important
  }
}

#menu-wrap .menu-content .menu-image .src:after {
  content: '';
  width: 100%;
  display: block;
  padding: 100vh 0 0
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-image .src:after {
    padding: 30vh 0 0
  }
}

#menu-wrap .menu-content .menu-item {
  width: 70%;
  height: 100vh;
  position: relative;
  overflow: auto
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-item {
    width: 100%;
    height: 85vh
  }
}

#menu-wrap .menu-content .menu-item .sns {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-item .sns {
    position: static
  }
}

#menu-wrap .menu-content .menu-item .sns ul {
  padding: 20px 10px
}

#menu-wrap .menu-content .menu-item .sns li {
  display: inline-block;
  margin: 0 5px
}

#menu-wrap .menu-content .menu-item .sns .icon {
  width: 30px;
  height: 30px;
  fill: #fff;
  border-radius: 50%;
  padding: 0
}

#menu-wrap .menu-content .menu-item .sns svg {
  width: 20px
}

#menu-wrap .menu-content .menu-item .sns .ab, #menu-wrap .menu-content .menu-item .sns .fb, #menu-wrap .menu-content .menu-item .sns .gp, #menu-wrap .menu-content .menu-item .sns .ht, #menu-wrap .menu-content .menu-item .sns .ig, #menu-wrap .menu-content .menu-item .sns .tw {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#menu-wrap .menu-content .menu-item .sns .fb {
  background: #3B5998
}

#menu-wrap .menu-content .menu-item .sns .tw {
  background: #00ACED
}

#menu-wrap .menu-content .menu-item .sns .gp {
  background: #DD4B39
}

#menu-wrap .menu-content .menu-item .sns .ht {
  background: #00A4DE
}

#menu-wrap .menu-content .menu-item .sns .ab {
  background: #2d8c3c
}

#menu-wrap .menu-content .menu-item .sns .li {
  background: #00C306
}

#menu-wrap .menu-content .menu-item .sns .ig {
  background: #CF2F91
}

#menu-wrap .menu-content .menu-item .sns a:hover .fb, #menu-wrap .menu-content .menu-item .sns a:hover .gp, #menu-wrap .menu-content .menu-item .sns a:hover .ht, #menu-wrap .menu-content .menu-item .sns a:hover .ig, #menu-wrap .menu-content .menu-item .sns a:hover .li, #menu-wrap .menu-content .menu-item .sns a:hover .tw {
  opacity: 0.7;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#menu-wrap .menu-content .menu-section {
  width: 90%;
  margin: 30px auto 0 auto
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-section {
    width: 95%;
    margin: 30px auto 20px auto
  }
}

#menu-wrap .menu-content .menu-section h4 {
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  display: inline-block;
  padding-bottom: 4px
}

#menu-wrap .menu-content .menu-section li {
  padding: 10px 5px
}

@media (max-width:1023px) {
  #menu-wrap .menu-content .menu-section li {
    width: 50%
  }
}

#menu-wrap .menu-content .menu-section .image {
  border-radius: 6px;
  margin-bottom: 12px
}

#menu-wrap .menu-content .menu-section .text {
  font-size: 12px;
  font-size: 1.2rem
}

#menu-wrap .menu-content .menu-section .text i {
  vertical-align: middle
}

#menu-wrap .menu-content .menu-section a {
  color: #fff
}

#menu-wrap .menu-content .menu-section a:hover {
  color: #b4df6c
}

@media (max-width:767px) {
  #menu-wrap .menu-content .menu-section i {
    display: none
  }
}

#menu-wrap .menu-content .menu-section .contact, #menu-wrap .menu-content .menu-section .experience {
  margin: 0 10px;
  -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1)
}

#menu-wrap .menu-content .menu-section .contact:hover, #menu-wrap .menu-content .menu-section .experience:hover {
  background: #fff;
  color: #9ec45f
}

#menu-wrap .menu-content .menu-section .contact h4, #menu-wrap .menu-content .menu-section .experience h4 {
  border-bottom: none;
  margin-bottom: 0
}

#menu-wrap .menu-content .menu-section .contact a, #menu-wrap .menu-content .menu-section .experience a {
  color: #fff
}

#menu-wrap .menu-content .menu-section .contact {
  background: #181818;
  border: 2px solid #181818
}

#menu-wrap .menu-content .menu-section .contact:hover h4 {
  color: #181818
}

#menu-wrap .menu-content .menu-section .experience {
  background: #9ec45f;
  border: 2px solid #b4df6c
}

#menu-wrap .menu-content .menu-section .experience:hover h4 {
  color: #9ec45f
}

#menu-wrap .menu-content .image .src {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

#menu-wrap .menu-content .image .src:after {
  content: '';
  width: 100%;
  display: block;
  padding: calc(100% * 9 / 16) 0 0
}

#menu:focus {
  -webkit-box-shadow: none;
  box-shadow: none
}

#submenu {
  display: none;
  width: 45px;
  height: 45px;
  min-width: initial;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  text-align: center;
  position: fixed;
  top: 45px;
  right: 0;
  z-index: 1000
}

#submenu div {
  width: 24px;
  height: 2px;
  background: #fff;
  border-radius: 10px;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#submenu div:first-child {
  top: 35%
}

#submenu div:nth-child(3) {
  top: 65%
}

#visual {
  width: 100%;
  height: 70vh;
  background: #fff;
  overflow: hidden;
  position: relative
}

@media (max-width:1023px) {
  #visual {
    height: 80vh;
    padding-top: 73px
  }
}

#visual .text {
  width: auto;
  color: #404040;
  font-family: "游明朝", "Lato", "Noto Sans Japanese", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  padding: 0;
  position: absolute;
  top: 30%;
  left: 0;
  right: 0;
  z-index: 10
}

@media (max-width:767px) {
  #visual .text {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
  }
}

#visual .text .title {
  font-size: 40px;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 5px;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline;
  border: solid #404040;
  border-width: 2px 0
}

@media (max-width:1023px) {
  #visual .text .title {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 10px 0;
    letter-spacing: 2px
  }
}

#visual .text .subtitle {
  font-size: 24px;
  font-size: 2.4rem;
  color: #fff
}

#visual .text .description {
  font-size: 40px;
  font-size: 4rem;
  background: rgba(158, 196, 95, 0.6);
  border: 1px solid #b4df6c;
  outline: solid 6px rgba(158, 196, 95, 0.6);
  color: #fff;
  display: inline-block;
  padding: 40px;
  opacity: 0;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.3)
}

@media (max-width:1023px) {
  #visual .text .description {
    font-size: 50px;
    font-size: 5rem
  }
}

@media (max-width:767px) {
  #visual .text .description {
    font-size: 42px;
    font-size: 4.2rem;
    padding: 0 20px
  }
}

@media (max-width:767px) {
  #visual .text .description {
    font-size: 20px;
    font-size: 2rem;
    padding: 0 20px
  }
}

#visual .image img {
  padding-top: 120px
}

@media (max-width:767px) {
  #visual .image img {
    max-width: 600px;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}

#visual .logomark {
  position: absolute;
  top: 20%;
  left: 0;
  right: 0
}

#visual .pagedown {
  position: absolute;
  bottom: 210px;
  left: 0;
  right: 0;
  z-index: 100
}

@media (max-width:1023px) {
  #visual .pagedown {
    bottom: 400px
  }
}

@media (max-width:767px) {
  #visual .pagedown {
    bottom: 120px
  }
}

#visual .pagedown:after {
  width: 2px;
  height: 20vh;
  content: "";
  display: block;
  position: absolute;
  bottom: 25px;
  left: 50%;
  margin-left: -1px;
  background: #9ec45f
}

#visual .pagedown span {
  background: #9ec45f;
  border-radius: 50%;
  line-height: 0;
  padding: 6px
}

#visual .pagedown span i {
  color: #fff;
  -webkit-animation: pagedown 1.5s infinite linear;
  animation: pagedown 1.5s infinite linear
}

#visual .bx-wrapper {
  border: 0;
  border-bottom: 5px solid #fff;
  margin-bottom: 0
}

#visual .bx-viewport {
  width: 100%
}

#visual .bx-pager {
  padding: 20px 0
}

#visual .bx-pager .bx-pager-item {
  font-size: 0;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  padding: 0 15px
}

#visual .bx-pager .bx-pager-item a {
  background: #9ec45f;
  width: 15px;
  height: 15px;
  display: block;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#visual .bx-pager .bx-pager-item a.active {
  background: #181818;
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5)
}

#visual video {
  width: 100%;
  min-height: 400px
}

@media (max-width:1023px) {
  #visual video {
    width: initial;
    min-height: 100vh
  }
}

#visual #catchcopy {
  width: 40%;
  background: #fff;
  display: block;
  opacity: 0;
  padding: 60px 30px;
  position: absolute;
  text-align: center;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10
}

@media (max-width:1023px) {
  #visual #catchcopy {
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(166, 217, 0, 0.1)), to(rgba(255, 68, 84, 0.1))), rgba(0, 0, 0, 0.6);
    background: -webkit-linear-gradient(top, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.6);
    background: -o-linear-gradient(top, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.6);
    background: linear-gradient(to bottom, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.6);
    margin-bottom: 1px;
    padding: 30px 0;
    position: static;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
  }
}

#visual #catchcopy .title {
  width: 100%;
  font-size: 30px;
  font-size: 3rem;
  margin: 0 auto 12px auto
}

@media (max-width:1023px) {
  #visual #catchcopy .title {
    width: 95%;
    font-size: 20px;
    font-size: 2rem
  }
}

#visual #catchcopy .description {
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 auto 16px auto
}

@media (max-width:1023px) {
  #visual #catchcopy .description {
    width: 95%
  }
}

#visual #catchcopy .btn {
  width: 100%;
  margin: auto;
  text-align: center
}

#visual #catchcopy .btn a {
  width: 80%;
  background: -webkit-gradient(linear, right top, left top, from(#9ec45f), to(#b4df6c));
  background: -webkit-linear-gradient(right, #9ec45f, #b4df6c);
  background: -o-linear-gradient(right, #9ec45f, #b4df6c);
  background: linear-gradient(to left, #9ec45f, #b4df6c);
  color: #fff;
  display: block;
  margin: auto;
  padding: 16px
}

@media (max-width:1023px) {
  #visual #catchcopy .btn a {
    width: 100%
  }
}

#visual #catchcopy .number {
  font-size: 24px;
  font-size: 2.4rem
}

#visual #catchcopy .number i {
  margin-right: 10px;
  vertical-align: middle
}

#visual #catchcopy {
  top: calc(50% + 40px);
  left: -400px;
  right: 0;
  margin: auto
}

@media (max-width:1023px) {
  #visual #catchcopy {
    color: #fff
  }
}

#visual #bg {
  width: 100%;
  height: calc(85vh - 146px);
  background-size: cover;
  background-position: bottom;
  padding-top: 147px
}

@media (max-width:1023px) {
  #visual #bg {
    height: calc(100vh - 70px)
  }
}

#visual #bg_ani {
  width: 100%;
  height: 100vh;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(166, 217, 0, 0.1)), to(rgba(255, 68, 84, 0.1))), rgba(0, 0, 0, 0.3);
  background: -webkit-linear-gradient(top, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.3);
  background: -o-linear-gradient(top, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.3);
  background: linear-gradient(to bottom, rgba(166, 217, 0, 0.1) 0%, rgba(255, 68, 84, 0.1) 100%), rgba(0, 0, 0, 0.3);
  -webkit-animation: huerotator 3s infinite alternate;
  animation: huerotator 3s infinite alternate;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(0%) skewX(150deg);
  -ms-transform: translateX(0%) skewX(150deg);
  transform: translateX(0%) skewX(150deg)
}

@media (max-width:1023px) {
  #visual #bg_ani {
    display: none
  }
}

#visual #bg_ani2 {
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(120%) skewX(150deg);
  -ms-transform: translateX(120%) skewX(150deg);
  transform: translateX(120%) skewX(150deg)
}

@media (max-width:1023px) {
  #visual #bg_ani2 {
    display: none
  }
}

#visual #img_ani {
  opacity: 0;
  position: absolute;
  bottom: -50px;
  right: -600px;
  left: 0;
  margin: auto
}

@media (max-width:1023px) {
  #visual #img_ani {
    width: 100%;
    right: 0;
    bottom: -10px
  }
}

#visual #visual-bn {
  position: absolute;
  bottom: 30px;
  right: 50px;
  text-align: left;
  z-index: 200
}

@media (max-width:767px) {
  #visual #visual-bn {
    display: none
  }
}

#visual #news {
  background: rgba(158, 196, 95, 0.5);
  padding: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 100
}

@media (max-width:767px) {
  #visual #news {
    height: 80px;
    padding: 10px
  }
}

#visual #news .inner, #visual #news .table2 table, #visual #news .table table, .table2 #visual #news table, .table #visual #news table {
  position: relative
}

#visual #news h2 {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  width: 60px;
  height: 60px;
  border-radius: 6px 0 0 6px;
  color: #fff;
  font-weight: bold;
  line-height: 60px;
  text-align: center
}

#visual #news a {
  display: block;
  padding-left: 32px;
  -webkit-transform: skewX(30deg);
  -ms-transform: skewX(30deg);
  transform: skewX(30deg)
}

@media (max-width:767px) {
  #visual #news a {
    padding-left: 16px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
  }
}

#visual #news .ticker {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  width: 100%;
  height: 60px;
  background: #fff;
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  -webkit-transform: skewX(-30deg);
  -ms-transform: skewX(-30deg);
  transform: skewX(-30deg)
}

@media (max-width:1023px) {
  #visual #news .ticker {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
  }
}

#visual #news li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 60px
}

#visual #news .inner, #visual #news .table2 table, #visual #news .table table, .table2 #visual #news table, .table #visual #news table {
  text-align: left
}

#visual #news .after-news {
  position: absolute;
  top: -90px;
  right: -80px;
  width: 200px;
  height: 200px;
  z-index: 10;
  background-size: cover
}

@media (max-width:1023px) {
  #visual #news .after-news {
    top: -100px;
    right: -30px;
    width: 100px;
    height: 100px
  }
}

#visual #mv-link {
  width: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 100
}

#visual #mv-link a {
  width: 100%;
  height: 100%;
  display: block
}

#visual #mv-nav {
  width: 100%;
  position: absolute;
  bottom: 160px;
  z-index: 990
}

#visual #mv-nav a {
  color: #fff;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#visual #mv-nav a i {
  font-size: 14px;
  font-size: 1.4rem;
  vertical-align: middle;
  line-height: 36px
}

#visual #mv-nav a:hover {
  color: #383838;
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#visual #mv-nav li {
  display: inline-block;
  padding: 0 8px
}

#visual #mv-nav li.active a {
  color: #383838;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#visual .vegas-overlay {
  opacity: 1
}

#visual-sub {
  height: 50vh;
  overflow: hidden;
  position: relative
}

@media (max-width:767px) {
  #visual-sub {
    height: 40vh
  }
}

#visual-sub .image {
  height: 100%;
  top: 0;
  position: relative;
  z-index: 10;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

@media (max-width:1023px) {
  #visual-sub .image {
    min-height: 0
  }
}

@media (max-width:1023px) {
  #visual-sub .image {
    background-position: 0 0
  }
}

#visual-sub .image .text {
  width: 60%;
  color: #fff;
  font-family: "游明朝", "Lato", "Noto Sans Japanese", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  margin: auto;
  padding: 0;
  position: absolute;
  top: calc(50%);
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 10
}

@media (max-width:1023px) {
  #visual-sub .image .text {
    width: 95%
  }
}

#visual-sub .image .text .title {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 5px;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline;
  z-index: 10
}

@media (max-width:1023px) {
  #visual-sub .image .text .title {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 10px 0;
    letter-spacing: 2px
  }
}

#visual-sub .image .text .subtitle {
  font-size: 66px;
  font-size: 6.6rem;
  font-family: "Anton", serif;
  letter-spacing: 0.06em
}

#visual-sub .image .text .subtitle:first-letter {
  text-transform: uppercase
}

@media (max-width:767px) {
  #visual-sub .image .text .subtitle {
    font-size: 50px;
    font-size: 5rem
  }
}

#visual-sub .image .text .description {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 20px 60px
}

@media (max-width:1023px) {
  #visual-sub .image .text .description {
    font-size: 10px;
    font-size: 1rem;
    padding: 20px;
    display: none
  }
}

#visual-sub .tel {
  position: absolute;
  top: 5vh;
  right: 5vh
}

@media (max-width:1023px) {
  #visual-sub .tel {
    width: 90%;
    top: unset;
    bottom: 3vh;
    right: unset;
    margin: auto;
    left: 0;
    right: 0
  }
}

#visual-sub .tel div {
  line-height: 1
}

#visual-sub .tel .number {
  font-size: 36px;
  font-size: 3.6rem;
  margin: 0 0 10px
}

@media (max-width:1023px) {
  #visual-sub .tel .number {
    font-size: 32px;
    font-size: 3.2rem
  }
}

@media (max-width:1023px) {
  #visual-sub .tel .open {
    font-size: 14px;
    font-size: 1.4rem
  }
}

#visual-sub #visual-bn {
  position: absolute;
  bottom: 30px;
  right: 50px;
  text-align: left;
  z-index: 200
}

@media (max-width:767px) {
  #visual-sub #visual-bn {
    display: none
  }
}

#visual-sub .vegas-slide {
  height: 50vh
}

#visual-sub .vegas-overlay {
  opacity: 1
}

#gnav {
  width: 100%;
  background: rgba(158, 196, 95, 0.9);
  background: -moz-linear-gradient(top, rgba(158, 196, 95, 0.9) 0%, rgba(158, 196, 95, 0.9) 50%, rgba(158, 196, 95, 0.9) 51%, rgba(158, 196, 95, 0.9) 100%);
  background: -webkit-linear-gradient(top, rgba(158, 196, 95, 0.9) 0%, rgba(158, 196, 95, 0.9) 50%, rgba(158, 196, 95, 0.9) 51%, rgba(158, 196, 95, 0.9) 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(158, 196, 95, 0.9)), color-stop(50%, rgba(158, 196, 95, 0.9)), color-stop(51%, rgba(158, 196, 95, 0.9)), to(rgba(158, 196, 95, 0.9)));
  background: -o-linear-gradient(top, rgba(158, 196, 95, 0.9) 0%, rgba(158, 196, 95, 0.9) 50%, rgba(158, 196, 95, 0.9) 51%, rgba(158, 196, 95, 0.9) 100%);
  background: linear-gradient(to bottom, rgba(158, 196, 95, 0.9) 0%, rgba(158, 196, 95, 0.9) 50%, rgba(158, 196, 95, 0.9) 51%, rgba(158, 196, 95, 0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='rgba($main-keycolor,.9)', endColorstr='darken(rgba($main-keycolor,.9),2%)', GradientType=0);
  margin: auto;
  position: relative;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #gnav {
    display: none
  }
}

#gnav:after {
  content: '';
  height: 10px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0
}

#gnav .nav {
  text-align: center
}

@media (max-width:1023px) {
  #gnav .nav {
    width: 80%;
    height: calc(100vh);
    background: #181818;
    overflow-y: scroll;
    padding: 0 0 60px;
    display: inline-block;
    vertical-align: middle;
    zoom: 1;
    *display: inline;
    text-align: left;
    position: relative;
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-overflow-scrolling: touch
  }
}

@media (min-width:500px) and (max-width:768px) {
  #gnav .nav {
    width: 30vw
  }
}

#gnav .nav>ul {
  font-size: 0
}

#gnav .nav>ul>li {
  width: auto;
  overflow: hidden;
  position: relative;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#gnav .nav>ul>li:after {
  content: '';
  height: 20px;
  border-right: 1px solid #9ec45f;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%) rotate(15deg);
  -ms-transform: translateY(-50%) rotate(15deg);
  transform: translateY(-50%) rotate(15deg);
  -webkit-transform-origin: center top;
  -ms-transform-origin: center top;
  transform-origin: center top
}

@media (max-width:1023px) {
  #gnav .nav>ul>li {
    display: block;
    position: static
  }
}

#gnav .nav>ul>li.last:after {
  content: none
}

#gnav .nav>ul>li.sp {
  display: none
}

@media (max-width:1023px) {
  #gnav .nav>ul>li.sp {
    display: block
  }
}

#gnav a {
  height: 100%;
  display: block;
  color: #fff;
  opacity: 1;
  padding: 18px 30px;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #gnav a {
    color: #1d3994;
    font-size: 18px;
    font-size: 1.8rem;
    border-top: 1px solid #222
  }
}

#gnav a:hover {
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#gnav a:hover+.lower {
  opacity: 1;
  pointer-events: initial;
  visibility: visible
}

#gnav a:hover strong {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#gnav a:hover strong:after {
  height: 5px
}

#gnav i {
  font-size: 21px;
  font-size: 2.1rem;
  background: #9ec45f;
  border-radius: 50%;
  color: #fff;
  display: none;
  padding: 6px;
  position: absolute;
  top: 50%;
  left: 10px;
  margin: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  vertical-align: middle;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #gnav i {
    top: 25px
  }
}

#gnav strong {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  font-weight: normal;
  white-space: normal
}

#gnav strong:after {
  content: '';
  width: calc(100% - 30px);
  height: 0;
  background-color: #fe0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #gnav strong {
    padding-left: 0
  }
}

#gnav .text {
  font-size: 0;
  margin-left: 0;
  z-index: 20
}

#gnav .ruby {
  font-size: 10px;
  font-size: 1rem;
  color: #fe0;
  font-family: 'Anton', sans-serif
}

@media (max-width:1023px) {
  #gnav .ruby {
    position: absolute;
    top: 15px;
    right: 3vh
  }
}

#gnav .lower {
  opacity: 0;
  padding: 0;
  pointer-events: none;
  position: fixed;
  top: 146px;
  left: 0;
  right: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #gnav .lower {
    overflow-x: hidden
  }
}

#gnav .lower:hover {
  opacity: 1;
  pointer-events: initial;
  visibility: visible
}

#gnav .lower:after {
  content: '';
  display: block
}

#gnav .lower-inner {
  background: rgba(51, 51, 51, 0.95)
}

#gnav .lower-inner strong {
  color: #fff;
  font-weight: bold
}

#gnav .lower a {
  color: #9ec45f;
  overflow: hidden;
  padding: 0;
  position: relative;
  white-space: nowrap
}

@media (max-width:1023px) {
  #gnav .lower a {
    color: #fff;
    border-top: 0;
    padding: 14px 40px 14px 0
  }
}

#gnav .lower a:hover {
  background: none;
  opacity: .8
}

#gnav .lower a:hover strong:after {
  content: none
}

#gnav .lower .text {
  width: 100%;
  background: none;
  position: static;
  bottom: 0;
  padding: 6px
}

#gnav .lower ul {
  width: 100%
}

@media (max-width:1023px) {
  #gnav .lower ul {
    background: none
  }
}

#gnav .lower li {
  height: auto;
  border: 0;
  margin-bottom: 0;
  padding: 30px 20px
}

#gnav .lower li:hover {
  background: none
}

@media (max-width:1023px) {
  #gnav .lower li {
    padding: 0
  }
}

#gnav .lower .image {
  width: 100%;
  border-radius: 50%;
  padding: 0;
  position: relative
}

#gnav .lower .image .src {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

#gnav .lower .image .src:after {
  content: '';
  width: 100%;
  display: block;
  padding: 100% 0 0
}

#gnav .lower .lower-submenu>a {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline
}

#gnav .lower .lower-submenu-list {
  width: 60%;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline
}

#gnav .lower .lower-submenu-item {
  width: 100%;
  padding: 0px;
  text-align: left
}

#gnav .lower .lower-submenu-item i {
  font-size: 12px;
  font-size: 1.2rem;
  background: none;
  color: #9ec45f;
  display: inline-block;
  margin-right: 6px;
  padding: 0;
  position: static;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0)
}

#gnav .lower .lower-submenu .title strong {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 12px
}

#gnav .lower .lower-submenu .image {
  border-radius: 0
}

#gnav .lower .lower-submenu .image .src:after {
  padding: calc(100% * 9 / 16) 0 0
}

@media (max-width:1023px) {
  #gnav .lower {
    display: none;
    pointer-events: initial;
    position: static;
    background: none;
    padding: 0 0 0 20px
  }
  #gnav .lower.active {
    width: 100%;
    height: calc(100vh - 45px);
    background: #9ec45f;
    display: block;
    opacity: 1;
    position: absolute;
    top: 0
  }
  #gnav .lower.active ul {
    top: 45px
  }
}

#gnav .subnav {
  display: none
}

.bullet {
  padding: 0
}

@media (max-width:767px) {
  .bullet {
    text-align: left
  }
}

.bullet li {
  margin-bottom: 20px;
  padding: 0 40px;
  position: relative
}

@media (max-width:1023px) {
  .bullet li {
    width: 33.33333%!important
  }
}

@media (max-width:767px) {
  .bullet li {
    width: 100%!important;
    text-align: center;
    margin-left: 0
  }
}

.bullet li .radius, .bullet li a {
  width: 95%;
  border-radius: 6px;
  display: block;
  position: relative;
  margin: auto
}

.bullet li .image {
  background: none;
  border-radius: 50%;
  overflow: hidden
}

.bullet li .image .src {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.5) inset;
  box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.5) inset;
  border-radius: 50%;
  display: inline-block;
  line-height: 1;
  overflow: hidden
}

.bullet li .image .src:after {
  content: '';
  background: rgba(158, 196, 95, 0.8);
  display: block;
  padding: 100% 0 0
}

.bullet li .text {
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
  background: none;
  color: #666;
  margin-left: 5px;
  padding: 16px 10px;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

.bullet li .text strong {
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  font-weight: bold
}

.bullet li .text strong.small {
  font-size: 12px;
  font-size: 1.2rem
}

.bullet .parts-image-radius50 {
  width: 40%
}

@media (max-width:767px) {
  .bullet .parts-image-radius50 {
    width: 100%
  }
}

.bullet .wrap {
  width: 60%;
  position: static
}

@media (max-width:767px) {
  .bullet .wrap {
    width: 100%
  }
}

.bullet:after {
  content: "";
  display: block;
  clear: both
}

#intro .bullet li {}

#intro .bullet li:first-child, #intro .bullet li:nth-child(4) {
  -webkit-transform: translateY(-20%);
  -ms-transform: translateY(-20%);
  transform: translateY(-20%)
}

@media (max-width:767px) {
  #intro .bullet li:first-child, #intro .bullet li:nth-child(4) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
  }
}

#intro .bullet li:nth-child(5), #intro .bullet li:nth-child(7) {
  -webkit-transform: translateY(20%);
  -ms-transform: translateY(20%);
  transform: translateY(20%)
}

@media (max-width:767px) {
  #intro .bullet li:nth-child(5), #intro .bullet li:nth-child(7) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
  }
}

#intro .bullet li .image {
  overflow: unset
}

#intro .bullet li .image:after {
  content: '';
  width: 60%;
  height: 20px;
  background: #404040;
  border-radius: 50%;
  display: block;
  position: absolute;
  bottom: -8px;
  left: 0;
  right: 0;
  margin: auto;
  opacity: 0.4;
  -webkit-filter: blur(8px);
  filter: blur(8px)
}

.d_layout_colum-inner.col7 {
  width: calc(100% / 12 * 7)!important
}

@media (max-width:1023px) {
  .d_layout_colum-inner.col7 {
    width: 100%!important
  }
}

.d_layout_colum-inner.col6 {
  width: 50%!important;
  padding: 0 64px
}

@media (max-width:1023px) {
  .d_layout_colum-inner.col6 {
    width: 100%!important;
    padding: 0 16px
  }
  .d_layout_colum-inner.col6+.col3 {
    padding-left: 16px
  }
}

.d_layout_colum-inner.col5 {
  width: calc(100% / 12 * 5)!important;
  padding: 64px 64px 0 0
}

@media (max-width:1023px) {
  .d_layout_colum-inner.col5 {
    width: 100%!important;
    padding: 64px 16px 0 16px
  }
}

.d_layout_colum-inner.col3 {
  width: 25%!important;
  padding-right: 64px
}

@media (max-width:1023px) {
  .d_layout_colum-inner.col3 {
    width: 50%!important;
    padding-right: 16px
  }
}

.d_layout_colum-inner.translateY90 {
  -webkit-transform: translateY(90px);
  -ms-transform: translateY(90px);
  transform: translateY(90px)
}

.d_layout_colum-inner .src:after {
  padding: 150% 0 0!important
}

.d_layout_colum-inner .src.vh50:after {
  padding: 50vh 0 0!important
}

.d_layout_colum-inner .headcopy {
  margin-bottom: 32px!important
}

.d_layout_colum-inner .headcopy .title {
  font-size: 14px!important;
  font-size: 1.4rem!important;
  background: none!important;
  color: initial!important;
  position: absolute;
  top: 24px;
  right: 0
}

@media (max-width:1023px) {
  .d_layout_colum-inner .headcopy .title {
    font-size: 12px!important;
    font-size: 1.2rem!important;
    top: 42px
  }
}

.d_layout_colum-inner .headcopy .subtitle {
  font-size: 40px!important;
  font-size: 4rem!important;
  letter-spacing: 0
}

.d_layout_colum-inner .headcopy .subtitle.none:after {
  content: none
}

@media (max-width:1023px) {
  .d_layout_colum-inner .headcopy .subtitle {
    font-size: 32px!important;
    font-size: 3.2rem!important
  }
}

.d_layout_colum-inner .headcopy .tit {
  font-weight: bold
}

.d_layout_colum-inner .description {
  text-align: left;
  margin-bottom: 0!important
}

.d_layout_colum h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 32px;
  text-align: left
}

@media (max-width:1023px) {
  .d_layout_colum h3 {
    font-size: 20px;
    font-size: 2rem
  }
}

.d_layout_colum h4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  padding-left: 40px;
  position: relative
}

.d_layout_colum h4:before {
  content: '';
  width: 32px;
  height: 1px;
  background: #b4df6c;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-1px);
  -ms-transform: translateY(-1px);
  transform: translateY(-1px);
  z-index: 10
}

footer {
  width: 100%;
  color: #fff;
  background: rgba(0, 0, 0, 0.85);
  padding: 40px 20px 40px 20px;
  position: relative;
  z-index: 10
}

@media (max-width:1023px) {
  footer {
    font-size: 18px;
    font-size: 1.8rem
  }
}

@media (max-width:767px) {
  footer {
    padding: 40px 20px 100px 20px;
    z-index: 100
  }
}

footer h1 {
  font-size: 24px;
  font-size: 2.4rem;
  display: inline-block;
  font-weight: bold;
  letter-spacing: 2px;
  letter-spacing: 3px;
  margin: 0 0 40px
}

@media (max-width:1023px) {
  footer h1 {
    font-size: 18px;
    font-size: 1.8rem
  }
}

footer h1 img {
  width: 100%
}

footer h2 {
  font-weight: lighter;
  margin: 0 0 30px
}

@media (max-width:1023px) {
  footer h2 {
    font-size: 12px;
    font-size: 1.2rem;
    text-align: justify
  }
}

footer .about {
  background: #fff;
  border-radius: 10px;
  color: #222;
  padding: 20px;
  font-size: 0;
  margin: 0 0 30px
}

@media (max-width:1023px) {
  footer .about {
    padding: 0
  }
}

footer .about>div {
  width: 50%;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 10px;
  border-right: 1px solid #666
}

@media (max-width:1023px) {
  footer .about>div {
    font-size: 16px;
    font-size: 1.6rem;
    width: 100%;
    border-right: 0;
    padding: 10px;
    border-bottom: 1px solid #666
  }
}

@media (max-width:767px) {
  footer .about>div {
    font-size: 12px;
    font-size: 1.2rem;
    border-bottom: 0
  }
}

footer .about>div:last-child {
  border: 0
}

@media (max-width:767px) {
  footer .about .contact {
    width: 100%;
    background: #fff;
    margin: auto;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0
  }
}

footer .about .number {
  font-size: 40px;
  font-size: 4rem;
  color: #9ec45f;
  font-family: 'Impact';
  font-weight: bold
}

footer .about .number img {
  width: 30px
}

footer .address {
  text-align: left
}

footer .list {
  width: 50%;
  border: 1px solid;
  border-radius: 10px;
  margin: 0 auto 30px auto;
  padding: 30px
}

@media (max-width:767px) {
  footer .list {
    width: 100%;
    padding: 10px
  }
}

footer .list i {
  font-size: 20px;
  font-size: 2rem;
  margin-right: 10px;
  vertical-align: middle
}

footer nav {
  padding: 10px 0
}

footer nav>ul>li {
  margin-bottom: 10px;
  padding-right: 1em;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  font-size: 14px;
  font-size: 1.4rem
}

footer nav strong {
  display: block
}

footer nav a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

footer nav a:hover {
  color: #ccc;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

footer nav i {
  display: none!important
}

footer nav .lower {
  display: none
}

footer .copyright {
  color: #fff
}

@media (max-width:1023px) {
  footer .copyright {
    font-size: 12px;
    font-size: 1.2rem
  }
}

footer {
  border-top: 1px dashed #ccc;
  background: #fff;
  padding-bottom: 110px
}

footer:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

footer.type2 {
  background: rgba(255, 255, 255, 0.9);
  padding: 40px 20px 110px 20px
}

footer.type2 .title {
  font-family: 'Anton', sans-serif;
  margin-bottom: 12px;
  text-align: left;
  text-transform: uppercase;
  background: -webkit-gradient(linear, left top, right top, from(#9ec45f), to(#b4df6c)) 0% center/200% auto;
  background: -webkit-linear-gradient(left, #9ec45f 0%, #b4df6c 100%) 0% center/200% auto;
  background: -o-linear-gradient(left, #9ec45f 0%, #b4df6c 100%) 0% center/200% auto;
  background: linear-gradient(to right, #9ec45f 0%, #b4df6c 100%) 0% center/200% auto;
  background-clip: text;
  -webkit-background-clip: text;
  text-fill-color: transparent;
  -webkit-text-fill-color: transparent;
  -webkit-animation: rainbow 4s linear infinite;
  animation: rainbow 4s linear infinite;
  opacity: .8
}

footer.type2 li {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 5px;
  text-align: left
}

footer.type2 .copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  margin-top: 20px;
  padding: 10px 0
}

footer.type2 a {
  color: #9ec45f
}

footer.type2 h1 img {
  width: 100%
}

footer.type2 nav a {
  color: #fff;
  text-align: center
}

footer.type2 .about {
  background: initial;
  border: 1px solid #9ec45f;
  color: #333
}

footer.type2 .about .number {
  color: #333
}

footer.type2 .copyright {
  color: rgba(255, 255, 255, 0.3)
}

footer .fix-footer {
  display: none
}

@media (max-width:767px) {
  footer .fix-footer {
    font-size: 0px;
    font-size: 0rem;
    width: 100%;
    background: #9ec45f;
    display: block;
    margin: auto;
    padding: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0
  }
  footer .fix-footer .item {
    font-size: 12px;
    font-size: 1.2rem;
    width: 50%
  }
  footer .fix-footer .item .number {
    font-size: 12px;
    font-size: 1.2rem
  }
  footer .fix-footer .item i {
    font-size: 20px;
    font-size: 2rem;
    display: block
  }
  footer .fix-footer .item a {
    border-right: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff;
    display: block;
    padding: 14px 0
  }
  footer .fix-footer .item:nth-child(3) a {
    border-right: 0
  }
}

body #header {
  text-align: left;
  z-index: 990;
  -webkit-transition: all 1.2s ease;
  -o-transition: all 1.2s ease;
  transition: all 1.2s ease
}

body.header-top {
  width: 100%
}

body.header-left #header {
  width: 15vw;
  height: 100vh;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0
}

@media (max-width:1023px) {
  body.header-left #header {
    width: 100vw;
    height: 45px
  }
}

body.header-left #contents, body.header-left #visual, body.header-left #visual-sub, body.header-left footer {
  width: calc(85vw - 10px);
  margin-left: 15vw
}

@media (max-width:1023px) {
  body.header-left #contents, body.header-left #visual, body.header-left #visual-sub, body.header-left footer {
    width: 100vw;
    margin-left: 0
  }
}

body.header-left #gnav li {
  width: 100%;
  display: block
}

body.header-left #gnav .lower {
  width: 15vw;
  top: 0;
  left: 15vw;
  bottom: 0;
  margin: auto;
  padding: 0
}

body.header-left #gnav .lower:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 10px;
  -webkit-box-shadow: inset 6px 0 14px -4px rgba(0, 0, 0, 0.5);
  box-shadow: inset 6px 0 14px -4px rgba(0, 0, 0, 0.5)
}

@media (max-width:1023px) {
  body.header-left #gnav .lower {
    width: 100%;
    left: 0
  }
}

body #disp {
  height: 100vh;
  -webkit-transform: translateY(200px);
  -ms-transform: translateY(200px);
  transform: translateY(200px)
}

body #don {
  width: 100%;
  height: 100vh;
  background: #eee;
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  transform: translateY(0%);
  position: fixed;
  top: 0;
  z-index: 980
}

body[data-status=menu] #menu div {
  border-bottom: 1px #fff solid
}

@media (max-width:1023px) {
  body[data-status=menu] {
    overflow: hidden
  }
  body[data-status=menu] #menu div:first-child {
    -webkit-transform: rotate(-45deg) translate(-50%, -50%);
    -ms-transform: rotate(-45deg) translate(-50%, -50%);
    transform: rotate(-45deg) translate(-50%, -50%)
  }
  body[data-status=menu] #menu div:nth-child(2) {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
  }
  body[data-status=menu] #menu div:nth-child(3) {
    -webkit-transform: rotate(45deg) translate(-50%, -50%);
    -ms-transform: rotate(45deg) translate(-50%, -50%);
    transform: rotate(45deg) translate(-50%, -50%)
  }
  body[data-status=menu] #gnav {
    opacity: 1;
    pointer-events: initial;
    z-index: 1000;
    -webkit-transform: scaleY(1);
    -ms-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:first-of-type {
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s
  }
  body[data-status=menu] #gnav .nav li:first-of-type a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(2) {
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(2) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(3) {
    -webkit-transition-delay: 0.4s;
    -o-transition-delay: 0.4s;
    transition-delay: 0.4s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(3) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(4) {
    -webkit-transition-delay: 0.6s;
    -o-transition-delay: 0.6s;
    transition-delay: 0.6s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(4) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(5) {
    -webkit-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(5) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(6) {
    -webkit-transition-delay: 0.7s;
    -o-transition-delay: 0.7s;
    transition-delay: 0.7s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(6) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(7) {
    -webkit-transition-delay: 0.8s;
    -o-transition-delay: 0.8s;
    transition-delay: 0.8s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(7) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(8) {
    -webkit-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    transition-delay: 0.1s
  }
  body[data-status=menu] #gnav .nav li:nth-of-type(8) a {
    color: #f8f8f8;
    -webkit-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 3s cubic-bezier(0.215, 0.61, 0.355, 1)
  }
}

@media (max-width:1023px) {
  body[data-status-menu=on] #gnav .nav {
    overflow-y: hidden
  }
  body[data-status-menu=on] #submenu {
    display: block!important
  }
  body[data-status-menu=on] #submenu div:first-child {
    -webkit-transform: rotate(-45deg) translate(-50%, -50%)!important;
    -ms-transform: rotate(-45deg) translate(-50%, -50%)!important;
    transform: rotate(-45deg) translate(-50%, -50%)!important
  }
  body[data-status-menu=on] #submenu div:nth-child(2) {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
  }
  body[data-status-menu=on] #submenu div:nth-child(3) {
    -webkit-transform: rotate(45deg) translate(-50%, -50%)!important;
    -ms-transform: rotate(45deg) translate(-50%, -50%)!important;
    transform: rotate(45deg) translate(-50%, -50%)!important
  }
}

#side {
  width: 30%;
  padding: 0 0 0 40px;
  position: relative;
  z-index: 10
}

@media (max-width:1023px) {
  #side {
    width: 100%;
    max-width: 100%
  }
}

@media (max-width:767px) {
  #side {
    width: 95%;
    float: none;
    margin: 0 auto;
    padding: 20px 0
  }
}

#side h3 {
  color: #9ec45f
}

#side h3.title {
  margin-bottom: 16px
}

#side a {
  display: block;
  opacity: 1;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#side a:hover {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  opacity: .8
}

#side ul {
  background-color: #fff
}

#side li {
  padding: 0 0 10px 0
}

#side li:after {
  content: "";
  display: block;
  clear: both
}

#side li:last-child {
  border-bottom: 0
}

@media (max-width:767px) {
  #side li {
    width: 100%!important
  }
}

#side .bn {
  margin-bottom: 30px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5)
}

#side .image {
  width: 100px;
  margin-right: 10px;
  float: left
}

#side .image .src:after {
  padding: 100% 0 0
}

#side .text {
  color: #404040;
  overflow: hidden;
  padding: 0
}

#side .text .title {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: left;
  width: 100%
}

@media (max-width:767px) {
  #side .text .title {
    font-size: 14px;
    font-size: 1.4rem
  }
}

#side .title {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: left;
  text-shadow: none!important
}

#side .title i {
  font-size: 18px;
  font-size: 1.8rem;
  vertical-align: middle;
  padding-bottom: 4px
}

#side .box {
  margin-bottom: 20px
}

#side #archive ul {
  border: 0!important;
  margin-bottom: 20px;
  text-align: left
}

#side #archive li {
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  border-bottom: 0!important;
  padding: 0!important
}

#side #archive li a {
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
  border: 1px #eee solid;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 6px;
  display: inline-block;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#side #archive li a span {
  font-size: 12px;
  font-size: 1.2rem;
  background: #eee;
  border-radius: 50%;
  float: right;
  padding: 4px 10px
}

#side #archive li a:hover {
  background: #eee;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#side #archive li a:hover span {
  background: #fff
}

#fixarea {
  width: 100%;
  position: absolute;
  opacity: 0;
  z-index: 990;
  visibility: hidden
}

@media (max-width:767px) {
  #fixarea {
    display: none
  }
}

#fixarea .contact {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  background: #fff;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.03);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.03);
  position: fixed;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 100
}

#fixarea .contact i {
  -webkit-writing-mode: horizontal-tb;
  -ms-writing-mode: tb;
  writing-mode: horizontal-tb
}

#fixarea .contact a {
  padding: 40px 20px;
  display: block;
  white-space: nowrap
}

#fixarea .sns {
  background: #fff;
  position: fixed;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 100
}

#fixarea .sns ul {
  padding: 40px 10px
}

#fixarea .sns li {
  padding: 5px 0
}

#fixarea .sns .icon {
  width: 30px;
  height: 30px;
  fill: #fff;
  border-radius: 50%;
  padding: 0
}

#fixarea .sns svg {
  width: 20px
}

#fixarea .sns .fb, #fixarea .sns .gp, #fixarea .sns .ht, #fixarea .sns .ig, #fixarea .sns .li, #fixarea .sns .tw {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#fixarea .sns .fb {
  background: #3B5998
}

#fixarea .sns .tw {
  background: #00ACED
}

#fixarea .sns .gp {
  background: #DD4B39
}

#fixarea .sns .li {
  background: #00C306
}

#fixarea .sns .ht {
  background: #00A4DE
}

#fixarea .sns .ig {
  background: #CF2F91
}

#fixarea .sns a:hover .fb, #fixarea .sns a:hover .gp, #fixarea .sns a:hover .ht, #fixarea .sns a:hover .ig, #fixarea .sns a:hover .li, #fixarea .sns a:hover .tw {
  opacity: 0.7;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#fixarea .fixarea-cta {
  width: 100%;
  left: 0;
  bottom: 0;
  display: none;
  margin-bottom: 0;
  padding: 10px 0;
  position: fixed;
  vertical-align: top;
  background: rgba(158, 196, 95, 0.95);
  z-index: 900
}

#fixarea .fixarea-cta.active {
  display: block
}

#fixarea .fixarea-cta .inner, #fixarea .fixarea-cta .table2 table, #fixarea .fixarea-cta .table table, .table2 #fixarea .fixarea-cta table, .table #fixarea .fixarea-cta table {
  margin: 0 auto;
  max-width: 780px;
  overflow: hidden
}

#fixarea .fixarea-cta .close {
  cursor: pointer;
  padding: 2px 7px;
  background-color: #b5b5b5;
  margin-right: 10px;
  position: absolute;
  right: 0
}

#fixarea .fixarea-cta .close i {
  vertical-align: middle;
  margin-bottom: 3px
}

#fixarea .fixarea-cta .cta-l p {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  color: #ffffff;
  line-height: 2.7;
  font-weight: bold;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

#fixarea .fixarea-cta .cta-button a {
  font-size: 18px;
  font-size: 1.8rem;
  vertical-align: top;
  color: #fff!important;
  display: block;
  background: #fea60e;
  border-bottom: 4px solid #E49022;
  border-right: 4px solid #E49022;
  padding: 9px 40px;
  text-align: center;
  text-decoration: none;
  margin: 0;
  width: 300px;
  font-weight: bold
}

#fixarea .fixarea-cta .cta-button a i {
  font-size: 30px;
  font-size: 3rem;
  vertical-align: middle;
  margin-bottom: 3px
}

.tabs {
  margin-bottom: 64px
}

.tabs li {
  cursor: pointer;
  vertical-align: bottom;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.tabs li .tab {
  font-size: 14px;
  font-size: 1.4rem;
  color: #999;
  display: block;
  margin: 0 auto;
  padding: 16px 0;
  position: relative;
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275)
}

@media (max-width:1023px) {
  .tabs li .tab {
    width: 100%;
    font-size: 12px;
    font-size: 1.2rem
  }
}

.tabs li .tab:after {
  content: '▼';
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  margin: auto;
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275)
}

.tabs li .tab:hover {
  color: #181818
}

.tabs li.active {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.tabs li.active .tab {
  color: #fff;
  background: #9ec45f;
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275)
}

.tabs li.active .tab:after {
  color: #9ec45f;
  bottom: -10px
}

.tabs li.active i {
  color: #fff
}

.tabs li:last-child .tab {
  border-right: none
}

.tabs li i {
  width: 20px;
  height: 20px;
  background-size: cover;
  color: #666;
  display: inline-block;
  margin-right: 6px;
  margin-bottom: 3px;
  vertical-align: middle
}

@media (max-width:1023px) {
  #tab-contents {
    margin-bottom: 60px
  }
}

#tab-contents .contents {
  display: none;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

#tab-contents .contents.active {
  display: block;
  animation-duration: 1s;
  animation-name: fade-in;
  -moz-animation-duration: 1s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 1s;
  -webkit-animation-name: fade-in
}

#tab-contents .image {
  width: 100%!important
}

#tab-contents .image:after {
  padding: 0
}

@media (max-width:1023px) {
  #tab-contents .image {
    width: 100%!important
  }
}

@media (max-width:1023px) {
  #tab-contents .post-content {
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5)
  }
}

.cta {
  background: #f5f5f5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #d4d4d4;
  clear: both;
  font-size: 0;
  padding: 40px 0;
  position: relative;
  z-index: 10
}

.cta .tel {
  width: 50%;
  border-right: 1px solid #9ec45f;
  display: inline-block;
  vertical-align: top
}

@media (max-width:1023px) {
  .cta .tel {
    width: 50%
  }
}

@media (max-width:767px) {
  .cta .tel {
    display: none
  }
}

.cta .tel .number {
  font-size: 60px;
  font-size: 6rem;
  color: #9ec45f;
  font-family: 'Impact'
}

@media (max-width:1023px) {
  .cta .tel .number {
    font-size: 40px;
    font-size: 4rem
  }
}

.cta .mail {
  width: 50%;
  display: inline-block;
  vertical-align: top
}

@media (max-width:1023px) {
  .cta .mail {
    width: 50%
  }
}

@media (max-width:767px) {
  .cta .mail {
    width: 100%
  }
}

.cta .icon {
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 50%;
  margin: 0 auto 30px auto;
  padding: 10px
}

.cta .icon i {
  font-size: 40px;
  font-size: 4rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  color: #9ec45f
}

.cta .title {
  font-size: 24px;
  font-size: 2.4rem;
  color: #404040
}

.cta .description {
  font-size: 14px;
  font-size: 1.4rem;
  color: #404040
}

.cta .contact a {
  width: 70%;
  font-size: 24px;
  font-size: 2.4rem;
  background: #fff;
  border: 5px solid #9ec45f;
  border-radius: 6px;
  color: #9ec45f;
  display: inline-block;
  font-weight: bold;
  margin: 10px auto;
  padding: 20px 40px
}

@media (max-width:1023px) {
  .cta .contact a {
    width: 90%;
    font-size: 18px;
    font-size: 1.8rem
  }
}

#gmap {
  height: 40vh;
  background: #eee;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%)
}

#gmap iframe {
  width: 100%
}

.maps .title {
  font-size: 30px;
  font-size: 3rem
}

.maps .subtitle {
  font-size: 26px;
  font-size: 2.6rem;
  font-family: "Anton", serif
}

.background-blur:before {
  content: '';
  background: inherit;
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: -1
}

.circle li {
  height: auto;
  position: relative
}

.circle li:before {
  content: "";
  display: block;
  padding-top: 100%
}

.circle .image {
  border-radius: 100%!important;
  display: block!important;
  position: absolute!important;
  top: 0!important;
  left: 0!important;
  right: 0!important;
  bottom: 0!important;
  width: 80%!important;
  height: 80%!important;
  margin: auto!important
}

.section {
  background: #f5f5f5;
  padding: 100px 0;
  position: relative;
  z-index: 10
}

.section:nth-child(2n) {
  background: #fff
}

@media (max-width:767px) {
  .section {
    padding: 30px 0
  }
}

.section .image {
  background-size: cover;
  position: relative;
  overflow: hidden
}

@media (max-width:1023px) {
  .section .image {
    width: 100%;
    margin: 0;
    float: none
  }
}

.section .image .src {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.section .image .src:after {
  content: '';
  display: block;
  padding: calc(100% * 9 / 16) 0 0
}

.section .image .caption {
  font-size: 14px;
  font-size: 1.4rem;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  text-align: left;
  padding: 6px 10px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0
}

.section .text {
  overflow: hidden;
  padding: 0 0 0 20px
}

.section .bg-title {
  padding: 0 0 60px 0;
  position: relative
}

.section .bg-title:after {
  content: '';
  width: 100%;
  height: 120px;
  display: block;
  background-size: 120px;
  opacity: .2;
  position: absolute;
  top: -50px;
  left: 0;
  z-index: -1
}

.section .bg-title .subtitle {
  font-size: 16px;
  font-size: 1.6rem
}

.section .title {
  font-size: 30px;
  font-size: 3rem;
  position: relative;
  z-index: 10
}

@media (max-width:1023px) {
  .section .title {
    font-size: 24px;
    font-size: 2.4rem
  }
}

.section .subtitle {
  font-size: 32px;
  font-size: 3.2rem;
  letter-spacing: .5em;
  position: relative;
  z-index: 10
}

@media (max-width:1023px) {
  .section .subtitle {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .2em
  }
}

.section .description {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
  padding: 0 0 10px
}

@media (max-width:1023px) {
  .section .description {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: justify
  }
}

.section .link {
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 20px 0 20px 0;
  padding: 20px 40px;
  position: relative;
  text-align: center;
  z-index: 10
}

.section .headcopy {
  margin-bottom: 64px
}

.section .headcopy .title {
  font-size: 16px;
  font-size: 1.6rem;
  background: #9ec45f;
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-family: 'anton';
  letter-spacing: .2em;
  text-indent: .2em;
  padding: 2px 6px
}

.section .headcopy .title.big {
  font-size: 20px;
  font-size: 2rem
}

@media (max-width:1023px) {
  .section .headcopy .title {
    font-size: 12px!important;
    font-size: 1.2rem!important
  }
}

@media (max-width:767px) {
  .section .headcopy .title {
    letter-spacing: 0
  }
}

.section .headcopy .subtitle {
  font-size: 32px;
  font-size: 3.2rem;
  color: #9ec45f;
  position: relative
}

.section .headcopy .subtitle.small {
  font-size: 26px;
  font-size: 2.6rem
}

@media (max-width:1023px) {
  .section .headcopy .subtitle {
    font-size: 24px;
    font-size: 2.4rem
  }
}

@media (max-width:767px) {
  .section .headcopy .subtitle {
    font-size: 20px;
    font-size: 2rem
  }
}

.section .headcopy .tit {
  position: relative
}

.section .headcopy .ruby {
  font-size: 100px;
  font-size: 10rem;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  opacity: 0.05;
  color: #403228;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

@media (max-width:1023px) {
  .section .headcopy .ruby {
    font-size: 60px;
    font-size: 6rem
  }
}

@media (max-width:767px) {
  .section .headcopy .ruby {
    position: absolute;
    top: 15px;
    right: 3vh
  }
}

.section .headcopy2 {
  margin-bottom: 0
}

.section .headcopy2 .title {
  font-size: 42px;
  font-size: 4.2rem;
  color: #9ec45f;
  font-family: "游明朝", "Lato", "Noto Sans Japanese", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  line-height: 1.2
}

@media (max-width:767px) {
  .section .headcopy2 .title {
    font-size: 26px;
    font-size: 2.6rem
  }
}

.section .headcopy2 .subtitle {
  font-size: 16px;
  font-size: 1.6rem;
  color: #9ec45f;
  display: inline-block;
  margin-bottom: 0;
  padding: 2px 6px
}

@media (max-width:1023px) {
  .section .headcopy2 .subtitle {
    font-size: 12px!important;
    font-size: 1.2rem!important
  }
}

@media (max-width:767px) {
  .section .headcopy2 .subtitle {
    letter-spacing: .3em
  }
}

.section .headcopy2 .small {
  font-size: 24px;
  font-size: 2.4rem
}

.section-image {
  padding: 0;
  position: relative
}

@media (max-width:1023px) {
  .section-image .image {
    width: 33.333333%!important
  }
}

@media (max-width:767px) {
  .section-image .image {
    width: 100%!important
  }
}

.section-image .image .src:after {
  content: '';
  display: block;
  padding: 30% 0 0;
  position: relative;
  z-index: 10;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  .section-image .image .src:after {
    padding: 100% 0 0
  }
}

.section-image .text {
  padding: 10px 20px;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.8)
}

.section-image .title {
  font-size: 20px;
  font-size: 2rem
}

.section-image .subtitle {
  font-size: 10px;
  font-size: 1rem;
  font-family: initial
}

.section-image a {
  display: block;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.section-image a:hover {}

.section-bn {
  width: 980px;
  margin: 0 auto 64px auto
}

@media (max-width:1023px) {
  .section-bn {
    width: 95%
  }
}

.section-bn>.image {
  margin-bottom: 32px
}

@media (max-width:1023px) {
  .section-bn>.image {
    margin-bottom: 20px
  }
}

.section-bn .src {
  position: relative;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: all 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 2s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.section-bn .src a {
  display: block;
  position: absolute;
  left: 0;
  right: 0
}

.section-bn .src a:after {
  content: '';
  display: block;
  padding: calc(100% * 9 / 16) 0 0
}

.section-bn .src a:hover {
  opacity: 1
}

.section-bn .src:hover {
  opacity: .7;
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.section-bn .split[data-length="1"]>.src:first-child:after {
  padding: calc(100% * 9 / 16 / 1.5) 0 0
}

@media (max-width:1023px) {
  .section-bn .split[data-length="1"]>.src:first-child:after {
    padding: calc(100% * 9 / 16) 0 0
  }
}

@media (max-width:767px) {
  .section-bn .split[data-length="1"]>.src:first-child:after {
    padding: 100% 0 0
  }
}

.section-bn .split[data-length="1"]>.src:first-child a:after {
  padding: calc(100% * 9 / 16 / 1.5) 0 0
}

@media (max-width:1023px) {
  .section-bn .split[data-length="1"]>.src:first-child a:after {
    padding: calc(100% * 9 / 16) 0 0
  }
}

@media (max-width:767px) {
  .section-bn .split[data-length="1"]>.src:first-child a:after {
    padding: 100% 0 0
  }
}

.section-bn .split[data-length="1"]>.src:first-child .title {
  height: 100%;
  background: rgba(158, 196, 95, 0.8)
}

.section-bn .split[data-length="1"]>.src:first-child .title span {
  font-size: 20px;
  font-size: 2rem;
  position: absolute;
  top: 30%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

@media (max-width:767px) {
  .section-bn .split[data-length="1"]>.src:first-child .title span {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.section-bn .split[data-length="1"]>.src:first-child .description {
  color: #fff;
  padding: 20px 120px;
  position: absolute;
  top: 35%;
  left: 0;
  right: 0;
  z-index: 10
}

@media (max-width:767px) {
  .section-bn .split[data-length="1"]>.src:first-child .description {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 20px
  }
}

.section-bn .split[data-length="1"]>.src:first-child .link {
  bottom: 60px
}

@media (max-width:767px) {
  .section-bn .split[data-length="1"]>.src:first-child .link {
    bottom: 20px
  }
}

.section-bn .title {
  font-size: 12px;
  font-size: 1.2rem;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  padding: 10px 0;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

.section-bn .subtitle {
  font-size: 32px;
  font-size: 3.2rem;
  color: #fff;
  position: absolute;
  top: 30%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 100
}

@media (max-width:1023px) {
  .section-bn .subtitle {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.section-bn.texture-non .title {
  background: rgba(0, 0, 0, 0.2)!important
}

.section-bn.texture-non .title span {
  top: 40%!important
}

.section-bn .text {
  background: #fff;
  overflow: initial;
  padding: 0;
  position: relative
}

.section-bn .text:before {
  content: '';
  width: 0;
  height: 0;
  border: solid transparent;
  border-right-color: #fff;
  border-width: 15px;
  margin-top: -15px;
  position: absolute;
  top: 50%;
  right: 100%;
  pointer-events: none;
  z-index: 10
}

.section-bn .text:after {
  content: '';
  display: block;
  padding: calc(100% * 9 / 16) 0 0
}

.section-bn .text .description {
  text-align: justify;
  position: absolute;
  top: 0;
  left: 0;
  padding: 36px
}

@media (max-width:767px) {
  .section-bn .text .description {
    padding: 20px
  }
}

@media (max-width:767px) {
  .section-bn .text .description {
    font-size: 12px;
    font-size: 1.2rem
  }
  .section-bn .text .description h4 {
    display: none
  }
}

.section-bn .right+.text:before {
  content: '';
  width: 0;
  height: 0;
  border: solid transparent;
  border-left-color: #fff;
  border-width: 15px;
  margin-top: -15px;
  position: absolute;
  top: 50%;
  left: 100%;
  pointer-events: none;
  z-index: 10
}

.section-bn .link {
  position: absolute;
  bottom: 20px;
  right: 0;
  left: 0
}

@media (max-width:767px) {
  .section-bn .link {
    bottom: 0;
    padding: 0px 40px
  }
}

@media (max-width:1023px) {
  .section-bn .split[data-length="2"]>article, .section-bn .split[data-length="2"]>div, .section-bn .split[data-length="2"]>li {
    width: 100%
  }
}

@media (max-width:767px) {
  .section-bn .split[data-length="2"]>article, .section-bn .split[data-length="2"]>div, .section-bn .split[data-length="2"]>li {
    width: 100%
  }
}

.section-block {
  background: no-repeat;
  padding: 80px 0;
  position: relative;
  z-index: 10
}

.section-block .overlay {
  padding: 0 20px
}

.section-block .block {
  background: rgba(0, 0, 0, 0.1);
  padding: 20px;
  border-radius: 20px;
  margin: 0 0 20px
}

.section-non {
  background: #9ec45f!important;
  padding: 0 0 0 0
}

.section-non .headcopy .title {
  background: none
}

.section-non .headcopy .subtitle {
  color: #fff
}

@media (max-width:767px) {
  .section-non {
    padding: 80px 0 20px 0
  }
  .section-non .spdisp {
    text-align: justify
  }
  .section-non .spdisp .subtitle {
    font-size: 18px;
    font-size: 1.8rem;
    display: inline
  }
}

.section-non2 {
  background: #fff;
  padding: 0
}

.section-title {
  background: #b4df6c!important;
  z-index: 100
}

.section-title:after {
  content: '';
  width: 0;
  height: 0;
  border-top: 50px solid #b4df6c;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 100
}

@media (max-width:1023px) {
  .section-title:after {
    border-top: 20px solid #b4df6c;
    border-right: 20px solid transparent;
    border-left: 20px solid transparent;
    bottom: -20px
  }
}

.section-title .title {
  color: #fff;
  font-weight: bold
}

.section-title .read {
  font-size: 24px;
  font-size: 2.4rem;
  color: #fff
}

@media (max-width:1023px) {
  .section-title .read {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.section-title-none:after {
  content: none
}

.table {
  width: 100%!important;
  padding: 40px!important;
  color: #181818!important
}

@media (max-width:1023px) {
  .table {
    padding: 20px!important
  }
}

@media (max-width:1023px) {
  .table.responsive table, .table.responsive tbody, .table.responsive td, .table.responsive th, .table.responsive thead, .table.responsive tr {
    display: block!important
  }
  .table.responsive th {
    padding: 20px 10px 5px!important
  }
  .table.responsive td {
    padding: 0 10px 20px!important
  }
}

.table table {
  width: 100%!important;
  background: none!important;
  overflow: hidden!important
}

.table table td, .table table th, .table table tr {
  background: none !important!important;
  padding: 0!important
}

@media (max-width:1023px) {
  .table table td, .table table th, .table table tr {
    padding: 0!important
  }
}

@media (max-width:1023px) {
  .table table td, .table table th {
    display: table-cell!important
  }
}

.table tr:nth-child(2n) td {
  background: rgba(0, 0, 0, 0.05)!important
}

.table td, .table th {
  background: rgba(0, 0, 0, 0.1)!important;
  padding: 10px!important
}

@media (max-width:1023px) {
  .table td, .table th {
    display: block!important
  }
}

.table th {
  white-space: nowrap!important
}

@media (max-width:1023px) {
  .table th {
    text-align: left!important
  }
}

.table td {
  text-align: left!important
}

@media (max-width:1023px) {
  .table td {
    text-align: left!important
  }
}

.table thead th {
  background: #181818!important;
  border-right: 1px solid #eee!important;
  color: #eee!important
}

.table tbody th {
  background: rgba(158, 196, 95, 0.9)!important;
  border-bottom: 1px solid #eee!important;
  color: #fff!important
}

.table2 {
  width: 100%!important;
  margin-bottom: 32px;
  padding: 40px!important;
  color: #181818!important
}

@media (max-width:1023px) {
  .table2 {
    padding: 20px!important
  }
}

@media (max-width:1023px) {
  .table2.responsive table, .table2.responsive tbody, .table2.responsive td, .table2.responsive th, .table2.responsive thead, .table2.responsive tr {
    display: block!important
  }
  .table2.responsive th {
    padding: 20px 10px 5px!important
  }
  .table2.responsive td {
    padding: 0 10px 20px!important
  }
}

.table2 table {
  width: 100%!important;
  background: none!important;
  overflow: hidden!important
}

.table2 table td, .table2 table th, .table2 table tr {
  background: none !important!important;
  border-bottom: 0!important;
  padding: 0!important
}

@media (max-width:1023px) {
  .table2 table td, .table2 table th {
    display: table-cell!important
  }
}

.table2 tr {
  border-bottom: 1px dashed #aaa!important
}

@media (max-width:1023px) {
  .table2 tr {
    border-bottom: 0!important
  }
}

.table2 td, .table2 th {
  padding: 30px 50px!important;
  text-align: left
}

@media (max-width:1023px) {
  .table2 td, .table2 th {
    display: block!important
  }
}

.table2 th {
  background: #f5f5f5;
  vertical-align: middle;
  white-space: nowrap!important
}

@media (max-width:1023px) {
  .table2 th {
    text-align: left!important;
    background: #eee;
    padding: 10px!important
  }
}

.table2 th.title {
  font-size: 18px;
  font-size: 1.8rem;
  background: #9ec45f;
  color: #fff;
  text-align: center
}

.table2 th.title span {
  font-size: 14px;
  font-size: 1.4rem;
  color: #ee0;
  margin-left: 16px
}

@media (max-width:767px) {
  .table2 th.title span {
    font-size: 12px;
    font-size: 1.2rem;
    display: block;
    margin-left: 0
  }
}

.table2 td {
  text-align: left!important
}

@media (max-width:767px) {
  .table2 td {
    text-align: left!important;
    padding: 10px!important
  }
}

.table2 thead th {
  background: #9ec45f;
  color: #fff
}

.table2 tbody th {
  width: 30%
}

@media (max-width:767px) {
  .table2 tbody th {
    width: 100%
  }
}

.table2 caption {
  margin-bottom: 32px
}

.table-menu {
  width: 100%!important;
  background: rgba(255, 255, 255, 0.8);
  padding: 40px!important;
  color: #181818!important
}

@media (max-width:1023px) {
  .table-menu {
    padding: 20px!important
  }
}

@media (max-width:1023px) {
  .table-menu.responsive table, .table-menu.responsive tbody, .table-menu.responsive td, .table-menu.responsive th, .table-menu.responsive thead, .table-menu.responsive tr {
    display: block!important
  }
  .table-menu.responsive th {
    padding: 20px 10px 5px!important
  }
  .table-menu.responsive td {
    padding: 0 10px 20px!important
  }
}

.table-menu caption {
  background: #9ec45f;
  color: #fff;
  padding: 10px 0
}

.table-menu tr:nth-child(2n) td {
  background: rgba(0, 0, 0, 0.05)!important
}

.table-menu tr.strong td {
  background: rgba(158, 196, 95, 0.6)!important;
  border-bottom: 2px solid #9ec45f;
  color: #fff
}

.table-menu td, .table-menu th {
  background: rgba(0, 0, 0, 0.1)!important;
  padding: 10px!important
}

@media (max-width:1023px) {
  .table-menu td, .table-menu th {
    display: block!important
  }
}

.table-menu th {
  white-space: nowrap!important
}

@media (max-width:1023px) {
  .table-menu th {
    text-align: left!important
  }
}

.table-menu td {
  text-align: left!important
}

@media (max-width:1023px) {
  .table-menu td {
    text-align: left!important
  }
}

.table-menu thead th {
  background: #181818!important;
  border-right: 1px solid #eee!important;
  color: #eee!important
}

.table-menu tbody th {
  background: rgba(158, 196, 95, 0.9)!important;
  border-bottom: 1px solid #eee!important;
  color: #fff!important
}

.table-non {
  border: 0!important
}

.table-non tbody th {
  background: none!important;
  border: 0!important;
  color: #181818!important;
  font-weight: bold!important
}

.table-non tbody td {
  background: none!important;
  border: 0!important;
  padding: 0!important
}

@media (max-width:1023px) {
  .table-scrolls-inner {
    overflow-x: scroll
  }
}

@media (max-width:1023px) {
  .table-scrolls-inner .table {
    width: 1080px
  }
}

@media (max-width:1023px) {
  .table-scrolls-inner .table td, .table-scrolls-inner .table th {
    display: table-cell
  }
}

.table-scrolls .attention {
  display: none
}

@media (max-width:1023px) {
  .table-scrolls .attention {
    display: block
  }
}

.pagenation, .pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  line-height: 13px;
  background: none;
  margin: 10px 0 20px;
  vertical-align: middle
}

.pagenation li, .pagination li {
  display: inline-block
}

.pagenation li a, .pagination li a {
  display: inline-block;
  margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px;
  text-decoration: none;
  width: auto;
  color: #fff!important;
  background: #000;
  border-radius: 6px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.pagenation li a:hover, .pagination li a:hover {
  color: #fff!important;
  background: #b4df6c;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.pagenation li.current, .pagination li.current {
  background: #b4df6c;
  border-radius: 6px;
  color: #fff;
  margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px
}

#pagetop {
  width: 60px;
  height: 60px;
  background: #9ec45f;
  border-radius: 50%;
  opacity: 0;
  line-height: 60px;
  position: fixed;
  bottom: 0px;
  right: 0px;
  color: #fff;
  visibility: hidden;
  z-index: 1000;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  #pagetop {
    display: none
  }
}

#pagetop i {
  font-size: 32px;
  font-size: 3.2rem;
  vertical-align: middle
}

#pagetop.active {
  opacity: 1;
  bottom: 50px;
  right: 50px;
  -webkit-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  visibility: visible
}

@media (max-width:767px) {
  #pagetop.active {
    bottom: 10px;
    right: 10px
  }
}

#bn {
  background: #fff;
  padding: 30px 0
}

#bn .bn-inner {
  padding: 0 15px;
  position: relative;
  margin-bottom: 10px
}

#bn .bn-inner:nth-child(4), #bn .bn-inner:nth-child(5), #bn .bn-inner:nth-child(6) {
  margin-bottom: 0
}

#bn .bn-inner .text {
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 100%;
  background-color: rgba(158, 196, 95, 0.8);
  padding: 0;
  text-align: center!important;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease
}

#bn .bn-inner .text span {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

#bn .bn-inner .image {
  border-radius: 6px
}

#bn .bn-inner .image .src:after {
  padding: 100px 0 0
}

#bn .bn-inner .image:hover .text {
  background-color: rgba(158, 196, 95, 0)
}

article.new-triangle {
  overflow: hidden
}

article.new-triangle:before {
  content: 'NEW';
  width: 100px;
  height: 100px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

article.new-triangle:after {
  content: '';
  display: inline-block;
  position: absolute;
  top: -50px;
  left: -50px;
  width: 100px;
  height: 100px;
  background: rgba(158, 196, 95, 0.8);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.list-normal li {
  padding: 30px
}

@media (max-width:1023px) {
  .list-normal li {
    padding: 20px 20px 0
  }
}

.list-normal li .image {
  background: no-repeat center center #eee;
  background-size: cover;
  border-radius: 50%;
  margin: 0 0 10px
}

.list-normal li .image:after {
  content: '';
  display: block;
  padding: 100% 0 0
}

.list-normal li .title {
  font-size: 26px;
  font-size: 2.6rem
}

.list-normal li .description {
  font-size: 14px;
  font-size: 1.4rem
}

.list-button {
  margin-bottom: 64px
}

.list-button li {
  padding: 30px
}

@media (max-width:1023px) {
  .list-button li {
    padding: 20px 20px 0
  }
}

.list-button li a {
  background: #9ec45f;
  color: #fff;
  display: block;
  padding: 20px
}

.list-button li .image {
  background: no-repeat center center #eee;
  background-size: cover;
  border-radius: 20px;
  margin: 0 0 10px;
  position: relative;
  overflow: hidden
}

.list-button li .image:after {
  content: '';
  display: block;
  background: rgba(0, 0, 0, 0.3);
  padding: 60% 0 0
}

.list-button li .text {
  padding: 0
}

.list-button li .title {
  font-size: 26px;
  font-size: 2.6rem
}

.list-button li .description {
  font-size: 14px;
  font-size: 1.4rem
}

.list-article {
  padding: 30px 0
}

.list-article li {
  padding: 20px
}

@media (max-width:1023px) {
  .list-article li {
    padding: 20px 20px 0
  }
}

.list-article li a {
  display: block;
  overflow: hidden
}

.list-article li .image {
  width: 200px;
  background: no-repeat center center #eee;
  background-size: cover;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  float: left
}

@media (max-width:1023px) {
  .list-article li .image {
    width: 100%;
    margin: 0 0 20px
  }
}

.list-article li .image:after {
  content: '';
  display: block;
  background: rgba(0, 0, 0, 0.3);
  padding: 60% 0 0
}

.list-article li .text {
  overflow: hidden;
  padding: 0 0 0 20px
}

.list-article li .title {
  font-size: 26px;
  font-size: 2.6rem
}

.list-article li .description {
  font-size: 14px;
  font-size: 1.4rem
}

.list-article li .link {
  font-size: 14px;
  font-size: 1.4rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 10px 0;
  padding: 2px 20px;
  border: 2px solid #222;
  border-radius: 50px
}

.list-article-vertical-inner {
  margin-bottom: 20px;
  padding: 0 10px;
  overflow: hidden
}

@media (max-width:1023px) {
  .list-article-vertical-inner {
    margin-bottom: 0
  }
}

.list-article-vertical article, .list-article-vertical li {
  position: relative
}

@media (max-width:1023px) {
  .list-article-vertical article, .list-article-vertical li {
    margin-bottom: 20px
  }
}

.list-article-vertical .image {
  width: 100%;
  border-radius: 0;
  overflow: hidden;
  position: relative
}

.list-article-vertical .image .src:after {
  content: '';
  width: 100%;
  display: block;
  padding: calc(100% * 9 / 16) 0 0
}

.list-article-vertical .text {
  padding: 10px 0
}

@media (max-width:1023px) {
  .list-article-vertical .text {
    width: 100%
  }
}

.list-article-vertical .title, .list-article-vertical strong {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 6px;
  text-align: left
}

.list-article-vertical .subtitle {
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  text-align: left
}

.list-article-vertical .cat {
  font-size: 14px;
  font-size: 1.4rem;
  background: rgba(158, 196, 95, 0.8);
  color: #fff;
  margin: 0;
  padding: 1rem;
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0
}

.list-article-vertical .date {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0;
  padding: 1rem 0;
  text-align: right
}

.list-article-vertical .time {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  text-align: right
}

.list-article-vertical a {
  display: block
}

.list-article-vertical .description {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  text-align: justify
}

.list-article-horizontal-inner {
  padding: 0 10px
}

@media (max-width:1023px) {
  .list-article-horizontal-inner {
    width: 50%!important
  }
}

.list-article-horizontal li {
  padding: 0 10px;
  position: relative
}

.list-article-horizontal li:hover .image img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  .list-article-horizontal li {
    margin-bottom: 20px
  }
}

.list-article-horizontal a {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px
}

.list-article-horizontal .image {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  width: 240px;
  border-radius: 0;
  overflow: hidden;
  position: relative;
  float: none
}

@media (max-width:1023px) {
  .list-article-horizontal .image {
    width: 100%
  }
}

.list-article-horizontal .text {
  width: calc(100% - 240px);
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline;
  padding: 0 10px 10px 10px
}

@media (max-width:767px) {
  .list-article-horizontal .text {
    width: 100%;
    padding: 0!important
  }
}

.list-article-horizontal .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 100%;
  margin-bottom: 16px;
  text-align: left
}

.list-article-horizontal .subtitle {
  font-size: 16px;
  font-size: 1.6rem
}

.list-article-horizontal .cat {
  font-size: 14px;
  font-size: 1.4rem;
  background: rgba(126, 117, 100, 0.5);
  color: #fff;
  margin: 0 10px 0 0;
  padding: 1rem;
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0
}

.list-article-horizontal .date {
  text-align: right
}

.list-article-horizontal .date time {
  font-size: 14px;
  font-size: 1.4rem;
  background: #9ec45f;
  color: #fff;
  padding: 6px 10px
}

.list-article-horizontal .description {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left
}

@media (max-width:1023px) {
  .list-article-horizontal .description {
    padding: 0 0 10px
  }
}

.list-article-full-inner {
  position: relative
}

.list-article-full-inner:hover .image img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

@media (max-width:1023px) {
  .list-article-full-inner {
    margin-bottom: 20px
  }
}

.list-article-full a {
  display: block
}

.list-article-full .image {
  width: 100%;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline
}

.list-article-full .image .src {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.list-article-full .image .src:after {
  content: '';
  width: 100%;
  display: block;
  background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.5) 5%, transparent 40%);
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5) 5%, transparent 40%);
  background: -webkit-gradient(linear, top bottom, color-stop(5%, rgba(0, 0, 0, 0.5)), color-stop(40%, transparent));
  background: -webkit-linear-gradient(bottom top, rgba(0, 0, 0, 0.5) 5%, transparent 40%);
  background: -o-linear-gradient(bottom top, rgba(0, 0, 0, 0.5) 5%, transparent 40%);
  background: linear-gradient(bottom top, rgba(0, 0, 0, 0.5) 5%, transparent 40%);
  padding: 100% 0 0
}

.list-article-full .date {
  background: rgba(158, 196, 95, 0.8);
  position: absolute;
  padding: 6px 10px;
  top: 0;
  right: 0
}

.list-article-full .post-title {
  width: 80%;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px
}

.list-news {
  width: 100%;
  height: 30vh;
  background: #fff;
  border-radius: 10px;
  padding: 32px;
  margin: auto;
  margin-bottom: 64px;
  overflow-y: scroll
}

@media (max-width:767px) {
  .list-news {
    width: 98%;
    padding: 16px;
    margin-bottom: 16px
  }
}

.list-news-inner {
  padding: 0 10px
}

@media (max-width:1023px) {
  .list-news-inner {
    width: 100%!important
  }
}

.list-news a {
  border-bottom: 1px dashed #eee;
  display: block;
  margin-bottom: 10px;
  padding-bottom: 10px
}

.list-news li {
  padding: 0 10px;
  position: relative
}

.list-news li:hover .image img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.list-news li:last-child a {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0
}

@media (max-width:1023px) {
  .list-news li {
    margin-bottom: 20px
  }
}

.list-news .image {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  width: 20%;
  border-radius: 0;
  overflow: hidden;
  position: relative;
  float: none
}

.list-news .image .src:after {
  content: '';
  width: 100%;
  display: block;
  padding: 80% 0 0
}

.list-news .image img {
  width: 100%;
  height: 120px;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.list-news .text {
  width: 100%;
  display: inline-block;
  vertical-align: top;
  zoom: 1;
  *display: inline;
  padding: 0
}

.list-news .title {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 100%;
  text-align: left
}

.list-news .subtitle {
  font-size: 16px;
  font-size: 1.6rem
}

.list-news .cat {
  font-size: 12px;
  font-size: 1.2rem;
  background: #9ec45f;
  color: #fff;
  margin: 0;
  padding: 3px 6px;
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0
}

.list-news .date {
  text-align: left
}

.list-news time {
  font-size: 10px;
  font-size: 1rem;
  display: block;
  padding: 6px 0
}

.list-news .description {
  font-size: 14px;
  font-size: 1.4rem;
  color: #181818;
  text-align: left
}

@media (max-width:1023px) {
  .list-news .description {
    padding: 0 0 10px
  }
}

.list-products {
  padding: 30px 0
}

.list-products li {
  padding: 20px 0
}

@media (max-width:1023px) {
  .list-products li {
    padding: 20px 20px 0
  }
}

.list-products li a {
  display: block;
  overflow: hidden
}

.list-products li .image {
  width: 400px;
  background: no-repeat center center #eee;
  background-size: cover;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  float: left
}

@media (max-width:1023px) {
  .list-products li .image {
    width: 100%;
    margin: 0 0 20px
  }
}

.list-products li .image:after {
  content: '';
  display: block;
  padding: 100% 0 0
}

.list-products li .text {
  overflow: hidden;
  padding: 0 0 0 40px
}

@media (max-width:1023px) {
  .list-products li .text {
    padding: 0 0 0 10px
  }
}

.list-products li .title {
  font-size: 36px;
  font-size: 3.6rem;
  margin-bottom: 16px
}

.list-products li .subtitle {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 16px
}

@media (max-width:1023px) {
  .list-products li .subtitle {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.list-products li .description {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 16px
}

.list-products li .point {
  font-size: 14px;
  font-size: 1.4rem;
  background: #9ec45f;
  border-radius: 10px;
  padding: 1em;
  margin-bottom: 16px
}

.list-products li .link {
  font-size: 18px;
  font-size: 1.8rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  background-color: #ff8000;
  margin: 10px 0;
  padding: 2px 20px
}

.list-gallery li {
  padding: 0 10px 10px 0
}

@media (max-width:1023px) {
  .list-gallery li {
    padding: 20px 20px 0
  }
}

.list-gallery li a {
  display: block;
  overflow: hidden
}

.list-gallery li .image {
  width: 100%;
  background: no-repeat center center #eee;
  background-size: cover;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  float: left;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -o-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.list-gallery li .image:hover {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.list-gallery li .image:after {
  content: '';
  display: block;
  background: none;
  padding: 70% 0 0
}

.list-text li {
  margin: 0 6px 0 4px
}

.list-text li i {
  font-size: 21px;
  font-size: 2.1rem;
  vertical-align: middle
}

.list-linkjump-inner {
  margin-bottom: 60px;
  padding: 0 10px
}

@media (max-width:1023px) {
  .list-linkjump-inner {
    width: 33.3333%!important;
    margin-bottom: 0
  }
}

.list-linkjump article, .list-linkjump li {
  position: relative
}

@media (max-width:1023px) {
  .list-linkjump article, .list-linkjump li {
    margin-bottom: 20px
  }
}

.list-linkjump .text {
  padding: 10px 0;
  text-align: center
}

@media (max-width:1023px) {
  .list-linkjump .text {
    width: 100%
  }
}

.list-linkjump strong {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 6px;
  text-align: left
}

.list-linkjump .ruby {
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  font-family: "Anton", serif;
  letter-spacing: .5em;
  font-style: italic
}

@media (max-width:767px) {
  .list-linkjump .ruby {
    letter-spacing: .2em
  }
}

.list-linkjump .description {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  text-align: justify
}

.list-linkjump a {
  display: block;
  position: relative
}

.list-linkjump a:after {
  content: '▼';
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  margin: auto
}

.list-check {
  font-size: 16px;
  font-size: 1.6rem;
  background: rgba(160, 134, 0, 0.05);
  border: 1px solid #a08600;
  margin-bottom: 16px;
  padding: 20px 30px
}

.list-check li {
  padding: 0
}

.list-check i {
  font-size: 20px;
  font-size: 2rem;
  vertical-align: middle;
  margin-right: 6px;
  margin-bottom: 3px
}

.list-case .text {
  padding: 0
}

.list-case .image {
  padding: 0 10px
}

.gallery-item-light li:after {
  content: none!important
}

#breadcrumbs {
  width: 100%;
  background: #f8f8f8;
  border-top: 1px #eee solid;
  position: relative;
  z-index: 15;
  -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3)
}

@media (max-width:1023px) {
  #breadcrumbs {
    display: none;
    min-width: initial;
    min-width: auto;
    padding-bottom: 20px
  }
}

#breadcrumbs ol {
  max-width: 1080px;
  min-width: 960px;
  height: 42px;
  background: #f8f8f8;
  margin: 0 auto;
  font-size: 12px;
  font-size: 1.2rem;
  list-style-type: none;
  background: url(../img/set/breadcrumb_bg.png) left center no-repeat;
  background-size: auto 42px;
  padding: 0 0 0 10px;
  overflow: hidden
}

#breadcrumbs li {
  line-height: 42px;
  background: url(../img/set/breadcrumb_bg2.png) right center no-repeat #ffffff;
  background-size: auto 42px;
  display: block;
  float: left;
  padding: 0 20px 0 10px
}

#breadcrumbs li:last-child {
  max-width: 50%;
  font-weight: bold;
  background: url(../img/set/breadcrumb_bg3.png) right center no-repeat #ffffff;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis
}

#breadcrumbs li a {
  height: 100%;
  color: #000000;
  padding: 0 26px 0 20px;
  text-decoration: none;
  display: block
}

#breadcrumbs li a:hover {
  color: #9ec45f
}

#breadcrumbs li span {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

#breadcrumbs li i {
  font-size: 16px;
  font-size: 1.6rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline
}

.sitemap ul li {
  padding: 0 10px 30px
}

.sitemap ul li a {
  width: 60%;
  color: #181818;
  border-radius: 10px;
  display: inline-block;
  padding: 1em;
  margin-bottom: 10px
}

.sitemap ul li a.btn {
  background: rgba(204, 204, 204, 0.3);
  border-radius: 10px
}

@media (max-width:1023px) {
  .sitemap ul li a {
    width: 100%
  }
}

.sitemap ul li i {
  display: none
}

.sitemap ul li .image {
  float: none
}

.sitemap ul li .text {
  padding: 0!important
}

.sitemap ul li .text .ruby {
  color: #9ec45f;
  display: none
}

.sitemap ul li .lower a {
  width: 100%
}

.sitemap ul li .lower .text {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center
}

@media (max-width:1023px) {
  .sitemap ul li .lower li {
    width: 33.3333%!important;
    padding: 0 10px
  }
}

@media (max-width:767px) {
  .sitemap ul li .lower li {
    width: 100%!important;
    padding: 0 10px
  }
}

.sitemap ul li .submenu {
  background: none;
  overflow: hidden;
  text-align: center
}

.sitemap ul li .submenu.link {
  cursor: pointer
}

.sitemap ul li .submenu.link strong {
  font-size: 16px;
  font-size: 1.6rem
}

@media (max-width:767px) {
  .sitemap ul li .submenu.link strong {
    padding: 10px 2em
  }
}

.sitemap ul li .submenu.link strong:after, .sitemap ul li .submenu.link strong:before {
  content: none
}

.sitemap ul li .submenu:hover {
  background: none;
  color: #181818
}

.sitemap ul li .submenu.go {
  cursor: pointer
}

.sitemap ul li .submenu strong {
  font-size: 20px;
  font-size: 2rem;
  background: #fff;
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 10px 3em;
  text-align: left;
  z-index: 10
}

@media (max-width:767px) {
  .sitemap ul li .submenu strong {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px 2em
  }
}

.sitemap ul li .submenu strong:after, .sitemap ul li .submenu strong:before {
  position: absolute;
  top: 50%;
  content: '';
  width: 400%;
  height: 1px;
  background-color: #E3DECC
}

.sitemap ul li .submenu strong:before {
  right: 100%
}

.sitemap ul li .submenu strong:after {
  left: 100%
}

@media (max-width:767px) {
  .sitemap .inner, .sitemap .table2 table, .sitemap .table table, .table2 .sitemap table, .table .sitemap table {
    width: 95%;
    margin: 0 auto
  }
}

.sitemap .lower-submenu-list {
  margin: 30px 0 0 0
}

.sitemap .lower-submenu-item .text {
  text-align: left!important
}

.sitemap .lower-submenu-item i {
  font-size: 12px;
  font-size: 1.2rem;
  color: #9ec45f;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle
}

.privacy .section {
  font-family: メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif
}

.privacy .block {
  color: #404040;
  text-align: left;
  margin-bottom: 2em
}

@media (max-width:1023px) {
  .privacy .block {
    text-align: justify
  }
}

.faq strong {
  display: block;
  margin-bottom: 1em
}

.faq dl {
  display: table
}

.faq dd>span, .faq dt .question, .faq dt>span {
  display: table-cell;
  vertical-align: middle;
  margin: 0
}

.faq dd>span {
  vertical-align: top
}

.faq dd p, .faq dt .question {
  font-size: 16px;
  font-size: 1.6rem;
  padding-top: 0;
  margin: 0;
  color: #232323
}

.faq dd p {
  width: 100%;
  vertical-align: top;
  margin: 0;
  display: block
}

.faq dd p>span {
  display: inline
}

.faq dt {
  padding-bottom: 1em;
  margin: 20px
}

.faq dd {
  margin: 20px
}

.faq .question p {
  font-weight: bold
}

.faq .anser {
  display: table-cell;
  text-align: left
}

.faq .anser p {
  margin: 0 0 1em 0
}

.faq .anser a {
  color: #1d3994
}

.faq dt i {
  background: #000;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #fff;
  line-height: 40px;
  text-align: center;
  font-style: normal;
  font-size: 20px;
  font-family: sans-serif;
  margin-right: 1em;
  display: inline-block
}

.faq dd i {
  background: #333;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #fff;
  line-height: 40px;
  text-align: center;
  font-style: normal;
  font-size: 20px;
  font-family: sans-serif;
  margin-right: 1em;
  display: inline-block
}

.faq .list-faq {
  margin-top: 100px;
  text-align: justify
}

.faq .list-faq-inner {
  padding: 0 20px
}

@media (max-width:1023px) {
  .faq .list-faq-inner {
    width: 100%!important;
    margin-bottom: 0;
    padding: 0
  }
}

.faq .list-faq-inner section {
  border: 1px dashed #ccc;
  border-radius: 6px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1)
}

@media (max-width:1023px) {
  .faq .list-faq-inner .box {
    padding: 0
  }
}

.faq .list {
  width: 60%;
  border: 1px dashed #ccc;
  border-radius: 6px;
  margin: 0 auto;
  padding: 30px;
  text-align: justify
}

@media (max-width:1023px) {
  .faq .list {
    width: 80%
  }
}

@media (max-width:767px) {
  .faq .list {
    width: 100%
  }
}

.faq .list a {
  color: #9ec45f;
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.faq .list a:hover {
  opacity: 0.8;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.faq .list i {
  color: #9ec45f;
  margin-right: 6px;
  vertical-align: middle
}

.faq .list li {
  padding: 5px 0
}

.btn-type1 {
  font-size: 12px;
  font-size: 1.2rem;
  width: 100%;
  background: -webkit-gradient(linear, right top, left top, from(#9ec45f), to(#b4df6c));
  background: -webkit-linear-gradient(right, #9ec45f, #b4df6c);
  background: -o-linear-gradient(right, #9ec45f, #b4df6c);
  background: linear-gradient(to left, #9ec45f, #b4df6c);
  border: 1px solid #cecece;
  color: #fff;
  display: block;
  margin: auto;
  padding: 10px
}

@media (max-width:767px) {
  .btn-type1 {
    width: 90%
  }
}

.btn-type2 {
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  color: #fff;
  padding: 16px 60px;
  background: -webkit-gradient(linear, left top, right bottom, from(#0099c2), to(#96d7e7));
  background: -moz-linear-gradient(left, #0099c2, #96d7e7);
  background: -webkit-gradient(linear, left top, right top, from(#0099c2), to(#96d7e7));
  background: -webkit-linear-gradient(left, #0099c2, #96d7e7);
  background: -o-linear-gradient(left, #0099c2, #96d7e7);
  background: linear-gradient(left, #0099c2, #96d7e7);
  border-bottom: 5px solid #e3decc;
  border-radius: 4px;
  position: relative;
  z-index: 10
}

.btn-type2:hover {
  border-bottom: 1px solid #222;
  margin: 4px 0 0 0
}

.btn-type3 {
  width: 100%;
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  border: 1px solid #333;
  color: #333;
  font-weight: bold;
  padding: 20px;
  position: relative
}

.btn-type3:after {
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(158, 196, 95, 0.4);
  position: absolute;
  right: -5px;
  bottom: -5px;
  z-index: -1
}

.open-website {
  cursor: pointer
}

.parts-point {
  padding: 8px 14px;
  margin-bottom: 20px;
  color: #c09853;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  background-color: #fcf8e3;
  border: 1px solid #fbeed5;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px
}

.parts-pw {
  background: #9ec45f;
  border-radius: 10px;
  padding: 1em;
  margin-bottom: 10px
}

.parts-hf-style {
  position: relative
}

.parts-hf-style:after, .parts-hf-style:before {
  content: '';
  width: 100%;
  height: 31px;
  position: absolute;
  left: 0;
  z-index: 10
}

.parts-hf-style:before {
  background: url(../img/bg-header.png) top center repeat-x;
  top: 0
}

.parts-hf-style:after {
  background: url(../img/bg-header-b.png) top center repeat-x;
  bottom: 0
}

.parts-black {
  color: #000!important
}

.parts-white {
  color: #fff!important
}

.parts-white+.ruby {
  color: #efdccf!important
}

.parts-white:before {
  border: 1px solid white!important
}

.parts-white:after {
  border: 1px solid white!important
}

.parts-silver {
  color: #717171
}

.parts-line {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, rgba(0, 200, 83, 0.5)));
  background: -webkit-linear-gradient(transparent 60%, rgba(0, 200, 83, 0.5) 0%);
  background: -o-linear-gradient(transparent 60%, rgba(0, 200, 83, 0.5) 0%);
  background: linear-gradient(transparent 60%, rgba(0, 200, 83, 0.5) 0%)
}

.parts-em {
  font-weight: bold
}

.parts-big {
  font-size: 200%
}

.parts-radius-left {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow: hidden
}

.parts-radius-right {
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  overflow: hidden
}

.parts-radius {
  border-radius: 20px;
  overflow: hidden
}

.parts-half {
  width: 50%
}

@media (max-width:1023px) {
  .parts-half {
    width: 90%
  }
}

.parts-vertical-rl {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 auto
}

.parts-vertical-rl .def {
  -webkit-writing-mode: initial;
  -ms-writing-mode: initial;
  writing-mode: initial
}

.parts-shadow {
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.3)
}

.parts-shadow_w {
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.3)
}

.parts-box-shadow {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3)
}

.parts-border {
  border: 1px #222 solid;
  padding: 8px;
  background: rgba(0, 0, 0, 0.7)!important
}

.parts-attention {
  -webkit-box-shadow: none;
  box-shadow: none;
  background: rgba(0, 0, 0, 0.8);
  border: 1px solid #222;
  color: #fff;
  margin-bottom: 40px;
  padding: 20px
}

@media (max-width:767px) {
  .parts-attention {
    text-align: justify
  }
}

.parts-note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #c00
}

.parts-radius50 {
  border-radius: 50%
}

.parts-image-radius50 {
  padding: 0 10px
}

.parts-image-radius50 img {
  border-radius: 50%
}

.parts-reverse-lr .image {
  float: left
}

.parts-reverse-lr .text {
  float: right
}

.parts-reverse-tb .image {
  position: absolute;
  bottom: 0
}

.parts-reverse-tb .text {
  position: absolute;
  top: 0
}

.parts-mdce {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 10
}

@media (max-width:1023px) {
  .parts-mdce {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
  }
}

.parts-btn-layout1 {
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 20px 0 20px 0;
  padding: 20px 40px;
  background: #9ec45f;
  border-bottom: 5px solid #181818;
  border-radius: 4px;
  position: relative;
  z-index: 10
}

.parts-btn-layout1 a {
  color: #fff
}

.parts-btn-layout1:hover {
  border-bottom: 1px solid #222;
  margin: 24px 0 20px 0
}

.parts-btn-layout1-black {
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 20px 0 20px 0;
  padding: 20px 40px;
  background: #000;
  border-bottom: 5px solid #9ec45f;
  border-radius: 4px;
  position: relative;
  z-index: 10
}

.parts-btn-layout1-black a {
  color: #fff
}

.parts-btn-layout1-black:hover {
  border-bottom: 1px solid #181818;
  margin: 24px 0 20px 0
}

.parts-btn-layout3 {
  width: 100%;
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 20px 0;
  background: #9ec45f;
  border: 1px solid #239eec;
  border-radius: 4px;
  position: relative;
  z-index: 10;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.parts-btn-layout3 a {
  width: 100%;
  color: #fff;
  display: block;
  padding: 20px 40px
}

.parts-btn-layout3:hover {
  background: #81c8f4;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.parts-title-layout1 {
  overflow: hidden;
  text-align: center
}

.parts-title-layout1 span {
  font-size: 20px;
  font-size: 2rem;
  background: #fff;
  border: 2px solid #E3DECC;
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 10px 3em;
  text-align: left;
  z-index: 10
}

.parts-title-layout1 span:after, .parts-title-layout1 span:before {
  position: absolute;
  top: 50%;
  content: '';
  width: 400%;
  height: 2px;
  background-color: #E3DECC;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

.parts-title-layout1 span:before {
  right: 100%
}

.parts-title-layout1 span:after {
  left: 100%
}

.parts-title-layout1:before {
  position: absolute;
  top: 50%;
  content: '';
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #E3DECC;
  -webkit-transform: translate(2.2em, -50%);
  -ms-transform: translate(2.2em, -50%);
  transform: translate(2.2em, -50%)
}

.parts-title-layout1:after {
  position: absolute;
  top: 50%;
  content: '';
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #E3DECC;
  -webkit-transform: translate(-2.8em, -50%);
  -ms-transform: translate(-2.8em, -50%);
  transform: translate(-2.8em, -50%)
}

.parts-title-layout2 {
  overflow: hidden;
  text-align: center
}

.parts-title-layout2 span {
  font-size: 20px;
  font-size: 2rem;
  border: 2px solid #E3DECC;
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 10px 3em;
  text-align: left;
  z-index: 10
}

.parts-title-layout2 span:after, .parts-title-layout2 span:before {
  position: absolute;
  top: 50%;
  content: '';
  width: 400%;
  height: 2px;
  background-color: #E3DECC;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

.parts-title-layout2 span:before {
  right: 100%
}

.parts-title-layout2 span:after {
  left: 100%
}

.parts-title-layout3 {
  position: relative;
  padding: 0 .5em .5em 2em;
  border-bottom: 1px solid #ccc;
  margin: 0 auto 2em auto
}

@media (max-width:1023px) {
  .parts-title-layout3 {
    width: 100%
  }
}

.parts-title-layout3 .ruby {
  font-size: 60px;
  font-size: 6rem;
  font-family: 'Great Vibes', cursive;
  position: absolute;
  right: 0;
  top: 2px
}

.parts-title-layout3 .ruby:after {
  content: attr(title);
  font-size: 160px;
  font-size: 16rem;
  font-family: 'Great Vibes', cursive;
  position: absolute;
  left: -1080px;
  top: -60px;
  opacity: 0.1;
  color: #4d499d;
  -webkit-transform: translateX(50%);
  -ms-transform: translateX(50%);
  transform: translateX(50%)
}

@media (max-width:767px) {
  .parts-title-layout3 .ruby {
    position: absolute;
    top: 15px;
    right: 3vh
  }
}

.parts-title-layout3:after, .parts-title-layout3:before {
  position: absolute;
  content: '';
  border-radius: 100%
}

.parts-title-layout3:before {
  top: .2em;
  left: .2em;
  z-index: 2;
  width: 28px;
  height: 28px;
  background: rgba(158, 196, 95, 0.5)
}

.parts-title-layout3:after {
  top: .7em;
  left: .7em;
  width: 23px;
  height: 23px;
  background: rgba(158, 196, 95, 0.5)
}

.parts-title-layout3 span {
  font-size: 30px;
  font-size: 3rem
}

.parts-title-layout4 {
  font-size: 28px;
  font-size: 2.8rem;
  color: #9ec45f;
  font-family: メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: bold;
  margin-bottom: 40px;
  text-shadow: none!important
}

.parts-title-layout5 {
  font-size: 20px;
  font-size: 2rem;
  color: #9ec45f;
  font-family: メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: bold;
  text-shadow: none!important
}

@media (max-width:1023px) {
  .parts-title-layout5 {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.parts-title-layout5 span {
  border-bottom: 1px #9ec45f solid;
  margin-bottom: 20px;
  display: block
}

.parts-slanting {
  -webkit-transform: skew(-8deg) rotate(-8deg);
  -ms-transform: skew(-8deg) rotate(-8deg);
  transform: skew(-8deg) rotate(-8deg)
}

.parts-slanting-reverse {
  -webkit-transform: skew(8deg) rotate(8deg);
  -ms-transform: skew(8deg) rotate(8deg);
  transform: skew(8deg) rotate(8deg)
}

.parts-fixed {
  background-attachment: fixed
}

.after-black, .after-blend, .after-bn, .after-catch, .after-clear, .after-image, .after-image2, .after-image3, .after-image-color-left, .after-intro, .after-menu, .after-overlay, .after-overlay2, .after-silver, .after-texture, .after-texture2, .after-texture3, .after-tf, .after-white, .after-white-slanting, .after-white-slanting2, .after-white-slanting3, .after-yellow {
  width: 100%;
  height: 100%;
  position: absolute;
  content: '';
  top: 0;
  left: 0
}

.after-white-slanting {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 100px 100vw;
  border-color: transparent transparent #ffffff transparent;
  right: 0;
  top: -100px;
  left: unset
}

.after-white-slanting2 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 100px 0 0 100vw;
  border-color: #ffffff transparent transparent transparent;
  right: unset;
  top: 0;
  left: 0
}

.after-intro {
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  background-repeat: no-repeat;
  z-index: -1
}

.after-catch {
  background-size: 50%;
  background-position: top;
  opacity: 0.3;
  background-repeat: no-repeat;
  z-index: -1
}

.after-image {
  background-position: center;
  opacity: .7;
  z-index: -1
}

.after-image2 {
  background-position: center;
  background-size: 10%;
  opacity: 1;
  z-index: -1
}

.after-image3 {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  background-position: center;
  opacity: .1;
  z-index: -1
}

.after-image-color-left {
  -webkit-transform: skewX(150deg);
  -ms-transform: skewX(150deg);
  transform: skewX(150deg);
  background-position: center;
  opacity: 1;
  z-index: -1
}

.after-texture {
  background-position: center;
  background-size: cover;
  opacity: .1;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  z-index: -1
}

.after-texture2 {
  height: 80vh;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  opacity: 1;
  z-index: 0
}

@media (max-width:767px) {
  .after-texture2 {
    height: 40vh;
    background-size: cover;
    background-attachment: unset
  }
}

.after-texture3 {
  background-position: center;
  background-attachment: fixed;
  opacity: 0.6;
  outline: 1px solid #806b44;
  outline-offset: -40px;
  z-index: -1
}

.after-bn {
  background-position: center center;
  background-size: cover;
  opacity: .2;
  z-index: -1
}

.after-tf {
  background-position: center;
  background-size: 3%;
  opacity: 0.6;
  z-index: -1
}

.after-menu {
  background-position: center;
  opacity: 0.3;
  z-index: 10
}

.after-clear {
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 1
}

.after-black {
  background-color: rgba(0, 0, 0, 0.9);
  z-index: -1
}

.after-yellow {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(249, 216, 62, 0.95)), to(rgba(252, 228, 122, 0.8)));
  background: -webkit-linear-gradient(top, rgba(249, 216, 62, 0.95) 0%, rgba(252, 228, 122, 0.8));
  background: -o-linear-gradient(top, rgba(249, 216, 62, 0.95) 0%, rgba(252, 228, 122, 0.8));
  background: linear-gradient(to bottom, rgba(249, 216, 62, 0.95) 0%, rgba(252, 228, 122, 0.8));
  z-index: -1
}

.after-white {
  background-color: rgba(255, 255, 255, 0.9);
  z-index: -1
}

.after-silver {
  background-color: #717171
}

.after-fixed {
  background-attachment: fixed;
  background-size: cover;
  padding-top: 100%
}

.after-overlay {
  background: url(../../scripts.php?img=img/vegas/overlays/05.png)
}

.after-overlay2 {
  background: url(../../scripts.php?img=img/vegas/overlays/01.png)
}

.after-rainbow {
  content: '';
  display: block;
  background: -webkit-gradient(linear, left top, left bottom, from(#a6d900), to(#ff4454));
  background: -webkit-linear-gradient(top, #a6d900 0%, #ff4454 100%);
  background: -o-linear-gradient(top, #a6d900 0%, #ff4454 100%);
  background: linear-gradient(to bottom, #a6d900 0%, #ff4454 100%);
  -webkit-animation: huerotator 3s infinite alternate;
  animation: huerotator 3s infinite alternate;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: .2;
  z-index: 5
}

.after-blend {
  background: url(../img/top/blend.jpg);
  background-size: cover;
  mix-blend-mode: soft-light
}

@media (max-width:1023px) {
  .after-blend {
    background: none;
    mix-blend-mode: normal
  }
}

@media (-ms-high-contrast:none) {
  .after-blend {
    background: none!important
  }
}

@media all and  (-ms-high-contrast:none) {
  ::-ms-backdrop, .after-blend {
    background: none!important
  }
}

@supports (-ms-accelerator:true) {
  .after-blend {
    background: none!important
  }
}

@supports (-ms-ime-align:auto) {
  .after-blend {
    background: none!important
  }
}

@supports (-ms-ime-align:auto) and (-webkit-text-stroke:initial) {
  .after-blend {
    background: none!important
  }
}

.after-image60:after {
  content: '';
  display: block;
  padding: 60% 0 0!important
}

.after-shine {
  width: 50%;
  height: 50px;
  background: rgba(251, 243, 162, 0.4);
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-filter: blur(20px);
  filter: blur(20px);
  border-radius: 50%
}

#bullets {
  width: 80%;
  background: rgba(255, 255, 255, 0.5);
  border: 2px #9ec45f solid;
  border-radius: 6px;
  margin: auto;
  text-align: left
}

@media (max-width:767px) {
  #bullets {
    width: 100%;
    left: 0;
    bottom: 80px
  }
}

@media (max-width:767px) {
  #bullets ul {
    margin-bottom: 160px
  }
}

#bullets li {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 2px 0
}

@media (max-width:767px) {
  #bullets li {
    font-size: 12px;
    font-size: 1.2rem
  }
}

#bullets i {
  font-size: 21px;
  font-size: 2.1rem;
  vertical-align: middle;
  margin-right: 10px;
  margin-bottom: 3px
}

#bullets .image {
  width: 30%;
  position: relative;
  overflow: hidden
}

#bullets .image .src {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

#bullets .image .src:after {
  content: '';
  display: block
}

#bullets .list {
  width: 100%;
  padding: 30px 20px;
  position: relative;
  z-index: 10
}

#facebook {
  position: relative
}

#facebook .split .plugin {
  height: 400px
}

#facebook .split .text {
  height: 400px;
  position: relative
}

@media (max-width:1023px) {
  #facebook .split .text {
    height: auto;
    margin: 0 0 20px
  }
}

#facebook .split .text .title {
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%)
}

@media (max-width:1023px) {
  #facebook .split .text .title {
    position: static;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
  }
}

#facebook .overlay {
  position: relative;
  z-index: 10
}

.social {
  text-align: center;
  font-size: 0
}

@media (max-width:767px) {
  .social {
    padding-top: 70px
  }
}

.social ul {
  margin-bottom: 2em;
  padding-left: 0
}

.social ul:after {
  content: "";
  display: block;
  clear: both
}

@media (max-width:767px) {
  .social ul {
    padding-left: 0
  }
}

.social li {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  padding: 20px 0;
  float: left;
  margin-right: 10px
}

.social li:first-child {
  padding-left: 0
}

.social li:last-child {
  padding-right: 0
}

.social li:after {
  content: none!important
}

@media (max-width:1023px) {
  .social li {
    padding: 20px 5px
  }
}

.social li .social_likes_num {
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #ddd;
  padding: 10px 0;
  margin-bottom: 5px
}

.social li a {
  color: #fff;
  display: block
}

@media (max-width:1023px) {
  .social li a {
    padding: 3px 5px
  }
}

#loader-bg {
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #f5f3ee;
  opacity: 1;
  z-index: 9999
}

#loader-bg .svg_ani {
  opacity: 0
}

#loader {
  display: block;
  position: fixed;
  top: 0px;
  right: 0px;
  bottom: 0px;
  left: 0px;
  margin: auto;
  text-align: center;
  color: #ffffff;
  z-index: 10000
}

#loader img, #loader svg {
  width: 180px;
  height: auto;
  bottom: 15rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: -200px;
  fill: none
}

@media (max-width:767px) {
  #loader img, #loader svg {
    top: 30%;
    bottom: unset
  }
}

#loader p {
  bottom: 8rem;
  height: 1rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 50%
}

#loader-disp {
  position: absolute;
  top: 60px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100px;
  height: 100px
}

#load {
  color: #9ec45f;
  font-size: 10px;
  margin: auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0)
}

@-webkit-keyframes load4 {
  0%, to {
    -webkit-box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
  }
  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }
  25% {
    -webkit-box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }
  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em
  }
  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em
  }
  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em
  }
  75% {
    -webkit-box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0
  }
  87.5% {
    -webkit-box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em
  }
}

@keyframes load4 {
  0%, to {
    -webkit-box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
  }
  12.5% {
    -webkit-box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }
  25% {
    -webkit-box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
  }
  37.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em
  }
  50% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em
  }
  62.5% {
    -webkit-box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em
  }
  75% {
    -webkit-box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0
  }
  87.5% {
    -webkit-box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em
  }
}

@-webkit-keyframes loading {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  16.7% {
    -webkit-transform: translate3d(0, -10px, 0) rotate(2deg);
    transform: translate3d(0, -10px, 0) rotate(2deg)
  }
  33.3% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  50% {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-2deg);
    transform: translate3d(0, -10px, 0) rotate(-2deg)
  }
  66.7% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}

@keyframes loading {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  16.7% {
    -webkit-transform: translate3d(0, -10px, 0) rotate(2deg);
    transform: translate3d(0, -10px, 0) rotate(2deg)
  }
  33.3% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  50% {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-2deg);
    transform: translate3d(0, -10px, 0) rotate(-2deg)
  }
  66.7% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}

@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(15deg);
    transform: scale(0) rotate(15deg);
    opacity: 0.5
  }
  1% {
    -webkit-transform: scale(4) rotate(15deg);
    transform: scale(4) rotate(15deg);
    opacity: 1
  }
  20% {
    -webkit-transform: scale(50) rotate(15deg);
    transform: scale(50) rotate(15deg);
    opacity: 0
  }
  to {
    -webkit-transform: scale(0) rotate(15deg);
    transform: scale(0) rotate(15deg);
    opacity: 0
  }
}

@keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(15deg);
    transform: scale(0) rotate(15deg);
    opacity: 0.5
  }
  1% {
    -webkit-transform: scale(4) rotate(15deg);
    transform: scale(4) rotate(15deg);
    opacity: 1
  }
  20% {
    -webkit-transform: scale(50) rotate(15deg);
    transform: scale(50) rotate(15deg);
    opacity: 0
  }
  to {
    -webkit-transform: scale(0) rotate(15deg);
    transform: scale(0) rotate(15deg);
    opacity: 0
  }
}

.carousel {
  position: relative;
  left: 50%;
  width: 3240px;
  margin-left: -1620px
}

.carousel .bx-viewport li {
  height: calc(90vh - 145px)
}

@media (max-width:1023px) {
  .carousel .bx-viewport li {
    height: 80vh
  }
}

@media (min-width:500px) and (max-width:768px) {
  .carousel .bx-viewport li {
    height: 80vh
  }
}

.carousel .bx-viewport li img {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto
}

.carousel .bx-controls {
  position: relative
}

.carousel .bx-controls .bx-pager {
  position: absolute;
  bottom: 0;
  width: 100%
}

.blur-box {
  width: 100%;
  height: 120px;
  max-width: 760px
}

.blur-box:before {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  opacity: 0.5;
  -webkit-filter: blur(8px);
  filter: blur(8px);
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 10
}

.blur-box:after {
  content: '';
  width: 100%;
  height: 100%;
  background-image: var(--bg);
  background-size: cover;
  background-position: 0 -500px;
  background-attachment: fixed;
  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  -webkit-filter: blur(8px);
  filter: blur(8px)
}

#opening span {
  display: inline-block;
  text-shadow: 0 0 0 whitesmoke;
  -webkit-animation: smoky 5s 3s both;
  animation: smoky 5s 3s both
}

#opening span:nth-child(2n) {
  -webkit-animation-name: smoky-mirror;
  animation-name: smoky-mirror
}

#opening span:first-of-type {
  -webkit-animation-delay: 3.1s;
  animation-delay: 3.1s
}

#opening span:nth-of-type(2) {
  -webkit-animation-delay: 3.2s;
  animation-delay: 3.2s
}

#opening span:nth-of-type(3) {
  -webkit-animation-delay: 3.3s;
  animation-delay: 3.3s
}

#opening span:nth-of-type(4) {
  -webkit-animation-delay: 3.4s;
  animation-delay: 3.4s
}

#opening span:nth-of-type(5) {
  -webkit-animation-delay: 3.5s;
  animation-delay: 3.5s
}

#opening span:nth-of-type(6) {
  -webkit-animation-delay: 3.6s;
  animation-delay: 3.6s
}

#opening span:nth-of-type(7) {
  -webkit-animation-delay: 3.7s;
  animation-delay: 3.7s
}

#opening span:nth-of-type(8) {
  -webkit-animation-delay: 3.8s;
  animation-delay: 3.8s
}

#opening span:nth-of-type(9) {
  -webkit-animation-delay: 3.9s;
  animation-delay: 3.9s
}

#opening span:nth-of-type(10) {
  -webkit-animation-delay: 4s;
  animation-delay: 4s
}

#opening span:nth-of-type(11) {
  -webkit-animation-delay: 4.1s;
  animation-delay: 4.1s
}

#opening span:nth-of-type(12) {
  -webkit-animation-delay: 4.2s;
  animation-delay: 4.2s
}

#opening span:nth-of-type(13) {
  -webkit-animation-delay: 4.3s;
  animation-delay: 4.3s
}

#opening span:nth-of-type(14) {
  -webkit-animation-delay: 4.4s;
  animation-delay: 4.4s
}

#opening span:nth-of-type(15) {
  -webkit-animation-delay: 4.5s;
  animation-delay: 4.5s
}

#opening span:nth-of-type(16) {
  -webkit-animation-delay: 4.6s;
  animation-delay: 4.6s
}

#opening span:nth-of-type(17) {
  -webkit-animation-delay: 4.7s;
  animation-delay: 4.7s
}

#opening span:nth-of-type(18) {
  -webkit-animation-delay: 4.8s;
  animation-delay: 4.8s
}

#opening span:nth-of-type(19) {
  -webkit-animation-delay: 4.9s;
  animation-delay: 4.9s
}

#opening span:nth-of-type(20) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s
}

#opening span:nth-of-type(21) {
  -webkit-animation-delay: 5.1s;
  animation-delay: 5.1s
}

@-webkit-keyframes smoky {
  60% {
    text-shadow: 0 0 40px whitesmoke
  }
  to {
    -webkit-transform: translate3d(15rem, -8rem, 0) rotate(-40deg) skewX(70deg) scale(1.5);
    transform: translate3d(15rem, -8rem, 0) rotate(-40deg) skewX(70deg) scale(1.5);
    text-shadow: 0 0 20px whitesmoke;
    opacity: 0
  }
}

@keyframes smoky {
  60% {
    text-shadow: 0 0 40px whitesmoke
  }
  to {
    -webkit-transform: translate3d(15rem, -8rem, 0) rotate(-40deg) skewX(70deg) scale(1.5);
    transform: translate3d(15rem, -8rem, 0) rotate(-40deg) skewX(70deg) scale(1.5);
    text-shadow: 0 0 20px whitesmoke;
    opacity: 0
  }
}

@-webkit-keyframes smoky-mirror {
  60% {
    text-shadow: 0 0 40px whitesmoke
  }
  to {
    -webkit-transform: translate3d(18rem, -8rem, 0) rotate(-40deg) skewX(-70deg) scale(2);
    transform: translate3d(18rem, -8rem, 0) rotate(-40deg) skewX(-70deg) scale(2);
    text-shadow: 0 0 20px whitesmoke;
    opacity: 0
  }
}

@keyframes smoky-mirror {
  60% {
    text-shadow: 0 0 40px whitesmoke
  }
  to {
    -webkit-transform: translate3d(18rem, -8rem, 0) rotate(-40deg) skewX(-70deg) scale(2);
    transform: translate3d(18rem, -8rem, 0) rotate(-40deg) skewX(-70deg) scale(2);
    text-shadow: 0 0 20px whitesmoke;
    opacity: 0
  }
}

#lower.mansion .post-content h2 {
  width: 100%;
  border-bottom: none!important
}

#lower.mansion .post-content h3 {
  border-left: none!important
}

@media (max-width:1023px) {
  #lower.mansion .post-content .headcopy {
    margin-bottom: 0!important
  }
}

#lower.water .post-content h2 {
  width: 100%;
  border-bottom: none!important
}

#lower.water .post-content h3 {
  border-left: none!important
}

#lower.water .post-content .headcopy {
  margin-bottom: 0!important
}

#lower.water .post-content .headcopy .tit {
  color: #fff!important
}

#lower.subcontractor .elementor-widget-heading.elementor-widget-heading .elementor-heading-title {
  color: #fff!important;
  border-bottom: 0!important
}

#lower.benefit #bussiness .list-article-vertical, #lower.company #bussiness .list-article-vertical {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch
}

#lower.benefit #bussiness .list-article-vertical-inner, #lower.company #bussiness .list-article-vertical-inner {
  background: rgba(255, 255, 255, 0.3);
  border: 1px solid #eee;
  padding: 30px;
  width: calc(80% / 3);
  margin-bottom: 32px
}

@media (max-width:1023px) {
  #lower.benefit #bussiness .list-article-vertical-inner, #lower.company #bussiness .list-article-vertical-inner {
    width: 90%
  }
}

#lower.benefit #bussiness .list-article-vertical-inner .title, #lower.company #bussiness .list-article-vertical-inner .title {
  text-align: center
}

#lower.benefit #bussiness .list-article-vertical-inner:hover, #lower.company #bussiness .list-article-vertical-inner:hover {
  background: rgba(158, 196, 95, 0.3)
}

#lower.benefit #bussiness .icon, #lower.company #bussiness .icon {
  width: 60px;
  margin-bottom: 32px
}

#lower .sitemap .after-tf {
  display: none
}

#lower .sitemap .after-shine {
  display: none
}

#lower .section#intro {
  padding: 0 0 60px 0
}

#lower.flow .section .inner, #lower.flow .section .table2 table, #lower.flow .section .table table, .table2 #lower.flow .section table, .table #lower.flow .section table {
  max-width: 600px
}

#lower.flow p {
  margin-bottom: 24px
}

#lower.flow .list-article-vertical-inner {
  margin-bottom: 64px
}

@media (max-width:1023px) {
  #lower.about .text, #lower.access .text, #lower.benefit .text, #lower.exterior .text, #lower.interior .text, #lower.paint .text, #lower.price .text, #lower.recruit .text, #lower.scrap .text, #lower.water .text, #lower.waterproof .text {
    width: 100%!important;
    padding: 0 10px!important
  }
}

#lower.about .subheadcopy, #lower.access .subheadcopy, #lower.benefit .subheadcopy, #lower.exterior .subheadcopy, #lower.interior .subheadcopy, #lower.paint .subheadcopy, #lower.price .subheadcopy, #lower.recruit .subheadcopy, #lower.scrap .subheadcopy, #lower.water .subheadcopy, #lower.waterproof .subheadcopy {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: lighter
}

#lower.about .description, #lower.access .description, #lower.benefit .description, #lower.exterior .description, #lower.interior .description, #lower.paint .description, #lower.price .description, #lower.recruit .description, #lower.scrap .description, #lower.water .description, #lower.waterproof .description {
  width: 90%;
  margin: 0 auto;
  text-align: left
}

@media (max-width:767px) {
  #lower.about .description, #lower.access .description, #lower.benefit .description, #lower.exterior .description, #lower.interior .description, #lower.paint .description, #lower.price .description, #lower.recruit .description, #lower.scrap .description, #lower.water .description, #lower.waterproof .description {
    width: 95%;
    text-align: justify
  }
}

#lower.about .description p, #lower.access .description p, #lower.benefit .description p, #lower.exterior .description p, #lower.interior .description p, #lower.paint .description p, #lower.price .description p, #lower.recruit .description p, #lower.scrap .description p, #lower.water .description p, #lower.waterproof .description p {
  margin-bottom: 64px
}

#lower.about .description a, #lower.access .description a, #lower.benefit .description a, #lower.exterior .description a, #lower.interior .description a, #lower.paint .description a, #lower.price .description a, #lower.recruit .description a, #lower.scrap .description a, #lower.water .description a, #lower.waterproof .description a {
  color: #1d3994
}

#lower.about .list-article-vertical-inner .description, #lower.access .list-article-vertical-inner .description, #lower.benefit .list-article-vertical-inner .description, #lower.exterior .list-article-vertical-inner .description, #lower.interior .list-article-vertical-inner .description, #lower.paint .list-article-vertical-inner .description, #lower.price .list-article-vertical-inner .description, #lower.recruit .list-article-vertical-inner .description, #lower.scrap .list-article-vertical-inner .description, #lower.water .list-article-vertical-inner .description, #lower.waterproof .list-article-vertical-inner .description {
  width: 100%
}

#lower.about .list-article-vertical-inner .text, #lower.access .list-article-vertical-inner .text, #lower.benefit .list-article-vertical-inner .text, #lower.exterior .list-article-vertical-inner .text, #lower.interior .list-article-vertical-inner .text, #lower.paint .list-article-vertical-inner .text, #lower.price .list-article-vertical-inner .text, #lower.recruit .list-article-vertical-inner .text, #lower.scrap .list-article-vertical-inner .text, #lower.water .list-article-vertical-inner .text, #lower.waterproof .list-article-vertical-inner .text {
  padding: 10px
}

@media (max-width:1023px) {
  #lower.about .image, #lower.access .image, #lower.benefit .image, #lower.exterior .image, #lower.interior .image, #lower.paint .image, #lower.price .image, #lower.recruit .image, #lower.scrap .image, #lower.water .image, #lower.waterproof .image {
    width: 100%!important;
    padding: 0 10px!important
  }
}

#lower.about .description, #lower.about .table2, #lower.access .description, #lower.access .table2 {
  width: 60%!important;
  min-width: 640px;
  margin: auto
}

@media (max-width:767px) {
  #lower.about .description, #lower.about .table2, #lower.access .description, #lower.access .table2 {
    width: 100%!important;
    min-width: auto
  }
}

#lower.about .parts-attention, #lower.access .parts-attention {
  background: #9ec45f;
  text-align: center
}

#lower.about #mission img.name, #lower.about #staff img.name, #lower.access #mission img.name, #lower.access #staff img.name {
  vertical-align: top
}

#lower.about #mission .list-article-vertical-inner, #lower.about #staff .list-article-vertical-inner, #lower.access #mission .list-article-vertical-inner, #lower.access #staff .list-article-vertical-inner {
  max-width: 740px;
  margin: 0 auto 64px auto;
  padding: 0 30px
}

#lower.about #mission .list-article-vertical-inner h2, #lower.about #staff .list-article-vertical-inner h2, #lower.access #mission .list-article-vertical-inner h2, #lower.access #staff .list-article-vertical-inner h2 {
  text-align: center;
  margin-bottom: 32px
}

#lower.about #mission .list-article-vertical-inner h3, #lower.about #staff .list-article-vertical-inner h3, #lower.access #mission .list-article-vertical-inner h3, #lower.access #staff .list-article-vertical-inner h3 {
  text-align: center;
  margin-bottom: 32px;
  position: relative
}

#lower.about #mission .list-article-vertical-inner h3:after, #lower.about #staff .list-article-vertical-inner h3:after, #lower.access #mission .list-article-vertical-inner h3:after, #lower.access #staff .list-article-vertical-inner h3:after {
  content: '';
  border-bottom: 1px #eee solid;
  width: 100px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0px
}

#lower.about #mission .list-article-vertical-inner .image, #lower.about #staff .list-article-vertical-inner .image, #lower.access #mission .list-article-vertical-inner .image, #lower.access #staff .list-article-vertical-inner .image {
  width: 60%;
  border-radius: 50%;
  margin: 0 auto 32px auto
}

#lower.about #mission .list-article-vertical-inner .image .img, #lower.about #staff .list-article-vertical-inner .image .img, #lower.access #mission .list-article-vertical-inner .image .img, #lower.access #staff .list-article-vertical-inner .image .img {
  border-radius: 50%
}

#lower.about #mission .list-article-vertical-inner .image .img.no, #lower.about #staff .list-article-vertical-inner .image .img.no, #lower.access #mission .list-article-vertical-inner .image .img.no, #lower.access #staff .list-article-vertical-inner .image .img.no {
  border-radius: 0
}

#lower.about #mission .list-article-vertical-inner .image .src:after, #lower.about #staff .list-article-vertical-inner .image .src:after, #lower.access #mission .list-article-vertical-inner .image .src:after, #lower.access #staff .list-article-vertical-inner .image .src:after {
  padding: 100% 0 0
}

#lower.about #mission .list-article-vertical-inner .description, #lower.about #staff .list-article-vertical-inner .description, #lower.access #mission .list-article-vertical-inner .description, #lower.access #staff .list-article-vertical-inner .description {
  font-size: 14px;
  font-size: 1.4rem
}

#lower.about #mission .list-article-vertical-inner .description p, #lower.about #staff .list-article-vertical-inner .description p, #lower.access #mission .list-article-vertical-inner .description p, #lower.access #staff .list-article-vertical-inner .description p {
  margin-bottom: 32px
}

#lower.about #mission .list-article-vertical-inner .description ul, #lower.about #staff .list-article-vertical-inner .description ul, #lower.access #mission .list-article-vertical-inner .description ul, #lower.access #staff .list-article-vertical-inner .description ul {
  width: 100%;
  background: #f5f5f5;
  padding: 30px;
  text-align: left
}

#lower.about #mission .list-article-vertical-inner .description li, #lower.about #staff .list-article-vertical-inner .description li, #lower.access #mission .list-article-vertical-inner .description li, #lower.access #staff .list-article-vertical-inner .description li {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left
}

#lower.about #mission .list-article-vertical-inner .description li i, #lower.about #staff .list-article-vertical-inner .description li i, #lower.access #mission .list-article-vertical-inner .description li i, #lower.access #staff .list-article-vertical-inner .description li i {
  font-size: 12px;
  font-size: 1.2rem;
  vertical-align: middle
}

#lower.recruit .section .greeting {
  margin-bottom: 60px
}

#lower.recruit .section .text {
  padding: 0;
  text-align: justify
}

#lower.recruit .section .text .subtitle {
  padding: 0 40px
}

#lower.recruit .section .text .description {
  margin-bottom: 30px;
  padding: 0 40px
}

@media (max-width:767px) {
  #lower.recruit .section .text .description {
    padding: 0 20px
  }
  #lower.recruit .section .text .description.small {
    font-size: 12px;
    font-size: 1.2rem
  }
}

#lower.recruit .section .text .description p {
  margin-bottom: 1.5em
}

#lower.recruit .section .text ul {
  background: rgba(158, 196, 95, 0.05);
  border: 1px solid #9ec45f;
  padding: 20px 30px
}

#lower.recruit .section .text li {
  padding: 5px 0
}

#lower.recruit .section .text i {
  font-size: 20px;
  font-size: 2rem;
  vertical-align: middle;
  margin-right: 6px;
  margin-bottom: 3px
}

@media (max-width:1023px) {
  #lower.recruit .section .image {
    margin-bottom: 30px
  }
}

@media (max-width:767px) {
  #lower.recruit .section .split>div {
    width: 100%!important
  }
}

#lower.recruit .section .description-nopadding .description {
  padding: 0!important
}

#lower.recruit.work .section-image .title {
  text-align: center
}

#lower.recruit.recruit .voice .description {
  padding: 10px 0
}

#lower.recruit.recruit main .summary {
  background: -webkit-gradient(linear, left top, right bottom, from(#9ec45f), to(#2b241e));
  background: -moz-linear-gradient(left, #9ec45f, #2b241e);
  background: -webkit-gradient(linear, left top, right top, from(#9ec45f), to(#2b241e));
  background: -webkit-linear-gradient(left, #9ec45f, #2b241e);
  background: -o-linear-gradient(left, #9ec45f, #2b241e);
  background: linear-gradient(left, #9ec45f, #2b241e)
}

#lower.recruit.recruit main .summary .number {
  font-size: 60px;
  font-size: 6rem;
  color: #fff;
  font-family: 'Impact'
}

@media (max-width:1023px) {
  #lower.recruit.recruit main .summary .number {
    font-size: 40px;
    font-size: 4rem
  }
}

#lower.recruit.recruit main .summary:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -webkit-radial-gradient(50% 50%, circle, transparent 70%, #2b241e 90%);
  background: -o-radial-gradient(50% 50%, circle, transparent 70%, #2b241e 90%);
  background: radial-gradient(circle at 50% 50%, transparent 70%, #2b241e 90%);
  z-index: -1
}

#lower.recruit.recruit .table td {
  color: #fff
}

@media (max-width:1023px) {
  #lower #performance .image {
    padding: 10px!important
  }
}

.intro-image {
  position: absolute;
  top: 40px;
  left: 640px;
  width: 400px
}

@media (max-width:1023px) {
  .intro-image {
    width: 100%;
    top: 120px;
    left: 0;
    z-index: -1
  }
}

.d_layout_colum-inner.box {
  width: 60%;
  margin: 0 auto
}

@media (max-width:1023px) {
  .d_layout_colum-inner.box {
    width: 95%
  }
}

@media (max-width:1023px) {
  .d_layout_colum-inner .youtube {
    width: 100%
  }
}

@-webkit-keyframes rainbow {
  to {
    background-position-x: 200%
  }
}

@keyframes rainbow {
  to {
    background-position-x: 200%
  }
}

#visual-sub {
  padding-top: 149px
}

@media (max-width:1023px) {
  #visual-sub {
    padding-top: 62px
  }
}

#fixarea {
  opacity: 1;
  visibility: visible
}

#fixarea .contact {
  background: #333;
  color: #fff
}

#fixarea .contact a {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 40px 10px
}

#fixarea .contact i {
  font-size: 12px;
  font-size: 1.2rem
}

#fixarea .sns {
  background: none
}

#product {
  background: none!important;
  margin: 200px 0;
  padding: 0;
  position: relative
}

@media (max-width:1023px) {
  #product {
    margin: 40px 0
  }
}

#product:after {
  height: 0;
  display: block;
  content: "";
  position: absolute;
  top: 1000px;
  left: 0;
  right: 0;
  width: 150%;
  margin: 0 0 0 -15%;
  background: #f5f3ee;
  -webkit-transform-origin: center top;
  -ms-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotate(-15deg);
  -ms-transform: rotate(-15deg);
  transform: rotate(-15deg);
  z-index: 9
}

#product.active_back:after {
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  height: 500px
}

#product .ovv1 {
  width: 100%;
  height: 508px;
  margin-bottom: 2px;
  display: table
}

@media (max-width:1023px) {
  #product .ovv1 {
    height: 180px
  }
}

#product .ovv2 {
  width: 100%;
  height: 253px;
  padding-right: 2px;
  display: table
}

@media (max-width:1023px) {
  #product .ovv2 {
    height: 180px
  }
}

#product .ovv3 {
  width: 100%;
  height: 253px;
  display: table
}

@media (max-width:1023px) {
  #product .ovv3 {
    height: 180px
  }
}

#product .ovv4 {
  width: 100%;
  height: 253px;
  padding-right: 2px;
  display: table;
  margin-bottom: 2px
}

@media (max-width:1023px) {
  #product .ovv4 {
    height: 180px
  }
}

#product .ovv5 {
  width: 100%;
  height: 253px;
  display: table;
  margin-bottom: 2px
}

@media (max-width:1023px) {
  #product .ovv5 {
    height: 180px
  }
}

#product .ovv6 {
  clear: both;
  width: 100%;
  height: 508px;
  display: table
}

@media (max-width:1023px) {
  #product .ovv6 {
    height: 180px
  }
}

#product .dcell {
  display: table-cell;
  text-align: center;
  vertical-align: middle
}

#product h3 {
  color: #fff;
  line-height: 1.1;
  text-shadow: 0 0 2px #000;
  position: relative;
  z-index: 10
}

#product h3 .en, #product h3 .jp {
  display: block
}

#product h3 .en {
  font-size: 40px;
  font-size: 4rem;
  font-family: 'Anton', sans-serif
}

#product h3 .jp {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold
}

#product .f-left {
  float: left
}

#product a {
  display: block;
  overflow: hidden;
  opacity: 1;
  position: relative
}

#product a:before {
  content: "";
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0
}

#product a:after {
  content: "";
  background: rgba(0, 0, 0, 0.5);
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  position: absolute;
  z-index: 1
}

#product a:hover:before {
  background-color: rgba(158, 196, 95, 0.8);
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  opacity: 1
}

#product .left ul {
  margin-right: 1px
}

#product .right ul {
  margin-left: 1px
}

#product .left .block_t, #product .right .block_t {
  margin-bottom: 2px
}

#product .left .block_b, #product .right .block_b {
  margin-bottom: 2px
}

#product .left .block_r, #product .right .block_r {
  margin-right: 1px
}

#product .left .block_l, #product .right .block_l {
  margin-left: 1px
}

#product li {
  background-size: cover
}

@media (max-width:1023px) {
  #product .left .split>div {
    margin-bottom: 2px
  }
}

.mincho {
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", serif
}

.section-black {
  background: #000!important
}

.section-white {
  background: #fff!important
}

.list-bullet {
  border-right: 1px dashed #181818;
  margin-bottom: 30px;
  padding: 60px 0 0 0
}

@media (max-width:767px) {
  .list-bullet {
    text-align: left
  }
}

.list-bullet li {
  height: 60px;
  counter-increment: section;
  margin-bottom: 20px;
  position: relative
}

.list-bullet li:before {
  width: 60px;
  height: 60px;
  content: "0" counter(section);
  font-size: 30px;
  font-size: 3rem;
  background: #9ec45f;
  border-radius: 50%;
  color: #fff;
  font-family: 'Anton', sans-serif;
  letter-spacing: .1em;
  line-height: 74px;
  position: absolute;
  text-align: center;
  top: 0;
  left: 0
}

.list-bullet li:nth-of-type(n+10) {
  color: #000
}

.list-bullet li:nth-of-type(n+10):before {
  content: counter(section)
}

.list-bullet li:after {
  content: 'Feature';
  font-size: 10px;
  font-size: 1rem;
  position: absolute;
  top: 6px;
  left: 14px;
  color: #fff
}

@media (max-width:1023px) {
  .list-bullet li {
    width: 70%!important;
    margin: 0 auto 20px auto
  }
}

@media (max-width:767px) {
  .list-bullet li {
    width: 100%!important
  }
}

.list-bullet li .radius, .list-bullet li a {
  width: 95%;
  border-radius: 50%;
  display: block;
  position: relative;
  margin: auto;
  overflow: hidden
}

.list-bullet li .image {
  background: none;
  overflow: initial
}

.list-bullet li .image .src {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-block;
  line-height: 1
}

.list-bullet li .image .src:after {
  content: '';
  display: block;
  padding: 100% 0 0 0
}

.list-bullet li .text {
  width: 100%;
  color: #000;
  text-align: left;
  padding: 0 0 0 80px
}

.list-bullet li .text .title {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  padding-left: 5px
}

.list-bullet li .text .title strong {
  font-size: 26px;
  font-size: 2.6rem;
  color: #b4df6c;
  font-weight: bold
}

.list-bullet li .text .title strong.small {
  font-size: 12px;
  font-size: 1.2rem
}

@media (max-width:767px) {
  .list-bullet li .text .title strong {
    font-size: 20px;
    font-size: 2rem
  }
}

.list-bullet li .text .subtitle {
  font-size: 12px;
  font-size: 1.2rem;
  color: #666
}

.list-bullet .parts-image-radius50 {
  width: 40%
}

@media (max-width:767px) {
  .list-bullet .parts-image-radius50 {
    width: 100%
  }
}

.list-bullet .wrap {
  width: 60%;
  position: static
}

@media (max-width:767px) {
  .list-bullet .wrap {
    width: 100%
  }
}

.list-bullet:after {
  content: "";
  display: block;
  clear: both
}

.bn {
  margin-bottom: 60px
}

@media (max-width:767px) {
  .bn {
    margin-bottom: 0
  }
}

.btn {
  text-align: right;
  margin-bottom: 10px
}

@media (max-width:1023px) {
  .btn {
    text-align: center
  }
}

.btn-type3 {
  border-radius: 10px
}

.btn-type3:after {
  border-radius: 10px
}

.section .subtitle {
  letter-spacing: 0
}

.section .link2 {
  width: 50%;
  font-size: 20px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
  margin: 0 0 20px 0;
  padding: 0;
  position: relative;
  z-index: 10
}

@media (max-width:1023px) {
  .section .link2 {
    padding: 0
  }
}

@media (max-width:767px) {
  .section .link2 {
    width: 100%
  }
}

.section .headcopy .title {
  background: #333
}

.section .headcopy .subtitle {
  width: 80%;
  margin: auto;
  text-align: left
}

.section .headcopy .tit {
  font-size: 48px;
  font-size: 4.8rem;
  color: #181818;
  display: inline-block;
  font-weight: bold;
  margin-right: 16px
}

@media (max-width:1023px) {
  .section .headcopy .tit {
    font-size: 20px;
    font-size: 2rem
  }
}

.section .headcopy .tit:first-letter {
  color: #9ec45f
}

.section .headcopy .tit:after {
  content: "";
  width: 32px;
  height: 5px;
  display: block;
  position: absolute;
  top: 50%;
  left: -50px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #9ec45f
}

.section .headcopy .ruby {
  color: #9ec45f;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  position: static;
  opacity: 0.8
}

@media (max-width:1023px) {
  .section .headcopy .ruby {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    margin-top: 10px
  }
}

.section-bn .title {
  font-size: 16px;
  font-size: 1.6rem;
  background: none;
  color: #666;
  font-weight: bold;
  position: static;
  padding: 0
}

.section-bn .split {
  border-radius: 6px
}

.section-bn .link {
  bottom: 0
}

span.wpcf7-list-item {
  margin: 0!important
}

.wpcf7-response-output {
  font-size: 14px;
  font-size: 1.4rem;
  color: #404040
}

.arrow path {
  fill: none;
  stroke: #fff;
  stroke-width: 1;
  stroke-miterlimit: 10
}

#visual {}

#visual .vegas-slide, #visual .vegas-slide-inner {
  position: fixed!important
}

@media (max-width:767px) {
  #visual .vegas-slide, #visual .vegas-slide-inner {
    height: 100vh
  }
}

#visual-sub .vegas-slide, #visual-sub .vegas-slide-inner {
  position: fixed!important;
  -webkit-filter: grayscale(60%);
  filter: grayscale(60%)
}

@media (max-width:767px) {
  #visual-sub .vegas-slide, #visual-sub .vegas-slide-inner {
    height: 100vh
  }
}

@-webkit-keyframes huerotator {
  0% {
    -webkit-filter: hue-rotate(0deg);
    filter: hue-rotate(0deg)
  }
  to {
    -webkit-filter: hue-rotate(360deg);
    filter: hue-rotate(360deg)
  }
}

@keyframes huerotator {
  0% {
    -webkit-filter: hue-rotate(0deg);
    filter: hue-rotate(0deg)
  }
  to {
    -webkit-filter: hue-rotate(360deg);
    filter: hue-rotate(360deg)
  }
}

#sub-visual .vegas-slide, #sub-visual .vegas-slide-inner {
  position: fixed!important
}

@media (max-width:767px) {
  #sub-visual .vegas-slide, #sub-visual .vegas-slide-inner {
    height: 40vh
  }
}

.link {
  width: 100%
}

.link .btn-type1 {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 20px;
  position: relative
}

.link .btn-type1 svg {
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto
}

@media (max-width:767px) {
  .link .btn-type1 {
    padding: 10px
  }
}

.home #recruit .text {
  padding: 0 30px
}

@media (max-width:1023px) {
  .home #recruit .text {
    padding: 0
  }
}

.home #firstview {
  height: 40vh;
  min-height: 350px;
  background: #fff;
  padding: 60px 0
}

@media (max-width:1023px) {
  .home #firstview {
    height: initial;
    min-height: initial
  }
}

.home #firstview .inner, .home #firstview .table2 table, .home #firstview .table table, .table2 .home #firstview table, .table .home #firstview table {
  opacity: 0;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px)
}

.home #firstview .inner>.text, .home #firstview .table2 table>.text, .home #firstview .table table>.text, .table2 .home #firstview table>.text, .table .home #firstview table>.text {
  float: right
}

@media (max-width:1023px) {
  .home #firstview .inner>.text, .home #firstview .table2 table>.text, .home #firstview .table table>.text, .table2 .home #firstview table>.text, .table .home #firstview table>.text {
    padding-right: 30px
  }
}

@media (max-width:767px) {
  .home #firstview .inner>.text, .home #firstview .table2 table>.text, .home #firstview .table table>.text, .table2 .home #firstview table>.text, .table .home #firstview table>.text {
    width: 90%!important;
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset
  }
}

.home #firstview .inner>.description, .home #firstview .table2 table>.description, .home #firstview .table table>.description, .table2 .home #firstview table>.description, .table .home #firstview table>.description {
  text-align: justify;
  height: calc(40vh - 120px);
  min-height: 240px
}

@media (max-width:767px) {
  .home #firstview .inner>.description, .home #firstview .table2 table>.description, .home #firstview .table table>.description, .table2 .home #firstview table>.description, .table .home #firstview table>.description {
    width: 90%!important;
    height: initial;
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset
  }
}

.home #intro {
  background: #f5f3ee!important;
  overflow: hidden
}

.home #intro .inner, .home #intro .table2 table, .home #intro .table table, .table2 .home #intro table, .table .home #intro table {
  max-width: 95%
}

.home #intro .list-article-vertical .image .src:after {
  padding: calc(100%) 0 0
}

.home #intro .list-article-vertical .title {
  text-align: center
}

@media (max-width:1023px) {
  .home #intro .list-article-vertical-inner {
    width: 50%!important
  }
}

@media (max-width:767px) {
  .home #intro .title {
    font-size: 18px;
    font-size: 1.8rem
  }
}

.home #intro .description {
  font-size: 16px;
  font-size: 1.6rem;
  margin: auto;
  text-align: left;
  text-shadow: rgba(255, 255, 255, 0.5) 1px 1px 0px
}

@media (max-width:1023px) {
  .home #intro .description {
    width: 95%
  }
}

.home #intro .parts-note {
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0
}

.home #intro .image-position {
  width: 60%;
  position: absolute;
  top: 180px;
  right: 0;
  z-index: -1
}

@media (max-width:1023px) {
  .home #intro .image-position {
    width: 100%;
    top: 20px
  }
}

.home #intro .linear {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #f5f3ee));
  background: -webkit-linear-gradient(transparent 0%, #f5f3ee 0%);
  background: -o-linear-gradient(transparent 0%, #f5f3ee 0%);
  background: linear-gradient(transparent 0%, #f5f3ee 0%);
  display: inline
}

.home #second .inner, .home #second .table2 table, .home #second .table table, .table2 .home #second table, .table .home #second table {
  max-width: 95%
}

.home #second .image-position {
  width: 60%;
  position: absolute;
  top: 180px;
  right: 0;
  z-index: -1
}

@media (max-width:1023px) {
  .home #second .image-position {
    width: 100%;
    top: 20px
  }
}

.home #second .description {
  font-size: 16px;
  font-size: 1.6rem;
  width: 50%;
  margin: auto;
  text-align: left
}

@media (max-width:1023px) {
  .home #second .description {
    width: 95%
  }
}

@media (max-width:1023px) {
  .home #second .linear {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff));
    background: -webkit-linear-gradient(transparent 0%, #fff 0%);
    background: -o-linear-gradient(transparent 0%, #fff 0%);
    background: linear-gradient(transparent 0%, #fff 0%);
    display: inline
  }
}

.home #bussiness .list-article-vertical {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch
}

.home #bussiness .list-article-vertical-inner {
  background: rgba(255, 255, 255, 0.3);
  border: 1px solid #eee;
  padding: 30px;
  width: calc(80% / 3);
  margin-bottom: 32px
}

@media (max-width:1023px) {
  .home #bussiness .list-article-vertical-inner {
    width: 90%
  }
}

.home #bussiness .list-article-vertical-inner .title {
  text-align: center
}

.home #bussiness .list-article-vertical-inner:hover {
  background: rgba(158, 196, 95, 0.3)
}

.home #bussiness .icon {
  width: 60px;
  margin-bottom: 32px
}

.home #blog .inner>.description, .home #blog .table2 table>.description, .home #blog .table table>.description, .table2 .home #blog table>.description, .table .home #blog table>.description {
  width: 70%;
  margin: auto;
  text-align: justify
}

@media (max-width:767px) {
  .home #blog .inner>.description, .home #blog .table2 table>.description, .home #blog .table table>.description, .table2 .home #blog table>.description, .table .home #blog table>.description {
    width: 90%
  }
}

.home #blog .split {
  font-size: 0!important
}

.home #blog .list-article-vertical .image {
  outline: 1px solid #806b44;
  outline-offset: -10px
}

.home #blog .list-article-horizontal {
  width: 90%;
  margin: 0 auto
}

.home #blog .list-article-horizontal .image {
  outline: 1px solid #806b44;
  outline-offset: -10px
}

@media (max-width:1023px) {
  .home #blog .list-article-horizontal .image {
    margin-bottom: 16px
  }
}

.home #blog .list-article-horizontal .text {
  width: calc(100% - 250px)
}

@media (max-width:1023px) {
  .home #blog .list-article-horizontal .text {
    width: 100%
  }
}

.home #blog .list-article-horizontal a {
  background: rgba(255, 255, 255, 0.05);
  padding: 20px
}

.home #information {
  background: initial
}

.home #information .inner>.description, .home #information .table2 table>.description, .home #information .table table>.description, .table2 .home #information table>.description, .table .home #information table>.description {
  width: 70%;
  margin: auto;
  text-align: justify
}

@media (max-width:767px) {
  .home #information .inner>.description, .home #information .table2 table>.description, .home #information .table table>.description, .table2 .home #information table>.description, .table .home #information table>.description {
    width: 90%
  }
}

.home #information .split {
  font-size: 0!important
}

.home #blog2 {
  background: #f5f5f5
}

.home #performance {
  background: #fff
}

.home #content-news {
  background: #b4df6c
}

.home #content-news .headcopy .subtitle {
  color: #333
}

.home #content-news .headcopy .title {
  background: #333
}

.home #third {
  background: #fff
}

.home #event {
  background: #9ec45f!important
}

.home #event h3.title {
  margin-bottom: 15px;
  text-align: center
}

.home #event h3.title:after {
  content: '';
  width: 237px;
  height: 10px;
  background-image: url(../img/common/underline.png);
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto
}

.home #sound {
  padding: 20vw 0;
  position: relative
}

@media (max-width:767px) {
  .home #sound {
    padding: 50vw 0
  }
}

.home #sound .item {
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2vw;
  margin: auto
}

.home #sound h2, .home #sound h3 {
  font-weight: bold;
  text-shadow: 0 0 2px #000
}

.home #sound h2 {
  font-size: 30px;
  font-size: 3rem
}

.home #sound h3 {
  font-size: 20px;
  font-size: 2rem
}

.home #sound .ruby {
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  line-height: 1
}

@media (max-width:1023px) {
  .home #service {
    padding: 0
  }
}

.home #service .text {
  font-size: 24px;
  font-size: 2.4rem;
  color: #fff;
  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;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-shadow: black 0px 0px 5px
}

.slanting:after {
  height: 0;
  display: block;
  content: "";
  position: absolute;
  top: 300px;
  left: 0;
  right: 0;
  width: 150%;
  margin: 0 0 0 -15%;
  background: rgba(158, 196, 95, 0.1);
  -webkit-transform-origin: center top;
  -ms-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotate(35deg);
  -ms-transform: rotate(35deg);
  transform: rotate(35deg);
  z-index: -1
}

.slanting.active:after {
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  height: 500px
}

.slanting2:after {
  height: 0;
  display: block;
  content: "";
  position: absolute;
  top: 240px;
  left: 0;
  right: 0;
  width: 150%;
  margin: 0 0 0 -35%;
  background: rgba(158, 196, 95, 0.1);
  -webkit-transform-origin: center top;
  -ms-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotate(-35deg);
  -ms-transform: rotate(-35deg);
  transform: rotate(-35deg);
  z-index: -1
}

.slanting2.active:after {
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  height: 500px
}

.slanting3:after {
  height: 0;
  display: block;
  content: "";
  position: absolute;
  top: 300px;
  left: 0;
  right: 0;
  width: 150%;
  margin: 0 0 0 -15%;
  background: rgba(158, 196, 95, 0.1);
  -webkit-transform-origin: center top;
  -ms-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotate(35deg);
  -ms-transform: rotate(35deg);
  transform: rotate(35deg);
  z-index: -1
}

.slanting3.active:after {
  -webkit-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  -o-transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: all 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  height: 500px
}

.triangle1 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 30vh 60vw;
  border-color: transparent transparent rgba(0, 0, 0, 0.3) transparent;
  position: absolute;
  bottom: 0;
  right: 0
}

.triangle2 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40vh 20vw 0 0;
  border-color: rgba(0, 0, 0, 0.3) transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0
}

.shine {
  width: 50%;
  height: 70px;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  border-radius: 50%
}

.shine_menu {
  width: 50%;
  height: 70px;
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-filter: blur(20px);
  filter: blur(20px);
  border-radius: 50%
}

.padding100:after {
  padding: 100% 0 0!important
}

.top_concept, .top_concept_none {
  padding-top: 270px
}

@media (max-width:767px) {
  .top_concept, .top_concept_none {
    padding-top: 400px
  }
}

@media (max-width:767px) {
  .top_concept_none iframe, .top_concept iframe {
    width: 100%
  }
}

.top_concept_none h2, .top_concept h2 {
  margin-bottom: 30px
}

.top_concept_none h3, .top_concept h3 {
  margin-bottom: 80px;
  font-size: 2.8rem;
  line-height: 1.8;
  font-weight: lighter;
  position: relative
}

@media (max-width:767px) {
  .top_concept_none h3, .top_concept h3 {
    font-size: 20px;
    font-size: 2rem
  }
}

.top_concept_none p, .top_concept p {
  line-height: 2
}

.top_concept .top_concept_block, .top_concept_none .top_concept_block {
  position: relative;
  max-width: 980px;
  width: 100%;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.9);
  margin: 0 auto;
  text-align: center;
  margin-top: -340px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

.top_concept .top_concept_block .underline:after, .top_concept_none .top_concept_block .underline:after {
  content: '';
  width: 237px;
  height: 10px;
  background-image: url(../img/common/underline.png);
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto
}

.top_concept .deco_box, .top_concept_none .deco_box {
  position: relative;
  padding: 60px 0 50px;
  border: 1px solid #C2BAAC;
  background-image: -webkit-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -webkit-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -webkit-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -webkit-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px);
  background-image: -o-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -o-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -o-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px), -o-linear-gradient(bottom, #C2BAAC 0px, #C2BAAC 10px);
  background-image: linear-gradient(to top, #C2BAAC 0px, #C2BAAC 10px), linear-gradient(to top, #C2BAAC 0px, #C2BAAC 10px), linear-gradient(to top, #C2BAAC 0px, #C2BAAC 10px), linear-gradient(to top, #C2BAAC 0px, #C2BAAC 10px);
  background-position: left top, right top, left bottom, right bottom;
  background-size: 10px 10px;
  background-repeat: no-repeat
}

#flow .inner, #flow .table2 table, #flow .table table, .table2 #flow table, .table #flow table {
  max-width: 60%
}

@media (max-width:1023px) {
  #flow .inner, #flow .table2 table, #flow .table table, .table2 #flow table, .table #flow table {
    max-width: 95%
  }
}

#flow .description {
  width: 50%!important
}

@media (max-width:1023px) {
  #flow .description {
    width: 100%!important
  }
}

#flow .description p {
  margin: 0 20px
}

#flow .list-article-vertical-inner {
  background: #fff;
  border-radius: 10px;
  padding: 24px
}

.top_concept_none {
  padding-top: 0
}

.top_concept_none .top_concept_block {
  margin-top: 0
}

.after-concept {
  width: 300px;
  height: 300px;
  background-size: cover;
  position: absolute;
  top: -160px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 100
}

@media (max-width:1023px) {
  .after-concept {
    width: 200px;
    height: 200px;
    top: 80px
  }
}


/*# sourceMappingURL=style.css.map */
/* Elementor 3+ heading reset (2026-11-02: 旧Elementorと同じく .post-content h3 等の余白を打ち消す) */
.post-content .elementor-widget-heading .elementor-heading-title{padding:0;margin:0;line-height:1;}

/* Contact Form 7 確認画面（2026-11-02: 入力欄の見た目をやめ、入力内容を文字で表示） */
.wpcf7-form input.wpcf7c-conf,
.wpcf7-form textarea.wpcf7c-conf{background:transparent!important;border:0!important;box-shadow:none!important;color:#212121!important;-webkit-text-fill-color:#212121;padding-left:0;resize:none;cursor:default;}
.wpcf7-form input.wpcf7c-conf:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px transparent inset!important;transition:background-color 9999s;}
.wpcf7-form textarea.wpcf7c-conf{field-sizing:content;height:auto!important;min-height:3em;}
.wpcf7-form tr:has(input[name=mail01].wpcf7c-conf)+tr:has(input[name=mail01].wpcf7c-conf){display:none;}
.wpcf7-form:has(.wpcf7c-conf) .submits::before{content:"入力内容をご確認のうえ「送信する」を押してください。";display:block;margin-bottom:16px;font-size:14px;font-size:1.4rem;color:#404040;}
.wpcf7-form .submits input[type=button],.wpcf7-form .submits input[type=submit]{margin:0 8px 8px;}
.wpcf7-form input.wpcf7c-btn-back{color:#212121;background:#ddd;border:1px solid #aaa;}
.wpcf7-form input.wpcf7c-btn-back:hover{background:#aaa;}
