@charset "UTF-8";

.scale img {
  -moz-transition: -moz-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: -o-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  -ms-transition: -ms-transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
}

.scale img:hover {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -o-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
}

.titleArea {
  padding: 5px;
  text-align: center;
  color: #fff;
  background: #02a7cb;
}

.titleArea .titleArea_inner {
  display: table;
  width: 100%;
}

@media print,
screen and (min-width: 769px) {
  .titleArea .titleArea_inner {
    margin: 0 auto;
    max-width: 1400px;
  }
}

.titleArea .titleArea_block {
  height: 114px;
  padding: 30px 5px;
  display: table-cell;
  vertical-align: middle;
}

@media print,
screen and (min-width: 769px) {
  .titleArea .titleArea_block {
    padding: 18px 5px;
    height: 137px;
  }
}

.titleArea .titleArea-txt01 {
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.2;
  -moz-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
}

@media print,
screen and (min-width: 769px) {
  .titleArea .titleArea-txt01 {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.titleArea .titleArea-txt02 {
  margin-top: 1em;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5;
}

@media print,
screen and (min-width: 769px) {
  .titleArea .titleArea-txt02 {
    line-height: 1.3;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.cmn_ttl-type01-txt01 {
  color: #00a6cb;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type01-txt01 {
    font-size: 26px;
    font-size: 2.6rem;
    letter-spacing: 0.1em;
  }
}

.cmn_ttl-type01-txt02 {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.015em;
  line-height: 1.333;
  color: #adadad;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type01-txt02 {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.03em;
  }
}

.cmn_ttl-type02 {
  margin-top: 1.5em;
  position: relative;
  padding-left: 1em;
  color: #00a6cb;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type02 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.cmn_ttl-type02::before {
  content: '';
  width: 0.6em;
  height: 1px;
  background: #00a6cb;
  position: absolute;
  top: 0.5em;
  left: 0;
}

.cmn_ttl-type03 {
  margin-top: 1.5em;
  position: relative;
  color: #00a6cb;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type03 {
    font-weight: 500;
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.cmn_ttl-type03-black {
  color: #000000;
}

.cmn_ttl-dark01 {
  text-align: center;
}

.cmn_ttl-dark01>span {
  margin: 0 auto;
  display: inline-block;
  min-width: 70%;
  padding-bottom: 28px;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.333;
  background: url(/assets/img/common/ttl_dark01_bg_sp.png) repeat-x left bottom;
  background-size: 12px auto;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-dark01>span {
    min-width: 600px;
    padding-bottom: 36px;
    font-size: 26px;
    font-size: 2.6rem;
    letter-spacing: 0.1em;
    background: url(/assets/img/common/ttl_dark01_bg_pc.png) repeat-x left bottom;
    background-size: 20px auto;
  }
}

.cmn_ttl-type04 {
  margin-top: 1.5em;
  position: relative;
  color: #2b2b2b;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

.cmn_ttl-type04:first-child {
  margin-top: 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type04 {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type05 {
  color: #00a6cb;
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type05 {
    font-size: 32px;
    font-size: 3.2rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type05:not(:first-child) {
  margin-top: 1.5em;
}

.cmn_ttl-type06 {
  margin-top: 2em;
  position: relative;
  padding-left: 1.5em;
  color: #2b2b2b;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type06 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type06::before {
  content: '';
  width: 0.7em;
  height: 1.5px;
  background: #2b2b2b;
  position: absolute;
  top: 0.6em;
  left: 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type06::before {
    height: 2px;
  }
}

.cmn_ttl-type06:first-child {
  margin-top: 0;
}

.cmn_ttl-type07 {
  position: relative;
  color: #00a6cb;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
  display: table;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type07 {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type07:not(:first-child) {
  margin-top: 1.5em;
}

.cmn_ttl-type07>div {
  display: table-cell;
  vertical-align: bottom;
}

.cmn_ttl-type07>div:first-child {
  width: 74px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type07>div:first-child {
    width: 100px;
  }
}

.cmn_ttl-type07 img {
  width: 64px;
  height: 64px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type07 img {
    width: 91px;
    height: 91px;
  }
}

.cmn_ttl-type08 {
  position: relative;
  color: #202020;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type08 {
    line-height: 1.55;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type08:not(:first-child) {
  padding-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type08:not(:first-child) {
    padding-top: 40px;
  }
}

.cmn_ttl-type08 span {
  display: inline;
  padding-bottom: 2px;
  border-bottom: #202020 solid 2px;
}

.cmn_ttl-type09 {
  margin-top: 2em;
  position: relative;
  padding-left: 0.8em;
  color: #00a6cb;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type09 {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type09::before {
  content: '';
  width: 0.3em;
  height: 1.5px;
  background: #00a6cb;
  position: absolute;
  top: 0.6em;
  left: 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type09::before {
    height: 2px;
  }
}

.cmn_ttl-type09:first-child {
  margin-top: 0;
}

.cmn_ttl-type10 {
  margin-top: 2em;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type10 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type10:first-child {
  margin-top: 0;
}

.cmn_ttl-type10+p {
  margin-top: 0.5em;
}

.cmn_ttl-type11 {
  margin-top: 2em;
  position: relative;
  padding-left: 1.3em;
  color: #fe6b2d;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type11 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type11::before {
  content: '';
  width: 0.8em;
  height: 1.5px;
  background: #fe6b2d;
  position: absolute;
  top: 0.6em;
  left: 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type11::before {
    height: 2px;
  }
}

.cmn_ttl-type11_txt01 {
  display: inline-block;
  padding-right: 0.8em;
}

.cmn_ttl-type11_txt02 {
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type11_txt02 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.cmn_ttl-type11:first-child {
  margin-top: 0;
}

.cmn_ttl-type12 {
  margin-top: 2em;
  padding-left: 2.2em;
  position: relative;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.333;
}

@media print,
screen and (min-width: 769px) {
  .cmn_ttl-type12 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.08em;
  }
}

.cmn_ttl-type12:first-child {
  margin-top: 0;
}

.cmn_ttl-type12_number {
  display: block;
  background: #00a6cb;
  color: #fff;
  width: 1.8em;
  height: 1.8em;
  line-height: 1.8em;
  text-align: center;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  -moz-transform: translate(0, -0.3em);
  -o-transform: translate(0, -0.3em);
  -ms-transform: translate(0, -0.3em);
  -webkit-transform: translate(0, -0.3em);
  transform: translate(0, -0.3em);
}

.cmn_ttl-type12+p {
  margin-top: 0.5em;
}

.entry_body table th,
.entry_body table td,
.cmn_table-type01 th,
.cmn_table-type01 td {
  padding: 10px 5px;
  border-top: #d1d1d1 solid 1px;
  border-bottom: #d1d1d1 solid 1px;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.66;
}

@media print,
screen and (min-width: 769px) {

  .entry_body table th,
  .entry_body table td,
  .cmn_table-type01 th,
  .cmn_table-type01 td {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.16em;
    padding: 16px;
    line-height: 2.2;
  }
}

.entry_body table th,
.cmn_table-type01 th {
  background: #f9f9f9;
  border-right: #d1d1d1 solid 1px;
}

@media print,
screen and (min-width: 769px) {

  .entry_body table th,
  .cmn_table-type01 th {
    border-right: none;
  }
}

.cmn_table-type02 tbody tr:last-child th,
.cmn_table-type02 tbody tr:last-child td {
  padding-bottom: 16px;
  border-bottom: #d1d1d1 solid 1px;
}

.cmn_table-type02 tbody tr:first-child th:nth-child(2),
.cmn_table-type02 tbody tr:first-child td:nth-child(3) {
  padding-top: 16px;
}

.cmn_table-type02 tbody tr:first-child td:first-child {
  padding-bottom: 16px;
  border-bottom: #d1d1d1 solid 1px;
}

.cmn_table-type02 th,
.cmn_table-type02 td {
  padding: 0 5px;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.66;
}

@media print,
screen and (min-width: 769px) {

  .cmn_table-type02 th,
  .cmn_table-type02 td {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.16em;
    padding: 0 16px;
    line-height: 2.2;
  }
}

.cmn_table-type02 th {
  background: #f9f9f9;
}

.cmn_table-type03 {
  border-top: #d1d1d1 solid 1px;
  border-left: #d1d1d1 solid 1px;
}

.cmn_table-type03 thead th {
  text-align: center;
  padding: 5 10px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_table-type03 thead th {
    padding: 10px 20px;
  }
}

.cmn_table-type03 th,
.cmn_table-type03 td {
  padding: 5px;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.66;
  border-right: #d1d1d1 solid 1px;
  border-bottom: #d1d1d1 solid 1px;
}

@media print,
screen and (min-width: 769px) {

  .cmn_table-type03 th,
  .cmn_table-type03 td {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.08em;
    padding: 10px 20px;
    line-height: 1.88;
  }
}

.cmn_table-type03 th {
  font-weight: 700;
}

.cmn_table-type03 table th,
.cmn_table-type03 table td {
  padding: 0;
  border: none;
}

.cmn_table-type04 tbody tr:first-child th,
.cmn_table-type04 tbody tr:first-child td {
  padding-top: 0.7em;
}

.cmn_table-type04 tbody tr:last-child th,
.cmn_table-type04 tbody tr:last-child td {
  padding-bottom: 0.7em;
  border-bottom: #d1d1d1 solid 1px;
}

.cmn_table-type04 tbody:last-child tr:last-child th,
.cmn_table-type04 tbody:last-child tr:last-child td {
  border-bottom: none;
}

.cmn_table-type04 th,
.cmn_table-type04 td {
  vertical-align: top;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.025em;
  line-height: 1.66;
}

@media print,
screen and (min-width: 769px) {

  .cmn_table-type04 th,
  .cmn_table-type04 td {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 1.88;
  }
}

.entry_body ul,
.entry_body ol,
.cmn_list-type01 {
  margin-top: 1em;
  counter-reset: li;
}

@media print,
screen and (min-width: 769px) {

  .entry_body ul,
  .entry_body ol,
  .cmn_list-type01 {
    margin-top: 1.5em;
  }
}

.entry_body ul li,
.entry_body ol li,
.cmn_list-type01 li {
  margin-top: 1em;
  line-height: 1.5;
  position: relative;
}

.cmn_inner02-add2020 .entry_body ul li,
.cmn_inner02-add2020 .entry_body ol li,
.cmn_inner02-add2020 .cmn_list-type01 li {
  line-height: 1.8;
}

.entry_body ul li:first-child,
.entry_body ol li:first-child,
.cmn_list-type01 li:first-child {
  margin-top: 0;
}

.entry_body ul li,
.list-disc {
  padding-left: 20px;
}

.entry_body ul li::before,
.list-disc::before {
  content: '';
  position: absolute;
  left: 5px;
  top: 0.8em;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #000000;
}

.cmn_inner02-add2020 .entry_body ul li::before,
.cmn_inner02-add2020 .list-disc::before {
  top: 0.6em;
}

@media print,
screen and (min-width: 769px) {

  .entry_body ul li,
  .list-disc {
    padding-left: 25px;
  }
}

.list-disc02 {
  padding-left: 16px;
}

.list-disc02::before {
  content: '';
  position: absolute;
  left: 5px;
  top: 0.5em;
  width: 0.8em;
  height: 0.8em;
  border-radius: 50%;
  background: #c8c8c8;
}

@media print,
screen and (min-width: 769px) {
  .list-disc02 {
    padding-left: 25px;
  }
}

.list-disc03 {
  padding-left: 1.2em;
}

.list-disc03::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.3em;
  width: 0.8em;
  height: 0.8em;
  background: #00a7cc;
}

.list-disc-new {
  padding-left: 1em;
}

.list-disc-new:not(:first-child) {
  margin-top: 0.5em !important;
}

.list-disc-new::before {
  content: '';
  position: absolute;
  left: 5px;
  top: 0.6em;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #000000;
}

@media print,
screen and (min-width: 769px) {
  .list-disc-new {
    padding-left: 1em;
  }
}

.entry_body ol li,
.list-decimal {
  padding-left: 20px;
}

.entry_body ol li::before,
.list-decimal::before {
  counter-increment: li;
  content: counter(li) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: #000000;
}

@media print,
screen and (min-width: 769px) {

  .entry_body ol li,
  .list-decimal {
    padding-left: 25px;
  }
}

.list-decimal02 {
  padding-left: 20px;
}

.list-decimal02::before {
  display: inline-block;
  counter-increment: li;
  content: counter(li);
  position: absolute;
  left: 0;
  top: 0.45em;
  color: #000000;
  width: 1.1em;
  height: 1.1em;
  border: #000000 solid 1px;
  text-indent: 0.1em;
  text-align: center;
  border-radius: 50%;
  line-height: 1.3em;
  font-size: 10px;
  font-size: 1rem;
}

@media print,
screen and (min-width: 769px) {
  .list-decimal02::before {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

@media print,
screen and (min-width: 769px) {
  .list-decimal02 {
    padding-left: 25px;
  }
}

.list-decimal02-en {
  padding-left: 45px;
}

.list-decimal02-en::before {
  display: inline-block;
  counter-increment: li;
  content: "( " counter(li, lower-roman) " )";
  position: absolute;
  left: 0;
  top: 0.45em;
  color: #000000;
  width: 1.5em;
  height: 1.1em;
  text-indent: 0;
  letter-spacing: 0;
  text-align: center;
  line-height: 1.3em;
  white-space: nowrap;
  font-size: 10px;
  font-size: 1rem;
}

@media print,
screen and (min-width: 769px) {
  .list-decimal02-en::before {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

@media print,
screen and (min-width: 769px) {
  .list-decimal02-en {
    padding-left: 25px;
  }
}

.ie .entry_body ul li::before,
.ie .list-disc::before {
  top: 0.8em;
}

.ie .list-disc02::before {
  top: 0.7em;
}

.ie .entry_body ol li::before,
.ie .list-decimal::before {
  top: 0.1em;
}

.ie .list-decimal02::before {
  top: 0.6em;
  line-height: 1;
}

.ie .list-decimal02-en::before {
  top: 0.6em;
  line-height: 1;
}

.Edge .list-decimal02::before {
  top: 0.5em;
  line-height: 1;
}

.Edge .list-decimal02-en::before {
  top: 0.5em;
  line-height: 1;
}

.win.chrome .list-decimal02::before {
  line-height: 1.2;
}

.win.chrome .list-decimal02-en::before {
  line-height: 1.2;
}

.cmn_list-typeFAQ {
  margin-top: 1em;
  counter-reset: faq;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ {
    margin-top: 1.5em;
  }
}

.cmn_list-typeFAQ li {
  position: relative;
  border-bottom: #d1d1d1 solid 1px;
}

.cmn_list-typeFAQ li:first-child {
  margin-top: 0;
}

.cmn_list-typeFAQ-list {
  padding: 1em 0 1em 44px;
  cursor: pointer;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ-list {
    padding: 1.7em 0 1.7em 72px;
  }
}

.cmn_list-typeFAQ-list::before {
  line-height: 1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  counter-increment: faq;
  content: "Q" counter(faq) ".";
  position: absolute;
  left: 0;
  top: 0.6em;
  color: #00a6cb;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ-list::before {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ-list::before {
    top: 1.1em;
  }
}

.cmn_list-typeFAQ-q {
  line-height: 1.5;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #246371;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ-q {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    letter-spacing: 0.16em;
  }
}

.cmn_list-typeFAQ-a {
  display: none;
  padding: 1em 0 0;
  width: 100%;
  color: #000000;
  line-height: 1.8;
  font-size: 11px;
  font-size: 1.1rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ-a {
    line-height: 2;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.cmn_list-type02 {
  margin-top: 1.5em;
  counter-reset: li;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-type02 {
    margin-top: 1.5em;
  }
}

.cmn_list-type02 li {
  margin-top: 1.5em;
  line-height: 1.69;
  position: relative;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-type02 li {
    margin-top: 1.5em;
    line-height: 1.88;
  }
}

.cmn_list-type02 li:first-child {
  margin-top: 0;
}

.list-decimal03::before {
  display: inline-block;
  padding-right: 0.5em;
  counter-increment: li;
  content: counter(li) ".";
  font-weight: 700;
}

.cmn_list-typeFAQ--new li {
  border-bottom: none;
  padding-left: 65px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ--new li {
    padding-left: 100px;
  }
}

.cmn_list-typeFAQ--new .cmn_list-typeFAQ-list {
  padding-top: 1.2em;
  padding-bottom: 1.2em;
}

.cmn_list-typeFAQ--new .cmn_list-typeFAQ-list:before {
  display: inline-block;
  width: 2.6em;
  text-align: center;
  padding: 0.2em;
  background: #00a6cb;
  color: #fff;
  border-radius: 25px;
  line-height: 1.4;
  content: "Q" counter(faq) "";
  top: 0.4em;
  white-space: nowrap;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ--new .cmn_list-typeFAQ-list:before {
    padding: 0.3em;
    width: 3em;
    top: 0.6em;
  }
}

.cmn_list-typeFAQ--new .cmn_list-typeFAQ-q {
  color: #000000;
}

.cmn_list-typeFAQ--new .cmn_list-typeFAQ-a {
  font-size: 12px;
  font-size: 1.2rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeFAQ--new .cmn_list-typeFAQ-a {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.cmn_btn-type01 {
  border: #c9c9c9 solid 2px;
  display: table;
  text-decoration: none;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.3;
  color: #000;
  background: #fff;
  transition: opacity 0.2s ease-out;
}

.cmn_btn-type01:hover {
  opacity: 0.7;
  text-decoration: none;
}

@media (max-width: 320px) {
  .cmn_btn-type01 {
    font-size: 3.2vw;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.cmn_btn-type01>span {
  display: table-cell;
  vertical-align: middle;
  padding: 0.5em 1em;
  letter-spacing: 0.07em;
  height: 41px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type01>span {
    padding: 0.5em 1.5em;
    height: 50px;
  }
}

.cmn_btn-type01-fontsizeL {
  font-size: 14px;
  font-size: 1.4rem;
}

@media (max-width: 320px) {
  .cmn_btn-type01-fontsizeL {
    font-size: 3.5vw;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type01-fontsizeL {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.cmn_btn-type02 {
  display: table;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background: #00a6cb;
  border-radius: 25px;
  transition: opacity 0.2s ease-out;
}

.cmn_btn-type02:hover {
  opacity: 0.7;
  text-decoration: none;
}

@media (max-width: 320px) {
  .cmn_btn-type02 {
    font-size: 3.5vw;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type02 {
    border-radius: 35px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.cmn_btn-type02>span {
  display: table-cell;
  vertical-align: middle;
  padding: 0.5em 2.5em;
  letter-spacing: 0.07em;
  height: 50px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type02>span {
    height: 70px;
  }
}

.cmn_btn-type02-fontsizeL {
  font-size: 14px;
  font-size: 1.4rem;
}

@media (max-width: 320px) {
  .cmn_btn-type02-fontsizeL {
    font-size: 3.5vw;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type02-fontsizeL {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.cmn_btn-type03 {
  display: table;
  position: relative;
  width: 100%;
  background: #00a6cb;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  transition: opacity 0.2s ease-out;
  letter-spacing: 0.08em;
  font-weight: 900;
  font-style: italic;
  text-decoration: none;
  line-height: 1;
  text-align: left;
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
}

@media (max-width: 320px) {
  .cmn_btn-type03 {
    font-size: 12.5px;
    font-size: 1.25rem;
  }
}

.cmn_btn-type03:hover {
  opacity: 0.7;
  text-decoration: none;
}

.cmn_btn-type03>span {
  display: table-cell;
  vertical-align: middle;
  height: 43px;
  padding: 5px 30px 5px 15px;
}

.cmn_btn-type03>span::after {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -7px;
  right: 14px;
  width: 8px;
  height: 13px;
  background: url(/assets/img/common/ic_arrow-white.svg) no-repeat left top;
  background-size: 8px 13px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type03 {
    font-size: 18px;
    font-size: 1.8rem;
  }

  .cmn_btn-type03>span {
    height: 57px;
    padding: 5px 40px 5px 25px;
  }

  .cmn_btn-type03>span::after {
    margin-top: -10px;
    right: 24px;
    width: 12px;
    height: 20px;
    background: url(/assets/img/common/ic_arrow-white.svg) no-repeat left top;
    background-size: 12px 20px;
  }
}

.ic-arrowR-blue::after {
  position: relative;
  content: '';
  display: inline-block;
  margin-left: 5px;
  width: 15px;
  height: 15px;
  background: url(/assets/img/common/ic_arrow-circle-blue.svg);
  background-size: contain;
  vertical-align: -3px;
}

@media print,
screen and (min-width: 769px) {
  .ic-arrowR-blue::after {
    margin-left: 8px;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
  }
}

.ic-arrowR-gray::after {
  position: relative;
  content: '';
  display: inline-block;
  margin-left: 5px;
  width: 15px;
  height: 15px;
  background: url(/assets/img/common/ic_arrow-circle-gray.svg);
  background-size: contain;
  vertical-align: -3px;
}

@media print,
screen and (min-width: 769px) {
  .ic-arrowR-gray::after {
    margin-left: 8px;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
  }
}

.ic-arrowR-white::after {
  position: relative;
  content: '';
  display: inline-block;
  margin-left: 5px;
  width: 15px;
  height: 15px;
  background: url(/assets/img/common/ic_arrow-circle-white.svg);
  background-size: contain;
  vertical-align: -3px;
}

@media print,
screen and (min-width: 769px) {
  .ic-arrowR-white::after {
    margin-left: 8px;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
  }
}

.ic-arrowR-gray2::after {
  position: relative;
  content: '';
  display: inline-block;
  margin-left: 5px;
  width: 15px;
  height: 15px;
  background: url(/assets/img/common/ic_arrow-circle-gray2.svg);
  background-size: contain;
  vertical-align: -3px;
}

@media print,
screen and (min-width: 769px) {
  .ic-arrowR-gray2::after {
    margin-left: 12px;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
  }
}

.ic-arrowL-gray2::before {
  position: relative;
  content: '';
  display: inline-block;
  margin-right: 5px;
  width: 15px;
  height: 15px;
  background: url(/assets/img/common/ic_arrow-circle-gray2.svg);
  background-size: contain;
  vertical-align: -3px;
  -moz-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

@media print,
screen and (min-width: 769px) {
  .ic-arrowL-gray2::before {
    margin-right: 8px;
    width: 22px;
    height: 22px;
    vertical-align: -6px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type01.fontsizeL .ic-arrowR-blue::after {
    vertical-align: -5px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_btn-type01.fontsizeL .ic-arrowR-gray::after {
    vertical-align: -5px;
  }
}

.cmn_btnWrap {
  margin-top: 20px;
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap {
    margin-top: 40px;
    text-align: left;
  }
}

.cmn_btnWrap>a {
  margin: 0 auto;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap>a {
    margin: 0;
  }
}

.cmn_contactBtnArea {
  margin-top: 50px;
  padding: 50px 25px;
  background: #f4f4f4;
  text-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
}

@media print,
screen and (min-width: 769px) {
  .cmn_contactBtnArea {
    margin-top: 75px;
    padding: 80px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.cmn_contactBtnArea p {
  margin-top: 1.5em !important;
}

@media print,
screen and (min-width: 769px) {
  .cmn_contactBtnArea p {
    margin-top: 2em !important;
  }
}

.cmn_contactBtnArea-btnWrap {
  margin: 1.5em auto 0;
  display: inline-block;
}

@media print,
screen and (min-width: 769px) {
  .cmn_contactBtnArea-btnWrap {
    margin-top: 2em !important;
  }
}

.cmn_btnWrap02 {
  margin-top: 20px;
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap02 {
    margin-top: 30px;
    text-align: left;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: stretch;
    align-content: stretch;
  }
}

.cmn_btnWrap02>div {
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap02>div {
    margin-top: 30px;
    padding-right: 20px;
  }
}

.cmn_btnWrap02>div a {
  width: 100%;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap02>div a {
    width: auto;
  }
}

.cmn_btnWrap02>div+div {
  margin-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap02>div+div {
    margin-top: 30px;
  }
}

.cmn_btnWrap02>a {
  margin: 0 auto;
  width: 100%;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap02>a {
    margin: 0;
    width: auto;
  }
}

.cmn_btnWrap03 {
  text-align: center;
  border-top: #d1d1d1 solid 1px;
  padding-top: 30px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap03 {
    padding-top: 20px;
    text-align: left;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: stretch;
    align-content: stretch;
  }
}

.cmn_btnWrap03>div {
  text-align: center;
  margin-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap03>div {
    margin-top: 30px;
    padding-right: 20px;
  }
}

.cmn_btnWrap03>div a {
  margin: 0 auto;
  width: 100%;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap03>div a {
    width: auto;
  }
}

.cmn_btnWrap03>div+div {
  margin-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap03>div+div {
    margin-top: 30px;
  }
}

.cmn_btnWrap03>a {
  margin: 0 auto;
}

@media print,
screen and (min-width: 769px) {
  .cmn_btnWrap03>a {
    margin: 0;
  }
}

.bnrWrap {
  text-align: center;
}

.bnrWrap .cmn_inner01 {
  padding: 0 25px;
}

@media print,
screen and (min-width: 769px) {
  .bnrWrap .cmn_inner01 {
    padding: 0;
    margin: 0 auto;
    width: 1100px;
  }
}

.bnrWrap .bnrArea {
  margin: 100px auto 45px;
}

@media print,
screen and (min-width: 769px) {
  .bnrWrap .bnrArea {
    margin: 135px auto 80px;
  }
}

.bnrArea {
  margin-top: 45px;
  background: #e5e5e5;
  padding: 20px;
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .bnrArea {
    margin-top: 90px;
    padding: 15px 50px;
  }
}

.bnrArea ul {
  margin: 0 auto;
  max-width: 260px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  -webkit-align-content: stretch;
  /* Safari */
  align-content: stretch;
}

@media print,
screen and (min-width: 769px) {
  .bnrArea ul {
    max-width: 1040px;
  }
}

.bnrArea ul li {
  width: 50%;
  padding: 5px 0;
}

@media print,
screen and (min-width: 769px) {
  .bnrArea ul li {
    width: 25%;
    padding: 5px;
  }
}

.bnrArea ul li img {
  max-width: 120px;
  width: 100%;
  height: auto;
}

@media print,
screen and (min-width: 769px) {
  .bnrArea ul li img {
    max-width: 240px;
  }
}

.bnrArea ul li a {
  transition: opacity 0.2s ease-out;
}

.bnrArea ul li a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.breadcrumbs {
  display: none;
}

@media print,
screen and (min-width: 769px) {
  .breadcrumbs {
    background: #02a7cb;
    border-bottom: #5ac5dd solid 1px;
    display: block;
    padding: 15px 0;
    text-align: center;
  }

  .breadcrumbs .breadcrumbs_inner {
    margin: 0 auto;
    min-width: 1140px;
    max-width: 1400px;
    text-align: left;
  }

  .breadcrumbs li {
    padding: 0 10px 0 20px;
    display: inline-block;
    position: relative;
    line-height: 1.2;
  }

  .breadcrumbs li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -4px;
    width: 4px;
    height: 4px;
    border: 1px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
  }

  .breadcrumbs .breadcrumbs-link {
    text-decoration: none;
    color: #fff;
    font-weight: 500;
    font-size: 13px;
  }

  .breadcrumbs li:first-child {
    padding-left: 5px;
  }

  .breadcrumbs li:first-child::before {
    display: none;
  }

  .breadcrumbs li:last-child .breadcrumbs-link {
    color: #fff;
    font-weight: 400;
  }
}

.no-touchevents .breadcrumbs a:hover {
  color: #fff;
  text-decoration: underline;
}

.visualArea-in {
  position: relative;
  width: 100%;
  background: #1b2328;
  text-align: center;
}

.visualArea-in .visualArea-in_inner {
  position: relative;
  margin: 0 auto;
  max-width: 1400px;
  vertical-align: bottom;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in .visualArea-in_inner {
    height: auto;
    max-height: 600px;
  }
}

.visualArea-in iframe,
.visualArea-in video {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  vertical-align: bottom;
  z-index: 1;
}

@media print,
screen and (min-width: 769px) {

  .visualArea-in iframe,
  .visualArea-in video {
    height: 600px;
  }
}

.visualArea-in .visualItem-sound {
  display: none;
  position: absolute;
  right: 40px;
  bottom: 17px;
  width: 36px;
  height: 25px;
  background: url(/assets/img/common/btn_sound_off.png) no-repeat left top;
  background-size: 36px 25px;
  transition: opacity 0.2s ease-out;
}

.visualArea-in .visualItem-sound:hover {
  opacity: 0.7;
  text-decoration: none;
}

.visualArea-in .visualItem-sound img {
  display: none;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in .visualItem-sound {
    display: block;
    cursor: pointer;
  }
}

.visualArea-in .visualItem-sound.is-on {
  background: url(/assets/img/common/btn_sound_on.png) no-repeat left top;
  background-size: 36px 25px;
}

.visualArea-in .visualItem-sound-w {
  background: url(/assets/img/common/btn_sound_w_off.png) no-repeat left top;
}

.visualArea-in .visualItem-sound-w.is-on {
  background: url(/assets/img/common/btn_sound_w_on.png) no-repeat left top;
  background-size: 36px 25px;
}

.visualArea-in_photoArea {
  position: relative;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in_photoArea {
    position: relative;
    left: 0;
    top: 0;
    -moz-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

.visualArea-in_photoArea img {
  width: 100%;
  height: auto;
}

.visualArea-in_titleArea {
  position: absolute;
  left: 0;
  bottom: 0;
  color: #fff;
  text-align: left;
  padding: 0 20px 40px 25px;
  z-index: 3;
  pointer-events: none;
  width: 100%;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in_titleArea {
    padding: 0 25px 50px;
  }
}

@media print,
screen and (min-width: 1140px) {
  .visualArea-in_titleArea {
    padding: 0 100px 60px;
  }
}

.visualArea-in_titleArea--center {
  text-align: center;
  bottom: auto;
  top: 50%;
  padding-bottom: 0 !important;
  -moz-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.visualArea-in_titleArea .titleArea-txt01 {
  font-size: 30px;
  font-size: 3rem;
  font-size: 7.7vw;
  font-weight: 700;
  line-height: 1.2;
  font-feature-settings: 'palt';
  -moz-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  -webkit-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in_titleArea .titleArea-txt01 {
    font-size: 60px;
    font-size: 6rem;
    -moz-text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
    -webkit-text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
  }
}

@media print,
screen and (min-width: 1400px) {
  .visualArea-in_titleArea .titleArea-txt01 {
    font-size: 70px;
    font-size: 7rem;
  }
}

.visualArea-in_titleArea .titleArea-txt02 {
  margin-top: 1em;
  font-size: 14px;
  font-size: 1.4rem;
  font-size: 3.7vw;
  font-weight: 700;
  line-height: 1.428;
  letter-spacing: 0.02em;
  -moz-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  -webkit-text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.36);
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

@media print,
screen and (min-width: 769px) {
  .visualArea-in_titleArea .titleArea-txt02 {
    margin-top: 0.5em;
    font-size: 24px;
    font-size: 2.4rem;
    -moz-text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
    -webkit-text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.36);
  }
}

@media print,
screen and (min-width: 1400px) {
  .visualArea-in_titleArea .titleArea-txt02 {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.visualSlider {
  position: relative;
  margin-bottom: 40px;
}

@media print,
screen and (min-width: 769px) {
  .visualSlider {
    margin-bottom: 0;
  }
}

.visualSlider .visualSlider_item:not(:first-child) {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}

.visualSlider.slick-initialized {
  opacity: 1;
}

.visualSlider.slick-initialized .visualSlider_item {
  position: relative;
  left: 0;
  top: 0;
  opacity: 1;
}

@media print,
screen and (min-width: 769px) {
  .visualSlider .slick-dots {
    bottom: auto;
    top: 20px;
    text-align: right;
    padding-right: 20px;
  }
}

.pager {
  margin: 40px 0 0;
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .pager {
    margin: 100px 0 0;
  }
}

.pager_inner {
  margin: 0 auto;
  display: table;
}

.pager_inner>div {
  display: table-cell;
  vertical-align: middle;
  width: 33%;
  position: relative;
}

@media print,
screen and (min-width: 769px) {
  .pager_inner>div {
    padding: 0 60px !important;
  }
}

.pager_inner .pager-prev {
  padding-right: 0.5em;
  border-right: #d1d1d1 solid 1px;
}

.pager_inner .pager-next {
  padding-left: 0.5em;
  border-left: #d1d1d1 solid 1px;
}

.pager a {
  display: block;
  padding: 15px 15px;
  color: #000000;
  text-decoration: none;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  white-space: nowrap;
}

@media print,
screen and (min-width: 769px) {
  .pager a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.pager a:hover {
  color: #00a6cc;
}

.cmn_list-typeCase {
  counter-reset: case;
}

.cmn_list-typeCase li {
  padding-top: 40px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li {
    padding-top: 70px;
  }
}

.cmn_list-typeCase li:first-child {
  padding-top: 30px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li:first-child {
    padding-top: 50px;
  }
}

.cmn_list-typeCase li .cmn_list-typeCase-txtWrap {
  position: relative;
  line-height: 1.66;
}

.cmn_list-typeCase li .cmn_list-typeCase-txtWrap::before {
  line-height: 1;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  font-family: 'PT Sans', sans-serif;
  font-weight: 700;
  counter-increment: case;
  content: counter(case);
  position: absolute;
  left: 0;
  top: 0.3em;
  color: #fff;
  background: #00a6cb;
  border-radius: 50%;
  width: 27px;
  height: 27px;
  text-align: center;
  line-height: 27px;
  font-style: italic;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li .cmn_list-typeCase-txtWrap::before {
    text-indent: 0.1em;
    font-size: 20px;
    font-size: 2rem;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li .cmn_list-typeCase-txtWrap::before {
    width: 36px;
    height: 36px;
    line-height: 36px;
    top: 0.4em;
  }
}

.cmn_list-typeCase li .clcmn_list-typeCase-txt01 {
  margin: 0 !important;
  padding: 0.8em 0 0.6em 40px;
  font-weight: 700;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li .clcmn_list-typeCase-txt01 {
    padding: 1em 0 0.8em 50px;
  }
}

.cmn_list-typeCase li .clcmn_list-typeCase-txt02 {
  margin: 0 !important;
  padding: 0 0 0 40px;
  font-weight: 700;
  color: #6e6e6e;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li .clcmn_list-typeCase-txt02 {
    padding-left: 50px;
  }
}

.cmn_list-typeCase li figure {
  display: block;
  margin: 1em 0 0;
  text-align: left;
}

@media print,
screen and (min-width: 769px) {
  .cmn_list-typeCase li figure {
    margin: 25px 0 0;
  }
}

.cmn_list-typeCase li figure img {
  max-width: 100%;
  height: auto;
}

/*!
	Modaal - accessible modals - v0.3.1
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden;
}

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999998;
  opacity: 0;
}

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  transition: all 0.3s ease-in-out;
}

.modaal-wrapper * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
}

.modaal-wrapper .modaal-close {
  border: none;
  background: transparent;
  padding: 0;
  -webkit-appearance: none;
}

.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1;
}

.modaal-wrapper.modaal-start_fade {
  opacity: 0;
}

.modaal-wrapper *[tabindex="0"] {
  outline: none !important;
}

.modaal-wrapper.modaal-fullscreen {
  overflow: hidden;
}

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%;
}

.modaal-fullscreen .modaal-outer-wrapper {
  display: block;
}

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px;
}

.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top;
}

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1280px;
  border-radius: 0px;
  background: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto;
}

.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden;
}

.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto;
}

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: transparent;
  border-radius: 100%;
  transition: all 0.2s ease-in-out;
}

.modaal-close:focus,
.modaal-close:hover {
  outline: none;
  background: #fff;
}

.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {
  background: #b93d0c;
}

.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-close:before,
.modaal-close:after {
  display: block;
  content: " ";
  position: absolute;
  top: 14px;
  left: 23px;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  transition: background 0.2s ease-in-out;
}

.modaal-close:before {
  transform: rotate(-45deg);
}

.modaal-close:after {
  transform: rotate(45deg);
}

.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px;
}

.modaal-content-container {
  padding: 0;
}

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0;
}

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent;
}

.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  transition: background 0.2s ease-in-out;
}

.modaal-confirm-btn.modaal-ok:hover {
  background: #2f2f2f;
}

.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline;
}

.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: #2f2f2f;
}

@keyframes instaReveal {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-o-keyframes instaReveal {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes instaReveal {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-ms-keyframes instaReveal {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  box-shadow: none !important;
}

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent;
}

.modaal-instagram .modaal-content-container>blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px;
}

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%;
}

.modaal-gallery-wrap {
  position: relative;
  color: #fff;
}

.modaal-gallery-item {
  display: none;
}

.modaal-gallery-item img {
  display: block;
}

.modaal-gallery-item.is_active {
  display: block;
}

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff;
}

.modaal-gallery-label:focus {
  outline: none;
}

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: transparent;
  border: none;
  border-radius: 100%;
  transition: all 0.2s ease-in-out;
}

.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default;
}

.modaal-gallery-control:focus,
.modaal-gallery-control:hover {
  outline: none;
  background: #fff;
}

.modaal-gallery-control:focus:before,
.modaal-gallery-control:focus:after,
.modaal-gallery-control:hover:before,
.modaal-gallery-control:hover:after {
  background: #afb7bc;
}

.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-gallery-control:before,
.modaal-gallery-control:after {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  transition: background 0.2s ease-in-out;
}

.modaal-gallery-control:before {
  margin: -5px 0 0;
  transform: rotate(-45deg);
}

.modaal-gallery-control:after {
  margin: 5px 0 0;
  transform: rotate(45deg);
}

.modaal-gallery-next {
  left: 100%;
  margin-left: 40px;
}

.modaal-gallery-prev {
  right: 100%;
  margin-right: 40px;
}

.modaal-gallery-prev:before,
.modaal-gallery-prev:after {
  left: 22px;
}

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  transform: rotate(-45deg);
}

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  transform: rotate(45deg);
}

.modaal-video-wrap {
  margin: auto 50px;
  position: relative;
}

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%;
}

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block;
}

@media only screen and (min-width: 1140px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px;
  }
}

@media only screen and (max-width: 1139px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }

  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    transform: none;
    background: rgba(0, 0, 0, 0.7);
  }

  .modaal-gallery-control:before,
  .modaal-gallery-control:after {
    background: #fff;
  }

  .modaal-gallery-next {
    left: auto;
    right: 20px;
  }

  .modaal-gallery-prev {
    left: 20px;
    right: auto;
  }
}

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
}

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important;
  }
}

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .modaal-instagram iframe {
    width: 600px !important;
  }
}

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }

  .modaal-video-container {
    max-width: 900px;
    max-height: 510px;
  }
}

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important;
  }
}

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none;
  }
}

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  transform: scale(0.25);
}

@-ms-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }

  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}

@-moz-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }

  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }

  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}

@-o-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }

  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }

  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}

.modaal-loading-spinner>div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
}

.modaal-loading-spinner>div>div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff;
}

.modaal-loading-spinner>div:nth-of-type(1)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -webkit-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
}

.modaal-loading-spinner>div:nth-of-type(2)>div,
.modaal-loading-spinner>div:nth-of-type(3)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner>div:nth-of-type(1) {
  -ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(2)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .12s;
  -moz-animation-delay: .12s;
  -webkit-animation-delay: .12s;
  -o-animation-delay: .12s;
  animation-delay: .12s;
}

.modaal-loading-spinner>div:nth-of-type(2) {
  -ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(3)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .25s;
  -moz-animation-delay: .25s;
  -webkit-animation-delay: .25s;
  -o-animation-delay: .25s;
  animation-delay: .25s;
}

.modaal-loading-spinner>div:nth-of-type(4)>div,
.modaal-loading-spinner>div:nth-of-type(5)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner>div:nth-of-type(3) {
  -ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(4)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .37s;
  -moz-animation-delay: .37s;
  -webkit-animation-delay: .37s;
  -o-animation-delay: .37s;
  animation-delay: .37s;
}

.modaal-loading-spinner>div:nth-of-type(4) {
  -ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(5)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .5s;
  -moz-animation-delay: .5s;
  -webkit-animation-delay: .5s;
  -o-animation-delay: .5s;
  animation-delay: .5s;
}

.modaal-loading-spinner>div:nth-of-type(6)>div,
.modaal-loading-spinner>div:nth-of-type(7)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner>div:nth-of-type(5) {
  -ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(6)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .62s;
  -moz-animation-delay: .62s;
  -webkit-animation-delay: .62s;
  -o-animation-delay: .62s;
  animation-delay: .62s;
}

.modaal-loading-spinner>div:nth-of-type(6) {
  -ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(7)>div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .75s;
  -moz-animation-delay: .75s;
  -webkit-animation-delay: .75s;
  -o-animation-delay: .75s;
  animation-delay: .75s;
}

.modaal-loading-spinner>div:nth-of-type(7) {
  -ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
}

.modaal-loading-spinner>div:nth-of-type(8)>div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: .87s;
  -moz-animation-delay: .87s;
  -webkit-animation-delay: .87s;
  -o-animation-delay: .87s;
  animation-delay: .87s;
}

.modaal-loading-spinner>div:nth-of-type(8) {
  -ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
}

body.is-open {
  height: 100vh;
  overflow-y: hidden;
  position: fixed;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

#container {
  z-index: 1;
  text-align: center;
  overflow: hidden;
  padding: 0 0 60px;
  position: relative;
}

@media print,
screen and (min-width: 769px) {
  #container {
    padding: 0 0 100px;
  }
}

#container.is-open {
  height: 100vh;
  overflow-y: hidden;
}

#container {
  font-feature-settings: "palt";
}

.safari #container {
  font-feature-settings: "pkna";
}

@media print,
screen and (min-width: 375px) {
  #container.is-open {
    height: 100.1vh;
  }
}

.pc #container.is-open {
  height: 100vh;
}

#mainWrap {
  width: 100%;
  position: relative;
}

.cmn_inner01 {
  padding: 0 25px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner01 {
    padding: 0;
    margin: 0 auto;
    width: 1100px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner01-add2020 {
    min-width: 1180px;
    max-width: 1280px;
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.cmn_inner02 {
  margin-top: 25px;
  padding: 25px 25px 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner02 {
    margin-top: 50px;
    padding: 50px 0 0;
    margin-left: auto;
    margin-right: auto;
    width: 1100px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner02-add2020 {
    min-width: 1180px;
    max-width: 1280px;
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.cmn_inner03 {
  padding: 50px 25px 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner03 {
    padding: 20px 0 0;
    margin: 0 auto;
    width: 1100px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner03-add2020 {
    min-width: 1180px;
    max-width: 1280px;
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.cmn_inner04 {
  padding: 50px 25px 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner04 {
    padding: 50px 40px 0;
    margin: 0 auto;
    width: 1280px;
  }
}

section-dark01,
.section-dark01 {
  padding-bottom: 50px;
  background: #18222d;
  color: #fff;
}

@media print,
screen and (min-width: 769px) {

  section-dark01,
  .section-dark01 {
    padding-bottom: 90px;
  }
}

section-dark02,
.section-dark02 {
  padding-bottom: 50px;
  background: #353c42;
  color: #fff;
}

@media print,
screen and (min-width: 769px) {

  section-dark02,
  .section-dark02 {
    padding-bottom: 90px;
  }
}

p {
  margin-top: 1em;
}

p:first-child {
  margin-top: 0;
}

@media print,
screen and (min-width: 769px) {
  p {
    margin-top: 1.5em;
  }

  p:first-child {
    margin-top: 0;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_inner02-add2020 p {
    margin-top: 1.3em;
  }
}

.cmn_photo-type01 {
  width: 100%;
  height: auto;
}

.cmn_pic-type01 {
  max-width: 325px;
  height: auto;
}

@media print,
screen and (min-width: 769px) {
  .cmn_pic-type01 {
    max-width: 100%;
  }
}

.cmn_block-type01 {
  display: block;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.cmn_block-type01>div+div {
  margin-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type01>div+div {
    margin-top: 0;
  }
}

.cmn_block-type01 .photoArea {
  text-align: center;
}

.cmn_block-type02 {
  display: block;
}

.cmn_block-type02>div+div {
  margin-top: 20px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type02>div+div {
    margin-top: 40px;
  }
}

.cmn_block-type02 .photoArea {
  text-align: center;
}

.cmn_block-type03 {
  margin-top: 35px;
  display: block;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type03 {
    display: table;
    width: 100%;
  }
}

.cmn_block-type03 .cmn_ttl-type03 {
  margin-top: 0 !important;
}

.cmn_block-type03>div+div {
  margin-top: 35px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type03>div+div {
    margin-top: 0;
  }
}

.cmn_block-type03 .txtArea {
  text-align: left;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type03 .txtArea {
    display: table-cell;
    vertical-align: top;
  }
}

.cmn_block-type03 .txtArea p {
  margin-top: 1.8em;
}

.cmn_block-type03 .photoArea {
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type03 .photoArea {
    display: table-cell;
    vertical-align: top;
    margin-top: 0;
    width: 500px;
    padding-left: 40px;
  }
}

.cmn_block-type03 .photoArea img {
  max-width: 460px;
  width: 100%;
  height: auto;
}

.cmn_block-type03 .photoArea figure+figure {
  margin-top: 30px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type03 .photoArea figure+figure {
    margin-top: 40px;
  }
}

.cmn_block-type03 .cmn_block-type03_txtDate {
  margin-top: 0.5em !important;
  font-weight: 500;
}

.cmn_block-type04 {
  display: block;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type04 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: stretch;
    align-content: stretch;
  }
}

.cmn_block-type04>div {
  margin-top: 35px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type04>div {
    margin-top: 30px;
    width: 48%;
    text-align: left;
    max-width: 580px;
  }
}

.cmn_block-type04>div+div {
  margin-top: 40px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type04>div+div {
    margin-top: 30px;
  }
}

.cmn_block-type04>div figcaption {
  letter-spacing: 0.04em;
}

.cmn_block-type04 img {
  width: 100%;
  height: auto;
}

.cmn_block-type05 {
  display: block;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type05 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: stretch;
    align-content: stretch;
  }
}

.cmn_block-type05>div {
  margin-top: 35px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type05>div {
    margin-top: 30px;
    width: 31.5%;
    text-align: left;
    max-width: 580px;
  }
}

.cmn_block-type05>div+div {
  margin-top: 40px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type05>div+div {
    margin-top: 30px;
  }
}

.cmn_block-type05 img {
  width: 100%;
  height: auto;
}

.cmn_block-type05 figcaption {
  padding: 0.75em 1em;
  text-align: left;
  background: #f6f6f6;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type05 figcaption {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.04em;
  }
}

.cmn_block-type06 {
  margin-top: 30px;
  display: block;
  text-align: left;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type06 {
    margin-top: 60px;
  }
}

.cmn_block-type06 img {
  margin: 0;
  width: 100%;
  height: auto;
}

.cmn_block-videoWrap {
  margin: 30px 0 0;
  display: block;
  text-align: center;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-videoWrap {
    margin-top: 60px;
  }
}

.cmn_block-videoWrap>div {
  margin: 0 auto;
  display: block;
  max-width: 580px;
  position: relative;
}

.cmn_block-videoWrap video {
  width: 100%;
  height: 100%;
  display: block;
}

.cmn_block-videoWrap p {
  margin: 0;
  display: block;
  padding: 0.75em 1em;
  text-align: left;
  background: #f6f6f6;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-videoWrap p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.cmn_txtBox-type01 {
  margin-top: 0.8em !important;
  font-weight: 500;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media print,
screen and (min-width: 769px) {
  .cmn_txtBox-type01 {
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    display: table;
  }

  .cmn_txtBox-type01>span {
    display: table-cell;
    vertical-align: top;
  }
}

.cmn_txtBox-type01 small {
  font-weight: 400;
  font-size: 10px;
  font-size: 1rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_txtBox-type01 small {
    font-size: 12px;
    font-size: 1.2rem;
    display: inline-block;
    padding-left: 1em;
  }
}

@-webkit-keyframes arrowR {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@-moz-keyframes arrowR {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@keyframes arrowR {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@-webkit-keyframes arrowL {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(-4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@-moz-keyframes arrowL {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(-4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@keyframes arrowL {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(-4px, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

.ic-moveR:hover::after {
  -webkit-animation: arrowR 1s ease infinite;
  -moz-animation: arrowR 1s ease infinite;
  animation: arrowR 1s ease infinite;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.ic-moveL:hover::before {
  -webkit-animation: arrowL 1s ease infinite;
  -moz-animation: arrowL 1s ease infinite;
  animation: arrowL 1s ease infinite;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@media print,
screen and (min-width: 769px) {
  .cmn_block-type01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.cmn_boxList-type01 {
  margin-top: 20px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  -webkit-align-content: stretch;
  /* Safari */
  align-content: stretch;
  text-align: left;
  font-size: 0;
  letter-spacing: 0;
}

@media print,
screen and (min-width: 769px) {
  .cmn_boxList-type01 {
    margin-top: 30px;
  }
}

.cmn_boxList-type01>div {
  margin-top: 20px;
  width: 48%;
  text-align: center;
}

.cmn_boxList-type01>div:nth-child(1),
.cmn_boxList-type01>div:nth-child(2) {
  margin-top: 0;
}

.cmn_boxList-type01>div:nth-child(odd) {
  margin-right: 4%;
}

@media print,
screen and (min-width: 769px) {
  .cmn_boxList-type01>div:nth-child(odd) {
    margin-right: 20px;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_boxList-type01>div:nth-child(4n) {
    margin-right: 0;
  }
}

@media print,
screen and (min-width: 769px) {
  .cmn_boxList-type01>div {
    margin-top: 40px;
    margin-right: 20px;
    width: 260px;
  }

  .cmn_boxList-type01>div:nth-child(3),
  .cmn_boxList-type01>div:nth-child(4) {
    margin-top: 0;
  }
}

.assetsArea {
  margin-top: 40px;
  padding: 17px;
  background: #f5f5f5;
}

@media print,
screen and (min-width: 769px) {
  .assetsArea {
    margin-top: 80px;
    padding: 34px;
  }
}

.assetsArea a {
  color: #000;
  text-decoration: underline;
}

.assetsArea a:hover {
  color: #00a6cc;
}

.assetsArea li {
  position: relative;
  padding-left: 25px;
  margin-top: 1em;
  line-height: 1.88;
}

.assetsArea li:first-child {
  margin-top: 0;
}

.assetsArea li::before {
  content: '';
  position: absolute;
  left: 0;
  top: -0.2em;
  width: 17px;
  height: 21px;
  background: url(/assets/img/common/ic_pdf.png) no-repeat left top;
  background-size: contain;
}

@media print,
screen and (min-width: 769px) {
  .assetsArea li::before {
    top: 0;
  }
}

.assetsArea li small {
  display: inline-block;
  font-size: 10px;
  font-size: 1rem;
}

@media print,
screen and (min-width: 769px) {
  .assetsArea li small {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.cmn_line {
  margin-top: 25px;
  border-top: #ececec solid 8px;
}

@media print,
screen and (min-width: 769px) {
  .cmn_line {
    margin-top: 50px;
  }
}

.cmn_line hr {
  display: none;
}

.pastArea,
.fromArea,
.worldArea {
  margin-top: 35px;
}

@media print,
screen and (min-width: 769px) {

  .pastArea,
  .fromArea,
  .worldArea {
    margin-top: 50px;
  }
}

.pastArea_ttl,
.fromArea_ttl,
.worldArea_ttl {
  padding-bottom: 15px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.2;
}

@media print,
screen and (min-width: 769px) {

  .pastArea_ttl,
  .fromArea_ttl,
  .worldArea_ttl {
    padding-bottom: 20px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}

.fromArea_block,
.worldArea_block,
.pastArea_block {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  -webkit-align-content: stretch;
  /* Safari */
  align-content: stretch;
}

.fromArea_block>div,
.worldArea_block>div,
.pastArea_block>div {
  margin-top: 20px;
  width: 48%;
  text-align: center;
}

.fromArea_block>div:nth-child(1),
.fromArea_block>div:nth-child(2),
.worldArea_block>div:nth-child(1),
.worldArea_block>div:nth-child(2),
.pastArea_block>div:nth-child(1),
.pastArea_block>div:nth-child(2) {
  margin-top: 0;
}

.fromArea_block>div:nth-child(odd),
.worldArea_block>div:nth-child(odd),
.pastArea_block>div:nth-child(odd) {
  margin-right: 4%;
}

@media print,
screen and (min-width: 769px) {

  .fromArea_block>div:nth-child(odd),
  .worldArea_block>div:nth-child(odd),
  .pastArea_block>div:nth-child(odd) {
    margin-right: 25px;
  }
}

@media print,
screen and (min-width: 769px) {

  .fromArea_block>div:nth-child(5n),
  .worldArea_block>div:nth-child(5n),
  .pastArea_block>div:nth-child(5n) {
    margin-right: 0;
  }
}

@media print,
screen and (min-width: 769px) {

  .fromArea_block>div,
  .worldArea_block>div,
  .pastArea_block>div {
    margin-right: 25px;
    width: 200px;
  }

  .fromArea_block>div:nth-child(3),
  .fromArea_block>div:nth-child(4),
  .fromArea_block>div:nth-child(5),
  .worldArea_block>div:nth-child(3),
  .worldArea_block>div:nth-child(4),
  .worldArea_block>div:nth-child(5),
  .pastArea_block>div:nth-child(3),
  .pastArea_block>div:nth-child(4),
  .pastArea_block>div:nth-child(5) {
    margin-top: 0;
  }
}

.fromArea_block .thumbnailArea,
.worldArea_block .thumbnailArea,
.pastArea_block .thumbnailArea {
  width: 100%;
  height: 29.2vw;
  position: relative;
  overflow: hidden;
  background: #ebebeb;
}

@media print,
screen and (min-width: 769px) {

  .fromArea_block .thumbnailArea,
  .worldArea_block .thumbnailArea,
  .pastArea_block .thumbnailArea {
    width: 200px;
    height: 135px;
  }
}

.fromArea_block .thumbnailArea img,
.worldArea_block .thumbnailArea img,
.pastArea_block .thumbnailArea img {
  width: 100%;
  height: auto;
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.fromArea_block a,
.worldArea_block a,
.pastArea_block a {
  display: block;
  color: #000;
  text-decoration: none;
  transition: opacity 0.2s ease-out;
}

.fromArea_block a:hover,
.worldArea_block a:hover,
.pastArea_block a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.fromArea_block span,
.worldArea_block span,
.pastArea_block span {
  display: block;
  margin-top: 1em;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.66;
}

@media print,
screen and (min-width: 769px) {

  .fromArea_block span,
  .worldArea_block span,
  .pastArea_block span {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.08em;
  }
}

.entry_body strong {
  font-weight: 700;
}

.entry_body em {
  font-style: italic;
}

.entry_body blockquote {
  position: relative;
  margin: 2em 0;
  padding: 1.2em 1.2em 1.2em 2.4em;
  font-size: .9em;
  line-height: 1.6;
  border: 1px solid #d1d1d1;
}

.entry_body blockquote:before,
.entry_body blockquote:after {
  line-height: 14px;
  position: absolute;
  font-size: 4em;
  opacity: .1;
  color: #999;
  font-family: "osaka", sans-serif;
  vertical-align: bottom;
}

.entry_body blockquote:before {
  top: 20px;
  left: 10px;
  content: '“';
}

.entry_body blockquote:after {
  bottom: 0;
  right: 10px;
  content: '”';
}

.entry_body a {
  color: #3dd8fa;
  text-decoration: underline;
}

.youtubeArea {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtubeArea iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* 新着情報一覧（拡散検索）
------------------------------------------------------------------------------------------------------------- */
.searchCtr {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  font-size: 14px;
  gap: 10px;
}

.searchCtr_btn {
  padding: 0.5em 1em;
  font-size: 14px;
  line-height: 1;
  border-radius: 9999px;
  transition: 0.25s;
  background-color: #fff;
  color: #a9a9a9;
  font-weight: bold;
  box-shadow:0 0 0 2px #c9c9c9 inset;
}

.searchCtr_btn.is-active {
  background-color: #02a7cb;
  color: #fff;
  font-weight: bold;
  box-shadow:0 0 0 2px #02a7cb inset;
}

.searchCtr_btn:active {
  transform: scale(.9);
}

div.js-search-unit {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  column-gap: 4%;
  row-gap: 20px;
}

div.js-search-unit > div.js-search-card {
  display: none;
  margin: 0!important;
  width: 100%;
}

div.js-search-unit > div.js-search-card.is-show {
  display: block!important;
}

@media print,
screen and (min-width: 769px) {
  .searchCtr_btn {
    font-size: inherit;
  }
  div.js-search-unit {
    grid-template-columns: repeat(5,200px);
    column-gap: unset;
    justify-content: space-between;
  }
  div.js-search-unit > div.js-search-card {
    width: 200px;
  }
}

/* item align
------------------------------------------------------------------------------------------------------------- */
.cmn_layoutAlign-left {
  text-align: left !important;
}

.cmn_layoutAlign-center {
  text-align: center !important;
}

.cmn_layoutAlign-right {
  text-align: right !important;
}

.cmn_layoutVertical-top,
.cmn_layoutVertical-top th,
.cmn_layoutVertical-top td {
  vertical-align: top !important;
}

.cmn_layoutVertical-middle,
.cmn_layoutVertical-middle th,
.cmn_layoutVertical-middle td {
  vertical-align: middle !important;
}

.cmn_layoutVertical-bottom,
.cmn_layoutVertical-bottom th,
.cmn_layoutVertical-bottom td {
  vertical-align: bottom !important;
}

/* display
------------------------------------------------------------------------------------------------------------- */
.cmn_display-inline {
  display: inline !important;
}

.cmn_display-inlineBlock {
  display: inline-block !important;
}

.cmn_display-table {
  display: table !important;
}

.cmn_display-table>div {
  display: table-cell;
}

/* item is
------------------------------------------------------------------------------------------------------------- */
.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

/* letter spacing
------------------------------------------------------------------------------------------------------------- */
.cmn_letterSp-ll {
  letter-spacing: 0.2em;
}

.cmn_letterSp-ll.cmn_layoutAlign-center {
  text-indent: 0.2em;
}

.cmn_letterSp-l {
  letter-spacing: 0.1em;
}

.cmn_letterSp-l.cmn_layoutAlign-center {
  text-indent: 0.1em;
}

.cmn_letterSp-mm {
  letter-spacing: 0.075em;
}

.cmn_letterSp-mm.cmn_layoutAlign-center {
  text-indent: 0.075em;
}

.cmn_letterSp-m {
  letter-spacing: 0.05em;
}

.cmn_letterSp-m.cmn_layoutAlign-center {
  text-indent: 0.05em;
}

.cmn_letterSp-s {
  letter-spacing: 0.025em;
}

.cmn_letterSp-s.cmn_layoutAlign-center {
  text-indent: 0.025em;
}

.cmn_letterSp-0 {
  letter-spacing: 0;
}

.cmn_letterSp-0.cmn_layoutAlign-center {
  text-indent: 0;
}

@media (min-width: 769px) {
  .cmn_letterSp-ll {
    letter-spacing: 0.4em;
  }

  .cmn_letterSp-ll.cmn_layoutAlign-center {
    text-indent: 0.4em;
  }

  .cmn_letterSp-l {
    letter-spacing: 0.2em;
  }

  .cmn_letterSp-l.cmn_layoutAlign-center {
    text-indent: 0.2em;
  }

  .cmn_letterSp-mm {
    letter-spacing: 0.15em;
  }

  .cmn_letterSp-mm.cmn_layoutAlign-center {
    text-indent: 0.15em;
  }

  .cmn_letterSp-m {
    letter-spacing: 0.1em;
  }

  .cmn_letterSp-m.cmn_layoutAlign-center {
    text-indent: 0.1em;
  }

  .cmn_letterSp-s {
    letter-spacing: 0.05em;
  }

  .cmn_letterSp-s.cmn_layoutAlign-center {
    text-indent: 0.05em;
  }

  .cmn_letterSp-0 {
    letter-spacing: 0;
  }

  .cmn_letterSp-0.cmn_layoutAlign-center {
    text-indent: 0;
  }
}

/* font-weight
------------------------------------------------------------------------------------------------------------- */
.cmn_fontWeight-b {
  font-weight: 700;
}

.cmn_fontWeight-m {
  font-weight: 500;
}

.cmn_fontWeight-r {
  font-weight: 400;
}

/* font-size
------------------------------------------------------------------------------------------------------------- */
.cmn_fontSize-xs {
  font-size: 10px;
  font-size: 1rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_fontSize-xs {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.cmn_fontSize-s {
  font-size: 12px;
  font-size: 1.2rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_fontSize-s {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.cmn_fontSize-m {
  font-size: 14px;
  font-size: 1.4rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_fontSize-m {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.cmn_fontSize-l {
  font-size: 16px;
  font-size: 1.6rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_fontSize-l {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.cmn_fontSize-xl {
  font-size: 18px;
  font-size: 1.8rem;
}

@media print,
screen and (min-width: 769px) {
  .cmn_fontSize-xl {
    font-size: 20px;
    font-size: 2rem;
  }
}

.cmn_table-sp-scroll {
  margin-top: 10px;
  position: relative;
  display: block;
  width: 100%;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

@media print,
screen and (min-width: 769px) {
  .cmn_table-sp-scroll {
    margin-top: 20px;
    overflow-x: visible;
    white-space: normal;
  }
}

.cmn_table-sp-scroll_txt {
  position: absolute;
  padding: 0.5em 2em;
  background: #646464;
  border-radius: 2px;
  color: #fff;
  left: 50%;
  top: 0;
  width: 88vw;
  text-align: center;
  -moz-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1;
  opacity: 1;
  pointer-events: none;
}

@media print,
screen and (min-width: 769px) {
  .cmn_table-sp-scroll_txt {
    display: none;
  }
}

.cmn_table-sp-scroll.inview-on .cmn_table-sp-scroll_txt {
  -webkit-animation: table 3s ease 0s;
  -moz-animation: table 3s ease 0s;
  animation: table 3s ease 0s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes table {
  0% {
    opacity: 0;
    -moz-transform: translate(-40%, 0);
    -o-transform: translate(-40%, 0);
    -ms-transform: translate(-40%, 0);
    -webkit-transform: translate(-40%, 0);
    transform: translate(-40%, 0);
  }

  30% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  60% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  100% {
    opacity: 0;
    -moz-transform: translate(-70%, 0);
    -o-transform: translate(-70%, 0);
    -ms-transform: translate(-70%, 0);
    -webkit-transform: translate(-70%, 0);
    transform: translate(-70%, 0);
  }
}

@-moz-keyframes table {
  0% {
    opacity: 0;
    -moz-transform: translate(-40%, 0);
    -o-transform: translate(-40%, 0);
    -ms-transform: translate(-40%, 0);
    -webkit-transform: translate(-40%, 0);
    transform: translate(-40%, 0);
  }

  30% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  60% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  100% {
    opacity: 0;
    -moz-transform: translate(-70%, 0);
    -o-transform: translate(-70%, 0);
    -ms-transform: translate(-70%, 0);
    -webkit-transform: translate(-70%, 0);
    transform: translate(-70%, 0);
  }
}

@keyframes table {
  0% {
    opacity: 0;
    -moz-transform: translate(-40%, 0);
    -o-transform: translate(-40%, 0);
    -ms-transform: translate(-40%, 0);
    -webkit-transform: translate(-40%, 0);
    transform: translate(-40%, 0);
  }

  30% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  60% {
    opacity: 1;
    -moz-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  100% {
    opacity: 0;
    -moz-transform: translate(-70%, 0);
    -o-transform: translate(-70%, 0);
    -ms-transform: translate(-70%, 0);
    -webkit-transform: translate(-70%, 0);
    transform: translate(-70%, 0);
  }
}

.cmn_figcaption {
  display: block;
  padding: 0.75em 1em;
  text-align: left;
  background: #f6f6f6;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
}

@media print,
screen and (min-width: 769px) {
  .cmn_figcaption {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.subnav {
  display: none;
  background: #e7f7fa;
}

@media print,
screen and (min-width: 769px) {
  .subnav {
    display: block;
    height: 50px;
    width: 100%;
    text-align: center;
  }
}

.subnav_inner {
  margin: 0 auto;
  min-width: 1140px;
  max-width: 1400px;
  width: 100%;
  position: relative;
  display: block;
}

.subnav-list {
  margin: 0 auto;
  display: table;
}

.subnav li {
  display: table-cell;
  vertical-align: middle;
  height: 50px;
  padding: 0 30px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .05em;
}

.subnav a {
  color: #2c3b41;
  display: block;
  position: relative;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.subnav a:hover {
  color: #00a6cc;
}

.subnav span {
  display: block;
  position: relative;
  padding: 0 10px 0 0;
}

.subnav span::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -4px;
  width: 4px;
  height: 4px;
  border: 1px solid;
  border-color: #02a7cb #02a7cb transparent transparent;
  transform: rotate(45deg);
}

.subnav-current {
  position: absolute;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  top: 0;
  left: 1100px;
  width: 100px;
  height: 1px;
  background: #02a3c6;
}

.subnav-current::before {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  -moz-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  border-top: 5px solid #02a3c6;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
}

input,
button,
textarea {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="number"],
input[type="time"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="search"],
textarea {
  padding: 0 10px;
  max-width: 100%;
  height: 36px;
  line-height: 36px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #000;
  background: #ebebeb;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.2);
}

input[type="text"]::-webkit-input-placeholder,
input[type="text"]:-ms-input-placeholder,
input[type="text"]::-moz-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="password"]:-ms-input-placeholder,
input[type="password"]::-moz-placeholder,
input[type="date"]::-webkit-input-placeholder,
input[type="date"]:-ms-input-placeholder,
input[type="date"]::-moz-placeholder,
input[type="number"]::-webkit-input-placeholder,
input[type="number"]:-ms-input-placeholder,
input[type="number"]::-moz-placeholder,
input[type="time"]::-webkit-input-placeholder,
input[type="time"]:-ms-input-placeholder,
input[type="time"]::-moz-placeholder,
input[type="month"]::-webkit-input-placeholder,
input[type="month"]:-ms-input-placeholder,
input[type="month"]::-moz-placeholder,
input[type="week"]::-webkit-input-placeholder,
input[type="week"]:-ms-input-placeholder,
input[type="week"]::-moz-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="email"]::-moz-placeholder,
input[type="url"]::-webkit-input-placeholder,
input[type="url"]:-ms-input-placeholder,
input[type="url"]::-moz-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="search"]::-moz-placeholder,
textarea::-webkit-input-placeholder,
textarea:-ms-input-placeholder,
textarea::-moz-placeholder {
  font-weight: bold !important;
}

@media (min-width: 768px) {

  input[type="text"],
  input[type="password"],
  input[type="date"],
  input[type="number"],
  input[type="time"],
  input[type="month"],
  input[type="week"],
  input[type="email"],
  input[type="url"],
  input[type="tel"],
  input[type="search"] {
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    font-size: 1.4rem;
  }

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

input,
textarea,
button {
  font-family: 'PT Sans', 'Roboto', 'Noto Sans Japanese', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, sans-serif;
}

input[type="text"],
input[type="email"],
input[type="tel"] {
  width: 100%;
}

textarea {
  padding: 10px;
  height: 160px;
  width: 100%;
  max-width: 100%;
  line-height: 1.4;
}

input[type="email"]:focus,
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus {
  background: #f3f3f3;
}

input[readonly] {
  background: #ddd !important;
}

input[disabled] {
  background: #ccc !important;
}

input[readonly]:focus,
textarea[readonly]:focus {
  background: #00a6cb;
}

input[disabled]:focus,
textarea[disabled]:focus {
  background: #00a6cb;
}

button {
  cursor: pointer;
}

.androidTab input[type="text"],
.androidTab input[type="password"],
.androidTab input[type="date"],
.androidTab input[type="number"],
.androidTab input[type="time"],
.androidTab input[type="month"],
.androidTab input[type="week"],
.androidTab input[type="email"],
.androidTab input[type="url"],
.androidTab input[type="tel"],
.androidTab input[type="search"],
.android input[type="text"],
.android input[type="password"],
.android input[type="date"],
.android input[type="number"],
.android input[type="time"],
.android input[type="month"],
.android input[type="week"],
.android input[type="email"],
.android input[type="url"],
.android input[type="tel"],
.android input[type="search"] {
  line-height: normal;
}

.checkRadioWrap {
  margin-right: 30px;
  position: relative;
  display: inline-block;
  padding: 0;
}

.checkRadioWrap input[type=radio],
.checkRadioWrap input[type=checkbox] {
  display: inline-block;
  vertical-align: middle;
  margin-right: 2px;
}

.checkRadioWrap input[type=radio]+span,
.checkRadioWrap input[type=checkbox]+span {
  position: relative;
  display: inline-block;
  cursor: pointer;
  font-weight: normal;
  letter-spacing: 0 !important;
}

.checkRadioWrap input[type=radio],
.checkRadioWrap input[type=checkbox] {
  display: none;
  margin: 0;
}

.checkRadioWrap input[type=radio]+span,
.checkRadioWrap input[type=checkbox]+span {
  padding: 5px 0 5px 30px;
}

.checkRadioWrap input[type=radio]+span::before,
.checkRadioWrap input[type=checkbox]+span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  background: #ebebeb;
  box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.checkRadioWrap input[type=radio]+span::before {
  border-radius: 50%;
}

.checkRadioWrap input[type=radio]:checked+span::after,
.checkRadioWrap input[type=checkbox]:checked+span::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
}

.checkRadioWrap input[type=radio]:checked+span::before,
.checkRadioWrap input[type=checkbox]:checked+span::before {
  background: #ebebeb;
}

.checkRadioWrap input[type=radio]:checked+span::after {
  left: 4px;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  background: #00a6cb;
  border-radius: 50%;
}

.checkRadioWrap input[type=checkbox]:checked+span::after {
  left: 5px;
  width: 14px;
  height: 4px;
  margin-top: -6px;
  border-left: 3px solid #00a6cb;
  border-bottom: 3px solid #00a6cb;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

textarea.is-error,
input.is-error {
  border: #e2011b solid 1px;
  background: #fce0e3;
}

textarea.is-error::-webkit-input-placeholder,
textarea.is-error::-moz-placeholder,
textarea.is-error:-ms-input-placeholder,
input.is-error::-webkit-input-placeholder,
input.is-error::-moz-placeholder,
input.is-error:-ms-input-placeholder {
  color: #e2011b;
}

.checkRadioWrap .is-error+span::before {
  border: #e2011b solid 1px !important;
  background: #fce0e3 !important;
}

.contact01-submit {
  display: table;
  text-decoration: none;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  color: #fff;
  background: #00a6cb;
  transition: opacity 0.2s ease-out;
}

.contact01-submit:hover {
  opacity: 0.7;
  text-decoration: none;
}

@media print,
screen and (min-width: 769px) {
  .contact01-submit {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.contact01-submit>span {
  display: table-cell;
  vertical-align: middle;
  padding: 0.5em 1.5em;
  letter-spacing: 0.07em;
  width: 210px;
  height: 50px;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
  font-weight: 700;
  white-space: nowrap;
}

@media print,
screen and (min-width: 769px) {
  .contact01-submit>span {
    width: 277px;
    height: 60px;
  }
}

.contact01-back {
  display: table;
  text-decoration: none;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  color: #fff;
  background: #aaa;
  transition: opacity 0.2s ease-out;
}

.contact01-back:hover {
  opacity: 0.7;
  text-decoration: none;
}

@media print,
screen and (min-width: 769px) {
  .contact01-back {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.contact01-back>span {
  display: table-cell;
  vertical-align: middle;
  padding: 0.5em 1.5em;
  letter-spacing: 0.07em;
  height: 50px;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
  font-weight: 700;
  white-space: nowrap;
}

@media print,
screen and (min-width: 769px) {
  .contact01-back>span {
    width: 277px;
    height: 60px;
  }
}

select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: none;
  appearance: button;
  font-size: 16px;
  font-size: 1.6rem;
}

select option {
  background-color: #fff;
  color: #000000;
}

select::-ms-expand {
  display: none;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #7e7e7e;
}

.selectWrap {
  margin-right: 10px;
  position: relative;
  max-width: 300px;
  width: 100%;
  height: 36px;
  display: block;
}

.selectWrap select {
  padding: 0 30px 0 10px;
  width: 210px;
  height: 36px;
  line-height: 1;
  display: block;
  border: #ddd solid 1px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  color: #000000;
  overflow: hidden;
  text-align: left;
}

.selectWrap select.is-error {
  border: #e2011b solid 1px !important;
  background: #fce0e3 !important;
}

.selectWrap::after {
  content: '';
  position: absolute;
  display: block;
  top: 50%;
  right: 22px;
  margin-top: -4px;
  width: 0;
  height: 0;
  border: solid transparent;
  border-top-color: #000;
  border-width: 10px 7px 0 7px;
  pointer-events: none;
}

.select-type01 {
  position: relative;
  display: inline-block;
}

.select-type01::before,
.select-type01::after {
  position: absolute;
  content: '';
  pointer-events: none;
}

.select-type01::before {
  display: inline-block;
  right: 0;
  width: 40px;
  height: 40px;
  background-color: #03a7cb;
}

.select-type01::after {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(50%, -50%) rotate(45deg);
  width: 6px;
  height: 6px;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
}

.select-type01 select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  min-width: 230px;
  height: 40px;
  padding: .4em 3.6em .4em .8em;
  border: none;
  border-radius: 0 !important;
  background-color: #ebebeb;
  color: #333;
  font-size: 1em;
  cursor: pointer;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.2);
}

.select-type01 select:focus {
  background: #f3f3f3;
}

@media print,
screen and (max-width: 768px) {
  .select-type01 select {
    height: 36px;
  }

  .select-type01::before {
    width: 36px;
    height: 36px;
  }

  .select-type01::after {
    right: 17px;
  }
}

.txt_error {
  color: #ff0000;
  font-size: 12px;
  font-size: 1.2rem;
  -webkit-animation: errorTxt 2s infinite 0s;
  -moz-animation: errorTxt 2s infinite 0s;
  animation: errorTxt 2s infinite 0s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes errorTxt {
  0% {
    color: #aa0000;
  }

  100% {
    color: #ff0000;
  }
}

@-moz-keyframes errorTxt {
  0% {
    color: #aa0000;
  }

  100% {
    color: #ff0000;
  }
}

@keyframes errorTxt {
  0% {
    color: #aa0000;
  }

  100% {
    color: #ff0000;
  }
}

@media (min-width: 768px) {
  .selectWrap {
    height: 44px;
  }

  .selectWrap select {
    width: 240px;
    height: 44px;
    line-height: 44px;
  }

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

.pc .selectWrap select {
  font-size: 14px;
  font-size: 1.4rem;
}

.errorArea {
  display: none;
  color: #e00;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.errorArea.is-visible {
  display: block;
}

.stickyWrap {
  position: relative;
  width: 100%;
  height: 100%;
}

.anchornav01 {
  display: none;
}

@media print,
screen and (min-width: 769px) {
  .anchornav01 {
    left: 0;
    top: 0;
    display: block;
    height: 80px;
    width: 100%;
    text-align: center;
    background: #ecf4f8;
  }
}

@media print,
screen and (min-width: 1140px) {
  .anchornav01 {
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    top: 0;
  }
}

.anchornav01.is-affixed {
  opacity: 0;
  pointer-events: none;
}

@media print,
screen and (min-width: 1140px) {
  .anchornav01.is-affixed {
    display: block;
    opacity: 1;
    pointer-events: auto;
  }
}

.anchornav01 .inner-wrapper-sticky {
  background: #ecf4f8;
  z-index: 9999;
  width: 100% !important;
  height: 80px;
  left: 0 !important;
}

.anchornav01 ul {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-content: stretch;
  align-content: stretch;
  -webkit-align-items: center;
  align-items: center;
  height: 80px;
  max-width: 1400px;
  width: auto;
}

.anchornav01 li {
  font-size: 10px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  padding: 0 1vw;
  border-left: #b4babd solid 1px;
}

@media print,
screen and (min-width: 1140px) {
  .anchornav01 li {
    padding: 0 20px;
    font-size: 12px;
    font-size: 1.2rem;
  }
}

@media print,
screen and (min-width: 1400px) {
  .anchornav01 li {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.anchornav01 li:last-child {
  border-right: #b4babd solid 1px;
}

.anchornav01 a {
  padding: 0.4em;
  display: inline-block;
  color: #2b2b2b;
  text-decoration: none;
}

.anchornav02 {
  display: none;
}

@media print,
screen and (min-width: 769px) {
  .anchornav02 {
    position: absolute;
    right: 50px;
    top: 200px;
    display: block;
    width: 10px;
    height: 0 !important;
    text-align: center;
  }
}

.anchornav02.is-affixed .inner-wrapper-sticky {
  z-index: 9999;
  padding-top: 200px;
  left: auto !important;
  right: 50px;
}

.anchornav02 ul {
  list-style: none;
}

.anchornav02 li {
  position: relative;
}

.anchornav02 li+li {
  padding-top: 30px;
}

.anchornav02 li+li::before {
  content: '';
  width: 2px;
  height: 20px;
  background: #eee;
  position: absolute;
  left: 50%;
  top: 4px;
  z-index: 1;
}

.anchornav02 a {
  position: relative;
  z-index: 2;
  display: block;
  content: '';
  width: 12px;
  height: 12px;
  border: #fff solid 2px;
  background: #595959;
  border-radius: 50%;
}

.anchornav02 a.is-current {
  border: #595959 solid 2px;
  background: #fff;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-dots {
  position: absolute;
  bottom: -30px;
  display: block;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 10px;
  height: 10px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-family: 'slick';
  font-size: 6px;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 10px;
  content: '';
  text-align: center;
  color: black;
  background: #595959;
  border-radius: 50%;
}

@media print,
screen and (min-width: 769px) {
  .slick-dots li button:before {
    background: #3d3d3d;
  }
}

.slick-dots li.slick-active button:before {
  background: #b7b7b7;
}

@media print,
screen and (min-width: 769px) {
  .slick-dots li.slick-active button:before {
    background: #ffffff;
  }
}

@media print {
  body {
    min-width: 1100px !important;
    width: 1100px !important;
  }

  body {
    height: auto !important;
  }

  .noPrint {
    display: none !important;
  }

  .globalNav-pc {
    display: block !important;
  }

  .inview *,
  .inview {
    opacity: 1 !important;
  }
}