@charset "UTF-8";
/*
  reset
--------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }
html,body{
    width: 100%;
}
html {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after {
  content: "";
  content: none; }

blockquote:before, blockquote:after {
  content: "";
  content: none; }

a {
  text-decoration: none; }
  a img {
    border: none; }

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

input[type="button"], input[type="submit"] {
  -webkit-appearance: none; }

/*
  base
--------------------------------------------- */
* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

img {
  border-style: none;
  display: block;
  vertical-align: bottom; }
  a img {
    transition: .4s; }

button {
  transition: .4s; }

a img:hover {
  opacity: .7; }
a:link {
  color: #333;
  text-decoration: underline; }
a:visited {
  color: #333; }
a:hover {
  color: #333;
  text-decoration: none; }
a:active {
  color: #333; }

.center {
  text-align: center; }

.t_left {
  text-align: left; }

.t_right {
  text-align: right; }

.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; }

.mb_10 {
  margin-bottom: 10px; }

.mb_20 {
  margin-bottom: 20px; }

.mb_30 {
  margin-bottom: 30px; }

.mb_40 {
  margin-bottom: 40px; }

.mb_50 {
  margin-bottom: 50px; }

.mb_60 {
  margin-bottom: 60px; }

.mb_70 {
  margin-bottom: 70px; }

.mb_80 {
  margin-bottom: 80px; }

.mb_90 {
  margin-bottom: 90px; }

.mb_100 {
  margin-bottom: 100px; }

.mt_10 {
  margin-top: 10px; }

.mt_20 {
  margin-top: 20px; }

.mt_30 {
  margin-top: 30px; }

.mt_40 {
  margin-top: 40px; }

.mt_50 {
  margin-top: 50px; }

.mt_60 {
  margin-top: 60px; }

.mt_70 {
  margin-top: 70px; }

.mt_80 {
  margin-top: 80px; }

.mt_90 {
  margin-top: 90px; }

.mt_100 {
  margin-top: 100px; }

.pb_10 {
  padding-bottom: 10px; }

.pb_20 {
  padding-bottom: 20px; }

.pb_30 {
  padding-bottom: 30px; }

.pb_40 {
  padding-bottom: 40px; }

.pb_50 {
  padding-bottom: 50px; }

.pb_60 {
  padding-bottom: 60px; }

.pb_70 {
  padding-bottom: 70px; }

.pb_80 {
  padding-bottom: 80px; }

.pb_90 {
  padding-bottom: 90px; }

.pb_100 {
  padding-bottom: 100px; }

.pt_10 {
  padding-top: 10px; }

.pt_20 {
  padding-top: 20px; }

.pt_30 {
  padding-top: 30px; }

.pt_40 {
  padding-top: 40px; }

.pt_50 {
  padding-top: 50px; }

.pt_60 {
  padding-top: 60px; }

.pt_70 {
  padding-top: 70px; }

.pt_80 {
  padding-top: 80px; }

.pt_90 {
  padding-top: 90px; }

.pt_100 {
  padding-top: 100px; }

.sp750, .sp500, .sp320,.sp450 {
  display: none!important;}

.pc750 {
  display: block!important; }

.top-arr {
  text-align: center !important;
  position: absolute;
  bottom: 10px;
  width: 100%; }

#home .imagearea {
  position: relative; }
  #home .imagearea .top-arr img {
    width: 54px !important;
    display: inherit; }
#home h2 img {
  width: 100%; }

@media (min-width: 769px) {
  /*
 PC common
---------------------------------------- */
  .sp-on {
    display: none!important; }

  /*.pc-on {
    display: block; }*/
  body {
    font-family: "ゴシックMB101 RH", iragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", YuGothic, "游ゴシック", Meiryo, "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 16px;
    line-height: 1.8;
    font-weight: 200;
    color: #333; }

  /*
 header
---------------------------------------- */
  #home header {
    width: 100%;
    padding: 40px 0 45px; }
    #home header .inner {
      width: 860px;
      margin: auto; }
      #home header .inner h1 {
        float: left; }
    #home header .clear {
      clear: both; }
      #home header .clear .menu_btn {
        top: 0;
        padding-top: 10px;
        z-index: 1;
        display: inline-block;
        box-shadow: 0px 0px 14px -1px #7a7a7a; }
        #home header .clear .menu_btn #right-menu {
          position: absolute;
          display: block; }

  header .inner {
    width: 100%;
    position: relative; }
  header h1 img {
    width: 100%; }
    header h1 img.toplogo {
      width: 200px; }
  header .inner .menu_btn {
    position: absolute;
    top: 40px;
    right: 30px;
    z-index: 1; }
  header .inner ul li {
    color: #fff;
    font-size: 16px;
    text-align: center; }
    header .inner ul li a {
      display: block; }

  /*
 footer
---------------------------------------- */
  footer {
    padding-bottom: 80px;
    width: 860px;
    margin: 0 auto; }
    footer .inner .footer_con {
      text-align: center;
      width: 650px;
      margin: 0 auto; }
      footer .inner .footer_con .footer_l {
        float: left;
        margin-right: 20px; }
      footer .inner .footer_con .footer_r {
        text-align: center;
        font-size: 26px; }
        footer .inner .footer_con .footer_r .name {
          line-height: 1.53;
          text-align: left; }
          footer .inner .footer_con .footer_r .name a {
            text-decoration: none; }
        footer .inner .footer_con .footer_r .address {
          font-size: 16px;
          text-align: left; }
        footer .inner .footer_con .footer_r .tel {
          letter-spacing: 0.52;
          text-align: left;
          font-size: 14px; }
          footer .inner .footer_con .footer_r .tel .txt_19 {
            font-size: 19px; }
    footer .inner .copy {
      text-align: center;
      margin-top: 57px;
      font-size: 10px;
      line-height: 2.30; }

  /*
 main
---------------------------------------- */
  main {
    width: 100%;
    margin: auto; }

  section {
    display: block;
    margin-bottom: 120px; }
    section .inner {
      width: 860px;
      margin: auto; }

  .tit_h2 {
    /*background-image: url(../img/tit_bg_pc.png);
    background-repeat: no-repeat;
    background-size: cover;*/
    background: #1c8f9e;
    width: 100%;
    font-size: 2.28em;
    color: #fff;
    text-align: center;
    padding: 5px;
    margin-bottom: 130px;
    clear: both; }

  /*
 PC index
---------------------------------------- */
  #home {
    /*追記*/ }
    #home .key .imagearea {
      width: 100%;
      margin: auto; }
      #home .key .imagearea img {
        width: 100%; }
    #home .key p {
      text-align: center;
      margin: 90px auto 100px;
      font-size: 19px;
      line-height: 2;
      letter-spacing: 2px; }
    #home .s1 {
      position: relative;
      padding-bottom: 20px; }
      #home .s1 .inner {
        overflow: hidden;
        clear: both; }
      #home .s1 h2 {
        width: 500px;
        float: left;
        /*position: absolute;
        top: 0;
        left: 0;*/
        z-index: 1; }
      #home .s1 .inner_cont_txt {
        width: 44%;
        height: 263px;
        float: left;
        vertical-align: bottom;
        position: relative; }
        #home .s1 .inner_cont_txt p {
          padding-left: 15px;
          padding-top: 15px;
          border-top: 1px solid #1b7d8c; }
        #home .s1 .inner_cont_txt .inner_cont_txt_wrap {
          position: absolute;
          bottom: 0; }
      #home .s1 .inner .inner_img {
        padding-top: 120px;
        clear: both; }
        #home .s1 .inner .inner_img img {
          width: 100%;
          margin: auto; }
    #home .s2 {
      position: relative;
      clear: both; }
      #home .s2 .inner {
        overflow: hidden; }
      #home .s2 h2 {
        /*position: absolute;
        bottom: 0;
        right: 0;*/
        width: 500px;
        float: right;
        z-index: 1; }
      #home .s2 .inner_cont_txt {
        width: 43%;
        height: 396px;
        float: right;
        font-size: 0;
        position: relative; }
        #home .s2 .inner_cont_txt .inner_cont_txt_wrap {
          padding-right: 2%;
          padding-top: 10px;
          border-top: 1px solid #1b7d8c;
          position: absolute;
          margin-top: 10px; }
          #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box {
            vertical-align: top;
            display: inline-block;
            width: calc(100% /2);
            box-sizing: border-box;
            padding-right: 30px; }
            #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box h3 {
              font-size: 19px;
              line-height: 1.3;
              margin-bottom: 10px; }
            #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box p {
              font-size: 14px;
              line-height: 1.5; }
            #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box:nth-child(2) {
              padding-right: 0; }
    #home .s3 .inner .inner_cont ul {
      width: 100%;
      font-size: 0; }
      #home .s3 .inner .inner_cont ul li {
        font-size: 17px;
        display: inline-block;
        width: calc((100% - 100px) / 3);
        vertical-align: top;
        height: 372px;
        margin: 0 50px 43px 0; }
        #home .s3 .inner .inner_cont ul li a {
          color: #fff;
          display: block;
          text-align: center;
          text-decoration: none;
          width: 100%;
          height: 100%;
          box-sizing: border-box;
          padding-top: 170px; }
        #home .s3 .inner .inner_cont ul li .box01 {
          background-color: #647878; }
          #home .s3 .inner .inner_cont ul li .box01:hover {
            background-color: #1b7d8c; }
        #home .s3 .inner .inner_cont ul li .box02 {
          padding-top: 150px;
          background-color: #647d91; }
          #home .s3 .inner .inner_cont ul li .box02:hover {
            background-color: #29abe2; }
        #home .s3 .inner .inner_cont ul li .box03 {
          background-color: #875f73; }
          #home .s3 .inner .inner_cont ul li .box03:hover {
            background-color: #c80083; }
        #home .s3 .inner .inner_cont ul li .box04 {
          background-color: #786478; }
          #home .s3 .inner .inner_cont ul li .box04:hover {
            background-color: #93278f; }
        #home .s3 .inner .inner_cont ul li .box05 {
          background-color: #5f7864;
          padding-top: 150px; }
          #home .s3 .inner .inner_cont ul li .box05:hover {
            background-color: #39b54a; }
        #home .s3 .inner .inner_cont ul li .box06 {
          background-color: #647878; }
          #home .s3 .inner .inner_cont ul li .box06:hover {
            background-color: #bada3f; }
        #home .s3 .inner .inner_cont ul li:nth-child(3n) {
          margin-right: 0; }
    #home .modal-content {
      margin: -393px 0 0 -267.5px;
      width: 535px;
      height: 786px;
      margin: auto;
      text-align: center;
      display: block;
      position: fixed;
      z-index: 3; }
      #home .modal-content h4 {
        line-height: 1;
        margin: 30px 30px;
        color: #fff;
        font-size: 42px;
        font-weight: bold;
        text-align: center; }
      #home .modal-content .inner_txt {
        padding: 0 104px;
        font-size: 14px;
        text-align: left;
        color: #fff;
        margin-bottom: 36px;
        line-height: 1.78; }
      #home .modal-content .inner_icon {
        font-size: 0;
        padding: 0 104px;
        text-align: left; }
        #home .modal-content .inner_icon p {
          display: inline-block;
          font-size: 15px;
          background-color: #fff;
          margin-right: 6px;
          margin-bottom: 6px;
          padding: 5px;
          line-height: 1; }
          #home .modal-content .inner_icon p:last-child {
            margin-right: 0; }
    #home .open01 {
      background-color: #1b7d8c; }
    #home .open02 {
      background-color: #29abe2; }
    #home .open03 {
      background-color: #c80083; }
    #home .open04 {
      background-color: #93278f; }
    #home .open05 {
      background-color: #39b54a; }
    #home .open06 {
      background-color: #bada3f; }
    #home .modal-overlay {
      z-index: 2;
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 120%;
      background-color: rgba(0, 0, 0, 0.75); }
    #home .modal-content {
      opacity: 0;
      transition: .7s;
      margin-top: 60px; }
    #home .showUp {
      opacity: 1;
      margin-top: 0;
      transition: all 0.8s ease 0.2s; }
    #home .s4 {
      margin-bottom: 23px; }
      #home .s4 .inner {
        width: 750px; }
        #home .s4 .inner .inner_cont {
          font-size: 0;
          text-align: center;
          width: 100%; }
          #home .s4 .inner .inner_cont .inner_cont_box {
            display: inline-block;
            width: calc(100% / 3);
            font-size: 19px;
            text-align: center;
            vertical-align: top; }
            #home .s4 .inner .inner_cont .inner_cont_box p .txt_27 {
              font-size: 27px; }
            #home .s4 .inner .inner_cont .inner_cont_box p .txt_50 {
              font-size: 50px; }
            #home .s4 .inner .inner_cont .inner_cont_box .txt_26 {
              font-size: 26px; }
        #home .s4 .inner .inner_cont_map {
          padding: 50px 0;
          width: 100%;
          height: 550px; }

  /*#home .s1 .inner_cont_txt::before {
    content: "";
    border-top: 1px solid #1b7d8c;
    position: absolute;
    top: 105px;
    width: 100%;
    margin-left: -1000px;
    padding-right: 1000px; }*/
  /*#home .s2 .inner_cont_txt::before {
    content: "";
    border-top: 1px solid #1b7d8c;
    position: absolute;
    top: 85px;
    width: 100%;
    margin-right: -500px;
    padding-left: 500px; }*/
  /*
 PC English
---------------------------------------- */
  .en {
    font-family: Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif; }
    .en footer .inner .name {
      line-height: 1.53; }
      .en footer .inner .name a {
        text-decoration: none;
        font-size: 23px; }
    .en footer .inner .address {
      font-size: 23px;
      line-height: 1.6; }
    .en footer .inner .tel {
      letter-spacing: 0.52;
      font-size: 26px; }
    .en footer .inner .copy {
      margin-top: 57px;
      font-size: 13px;
      line-height: 2.30; }

  #home.en .key p {
    padding: 0 10%; }
  #home.en .s1 .inner_cont_txt .inner_cont_txt_wrap {
    position: absolute;
    bottom: -9px; }
  #home.en .s2 {
    padding-top: 220px;
    margin-bottom: 240px; }
    #home.en .s2 .inner {
      overflow: inherit; }
      #home.en .s2 .inner h2 {
        position: absolute;
        bottom: 0;
        right: 0;
        padding-bottom: 100px;
        z-index: 1; }
      #home.en .s2 .inner .inner_cont_txt {
        width: 55.81%;
        height: 396px;
        float: left;
        font-size: 0;
        position: relative;
        margin-bottom: -120px; }
  #home.en .s1 .inner .inner_cont_txt::before {
    top: 85px; }
  #home.en .s2 .inner .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box h3 {
    font-size: 19px; }
  #home.en .s2 .inner .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box p {
    font-size: 14px; }
  #home.en .s2 .inner .inner_cont_txt::before {
    position: absolute;
    top: -62px; }
  #home.en .s2 .inner .clear {
    clear: both; }
  #home.en .modal-content img {
    width: 100%; }
  #home.en .modal-content h4 {
    font-size: 30px;
    font-weight: normal;
    margin: 20px 30px; }
  #home.en .s4 {
    margin-bottom: 23px; }
    #home.en .s4 .inner {
      width: 750px; }
      #home.en .s4 .inner .inner_cont {
        font-size: 0;
        text-align: center;
        width: 100%; }
        #home.en .s4 .inner .inner_cont .inner_cont_box {
          font-size: 21px;
          font-weight: bold;
          line-height: 1.7;
          text-align: center; }
          #home.en .s4 .inner .inner_cont .inner_cont_box .txt_50 {
            font-size: 35px; }
          #home.en .s4 .inner .inner_cont .inner_cont_box .line {
            margin: 14px 0 -7px; }
      #home.en .s4 .inner .inner_cont_map {
        padding: 50px 0;
        width: 100%;
        height: 550px; }

  #contact.en .s1 .inner form .btn_send {
    text-align: center; }
    #contact.en .s1 .inner form .btn_send button[type="submit"] {
      border: 0px;
      width: 200px;
      height: 50px;
      background: url(../img/submit_en.png) left top no-repeat; }

  /*
 PC results
---------------------------------------- */
  #results .key .imagearea {
    width: 100%;
    margin: auto; }
    #results .key .imagearea img {
      width: 100%; }
  #results .key p {
    text-align: center;
    margin: 89px auto; }
  #results .s1 .inner .inner_cont, #results .s3 .inner .inner_cont {
    font-size: 0; }
  #results .s1 .inner .inner_cont .inner_cont_box, #results .s3 .inner .inner_cont .inner_cont_box {
    width: calc(100% / 3);
    display: inline-block;
    font-size: 14px;
    vertical-align: top; }
  #results .s1 .inner .inner_cont .inner_cont_box img, #results .s3 .inner .inner_cont .inner_cont_box img {
    width: 100%; }
  #results .s1 .inner .inner_cont .inner_cont_box h3, #results .s3 .inner .inner_cont .inner_cont_box h3 {
    font-size: 21px;
    padding: 30px 34px 20px;
    letter-spacing: -0.06em;
    vertical-align: bottom; }
  #results .s1 .inner .inner_cont .inner_cont_box dl, #results .s3 .inner .inner_cont .inner_cont_box dl {
    font-size: 13px;
    padding: 20px 34px 30px; }
  #results .s1 .inner .inner_cont {
    border-bottom: 1px solid #1b7d8c; }
    #results .s1 .inner .inner_cont .inner_cont_box {
      border-top: 1px solid #1b7d8c;
      color: #1b7d8c;
      min-height: 300px; }
      #results .s1 .inner .inner_cont .inner_cont_box h3 {
        position: relative; }
      #results .s1 .inner .inner_cont .inner_cont_box img {
        width: 100%; }
      #results .s1 .inner .inner_cont .inner_cont_box:nth-child(2n) {
        background-color: #cdefed; }
  #results .s2 .inner .inner_cont h3 {
    font-size: 21px;
    color: #0b651d;
    margin-bottom: 40px; }
  #results .s2 .inner .inner_cont .inner_cont_txt_box {
    background-color: #a0d77e;
    border-bottom: 1px solid #0b651d;
    padding: 34px 34px 60px;
    color: #0b651d; }
  #results .s3 .inner .inner_cont {
    border-bottom: 1px solid #68007a; }
    #results .s3 .inner .inner_cont .inner_cont_box {
      border-top: 1px solid #68007a;
      min-height: 300px;
      color: #68007a; }
      #results .s3 .inner .inner_cont .inner_cont_box h3 {
        position: relative; }
      #results .s3 .inner .inner_cont .inner_cont_box:nth-child(2n) {
        background-color: #dfd1ed; }
      #results .s3 .inner .inner_cont .inner_cont_box:nth-child(5), #results .s3 .inner .inner_cont .inner_cont_box:nth-child(6) {
        border-bottom: 1px solid #68007a; }
  #results .s4 {
    margin-bottom: 23px; }
    #results .s4 .inner {
      width: 750px; }
      #results .s4 .inner .inner_cont {
        font-size: 0;
        text-align: center;
        width: 100%; }
        #results .s4 .inner .inner_cont .inner_cont_box {
          display: inline-block;
          width: calc(100% / 3);
          font-size: 19px;
          text-align: center;
          vertical-align: top; }
          #results .s4 .inner .inner_cont .inner_cont_box p .txt_27 {
            font-size: 27px; }
          #results .s4 .inner .inner_cont .inner_cont_box p .txt_50 {
            font-size: 50px; }
          #results .s4 .inner .inner_cont .inner_cont_box .txt_26 {
            font-size: 26px; }
      #results .s4 .inner .inner_cont_map {
        padding: 50px 0;
        width: 100%;
        height: 750px; }

  /*
 PC disclaimer
---------------------------------------- */
  #disclaimer .key .imagearea {
    width: 100%;
    margin: auto; }
    #disclaimer .key .imagearea img {
      width: 100%; }
  #disclaimer .key p {
    text-align: center;
    margin: 89px auto; }
  #disclaimer .s1 .inner .inner_cont {
    margin-bottom: 100px; }
    #disclaimer .s1 .inner .inner_cont h3 {
      font-size: 27px;
      color: #1b7d8c;
      border-bottom: 1px solid #1b7d8c;
      margin-bottom: 20px;
      text-align: center; }
    #disclaimer .s1 .inner .inner_cont p {
      font-size: 15px; }
    #disclaimer .s1 .inner .inner_cont:nth-child(2) {
      margin-bottom: 0; }

  /*
 PC contact
---------------------------------------- */
  #contact .key .imagearea {
    width: 100%;
    margin: auto; }
    #contact .key .imagearea img {
      width: 100%; }
  #contact .key p {
    text-align: center;
    margin: 89px auto; }
  #contact .s1 .inner form dl {
    width: 100%;
    text-align: center;
    color: #1b7d8c;
    font-size: 26px; }
    #contact .s1 .inner form dl dt {
      margin-bottom: 6px; }
    #contact .s1 .inner form dl dd {
      margin-bottom: 80px; }
      #contact .s1 .inner form dl dd input[type="text"] {
        width: 100%;
        font-size: 16px;
        padding: 13px;
        border: 1px solid #1b7d8c; }
      #contact .s1 .inner form dl dd textarea {
        width: 100%;
        height: 350px;
        font-size: 16px;
        padding: 13px;
        border: 1px solid #1b7d8c; }
  #contact .s1 .inner form .btn_send {
    text-align: center; }
    #contact .s1 .inner form .btn_send button[type="submit"] {
      border: 0px;
      width: 200px;
      height: 50px;
      background: url(../img/submit.png) left top no-repeat; }
  #contact .s1 .inner p.thanks_message {
    text-align: center;
    font-size: 18px; } }
@media (max-width: 1000px) {
  #home .s2 h2 {
    width: 50%; }
  #home .s2 .inner_cont_txt {
    width: 48%; }
    #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box {
      width: 100%;
      padding-right: 0; }
      #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box:nth-child(2) {
        padding-top: 10px; } }
@media (max-width: 900px) {
  #home .s1 h2 {
    width: 50%; }
  #home .s1 .inner_cont_txt {
    width: 50%; }
    #home .s1 .inner_cont_txt .inner_cont_txt_wrap {
      top: 10px; } }
@media (max-width: 768px) {
  /*
 SP common
---------------------------------------- */
  .sp-on {
    display: block!important; }

  .pc-on, .pc750 {
    display: none!important; }

  body {
    font-family: "ゴシックMB101 RH", iragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", YuGothic, "游ゴシック", Meiryo, "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 14px;
    line-height: 1.8;
    font-weight: 200;
    color: #333; }

  /*
 header
---------------------------------------- */
  #home header {
    width: 100%;
    padding: 25px 0;
    position: relative; }
    #home header .inner {
      margin: auto;
      width: 100%; }
      #home header .inner h1 {
        width: 109px;
        margin: auto; }
    #home header h1 img {
      width: 100%; }
    #home header .inner .clear .menu_btn a {
      position: absolute;
      top: 20%;
      right: 1%;
      z-index: 1;
      display: block;
      width: 17%; }
      #home header .inner .clear .menu_btn a img {
        width: 100%; }

  header {
    position: relative; }
    header h1 img {
      width: 100%; }
      header h1 img.toplogo {
        width: 25% !important;
        margin: 0 auto; }
    header .menu_btn a {
      position: absolute;
      top: 10px;
      right: 1%;
      z-index: 1;
      display: block;
      width: 17%; }
      header .menu_btn a img {
        width: 100%; }
    header ul {
      padding-top: 20px; }
      header ul li {
        color: #fff;
        font-size: 12px;
        text-align: center; }
        header ul li a {
          display: block; }

  /*
 footer
---------------------------------------- */
  footer {
    padding-bottom: 30px; }
    footer .inner {
      width: 100%;
      margin: auto;
      text-align: center;
      font-size: 14px; }
      footer .inner .footer_con .footer_l {
        width: 30%;
        margin: 0 auto 20px; }
        footer .inner .footer_con .footer_l img {
          width: 100%; }
      footer .inner .footer_con .footer_r .name {
        line-height: 1.53; }
        footer .inner .footer_con .footer_r .name a {
          text-decoration: none; }
      footer .inner .footer_con .footer_r .address {
        font-size: 12px;
        line-height: 2.36; }
      footer .inner .footer_con .footer_r .tel {
        letter-spacing: 0.52;
        font-size: 12px; }
        footer .inner .footer_con .footer_r .tel .txt_19 {
          font-size: 10px; }
      footer .inner .copy {
        margin-top: 20px;
        font-size: 10px; }

  /*
 main
---------------------------------------- */
  main {
    width: 100%;
    margin: auto; }

  section {
    display: block;
    margin-bottom: 46px; }
    section .inner {
      margin: auto;
      width: 92%; }

  .tit_h2 {
    /*background-image: url(../img/tit_bg_sp.png);
    background-repeat: no-repeat;
    background-size: cover;*/
    background-color: #1c8f9e;
    width: 100%;
    font-size: 1.6em;
    color: #fff;
    text-align: center;
    padding: 5px;
    margin-bottom: 50px; }

  /*
 SP index
---------------------------------------- */
  #home .key .imagearea {
    width: 100%;
    margin: auto; }
    #home .key .imagearea img {
      width: 100%; }
  #home .key p {
    text-align: center;
    margin: 48px auto;
    padding: 0 10px;
    font-size: 16px;
    line-height: 1.9; }
  #home .s1 .inner {
    overflow: hidden; }
  #home .s1 h2 {
    width: 92%;
    float: none;
    margin: auto; }
    #home .s1 h2 img {
      width: 100%; }
  #home .s1 .inner_cont_txt {
    width: 92%;
    margin: auto;
    padding: 10px 0; }
    #home .s1 .inner_cont_txt .inner_cont_txt_wrap p {
      font-size: 14px; }
  #home .s1 .inner .inner_img {
    padding-top: 45px;
    clear: both; }
    #home .s1 .inner .inner_img img {
      width: 100%;
      margin: auto; }
  #home .s2 {
    clear: both; }
    #home .s2 .inner {
      overflow: none; }
    #home .s2 h2 {
      width: 92%;
      float: none;
      margin: auto; }
      #home .s2 h2 img {
        width: 100%; }
    #home .s2 .inner_cont_txt {
      width: 92%;
      margin: auto;
      padding: 10px 0; }
    #home .s2 .inner .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box {
      width: 100%;
      padding: 10px; }
    #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box h3 {
      font-size: 18px; }
    #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box p {
      font-size: 14px;
      padding-bottom: 10px; }
      #home .s2 .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box p:nth-child(2) {
        padding-bottom: 0; }
  #home .inner .inner_cont_txt .inner_cont_txt_wrap .inner_cont_txt_box:nth-child(2) {
    padding-bottom: 0; }
  #home .s3 .inner .inner_cont ul {
    width: 100%;
    font-size: 0; }
    #home .s3 .inner .inner_cont ul li {
      font-size: 16px;
      display: inline-block;
      width: calc((100% - 17px) / 2);
      vertical-align: top;
      height: 200px;
      margin: 0 17px 17px 0; }
      #home .s3 .inner .inner_cont ul li a {
        color: #fff;
        display: block;
        text-align: center;
        text-decoration: none;
        width: 100%;
        height: 100%;
        box-sizing: border-box;
        padding-top: 85px; }
      #home .s3 .inner .inner_cont ul li .box01 {
        background-color: #647878; }
        #home .s3 .inner .inner_cont ul li .box01:hover {
          background-color: #1b7d8c; }
      #home .s3 .inner .inner_cont ul li .box02 {
        padding-top: 70px;
        background-color: #647d91; }
        #home .s3 .inner .inner_cont ul li .box02:hover {
          background-color: #29abe2; }
      #home .s3 .inner .inner_cont ul li .box03 {
        background-color: #875f73; }
        #home .s3 .inner .inner_cont ul li .box03:hover {
          background-color: #c80083; }
      #home .s3 .inner .inner_cont ul li .box04 {
        background-color: #786478; }
        #home .s3 .inner .inner_cont ul li .box04:hover {
          background-color: #93278f; }
      #home .s3 .inner .inner_cont ul li .box05 {
        background-color: #5f7864;
        padding-top: 70px; }
        #home .s3 .inner .inner_cont ul li .box05:hover {
          background-color: #39b54a; }
      #home .s3 .inner .inner_cont ul li .box06 {
        background-color: #647878; }
        #home .s3 .inner .inner_cont ul li .box06:hover {
          background-color: #bada3f; }
      #home .s3 .inner .inner_cont ul li:nth-child(2n) {
        margin-right: 0; }
  #home .modal-content {
    margin: -393px 0 0 -267.5px;
    width: 500px;
    height: 700px;
    margin: auto;
    text-align: center;
    display: block;
    position: fixed;
    z-index: 3; }
    #home .modal-content img {
      width: 100%; }
    #home .modal-content h4 {
      line-height: 1;
      margin: 15px 15px 10px;
      color: #fff;
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      line-height: 1.4; }
    #home .modal-content .inner_txt {
      padding: 0 27px;
      font-size: 14px;
      text-align: left;
      color: #fff;
      margin-bottom: 10px;
      line-height: 1.78; }
    #home .modal-content .inner_icon {
      font-size: 0;
      padding: 0 27px;
      text-align: left; }
      #home .modal-content .inner_icon p {
        display: inline-block;
        font-size: 12px;
        background-color: #fff;
        margin-right: 3px;
        margin-bottom: 3px;
        padding: 2px;
        line-height: 1; }
        #home .modal-content .inner_icon p:last-child {
          margin-right: 0; }
  #home .open01 {
    background-color: #1b7d8c; }
  #home .open02 {
    background-color: #29abe2; }
  #home .open03 {
    background-color: #c80083; }
  #home .open04 {
    background-color: #93278f; }
  #home .open05 {
    background-color: #39b54a; }
  #home .open06 {
    background-color: #bada3f; }
  #home .modal-overlay {
    z-index: 2;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: rgba(0, 0, 0, 0.75); }
  #home .modal-content {
    opacity: 0;
    transition: .7s;
    margin-top: 60px; }
  #home .showUp {
    opacity: 1;
    margin-top: 0;
    transition: all 0.8s ease 0.2s; }
  #home .s4 {
    margin-bottom: 26px; }
    #home .s4 .inner {
      width: 100%; }
      #home .s4 .inner .inner_cont {
        font-size: 0;
        text-align: center;
        width: 100%; }
        #home .s4 .inner .inner_cont .inner_cont_box {
          display: block;
          width: 100%;
          font-size: 14px;
          text-align: center;
          vertical-align: top;
          margin-bottom: 10px; }
          #home .s4 .inner .inner_cont .inner_cont_box p {
            display: inline;
            line-height: 1; }
            #home .s4 .inner .inner_cont .inner_cont_box p .txt_27 {
              font-size: 14px; }
            #home .s4 .inner .inner_cont .inner_cont_box p .txt_50 {
              font-size: 20px; }
          #home .s4 .inner .inner_cont .inner_cont_box .txt_26 {
            font-size: 14px; }
      #home .s4 .inner .inner_cont_map {
        padding: 17px 0;
        width: 100%;
        height: 260px; }

  /*
 SP English
---------------------------------------- */
  .en {
    font-family: Helvetica, Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif; }

  #home .modal-content {
    margin: -393px 0 0 -267.5px;
    width: 500px;
    min-height: 700px;
    margin: auto;
    text-align: center;
    display: block;
    position: fixed;
    z-index: 3; }
    #home .modal-content img {
      width: 100%; }
    #home .modal-content h4 {
      line-height: 1;
      margin: 15px 15px 5px;
      color: #fff;
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      line-height: 1.4; }
    #home .modal-content .inner_txt {
      padding: 0 15px;
      font-size: 14px;
      text-align: left;
      color: #fff;
      margin-bottom: 10px;
      line-height: 1.8; }

  #contact.en .s1 .inner form .btn_send {
    text-align: center; }
    #contact.en .s1 .inner form .btn_send button[type="submit"] {
      border: 0px;
      width: 115px;
      height: 29px;
      background: url(../img/submit_sp_en.png) top no-repeat;
      background-size: cover; }

  #home.en .key p {
    padding: 0 10%; }

  /*
 SP results
---------------------------------------- */
  #results .key .imagearea {
    width: 100%;
    margin: auto; }
    #results .key .imagearea img {
      width: 100%; }
  #results .key p {
    text-align: center;
    margin: 89px auto; }
  #results .s1, #results .s3 {
    padding-bottom: 20px; }
  #results .s1 .inner .inner_cont, #results .s3 .inner .inner_cont {
    font-size: 0; }
  #results .s1 .inner .inner_cont .inner_cont_box, #results .s3 .inner .inner_cont .inner_cont_box {
    width: calc(100% / 2);
    display: inline-block;
    vertical-align: top;
    min-height: 250px; }
  #results .s1 .inner .inner_cont .inner_cont_box h3, #results .s3 .inner .inner_cont .inner_cont_box h3 {
    font-size: 14px;
    padding: 17px 12px 12px;
    letter-spacing: -0.06em;
    vertical-align: bottom; }
  #results .s1 .inner .inner_cont .inner_cont_box img, #results .s3 .inner .inner_cont .inner_cont_box img {
    width: 100%; }
  #results .s1 .inner .inner_cont .inner_cont_box dl, #results .s3 .inner .inner_cont .inner_cont_box dl {
    padding: 24px 12px 12px; }
  #results .s1 .inner .inner_cont .inner_cont_box dl dt, #results .s1 .inner .inner_cont .inner_cont_box dl dd {
    font-size: 12px; }
  #results .s3 .inner .inner_cont .inner_cont_box dl dt, #results .s3 .inner .inner_cont .inner_cont_box dl dd {
    font-size: 12px; }
  #results .s1 {
    padding-bottom: 20px; }
    #results .s1 .inner .inner_cont {
      border-bottom: 1px solid #1b7d8c; }
      #results .s1 .inner .inner_cont .inner_cont_box {
        border-top: 1px solid #1b7d8c;
        color: #1b7d8c; }
        #results .s1 .inner .inner_cont .inner_cont_box h3 {
          position: relative; }
        #results .s1 .inner .inner_cont .inner_cont_box:nth-child(2), #results .s1 .inner .inner_cont .inner_cont_box:nth-child(3), #results .s1 .inner .inner_cont .inner_cont_box:nth-child(6), #results .s1 .inner .inner_cont .inner_cont_box:nth-child(7) {
          background-color: #cdefed; }
        #results .s1 .inner .inner_cont .inner_cont_box:nth-child(8) {
          border-bottom: 1px solid #cdefed; }
  #results .s2 .inner .inner_cont h3 {
    font-size: 14px;
    color: #0b651d;
    margin-bottom: 15px; }
  #results .s2 .inner .inner_cont img {
    width: 100%; }
  #results .s2 .inner .inner_cont .inner_cont_txt_box {
    background-color: #a0d77e;
    border-bottom: 1px solid #0b651d;
    padding: 11px 10px 11px;
    color: #0b651d;
    font-size: 12px; }
  #results .s3 {
    padding-bottom: 20px; }
    #results .s3 .inner .inner_cont {
      border-bottom: 1px solid #68007a; }
      #results .s3 .inner .inner_cont .inner_cont_box {
        border-top: 1px solid #68007a;
        color: #68007a; }
        #results .s3 .inner .inner_cont .inner_cont_box h3 {
          position: relative; }
        #results .s3 .inner .inner_cont .inner_cont_box:nth-child(2), #results .s3 .inner .inner_cont .inner_cont_box:nth-child(3), #results .s3 .inner .inner_cont .inner_cont_box:nth-child(6), #results .s3 .inner .inner_cont .inner_cont_box:nth-child(7) {
          background-color: #dfd1ed; }
        #results .s3 .inner .inner_cont .inner_cont_box:nth-child(6) {
          border-bottom: 1px solid #68007a; }
  #results .s4 {
    margin-bottom: 23px; }
    #results .s4 .inner {
      width: 750px; }
      #results .s4 .inner .inner_cont {
        font-size: 0;
        text-align: center;
        width: 100%; }
        #results .s4 .inner .inner_cont .inner_cont_box {
          display: inline-block;
          width: calc(100% / 3);
          font-size: 20px;
          text-align: center;
          vertical-align: top; }
          #results .s4 .inner .inner_cont .inner_cont_box p .txt_27 {
            font-size: 27px; }
          #results .s4 .inner .inner_cont .inner_cont_box p .txt_50 {
            font-size: 50px; }
          #results .s4 .inner .inner_cont .inner_cont_box .txt_26 {
            font-size: 26px; }
      #results .s4 .inner .inner_cont_map {
        padding: 50px 0;
        width: 100%;
        height: 750px; }

  /*
 SP disclaimer
---------------------------------------- */
  #disclaimer .key .imagearea {
    width: 100%;
    margin: auto; }
    #disclaimer .key .imagearea img {
      width: 100%; }
  #disclaimer .key p {
    text-align: center;
    margin: 89px auto; }
  #disclaimer .s1 .inner .inner_cont {
    margin-bottom: 50px; }
    #disclaimer .s1 .inner .inner_cont h3 {
      font-size: 14px;
      color: #1b7d8c;
      border-bottom: 1px solid #1b7d8c;
      margin-bottom: 10px;
      text-align: center; }
    #disclaimer .s1 .inner .inner_cont p {
      font-size: 12px; }
    #disclaimer .s1 .inner .inner_cont:nth-child(2) {
      margin-bottom: 0; }

  /*
 SP contact
---------------------------------------- */
  #contact .key .imagearea {
    width: 100%;
    margin: auto; }
    #contact .key .imagearea img {
      width: 100%; }
  #contact .key p {
    text-align: center;
    margin: 89px auto; }
  #contact .s1 .inner form dl {
    width: 100%;
    text-align: center;
    color: #1b7d8c;
    font-size: 15px; }
    #contact .s1 .inner form dl dt {
      margin-bottom: 3px; }
    #contact .s1 .inner form dl dd {
      margin-bottom: 40px; }
      #contact .s1 .inner form dl dd input[type="text"] {
        width: 100%;
        font-size: 12px;
        padding: 7px;
        border: 1px solid #1b7d8c; }
      #contact .s1 .inner form dl dd textarea {
        width: 100%;
        height: 170px;
        font-size: 12px;
        padding: 7px;
        border: 1px solid #1b7d8c; }
  #contact .s1 .inner form .btn_send {
    text-align: center; }
    #contact .s1 .inner form .btn_send button[type="submit"] {
      border: 0px;
      width: 115px;
      height: 29px;
      background: url(../img/submit_sp.png) top no-repeat;
      background-size: cover; }
  #contact .s1 .inner p.thanks_message {
    text-align: center;
    font-size: 16px; } }
/*# sourceMappingURL=maps/style.css.map */
@media (max-width: 600px) {
  .pc600 {
    display: none!important; }

  .sp600 {
    display: block!important; }

  dl.profile_list {
    width: 98%; }

  footer {
    width: 98%; }
    footer .inner .footer_con {
      width: 100%; }

  dl.profile_list {
    font-size: 16px; }
    dl.profile_list dt {
      width: 80px; }
    dl.profile_list dd {
      padding: 0 0 5px 100px; }

  #spheader {
    background: url(../img/header_sp.jpg) center bottom no-repeat; }

  figure.snip1200:hover img {
    opacity: 1;
    -webkit-transform: none;
    transform: none; }
  figure.snip1200:hover figcaption {
    top: 45%;
    left: 7%;
    right: 7%;
    bottom: 45%; }
  figure.snip1200:hover p {
    opacity: 0;
    -webkit-transition-delay: 0.35s;
    transition-delay: 0.35s; }
  figure.snip1200.clicked img {
    opacity: 0.25;
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  figure.snip1200.clicked figcaption {
    top: 10%;
    bottom: 10%; }
  figure.snip1200.clicked p {
    opacity: 1;
    -webkit-transition-delay: 0.35s;
    transition-delay: 0.35s; }

  .en table.profile_list {
    overflow: hidden;
    font-size: 14px;
    width: 100%; }
    .en table.profile_list th {
      width: 125px; }
  .en footer .inner .address {
    font-size: 16px;
    line-height: 1.6; }
  .en footer .inner .tel {
    letter-spacing: 0.52;
    font-size: 16px; }
  .en footer .inner .copy {
    margin-top: 16px;
    font-size: 13px;
    line-height: 2.30; } }
@media (max-width: 500px) {
  .pc500 {
    display: none!important; }

  .sp500 {
    display: block!important; }

  #home .key p {
    text-align: left; }
  #home .s3 .inner .inner_cont ul li {
    font-size: 14px; }
  #home .modal-content {
    width: 300px;
    height: 530px;
    min-height: 530px; } }
	
@media (max-width: 450px) {
.pc450{display:none!important; }
.sp450{display:block!important; }
.arr_down{width:10%; bottom:84px; margin:auto; position:absolute;left: 45%; z-index:120;}
.arr_down img{width:100%;}
#container {
    width: 100%;
    text-align: center;
}
#home .key p {
    padding: 30px 10px 0;}
#home header {padding: 10px 0;}
/* fullSlideShow
--------------------------- */
.fullSlideShow {
    width: 100%;
    text-align: left;
    position: relative;
    overflow: hidden;
}
.fullSlideShow ul {
    top: 50%;
    left: 50%;
    width: 100%;
    position: fixed; /* absolute or fixed */
    overflow: hidden;
}
.fullSlideShow ul li {
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    position: absolute;
}
.fullSlideShow ul li img {
    width: 100%;
}
 
 
/* SideNavi
------------------------- */
.fullSlideShow .btnPrev,
.fullSlideShow .btnNext {
    margin-top: -25px;
    top: 50%;
    width: 50px;
    height: 50px;
    position: fixed; /* absolute or fixed */
    z-index: 105;
}
.fullSlideShow .btnPrev {
    left: 10px;
    background: transparent url(../img/btnPrev.png) no-repeat center center;
}
.fullSlideShow .btnNext {
    right: 10px;
    background: transparent url(../img/btnNext.png) no-repeat center center;
}
 
 
/* PagiNation
--------------------------- */
.pagiNation {
    bottom: 30px;
    left: 0;
    width: 100%;
    height: 15px;
    text-align: center;
    position: fixed; /* absolute or fixed */
    z-index: 110; /* 非表示にする場合は「90」以下に */
    visibility: hidden; /* 非表示にする場合は「hidden」に */
}
 
.pagiNation a {
    margin: 0 5px;
    width: 20px;
    height: 20px;
    display: inline-block;
    overflow: hidden;
    background: #000;
}
.pagiNation a.pnActive {
    filter:alpha(opacity=100)!important;
    -moz-opacity: 1!important;
    opacity: 1!important;
}

#main_wrapper{z-index: 115;position: relative;background: #fff;}
header{z-index: 120;background: #fff;}

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

  .sp320 {
    display: block!important; }

  home .modal-content h4 {
    margin: 10px 15px 5px;
    font-size: 15px;
    line-height: 1.2; }

  #home .modal-content .inner_txt {
    font-size: 13px;
    line-height: 1.3; } }
.drawer-nav {
  position: fixed;
  z-index: 99999;
  top: 0;
  overflow: hidden;
  width: 260px;
  height: 100%;
  color: #fff;
  background-color: #333;
  display: block;
  font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
  box-shadow: 0 0 5px 5px #222 inset; }
  .drawer-nav li {
    color: #fff;
    font-size: 16px;
    text-align: center;
    line-height: 48px;
    border-top: 1px solid #4d4d4d;
    border-bottom: 1px solid #1a1a1a; }
    .drawer-nav li a {
      padding: 0 15px;
      display: block;
      text-decoration: none;
      color: #fff; }
  .drawer-nav ul li:hover, .drawer-nav ul li.active, .drawer-nav ul li.sidr-class-active {
    border-top: 0;
    line-height: 49px; }
  .drawer-nav ul li:hover > a, .drawer-nav ul li:hover > span {
    box-shadow: 0 0 15px 3px #222 inset; }
  .drawer-nav ul li.active > a, .drawer-nav ul li.active > span {
    box-shadow: 0 0 15px 3px #222 inset; }
  .drawer-nav ul li.drawer-nav-class-active > a, .drawer-nav ul li.drawer-nav-class-active > span {
    box-shadow: 0 0 15px 3px #222 inset; }

.drawer-hamburger {
  right: 0rem;
  z-index: 999999; }

.drawer--right.drawer-open .drawer-hamburger {
  background: #fff;
  opacity: .8; }

.button_back {
  height: 56px;
  width: 56px;
  display: block;
  background: #fff;
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 120;
  opacity: .6;
  z-index:230; }

.closeWrap {
  height: 40px;
  width: 40px;
  display: block;
  background: #fff;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 120;
  opacity: .6; }
  .closeWrap a {
    height: 100%;
    width: 100%;
    display: block;
    position: relative; }
    .closeWrap a:before {
      content: '';
      width: 34px;
      height: 4px;
      display: block;
      position: absolute;
      top: 18px;
      left: 3px;
      background: #333;
      transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg); }
    .closeWrap a:after {
      content: '';
      width: 34px;
      height: 4px;
      display: block;
      position: absolute;
      top: 18px;
      left: 3px;
      background: #333;
      transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      width: 4px;
      height: 34px;
      left: 18px;
      top: 3px; }

.swiper-container img{width:100%;}
.swiper-button-prev, .swiper-button-next {
    fill: #fff;}
	.swiper-pagination-bullet {
    background: #fff;
    opacity: .4;
}
	.swiper-pagination-bullet-active {
    background: #fff;
    opacity: 1;
}
