@charset "UTF-8";
/* reset */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 16px;/*20230808*/
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box; }

body {
  line-height: 1;
  background-color: #fff;
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%; }

  @media (max-width: 600px) {
    body{
    font-family: sans-serif ;
    }
  }/*20230808*/


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

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  max-width: 100%; }

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; }

th {
  text-align: left; }

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

input, select {
  vertical-align: middle; }

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

input[type="text"],
input[type="submit"],
input[type="button"],
input[type="password"],
input[type="tel"],
input[type="email"],
textarea,
select {
  outline: none;
  box-sizing: border-box; }

/* clear fix */
.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.cf {
  display: inline-table; }

* html .cf {
  height: 1%; }

.cf {
  display: block; }

/* font-size */
html {
  font-size: 62.5%; }

/* media query */
/* font size */
.fs12, #l-pankuzu ul li a {
  font-size: 1.2rem; }
  @media (max-width: 960px) {
    .fs12, #l-pankuzu ul li a {
      font-size: 1.1rem; } }
  @media (max-width: 600px) {
    .fs12, #l-pankuzu ul li a {
      font-size: 14px; } }/*20230808*/

.fs16, #l-header #nav_wrap > ul > li > a, #l-footer #footer_picup_wrap .picup_ttl, .p-contact_warp .contact_inner,
.p-contact_warp input[type="text"],
.p-contact_warp input[type="tel"],
.p-contact_warp input[type="email"],
.p-contact_warp textarea,
.p-contact_warp input[type="submit"], #p_area_warp #area_inner table, .p-tbl02, .c-ttl04 {
  font-size: 1.6rem; }
  @media (max-width: 960px) {
    .fs16, #l-header #nav_wrap > ul > li > a, #l-footer #footer_picup_wrap .picup_ttl, .p-contact_warp .contact_inner,
    .p-contact_warp input[type="text"],
    .p-contact_warp input[type="tel"],
    .p-contact_warp input[type="email"],
    .p-contact_warp textarea,
    .p-contact_warp input[type="submit"], #p_area_warp #area_inner table, .p-tbl02, .c-ttl04 {
      font-size: 1.5rem; } }
  @media (max-width: 600px) {
    .fs16, #l-header #nav_wrap > ul > li > a, #l-footer #footer_picup_wrap .picup_ttl, .p-contact_warp .contact_inner,
    .p-contact_warp input[type="text"],
    .p-contact_warp input[type="tel"],
    .p-contact_warp input[type="email"],
    .p-contact_warp textarea,
    .p-contact_warp input[type="submit"], #p_area_warp #area_inner table, .p-tbl02, .c-ttl04 {
      font-size: 16px; } }

.fs18, .p-contact_warp .contact_blc .ttl {
  font-size: 1.8rem; }
  @media (max-width: 960px) {
    .fs18, .p-contact_warp .contact_blc .ttl {
      font-size: 1.6rem; } }
  @media (max-width: 600px) {
    .fs18, .p-contact_warp .contact_blc .ttl {
      font-size: 16px; } }/*20230808*/

.fs10 {
  font-size: 1rem; }
  @media (max-width: 960px) {
    .fs10 {
      font-size: 0.9rem; } }
  @media (max-width: 600px) {
    .fs10 {
      font-size: 0.8rem; } }

.fs11 {
  font-size: 1.1rem; }
  @media (max-width: 960px) {
    .fs11 {
      font-size: 1rem; } }
  @media (max-width: 600px) {
    .fs11 {
      font-size: 0.9rem; } }

.fs13 {
  font-size: 1.3rem; }
  @media (max-width: 960px) {
    .fs13 {
      font-size: 1.2rem; } }
  @media (max-width: 600px) {
    .fs13 {
      font-size: 1.1rem; } }

.fs14, body, #l-header #nav_wrap > ul .child li a, .p-contact_warp .contact_blc label {
  font-size: 1.4rem; }
  @media (max-width: 960px) {
    .fs14, body, #l-header #nav_wrap > ul .child li a, .p-contact_warp .contact_blc label {
      font-size: 1.3rem; } }
  @media (max-width: 600px) {
    .fs14, body, #l-header #nav_wrap > ul .child li a, .p-contact_warp .contact_blc label {
      font-size: 16px; } }/*20230808*/

.fs15 {
  font-size: 1.5rem; }
  @media (max-width: 960px) {
    .fs15 {
      font-size: 1.4rem; } }
  @media (max-width: 600px) {
    .fs15 {
      font-size: 1.3rem; } }

.fs17 {
  font-size: 1.7rem; }
  @media (max-width: 960px) {
    .fs17 {
      font-size: 1.6rem; } }
  @media (max-width: 600px) {
    .fs17 {
      font-size: 1.5rem; } }

.fs19 {
  font-size: 1.9rem; }
  @media (max-width: 960px) {
    .fs19 {
      font-size: 1.7rem; } }
  @media (max-width: 600px) {
    .fs19 {
      font-size: 1.5rem; } }

.fs20, .c-ttl02, .c-ttl03 span {
  font-size: 2rem; }
  @media (max-width: 960px) {
    .fs20, .c-ttl02, .c-ttl03 span {
      font-size: 1.8rem; } }
  @media (max-width: 600px) {
    .fs20, .c-ttl02, .c-ttl03 span {
      font-size: 20px; } }

.fs21 {
  font-size: 2.1rem; }
  @media (max-width: 960px) {
    .fs21 {
      font-size: 1.9rem; } }
  @media (max-width: 600px) {
    .fs21 {
      font-size: 1.6rem; } }

.fs22 {
  font-size: 2.2rem; }
  @media (max-width: 960px) {
    .fs22 {
      font-size: 2rem; } }
  @media (max-width: 600px) {
    .fs22 {
      font-size: 1.7rem; } }

.fs23 {
  font-size: 2.3rem; }
  @media (max-width: 960px) {
    .fs23 {
      font-size: 2.1rem; } }
  @media (max-width: 600px) {
    .fs23 {
      font-size: 1.7rem; } }

.fs24 {
  font-size: 2.4rem; }
  @media (max-width: 960px) {
    .fs24 {
      font-size: 2.1rem; } }
  @media (max-width: 600px) {
    .fs24 {
      font-size: 1.8rem; } }

.fs25 {
  font-size: 2.5rem; }
  @media (max-width: 960px) {
    .fs25 {
      font-size: 2.1rem; } }
  @media (max-width: 600px) {
    .fs25 {
      font-size: 1.8rem; } }

.fs26 {
  font-size: 2.6rem; }
  @media (max-width: 960px) {
    .fs26 {
      font-size: 2.2rem; } }
  @media (max-width: 600px) {
    .fs26 {
      font-size: 1.9rem; } }

.fs27 {
  font-size: 2.7rem; }
  @media (max-width: 960px) {
    .fs27 {
      font-size: 2.2rem; } }
  @media (max-width: 600px) {
    .fs27 {
      font-size: 1.9rem; } }

.fs28 {
  font-size: 2.8rem; }
  @media (max-width: 960px) {
    .fs28 {
      font-size: 2.2rem; } }
  @media (max-width: 600px) {
    .fs28 {
      font-size: 1.9rem; } }

.fs29 {
  font-size: 2.9rem; }
  @media (max-width: 960px) {
    .fs29 {
      font-size: 2.3rem; } }
  @media (max-width: 600px) {
    .fs29 {
      font-size: 2rem; } }

.fs30, .c-ttl01 {
  font-size: 3rem; }
  @media (max-width: 960px) {
    .fs30, .c-ttl01 {
      font-size: 2.3rem; } }
  @media (max-width: 600px) {
    .fs30, .c-ttl01 {
      font-size: 21px; } }/*20230808*/

.fs31 {
  font-size: 3.1rem; }
  @media (max-width: 960px) {
    .fs31 {
      font-size: 2.3rem; } }
  @media (max-width: 600px) {
    .fs31 {
      font-size: 2rem; } }

.fs32 {
  font-size: 3.2rem; }
  @media (max-width: 960px) {
    .fs32 {
      font-size: 2.4rem; } }
  @media (max-width: 600px) {
    .fs32 {
      font-size: 2.1rem; } }

.fs33 {
  font-size: 3.3rem; }
  @media (max-width: 960px) {
    .fs33 {
      font-size: 2.4rem; } }
  @media (max-width: 600px) {
    .fs33 {
      font-size: 2.1rem; } }

.fs34 {
  font-size: 3.4rem; }
  @media (max-width: 960px) {
    .fs34 {
      font-size: 2.4rem; } }
  @media (max-width: 600px) {
    .fs34 {
      font-size: 2.1rem; } }

.fs35 {
  font-size: 3.5rem; }
  @media (max-width: 960px) {
    .fs35 {
      font-size: 2.5rem; } }
  @media (max-width: 600px) {
    .fs35 {
      font-size: 2.2rem; } }

.fs36 {
  font-size: 3.6rem; }
  @media (max-width: 960px) {
    .fs36 {
      font-size: 2.5rem; } }
  @media (max-width: 600px) {
    .fs36 {
      font-size: 2.2rem; } }

.fs37 {
  font-size: 3.7rem; }
  @media (max-width: 960px) {
    .fs37 {
      font-size: 2.5rem; } }
  @media (max-width: 600px) {
    .fs37 {
      font-size: 2.2rem; } }

.fs38 {
  font-size: 3.8rem; }
  @media (max-width: 960px) {
    .fs38 {
      font-size: 2.6rem; } }
  @media (max-width: 600px) {
    .fs38 {
      font-size: 2.3rem; } }

.fs39 {
  font-size: 3.9rem; }
  @media (max-width: 960px) {
    .fs39 {
      font-size: 2.6rem; } }
  @media (max-width: 600px) {
    .fs39 {
      font-size: 2.3rem; } }

.fs40 {
  font-size: 4rem; }
  @media (max-width: 960px) {
    .fs40 {
      font-size: 2.6rem; } }
  @media (max-width: 600px) {
    .fs40 {
      font-size: 2.3rem; } }

/*----------------------
Foundation
----------------------*/
body {
  font: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  color: #1a2b37;
  width: 100%;
  line-height: 1.75; }

a {
  color: #5f9cc7;
  outline: none;
  transition: all 0.2s; }
  a:hover {
    opacity: 0.7; }

table {
  line-height: 1.3;
  width: 100%; }

h1, h2, h3 {
  font-weight: normal; }

/*----------------------
Layout
----------------------*/
#l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 280px;
  height: 100vh;
  background-color: #5f9cc7;
  padding: 40px 25px;
  z-index: 99; }
  @media (max-width: 960px) {
    #l-header {
      display: none; } }
  #l-header.is_fixed {
    position: fixed !important;
    top: 0 !important; }
  #l-header.mv_on {
    position: absolute;
    top: 100vh;
    left: 0; }
  #l-header #header_logo {
    display: block;
    margin-bottom: 40px; }
    #l-header #header_logo img {
      display: block;
      margin: 0 auto; }
  #l-header #nav_wrap > ul {
    width: 100%; }
    #l-header #nav_wrap > ul > li {
      position: relative; }
      #l-header #nav_wrap > ul > li:hover a {
        opacity: 1;
        background-color: #fff;
        color: #5f9cc7; }
        #l-header #nav_wrap > ul > li:hover a.nav_arrow::after {
          border-top: 5px solid #5f9cc7;
          border-right: 5px solid #5f9cc7; }
      #l-header #nav_wrap > ul > li > a {
        position: relative;
        display: block;
        box-sizing: border-box;
        width: 100%;
        padding: 10px 15px;
        border: solid 1px #fff;
        text-align: center;
        color: #fff; }
      #l-header #nav_wrap > ul > li:not(:last-child) > a {
        margin-bottom: 15px; }
    #l-header #nav_wrap > ul .child {
      position: absolute;
      width: 290px;
      box-sizing: initial;
      z-index: 99;
      margin: 0;
      padding: 0;
      top: 0;
      left: 220px;
      padding-left: 35px; }
      #l-header #nav_wrap > ul .child li a {
        margin-bottom: 0;
        background: #a5cbe5;
        text-align: left;
        color: #1a2b37;
        border: none;
        padding: 20px;
        display: block; }
        #l-header #nav_wrap > ul .child li a:hover {
          opacity: 1;
          background-color: #cee4f3; }
      #l-header #nav_wrap > ul .child li:not(:last-child) a {
        border-bottom: 1px solid #c0dbed; }
      #l-header #nav_wrap > ul .child li:not(:first-child) a {
        border-top: 1px solid #5f9cc7; }
      #l-header #nav_wrap > ul .child::before {
        position: absolute;
        content: "";
        top: 0;
        left: 25px;
        right: 0;
        width: 0;
        height: 0;
        border: 5px solid transparent;
        border-top: 5px solid #a5cbe5;
        border-right: 5px solid #a5cbe5; }
    #l-header #nav_wrap > ul .arrow_wrap::befoer {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      top: 0;
      right: 0;
      width: 0;
      height: 0;
      border: 5px solid transparent;
      border-top: 5px solid #a5cbe5;
      border-right: 5px solid #a5cbe5; }
    #l-header #nav_wrap > ul .nav_arrow::after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      width: 0;
      height: 0;
      border: 5px solid transparent;
      border-top: 5px solid #fff;
      border-right: 5px solid #fff; }
  #l-header #nav_dropmenu li ul {
    display: none; }
  #l-header #nav_dropmenu li:hover ul {
    display: block; }
  #l-header #cv_bnr {
    position: absolute;
    bottom: 20px;
    display: block;
    margin: 0 auto; }

#l-pankuzu {
  padding-left: 280px; }
  @media (max-width: 960px) {
    #l-pankuzu {
      padding-left: 0; } }
  #l-pankuzu ul {
    overflow: hidden; }
    @media (max-width: 960px) {
      #l-pankuzu ul {
        overflow-y: hidden;
        overflow-x: scroll; } }
    #l-pankuzu ul li {
      display: table-cell;
      white-space: nowrap; }
      #l-pankuzu ul li a {
        color: #fff;
        background-color: #1a2b37;
        padding: 10px 0 10px 55px;
        position: relative;
        display: block;
        float: left;
        transition: none; }
        #l-pankuzu ul li a::after {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-top: 50px solid transparent;
          border-bottom: 50px solid transparent;
          border-left: 30px solid #1a2b37;
          position: absolute;
          top: 50%;
          margin-top: -50px;
          left: 100%;
          z-index: 2;
          background: #1a2b37; }
        #l-pankuzu ul li a::before {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-top: 50px solid transparent;
          border-bottom: 50px solid transparent;
          border-left: 32px solid #fff;
          position: absolute;
          top: 50%;
          margin-top: -50px;
          margin-left: 1px;
          left: 100%;
          z-index: 1; }
      #l-pankuzu ul li:first-child a {
        padding-left: 20px; }
      #l-pankuzu ul li:nth-child(2) a {
        background-color: #5f9cc7; }
        #l-pankuzu ul li:nth-child(2) a::after {
          border-left-color: #5f9cc7;
          background: #5f9cc7; }
      #l-pankuzu ul li:nth-child(3) a {
        background-color: #70b3e2; }
        #l-pankuzu ul li:nth-child(3) a::after {
          border-left-color: #70b3e2;
          background: #70b3e2; }
      #l-pankuzu ul li:nth-child(4) a {
        background-color: #87c3ec; }
        #l-pankuzu ul li:nth-child(4) a::after {
          border-left-color: #87c3ec;
          background: #87c3ec; }
      #l-pankuzu ul li a:hover {
        background-color: #46a2e2;
        opacity: 1; }
        #l-pankuzu ul li a:hover::after {
          border-left-color: #46a2e2; }
      #l-pankuzu ul li:last-child a {
        pointer-events: none;
        cursor: default; }
        #l-pankuzu ul li:last-child a::after {
          width: 100vw; }
      #l-pankuzu ul li:not(:last-child) a::after {
        background: transparent; }

#l-footer {
  padding-left: 280px;
  width: 100%;
  background-color: #f8f8f8; }
  @media (max-width: 960px) {
    #l-footer {
      padding-left: 0; } }
  @media (max-width: 600px) {
    #l-footer {
      margin-top: 50px; } }
  #l-footer #footer_picup_wrap {
    padding: 40px;
    background-color: #deebcf;
    zoom: 1; }
    #l-footer #footer_picup_wrap:before, #l-footer #footer_picup_wrap:after {
      content: "";
      display: table; }
    #l-footer #footer_picup_wrap:after {
      clear: both; }
    @media (max-width: 960px) {
      #l-footer #footer_picup_wrap {
        padding: 30px 20px; } }
    #l-footer #footer_picup_wrap .picup_inner {
      width: 49%;
      zoom: 1;
      margin-bottom: 50px; }
      #l-footer #footer_picup_wrap .picup_inner:before, #l-footer #footer_picup_wrap .picup_inner:after {
        content: "";
        display: table; }
      #l-footer #footer_picup_wrap .picup_inner:after {
        clear: both; }
      #l-footer #footer_picup_wrap .picup_inner:nth-child(2n) {
        float: right; }
      #l-footer #footer_picup_wrap .picup_inner:nth-child(2n+1) {
        float: left; }
      #l-footer #footer_picup_wrap .picup_inner:nth-last-child(-n+2) {
        margin-bottom: 0; }
      @media (max-width: 600px) {
        #l-footer #footer_picup_wrap .picup_inner {
          float: none;
          width: 100%;
          margin-bottom: 30px; }
          #l-footer #footer_picup_wrap .picup_inner:nth-last-child(2) {
            margin-bottom: 30px; } }
    #l-footer #footer_picup_wrap .picup_img_list li a {
      display: block;
      margin-bottom: 10px;
      width: 48%;
      float: left; }
    #l-footer #footer_picup_wrap .picup_img_list li:not(:nth-child(2n)) a {
      margin-right: 2%; }
    #l-footer #footer_picup_wrap .picup_img_list li img {
      width: 100%; }
    #l-footer #footer_picup_wrap .picup_ttl {
      margin-bottom: 10px;
      font-weight: bold; }
      #l-footer #footer_picup_wrap .picup_ttl a {
        color: #1a2b37; }
    #l-footer #footer_picup_wrap #picup_store {
      zoom: 1; }
      #l-footer #footer_picup_wrap #picup_store:before, #l-footer #footer_picup_wrap #picup_store:after {
        content: "";
        display: table; }
      #l-footer #footer_picup_wrap #picup_store:after {
        clear: both; }
      #l-footer #footer_picup_wrap #picup_store li {
        float: left; }
        #l-footer #footer_picup_wrap #picup_store li::after {
          content: "｜";
          padding: 0 5px; }
        #l-footer #footer_picup_wrap #picup_store li:last-child:after {
          content: "";
          padding: 0; }
        #l-footer #footer_picup_wrap #picup_store li a {
          color: #1a2b37; }
          #l-footer #footer_picup_wrap #picup_store li a:hover {
            text-decoration: underline; }
  #l-footer #footer_wrap {
    padding: 30px 40px; }
    @media (max-width: 960px) {
      #l-footer #footer_wrap {
        padding: 20px; } }
    #l-footer #footer_wrap #footer_inner {
      margin-bottom: 30px;
      zoom: 1; }
      #l-footer #footer_wrap #footer_inner:before, #l-footer #footer_wrap #footer_inner:after {
        content: "";
        display: table; }
      #l-footer #footer_wrap #footer_inner:after {
        clear: both; }
      @media (max-width: 600px) {
        #l-footer #footer_wrap #footer_inner {
          margin-bottom: 15px; } }
      #l-footer #footer_wrap #footer_inner #footer_link {
        width: 80%;
        float: left;
        line-height: 1.8;
        zoom: 1; }
        #l-footer #footer_wrap #footer_inner #footer_link:before, #l-footer #footer_wrap #footer_inner #footer_link:after {
          content: "";
          display: table; }
        #l-footer #footer_wrap #footer_inner #footer_link:after {
          clear: both; }
        @media (max-width: 600px) {
          #l-footer #footer_wrap #footer_inner #footer_link {
            display: none; } }
        #l-footer #footer_wrap #footer_inner #footer_link li {
          float: left; }
          #l-footer #footer_wrap #footer_inner #footer_link li::after {
            content: "｜";
            padding: 0 2px; }
          #l-footer #footer_wrap #footer_inner #footer_link li:last-child:after {
            content: "";
            padding: 0; }
          #l-footer #footer_wrap #footer_inner #footer_link li a {
            color: #1a2b37; }
            #l-footer #footer_wrap #footer_inner #footer_link li a:hover {
              text-decoration: underline; }
      #l-footer #footer_wrap #footer_inner #footer_logo {
        float: right;
        width: 16%; }
        @media (max-width: 600px) {
          #l-footer #footer_wrap #footer_inner #footer_logo {
            float: none; } }

/*----------------------
Project
----------------------*/
.p-contact_warp .u-inner {
  padding-bottom: 120px; }
  @media (max-width: 600px) {
    .p-contact_warp .u-inner {
      padding-bottom: 0; } }

.p-contact_warp .c-ttl01 {
  margin-top: 60px; }
  @media (max-width: 600px) {
    .p-contact_warp .c-ttl01 {
      margin-top: 40px; } }

.p-contact_warp .contact_inner {
  max-width: 560px;
  margin: 0 auto 0; }

.p-contact_warp .contact_blc {
  padding: 20px;
  background: url(../img/index/form_bg.png); }
  .p-contact_warp .contact_blc .ttl {
    font-weight: bold; }
    .p-contact_warp .contact_blc .ttl:not(:first-child) {
      margin-top: 20px; }
  .p-contact_warp .contact_blc input[type="text"],
  .p-contact_warp .contact_blc input[type="tel"],
  .p-contact_warp .contact_blc input[type="email"] {
    width: 100%;
    margin-top: 10px;
    padding: 6px;
    border: solid 1px #dcdcdc; }
  .p-contact_warp .contact_blc input, .p-contact_warp .contact_blc label {
    vertical-align: middle; }
  .p-contact_warp .contact_blc label {
    font-weight: bold; }
  .p-contact_warp .contact_blc .radio_wrap, .p-contact_warp .contact_blc .check_wrap {
    margin-top: 10px; }
    .p-contact_warp .contact_blc .radio_wrap p, .p-contact_warp .contact_blc .check_wrap p {
      display: inline-block;
      margin-right: 10px; }
  .p-contact_warp .contact_blc textarea {
    display: block;
    margin-top: 10px;
    padding: 10px;
    width: 100%;
    min-height: 140px;
    border: solid 1px #dcdcdc;
    font-size:16px; }/*20230808*/

.p-contact_warp input[type="submit"] {
  display: block;
  width: 100%;
  margin-top: 20px;
  padding: 15px 10px;
  border: none;
  background-color: #ffbb17;
  color: #fff; }
  .p-contact_warp input[type="submit"]:hover {
    opacity: .8; }

.p-contact_warp .contact_inner,
.p-contact_warp input[type="text"],
.p-contact_warp input[type="tel"],
.p-contact_warp input[type="email"],
.p-contact_warp textarea,
.p-contact_warp input[type="submit"] {
  border-radius: 3px; }

#p_area_warp {
  position: relative; }
  #p_area_warp .c-ttl01 {
    margin-bottom: 20px; }
  #p_area_warp #area_inner {
    position: relative; }
    #p_area_warp #area_inner #area_map {
      width: 48.6%;
      z-index: 99;
      position: absolute; }
      @media (max-width: 600px) {
        #p_area_warp #area_inner #area_map {
          width: 90%;
          position: inherit;
          margin: 0 auto;
          display: block; } }
    #p_area_warp #area_inner .area_list {
      float: right;
      width: 80%;
      padding: 4% 2% 7% 32%;
      background-color: #fff;
      background-image: url(../img/common/cnt05_img02.png);
      background-repeat: no-repeat;
      background-position: 100% 100%;
      margin: 7% 0 10% 7%; }
      @media (max-width: 600px) {
        #p_area_warp #area_inner .area_list {
          width: 100%;
          padding: 10%;
          margin: 30px auto 0;
          float: none;
          background-size: 70%; } }
    #p_area_warp #area_inner table td {
      padding-bottom: 10px; }
    #p_area_warp #area_inner p {
      margin-top: 30px; }
  #p_area_warp .arrow_wrap {
    position: relative; }
    #p_area_warp .arrow_wrap img {
      position: absolute; }

.p-list_wrap {
  padding: 30px 40px;
  background: url(../img/common/list_bg_ptn.jpg); }
  @media (max-width: 600px) {
    .p-list_wrap {
      padding: 20px; } }
  .p-list_wrap .list li {
    zoom: 1;
    padding-bottom: 8px;
    border-bottom: 1px solid #a5cbe5; }
    .p-list_wrap .list li:before, .p-list_wrap .list li:after {
      content: "";
      display: table; }
    .p-list_wrap .list li:after {
      clear: both; }
    .p-list_wrap .list li:not(:first-child) {
      padding-top: 15px; }
    .p-list_wrap .list li::before {
      display: inline-block;
      float: left;
      vertical-align: middle;
      content: url(../img/common/check_mark.png);
      margin-right: 25px;
      height: 24px; }
    .p-list_wrap .list li p {
      display: inline;
      font-weight: bold; }
    .p-list_wrap .list li span {
      color: #5f9cc7; }

.p-txtBlc p:not(:first-child) {
  margin-top: 30px; }

.p-tbl01 tr:not(:last-child) {
  border-bottom: solid 1px #d8d8d8; }

.p-tbl01 th, .p-tbl01 td {
  padding: 20px 5px; }

.p-tbl01 th {
  width: 25%;
  text-indent: -15px;
  padding-left: 15px; }
  .p-tbl01 th::before {
    content: "\f0da";
    font-family: FontAwesome;
    padding-right: 10px; }

.p-tbl01 td {
  width: 65%; }
  .p-tbl01 td a {
    text-decoration: underline; }

@media (max-width: 600px) {
  .p-tbl02 {
    border-spacing: 0px 5px; } }

.p-tbl02 th, .p-tbl02 td {
  vertical-align: middle; }
  @media (max-width: 600px) {
    .p-tbl02 th, .p-tbl02 td {
      padding: 0 12px; } }

.p-tbl02 th {
  padding: 8px 15px;
  font-weight: normal; }

.p-100vh {
  position: relative;
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover; }
  .p-100vh .down_arrow {
    position: absolute;
    z-index: 2;
    bottom: 15px;
    left: 0;
    right: 0;
    margin: 0 auto; }
    @media (max-width: 600px) {
      .p-100vh .down_arrow {
        width: 15%;
        margin-top: -70px; } }
  @media (max-width: 960px) {
    .p-100vh {
      height: 100vh;
      margin-top: -70px; } }

/*----------------------
Component
----------------------*/
.c-ttl01 {
  position: relative;
  margin-bottom: 50px;
  text-align: center;
  padding: 20px 20px 0;
  color: #1a2b37;
  border-top: solid 1px #1a2b37; }
  .c-ttl01::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 6px;
    width: 20%;
    background-color: #1a2b37; }
  .c-ttl01::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 70%;
    width: 6px;
    background-color: #1a2b37; }
  @media (max-width: 960px) {
    .c-ttl01 {
      margin-bottom: 40px; } }

.c-ttl02 {
  position: relative;
  font-weight: bold;
  overflow: hidden; }
  .c-ttl02::after {
    content: "";
    height: 10px;
    width: 100%;
    position: absolute;
    bottom: 13px;
    margin-left: 10px;
    background: url(../img/common/ttl_bg_line.png) repeat-x; }
    @media (max-width: 960px) {
      .c-ttl02::after {
        bottom: 10px; } }

.c-ttl03 {
  position: relative;
  margin: 30px 0;
  text-align: center; }
  .c-ttl03 span {
    position: relative;
    padding: 0 10px;
    font-weight: bold;
    background-image: url(../img/index/bg_gry.jpg);
    z-index: 99; }
  .c-ttl03::before {
    content: "";
    display: block;
    border-top: solid 1px #1a2b37;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    z-index: 1; }

.c-ttl04 {
  position: relative;
  margin-bottom: 15px;
  padding-left: 20px;
  color: #1a2b37;
  font-weight: bold; }
  .c-ttl04::before {
    position: absolute;
    top: 12px;
    left: 0;
    content: "";
    display: inline-block;
    width: 10px;
    height: 4px;
    background-color: #1a2b37; }

.c-ptn_bg {
  background-image: url(../img/index/bg_gry.jpg); }

/*----------------------
Utility
----------------------*/
.u-wrap {
  padding: 0 40px;
  box-sizing: initial; }
  @media (max-width: 960px) {
    .u-wrap {
      padding: 0 20px; } }

.u-inner {
  max-width: 800px;
  margin: 0 auto;
  padding: 65px 10px;
  box-sizing: content-box; }
  @media (max-width: 600px) {
    .u-inner {
      padding: 35px 10px; } }

.u-main_cnt {
  width: 100%;
  padding-left: 280px;
  box-sizing: border-box; }
  @media (max-width: 960px) {
    .u-main_cnt {
      padding-left: 0; } }

.u-pc_tel_none {
  pointer-events: none; }
  @media (max-width: 600px) {
    .u-pc_tel_none {
      pointer-events: auto; } }

.u-bld {
  font-weight: bold; }

.u-fltL {
  float: left; }

.u-fltR {
  float: right; }

.u-accent {
  color: #5f9cc7; }

.u-mb10 {
  margin-bottom: 10px; }

.u-mb15 {
  margin-bottom: 15px; }

.u-mb20 {
  margin-bottom: 20px; }

.u-mb30 {
  margin-bottom: 30px; }

.u-mb40 {
  margin-bottom: 40px; }

.u-mb50 {
  margin-bottom: 50px; }

.u-mr10 {
  margin-right: 10px; }

.u-mr20 {
  margin-right: 20px; }

.u-caution {
  text-indent: -17px;
  margin-left: 18px; }
  .u-caution::before {
    content: "※"; }

.u-for_sp {
  display: none; }
  @media (max-width: 600px) {
    .u-for_sp {
      display: block; } }

.u-for_tb {
  display: none; }
  @media (max-width: 960px) {
    .u-for_tb {
      display: block; } }

.u-for_pc {
  display: block; }
  @media (max-width: 960px) {
    .u-for_pc {
      display: none; } }

.u-for_pc_tb {
  display: block; }
  @media (max-width: 600px) {
    .u-for_pc_tb {
      display: none; } }

/*20230809*/
#privacy_policy .c-ttl02 {
  margin-bottom: 30px;
}
#privacy_policy .txt {
  margin-bottom: 15px;
}
#privacy_policy .c-ttl06 {
  font-size: 2rem;
  font-weight: bold;
  margin-top: 25px; }
  @media (max-width: 960px) {
    #privacy_policy .c-ttl06 {
      font-size: 1.8rem; } }
  @media (max-width: 600px) {
    #privacy_policy .c-ttl06 {
      font-size: 20px; } }

#privacy_policy .c-list_num {
  padding-left: 30px;
  margin-bottom: 15px;
}