@charset "UTF-8";
/* Scss Document */
/*=============================================================
 共通【Reset】
=============================================================*/
body {
  margin: 0;
  padding: 0; }

.reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6, .reset span, .reset p {
  margin: 0;
  padding: 0; }
.reset ul, .reset ol, .reset li, .reset dl, .reset dt, .reset dd, .reset figure, .reset figcaption, .reset table, .reset address {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  list-style: none;
  font-style: normal;
  font-weight: normal; }
.reset table {
  border-collapse: collapse;
  border-spacing: 0; }
.reset img {
  border: none;
  margin: 0px;
  padding: 0px;
  vertical-align: bottom; }

/*=============================================================
 共通背景
=============================================================*/
.com_bg_gradient01 {
  background: #005bac;
  background: -moz-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
  background: -webkit-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
  background: linear-gradient(135deg, #005bac 56%, #00a000 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005bac', endColorstr='#00a000',GradientType=1 ); }

/*=============================================================
 共通パーツ
=============================================================*/
.layoutCol2 {
  padding-top: 10vw !important;
  padding-bottom: 10vw !important; }
  @media print, screen and (min-width: 768px) {
    .layoutCol2 {
      padding-top: 5vw !important;
      padding-bottom: 5vw !important; } }
  .layoutCol2 .layoutCol2_left {
    width: 100%; }
    @media print, screen and (min-width: 768px) {
      .layoutCol2 .layoutCol2_left {
        width: 70%; } }
  .layoutCol2 .layoutCol2_right {
    width: 100%;
    margin-top: 10vw; }
    @media print, screen and (min-width: 768px) {
      .layoutCol2 .layoutCol2_right {
        width: 25%;
        margin: 0; } }
    .layoutCol2 .layoutCol2_right ul {
      position: relative;
      background-color: #fff; }
      @media print, screen and (min-width: 768px) {
        .layoutCol2 .layoutCol2_right ul {
          background: none; } }
      .layoutCol2 .layoutCol2_right ul:before {
        content: "INDEX";
        display: block;
        padding: 1em;
        font-weight: bold;
        text-align: right; }
      .layoutCol2 .layoutCol2_right ul:after {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        display: block;
        width: 100%;
        height: 5px;
        background: #005bac;
        background: -moz-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
        background: -webkit-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
        background: linear-gradient(135deg, #005bac 56%, #00a000 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005bac', endColorstr='#00a000',GradientType=1 ); }
      .layoutCol2 .layoutCol2_right ul li {
        border: 1px solid rgba(200, 197, 197, 0.3);
        margin-top: -1px; }
        .layoutCol2 .layoutCol2_right ul li a {
          display: block;
          position: relative;
          padding: 1em 15% 1em 1.5em;
          box-sizing: border-box;
          background: -moz-linear-gradient(top, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
          background: -webkit-linear-gradient(top, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
          background: linear-gradient(to bottom, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
          filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#a3e5e5e5',GradientType=0 ); }
          .layoutCol2 .layoutCol2_right ul li a:after {
            font-family: "Font Awesome 5 Free";
            content: "\f105";
            display: inline-block;
            font-weight: bold;
            -webkit-text-stroke: 1px white;
            position: absolute;
            right: 5%; }
          .layoutCol2 .layoutCol2_right ul li a i {
            display: none; }
        .layoutCol2 .layoutCol2_right ul li.active i {
          display: block;
          position: absolute;
          left: -0.2em;
          top: 50%;
          margin-top: -0.5em;
          font-size: 1.4em;
          transform: rotate(-45deg);
          z-index: 2;
          color: #005BAC; }

.com_txtBox {
  /* padding:5vw;
   border: 1px solid #f5f5f5;
   box-shadow: 2px 2px 2px #ccc;
   background-color: #fff;*/
  box-sizing: border-box;
  margin: 0 auto; }
  .com_txtBox h3 {
    font-size: 5vw;
    margin-bottom: 1em; }
    @media print, screen and (min-width: 768px) {
      .com_txtBox h3 {
        font-size: 180%; } }
  .com_txtBox h4 {
    font-size: 4vw;
    border-left: 3px solid #005BAC;
    margin-bottom: 1em;
    padding-left: 0.5em;
    margin-top: 10vw; }
    @media print, screen and (min-width: 768px) {
      .com_txtBox h4 {
        margin-top: 5vw;
        font-size: 130%; } }
  .com_txtBox h5 {
    font-size: 110%;
    background-color: rgba(223, 218, 218, 0.5);
    padding: 0.5em 1em;
    margin-bottom: 1em; }
  .com_txtBox h6 {
    font-size: 110%;
    color: #005BAC;
    margin-bottom: 0.5em; }
  .com_txtBox p {
    margin-bottom: 1.5em; }
    @media print, screen and (min-width: 768px) {
      .com_txtBox p {
        margin-bottom: 1.5em; } }
    .com_txtBox p a {
      color: #005BAC;
      text-decoration: underline; }
  .com_txtBox .com_btn02 {
    width: auto;
    display: inline-block; }
    @media print, screen and (min-width: 768px) {
      .com_txtBox .com_btn02 {
        min-width: 300px; } }

.com_li_style01 li:before {
  content: "・";
  display: inline-block; }

time {
  position: relative;
  display: inline-block;
  font-size: 80%; }

/*=============================================================
 共通ページタイトル
=============================================================*/
.com_pagetit {
  text-align: center;
  padding: 4vw 0;
  background: url("../image/common/500_F_394117501_8RrMSp6k8d3X4cV5N1aTTqKGEyHdDN0B.jpg") no-repeat center center;
  background-size: cover;
  position: relative; }
  @media print, screen and (min-width: 768px) {
    .com_pagetit {
      padding: 2.5vw 0; } }
  .com_pagetit:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: rgba(255, 255, 255, 0.5); }
  .com_pagetit .ja {
    font-size: 150%;
    letter-spacing: 0.1em;
    position: relative;
    z-index: 2; }
    @media print, screen and (min-width: 768px) {
      .com_pagetit .ja {
        font-size: 40px; } }
  .com_pagetit .en {
    font-size: 90%;
    color: #005BAC;
    position: relative;
    display: inline-block;
    z-index: 2; }
    @media print, screen and (min-width: 768px) {
      .com_pagetit .en {
        font-size: 14px; } }

/*=============================================================
 共通タイトル
=============================================================*/
.com-titLine {
  padding-bottom: 0.5em !important;
  border-bottom: 3px solid #ccc;
  position: relative;
  line-height: 1; }
  .com-titLine:after {
    content: "";
    display: inline-block;
    width: 10%;
    height: 3px;
    position: absolute;
    bottom: -3px;
    left: 0;
    background: #005bac;
    background: -moz-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
    background: -webkit-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
    background: linear-gradient(135deg, #005bac 56%, #00a000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005bac', endColorstr='#00a000',GradientType=1 ); }
  .com-titLine span {
    font-size: 50%;
    display: block;
    margin-top: 0.5em; }
    @media print, screen and (min-width: 768px) {
      .com-titLine span {
        display: inline-block;
        margin: 0; } }

/*=============================================================
 共通ボタン
=============================================================*/
.com_btn01 a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 5px 5vw 5px 2vw;
  font-weight: bold;
  border: 1px solid #ccc;
  text-align: center;
  font-size: 90%; }
  @media print, screen and (min-width: 768px) {
    .com_btn01 a {
      padding: 0.5em 30px 0.5em 10px; } }
.com_btn01 a:after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  display: inline-block;
  font-weight: bold;
  -webkit-text-stroke: 1px white;
  position: absolute;
  right: 10%; }

.com_btn02 a {
  display: block; }
  .com_btn02 a span {
    line-height: 1.2;
    display: block;
    border: 1px solid rgba(0, 91, 172, 0.3);
    padding: 1em 3em 1em 1em;
    position: relative;
    background: -moz-linear-gradient(top, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
    background: -webkit-linear-gradient(top, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
    background: linear-gradient(to bottom, white 0%, white 50%, rgba(229, 229, 229, 0.16) 51%, rgba(229, 229, 229, 0.64) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#a3e5e5e5',GradientType=0 ); }
    .com_btn02 a span i {
      margin-left: 1em;
      color: #F90004; }
    .com_btn02 a span:before {
      content: "";
      display: inline-block;
      width: 3px;
      height: 100%;
      position: absolute;
      top: 0;
      right: 20px;
      background: #005bac;
      background: -moz-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
      background: -webkit-linear-gradient(-45deg, #005bac 56%, #00a000 100%);
      background: linear-gradient(135deg, #005bac 56%, #00a000 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005bac', endColorstr='#00a000',GradientType=1 ); }
    .com_btn02 a span:after {
      font-family: "Font Awesome 5 Free";
      content: "\f105";
      display: inline-block;
      font-weight: bold;
      /*-webkit-text-stroke: 1px white;*/
      position: absolute;
      top: 50%;
      right: 5px;
      color: #005BAC;
      margin-top: -0.5em; }

/*=============================================================
 テーブルスタイル
=============================================================*/
.com-tbl01 {
  width: 100%;
  border: none; }
  .com-tbl01 th, .com-tbl01 td {
    border: 1px solid #D0D0D0;
    padding: 10px;
    text-align: center; }
  .com-tbl01 tr:nth-child(1) th {
    background-color: rgba(0, 91, 172, 0.8); }
  .com-tbl01 th {
    background-color: rgba(0, 106, 80, 0.8);
    color: #FFFFFF;
    font-weight: normal;
    white-space: nowrap; }

.com-tbl02 {
  width: 100%;
  border: none; }
  .com-tbl02 th, .com-tbl02 td {
    border: 1px solid #efefef;
    padding: 10px;
    text-align: center;
    box-sizing: border-box; }
  .com-tbl02 th {
    background-color: rgba(223, 222, 222, 0.2);
    font-weight: normal;
    white-space: nowrap;
    width: 100%;
    display: block; }
    @media print, screen and (min-width: 768px) {
      .com-tbl02 th {
        display: table-cell;
        width: 30%; } }
  .com-tbl02 td {
    text-align: left;
    display: block; }
    @media print, screen and (min-width: 768px) {
      .com-tbl02 td {
        display: table-cell; } }
    .com-tbl02 td.col2 {
      display: flex;
      justify-content: space-between;
      flex-flow: row wrap; }
      .com-tbl02 td.col2 input[type=text] {
        width: 48%; }
    .com-tbl02 td input[type=tel],
    .com-tbl02 td input[type=email] {
      width: 100% !important; }
      @media print, screen and (min-width: 768px) {
        .com-tbl02 td input[type=tel],
        .com-tbl02 td input[type=email] {
          width: 50% !important; } }
    .com-tbl02 td .sizeS {
      width: 30%; }

/*=============================================================
 フォーム
=============================================================*/
input[type=text], input[type=email], input[type=tel], input[type="submit"], input[type="button"], button, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

input[type=text], input[type=email], input[type=tel], input[type="submit"], input[type="button"], textarea {
  box-sizing: border-box;
  box-shadow: none;
  border: 1px #CCCCCC solid;
  padding: 6px;
  box-sizing: border-box;
  width: 100%;
  outline: none; }

textarea {
  resize: vertical;
  width: 100% !important;
  min-height: 100px;
  line-height: 1.68; }

input[type="submit"], input[type="button"], form button {
  border: none;
  padding: 20px 0 !important;
  cursor: pointer;
  min-width: 300px;
  display: inline-block;
  font-size: 16px;
  background: none;
  border: 2px #005BAC solid;
  color: #005BAC; }
  input[type="submit"]:hover, input[type="button"]:hover, form button:hover {
    color: #005BAC;
    background-color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s; }

@media print, screen and (min-width: 768px) {
  input[type="submit"], input[type="button"] {
    padding: 20px 0; }

  input[type=text], input[type=email], input[type=tel], input[type="submit"], input[type="button"], textarea {
    padding: 15px; } }
