body {
  font-size: 15px;
  font-family: sans-serif;
  background-color: #fff;
  line-height: 1.5;
  color: #5f5751; }

.serif {
  font-family: serif; }

.ls01 {
  letter-spacing: 0.1em; }

.l_grey {
  color: #525455; }

.textCenter {
  text-align: center; }

.textRight {
  text-align: right; }

.textLeft {
  text-align: left; }

.ib {
  display: inline-block; }

.max540 {
  max-width: 580px;
  margin-left: auto;
  margin-right: auto; }

.max640 {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto; }

.max700 {
  max-width: 740px;
  margin-left: auto;
  margin-right: auto; }

.max800 {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto; }

.max844 {
  max-width: 884px;
  margin-left: auto;
  margin-right: auto; }

.max850 {
  max-width: 890px;
  margin-left: auto;
  margin-right: auto; }

.max860 {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto; }

.max870 {
  max-width: 910px;
  margin-left: auto;
  margin-right: auto; }

.max890 {
  max-width: 930px;
  margin-left: auto;
  margin-right: auto; }

.max900 {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto; }

.max910 {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto; }

.max1200 {
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto; }

.max1100 {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto; }

.max1160 {
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto; }

.inview {
  transition-duration: .6s; }

.unscroll {
  transform: translateY(14px);
  -webkit-transform: translateY(14px); }

#firstView {
  height: 800px;
  position: relative;
  overflow: visible;
  margin-bottom: 10px; }
  @media screen and (max-width: 1110px) {
    #firstView {
      height: 0;
      padding-top: 100%;
      margin-bottom: 0%; } }
  #firstView .firstView--slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    #firstView .firstView--slider .slick-list, #firstView .firstView--slider .slick-track, #firstView .firstView--slider .firstView--slider--item {
      height: 100%; }

  #firstView .firstView--inner {
    max-width: 1340px;
    margin-left: auto;
    margin-right: auto;
    padding: 20px; }
    #firstView .firstView--inner .logo {
      max-width: 155px;
      margin-left: auto;
      margin-bottom: 30px; }

#c1 .boxItem {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: column; }
  #c1 .boxItem .heading {
    margin-bottom: 20px; }
  #c1 .boxItem:nth-child(2n) {
    flex-direction: column-reverse; }
    #c1 .boxItem:nth-child(2n) .heading {
      margin-top: 20px;
      margin-bottom: 0; }

#c2 {
  background-color: #f7e8ef; }
  #c2 .heading {
    position: relative;
    top: -60px; }
  #c2 .box {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    max-width: 880px;
    margin-left: auto;
    margin-right: auto;
    flex-wrap: wrap; }
    #c2 .box > * {
      width: calc(49.99% - 10px); }
      #c2 .box > *:last-child {
        margin-top: 20px;
        width: 100%; }

#c3 {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/c3-bg.jpg); }
  #c3 .heading {
    height: 73px;
    background-image: url(../img/c3-headingbg.png);
    padding: 0 20px; }
    #c3 .heading img {
      margin: 0 auto;
      position: relative;
      top: -17px; }

#c4 {
  background-image: url(../img/c4-bg.png); }
  #c4 .box {
    max-width: 1064px;
    margin-left: auto;
    margin-right: auto; }
    #c4 .box > *:first-child {
      padding-top: 40px; }
    #c4 .box > *:nth-child(2) {
      padding-top: 25px; }

.headingbg {
  height: 73px;
  background-image: url(../img/headingbg.png);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px; }

#c5 {
  background-color: #f2e0ee; }

#c6 {
  background-color: #d4f3e0; }

#c7 {
  color: #4c4948; }
  #c7 .box {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    font-family: serif; }
    #c7 .box .l {
      font-size: 28px;
      margin-right: 0.6em; }
    #c7 .box dt {
      padding: 20px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      line-height: 1.4;
      align-items: center; }
      #c7 .box dt strong {
        font-size: 122%;
        font-weight: bold; }
    #c7 .box dd {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      padding: 10px 20px 20px;
      border-bottom: 1px dashed #4c4948; }
      #c7 .box dd:last-child {
        border-bottom-width: 0; }
      #c7 .box dd .l {
        position: relative;
        top: -0.35em; }
      #c7 .box dd p {
        font-size: 122%; }

#c8 {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../img/c8-bg.jpg);
  padding-top: 120px;
  padding-bottom: 268px; }

#c9 {
  background: #ede3d6;
  position: relative; }
  #c9 .box {
    position: relative;
    z-index: 10;
    max-width: 868px;
    margin-left: auto;
    margin-right: auto; }
  #c9:before {
    content: '';
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    width: 710px;
    height: 688px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%); }
  #c9 .box2 {
    padding: 30px;
    background-color: #fff; }
    #c9 .box2 .box2in {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      max-width: 623px;
      margin-left: auto;
      margin-right: auto; }
      #c9 .box2 .box2in a {
        transition: all .3s ease 0s;
        -moz-transition: all .3s ease 0s;
        -webkit-transition: all .3s ease 0s;
        display: block; }
        #c9 .box2 .box2in a:hover {
          text-decoration: none; }
        #c9 .box2 .box2in a:hover {
          opacity: .7;
          text-decoration: none; }
      #c9 .box2 .box2in > *:first-child {
        margin-right: 20px; }

.confirmHeader {
  flex: 1;
  line-height: 1.4;
  background-color: #b0a292;
  color: #fff;
  text-align: center;
  padding: 0.8em;
  font-weight: bold;
  font-size: 129%;
  position: relative; }

#c_contact {
  position: relative;
  z-index: 10; }
  #c_contact .box {
    max-width: 868px;
    margin-left: auto;
    margin-right: auto; }
  #c_contact .txt {
    max-width: 604px;
    margin-left: auto;
    margin-right: auto;
    color: #b0a292; }
  #c_contact .contact-tab {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    #c_contact .contact-tab > * {
      cursor: pointer;
      flex: 1;
      line-height: 1.4;
      background-color: #ded8d1;
      color: #fff;
      text-align: center;
      padding: 0.8em;
      font-weight: bold;
      font-size: 129%;
      position: relative; }
      #c_contact .contact-tab > *.current {
        background-color: #b0a292; }
        #c_contact .contact-tab > *.current:after {
          content: '';
          border: 20px solid transparent;
          border-top-color: #b0a292;
          position: absolute;
          bottom: -40px;
          left: 50%;
          margin-left: -20px; }

.contact--formWrap {
  padding: 70px 20px 30px;
  border: 1px solid #b0a292;
  border-top-width: 0; }
  .contact--formWrap form {
    display: none; }
    .contact--formWrap form.current {
      display: block; }

.contactTable {
  width: 100%;
  font-size: 115%;
  max-width: 712px;
  margin-left: auto;
  margin-right: auto; }
  .contactTable label.error {
    display: block;
    color: #d80c18;
    margin-top: 10px; }
  .contactTable th,
  .contactTable td {
    padding: 15px 0em;
    text-align: left;
    line-height: 1.4;
    vertical-align: top; }
  .contactTable th {
    width: 220px;
    padding-right: 1em; }
    .contactTable th > * {
      display: inline-block;
      vertical-align: middle; }
    .contactTable th .required {
      font-size: 15px;
      background-color: #cf0000;
      padding: 0.3em 0.6em;
      margin-right: 1em;
      color: #fff;
      text-align: center;
      line-height: 1.2; }
    .contactTable th .any {
      font-size: 15px;
      background-color: #74bdf9;
      padding: 0.3em 0.6em;
      margin-right: 1em;
      color: #fff;
      text-align: center;
      line-height: 1.2; }
  .contactTable td > div {
    max-width: 410px; }
    .contactTable td > div.text {
      max-width: 450px; }
    .contactTable td > div > span {
      display: inline-block;
      vertical-align: middle; }
  .contactTable .req {
    display: block;
    color: #d80c18; }
  .contactTable .star {
    display: inline-block;
    margin-left: 4px;
    vertical-align: bottom; }
  .contactTable .formText {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    display: block;
    vertical-align: middle;
    font-size: 16px;
    padding: 0.5em 1em;
    border: 1px solid #cdcecd;
    background-color: #e9e9e9;
    border-radius: 0;
    background-image: none;
    font-size: 17px;
    width: 100%;
    max-width: 390px;
    display: inline-block;
    width: calc(100% - 1.6em); }
    .contactTable .formText.long {
      width: 24em; }
    .contactTable .formText.short {
      width: 8em; }
  .contactTable textarea.formText {
    max-width: 450px; }
  .contactTable select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    display: block;
    vertical-align: middle;
    font-size: 16px;
    padding: 0.5em 1em;
    background-color: #f5f5f5;
    border-radius: 0;
    background-image: none;
    font-size: 16px;
    border: 0;
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-image: url(../img/selecet-arrow.png);
    min-width: 240px; }
  .contactTable .formIB {
    display: inline-block;
    padding-right: 0.8em;
    width: 8em; }
  .contactTable .ib {
    display: inline-block; }
  .contactTable textarea {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    display: block;
    font-size: 16px;
    padding: 0.3em;
    border: 1px solid #9fa0a0;
    border-radius: 0;
    background-image: none;
    width: 100%; }

#formBtnBox {
  text-align: center; }
  #formBtnBox .submitBT {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none;
    display: inline-block;
    text-align: center;
    border-radius: 0;
    background-color: transparent;
    background-image: none;
    transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -webkit-transition: all .3s ease 0s;
    cursor: pointer;
    max-width: 100%;
    font-weight: bold;
    max-width: 350px;
    width: 100%;
    border: 0;
    background-color: #525252;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    padding: 1em;
    border-radius: 30px; }
    #formBtnBox .submitBT:hover {
      text-decoration: none; }
    #formBtnBox .submitBT:hover {
      opacity: .7;
      text-decoration: none; }
  #formBtnBox .prev {
    display: block;
    width: 200px;
    margin-top: 30px;
    padding: 0 0.6em;
    font-size: 15px;
    background-color: #ccc;
    color: #000;
    border-radius: 20px;
    height: 40px;
    line-height: 40px;
    background-image: none;
    margin-left: auto;
    margin-right: auto; }

#mainFooter {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../img/footbg.jpg); }
  #mainFooter .box {
    max-width: 430px;
    margin: 0 auto;
    padding: 30px;
    background-color: rgba(255, 255, 255, 0.9); }
  #mainFooter .read {
    color: #4c4948; }
  #mainFooter .logo {
    max-width: 270px;
    margin: 0 auto; }
  #mainFooter .txt {
    margin-bottom: 30px;
    max-width: 290px;
    margin-left: auto;
    margin-right: auto;
    text-align: left; }

#sideNav {
  width: 65px;
  position: fixed;
  z-index: 999;
  top: 120px;
  right: 0; }
  #sideNav a {
    margin-top: 10px;
    background-color: #947c72;
    color: #fff;
    text-align: center;
    line-height: 1.2;
    font-size: 122%;
    padding: 0.6em;
    min-height: 200px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px 0 0 8px;
    transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -webkit-transition: all .3s ease 0s; }
    #sideNav a:hover {
      text-decoration: none; }
    #sideNav a:hover {
      opacity: .7;
      text-decoration: none; }
    #sideNav a.tel {
      display: none; }
    #sideNav a .ic {
      display: block;
      width: 22px;
      margin: 0 auto; }
    #sideNav a:first-child {
      margin-top: 0; }

@media only screen and (max-width: 800px) {
  body {
    font-size: 14px; }

  #firstView {
    height: auto;
    background-position: top center;
    background-size: contain; }
    #firstView .firstView--under {
      display: none; }
    #firstView .firstView--inner .logo {
      max-width: 100px;
      margin-bottom: 140px; }
    #firstView .firstView--inner .title {
      max-width: 380px;
      margin: 0 auto; }

  #c1 .boxItem:nth-child(2n) {
    flex-direction: column; }
    #c1 .boxItem:nth-child(2n) .heading {
      margin-top: 0px;
      margin-bottom: 20px; }

  #c2 .heading {
    top: -20px; }
  #c2 .box {
    display: block; }
    #c2 .box > * {
      width: 100%;
      max-width: 320px;
      margin-top: 20px;
      margin-left: auto;
      margin-right: auto; }
      #c2 .box > *:first-child {
        margin-top: 0; }
      #c2 .box > *:last-child {
        max-width: 100%; }

  #c3 .heading img {
    max-width: 320px;
    top: 5px; }

  #c4 .box > * {
    padding: 0 !important; }

  #c8 {
    padding-top: 70px;
    padding-bottom: 120px; }

  #c9:before {
    width: 360px;
    height: 320px; }
  #c9 .box2 .box2in {
    display: block; }
    #c9 .box2 .box2in > *:first-child {
      margin-right: 0;
      margin-bottom: 30px; }
    #c9 .box2 .box2in > * img {
      margin: 0 auto;
      max-width: 220px; }

  .contactTable {
    display: block; }
    .contactTable tbody,
    .contactTable tr,
    .contactTable th,
    .contactTable td {
      display: block;
      width: 100%; }
      .contactTable tbody th,
      .contactTable tbody td,
      .contactTable tr th,
      .contactTable tr td,
      .contactTable th th,
      .contactTable th td,
      .contactTable td th,
      .contactTable td td {
        padding: 0.8em; }
      .contactTable tbody th,
      .contactTable tr th,
      .contactTable th th,
      .contactTable td th {
        border-bottom: 0;
        width: 100%;
        padding-bottom: 0; }
      .contactTable tbody td,
      .contactTable tr td,
      .contactTable th td,
      .contactTable td td {
        padding: 1em 0.8em 1.5em;
        border-bottom-width: 0; }
      .contactTable tbody tr:last-child td:last-child,
      .contactTable tr tr:last-child td:last-child,
      .contactTable th tr:last-child td:last-child,
      .contactTable td tr:last-child td:last-child {
        border-bottom-width: 1px; }
      .contactTable tbody .req,
      .contactTable tr .req,
      .contactTable th .req,
      .contactTable td .req {
        display: inline-block;
        margin-left: 0.4em; }

  #sideNav {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    top: auto;
    bottom: 0;
    width: 100%;
    height: 50px; }
    #sideNav br {
      display: none; }
    #sideNav a {
      flex: 1;
      border-radius: 0;
      min-height: 1px;
      margin-top: 0;
      position: relative;
      font-size: 86%;
      justify-content: center;
      align-items: center; }
      #sideNav a.tel {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex; }
      #sideNav a .ic {
        width: 18px;
        margin: 0 auto 4px; }
      #sideNav a:before {
        content: '';
        width: 1px;
        background-color: #fff;
        height: 96%;
        top: 2%;
        left: 0;
        display: block;
        position: absolute; }
      #sideNav a:first-child:before {
        display: none; } }
        
        #tittle-pc {
  margin-top: 1000px;
}
#tittle-sp {
  margin-top:-690px;
}

