@charset "UTF-8";
/*
  File Name   : body.css
  Description : Write content styles
*/
/* default
============================================================ */
/*** structure ***/
html {
  overflow-y: scroll;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 20px;
}
@media only screen and (max-width: 1024px) {
  html {
    font-size: 16px;
  }
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  min-width: 320px;
  margin: 0;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 20px;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.8em;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  word-break: break-all;
}
@media only screen and (max-width: 1024px) {
  body {
    font-size: 16px;
  }
}
@media print {
  body {
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
  }
}
body#home {
  margin-top: 0;
}

body > footer,
body > header {
  width: 100%;
  min-width: 320px;
}

/*** text ***/
p {
  margin: 0;
  padding: 0;
  font-style: normal;
  font-weight: normal;
  letter-spacing: 0.06em;
  line-height: 1.8em;
}

div {
  font-style: normal;
  font-weight: normal;
  letter-spacing: 0.06em;
  line-height: 1.8em;
}

h1,
h2,
h3,
h4 {
  line-height: 1;
  margin: 0;
}

h4,
h5,
h6 {
  font-size: 1em;
  margin: 0;
}

small,
.font-small {
  font-size: 0.875em;
}

sub {
  vertical-align: baseline;
  position: relative;
  bottom: -0.2em;
  margin-left: 1px;
}

sup {
  vertical-align: baseline;
  position: relative;
  top: -0.4em;
  margin-left: 1px;
}

iframe {
  max-width: 100%;
  border: none;
}

/*** list ***/
dl,
dt,
dd {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-style: normal;
  font-weight: normal;
}

li,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-style: normal;
  font-weight: normal;
}

/*** object ***/
embed,
object {
  vertical-align: bottom;
}

/*** presentation ***/
u {
  font-size: inherit;
  text-decoration: underline;
}

/*** hypertext ***/
a {
  font-size: inherit;
  color: #0d318f;
}

a:hover,
a:active {
  opacity: 0.8;
  text-decoration: none;
  cursor: pointer;
}

a img {
  border: none;
}

/*** a tel: ***/
@media only screen and (min-width: 600px) {
  a[href^="tel:"] {
    display: inline-block;
    pointer-events: none;
    text-decoration: none;
    color: inherit;
  }
}

/*** edit ***/
del {
  color: #666;
  font-size: inherit;
  text-decoration: line-through;
}

ins {
  border-bottom: 1px dotted #ccc;
  font-size: inherit;
  text-decoration: none;
}

/*** forms ***/
legend {
  white-space: normal;
}

button,
input,
label,
select,
textarea,
form img {
  vertical-align: middle;
}

button,
input,
select,
textarea {
  max-width: 100%;
}

input,
select,
textarea {
  outline: none;
  color: #000;
  border: 1px solid #6c6c6c;
}

input[type=text],
input[type=number],
input[type=search],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=time],
input[type=email],
input[type=tel],
input[type=telephone],
input[type=url],
input[type=password],
select,
textarea {
  max-width: 100%;
  border-radius: 0;
}

button,
input[type=color],
input[type=file],
input[type=image],
input[type=range] {
  border: none;
  padding: 0;
  background: none;
}

input[type=checkbox],
input[type=color],
input[type=radio],
input[type=range],
select {
  cursor: pointer;
}

input[type=color],
input[type=file],
input[type=image],
input[type=range] {
  border: none;
}

input[type=password] {
  ime-mode: disabled;
}

input[disabled],
input[readonly],
select[disabled],
select[readonly] {
  cursor: default;
}

textarea {
  resize: vertical;
}

label + label,
label + input[type=checkbox],
label + input[type=radio] {
  margin-left: 10px;
}

label > input[type=checkbox],
label > input[type=radio] {
  margin-right: 5px;
}

input[type=checkbox] + label,
input[type=radio] + label {
  margin-left: 5px;
}

form a img {
  -webkit-transition: opacity 0.2s ease-in;
  transition: opacity 0.2s ease-in;
}

form a img,
input[type=button],
input[type=image],
input[type=reset],
input[type=submit],
button {
  border-radius: 0;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}

form a:hover img,
form a:active img,
input[type=button]:hover,
input[type=button]:active,
input[type=image]:hover,
input[type=image]:active,
input[type=reset]:hover,
input[type=reset]:active,
input[type=submit]:hover,
input[type=submit]:active,
button:hover,
button:active {
  opacity: 0.8;
}

label.error,
input.error {
  background: #ffeeee;
}

/*** tables ***/
table {
  max-width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

table th,
table td {
  font-size: inherit;
  word-break: break-all;
}

table th > :last-child,
table td > :last-child {
  margin-bottom: 0;
}

/*** image ***/
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
}

/*** selection ***/
::-moz-selection {
  color: #fff;
  background: #999;
  text-shadow: none;
}

::selection {
  color: #fff;
  background: #999;
  text-shadow: none;
}

input::-moz-selection, textarea::-moz-selection {
  color: #000;
}

input::selection,
textarea::selection {
  color: #000;
}

/*** placeholder ***/
::-webkit-input-placeholder {
  color: #6c6c6c;
  opacity: 1;
}
::-moz-placeholder {
  color: #6c6c6c;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #6c6c6c;
  opacity: 1;
}
::-ms-input-placeholder {
  color: #6c6c6c;
  opacity: 1;
}
::placeholder {
  color: #6c6c6c;
  opacity: 1;
}

::-ms-input-placeholder {
  color: #6c6c6c;
  opacity: 1;
}

:focus::-webkit-input-placeholder {
  color: transparent;
}

:focus::-moz-placeholder {
  color: transparent;
}

:focus:-ms-input-placeholder {
  color: transparent;
}

:focus::-ms-input-placeholder {
  color: transparent;
}

:focus::placeholder {
  color: transparent;
}

:focus::-ms-input-placeholder {
  color: transparent;
}

/* utiiities
============================================================ */
/*** float ***/
.com-clear {
  clear: both;
}

/*** hide ***/
.com-hide {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  text-align: left;
  text-indent: -9999px;
}

/*** clearfix ***/
.com-clearfix::before,
.com-clearfix::after {
  content: "";
  display: table;
}

.com-clearfix::after {
  clear: both;
}

/*** align ***/
.com-align_r {
  text-align: right !important;
}

.com-align_c {
  text-align: center !important;
}

.com-align_l {
  text-align: left !important;
}

.com-justify {
  text-align: justify;
}

/*** panel layout ***/
.com-panel-layout {
  display: table;
  width: auto;
  table-layout: fixed;
  word-spacing: -0.4em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.com-panel-layout .panel-layout-child,
.com-panel-layout > article,
.com-panel-layout > figure,
.com-panel-layout > li,
.com-panel-layout > div,
.com-panel-layout > p,
.com-panel-layout > section {
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
  word-spacing: normal;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*** disable-tel ***/
.com-disable-tel {
  cursor: default !important;
  pointer-events: none !important;
  text-decoration: none !important;
}

/*** color ***/
.red {
  color: red;
}

.red2 {
  color: #f80000;
}

.orange {
  color: orange;
}

.blue {
  color: blue;
}

.navy {
  color: navy;
}

.green {
  color: green;
}

.yellow {
  color: yellow;
}

.yellow2 {
  color: #ffff00;
}

/*** 印刷時用設定 ***/
@media print {
  body,
header,
footer {
    min-width: 1060px !important;
  }
}

@media print {
  header {
    position: absolute !important;
  }
}

/*
*   汎用Class
*----------------------------*/
.attached_icon {
  width: auto;
  height: 20px;
  margin: 5px 5px 5px 0;
  vertical-align: middle;
}

.com-section > section {
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .com-section > section {
    margin-bottom: 50px;
  }
}
.com-section > section:last-child {
  margin-bottom: 0;
}

.com-sect-desc {
  margin-bottom: 1.5rem;
}
.com-sect-desc:last-child {
  margin-bottom: 0;
}

.com-date-txt {
  color: #0d318f;
  font-size: 1rem;
  font-weight: 500;
  text-align: right;
  margin-bottom: 3em !important;
}

h1 + .com-date-txt {
  margin: 1rem 0;
}

.com-print-txt {
  margin-bottom: 2.5em !important;
  text-align: right;
}

.com-print-txt a {
  display: inline-block;
  padding-left: 25px;
  background: url(../images/common/print-bg.svg) no-repeat left center;
  background-size: 20px auto;
}

h1 + .com-print-txt {
  margin-top: -3.5em !important;
}
@media only screen and (max-width: 1024px) {
  h1 + .com-print-txt {
    margin-top: -1.25em !important;
  }
}

.com-date-txt + .com-print-txt {
  margin-top: -2.5em !important;
}

.com-print-link {
  margin-bottom: 2.5em !important;
  text-align: right;
}
.com-print-link a {
  display: inline-block;
  padding-left: 25px;
  background: url(../images/common/print-bg.png) no-repeat left center;
  background-size: 20px auto;
}

.com-print-btn-list {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 2000;
  width: 100%;
  padding: 20px;
  background: rgba(0, 0, 0, 0.8);
  text-align: center;
}
@media print {
  .com-print-btn-list {
    display: none;
  }
}
.com-print-btn-list a {
  position: relative;
  display: inline-block;
  margin: 0 10px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.08em;
}
.com-print-btn-list a.close {
  padding-left: 23px;
}
.com-print-btn-list a.close::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 2px;
  background: #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
.com-print-btn-list a.close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 2px;
  background: #fff;
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}
.com-print-btn-list a.print {
  padding-left: 25px;
  background: url(../images/common/print-bg-wht.svg) no-repeat left center;
  background-size: 20px auto;
}

.com-signature address {
  margin-top: 100px;
  padding: 20px;
  border: 1px solid #6c6c6c;
}

.com-signature address span {
  display: block;
  font-style: normal;
}

.com-signature address .department {
  margin-bottom: 0.5em;
  border-bottom: 1px solid #6c6c6c;
  font-size: 1.3333333333em;
  font-weight: bold;
}

@media only screen and (max-width: 1024px) {
  .com-signature address {
    margin-top: 50px;
    padding: 20px;
  }

  .com-signature address .department {
    font-size: 1.2em;
  }
}
/*
*  画像用汎用Style
*----------------------------*/
/* 標準 */
.imgDefault {
  display: block;
  width: 100%;
  height: auto;
}

/* トリミング系 */
.imgCover {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.imgContain {
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}

.imgScaleDown {
  display: block;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  width: 100%;
  height: 100%;
}

/*
*  要素 非表示
*----------------------------*/
.dNone {
  display: none !important;
}

@media print, screen and (min-width: 1025px) {
  .dNone-pc {
    display: none !important;
  }
}

@media print, screen and (min-width: 1025px) {
  .dNone-pcTab {
    display: none !important;
  }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .dNone-pcTab {
    display: none !important;
  }
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .dNone-tab {
    display: none !important;
  }
}

@media only screen and (max-width: 1024px) {
  .dNone-mbl {
    display: none !important;
  }
}

@media only screen and (max-width: 599px) {
  .dNone-sp {
    display: none !important;
  }
}

@media print {
  .dNnone-prt {
    display: none !important;
  }
}

/*
*  flex 左寄dummy要素用Class
*----------------------------*/
.isEmpty {
  height: 0 !important;
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  background: none !important;
}
.isEmpty::before, .isEmpty::after {
  content: none !important;
}

/*
*  非表示テキスト
*----------------------------*/
.hdnTxt {
  display: block !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  color: transparent !important;
  line-height: 0 !important;
  letter-spacing: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: none !important;
}
.hdnTxt::before, .hdnTxt::after {
  content: none !important;
}

.noWrap {
  display: inline-block;
}

/*
*   list 
*----------------------------*/
/* ul ol 共通 Style継承元 */
.com-list-base > li {
  position: relative;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 20px;
  line-height: 1.8em;
  letter-spacing: 0.06em;
  padding: 0 0 0 1em;
  margin: 0 0 0.5em;
}
@media only screen and (max-width: 1024px) {
  .com-list-base > li {
    font-size: 16px;
  }
}
.com-list-base > li:last-child {
  margin-bottom: 0;
}
.com-list-base > li::before {
  display: block;
  width: 1.5em;
  height: 1.8em;
  top: 0;
  left: 0;
  position: absolute;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: 0em;
}

/* ul BASE */
.com-ul-base > li, .com-cercle-list > li, .com-cercle-list2 > li, .com-asterisk-num-list > li, .com-asterisk-list > li, .com-ul-dot > li, .contentBody ul:not(:not(.col-2):not(.col-3)[class]) > li {
  position: relative;
  padding-left: 1.5em;
  line-height: 1.8em;
  margin-bottom: 0.5em;
}
.com-ul-base > li:last-child, .com-cercle-list > li:last-child, .com-cercle-list2 > li:last-child, .com-asterisk-num-list > li:last-child, .com-asterisk-list > li:last-child, .com-ul-dot > li:last-child, .contentBody ul:not(:not(.col-2):not(.col-3)[class]) > li:last-child {
  margin-bottom: 0;
}
.com-ul-base > li::before, .com-cercle-list > li::before, .com-cercle-list2 > li::before, .com-asterisk-num-list > li::before, .com-asterisk-list > li::before, .com-ul-dot > li::before, .contentBody ul:not(:not(.col-2):not(.col-3)[class]) > li::before {
  content: "";
  position: absolute;
  left: 0;
}

/* ol BASE */
.com-ol-base, .com-circle-num-list_02, .com-circle-num-list, .com-paren-num-list, .com-ol-circle, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) {
  counter-reset: item;
  margin-bottom: 1em;
}
.com-ol-base > li, .com-circle-num-list_02 > li, .com-circle-num-list > li, .com-paren-num-list > li, .com-ol-circle > li, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li {
  position: relative;
  padding-left: 2em;
  line-height: 1.8em;
  margin-bottom: 0.5em;
}
.com-ol-base > li:last-child, .com-circle-num-list_02 > li:last-child, .com-circle-num-list > li:last-child, .com-paren-num-list > li:last-child, .com-ol-circle > li:last-child, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li:last-child {
  margin-bottom: 0;
}
.com-ol-base > li::before, .com-circle-num-list_02 > li::before, .com-circle-num-list > li::before, .com-paren-num-list > li::before, .com-ol-circle > li::before, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li::before {
  content: counter(item) ".";
  position: absolute;
  counter-increment: item;
  position: absolute;
  left: 0;
}
.com-ol-base > li .list-emphasis, .com-circle-num-list_02 > li .list-emphasis, .com-circle-num-list > li .list-emphasis, .com-paren-num-list > li .list-emphasis, .com-ol-circle > li .list-emphasis, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li .list-emphasis {
  font-weight: 700;
}

.com-ul-dot, .contentBody ul:not(:not(.col-2):not(.col-3)[class]) {
  margin: 1rem 0 1rem;
}
.com-ul-dot > li::before, .contentBody ul:not(:not(.col-2):not(.col-3)[class]) > li::before {
  content: "・";
  color: #0d318f;
}

.com-ol-circle, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) {
  counter-reset: item;
  margin-bottom: 1em;
}
.com-ol-circle > li, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li {
  position: relative;
  padding-left: 1.75em;
  line-height: 1.8em;
  margin-bottom: 0.5em;
}
.com-ol-circle > li:last-child, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li:last-child {
  margin-bottom: 0;
}
.com-ol-circle > li::before, .contentBody ol:not(:not(.col-2):not(.col-3)[class]) > li::before {
  content: counter(item);
  counter-increment: item;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  top: 0.625em;
  left: 0;
  width: 1.5em;
  height: 1.5em;
  color: #fff;
  font-size: 0.75em;
  line-height: 1em;
  text-align: center;
  letter-spacing: 0em;
  background-color: #0d318f;
  border-radius: 50%;
  padding: 0 0 0.1em;
}

.com-asterisk-list > li {
  padding-left: 1.5em;
}
.com-asterisk-list > li::before {
  content: "※";
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  width: 1.5em;
  height: 1.8em;
  top: 0;
  left: 0;
  background: none;
  border-radius: 0;
}

.com-asterisk-num-list {
  counter-reset: anum;
  list-style: none;
  text-indent: 0;
}
.com-asterisk-num-list > li {
  counter-increment: anum;
  padding-left: 2em;
}
.com-asterisk-num-list > li::before {
  content: "※" counter(anum);
  display: inline;
  width: auto;
  height: auto;
}

.com-cercle-list > li::before, .com-cercle-list2 > li::before {
  display: block;
  width: 0.8em;
  height: 0.8em;
  top: 0.5em;
  background: #000;
  border-radius: 50%;
}

.com-cercle-list2 > li::before {
  background: none;
  border: 1px solid #000;
}

.com-paren-num-list > li::before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  content: "(" counter(item) ") ";
}

.com-circle-num-list > li::before {
  content: counter(item);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 1.25rem;
  height: 1.25rem;
  top: 0.45em;
  font-size: 0.75em;
  font-weight: bold;
  letter-spacing: -0.02em;
  line-height: 1em;
  border: 1px solid #000;
  border-radius: 50%;
  text-align: center;
  padding: 0.3em 0 0;
}

.com-circle-num-list_02 > li::before {
  content: counter(item);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 1.5rem;
  height: 1.5rem;
  top: 0.25em;
  color: #fff;
  font-size: 0.75em;
  font-weight: bold;
  letter-spacing: -0.02em;
  background-color: #d9e021;
  border-radius: 50%;
  text-align: center;
  padding: 0.3em 0 0;
}

/*
*   hl
*----------------------------*/
.com-hl-01, .contentBody h1, .pageTitle {
  position: relative;
  color: #000;
  font-size: 2.1rem;
  font-weight: 800;
  line-height: 1.5em;
  letter-spacing: 0.15em;
  text-align: left;
  margin-bottom: 2em;
  padding: 0 0 0.4em;
}
@media only screen and (max-width: 1024px) {
  .com-hl-01, .contentBody h1, .pageTitle {
    font-size: 1.625rem;
  }
}
.com-hl-01::before, .contentBody h1::before, .pageTitle::before {
  content: "";
  display: block;
  position: absolute;
  width: 2em;
  height: 7px;
  background-color: #0d318f;
  bottom: 0;
  right: 50;
}
@media only screen and (max-width: 1024px) {
  .com-hl-01::before, .contentBody h1::before, .pageTitle::before {
    height: 5px;
  }
}

.com-hl-02, .contentBody h2 {
  position: relative;
  color: #000;
  font-size: 1.9rem;
  font-weight: 800;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  padding: 0 0.1em 0.25em;
  margin-bottom: 1.5em;
}
@media only screen and (max-width: 1024px) {
  .com-hl-02, .contentBody h2 {
    font-size: 1.5rem;
  }
}
.com-hl-02::before, .contentBody h2::before, .com-hl-02::after, .contentBody h2::after {
  content: "";
  position: absolute;
  display: block;
  height: 4px;
  bottom: 0;
  left: 0;
}
.com-hl-02::before, .contentBody h2::before {
  background-color: #000;
  width: 100%;
}
.com-hl-02::after, .contentBody h2::after {
  background-color: #143ead;
  width: 3.25em;
}

.com-hl-03, .contentBody h3 {
  position: relative;
  color: #000;
  font-weight: 800;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  font-size: 1.55rem;
  padding: 0 0 0 0.75em;
}
@media only screen and (max-width: 1024px) {
  .com-hl-03, .contentBody h3 {
    font-size: 1.3125rem;
  }
}
.com-hl-03::before, .contentBody h3::before {
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: calc(100% - 0.25em);
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background: -webkit-linear-gradient(#143ead 0, #143ead 10px, #000 10px, #000);
  background: linear-gradient(#143ead 0, #143ead 10px, #000 10px, #000);
}
@media only screen and (max-width: 1024px) {
  .com-hl-03::before, .contentBody h3::before {
    width: 4px;
  }
}

.com-hl-04, .contentBody h4 {
  position: relative;
  color: #000;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
  padding: 0 0 0 1.25em;
}
.com-hl-04::before, .contentBody h4::before {
  content: "";
  position: absolute;
  display: block;
  width: 0.65em;
  height: 4px;
  top: calc(1.53em * 0.5 + 1px);
  left: 0;
  background-color: #0d318f;
}
@media only screen and (max-width: 1024px) {
  .com-hl-04::before, .contentBody h4::before {
    height: 3px;
  }
}

.com-hl-05, .contentBody h5 {
  color: #0d318f;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
}

.com-hl-06, .contentBody h6 {
  color: #000;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
}

.pageTitle {
  margin-bottom: 1.5em;
}
.pageTitle.withDate {
  margin-bottom: 0;
}

/* HTML エディタ Style
============================================================ */
#tinymce {
  margin: 0 0 0;
  padding: 0 0 0;
}

body.contentBody:not(#tinymce) {
  padding: 15px;
}

/* HTML エディタ内タグ標準 Style
============================================================ */
.contentBody a [target=_blank]::after,
.contentBody a .download::after,
.contentBody a [download]::after {
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.contentBody a [target=_blank]::after {
  content: "";
}
.contentBody a .download::after,
.contentBody a [download]::after {
  content: "";
}
.contentBody p {
  margin-top: 1em;
  margin-bottom: 1em;
}
.contentBody u {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(255, 255, 0, 0.4)));
  background: -webkit-linear-gradient(transparent 60%, rgba(255, 255, 0, 0.4) 60%);
  background: linear-gradient(transparent 60%, rgba(255, 255, 0, 0.4) 60%);
  text-decoration: none;
}
.contentBody blockquote {
  position: relative;
  margin: 0 0 2em;
  padding: 10px 20px;
  border-left: 5px solid #999;
  border-radius: 2px;
  font-size: 0.875em;
}
.contentBody blockquote::after {
  content: "”";
  position: absolute;
  right: 0;
  bottom: 0;
  opacity: 0.1;
  font-family: sans-serif;
  font-size: 6em;
  line-height: 0;
}
.contentBody pre {
  margin: 0 0 2em;
  padding: 11px 20px;
  border-radius: 2px;
  background: #eee;
  font-size: 0.875em;
  white-space: pre-wrap;
}
.contentBody pre,
.contentBody samp {
  font-family: sans-serif;
}
.contentBody code {
  margin: 0 2px;
  padding: 0 3px;
  border: 1px solid #ddd;
  border-radius: 3px;
  background-color: #fafafa;
  font-family: sans-serif;
  font-size: 0.875em;
}
.contentBody kbd {
  margin: 0 2px;
  padding: 0 3px;
  border: 1px solid #ddd;
  border-bottom: 3px solid #ddd;
  border-radius: 3px;
  background-color: #fafafa;
  font-family: sans-serif;
  font-size: 0.875em;
}
.contentBody ul:not(:not(.col-2):not(.col-3)[class]) {
  margin: 1rem 0 1rem;
}
.contentBody ul:not(:not(.col-2):not(.col-3)[class]) > li::before {
  content: "・";
}
.contentBody ol:not(:not(.col-2):not(.col-3)[class]) {
  margin: 1rem 0 1rem;
}
.contentBody table {
  margin-top: 1em;
  margin-bottom: 1em;
  border-color: #ccc;
}
.contentBody table,
.contentBody table thead,
.contentBody table tbody,
.contentBody table tr,
.contentBody table td,
.contentBody table th {
  height: auto !important;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) {
  border: none;
}
@media only screen and (max-width: 1024px) {
  .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) {
    max-width: inherit;
  }
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) thead, .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) tbody, .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) tfoot, .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) tr, .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) th, .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) td {
  border: inherit;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) th,
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) td {
  padding: 15px 20px;
  text-align: left;
  vertical-align: top;
}
@media only screen and (max-width: 1024px) {
  .contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) th,
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) td {
    padding: 10px 15px;
  }
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) th {
  font-weight: bold;
  background: #e5f6ff;
  width: 20%;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) td {
  background: transparent;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) td > *:last-child {
  margin-bottom: 0 !important;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed) caption {
  margin: 0 0 0.5em;
  text-align: left;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed).table_borders {
  border: 1px solid #ccc;
}
.contentBody table:not(.com-table__01,
.com-table__02,
.com-table__03,
.table-transform__mbl,
.table-transform__sp,
.sect-form-body,
.custom-table__store,
.custom-table__store__fixed).table_no_borders {
  border: none !important;
}
.contentBody h1 {
  clear: both;
  margin-top: 1em;
  margin-bottom: 2em;
}
.contentBody h2 {
  clear: both;
  margin-top: 1em;
  margin-bottom: 1.5em;
}
.contentBody h3,
.contentBody h4,
.contentBody h5,
.contentBody h6 {
  clear: both;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.5em;
}
.contentBody h1:first-child,
.contentBody h2:first-child,
.contentBody h3:first-child,
.contentBody h4:first-child,
.contentBody h5:first-child,
.contentBody h6:first-child {
  margin-top: 0;
}
.contentBody .u-align-right {
  text-align: right;
}
.contentBody .u-align-left {
  text-align: left;
}
.contentBody .u-align-center {
  text-align: center;
}
.contentBody .alignRight,
.contentBody img.u-align-right,
.contentBody img[style*="float:right"],
.contentBody img[style*="float: right"] {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}
.contentBody .alignLeft,
.contentBody img.u-align-left,
.contentBody img[style*="float:left"],
.contentBody img[style*="float: left"] {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .contentBody .alignRight,
.contentBody .alignLeft,
.contentBody img.u-align-right,
.contentBody img.u-align-left,
.contentBody img[style*="float:right"],
.contentBody img[style*="float: right"],
.contentBody img[style*="float:left"],
.contentBody img[style*="float: left"] {
    max-width: 38.2%;
  }
}
@media only screen and (max-width: 599px) {
  .contentBody .alignRight,
.contentBody .alignLeft,
.contentBody img.u-align-right,
.contentBody img.u-align-left,
.contentBody img[style*="float:right"],
.contentBody img[style*="float: right"],
.contentBody img[style*="float:left"],
.contentBody img[style*="float: left"] {
    display: block;
    float: none;
    max-width: 100%;
    margin: 0 auto 2.666em;
  }
}
.contentBody .alignCenter,
.contentBody .u-align-center {
  display: block;
  margin: 0 auto 20px;
}
.contentBody .col-2,
.contentBody .col-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  gap: 0.5em 1em;
}
.contentBody .col-2:first-child,
.contentBody .col-3:first-child {
  padding-left: 0;
}
.contentBody .col-2:last-child,
.contentBody .col-3:last-child {
  padding-right: 0;
}
.contentBody .col-2 > * {
  width: -o-calc(50% - 0.5em);
  width: calc(50% - 0.5em);
}
@media only screen and (max-width: 599px) {
  .contentBody .col-2 > * {
    width: 100%;
  }
}
.contentBody .col-3 > * {
  width: -o-calc(100% / 3 - (1.0em * 2 / 3));
  width: calc(100% / 3 - (1.0em * 2 / 3));
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .contentBody .col-3 > * {
    width: -o-calc(50% - 0.5em);
    width: calc(50% - 0.5em);
  }
}
@media only screen and (max-width: 599px) {
  .contentBody .col-3 > * {
    width: 100%;
  }
}
.contentBody > *:first-child {
  margin-top: 0;
}
.contentBody > *:last-child {
  margin-bottom: 0;
}

/*
*   TEXT STYLE 
*----------------------------*/
/****** エディタ用テキストStyle ******/
.style1 {
  display: inline;
  color: #fff;
  font-size: 1rem;
  line-height: 1.8em;
  background: #0d318f;
}

.style2 {
  display: inline;
  color: #fff;
  font-size: 1rem;
  line-height: 1.8em;
  background: #000;
}

.style3 {
  color: #0d318f;
  font-size: 2rem;
  font-weight: 700;
}

.style4 {
  font-size: 2rem;
  font-weight: 700;
}

.style5 {
  color: #0d318f;
  font-size: 1.5rem;
  font-weight: 700;
}

.style6 {
  font-size: 1.5rem;
  font-weight: 700;
}

.style7 {
  color: #0d318f;
  font-size: 1.2rem;
  font-weight: 700;
}

.style8 {
  font-size: 1.2rem;
  font-weight: 700;
}

.style9 {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, rgba(239, 248, 3, 0.5)));
  background: -webkit-linear-gradient(transparent 60%, rgba(239, 248, 3, 0.5) 0%);
  background: linear-gradient(transparent 60%, rgba(239, 248, 3, 0.5) 0%);
}

.style10 {
  font-size: 0.8em;
}

/****** エディタ用その他テキスト装飾 ******/
.com-underLine_double {
  -webkit-text-decoration: underline double;
  text-decoration: underline double;
}

.com-strike {
  text-decoration: line-through;
  -webkit-text-decoration-line: line-through;
  text-decoration-line: line-through;
  -webkit-text-decoration-style: double;
  text-decoration-style: double;
  -webkit-text-decoration-color: #f80000;
  text-decoration-color: #f80000;
  -webkit-text-decoration-thickness: 2px;
  text-decoration-thickness: 2px;
}

/*
*   本文テンプレート レイアウトパーツ
*----------------------------*/
.com-col-left-img, .com-col-right-img,
.com-col-left-img2,
.com-col-right-img2,
.com-col-text,
.com-col-textWithImg,
.com-col-img,
.com-col-left-img {
  gap: 40px 60px;
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img, .com-col-right-img,
.com-col-left-img2,
.com-col-right-img2,
.com-col-text,
.com-col-textWithImg,
.com-col-img,
.com-col-left-img {
    gap: 40px 40px;
  }
}
.com-col-left-img > .text > *:first-child, .com-col-right-img > .text > *:first-child,
.com-col-left-img > .img > *:first-child,
.com-col-right-img > .img > *:first-child,
.com-col-left-img2 > .text > *:first-child,
.com-col-right-img2 > .text > *:first-child,
.com-col-left-img2 > .img > *:first-child,
.com-col-right-img2 > .img > *:first-child,
.com-col-text > .text > *:first-child,
.com-col-text > .img > *:first-child,
.com-col-textWithImg > .text > *:first-child,
.com-col-textWithImg > .img > *:first-child,
.com-col-img > .text > *:first-child,
.com-col-img > .img > *:first-child,
.com-col-left-img > .text > *:first-child,
.com-col-left-img > .img > *:first-child {
  margin-top: 0;
}
.com-col-left-img > .text > *:last-child, .com-col-right-img > .text > *:last-child,
.com-col-left-img > .img > *:last-child,
.com-col-right-img > .img > *:last-child,
.com-col-left-img2 > .text > *:last-child,
.com-col-right-img2 > .text > *:last-child,
.com-col-left-img2 > .img > *:last-child,
.com-col-right-img2 > .img > *:last-child,
.com-col-text > .text > *:last-child,
.com-col-text > .img > *:last-child,
.com-col-textWithImg > .text > *:last-child,
.com-col-textWithImg > .img > *:last-child,
.com-col-img > .text > *:last-child,
.com-col-img > .img > *:last-child,
.com-col-left-img > .text > *:last-child,
.com-col-left-img > .img > *:last-child {
  margin-bottom: 0;
}

.com-col-left-img, .com-col-right-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  flex-wrap: nowrap;
  width: 100%;
  margin: 2rem 0 2rem;
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img, .com-col-right-img {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.com-col-left-img > .text, .com-col-right-img > .text {
  width: calc(60% - 20px);
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img > .text, .com-col-right-img > .text {
    width: 100%;
    margin: 0;
  }
}
.com-col-left-img > .img, .com-col-right-img > .img {
  width: calc(40% - 20px);
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img > .img, .com-col-right-img > .img {
    width: 100%;
    max-width: 600px;
  }
}
.com-col-left-img > .img img, .com-col-right-img > .img img {
  display: block;
  width: 100%;
  height: auto;
}

.com-col-left-img2, .com-col-right-img2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: 100%;
  margin: 2rem 0 2rem;
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img2, .com-col-right-img2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.com-col-left-img2 > .text, .com-col-right-img2 > .text {
  width: calc(100% - 300px - 40px);
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img2 > .text, .com-col-right-img2 > .text {
    width: 100%;
  }
}
.com-col-left-img2 > .img, .com-col-right-img2 > .img {
  width: 300px;
}
@media only screen and (max-width: 1024px) {
  .com-col-left-img2 > .img, .com-col-right-img2 > .img {
    width: 100%;
    max-width: 300px;
  }
}
.com-col-left-img2 > .img > img img, .com-col-right-img2 > .img > img img {
  width: 100%;
  height: auto;
}

.com-col-right-img {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.com-col-right-img2 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.com-col-text,
.com-col-textWithImg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  margin: 2rem 0 2rem;
}
@media only screen and (max-width: 1024px) {
  .com-col-text,
.com-col-textWithImg {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.com-col-text > *,
.com-col-textWithImg > * {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  width: calc(50% - 20px);
}
.com-col-text > * > *,
.com-col-textWithImg > * > * {
  margin-top: 40px;
}
.com-col-text > * > *:first-child,
.com-col-textWithImg > * > *:first-child {
  margin-top: 0 !important;
}
.com-col-text > * > *:last-child,
.com-col-textWithImg > * > *:last-child {
  margin-bottom: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .com-col-text > *,
.com-col-textWithImg > * {
    width: 100%;
  }
}

.com-col-textWithImg > * .img {
  max-width: 600px;
  margin: 0 auto 0;
}

.com-col-text__3column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  margin: 2rem 0 2rem;
  gap: 20px 40px;
}
@media only screen and (max-width: 1024px) {
  .com-col-text__3column {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.com-col-text__3column > * {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  width: calc(50% - 20px);
}
@media only screen and (max-width: 1024px) {
  .com-col-text__3column > * {
    width: 100%;
  }
}

.com-col-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  margin: 2rem 0 2rem;
}
@media only screen and (max-width: 1024px) {
  .com-col-img {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.com-col-img > .img {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  width: calc(50% - 20px);
}
@media only screen and (max-width: 1024px) {
  .com-col-img > .img {
    width: 100%;
    max-width: 600px;
    margin: 0;
  }
}
.com-col-img > .img > img {
  display: block;
  width: 100%;
  height: auto;
}

.com-border-box, .com-bgBox {
  border: 1px solid #0d318f;
  margin: 2rem 0 2rem;
  padding: 25px 30px;
}
@media only screen and (max-width: 1024px) {
  .com-border-box, .com-bgBox {
    padding: 20px;
  }
}
.com-border-box > *:first-child, .com-bgBox > *:first-child {
  margin-top: 0 !important;
}
.com-border-box > *:last-child, .com-bgBox > *:last-child {
  margin-bottom: 0 !important;
}

.com-bgBox {
  border: none;
  background-color: #e5f6ff;
}

/*
*   FAQ
*----------------------------*/
.com-faq-wrap {
  width: 100%;
  margin: 0 auto;
}

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

.com-faq:last-child {
  margin-bottom: 0;
}

.com-faq .title {
  position: relative;
  border: 1px solid #6c6c6c;
  margin: 0;
  padding: 13px 55px 13px calc(1.2em + 15px + 20px);
  font-size: 1.3333333333em;
  font-weight: bold;
  color: #000;
  background: #fff;
  line-height: 1.4;
  text-indent: calc(-1.2em - 15px);
  cursor: pointer;
}

.com-faq .title::after {
  content: "";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: 25px;
  top: calc(50% - 4px);
  width: 15px;
  height: 15px;
  border-top: 1px solid #6c6c6c;
  border-right: 1px solid #6c6c6c;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}

.com-faq .title.active::after {
  top: calc(50% + 4px);
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}

.com-faq .title .title-q {
  display: inline-block;
  margin-right: 15px;
  font-weight: bold;
  text-indent: 0;
}

.com-faq .body {
  display: none;
  background: #f8f8f8;
}

.com-faq .body .body-inner {
  padding: 25px 30px;
  text-align: justify;
}

.com-faq .body .body-inner > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
  .com-faq {
    margin-bottom: 30px;
  }

  .com-faq .title {
    padding: 13px 45px 13px calc(1.2em + 10px + 20px);
    text-indent: calc(-1.2em - 10px);
  }

  .com-faq .title::after {
    right: 20px;
    width: 13px;
    height: 13px;
  }

  .com-faq .title .title-q {
    margin-right: 10px;
  }

  .com-faq .body .body-inner {
    padding: 20px 25px;
  }
}
@media only screen and (max-width: 599px) {
  .com-faq {
    margin-bottom: 25px;
  }

  .com-faq .title {
    padding: 8px 40px 8px calc(1.2em + 5px + 15px);
    text-indent: calc(-1.2em - 5px);
    font-size: 1.2em;
    line-height: 1.35;
  }

  .com-faq .title::after {
    right: 15px;
    width: 12px;
    height: 12px;
  }

  .com-faq .title .title-q {
    margin-right: 5px;
  }

  .com-faq .body .body-inner {
    padding: 15px 20px;
  }
}
/*
*   table
*----------------------------*/
.com-table__dafault, .custom-table__store__fixed, .custom-table__store, .table-transform__sp, .table-transform__mbl, .com-table__03, .com-table__02, .com-table__01,
.com-table__dafault td,
.custom-table__store__fixed td,
.custom-table__store td,
.table-transform__sp td,
.table-transform__mbl td,
.com-table__03 td,
.com-table__02 td,
.com-table__01 td,
.com-table__dafault th,
.custom-table__store__fixed th,
.custom-table__store th,
.table-transform__sp th,
.table-transform__mbl th,
.com-table__03 th,
.com-table__02 th,
.com-table__01 th {
  border: 1px solid #ccc;
  border-collapse: collapse;
}
.com-table__dafault th, .custom-table__store__fixed th, .custom-table__store th, .table-transform__sp th, .table-transform__mbl th, .com-table__03 th, .com-table__02 th, .com-table__01 th {
  color: #000;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  background-color: #e5f6ff;
  padding: 0.75em 1.25em;
  vertical-align: middle;
}
@media only screen and (max-width: 1024px) {
  .com-table__dafault th, .custom-table__store__fixed th, .custom-table__store th, .table-transform__sp th, .table-transform__mbl th, .com-table__03 th, .com-table__02 th, .com-table__01 th {
    font-size: 16px;
  }
}
.com-table__dafault td, .custom-table__store__fixed td, .custom-table__store td, .table-transform__sp td, .table-transform__mbl td, .com-table__03 td, .com-table__02 td, .com-table__01 td {
  color: #000;
  font-size: 20px;
  line-height: 1.5;
  padding: 0.75em 1.25em;
  vertical-align: middle;
}
@media only screen and (max-width: 1024px) {
  .com-table__dafault td, .custom-table__store__fixed td, .custom-table__store td, .table-transform__sp td, .table-transform__mbl td, .com-table__03 td, .com-table__02 td, .com-table__01 td {
    font-size: 16px;
  }
}

/********** table01 **********/
/* 
* table幅：自動
* 列幅：自動
* SP時レイアウト：変更なし
*/
.com-table__01,
.com-table__01 td,
.com-table__01 th {
  border: 1px solid #ccc;
  border-collapse: collapse;
}
.com-table__01 th {
  color: #000;
  font-weight: bold;
  line-height: 1.2;
  background-color: #e5f6ff;
  padding: 14px 20px;
  vertical-align: middle;
}
.com-table__01 td {
  color: #000;
  line-height: 1.5;
  padding: 14px 20px;
  vertical-align: middle;
}

/********** table02 **********/
/* 
* table幅：100%
* 列幅：自動
* TABレイアウト：変更なし
* SPレイアウト：変更なし
*/
.com-table__02 {
  width: 100%;
}

/********** table03 **********/
/* 
* table幅：100%
* 列幅：均等
* TABレイアウト：変更なし
* SPレイアウト：変更なし
*/
.com-table__03 {
  width: 100%;
  table-layout: fixed;
}

/********** table-transform__mbl **********/
/* 
* table幅：100%
* 列幅：自動
* TABレイアウト：変更あり（一列 上：見出し/下：値）
* SPレイアウト：変更あり（一列 上：見出し/下：値）
*/
.table-transform__mbl {
  width: 100%;
}
@media print, screen and (min-width: 1025px) {
  .table-transform__mbl {
    table-layout: fixed;
  }
  .table-transform__mbl,
.table-transform__mbl td,
.table-transform__mbl th {
    border: 1px solid #ccc;
    border-collapse: collapse;
  }
}
@media only screen and (max-width: 1024px) {
  .table-transform__mbl {
    border: 1px solid #ccc;
    border-bottom: none;
  }
}
@media only screen and (max-width: 1024px) {
  .table-transform__mbl tr {
    display: block;
  }
}
.table-transform__mbl th {
  color: #000;
  font-weight: bold;
  line-height: 1.2;
  background-color: #e5f6ff;
  padding: 14px 20px;
}
@media print, screen and (min-width: 1025px) {
  .table-transform__mbl th {
    vertical-align: middle;
  }
}
@media only screen and (max-width: 1024px) {
  .table-transform__mbl th {
    display: block;
    width: 100% !important;
    border: none;
    border-bottom: 1px solid #ccc;
  }
}
.table-transform__mbl td {
  color: #000;
  line-height: 1.5;
  padding: 14px 20px;
}
@media print, screen and (min-width: 1025px) {
  .table-transform__mbl td {
    vertical-align: middle;
  }
}
@media only screen and (max-width: 1024px) {
  .table-transform__mbl td {
    display: block;
    width: 100% !important;
    border: none;
    border-bottom: 1px solid #ccc;
  }
}

/********** table-transform__sp **********/
/* 
* table幅：100%
* 列幅：自動
* TABレイアウト：変更なし
* SPレイアウト：変更あり（一列 上：見出し/下：値）
*/
.table-transform__sp {
  width: 100%;
}
@media only screen and (min-width: 600px) {
  .table-transform__sp {
    table-layout: fixed;
  }
  .table-transform__sp,
.table-transform__sp td,
.table-transform__sp th {
    border: 1px solid #ccc;
    border-collapse: collapse;
  }
}
@media only screen and (max-width: 599px) {
  .table-transform__sp {
    border: 1px solid #ccc;
    border-bottom: none;
  }
}
@media only screen and (max-width: 599px) {
  .table-transform__sp tr {
    display: block;
  }
}
.table-transform__sp th {
  color: #000;
  font-weight: bold;
  line-height: 1.2;
  background-color: #e5f6ff;
  padding: 14px 20px;
}
@media only screen and (min-width: 600px) {
  .table-transform__sp th {
    vertical-align: middle;
  }
}
@media only screen and (max-width: 599px) {
  .table-transform__sp th {
    display: block;
    width: 100% !important;
    border: none;
    border-bottom: 1px solid #ccc;
  }
}
.table-transform__sp td {
  color: #000;
  line-height: 1.5;
  padding: 14px 20px;
}
@media only screen and (min-width: 600px) {
  .table-transform__sp td {
    vertical-align: middle;
  }
}
@media only screen and (max-width: 599px) {
  .table-transform__sp td {
    display: block;
    width: 100% !important;
    border: none;
    border-bottom: 1px solid #ccc;
  }
}

/********** custom-table__store **********/
/* 
* 販売店用
*/
.custom-table__store {
  width: 100%;
}
.custom-table__store th {
  color: #000;
  font-weight: 700;
  line-height: 1.2;
  background-color: #e5f6ff;
}
.custom-table__store td {
  color: #000;
  line-height: 1.5;
}
.custom-table__store tr, .custom-table__store th, .custom-table__store td {
  height: auto !important;
}
@media print, screen and (min-width: 1025px) {
  .custom-table__store {
    table-layout: fixed;
  }
  .custom-table__store,
.custom-table__store td,
.custom-table__store th {
    border: 1px solid #ccc;
    border-collapse: collapse;
  }
  .custom-table__store th, .custom-table__store td {
    padding: 14px 20px;
  }
  .custom-table__store th {
    vertical-align: middle;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store {
    display: block;
    border: none;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1024px) {
  .custom-table__store thead {
    display: none;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1024px) {
  .custom-table__store tbody {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 1.5em;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store tbody tr {
    display: block;
    width: 100%;
    border-radius: 0.5em;
    overflow: hidden;
    border: 2px solid #ccc;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store tbody th, .custom-table__store tbody td {
    font-size: clamp(14px, 2.6vw, 16px);
    text-align: justify;
    text-indent: 0em;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store tbody td {
    position: relative;
    display: block;
    width: 100% !important;
    padding: 1em 1em 1em 8.25em;
    width: 100%;
    gap: 0;
    border: none;
    border-bottom: 1px solid #ccc;
  }
  .custom-table__store tbody td::before {
    content: attr(data-label);
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 7.25em;
    height: 100%;
    left: 0;
    top: 0;
    color: #000;
    font-weight: 700;
    background-color: #e5f6ff;
    border-right: 1px solid #ccc;
    padding: 1em;
  }
  .custom-table__store tbody td:last-of-type {
    border-bottom: none;
  }
}

.custom-table__store__fixed {
  width: 100%;
}
.custom-table__store__fixed th {
  color: #000;
  font-weight: 700;
  line-height: 1.2;
  background-color: #e5f6ff;
}
.custom-table__store__fixed td {
  color: #000;
  line-height: 1.5;
}
.custom-table__store__fixed tr, .custom-table__store__fixed th, .custom-table__store__fixed td {
  height: auto !important;
}
@media print, screen and (min-width: 1025px) {
  .custom-table__store__fixed {
    table-layout: fixed;
  }
  .custom-table__store__fixed,
.custom-table__store__fixed td,
.custom-table__store__fixed th {
    border: 1px solid #ccc;
    border-collapse: collapse;
  }
  .custom-table__store__fixed th, .custom-table__store__fixed td {
    padding: 14px 20px;
  }
  .custom-table__store__fixed th {
    vertical-align: middle;
  }
  .custom-table__store__fixed thead th:nth-child(1) {
    width: 24% !important;
  }
  .custom-table__store__fixed thead th:nth-child(2) {
    width: 14% !important;
  }
  .custom-table__store__fixed thead th:nth-child(3) {
    width: 44% !important;
  }
  .custom-table__store__fixed thead th:nth-child(4) {
    width: 18% !important;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store__fixed {
    display: block;
    border: none;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1024px) {
  .custom-table__store__fixed thead {
    display: none;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1024px) {
  .custom-table__store__fixed tbody {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 1.5em;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store__fixed tbody tr {
    display: block;
    width: 100%;
    border-radius: 0.5em;
    overflow: hidden;
    border: 2px solid #ccc;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store__fixed tbody th, .custom-table__store__fixed tbody td {
    font-size: clamp(14px, 2.6vw, 16px);
    text-align: justify;
    text-indent: 0em;
  }
}
@media only screen and (max-width: 1024px) {
  .custom-table__store__fixed tbody td {
    position: relative;
    display: block;
    width: 100% !important;
    padding: 1em 1em 1em 8.25em;
    width: 100%;
    gap: 0;
    border: none;
    border-bottom: 1px solid #ccc;
  }
  .custom-table__store__fixed tbody td::before {
    content: attr(data-label);
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 7.25em;
    height: 100%;
    left: 0;
    top: 0;
    color: #000;
    font-weight: 700;
    background-color: #e5f6ff;
    border-right: 1px solid #ccc;
    padding: 1em;
  }
  .custom-table__store__fixed tbody td:last-of-type {
    border-bottom: none;
  }
}

/********** scroll table MBL **********/
@media only screen and (max-width: 1024px) {
  .com-scrollTableBlock__mbl {
    overflow-x: scroll;
    border: 1px solid #ccc;
  }
}
@media only screen and (max-width: 1024px) {
  .com-scrollTableBlock__mbl > table {
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    min-width: 1200px;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .com-scrollTableBlock__mbl > table thead:first-child > tr > th, .com-scrollTableBlock__mbl > table thead:first-child > tr > td, .com-scrollTableBlock__mbl > table tbody:first-child > tr > th, .com-scrollTableBlock__mbl > table tbody:first-child > tr > td {
    border-top: none !important;
  }
  .com-scrollTableBlock__mbl > table thead:last-child > tr:last-child > th, .com-scrollTableBlock__mbl > table thead:last-child > tr:last-child > td, .com-scrollTableBlock__mbl > table tbody:last-child > tr:last-child > th, .com-scrollTableBlock__mbl > table tbody:last-child > tr:last-child > td {
    border-bottom: none !important;
  }
  .com-scrollTableBlock__mbl > table thead > tr:first-child > th, .com-scrollTableBlock__mbl > table thead > tr:first-child > td {
    border-top: none !important;
  }
  .com-scrollTableBlock__mbl > table tr > th:first-child, .com-scrollTableBlock__mbl > table tr > td:first-child {
    border-left: none !important;
  }
  .com-scrollTableBlock__mbl > table tr > th:last-child, .com-scrollTableBlock__mbl > table tr > td:last-child {
    border-right: none !important;
  }
}

/********** scroll table SP **********/
@media only screen and (max-width: 599px) {
  .com-scrollTableBlock__sp {
    overflow-x: scroll;
    border: 1px solid #ccc;
  }
}
@media only screen and (max-width: 599px) {
  .com-scrollTableBlock__sp > table {
    border-top: none;
    border-bottom: none;
    border-left: none;
    border-right: none;
    min-width: 600px;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .com-scrollTableBlock__sp > table thead:first-child > tr > th, .com-scrollTableBlock__sp > table thead:first-child > tr > td, .com-scrollTableBlock__sp > table tbody:first-child > tr > th, .com-scrollTableBlock__sp > table tbody:first-child > tr > td {
    border-top: none !important;
  }
  .com-scrollTableBlock__sp > table thead:last-child > tr:last-child > th, .com-scrollTableBlock__sp > table thead:last-child > tr:last-child > td, .com-scrollTableBlock__sp > table tbody:last-child > tr:last-child > th, .com-scrollTableBlock__sp > table tbody:last-child > tr:last-child > td {
    border-bottom: none !important;
  }
  .com-scrollTableBlock__sp > table thead > tr:first-child > th, .com-scrollTableBlock__sp > table thead > tr:first-child > td {
    border-top: none !important;
  }
  .com-scrollTableBlock__sp > table tr > th:first-child, .com-scrollTableBlock__sp > table tr > td:first-child {
    border-left: none !important;
  }
  .com-scrollTableBlock__sp > table tr > th:last-child, .com-scrollTableBlock__sp > table tr > td:last-child {
    border-right: none !important;
  }
}

/********** scroll table scroll text **********/
.com-scrollTableBlock-memo {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 0 0 0 45px;
  min-height: 30px;
}
.com-scrollTableBlock-memo::before {
  content: "";
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background: url(../images/common/icon/icon_scroll.svg) no-repeat center/contain;
}

/*
*   BUTTON
*----------------------------*/
.com-btn-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px 14px;
  width: 100%;
  text-align: center;
  margin: 4em 0;
}

.com-btn,
.com-btn-list a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  max-width: 360px;
  padding: 0.7em 3.5em 0.7em 1em;
  border: 2px solid #0d318f;
  background: #0d318f;
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.5em;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-align: left;
  cursor: pointer;
  -webkit-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
@media only screen and (max-width: 599px) {
  .com-btn,
.com-btn-list a {
    min-width: initial;
    max-width: 360px;
  }
}
.com-btn::before,
.com-btn-list a::before {
  content: "";
  position: absolute;
  display: block;
  width: 1.5em;
  height: 0.75em;
  top: 50%;
  right: 1em;
  background: url(../images/common/arrow_white.svg) no-repeat center/contain;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: right 0.2s ease-in, left 0.2s ease-in;
  transition: right 0.2s ease-in, left 0.2s ease-in;
}
.com-btn:hover,
.com-btn-list a:hover {
  opacity: 1 !important;
}
@media print, screen and (min-width: 1025px) {
  .com-btn:hover::before,
.com-btn-list a:hover::before {
    right: 0.25em;
  }
}
.com-btn.type02,
.com-btn-list a.type02 {
  background-color: #fff;
  color: #0d318f;
}
.com-btn.type02::before,
.com-btn-list a.type02::before {
  background-image: url(../images/common/arrow_main-color.svg);
}
.com-btn.com-btn-external, .com-btn[target=_blank],
.com-btn-list a.com-btn-external,
.com-btn-list a[target=_blank] {
  padding-right: 2.25em;
  padding-left: 2.25em;
}
.com-btn.com-btn-external::before, .com-btn[target=_blank]::before,
.com-btn-list a.com-btn-external::before,
.com-btn-list a[target=_blank]::before {
  width: 1rem;
  height: 1rem;
  right: 0.5em;
  border: none;
  background: url(../images/common/icon/icon_new-window_white.svg) no-repeat center/contain;
}
.com-btn.com-btn-external.type02::before, .com-btn[target=_blank].type02::before,
.com-btn-list a.com-btn-external.type02::before,
.com-btn-list a[target=_blank].type02::before {
  width: 1rem;
  height: 1rem;
  right: 0.5em;
  border: none;
  background-image: url(../images/common/icon/icon_new-window_main-color.svg);
}
.com-btn.com-btn-external:hover::before, .com-btn[target=_blank]:hover::before,
.com-btn-list a.com-btn-external:hover::before,
.com-btn-list a[target=_blank]:hover::before {
  right: 0.25em;
}
.com-btn.left-arrow,
.com-btn-list a.left-arrow {
  padding-left: 3.5em;
  padding-right: 1em;
}
.com-btn.left-arrow::before,
.com-btn-list a.left-arrow::before {
  right: auto;
  left: 1em;
  -webkit-transform: translate(0, -50%) scale(-1, 1);
          transform: translate(0, -50%) scale(-1, 1);
}
.com-btn.left-arrow:hover,
.com-btn-list a.left-arrow:hover {
  opacity: 1 !important;
}
@media print, screen and (min-width: 1025px) {
  .com-btn.left-arrow:hover::before,
.com-btn-list a.left-arrow:hover::before {
    left: 0.25em;
  }
}
.com-btn.com-btn-large,
.com-btn-list a.com-btn-large {
  min-width: initial;
  max-width: initial;
  width: 100%;
  font-size: 1.8rem;
  text-align: left;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  letter-spacing: 0.1em;
}
@media print, screen and (min-width: 1025px) {
  .com-btn.com-btn-large,
.com-btn-list a.com-btn-large {
    border-width: 4px;
  }
}
@media only screen and (max-width: 1024px) {
  .com-btn.com-btn-large,
.com-btn-list a.com-btn-large {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 1025px) {
  .isColumn3 .com-btn,
.isColumn3 .com-btn-list a {
    width: calc((100% / 3) - ((14px * 2) / 3) - 1px);
  }
}
@media print, screen and (min-width: 1025px) {
  .isColumn2 .com-btn,
.isColumn2 .com-btn-list a {
    width: calc(50% - 14px - 1px);
  }
}