@charset "UTF-8";
/* ---------------------------------
 reset
-----------------------------------*/
*,
*:before,
*:after {
  box-sizing: border-box;
  border-radius: 0;
  border: none;
  box-sizing: border-box;
  background: none;
  padding: 0;
}

html,
body {
  width: 100%;
  font-size: 62.5%;
}

.row > * {
  padding-right: calc(2.4rem / 2);
  padding-left: calc(2.4rem / 2);
}

body {
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif !important;
  font-size: 1.6rem;
  overflow-x: hidden;
  line-height: 1.5;
  color: #000;
  word-wrap: break-word;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
}

p {
  margin-bottom: 0;
}

a:hover {
  text-decoration: underline;
}

a img:hover {
  opacity: 0.7;
}

.info_top {
  display: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul,
li {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  color: #333;
  text-decoration: none;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

a:hover {
  color: #333;
  opacity: 0.7;
}

a[data-stt-changelang] {
  margin: 0 7px;
}

a[data-stt-active] {
  text-decoration: none;
  font-weight: bold;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input,
select,
textarea {
  vertical-align: middle;
  color: #666;
  font-weight: 300;
}

input[type="text"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #bbb;
}

input[type="text"]::-moz-placeholder,
textarea::-moz-placeholder {
  color: #bbb;
}

input[type="text"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #bbb;
}

input[type="text"]::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #bbb;
}

input[type="text"]::placeholder,
textarea::placeholder {
  color: #bbb;
}

/* Edge */
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #bbb;
}

textarea {
  resize: none;
}

.ie11 input[type="text"] {
  line-height: 0;
}

/* ---------------------------------
全体スタイル
-----------------------------------*/
.inner {
  max-width: 80%;
  margin: 0 auto;
  padding: 30px 30px 0 30px;
}

input[type="text"],
textarea {
  border: 1px solid #999;
  appearance: none;
}

h2 {
  font-size: 4rem;
  color: #ad1118;
}

/* ---------------------------------
汎用class
-----------------------------------*/
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.mt-110 {
  margin-top: 110px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mt-130 {
  margin-top: 130px !important;
}

.mt-140 {
  margin-top: 140px !important;
}

.mt-150 {
  margin-top: 150px !important;
}

.mt-160 {
  margin-top: 160px !important;
}

.mt-170 {
  margin-top: 170px !important;
}

.mt-180 {
  margin-top: 180px !important;
}

.mt-190 {
  margin-top: 190px !important;
}

.mt-200 {
  margin-top: 200px !important;
}

.mt-210 {
  margin-top: 210px !important;
}

.mt-220 {
  margin-top: 220px !important;
}

.mt-230 {
  margin-top: 230px !important;
}

.mt-240 {
  margin-top: 240px !important;
}

.mt-250 {
  margin-top: 250px !important;
}

.mt-260 {
  margin-top: 260px !important;
}

.mt-270 {
  margin-top: 270px !important;
}

.mt-280 {
  margin-top: 280px !important;
}

.mt-290 {
  margin-top: 290px !important;
}

.mt-300 {
  margin-top: 300px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mb-90 {
  margin-bottom: 90px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

.mb-110 {
  margin-bottom: 110px !important;
}

.mb-120 {
  margin-bottom: 120px !important;
}

.mb-130 {
  margin-bottom: 130px !important;
}

.mb-140 {
  margin-bottom: 140px !important;
}

.mb-150 {
  margin-bottom: 150px !important;
}

.mb-160 {
  margin-bottom: 160px !important;
}

.mb-170 {
  margin-bottom: 170px !important;
}

.mb-180 {
  margin-bottom: 180px !important;
}

.mb-190 {
  margin-bottom: 190px !important;
}

.mb-200 {
  margin-bottom: 200px !important;
}

.mb-210 {
  margin-bottom: 210px !important;
}

.mb-220 {
  margin-bottom: 220px !important;
}

.mb-230 {
  margin-bottom: 230px !important;
}

.mb-240 {
  margin-bottom: 240px !important;
}

.mb-250 {
  margin-bottom: 250px !important;
}

.mb-260 {
  margin-bottom: 260px !important;
}

.mb-270 {
  margin-bottom: 270px !important;
}

.mb-280 {
  margin-bottom: 280px !important;
}

.mb-290 {
  margin-bottom: 290px !important;
}

.mb-300 {
  margin-bottom: 300px !important;
}

.ms-10 {
  margin-left: 10px !important;
}

.ms-20 {
  margin-left: 20px !important;
}

.ms-30 {
  margin-left: 30px !important;
}

.ms-40 {
  margin-left: 40px !important;
}

.ms-50 {
  margin-left: 50px !important;
}

.ms-60 {
  margin-left: 60px !important;
}

.ms-70 {
  margin-left: 70px !important;
}

.ms-80 {
  margin-left: 80px !important;
}

.ms-90 {
  margin-left: 90px !important;
}

.ms-100 {
  margin-left: 100px !important;
}

.ms-110 {
  margin-left: 110px !important;
}

.ms-120 {
  margin-left: 120px !important;
}

.ms-130 {
  margin-left: 130px !important;
}

.ms-140 {
  margin-left: 140px !important;
}

.ms-150 {
  margin-left: 150px !important;
}

.ms-160 {
  margin-left: 160px !important;
}

.ms-170 {
  margin-left: 170px !important;
}

.ms-180 {
  margin-left: 180px !important;
}

.ms-190 {
  margin-left: 190px !important;
}

.ms-200 {
  margin-left: 200px !important;
}

.ms-210 {
  margin-left: 210px !important;
}

.ms-220 {
  margin-left: 220px !important;
}

.ms-230 {
  margin-left: 230px !important;
}

.ms-240 {
  margin-left: 240px !important;
}

.ms-250 {
  margin-left: 250px !important;
}

.ms-260 {
  margin-left: 260px !important;
}

.ms-270 {
  margin-left: 270px !important;
}

.ms-280 {
  margin-left: 280px !important;
}

.ms-290 {
  margin-left: 290px !important;
}

.ms-300 {
  margin-left: 300px !important;
}

.me-10 {
  margin-right: 10px !important;
}

.me-20 {
  margin-right: 20px !important;
}

.me-30 {
  margin-right: 30px !important;
}

.me-40 {
  margin-right: 40px !important;
}

.me-50 {
  margin-right: 50px !important;
}

.me-60 {
  margin-right: 60px !important;
}

.me-70 {
  margin-right: 70px !important;
}

.me-80 {
  margin-right: 80px !important;
}

.me-90 {
  margin-right: 90px !important;
}

.me-100 {
  margin-right: 100px !important;
}

.me-110 {
  margin-right: 110px !important;
}

.me-120 {
  margin-right: 120px !important;
}

.me-130 {
  margin-right: 130px !important;
}

.me-140 {
  margin-right: 140px !important;
}

.me-150 {
  margin-right: 150px !important;
}

.me-160 {
  margin-right: 160px !important;
}

.me-170 {
  margin-right: 170px !important;
}

.me-180 {
  margin-right: 180px !important;
}

.me-190 {
  margin-right: 190px !important;
}

.me-200 {
  margin-right: 200px !important;
}

.me-210 {
  margin-right: 210px !important;
}

.me-220 {
  margin-right: 220px !important;
}

.me-230 {
  margin-right: 230px !important;
}

.me-240 {
  margin-right: 240px !important;
}

.me-250 {
  margin-right: 250px !important;
}

.me-260 {
  margin-right: 260px !important;
}

.me-270 {
  margin-right: 270px !important;
}

.me-280 {
  margin-right: 280px !important;
}

.me-290 {
  margin-right: 290px !important;
}

.me-300 {
  margin-right: 300px !important;
}

.mx-10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.mx-20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.mx-30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.mx-40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.mx-50 {
  margin-left: 50px !important;
  margin-right: 50px !important;
}

.mx-60 {
  margin-left: 60px !important;
  margin-right: 60px !important;
}

.mx-70 {
  margin-left: 70px !important;
  margin-right: 70px !important;
}

.mx-80 {
  margin-left: 80px !important;
  margin-right: 80px !important;
}

.mx-90 {
  margin-left: 90px !important;
  margin-right: 90px !important;
}

.mx-100 {
  margin-left: 100px !important;
  margin-right: 100px !important;
}

.mx-110 {
  margin-left: 110px !important;
  margin-right: 110px !important;
}

.mx-120 {
  margin-left: 120px !important;
  margin-right: 120px !important;
}

.mx-130 {
  margin-left: 130px !important;
  margin-right: 130px !important;
}

.mx-140 {
  margin-left: 140px !important;
  margin-right: 140px !important;
}

.mx-150 {
  margin-left: 150px !important;
  margin-right: 150px !important;
}

.mx-160 {
  margin-left: 160px !important;
  margin-right: 160px !important;
}

.mx-170 {
  margin-left: 170px !important;
  margin-right: 170px !important;
}

.mx-180 {
  margin-left: 180px !important;
  margin-right: 180px !important;
}

.mx-190 {
  margin-left: 190px !important;
  margin-right: 190px !important;
}

.mx-200 {
  margin-left: 200px !important;
  margin-right: 200px !important;
}

.mx-210 {
  margin-left: 210px !important;
  margin-right: 210px !important;
}

.mx-220 {
  margin-left: 220px !important;
  margin-right: 220px !important;
}

.mx-230 {
  margin-left: 230px !important;
  margin-right: 230px !important;
}

.mx-240 {
  margin-left: 240px !important;
  margin-right: 240px !important;
}

.mx-250 {
  margin-left: 250px !important;
  margin-right: 250px !important;
}

.mx-260 {
  margin-left: 260px !important;
  margin-right: 260px !important;
}

.mx-270 {
  margin-left: 270px !important;
  margin-right: 270px !important;
}

.mx-280 {
  margin-left: 280px !important;
  margin-right: 280px !important;
}

.mx-290 {
  margin-left: 290px !important;
  margin-right: 290px !important;
}

.mx-300 {
  margin-left: 300px !important;
  margin-right: 300px !important;
}

.my-10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.my-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.my-30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.my-40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.my-50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.my-60 {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.my-70 {
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.my-80 {
  margin-top: 80px !important;
  margin-bottom: 80px !important;
}

.my-90 {
  margin-top: 90px !important;
  margin-bottom: 90px !important;
}

.my-100 {
  margin-top: 100px !important;
  margin-bottom: 100px !important;
}

.my-110 {
  margin-top: 110px !important;
  margin-bottom: 110px !important;
}

.my-120 {
  margin-top: 120px !important;
  margin-bottom: 120px !important;
}

.my-130 {
  margin-top: 130px !important;
  margin-bottom: 130px !important;
}

.my-140 {
  margin-top: 140px !important;
  margin-bottom: 140px !important;
}

.my-150 {
  margin-top: 150px !important;
  margin-bottom: 150px !important;
}

.my-160 {
  margin-top: 160px !important;
  margin-bottom: 160px !important;
}

.my-170 {
  margin-top: 170px !important;
  margin-bottom: 170px !important;
}

.my-180 {
  margin-top: 180px !important;
  margin-bottom: 180px !important;
}

.my-190 {
  margin-top: 190px !important;
  margin-bottom: 190px !important;
}

.my-200 {
  margin-top: 200px !important;
  margin-bottom: 200px !important;
}

.my-210 {
  margin-top: 210px !important;
  margin-bottom: 210px !important;
}

.my-220 {
  margin-top: 220px !important;
  margin-bottom: 220px !important;
}

.my-230 {
  margin-top: 230px !important;
  margin-bottom: 230px !important;
}

.my-240 {
  margin-top: 240px !important;
  margin-bottom: 240px !important;
}

.my-250 {
  margin-top: 250px !important;
  margin-bottom: 250px !important;
}

.my-260 {
  margin-top: 260px !important;
  margin-bottom: 260px !important;
}

.my-270 {
  margin-top: 270px !important;
  margin-bottom: 270px !important;
}

.my-280 {
  margin-top: 280px !important;
  margin-bottom: 280px !important;
}

.my-290 {
  margin-top: 290px !important;
  margin-bottom: 290px !important;
}

.my-300 {
  margin-top: 300px !important;
  margin-bottom: 300px !important;
}

.py-220 {
  padding-top: 220px !important;
  padding-bottom: 220px !important;
}

.py-230 {
  padding-top: 230px !important;
  padding-bottom: 230px !important;
}

.py-240 {
  padding-top: 240px !important;
  padding-bottom: 240px !important;
}

.py-250 {
  padding-top: 250px !important;
  padding-bottom: 250px !important;
}

.py-260 {
  padding-top: 260px !important;
  padding-bottom: 260px !important;
}

.py-270 {
  padding-top: 270px !important;
  padding-bottom: 270px !important;
}

.py-280 {
  padding-top: 280px !important;
  padding-bottom: 280px !important;
}

.py-290 {
  padding-top: 290px !important;
  padding-bottom: 290px !important;
}

.py-300 {
  padding-top: 300px !important;
  padding-bottom: 300px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pt-70 {
  padding-top: 70px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pt-90 {
  padding-top: 90px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pt-110 {
  padding-top: 110px !important;
}

.pt-120 {
  padding-top: 120px !important;
}

.pt-130 {
  padding-top: 130px !important;
}

.pt-140 {
  padding-top: 140px !important;
}

.pt-150 {
  padding-top: 150px !important;
}

.pt-160 {
  padding-top: 160px !important;
}

.pt-170 {
  padding-top: 170px !important;
}

.pt-180 {
  padding-top: 180px !important;
}

.pt-190 {
  padding-top: 190px !important;
}

.pt-200 {
  padding-top: 200px !important;
}

.pt-210 {
  padding-top: 210px !important;
}

.pt-220 {
  padding-top: 220px !important;
}

.pt-230 {
  padding-top: 230px !important;
}

.pt-240 {
  padding-top: 240px !important;
}

.pt-250 {
  padding-top: 250px !important;
}

.pt-260 {
  padding-top: 260px !important;
}

.pt-270 {
  padding-top: 270px !important;
}

.pt-280 {
  padding-top: 280px !important;
}

.pt-290 {
  padding-top: 290px !important;
}

.pt-300 {
  padding-top: 300px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pb-70 {
  padding-bottom: 70px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.pb-90 {
  padding-bottom: 90px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

.pb-110 {
  padding-bottom: 110px !important;
}

.pb-120 {
  padding-bottom: 120px !important;
}

.pb-130 {
  padding-bottom: 130px !important;
}

.pb-140 {
  padding-bottom: 140px !important;
}

.pb-150 {
  padding-bottom: 150px !important;
}

.pb-160 {
  padding-bottom: 160px !important;
}

.pb-170 {
  padding-bottom: 170px !important;
}

.pb-180 {
  padding-bottom: 180px !important;
}

.pb-190 {
  padding-bottom: 190px !important;
}

.pb-200 {
  padding-bottom: 200px !important;
}

.pb-210 {
  padding-bottom: 210px !important;
}

.pb-220 {
  padding-bottom: 220px !important;
}

.pb-230 {
  padding-bottom: 230px !important;
}

.pb-240 {
  padding-bottom: 240px !important;
}

.pb-250 {
  padding-bottom: 250px !important;
}

.pb-260 {
  padding-bottom: 260px !important;
}

.pb-270 {
  padding-bottom: 270px !important;
}

.pb-280 {
  padding-bottom: 280px !important;
}

.pb-290 {
  padding-bottom: 290px !important;
}

.pb-300 {
  padding-bottom: 300px !important;
}

.ps-10 {
  padding-left: 10px !important;
}

.ps-20 {
  padding-left: 20px !important;
}

.ps-30 {
  padding-left: 30px !important;
}

.ps-40 {
  padding-left: 40px !important;
}

.ps-50 {
  padding-left: 50px !important;
}

.ps-60 {
  padding-left: 60px !important;
}

.ps-70 {
  padding-left: 70px !important;
}

.ps-80 {
  padding-left: 80px !important;
}

.ps-90 {
  padding-left: 90px !important;
}

.ps-100 {
  padding-left: 100px !important;
}

.ps-110 {
  padding-left: 110px !important;
}

.ps-120 {
  padding-left: 120px !important;
}

.ps-130 {
  padding-left: 130px !important;
}

.ps-140 {
  padding-left: 140px !important;
}

.ps-150 {
  padding-left: 150px !important;
}

.ps-160 {
  padding-left: 160px !important;
}

.ps-170 {
  padding-left: 170px !important;
}

.ps-180 {
  padding-left: 180px !important;
}

.ps-190 {
  padding-left: 190px !important;
}

.ps-200 {
  padding-left: 200px !important;
}

.ps-210 {
  padding-left: 210px !important;
}

.ps-220 {
  padding-left: 220px !important;
}

.ps-230 {
  padding-left: 230px !important;
}

.ps-240 {
  padding-left: 240px !important;
}

.ps-250 {
  padding-left: 250px !important;
}

.ps-260 {
  padding-left: 260px !important;
}

.ps-270 {
  padding-left: 270px !important;
}

.ps-280 {
  padding-left: 280px !important;
}

.ps-290 {
  padding-left: 290px !important;
}

.ps-300 {
  padding-left: 300px !important;
}

.pe-10 {
  padding-right: 10px !important;
}

.pe-20 {
  padding-right: 20px !important;
}

.pe-30 {
  padding-right: 30px !important;
}

.pe-40 {
  padding-right: 40px !important;
}

.pe-50 {
  padding-right: 50px !important;
}

.pe-60 {
  padding-right: 60px !important;
}

.pe-70 {
  padding-right: 70px !important;
}

.pe-80 {
  padding-right: 80px !important;
}

.pe-90 {
  padding-right: 90px !important;
}

.pe-100 {
  padding-right: 100px !important;
}

.pe-110 {
  padding-right: 110px !important;
}

.pe-120 {
  padding-right: 120px !important;
}

.pe-130 {
  padding-right: 130px !important;
}

.pe-140 {
  padding-right: 140px !important;
}

.pe-150 {
  padding-right: 150px !important;
}

.pe-160 {
  padding-right: 160px !important;
}

.pe-170 {
  padding-right: 170px !important;
}

.pe-180 {
  padding-right: 180px !important;
}

.pe-190 {
  padding-right: 190px !important;
}

.pe-200 {
  padding-right: 200px !important;
}

.pe-210 {
  padding-right: 210px !important;
}

.pe-220 {
  padding-right: 220px !important;
}

.pe-230 {
  padding-right: 230px !important;
}

.pe-240 {
  padding-right: 240px !important;
}

.pe-250 {
  padding-right: 250px !important;
}

.pe-260 {
  padding-right: 260px !important;
}

.pe-270 {
  padding-right: 270px !important;
}

.pe-280 {
  padding-right: 280px !important;
}

.pe-290 {
  padding-right: 290px !important;
}

.pe-300 {
  padding-right: 300px !important;
}

.px-10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.px-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.px-30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.px-40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.px-50 {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

.px-60 {
  padding-left: 60px !important;
  padding-right: 60px !important;
}

.px-70 {
  padding-left: 70px !important;
  padding-right: 70px !important;
}

.px-80 {
  padding-left: 80px !important;
  padding-right: 80px !important;
}

.px-90 {
  padding-left: 90px !important;
  padding-right: 90px !important;
}

.px-100 {
  padding-left: 100px !important;
  padding-right: 100px !important;
}

.px-110 {
  padding-left: 110px !important;
  padding-right: 110px !important;
}

.px-120 {
  padding-left: 120px !important;
  padding-right: 120px !important;
}

.px-130 {
  padding-left: 130px !important;
  padding-right: 130px !important;
}

.px-140 {
  padding-left: 140px !important;
  padding-right: 140px !important;
}

.px-150 {
  padding-left: 150px !important;
  padding-right: 150px !important;
}

.px-160 {
  padding-left: 160px !important;
  padding-right: 160px !important;
}

.px-170 {
  padding-left: 170px !important;
  padding-right: 170px !important;
}

.px-180 {
  padding-left: 180px !important;
  padding-right: 180px !important;
}

.px-190 {
  padding-left: 190px !important;
  padding-right: 190px !important;
}

.px-200 {
  padding-left: 200px !important;
  padding-right: 200px !important;
}

.px-210 {
  padding-left: 210px !important;
  padding-right: 210px !important;
}

.px-220 {
  padding-left: 220px !important;
  padding-right: 220px !important;
}

.px-230 {
  padding-left: 230px !important;
  padding-right: 230px !important;
}

.px-240 {
  padding-left: 240px !important;
  padding-right: 240px !important;
}

.px-250 {
  padding-left: 250px !important;
  padding-right: 250px !important;
}

.px-260 {
  padding-left: 260px !important;
  padding-right: 260px !important;
}

.px-270 {
  padding-left: 270px !important;
  padding-right: 270px !important;
}

.px-280 {
  padding-left: 280px !important;
  padding-right: 280px !important;
}

.px-290 {
  padding-left: 290px !important;
  padding-right: 290px !important;
}

.px-300 {
  padding-left: 300px !important;
  padding-right: 300px !important;
}

.py-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.py-20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.py-30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.py-40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.py-50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.py-60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.py-70 {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.py-80 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

.py-90 {
  padding-top: 90px !important;
  padding-bottom: 90px !important;
}

.py-100 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
}

.py-110 {
  padding-top: 110px !important;
  padding-bottom: 110px !important;
}

.py-120 {
  padding-top: 120px !important;
  padding-bottom: 120px !important;
}

.py-130 {
  padding-top: 130px !important;
  padding-bottom: 130px !important;
}

.py-140 {
  padding-top: 140px !important;
  padding-bottom: 140px !important;
}

.py-150 {
  padding-top: 150px !important;
  padding-bottom: 150px !important;
}

.py-160 {
  padding-top: 160px !important;
  padding-bottom: 160px !important;
}

.py-170 {
  padding-top: 170px !important;
  padding-bottom: 170px !important;
}

.py-180 {
  padding-top: 180px !important;
  padding-bottom: 180px !important;
}

.py-190 {
  padding-top: 190px !important;
  padding-bottom: 190px !important;
}

.py-200 {
  padding-top: 200px !important;
  padding-bottom: 200px !important;
}

.py-210 {
  padding-top: 210px !important;
  padding-bottom: 210px !important;
}

.h3,
.h4,
.h5 {
  font-weight: normal;
}

.h4,
.h5 {
  color: #000;
}

.h1 {
  font-size: 3rem !important;
  margin-bottom: 60px !important;
}

.h2 {
  color: #ae3333;
  font-size: 2rem !important;
  border-left: solid 10px #ae3333;
  padding-left: 12px;
  margin-bottom: 30px !important;
  margin-top: 3rem;
}

.h3 {
  color: #ae3333;
  font-size: 1.8rem !important;
  margin-bottom: 3rem !important;
  margin-top: 4rem;
}

.h4 {
  border-bottom: solid 2px #151515;
  padding-bottom: 1.5rem;
  font-size: 1.6rem !important;
  margin-bottom: 1.5rem !important;
  margin-top: 2.5rem;
}

.h5 {
  font-size: 1.6rem !important;
  font-weight: normal;
  margin-bottom: 1.3rem !important;
  margin-top: 2.3rem;
}

.h6 {
  font-size: 1.6rem;
  padding-bottom: 2rem;
}

.err_msg {
  color: #870002 !important;
}

.color-black {
  color: #000 !important;
}

.color-red {
  color: #ae3333 !important;
}

/* ---------------------------------
 ヘッダー
-----------------------------------*/
header {
  padding: 20px 0 13px;
  width: 100%;
  overflow: hidden;
}
header .row {
  position: relative;
  justify-content: space-between;
  margin: 0;
}
header .logo-block {
  width: 50% !important;
}
header .logo {
  line-height: 1.2;
}
header .logo img {
  height: 48px;
}
@media screen and (min-width: 769px) {
  header .logo img {
    height: 64px;
  }
}
@media screen and (max-width: 768px) {
  header {
    padding: 20px 0 0 !important;
  }
  header .container {
    padding-left: 12px;
    padding-right: 12px;
  }
  header .logo {
    margin: -5px 0 0 -5px;
  }
}
header .nav_toggle {
  display: none;
}
@media screen and (max-width: 768px) {
  header .nav_toggle {
    display: inline-block;
    position: absolute;
    top: 3px;
    right: 20px;
    width: 28px;
    height: 24px;
    cursor: pointer;
    transition: all 0.5s;
    box-sizing: border-box;
  }
  header .nav_toggle span {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #666;
    border-radius: 4px;
    transition: all 0.5s;
  }
  header .nav_toggle span:nth-of-type(1) {
    top: 0;
  }
  header .nav_toggle span:nth-of-type(2) {
    top: 10px;
  }
  header .nav_toggle span:nth-of-type(3) {
    bottom: 0;
  }
  header .nav_toggle.show {
    transform: rotate(90deg);
  }
}

.nav-block {
  width: 50%;
}
.nav-block .nav {
  flex-wrap: nowrap;
}
.nav-block .nav.justify-content-end {
  justify-content: center !important;
}
@media screen and (min-width: 769px) {
  .nav-block .nav.justify-content-end {
    justify-content: flex-end !important;
  }
}
.nav-block .nav a,
.nav-block .nav span {
  display: block;
  margin: 10px 10px;
  font-size: 8px;
  text-align: center;
  color: #666;
  white-space: nowrap;
  cursor: pointer;
  text-decoration: none;
}
.nav-block .nav a:hover,
.nav-block .nav span:hover {
  opacity: 0.7;
}
@media screen and (min-width: 769px) {
  .nav-block .nav a,
  .nav-block .nav span {
    margin: 10px 10px;
    white-space: normal;
  }
}
@media screen and (min-width: 993px) {
  .nav-block .nav a,
  .nav-block .nav span {
    margin: 10px 15px;
  }
}
.nav-block .nav a i,
.nav-block .nav span i {
  display: block;
  margin-bottom: 6px;
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .nav-block {
    display: none;
    width: 100%;
    margin-top: 10px;
    margin-left: 0;
    margin-right: 0;
    background-color: #000;
  }
  .nav-block .nav a,
  .nav-block .nav span {
    color: #fff;
  }
}

@media screen and (max-width: 576px) {
  .nav-block {
    width: calc(100% + 2.4rem);
    margin-left: -1.2rem;
    margin-right: -1.2rem;
  }
}

.web_search_block {
  display: none;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .web_search_block {
    padding-left: 0;
    padding-right: 0;
  }
}
.web_search_block div {
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #efefef;
  text-align: center;
  line-height: 1;
}
.web_search_block div button {
  background-color: #9a0000;
  border-color: #9a0000;
  font-weight: 700;
  margin-top: -3px;
}
.web_search_block div .form-control {
  display: inline-block;
  width: 220px;
}
@media screen and (min-width: 769px) {
  .web_search_block div .form-control {
    width: 60%;
  }
}
.web_search_block div .form-control:focus {
  border-color: #9a0000;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(154, 0, 0, 0.25);
}

/* ---------------------------------
 フッター
-----------------------------------*/
footer {
  padding: 22px 0;
  background-color: #272c32;
}
footer small {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 0.875em;
}
@media screen and (max-width: 992px) {
  footer {
    background: none;
    background-color: #272c32;
  }
  footer .sns {
    margin: 0 auto;
    justify-content: center;
  }
  footer small {
    margin-top: 20px;
  }
}

/* ---------------------------------
 グローバルメニュー
-----------------------------------*/
.gmenu {
  top: 0;
  left: 0;
  z-index: 1020;
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .gmenu {
    position: sticky;
    padding-bottom: 10px;
  }
}
.gmenu .small,
.gmenu small {
  font-size: 0.75em;
}
.gmenu .nav {
  border-bottom: 1px solid #ccc;
}
.gmenu .nav span {
  cursor: pointer;
}
.gmenu .nav .nav-item {
  position: relative;
}
.gmenu .nav .nav-item::after {
  position: absolute;
  top: 8px;
  right: 0;
  content: "";
  width: 1px;
  height: 24px;
  background-color: #ccc;
}
.gmenu .nav .nav-item:nth-of-type(6)::after {
  display: none;
}
.gmenu .nav .nav-item .nav-link {
  color: #333;
}
@media screen and (min-width: 769px) and (max-width: 992px) {
  .gmenu .nav .nav-item .nav-link {
    padding: 0.5rem 0;
    font-size: 14px;
  }
}
.gmenu .nav .nav-item .nav-link:hover {
  background-color: #eee;
}
.gmenu .nav .nav-item .nav-link::after {
  display: none;
}
.gmenu .nav .nav-item .nav-link i {
  margin-right: 8px;
  color: #9a0000;
}
.gmenu .nav .dropdown .nav-link.active {
  background-color: #767676;
  color: #fff;
}
.gmenu .nav .dropdown .nav-link {
  transition: all 0.4s;
}
.gmenu .nav .dropdown .nav-link.active i {
  color: #fff;
}
.gmenu .nav .dropdown .dropdown-menu {
  display: none;
  width: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
}
.gmenu .nav .dropdown .dropdown-menu li {
  background-color: #767676;
  border-top: 1px solid #ccc;
}
.gmenu .nav .dropdown .dropdown-menu .dropdown-item {
  height: 100%;
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
  padding-left: 1rem;
  padding-right: 1rem;
  color: #fff;
  font-size: 13px;
  background-color: inherit;
  white-space: normal;
}
.gmenu .nav .dropdown .dropdown-menu .dropdown-item:hover {
  background-color: #333;
}
.gmenu .nav .dropdown .dropdown-menu .dropdown-item.active {
  background-color: #767676;
}
.gmenu .nav .dropdown .dropdown-submenu {
  position: relative;
}
.gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
}
.gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu li {
  border-left: 1px solid #ccc;
}
.gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu.menu2 {
  width: 300%;
  display: flex;
  flex-wrap: wrap;
}
.gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu.menu2 li {
  width: 33%;
}
.gmenu .nav .dropdown .dropdown-submenu > .dropdown-item:after {
  display: block;
  content: " ";
  float: right;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-left-color: #fff;
  margin-top: 5px;
  margin-right: -10px;
}
.gmenu .nav .dropdown .dropdown-submenu.two-lines > .dropdown-item:after {
  margin-right: 0;
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translate(0%, -50%);
  margin-top: 0;
}
.gmenu .nav .dropdown .dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  border-left: none;
  border-right: 1px solid #fff;
}
.gmenu .nav .nav-quicklinks {
  display: block;
  border-bottom: 1px solid #ccc;
}
@media screen and (min-width: 769px) {
  .gmenu .nav .nav-quicklinks {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .gmenu {
    display: none;
    margin-bottom: 10px;
  }
  .gmenu .container {
    padding-left: 0;
    padding-right: 0;
  }
  .gmenu .nav {
    border: none;
    border-bottom: 1px solid #ccc;
  }
  .gmenu .nav:first-of-type {
    border: none;
  }
  .gmenu .nav .nav-item::after {
    display: none;
  }
  .gmenu .nav .nav-item .nav-link {
    background-color: #000;
    color: #fff;
    border-top: 1px solid #ccc;
  }
  .gmenu .nav .nav-item .nav-link:hover {
    opacity: 1;
  }
  .gmenu .nav .nav-item .nav-link i {
    color: #fff;
  }
  .gmenu .nav .nav-item .nav-link:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #fff;
    margin-top: 5px;
    margin-right: -10px;
  }
  .gmenu .nav .nav-item .nav-link.active {
    background-color: #e2e6e9;
    color: #333;
  }
  .gmenu .nav .nav-item .nav-link.active i {
    color: #9a0000;
  }
  .gmenu .nav .nav-item .nav-link.active:after {
    border-color: transparent;
    border-width: 5px 5px 0 5px;
    border-top-color: #333;
    margin-top: 10px;
    margin-right: -11px;
  }
  .gmenu .nav .dropdown:hover > .dropdown-menu {
    display: none;
  }
  .gmenu .nav .dropdown br {
    display: none;
  }
  .gmenu .nav .dropdown .dropdown-menu {
    display: none;
    position: relative;
  }
  .gmenu .nav .dropdown .dropdown-menu li {
    border-top: none;
    background-color: #fff;
  }
  .gmenu .nav .dropdown .dropdown-menu .dropdown-item {
    color: #000;
  }
  .gmenu .nav .dropdown .dropdown-menu .dropdown-item i {
    display: none;
  }
  .gmenu .nav .dropdown .dropdown-menu .dropdown-item img {
    display: none;
  }
  .gmenu .nav .dropdown .dropdown-menu .dropdown-menu {
    left: 0 !important;
    padding-left: 20px;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu li {
    border-left: none;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu.menu2 {
    width: 100%;
    display: block;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-menu.menu2 li {
    width: 100%;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-item:after {
    border-left-color: #333;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-item.active {
    background-color: #e2e6e9;
  }
  .gmenu .nav .dropdown .dropdown-submenu > .dropdown-item.active:after {
    border-color: transparent;
    border-width: 5px 5px 0 5px;
    border-top-color: #333;
    margin-top: 7px;
    margin-right: -11px;
  }
  .gmenu .nav .dropdown .dropdown-submenu.two-lines > .dropdown-item:after {
    margin-right: 0;
    margin-top: 0;
  }
  .gmenu .nav .dropdown-submenu:hover > .dropdown-menu {
    display: none;
  }
}

/* ---------------------------------
 パンくず
-----------------------------------*/
.bread {
  margin-top: 8px !important;
  padding-left: 0 !important;
  white-space: nowrap;
}

.bread li {
  list-style-type: none !important;
}

.bread li:last-child {
  white-space: normal;
}

/* ---------------------------------
 コンテナ
-----------------------------------*/
.container {
  max-width: 1230px;
}

/* ---------------------------------
 メインコンテンツ
-----------------------------------*/
.contents {
  padding-bottom: 50px;
  line-height: 1.8;
}

/* ---------------------------------
 2カラム
-----------------------------------*/
@media screen and (min-width: 993px) {
  .c2 > .container {
    display: flex;
    justify-content: space-between;
  }
}

/* ---------------------------------
 見出し
-----------------------------------*/
.sub_ttl_h1 .fas {
  color: #9a0000;
}

.c1 .contents {
  font-size: 1.4rem;
  padding-left: 8px;
}

.contents h1 {
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  margin-bottom: 6rem;
}

.contents h3,
.contents h4,
.contents h5 {
  font-weight: normal;
}

.contents h2 {
  color: #000;
  font-size: 2rem;
  border-left: solid 10px #ae3333;
  padding-left: 12px;
  margin-bottom: 3rem;
  margin-top: 3rem;
}

.contents h3 {
  color: #ae3333;
  font-size: 1.8rem;
  margin-bottom: 3rem;
  margin-top: 4rem;
}

.contents h4 {
  border-bottom: solid 2px #151515;
  padding-bottom: 1.5rem;
  font-size: 1.6rem;
  color: #000;
  margin-bottom: 1.5rem;
  margin-top: 2.5rem;
}

.contents h5 {
  font-size: 1.6rem;
  color: #000;
  line-height: 1.5;
  margin-bottom: 1.3rem;
  margin-top: 2.3rem;
}

.contents h6 {
  font-size: 1.6rem;
  margin-bottom: 1.3rem;
  margin-top: 2.1rem;
}

.contents p {
  margin-bottom: 10px;
}

.contents img {
  max-width: 100%;
  height: auto;
}

/* ---------------------------------
 サブページ
-----------------------------------*/
.c2 .contents {
  font-size: 1.4rem;
  max-width: calc(100% - 261px);
  color: #333;
  padding-bottom: 120px;
  width: 959px;
  padding: 0 20px 120px 23px;
  border-right: 1px solid #ccc;
  margin-bottom: 20px;
}
@media screen and (max-width: 992px) {
  .c2 .contents {
    max-width: 100%;
    border-right: none;
  }
}

@media screen and (min-width: 1201px) {
  .c2 .contents {
    max-width: calc(100% - 281px);
  }
}
.c2 .contents .container {
  padding-left: 0;
  padding-right: 0;
}

#sub02 {
  font-size: 1.4rem;
  color: #707070;
  padding-bottom: 120px;
}

.contents a,
#sub02 a {
  color: #707070;
}

.sub_contents .fas {
  color: #9a0000;
  font-weight: normal;
  padding-right: 10px;
}

.sub_contents ol,
.contents ol {
  margin-bottom: 15px;
  margin-top: 15px;
}

.sub_contents ul,
.contents ul {
  margin-bottom: 15px;
  margin-top: 15px;
}

.sub_contents ul.menu_links {
  margin-top: 0;
  margin-bottom: 0;
}

.sub_contents .brackets-number-list,
.c1 .contents .brackets-number-list {
  padding-left: 1.8rem;
}

.sub_contents .brackets-number-list li,
.c1 .contents .brackets-number-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-number-list li:before,
.c1 .contents .brackets-number-list li:before {
  content: "＜" counter(cnt) "＞ ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.c1 .contents .brackets-round-number-list {
  padding-left: 2rem;
}

.c1 .contents .brackets-round-number-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.c1 .contents .brackets-round-number-list li:before {
  content: "（" counter(cnt) "） ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents .brackets-number-list,
.c2 .contents .brackets-number-list {
  text-indent: -1rem;
  padding-left: 4rem;
}

.sub_contents .brackets-number-list li,
.c2 .contents .brackets-number-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-number-list li:before,
.c2 .contents .brackets-number-list li:before {
  content: "＜" counter(cnt) "＞ ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents .brackets-round-number-list,
.c2 .contents .brackets-round-number-list {
  text-indent: -1rem;
  padding-left: 4rem;
}

.sub_contents .brackets-round-number-list li,
.c2 .contents .brackets-round-number-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-round-number-list li:before,
.c2 .contents .brackets-round-number-list li:before {
  content: "（" counter(cnt) "） ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents .brackets-square-list,
.c2 .contents .brackets-square-list {
  padding-left: 4rem;
  text-indent: -1rem;
}

.sub_contents .brackets-square-list li,
.c2 .contents .brackets-square-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-square-list li:before,
.c2 .contents .brackets-square-list li:before {
  content: "［" counter(cnt) "］ ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.c2 .contents .brackets-curly-list {
  text-indent: -1rem;
  padding-left: 4rem;
}

.c2 .contents .brackets-curly-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.c2 .contents .brackets-curly-list li:before {
  content: "｛" counter(cnt) "｝ ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents .brackets-angles-list,
.c2 .contents .brackets-angles-list {
  text-indent: -1rem;
  padding-left: 4rem;
}

.sub_contents .brackets-angles-list li,
.c2 .contents .brackets-angles-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-angles-list li:before,
.c2 .contents .brackets-angles-list li:before {
  content: "「" counter(cnt) "」 ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents .brackets-sumi-list,
.c2 .contents .brackets-sumi-list {
  text-indent: -1rem;
  padding-left: 4rem;
}

.sub_contents .brackets-sumi-list li,
.c2 .contents .brackets-sumi-list li {
  counter-increment: cnt;
  list-style-type: none;
}

.sub_contents .brackets-sumi-list li:before,
.c2 .contents .brackets-sumi-list li:before {
  content: "【" counter(cnt) "】 ";
  margin-left: -1.6em;
  display: inline-block;
  margin-right: 3px;
}

.sub_contents ul li:not([class]),
.contents ul li {
  position: relative;
  margin-bottom: 0px;
  padding-left: 18px;
}

.sub_contents ol li,
.contents ol li {
  position: relative;
  margin-bottom: 0px;
}

.sub_contents ol li,
.contents ol li {
  list-style-type: decimal;
}

.contents ol.alpha li {
  list-style-type: upper-alpha;
}

.contents ol ul li {
  list-style-type: none;
}

.contents ol.alpha ul li {
  list-style-type: none;
}

.contents ul li:before {
  background-color: #ccc;
  border-radius: 50%;
  content: "";
  width: 6px;
  height: 6px;
  font-size: 0.8rem;
  position: absolute;
  left: 0;
  top: 10px;
}

.sub_contents ul li:not([class]):before {
  background-color: #ccc;
  border-radius: 50%;
  content: "";
  width: 6px;
  height: 6px;
  font-size: 0.8rem;
  position: absolute;
  left: 0;
  top: 10px;
}

.sub_contents .caret-list li:before,
.contents .caret-list li:before {
  top: 0 !important;
  transform: translate(0%, 0);
}

.sub_contents .check-list li:before,
.contents .check-list li:before {
  top: 4px !important;
  transform: translate(0%, 0);
}

.contents table th {
  background: #e2e6e9;
  padding: 10px 20px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  font-weight: normal;
  vertical-align: top;
}

.contents table td {
  background: #f2f4f6;
  padding: 10px 20px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  vertical-align: top;
}

.contents #bread li a {
  color: #707070;
}

.contents table.colorless * {
  border: none;
  background-color: transparent;
}

.contents table {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.c2 .contents a.btn {
  text-decoration: none;
}

.sub_contents {
  width: 260px;
  font-size: 1.6rem;
  padding-top: 42px;
  padding-left: 20px;
}

@media screen and (min-width: 1201px) {
  .sub_contents {
    width: 280px;
  }
}
.sub_contents ol li,
.sub_contents ol li a,
.sub_contents ul li,
.sub_contents ul li a {
  font-size: 14px;
}

.sub_contents p {
  font-size: 14px;
  line-height: 1.8;
}

.sub_contents.news-archive {
  display: block;
}

.sub_contents li {
  border-bottom: 2px solid #fff;
  line-height: 1.8;
}

.sub_contents li.menu_ttl {
  line-height: 1.2;
}

.sub_contents li:last-child {
  border-bottom: 0;
}

.sub_contents .main_ttl {
  background: #e2e6e9;
  color: #000;
  width: 100%;
  display: block;
  font-size: 1.6rem;
  font-weight: normal;
}

.sub_contents .main_ttl span {
  padding: 10px 10px 10px 20px;
  display: inline-block;
}

.sub_contents ul .menu_ttl a {
  padding: 10px 20px;
  width: 100%;
  display: block;
}

.sub_contents ul li.subttl {
  background: #565d63;
  color: #fff;
  padding: 10px 0 0 0;
  width: 100%;
  display: block;
  font-size: 1.6rem;
}

.sub_contents ul li span.first {
  display: block;
  padding: 0 0 10px 20px;
}

.sub_contents ul li a.first {
  background: #565d63;
  color: #fff;
  display: block;
  padding: 0 0 10px 20px;
}

nav.sub_menu ul li a {
  background: #f2f4f6;
  padding: 10px 0;
}

.sub_contents ul li.active {
  background: #ddaaaa;
  padding: 10px 10px 10px 40px;
  font-size: 1.6rem;
  color: #000;
}

.sub_contents li ul li a:hover {
  background: #ddaaaa;
  text-decoration: none;
}

.sub_contents li ul li a {
  background: #f2f4f6;
  color: #000;
  width: 100%;
  display: block;
  padding: 10px 20px 10px 40px;
  font-size: 1.6rem;
}

.sub_contents ul .main_ttl li:last-of-type {
  border: none;
}

@media screen and (max-width: 767px) {
  .c2 .contents {
    padding: 0 0 80px 0;
    border-right: none;
    margin-bottom: 0;
  }
  .c1 .contents {
    padding-left: 0;
  }
  /* ---------------------------------
   見出し
  -----------------------------------*/
  .sub_ttl_h1 {
    padding-bottom: 15px;
  }
  h2 {
    font-size: 3rem;
  }
  .sub_ttl_h1 {
    font-size: 3.6rem;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 992px) {
  /*サブメニュー*/
  .sub_contents {
    max-width: none;
    width: 100%;
    margin-bottom: 3rem;
    padding-top: 0;
    padding-left: 0;
  }
  /* ---------------------------------
  サブページ
  -----------------------------------*/
  /*コンテンツ*/
  .contents {
    font-size: 1.4rem;
    max-width: 100%;
    margin-right: 0;
    border-right: none;
    margin-bottom: 0;
  }
  #sub02 {
    font-size: 1.4rem;
    max-width: 100%;
    padding: 0 0 40px 0;
  }
  .contents ul li:before {
    top: 7px;
  }
}
@media screen and (max-width: 990px) and (min-width: 768px) {
  nav.global_nav .menu li,
  nav.global_nav .menu li:hover a {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 1024px) and (min-width: 991px) {
  nav.global_nav .menu li,
  nav.global_nav .menu li:hover a {
    font-size: 1.5rem;
  }
}
/* ---------------------------------
 FAQ
-----------------------------------*/
.acd-check {
  display: none;
}

.acd-label {
  display: block;
  margin-bottom: 1px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.acd-label:hover {
  color: #ff0000;
  cursor: pointer;
}

.acd-content {
  background: #f5f5f5;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  visibility: hidden;
}

.acd-check:checked + .acd-content {
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}

/* ---------------------------------
 その他
-----------------------------------*/
.pdf-umekomi {
  position: relative;
  width: 100%;
  padding: 75% 0 0 0;
}

.pdf-umekomi iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.list-style-type-none {
  list-style-type: none !important;
}

.list-style-type-none li:before {
  content: none !important;
}

#news_list .article:not(:last-child) {
  padding-bottom: 30px;
  border-bottom: dotted 1px #ccc;
  margin-bottom: 20px;
}

#news_list .article {
  overflow: hidden;
}

.archivedate {
  display: inline-block;
  vertical-align: middle;
}

.archivetag {
  display: inline-block;
  width: 48px;
  margin-left: 0.5rem;
  padding: 5px 0;
  background-color: #9a0000;
  text-align: center;
  font-size: 10px;
  line-height: 1;
  color: #fff;
}

.archivetag.kic {
  background-color: #d04465;
}

.archivetag.suzaku {
  background-color: #ed7020;
}

.archivetag.bkc {
  background-color: #2180c1;
}

.archivetag.oic {
  background-color: #6baa31;
}

.archivetag.share {
  background-color: #666;
}

.bb-1-ccc {
  border-bottom: 1px solid #ccc !important;
}

.check-list li:before,
.caret-list li:before {
  background-color: transparent !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900;
  left: 1em;
  color: #870002;
  width: auto !important;
  height: auto !important;
}
.check-list li:before {
  content: "\f00c" !important;
}

.caret-list li:before {
  content: "\f0da" !important;
  font-size: 1.4rem !important;
}

.fill-circle-list li:before {
  background-color: transparent;
  content: "●" !important;
}

.lower-alpha-list li {
  list-style-type: lower-alpha !important;
}

.upper-latin-list > li {
  list-style-type: upper-latin !important;
}

.circle-number-list {
  counter-reset: list;
  list-style-type: none;
  padding-left: 3.3rem !important;
}

.circle-number-list li {
  list-style-type: none !important;
  line-height: 25px;
}

.circle-number-list li:not(:last-child) {
  margin-bottom: 15px !important;
}

.sub_contents > li:before,
.circle-number-list > li:before {
  background-color: transparent;
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: -35px;
  width: 25px;
  height: 25px;
  line-height: 25px;
  background: #565d63;
  text-align: center;
  color: #fff;
  top: 1.2rem;
  transform: translateY(-50%);
  border-radius: 50%;
}

.reset-list li:before {
  background-color: transparent;
  content: none !important;
}

.reset-list li {
  padding-left: 0 !important;
}

.btn_to_top {
  position: fixed;
  right: 10px;
  bottom: 10px;
  background-color: #565d63;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 4px;
}

.btn_to_top:hover {
  color: #fff;
  text-decoration: none;
}

.btn_to_top i {
  font-size: 2rem;
}

.movie-wrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .btn_to_top {
    right: 10px;
  }
}

/* アコーディオン */
.c1 .contents button[data-toggle="collapse"] {
  color: #ae3333;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  outline: 0;
}

.c1 .contents button[data-toggle="collapse"]::after {
  content: "\f106";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  pointer-events: none;
  color: #000;
}

.c1 .contents button[data-toggle="collapse"].collapsed::after {
  content: "\f107";
}

.c1 .contents .accbox h2,
.c1 .contents .accbox h3 {
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.c1 .contents .accbox h2 {
  background-color: #f7e6e6;
}

.c1 .contents .accbox h3 {
  padding: 7px 0 7px 15px;
}

.accbox label {
  display: block;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.accbox label h2:after,
.accbox label h3:after {
  color: #000;
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  pointer-events: none;
  padding-right: 1rem;
}

.accbox input {
  display: none;
}

.accbox .accshow {
  max-height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s linear, max-height 0.4s linear;
}

.cssacc:checked + label + .accshow {
  max-height: 10000px;
  opacity: 1;
}

.cssacc:checked + label h2:after,
.cssacc:checked + label h3:after {
  content: "\f106";
}

@media screen and (max-width: 767px) {
  .c1 .contents .accbox h2,
  .c1 .contents .accbox h3 {
    padding-right: 1rem;
  }
}

.icon_pdf,
.icon_external,
.icon_xlsl,
.icon_docx {
  padding-right: 20px;
}

.icon_external {
  background: url("/lib/img/icon/icon-external.gif") no-repeat right center;
}

.icon_pdf {
  background: url("/lib/img/icon/icon-pdf.gif") no-repeat right center;
}

.icon_xlsl {
  background: url("/lib/img/icon/icon-xls.gif") no-repeat right center;
}

.icon_docx {
  background: url("/lib/img/icon/icon-doc.gif") no-repeat right center;
}

ul#msta_langArea li {
  display: inline;
  cursor: pointer;
}

.section-form input[type="radio"] {
  display: inline;
  margin-right: 3px;
  position: relative;
  top: -4px;
}

.section-form input[type="checkbox"] {
  border: solid 1px #ccc;
  border-radius: 4px;
  background-color: #fff;
  display: inline-block;
  margin-right: 5px;
  vertical-align: 0;
}

.link-ds a,
.link-ds i {
  font-size: 2.2rem;
}

.link-ds a,
.link-ds a:hover {
  color: #fff;
}

.thumb-float-left {
  float: left;
  margin: 0 15px 15px 0;
}

@media screen and (max-width: 767px) {
  .link-ds {
    margin-top: 10px;
  }
  .link-ds a:hover {
    color: #565d63;
  }
  .link-ds a,
  .link-ds i {
    color: #565d63;
    font-size: 1.6rem;
  }
  .thumb-float-left {
    float: none;
    margin: 0 0 15px;
  }
}

/* ---------------------------------
 印刷時スタイル
-----------------------------------*/
@media print {
  header,
  footer,
  .sub_contents {
    display: none !important;
  }
  .c2 .contents {
    width: 100%;
  }
  .accbox .accshow {
    max-height: none;
    overflow: auto;
    opacity: 1;
  }
  .acd-content {
    height: auto;
    opacity: 1;
    visibility: visible;
  }
}

.article {
  margin-bottom: 50px;
}

.subttl_nav {
  display: none;
}

span.int_t01 {
  color: #ff3399;
  margin-right: 0.5em;
}

span.int_t02 {
  color: #339999;
  margin-right: 0.5em;
}

p.interview {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.c2 .contents a {
  text-decoration: underline;
}

.c2 .contents a:hover {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  main .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.web_search_block div .form-control {
  height: calc(1.5em + 1.2rem + 2px);
  padding: 0.6rem 1.2rem;
  font-size: 1.6rem;
  border-radius: 0.4rem;
}

.web_search_block div .form-control:focus {
  box-shadow: 0 0 0 0.4rem rgba(154, 0, 0, 0.25);
}

.web_search_block div .btn {
  padding: 0.6rem 1.2rem;
  font-size: 1.6rem;
  border-radius: 0.4rem;
}

.gmenu .nav .dropdown .nav-link {
  padding: 0.8rem 1.6rem;
}
@media screen and (min-width: 769px) and (max-width: 992px) {
  .gmenu .nav .dropdown .nav-link {
    padding: 0.8rem 0;
  }
}

.gmenu .nav .dropdown .dropdown-menu {
  min-width: 16rem;
  margin: 0.2rem 0 0;
  font-size: 1.6rem;
}

.gmenu .nav .dropdown .dropdown-menu .dropdown-item {
  padding-top: 1.12rem;
  padding-bottom: 1.12rem;
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}

.tooltip-arrow::before {
  border-top-color: #333;
}

.tooltip-inner {
  padding: 0.6rem 1.25rem 0.75rem;
  background-color: #333;
  font-size: 1.5em;
}

.container {
  padding-right: 15px;
  padding-left: 15px;
}
@media screen and (max-width: 768px) {
  main .container {
    padding-right: 0;
    padding-left: 0;
  }
}
main .container div.row {
  margin-left: -12px;
  margin-right: -12px;
}

main hr {
  margin: 2em 0;
}
main ul {
  padding-left: 0.3em;
}
main .list-unstyled li {
  padding-left: 0;
}
main .list-unstyled li::before {
  display: none;
}
main .olist-e {
  padding-left: 0.4em;
}
main .olist-e li {
  list-style-type: none;
  counter-increment: cnt;
}
main .olist-e li::before {
  content: counter(cnt) "）";
}
main .olist-se {
  padding-left: 0;
}
main .olist-se li {
  list-style-type: none;
  counter-increment: cnt;
}
main .olist-se li::before {
  content: "（" counter(cnt) "）";
}
main .contents .table-responsive {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
main .contents .table-responsive table {
  margin-top: 0;
  margin-bottom: 0;
}
main .underline-y {
  background: linear-gradient(transparent 60%, #ffe09e 60%);
}
main .underline-r {
  background: linear-gradient(transparent 60%, #ffc3d3 60%);
}
main .underline-g {
  background: linear-gradient(transparent 60%, #d0ffbc 60%);
}
main .underline-b {
  background: linear-gradient(transparent 60%, #cce5ff 60%);
}
@media screen and (max-width: 768px) {
  main .contents {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}
main .contents .tear-off {
  margin: 30px 0;
}
main .contents .tear-off .to-wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
main .contents .tear-off .to-wrap:last-of-type {
  margin-bottom: 0;
}
main .contents .tear-off .to-wrap .to-date {
  width: 80px;
}
@media screen and (max-width: 768px) {
  main .contents .tear-off .to-wrap .to-date {
    width: 70px;
  }
}
main .contents .tear-off .to-wrap .to-date .to-date-wrap {
  margin: 0;
  background-color: #9a0000;
  font-family: "Open Sans", sans-serif;
}
main .contents .tear-off .to-wrap .to-date .to-date-wrap .to-day {
  display: block;
  padding: 12px 0 0;
  font-family: "Noto Serif JP", serif;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 1.7em;
}
main .contents .tear-off .to-wrap .to-date .to-date-wrap .to-month {
  display: block;
  padding: 10px 0 16px;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 0.65em;
}
main .contents .tear-off .to-wrap .to-date .to-date-wrap .to-week {
  display: block;
  padding: 7px 0 5px;
  background-color: #272c32;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-size: 0.7em;
}
main .contents .tear-off .to-wrap .to-info {
  width: calc(100% - 80px - 20px);
}
@media screen and (max-width: 768px) {
  main .contents .tear-off .to-wrap .to-info {
    width: calc(100% - 70px - 15px);
  }
}
main .contents .tear-off .to-wrap .to-info .to-header {
  padding: 5px 0 0;
  margin: -5px 0 15px;
  border: none;
  font-size: 1.3em;
  color: #333;
}
@media screen and (max-width: 768px) {
  main .contents .tear-off .to-wrap .to-info .to-header {
    padding: 0;
    margin: 0 0 15px;
  }
}
main .contents .tear-off .to-wrap.to-small .to-date {
  width: 55px;
}
main .contents .tear-off .to-wrap.to-small .to-date .to-date-wrap .to-day {
  padding: 6px 0 0;
  font-size: 1.2em;
}
main .contents .tear-off .to-wrap.to-small .to-date .to-date-wrap .to-month {
  padding: 6px 0 6px;
  font-size: 0.6em;
}
main .contents .tear-off .to-wrap.to-small .to-date .to-date-wrap .to-week {
  padding: 6px 0 4px;
  font-size: 0.6em;
}
main .contents .tear-off .to-wrap.to-small .to-info {
  width: calc(100% - 55px - 20px);
}
@media screen and (max-width: 768px) {
  main .contents .tear-off .to-wrap.to-small .to-info {
    width: calc(100% - 55px - 15px);
  }
}
main .contents .topics {
  margin-top: 3rem;
  font-size: 16px;
}
main .contents .topics .topicsSlider {
  overflow: hidden;
  padding: 0 30px;
  margin-left: -30px;
  overflow: hidden;
  margin-left: calc(-1rem - 30px);
  margin-right: -1rem;
}
@media screen and (min-width: 769px) {
  main .contents .topics .topicsSlider {
    padding: 0 20px;
    margin-left: -20px;
    margin-right: 0;
  }
}
main .contents .topics .topicsSlider::before {
  content: "";
  position: absolute;
  top: 0;
  left: 30px;
  width: 30px;
  height: 100%;
  background-color: #fff;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  main .contents .topics .topicsSlider::before {
    width: 20px;
    left: 20px;
  }
}
main .contents .topics .topicsSlider p {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 0;
  font-size: 14px;
}
@media screen and (min-width: 769px) {
  main .contents .topics .topicsSlider p {
    font-size: inherit;
  }
}
main .contents .topics .topicsSlider a {
  text-decoration: none !important;
  color: #333 !important;
}
main .contents .topics .slick-arrow {
  z-index: 11;
  height: 100%;
  background-color: #efefef;
}
@media screen and (min-width: 769px) {
  main .contents .topics .slick-arrow:hover {
    opacity: 0.7;
  }
}
main .contents .topics .slick-arrow::before {
  font-family: inherit;
  color: #9a0000;
  opacity: 1;
}
main .contents .topics .slick-arrow.slick-prev {
  width: 30px;
  left: 30px;
}
@media screen and (min-width: 769px) {
  main .contents .topics .slick-arrow.slick-prev {
    width: 20px;
    left: 20px;
  }
}
main .contents .topics .slick-arrow.slick-prev::before {
  display: block;
  content: "▲";
  transform: rotate(-90deg);
  font-size: 14px;
}
main .contents .topics .slick-arrow.slick-next {
  right: 0;
  width: 30px;
}
@media screen and (min-width: 769px) {
  main .contents .topics .slick-arrow.slick-next {
    width: 20px;
  }
}
main .contents .topics .slick-arrow.slick-next::before {
  display: block;
  content: "▲";
  transform: rotate(90deg);
  font-size: 14px;
}
main .contents .topics .slick-slide {
  margin-left: 30px;
}
@media screen and (min-width: 769px) {
  main .contents .topics .slick-slide {
    margin-left: 20px;
  }
}
main .contents .topics .slick-slide a {
  display: block;
}
main .contents .topics .slick-slide img {
  width: 100%;
}
main .contents .topics .slick-slide p {
  margin-top: 10px;
  font-weight: 700;
}
main .contents .news {
  margin-top: 3rem;
  position: relative;
  font-size: 16px;
}
main .contents .news .nav {
  padding-left: 1rem;
  border-top-color: #ccc;
  margin-left: -1rem;
  margin-right: -1rem;
}
@media screen and (min-width: 769px) {
  main .contents .news .nav {
    margin-left: 0;
    margin-right: 0;
  }
}
main .contents .news .nav-item {
  margin-left: -1px;
  padding-left: 0;
  position: relative;
}
main .contents .news .nav-item::before {
  display: none !important;
}
main .contents .news .nav-item::after {
  position: absolute;
  top: 8px;
  right: 0;
  content: "";
  width: 1px;
  height: 24px;
  background-color: #ccc;
}
main .contents .news .nav-item:last-of-type::after {
  display: none;
}
main .contents .news .nav-link {
  padding: 0.5rem 1.5rem;
  cursor: pointer;
  color: #495057;
}
main .contents .news .nav-link.active {
  border-color: #ccc;
  border-bottom-color: #fff;
  font-weight: 700;
}
main .contents .news .listLink {
  position: relative;
  top: 10px;
  right: 0;
  list-style: none;
  text-align: right;
}
@media screen and (min-width: 577px) {
  main .contents .news .listLink {
    position: absolute;
    top: -10px;
    text-align: left;
  }
}
main .contents .news .listLink li::before {
  display: none;
}
main .contents .news .listLink a {
  font-size: 14px;
}
main .contents .news .listLink a i {
  margin-left: 5px;
  font-size: 18px;
  color: #9a0000;
}
main .contents .news .newsList {
  margin-top: 20px;
}
@media screen and (min-width: 577px) {
  main .contents .news .newsList {
    display: flex;
    flex-wrap: wrap;
  }
}
main .contents .news .newsList dt {
  display: flex;
  width: 20rem;
  font-weight: normal;
  font-size: 14px;
}
main .contents .news .newsList dt .date {
  width: 12rem;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  main .contents .news .newsList dt .date {
    font-weight: normal;
  }
}
main .contents .news .newsList dt .tag {
  align-self: flex-start;
  width: 4.8rem;
  margin-left: 0.8rem;
  padding: 5px 0;
  background-color: #9a0000;
  text-align: center;
  font-size: 10px;
  line-height: 1;
  color: #fff;
}
main .contents .news .newsList dt .tag.kic {
  background-color: #d04465;
}
main .contents .news .newsList dt .tag.suzaku {
  background-color: #ed7020;
}
main .contents .news .newsList dt .tag.bkc {
  background-color: #2180c1;
}
main .contents .news .newsList dt .tag.oic {
  background-color: #6baa31;
}
main .contents .news .newsList dt .tag.share {
  background-color: #666;
}
main .contents .news .newsList dd {
  margin-top: 5px;
  margin-bottom: 15px;
  font-size: 14px;
}
@media screen and (min-width: 769px) {
  main .contents .news .newsList dd {
    width: calc(100% - 20rem);
    margin-top: 0;
    margin-bottom: inherit;
    font-size: inherit;
  }
}
main .contents .news .newsList dd a {
  text-decoration: none !important;
  color: #333 !important;
}
main .contents .recommend {
  margin-top: 3rem;
  margin-bottom: -20px;
  font-size: 16px;
}
@media screen and (min-width: 577px) {
  main .contents .recommend {
    margin-top: 10px;
  }
}
@media screen and (min-width: 577px) {
  main .contents .recommend .recommendList {
    display: flex;
    flex-wrap: wrap;
    margin-right: -20px;
  }
}
main .contents .recommend .recommendList .card {
  margin-bottom: 20px;
  border: none;
}
@media screen and (min-width: 577px) {
  main .contents .recommend .recommendList .card {
    margin-bottom: 3rem;
    margin-right: 20px;
    width: calc((100% - 40px) / 2);
  }
}
@media screen and (min-width: 769px) {
  main .contents .recommend .recommendList .card {
    width: calc((100% - 60px) / 3);
  }
}
main .contents .recommend .recommendList .card img {
  width: 100%;
}
main .contents .recommend .recommendList .card a {
  text-decoration: none !important;
}
main .contents .recommend .recommendList .card a > div {
  padding-left: 0;
  padding-right: 0;
}
main .contents .recommend .recommendList .card .card-body {
  padding: 0 0 0 10px;
}
main .contents .recommend .recommendList .card .card-title {
  color: #333 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 0.5rem !important;
  margin-top: 0 !important;
}
main .contents .recommend .recommendList .card .card-text {
  font-size: 12px;
  line-height: 1.5;
  color: #333 !important;
  margin-bottom: 0 !important;
}
main .sub_contents .container {
  padding: 0;
}
main .sub_contents .h4 {
  margin-top: 2.5rem;
}

@media screen and (max-width: 768px) {
  main .sub_contents {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}
