@charset "UTF-8";


@keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes hide {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes vibrate {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(15deg);
  }
  50% {
    transform: rotate(-15deg);
  }
  75% {
    transform: rotate(15deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes vibrate02 {
  0% {
    transform: rotate(0deg) scale(1.2);
  }
  5% {
    transform: rotate(15deg) scale(1.2);
  }
  10% {
    transform: rotate(-15deg) scale(1.2);
  }
  15% {
    transform: rotate(15deg) scale(1.2);
  }
  20% {
    transform: rotate(0deg) scale(1);
  }
  100% {
    transform: rotate(0deg) scale(1);
  }
}
@keyframes burger-show {
  0% {
    right: -50%;
  }
  100% {
    right: 0%;
  }
}
@keyframes header-show {
  0% {
    top: -100px;
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}
a:hover {
  outline: none;
}
a:active {
  outline: none;
}
a:focus {
  outline: none;
}

@media screen and (min-width: 767px) { /* =================================
  hover
================================= */
  a {
    transition-timing-function: ease-out;
    transition-duration: 0.2s;
    transition-property: all;
  }
  .widelink {
    cursor: pointer;
    transition-timing-function: ease-out;
    transition-duration: 0.2s;
    transition-property: all;
  }
  .widelink .widelink__cover {
    position: relative;
    overflow: hidden;
  }
  .widelink .widelink__cover::before {
    position: absolute;
    z-index: 6;
    top: 45%;
    left: 50%;
    width: 100%;
    font-size: 1.4rem;
    color: #fff;
    text-align: center;
    content: "もっと見る";
    opacity: 0;
    transition-timing-function: ease-out;
    transition-duration: 0.15s;
    transition-property: opacity, top;
    transform: translate(-50%, -50%);
  }
  .widelink .widelink__cover::after {
    position: absolute;
    z-index: 5;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: rgb(61, 84, 138);
    background: linear-gradient(135deg, rgba(61, 84, 138, 0.7) 0%, rgba(100, 133, 209, 0.7) 100%);
    color: white;
    content: "";
    opacity: 0;
    transition-timing-function: ease-out;
    transition-duration: 0.15s;
    transition-property: opacity;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3d548a",endColorstr="#6485d1",GradientType=1);
  }
  .widelink .widelink__menu {
    position: relative;
    display: block;
    overflow: hidden;
  }
  .widelink .widelink__menu::before {
    position: absolute;
    z-index: 6;
    bottom: 12%;
    left: 50%;
    padding: 15px 9%;
    border: 1px solid #fff;
    border-radius: 50px;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    content: "詳しく見る";
    opacity: 0;
    transition-timing-function: ease-out;
    transition-duration: 0.15s;
    transition-property: opacity, bottom;
    transform: translateX(-50%);
  }
  .widelink .widelink__article {
    position: relative;
    overflow: hidden;
  }
  .widelink .widelink__article::before {
    position: absolute;
    z-index: 6;
    top: 45%;
    left: 50%;
    display: inline-block;
    width: 130px;
    height: 24px;
    background: url(../img/link_more.png) no-repeat center center;
    content: "";
    opacity: 0;
    transition-timing-function: ease-out;
    transition-duration: 0.15s;
    transition-property: opacity, top;
    transform: translate(-50%, -50%);
  }
  .widelink .widelink__article::after {
    position: absolute;
    z-index: 5;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 84, 142, 0.7);
    color: white;
    content: "";
    opacity: 0;
    transition-timing-function: ease-out;
    transition-duration: 0.15s;
    transition-property: opacity;
  }
  .widelink:hover a {
    text-decoration: none;
  }
  .widelink:hover .widelink__cover::before, .widelink:hover .widelink__article::before {
    top: 50%;
    opacity: 1;
  }
  .widelink:hover .widelink__cover::after, .widelink:hover .widelink__article::after {
    opacity: 1;
  }
  .widelink:hover .widelink__menu::before {
    bottom: 10%;
    opacity: 1;
  }
  .hoverBg .widelink__cover::before {
    content: none;
  }
  .hoverBg .widelink__cover::after {
    content: none;
  }
  .hoverBg:hover {
    background: #FFF8DB !important;
  }
  .hoverBg:hover a {
    text-decoration: underline !important;
  }
}
/*=================================
  button
=================================*/
.btnWrap {
  margin: 20px auto 30px;
  text-align: center;
}
.btnWrap.center {
  text-align: center;
}
.btnWrap.right {
  text-align: right;
}
.btnWrap > * + * {
  margin-top: 9px;
}

.btn--red {
  position: relative;
  display: block;
  padding: 19px 5px 17px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.428571;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .btn--red {
    padding: 1.2445095168vw 2.0497803807vw;
    font-size: clamp(15px, 1.317715959vw, 18px);
  }
}

.btn--ranking {
  position: relative;
  display: block;
  padding: 19px 5px 17px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.428571;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .btn--ranking {
    padding: 1.2445095168vw 2.0497803807vw;
    font-size: clamp(15px, 1.317715959vw, 18px);
  }
}
.btn--ranking::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 7px -2px 0;
  background: url(../img/common/icon/icon_crown_white.svg) no-repeat center center;
  background-size: contain;
  content: "";
}

.btn--blue {
  display: inline-block;
  padding: 15px;
  background: #304A85;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.btn--more {
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 20px 15px;
  border: 1px solid #004DA1;
  border-radius: 3px;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.42857;
  color: #000;
  text-align: center;
  text-decoration: none;
}
.btn--more::before {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin: 0 8px -3px 0;
  background: url(../img/common/icon/icon_arrow_right_blue.svg) no-repeat center center;
  background-size: contain;
  content: "";
}

@media screen and (min-width: 767px) {
  /*=================================
    button
  =================================*/
  .btnWrap {
    display: flex;
    justify-content: center;
  }
  .btnWrap > * + * {
    margin: 0 20px;
  }
  .btn--red {
    display: inline-block;
    padding: 17px 28px;
    border-radius: 5px;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.444444;
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .btn--red:hover {
    box-shadow: none;
    transform: translate(4px, 4px);
  }
  .btn--ranking {
    display: inline-block;
    padding: 17px 28px;
    border-radius: 5px;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.444444;
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .btn--ranking::before {
    width: 20px;
    height: 20px;
    margin: 0 13px -2px 0;
  }
  .btn--ranking:hover {
    box-shadow: none;
    transform: translate(4px, 4px);
  }
  .btn--blue {
    padding: 23px 37px;
    font-size: 2.2rem;
  }
  .btn--blue:hover {
    opacity: 0.9;
  }
  .btn--more:hover {
    background: #004DA1;
    color: #fff;
  }
  .btn--more:hover::before {
    background: url(../img/common/icon/icon_arrow_right_white.svg) no-repeat center center;
    background-size: contain;
    transition-timing-function: ease-out;
    transition-duration: 0.5s;
    transition-property: all;
  }
}
/*=================================
  title
=================================*/
.ttl--base {
  position: relative;
  margin: 0 0 40px;
  padding: 0 0 0 48px;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
}
.ttl--base::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 28px;
  height: 24px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.ttl--base.center {
  text-align: center;
}
.ttl--base.white {
  color: #fff;
}
.ttl--base .sm {
  font-size: 2rem;
}

.ttl--page {
  padding: 27px 1% 36px;
}
.ttl--page__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.ttl--page .ttl {
  position: relative;
  padding: 0 0 0 43px;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.5;
}
.ttl--page .ttl::before {
  position: absolute;
  top: 15px;
  left: 0;
  display: inline-block;
  width: 34px;
  height: 30px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.ttl--page .text {
  margin-top: 7px;
  font-size: 1.6rem;
  font-weight: 400;
}

.balloon--yellow {
  position: relative;
  display: inline-block;
  padding: 0 16px;
  background: #FFE678;
  box-shadow: 3px 4px 0px 0px #DEBA10;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 3;
  color: #000;
}
.balloon--yellow::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #DEBA10;
  content: "";
}
.balloon--yellow::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #FFE678 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #DEBA10);
}
.balloon--yellow .icon {
  display: inline-block;
  width: 31px;
  margin: 0 13px 0 0;
  vertical-align: middle;
}

.balloon--red {
  position: relative;
  display: inline-block;
  padding: 0 16px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 3;
  color: #fff;
}
.balloon--red::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.balloon--red::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.balloon--red .icon {
  display: inline-block;
  width: 31px;
  margin: 0 13px 0 0;
  vertical-align: middle;
}

.balloon--blue {
  position: relative;
  display: inline-block;
  padding: 0 16px;
  background: #004DA1;
  box-shadow: 3px 4px 0px 0px #00336B;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 3;
  color: #fff;
}
.balloon--blue::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #00336B;
  content: "";
}
.balloon--blue::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #004DA1 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #00336B);
}
.balloon--blue .icon {
  display: inline-block;
  width: 31px;
  margin: 0 13px 0 0;
  vertical-align: middle;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    title
  =================================*/
  .ttl--base {
    margin: 0 0 30px;
    padding: 0 0 0 27px;
    font-size: 2.2rem;
    line-height: 1.545454;
  }
  .ttl--base::before {
    top: 9px;
    width: 20px;
    height: 17px;
  }
  .ttl--base .sm {
    display: block;
    font-size: 1.6rem;
  }
  .ttl--page {
    padding: 30px 4.358974359%;
  }
  .ttl--page .ttl {
    padding: 0 0 0 27px;
    font-size: 2.2rem;
  }
  .ttl--page .ttl::before {
    top: 8px;
    width: 20px;
    height: 17px;
  }
  .ttl--page .text {
    margin-top: 10px;
    padding-left: 27px;
    font-size: 1.4rem;
  }
  .balloon--yellow {
    padding: 0 9px;
    line-height: 3.5;
  }
  .balloon--yellow::after {
    bottom: -14px;
    border-width: 14px 8px 0 8px;
  }
  .balloon--yellow .icon {
    margin: 0 12px 0 0;
  }
  .balloon--red {
    padding: 0 9px;
    line-height: 3.5;
  }
  .balloon--red::after {
    bottom: -14px;
    border-width: 14px 8px 0 8px;
  }
  .balloon--red .icon {
    margin: 0 12px 0 0;
  }
  .balloon--blue {
    padding: 0 9px;
    line-height: 3.5;
  }
  .balloon--blue::after {
    bottom: -14px;
    border-width: 14px 8px 0 8px;
  }
  .balloon--blue .icon {
    margin: 0 12px 0 0;
  }
}
/*=================================
  table
=================================*/
table {
  width: 100%;
  margin: 30px 0 50px;
  border: 1px solid #E3E3E3;
  border-spacing: 0;
  border-collapse: collapse;
}
table caption {
  position: relative;
  margin: 0 0 30px;
  caption-side: top;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
table caption::before {
  display: inline-block;
  width: 19px;
  height: 17px;
  margin: 0 9px -2px 0;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
table thead th, table thead td {
  background: #004DA1;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  color: #fff;
  text-align: center;
}
table tbody tr td:nth-of-type(1) {
  background: #F5F6F9;
}
table tbody tr td.gray {
  background: #F5F6F9;
}
table tbody tr td:nth-of-type(3) {
  background: #FFF7D4;
}
table tbody tr td.yellow {
  background: #FFF7D4;
}
table th {
  padding: 19px 17px;
  background: #004DA1;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.75;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 767px) {
  table th {
    min-width: 90px;
  }
}
table td {
  padding: 19px 12px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.75;
}
table th, table td {
  border: 1px solid #E3E3E3;
  vertical-align: middle;
}
table.scroll {
  display: block;
  overflow: auto;
  border: none;
  white-space: nowrap;
}
table.scroll::-webkit-scrollbar {
  height: 5px;
}
table.scroll::-webkit-scrollbar-track {
  background: #f1f1f1;
}
table.scroll::-webkit-scrollbar-thumb {
  background: #bcbcbc;
}

.table--comparison {
  overflow: auto;
  margin: 50px 0;
}
.table--comparison table {
  border-spacing: 0px;
  border-collapse: collapse;
}
.table--comparison table th, .table--comparison table td {
  font-size: 1.6rem;
  text-align: center;
}
.table--comparison table th {
  max-width: 200px;
  text-align: center;
}
.table--comparison table td {
  max-width: 200px;
  background: #fff !important;
}
.table--comparison table img {
  display: block;
  max-width: 180px;
  height: auto;
  margin: 0 auto !important;
}
.table--comparison caption {
  max-width: 1140px;
  margin: 0 0 20px;
}
.table--comparison .fixedCell {
  position: sticky;
  z-index: 500;
  left: 0;
  min-width: 150px;
  background: #FFF7D4 !important;
  font-weight: 400;
  color: #000;
}
.table--comparison .fixedCell::before {
  position: absolute;
  top: 0;
  left: 0px;
  display: block;
  width: 100%;
  height: 100%;
  border-right: 1px solid #E3E3E3;
  content: "";
}
.table--comparison .fixedCell::after {
  position: absolute;
  top: 0;
  left: -1px;
  display: block;
  width: 100%;
  height: 100%;
  border-left: 1px solid #E3E3E3;
  content: "";
}
.table--comparison .specTb__btn {
  position: relative;
  display: block;
  padding: 11px 5px 10px;
  border-radius: 3px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.46153;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.table--comparison .specTb__btn::before {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin: 0 7px -2px 0;
  background: url(../img/common/icon/icon_arrow_right_white.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .table--comparison .specTb__btn {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .table--comparison .specTb__btn:hover {
    box-shadow: none;
    transform: translate(4px, 4px);
  }
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .table--comparison .specTb__btn {
    padding: 1.2445095168vw 2.0497803807vw;
    font-size: clamp(15px, 1.317715959vw, 18px);
  }
}

.scrollAnnounce {
  display: none;
}

@media screen and (max-width: 767px) {
  /*=================================
    table
  =================================*/
  table {
    margin: 20px 0 40px;
    /* スクロールのつまみ部分の設定 */
  }
  table:not(.noscroll) {
    display: block;
    overflow-x: auto;
    border: none;
    white-space: nowrap;
  }
  table caption {
    margin: 15px 0;
    font-size: 1.5rem;
  }
  table th, table td {
    padding: 14px 20px;
  }
  table::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  table::-webkit-scrollbar-track {
    border-radius: none;
    background: #d6d6d6;
  }
  table::-webkit-scrollbar-thumb {
    background: #004DA1;
  }
  .table--comparison {
    margin: 38px 0 60px;
  }
  .table--comparison table {
    white-space: normal;
  }
  .table--comparison table th, .table--comparison table td {
    padding: 12px;
    font-size: 1.8rem;
  }
  .table--comparison table th {
    min-width: 200px;
  }
  .table--comparison table th.spec {
    min-width: auto;
  }
  .table--comparison table img {
    max-width: 100%;
  }
  .table--comparison caption {
    margin: 0 0 18px;
    text-align: left;
  }
  .table--comparison .fixedCell {
    top: -1px;
    left: -2px;
    min-width: 110px;
    font-size: 1.6rem;
    font-weight: 700;
  }
  .table--comparison .fixedCell::after {
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
  }
  .table--comparison .specTb__btn {
    font-size: 1.9rem;
  }
  .table--comparison .specTb__btn::before {
    width: 20px;
    height: 20px;
    margin: 0 7px -4px 0;
  }
  .scrollAnnounce {
    display: block;
    text-align: center;
  }
  .scrollAnnounce .text {
    position: relative;
    padding: 3px 6px;
    background: #304A85;
    font-size: 1.3rem;
    font-weight: 600;
    color: #fff;
  }
  .scrollAnnounce .text::after {
    position: absolute;
    bottom: -7px;
    left: 50%;
    display: inline-block;
    border-width: 7px 6.5px 0 6.5px;
    border-style: solid;
    border-color: #304A85 transparent transparent transparent;
    content: "";
    transform: translateX(-50%);
  }
}
/*=================================
  breadcrumb
=================================*/
.breadcrumb {
  padding: 14px 1%;
  border-bottom: 1px solid #DEDEDE;
}
.breadcrumb ul li {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1;
  color: #B8B8B8;
}
.breadcrumb ul li a {
  margin-right: 13px;
  font-size: 1.4rem;
  line-height: 1;
  color: #000;
}
@media screen and (min-width: 767px) {
  .breadcrumb ul li a:hover {
    color: #304A85;
    text-decoration: none;
  }
}
.breadcrumb ul li a::after {
  display: inline-block;
  margin-left: 13px;
  border-width: 5.5px 0 5.5px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #B8B8B8;
  content: "";
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    breadcrumb
  =================================*/
  .breadcrumb {
    padding: 10px 4.358974359%;
  }
  .breadcrumb ul li {
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .breadcrumb ul li a {
    margin-right: 7px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .breadcrumb ul li a::after {
    margin-bottom: -1px;
    margin-left: 7px;
  }
}
/*=================================
  pager
=================================*/
.pager {
  display: flex;
  margin: 50px auto 0;
  justify-content: space-between;
  align-items: center;
}
.pagerList__item {
  display: inline-block;
  margin-right: 3px;
}
.pagerList__item a, .pagerList__item span {
  display: block;
  padding: 13px 16px;
  font-size: 1.5rem;
  line-height: 1;
}
.pagerList__item a {
  background: #fff;
  color: #304A85;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .pagerList__item a:hover {
    background: #304A85;
    color: #fff;
  }
}
.pagerList__item span {
  background: #304A85;
  color: #fff;
}
.pager .listCount {
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  /*=================================
    pager
  =================================*/
  .pager {
    display: block;
    margin: 20px auto 0;
    text-align: center;
  }
  .pagerList__item a, .pagerList__item span {
    display: block;
    padding: 13px 16px;
    font-size: 1.2rem;
    line-height: 1;
  }
  .pager .listCount {
    margin: 15px 0 0;
    font-size: 1.2rem;
  }
}
/*=================================
  topPage
=================================*/
.home {
  /* メインビジュアル */
}
.home .secWrap {
  padding: 90px 1% 60px;
  background: #fff;
}
.home .secWrap.blue {
  background: #E8F1FB;
}
.home .secWrap.gray {
  background: #F5F6F9;
}
.home .secWrap__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.home .mv {
  position: relative;
  padding: 80px 0 0 90px;
  background: url(../img/top/bg_mv.jpg) no-repeat right top #F5F6F9;
  background-size: contain;
}
.home .mv__inner {
  position: relative;
  max-width: 1276px;
  margin: 0 auto;
  padding: 75px 56px 56px;
  background: #fff;
}
.home .mv__inner::after {
  position: absolute;
  right: 36px;
  bottom: -20px;
  display: inline-block;
  width: clamp(239px, 34.9926793558vw, 478px);
  height: clamp(223px, 32.6500732064vw, 446px);
  background: url(../img/top/img_mv.png) no-repeat center center;
  background-size: contain;
  content: "";
}
.home .mv__ttl {
  position: absolute;
  top: -30px;
  left: -47px;
  box-shadow: 6px 6px 0px 0px #DEBA10;
  font-size: 1.9rem;
  line-height: 3.7;
  letter-spacing: 0.04em;
}
.home .mv__ttl::before {
  right: -6px;
  width: 6px;
  height: calc(100% + 6px);
}
.home .mv__ttl::after {
  bottom: -18px;
  border-width: 18px 10px 0 10px;
  filter: drop-shadow(6px 6px 0px #DEBA10);
}
.home .mv__ttl .icon {
  width: 49px;
  margin: 0 15px 0 0;
}
.home .mv__catch {
  position: relative;
  z-index: 1;
  margin: 0 0 30px;
  padding-right: clamp(239px, 25.6222547584vw, 350px);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.77777;
  letter-spacing: 0.05em;
}
.home .mv__catch .em {
  color: #004DA1;
}
.home .mv__cont {
  position: relative;
  z-index: 1;
  padding-right: clamp(239px, 25.6222547584vw, 350px);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
.home .mv__cont .em {
  font-weight: 500;
  color: #D70110;
}

@media screen and (max-width: 767px) {
  /*=================================
    topPage
  =================================*/
  .home {
    /* メインビジュアル */
  }
  .home .secWrap {
    padding: 40px 6.4102564103%;
  }
  .home .mv {
    padding: 30px 0 0 5.1282051282%;
    background: url(../img/top/bg_mv.jpg) no-repeat right -37px top #F5F6F9;
    background-size: contain;
  }
  .home .mv__inner {
    padding: 68px 5.1282051282% 27px;
  }
  .home .mv__inner::after {
    content: none;
  }
  .home .mv__ttl {
    position: absolute;
    top: -10px;
    left: 0;
    box-shadow: 5px 5px 0px 0px #DEBA10;
    font-size: 1.5rem;
  }
  .home .mv__ttl::before {
    right: -5px;
    width: 5px;
    height: calc(100% + 5px);
  }
  .home .mv__ttl::after {
    bottom: -16px;
    border-width: 16px 7px 0 7px;
    filter: drop-shadow(5px 5px 0px #DEBA10);
  }
  .home .mv__ttl .icon {
    width: 39px;
    margin: 0 2px 0 0;
  }
  .home .mv__catch {
    margin: 0 0 30px;
    padding-right: clamp(96px, 38.4615384615vw, 150px);
    font-size: 2.6rem;
    line-height: 1.38461;
  }
  .home .mv__catch::after {
    position: absolute;
    right: 0;
    bottom: -25px;
    display: inline-block;
    width: clamp(96px, 49.4871794872vw, 193px);
    height: clamp(88px, 44.8717948718vw, 175px);
    background: url(../img/top/img_mv.png) no-repeat center center;
    background-size: contain;
    content: "";
  }
  .home .mv__cont {
    padding-right: 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
/*=================================
  お問い合わせ
=================================*/
.formBox h1 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox h2 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox h3 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox h4 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox h5 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox h6 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}
.formBox .infoBox {
  display: flex;
  align-items: flex-start;
}
.formBox .infoBox .thumb {
  width: 42%;
  max-width: 359px;
  margin-right: 46px;
}
.formBox .infoBox .thumb img {
  margin: 0;
}
.formBox .infoBox .contact {
  width: calc(100% - (42% + 46px));
}
.formBox .infoBox .contact .infoBoxTtl {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.8;
}
.formBox .infoBox .contact .address .info--tel {
  margin-top: 20px;
}
.formBox .infoBox .contact .address .info--tel .tel .num {
  font-size: 4.9rem;
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .formBox .infoBox .contact .address .info--tel .tel .num {
    pointer-events: none;
  }
}
.formBox .infoBox .contact .address .info--tel .tel .num::before {
  display: inline-block;
  width: 38px;
  height: 38px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_tel_w.png) no-repeat center center;
  background-size: contain;
  content: "";
}
.formBox .infoBox .contact .address .info--tel .tel .num:hover {
  opacity: 0.8;
}
.formBox .infoBox .contact .address .info--tel .receptionTime {
  display: flex;
  margin-top: 20px;
  font-size: 1.6rem;
  font-weight: 500;
}
.formBox .infoBox .contact .address .info--tel .receptionTime dt {
  width: 5em;
  font-weight: bold;
}
.formBox .infoBox .contact .address .info--tel .receptionTime dd {
  width: calc(100% - 5em);
}
.formBox .step {
  position: relative;
  left: 50%;
  display: inline-block;
  margin-bottom: 55px;
  counter-reset: stepNum;
  transform: translateX(-50%);
}
.formBox .step::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: inline-block;
  width: calc(100% - 5.5rem);
  height: 1px;
  background: #D2D2D2;
  content: "";
  transform: translateX(-50%);
}
.formBox .step__item {
  position: relative;
  display: inline-block;
  padding-top: 26px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.formBox .step__item::before {
  display: block;
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.625;
  color: #304A85;
  content: "STEP0" counter(stepNum);
  counter-increment: stepNum;
}
.formBox .step__item::after {
  position: absolute;
  top: -8px;
  left: 50%;
  display: inline-block;
  width: 15px;
  height: 15px;
  border-radius: 50px;
  background: #D2D2D2;
  content: "";
  transform: translateX(-50%);
}
.formBox .step__item.active::after {
  background: #304A85;
}
.formBox .step__item + .step__item {
  margin-left: 59px;
}
.formBox .btnWrap {
  margin-top: 40px;
}
.formBox .btn--form {
  display: block;
  text-align: center;
}
.formBox .btn--form:not(.back) input {
  padding: 30px 68px 28px;
  border-radius: 5px;
  background: #304A85;
  box-shadow: 0px 5px 0 0px #162545;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
@media screen and (min-width: 767px) {
  .formBox .btn--form:not(.back):hover input {
    box-shadow: none !important;
    transform: translateY(5px);
  }
}
.formBox .btn--form.back input {
  font-size: 1.4rem;
  color: #999;
  cursor: pointer;
}

/* =================================
  お問い合わせフォーム
================================= */
.text--security {
  margin-bottom: 30px;
  font-size: 1.6rem;
  text-align: center;
}

.contactForm table {
  width: 100%;
}
.contactForm th {
  position: relative;
  width: 240px;
  padding: 15px 65px 15px 20px;
  font-size: 1.6rem;
  text-align: left;
}
.contactForm th .sub {
  display: block;
  font-size: 1.4rem;
}
.contactForm th span:not(.sub) {
  position: absolute;
  top: 20px;
  right: 10px;
  padding: 5px 12px;
  background: #D2D2D2;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.04em;
}
.contactForm th .required {
  background: #D70110 !important;
}
.contactForm td {
  width: calc(100% - 240px);
  padding: 17px 15px 17px 20px;
  font-size: 1.6rem;
  text-align: left;
}
.contactForm td p {
  line-height: 1.65;
}
.contactForm td * {
  font-size: 1.6rem;
}
.contactForm td input, .contactForm td textarea, .contactForm td select {
  box-sizing: border-box;
  width: 100%;
  padding: 15px;
  border: 2px solid #D2D2D2;
  background: #fff;
}
.contactForm td textarea {
  min-height: 170px;
}
.contactForm td .error {
  display: inline-block;
  margin: 10px 0 0;
  font-size: 1.4rem;
  color: #D70110;
}
.contactForm .confirmingTxt {
  margin: 40px 0;
  text-align: center;
}
.contactForm .confirmingTxt p {
  font-size: 1.6rem;
}
.contactForm .confirmingTxt .checkText {
  display: inline-block;
  margin-top: 40px;
  font-size: 1.8rem;
}
.contactForm .confirmingTxt .checkText input {
  margin-right: 10px;
}
.contactForm .confirmingTxt input {
  -webkit-appearance: checkbox;
}
.contactForm .confirmingTxt a {
  font-weight: bold;
  text-decoration: none;
}
.contactForm .confirmingTxt a:hover {
  text-decoration: underline;
}

.consultForm__item {
  display: flex;
  padding: 38px 20px;
  border: 1px solid #D2D2D2;
  background: #F5F8FF;
  align-items: center;
}
.consultForm__item + .consultForm__item {
  margin-top: 20px;
}
.consultForm__ttl {
  position: relative;
  width: 230px;
  padding-right: 55px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #304A85;
}
.consultForm__ttl .sub {
  display: block;
  font-size: 1.4rem;
}
.consultForm__ttl span:not(.sub) {
  position: absolute;
  top: 50%;
  right: 0;
  padding: 5px 12px;
  background: #D2D2D2;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.04em;
  transform: translateY(-50%);
}
.consultForm__ttl .required {
  background: #D70110 !important;
}
.consultForm__list {
  width: calc(93% - 230px);
  padding-left: 27px;
  font-size: 1.6rem;
}
.consultForm__list p {
  line-height: 1.65;
}
.consultForm__list * {
  font-size: 1.6rem;
}
.consultForm__list input:not([type=radio]):not([type=checkbox]), .consultForm__list textarea, .consultForm__list select {
  padding: 10px;
  border: 2px solid #D2D2D2;
  background: #fff;
}
.consultForm__list input:not([type=radio]):not([type=checkbox]):not([class=widthNormal]), .consultForm__list textarea, .consultForm__list select {
  box-sizing: border-box;
  width: 100%;
}
.consultForm__list .mwform-radio-field {
  display: inline-block;
  margin-top: 1rem;
  margin-right: 3rem;
  margin-bottom: 1rem;
}
.consultForm__list .mwform-radio-field label {
  display: inline-block;
}
.consultForm__list input[type=radio] + span {
  position: relative;
  display: inline-block;
  padding-left: 2.8rem;
}
.consultForm__list input[type=radio] + span::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  margin: auto;
  border: solid 2px #D2D2D2;
  border-radius: 50%;
  background-color: #fff;
  content: "";
}
.consultForm__list input[type=radio]:checked + span::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 4px;
  width: 12px;
  height: 12px;
  margin: auto 0;
  border-radius: 50%;
  background-color: #304A85;
  content: "";
}
.consultForm__list .mwform-checkbox-field {
  display: inline-block;
  margin-top: 1rem;
  margin-right: 3rem;
  margin-bottom: 1rem;
}
.consultForm__list .mwform-checkbox-field label {
  display: inline-block;
}
.consultForm__list input[type=checkbox] + span {
  position: relative;
  display: inline-block;
  padding-left: 2.8rem;
}
.consultForm__list input[type=checkbox] + span::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  margin: auto;
  border: solid 2px #D2D2D2;
  border-radius: 4px;
  background-color: #fff;
  content: "";
}
.consultForm__list input[type=checkbox]:checked + span::after {
  position: absolute;
  top: 10px;
  left: 5px;
  display: inline-block;
  width: 11px;
  height: 7px;
  background: url(../img/common/icon/icon_check.png) no-repeat center center;
  background-size: contain;
  content: "";
}
.consultForm__list textarea {
  min-height: 170px;
}
.consultForm__list .error {
  display: block;
  margin: 10px 0 0;
  font-size: 1.4rem;
  color: #D70110;
}
.consultForm__list .yoyaku {
  display: flex;
  align-items: center;
}
.consultForm__list .yoyaku .rank {
  width: 85px;
  font-weight: bold;
  color: #304A85;
}
.consultForm__list .yoyaku .yoyakuBox {
  display: flex;
  width: calc(100% - 85px);
}
.consultForm__list .yoyaku .yoyakudate {
  width: calc((100% - 15px) / 2) !important;
}
.consultForm__list .yoyaku .yoyakujikan {
  width: calc((100% - 15px) / 2) !important;
  margin-left: 15px;
}
.consultForm__list .yoyaku + .yoyaku {
  margin-top: 15px;
}
.consultForm .confirmingTxt {
  margin: 37px 0;
  text-align: center;
}
.consultForm .confirmingTxt p {
  font-size: 1.4rem;
}
.consultForm .confirmingTxt input {
  -webkit-appearance: checkbox;
}
.consultForm .confirmingTxt a {
  text-decoration: underline;
}
.consultForm .confirmingTxt a:hover {
  color: #304A85;
}
.consultForm + .consultForm {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px dashed #D2D2D2;
}

.completedForm .completedMessage {
  position: relative;
  left: 50%;
  display: inline-block;
  margin: 24px 0 0;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.06em;
  transform: translateX(-50%);
}
.completedForm .completedMessage::after {
  display: inline-block;
  width: 100%;
  height: 3px;
  background: #304A85;
  content: "";
}
.completedForm p {
  margin: 40px 0 0;
  font-size: 1.5rem;
  text-align: center;
}
.completedForm table {
  width: initial;
  margin: 40px auto 45px;
}
.completedForm th, .completedForm td {
  width: auto;
}
.completedForm th {
  padding: 15px 30px;
  font-size: 1.6rem;
  font-weight: bold;
  vertical-align: middle;
}
.completedForm td {
  padding: 15px 30px;
  vertical-align: middle;
}
.completedForm td .tel {
  margin: 0;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1;
  color: #304A85;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .completedForm td .tel {
    pointer-events: none;
  }
}
.completedForm td .receptionTime {
  display: flex;
  margin: 10px 0 0;
}
.completedForm td .receptionTime dt {
  width: 5.5em;
  font-size: 1.3rem;
  font-weight: bold;
  color: #304A85;
}
.completedForm td .receptionTime dd {
  width: calc(100% - 5.5em);
  font-size: 1.3rem;
}

@media screen and (max-width: 767px) {
  /*=================================
    お問い合わせ
  =================================*/
  .formBox h1 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox h2 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox h3 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox h4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox h5 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox h6 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .formBox .infoBox {
    display: block;
    overflow: hidden;
    margin-top: 0;
  }
  .formBox .infoBox .thumb {
    float: left;
    width: 30%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .formBox .infoBox .contact {
    width: 100%;
  }
  .formBox .infoBox .contact .infoBoxTtl {
    width: calc(100% - (30% + 15px));
    margin-left: auto;
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .formBox .infoBox .contact .address .info--tel {
    margin-top: 0;
  }
  .formBox .infoBox .contact .address .info--tel .tel {
    width: calc(100% - (30% + 15px));
    margin-top: 15px;
    margin-left: auto;
  }
  .formBox .infoBox .contact .address .info--tel .tel .num {
    display: block;
    padding: 10px 10px;
    border-radius: 3px;
    background: #304A85;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
  }
  .formBox .infoBox .contact .address .info--tel .tel .num::before {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin: 0 7px -3px 0;
  }
  .formBox .infoBox .contact .address .info--tel .receptionTime {
    width: 100%;
    margin-top: 15px;
    font-size: 1.4rem;
  }
  .formBox .step {
    margin-bottom: 40px;
  }
  .formBox .step::before {
    width: calc(100% - 5rem);
  }
  .formBox .step__item {
    padding-top: 20px;
    font-size: 1.6rem;
  }
  .formBox .step__item::before {
    margin-bottom: 5px;
    font-size: 1.4rem;
  }
  .formBox .step__item::after {
    top: -6px;
    width: 13px;
    height: 13px;
  }
  .formBox .step__item.active::after {
    background: #304A85;
  }
  .formBox .step__item + .step__item {
    margin-left: 15.1282051282vw;
  }
  .formBox .btnWrap {
    margin-top: 35px;
  }
  .formBox .btn--form:not(.back) input {
    padding: 15px 3.5897435897% 13px;
    border-radius: 4px;
    box-shadow: 0px 4px 0 0px #162545;
    font-size: 1.6rem;
  }
  /* =================================
    お問い合わせフォーム
  ================================= */
  .text--security {
    font-size: 1.4rem;
  }
  .contactForm table {
    display: table;
    white-space: initial;
  }
  .contactForm th {
    display: block;
    width: 100%;
    padding: 15px 3.5897435897%;
    font-size: 1.5rem;
  }
  .contactForm th span:not(.sub) {
    position: static;
    margin-left: 1.5rem;
    padding: 4px 4px 4px 8px;
    font-size: 1.1rem;
    letter-spacing: 0.4em;
    transform: translateY(0);
  }
  .contactForm td {
    display: block;
    width: 100%;
    padding: 15px 3.5897435897%;
  }
  .contactForm td p {
    line-height: 1.5;
  }
  .contactForm td input, .contactForm td textarea, .contactForm td select {
    padding: 12px;
  }
  .contactForm td .error {
    font-size: 1.3rem;
  }
  .contactForm .confirmingTxt {
    margin: 30px 0;
  }
  .contactForm .confirmingTxt p {
    font-size: 1.4rem;
  }
  .contactForm .confirmingTxt .checkText {
    margin-top: 10px;
    font-size: 1.6rem;
  }
  .consultForm__item {
    display: block;
    padding: 10px 3.5897435897% 20px;
  }
  .consultForm__ttl {
    display: block;
    width: 100%;
    padding: 15px 0;
    font-size: 1.5rem;
  }
  .consultForm__ttl .sub {
    display: inline-block;
    font-size: 1.4rem;
  }
  .consultForm__ttl span:not(.sub) {
    position: static;
    margin-left: 1.5rem;
    padding: 4px 4px 4px 8px;
    font-size: 1.1rem;
    letter-spacing: 0.4em;
    transform: translateY(0);
  }
  .consultForm__list {
    width: 100%;
    padding-left: 0;
  }
  .consultForm__list p {
    line-height: 1.5;
  }
  .consultForm__list .mwform-radio-field {
    margin-right: 0.5rem;
  }
  .consultForm__list .mwform-checkbox-field {
    margin-right: 0.5rem;
  }
  .consultForm__list input[type=checkbox]:checked + span::after {
    top: 6px;
    left: 3px;
    width: 15px;
    height: 10px;
  }
  .consultForm__list .error {
    font-size: 1.3rem;
  }
  .consultForm__list .yoyaku {
    flex-wrap: wrap;
  }
  .consultForm__list .yoyaku .rank {
    width: 100%;
    margin-bottom: 10px;
  }
  .consultForm__list .yoyaku .yoyakuBox {
    display: block;
    width: 100%;
  }
  .consultForm__list .yoyaku .yoyakudate {
    width: 100% !important;
  }
  .consultForm__list .yoyaku .yoyakujikan {
    width: 100% !important;
    margin: 10px 0 0;
  }
  .consultForm__list .yoyaku + .yoyaku {
    margin-top: 20px;
  }
  .consultForm .confirmingTxt {
    margin: 37px 0;
    text-align: center;
  }
  .consultForm .confirmingTxt p {
    font-size: 1.4rem;
  }
  .completedForm p {
    margin: 30px 0 0;
  }
  .completedForm table {
    display: table;
    margin: 40px auto 45px;
    white-space: initial;
  }
  .completedForm th, .completedForm td {
    width: auto;
  }
  .completedForm th {
    padding: 15px 3.5897435897%;
    font-size: 1.4rem;
  }
  .completedForm td {
    padding: 15px 3.5897435897%;
  }
  .completedForm td .tel {
    font-size: 3rem;
  }
  .completedForm td .receptionTime {
    text-align: left;
  }
}
/*=================================
  trademark
=================================*/
.trademark {
  /* キービジュアル */
  /* メインコンテンツ */
}
.trademark .ttlWrap {
  position: relative;
  padding: 50px 0 0 2.2%;
  background: #FFF7D4;
}
.trademark .ttlWrap__inner {
  position: relative;
  max-width: 1276px;
  margin: 0 auto;
  padding: 67px 4% 87px;
  background: #fff;
}
.trademark .ttlWrap__inner::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 10px;
  height: 100%;
  border-right: 3px solid #D70110;
  border-left: 3px solid #004DA1;
  content: "";
}
.trademark .ttlWrap__ttl {
  position: absolute;
  top: -30px;
  left: -2%;
  box-shadow: 6px 6px 0px 0px #AA000C;
  font-size: 1.9rem;
  line-height: 3.7;
  letter-spacing: 0.04em;
}
.trademark .ttlWrap__ttl::before {
  right: -6px;
  width: 6px;
  height: calc(100% + 6px);
}
.trademark .ttlWrap__ttl::after {
  bottom: -18px;
  border-width: 18px 10px 0 10px;
  filter: drop-shadow(4px 6px 0px #AA000C);
}
.trademark .ttlWrap__ttl .icon {
  width: 56px;
  margin: 0 10px 0 0;
}
.trademark .ttlWrap__catch {
  max-width: 1070px;
  margin: 0 0 17px;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.333333;
}
.trademark .ttlWrap__band {
  display: block;
  max-width: 1070px;
  background: #FFE6E8;
  font-size: 2.4rem;
  font-weight: 700;
  color: #D70110;
  text-align: center;
}
.trademark .ttlWrap__band::before {
  display: inline-block;
  width: 24px;
  height: 21px;
  margin: 0 14px -2px 0;
  background: url(../img/common/icon/icon_bullhorn.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.trademark .ttlWrap + .trademarkCont {
  position: relative;
  top: -60px;
}
.trademarkCont {
  background: #fff;
}
.trademarkCont__inner {
  max-width: 1276px;
  margin: 0 auto;
  padding: 0 4% 30px;
  background: #fff;
}
.trademarkCont .headWrap {
  display: flex;
  max-width: 1070px;
  align-items: flex-start;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .trademarkCont .headWrap .thumb {
    width: 21.9619326501vw;
  }
}
.trademarkCont .headWrap .thumb + .pointList {
  width: calc(100% - 330px);
  margin-left: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .trademarkCont .headWrap .thumb + .pointList {
    width: calc(100% - 24.1581259151vw);
    margin-left: 2.196193265vw;
  }
}
.trademarkCont .headWrap .pointList {
  clear: both;
  padding: 38px 18px;
  border: 10px solid #FFF1B4;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .trademarkCont .headWrap .pointList {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.trademarkCont .headWrap .pointList__item {
  position: relative;
  padding: 3px 12px 3px 40px;
  border-bottom: 1px dashed #CCCCCC;
  font-size: 2rem;
  font-weight: 700;
  line-height: 2;
}
.trademarkCont .headWrap .pointList__item::before {
  position: absolute;
  top: 19px;
  left: 3px;
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.trademarkCont .status {
  margin: 25px 0 40px;
}
.trademarkCont .status .statusList {
  display: flex;
  max-width: 1084px;
  margin: 0 0 13px -7px;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.trademarkCont .status .statusList__item {
  position: relative;
  display: flex;
  width: 94px;
  height: 94px;
  margin: 0 7px 7px;
  border: 3px solid #004DA1;
  border-radius: 5px;
  background: #004DA1;
  text-align: center;
  align-items: center;
}
.trademarkCont .status .statusList__item .wrap {
  display: flex;
  font-size: 3.3rem;
  font-weight: 500;
  line-height: 1.121212;
  color: #fff;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.trademarkCont .status .statusList__item .sm {
  display: block;
  font-size: 1.8rem;
}
.trademarkCont .status .statusList__item .md {
  display: block;
  font-size: 2.3rem;
}
.trademarkCont .status .statusList__item.no {
  border-color: #CCCCCC;
  background: #fff;
}
.trademarkCont .status .statusList__item.no::after {
  position: absolute;
  right: -3px;
  bottom: -3px;
  display: inline-block;
  padding: 2px 9px;
  background: #D70110;
  font-size: 1.4rem;
  line-height: 1;
  color: #fff;
  content: "NO";
}
.trademarkCont .status .statusList__item.no .wrap {
  color: #CCCCCC;
}
.trademarkCont .status .note {
  max-width: 1070px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2;
}
.trademarkCont .btn {
  max-width: 1070px;
  margin: 40px 0 0;
  padding: 15px 18px 20px;
  background: #F5F6F9;
}
.trademarkCont .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 4px 4px 0px 4px #AA000C;
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.trademarkCont .btn a::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .trademarkCont .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .trademarkCont .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(8px, 8px);
  }
}
.trademarkCont .other {
  position: relative;
  max-width: 1070px;
  margin: 40px 0 0;
  padding: 33px 0 0;
}
.trademarkCont .other::before {
  position: absolute;
  top: 0;
  left: -4%;
  display: block;
  width: 108%;
  height: 3px;
  background: #004DA1;
  content: "";
}
.trademarkCont .conditions {
  margin: 0 0 30px;
}
.trademarkCont .conditions__ttl {
  margin: 0 0 10px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5555;
}
.trademarkCont .conditions__ttl::before {
  display: inline-block;
  width: 18px;
  height: 21px;
  margin: 0 8px -2px 0;
  background: url(../img/common/icon/icon_user.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.trademarkCont .conditions__text {
  font-size: 1.6rem;
  line-height: 1.75;
}
.trademarkCont .conditions__text .note {
  display: block;
  font-size: 1.2rem;
}
.trademarkCont .spec {
  margin: 0 0 30px;
}
.trademarkCont .spec__ttl {
  margin: 0 0 10px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5555;
}
.trademarkCont .spec__ttl::before {
  display: inline-block;
  width: 22px;
  height: 20px;
  margin: 0 8px -2px 0;
  background: url(../img/common/icon/icon_table.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.trademarkCont .spec__table {
  margin: 0;
  border-right: none;
  border-left: none;
}
.trademarkCont .spec__table th, .trademarkCont .spec__table td {
  border-color: #CCCCCC;
  border-right: none;
  border-left: none;
  font-size: 1.4rem;
  color: #000;
  text-align: center;
}
.trademarkCont .spec__table th {
  background: #F5F6F9;
  font-weight: 500;
}
.trademarkCont .spec__table td {
  background: #fff;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  /*=================================
    trademark
  =================================*/
  .trademark {
    /* キービジュアル */
    /* メインコンテンツ */
  }
  .trademark .ttlWrap {
    padding: 30px 0 0 4.358974359%;
  }
  .trademark .ttlWrap__inner {
    padding: 0 4.358974359% 0 5.8974358974%;
  }
  .trademark .ttlWrap__inner::before {
    width: 7px;
    border-right: 2px solid #D70110;
    border-left: 2px solid #004DA1;
  }
  .trademark .ttlWrap__ttl {
    position: relative;
    top: -15px;
    left: 0;
    padding: 6px 5px 5px 50px;
    box-shadow: 6px 6px 0px 0px #AA000C;
    font-size: 1.6rem;
    line-height: 1.375;
  }
  .trademark .ttlWrap__ttl::before {
    right: -6px;
    width: 6px;
    height: calc(100% + 6px);
  }
  .trademark .ttlWrap__ttl::after {
    bottom: -18px;
    border-width: 18px 10px 0 10px;
    filter: drop-shadow(3px 5px 0px #AA000C);
  }
  .trademark .ttlWrap__ttl .icon {
    position: absolute;
    top: 5px;
    left: 6px;
    width: 41px;
    margin: 0;
  }
  .trademark .ttlWrap__catch {
    margin: 0 0 15px;
    font-size: 2.2rem;
    line-height: 1.363636;
  }
  .trademark .ttlWrap__band {
    padding: 2px 0;
    font-size: 1.6rem;
  }
  .trademark .ttlWrap__band::before {
    width: 15px;
    height: 14px;
    margin: 0 10px -2px 0;
  }
  .trademark .ttlWrap + .trademarkCont {
    top: 0;
  }
  .trademarkCont {
    padding: 20px 6.4102564103% 0;
  }
  .trademarkCont__inner {
    padding: 0 0 40px;
  }
  .trademarkCont .headWrap {
    display: block;
  }
  .trademarkCont .headWrap .thumb {
    display: block;
    margin: 0 auto;
  }
  .trademarkCont .headWrap .thumb + .pointList {
    width: 100%;
    margin: 10px 0 0;
  }
  .trademarkCont .headWrap .pointList {
    padding: 0;
    border: none;
  }
  .trademarkCont .headWrap .pointList__item {
    padding: 10px 15px 10px 27px;
    font-size: 1.4rem;
    line-height: 1.42857;
  }
  .trademarkCont .headWrap .pointList__item::before {
    top: 19px;
    left: 3px;
    width: 16px;
    height: 16px;
  }
  .trademarkCont .status {
    margin: 20px 0 30px;
  }
  .trademarkCont .status .statusList {
    margin: 0 0 20px -5px;
    justify-content: center;
  }
  .trademarkCont .status .statusList__item {
    width: 61px;
    height: 61px;
    margin: 0 4px 8px;
  }
  .trademarkCont .status .statusList__item .wrap {
    font-size: 1.9rem;
    line-height: 1.10526;
  }
  .trademarkCont .status .statusList__item .sm {
    font-size: 1rem;
  }
  .trademarkCont .status .statusList__item .md {
    font-size: 1.3rem;
  }
  .trademarkCont .status .statusList__item.no::after {
    font-size: 0.8rem;
  }
  .trademarkCont .status .note {
    line-height: 1.71428;
  }
  .trademarkCont .btn {
    margin: 30px 0;
    padding: 0;
    background: transparent;
  }
  .trademarkCont .btn a {
    padding: 20px 5px;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.6rem;
  }
  .trademarkCont .btn a::before {
    width: 18px;
    height: 18px;
    margin: 0 5px -3px 0;
  }
  .trademarkCont .other {
    margin: 30px 0 0;
    padding: 15px 0 0;
  }
  .trademarkCont .other::before {
    left: 0;
    width: 100%;
    height: 2px;
  }
  .trademarkCont .conditions__ttl {
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.4375;
  }
  .trademarkCont .conditions__ttl::before {
    width: 16px;
    height: 18px;
    margin: 0 7px -2px 0;
  }
  .trademarkCont .conditions__text {
    font-size: 1.4rem;
    line-height: 1.71428;
  }
  .trademarkCont .spec__ttl {
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.4375;
  }
  .trademarkCont .spec__ttl::before {
    width: 19px;
    height: 16px;
    margin: 0 6px -2px 0;
  }
  .trademarkCont .spec__table {
    display: block;
    border-right: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
    white-space: normal;
  }
  .trademarkCont .spec__table:nth-child(2n) th {
    border-left: 1px solid #CCCCCC;
  }
  .trademarkCont .spec__table tr {
    display: flex;
    flex-wrap: wrap;
  }
  .trademarkCont .spec__table th, .trademarkCont .spec__table td {
    display: flex;
    padding: 20px 10px;
    border: none;
    border-top: 1px solid #CCCCCC;
    font-size: 1.3rem;
    align-items: center;
    justify-content: center;
  }
  .trademarkCont .spec__table th {
    width: 6rem;
    background: #F5F6F9;
    font-weight: 500;
  }
  .trademarkCont .spec__table td {
    width: calc((100% - 12rem) / 2);
  }
}
/*=================================
  ranking
=================================*/
.ranking {
  /* キービジュアル */
  /* メインコンテンツ */
}
.ranking .ttlWrap {
  position: relative;
  padding: 50px 4% 0 0;
  background: #FFF7D4;
}
.ranking .ttlWrap::before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  border-top: 3px solid #004DA1;
  border-bottom: 3px solid #D70110;
  content: "";
}
.ranking .ttlWrap__inner {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  max-width: 1276px;
  margin: 0 auto;
  padding: 36px 4% 50px 0;
  background: #fff;
  align-items: flex-start;
  justify-content: flex-end;
}
.ranking .ttlWrap__inner::after {
  position: absolute;
  top: -30px;
  right: -4%;
  display: inline-block;
  width: clamp(211px, 22.7672035139vw, 311px);
  height: clamp(162px, 19.1800878477vw, 262px);
  background: url(../img/under/ranking_mv_deco.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.ranking .ttlWrap .textWrap {
  position: relative;
  z-index: 1;
}
.ranking .ttlWrap__img {
  height: 100%;
  margin-top: -86px;
  margin-right: 34px;
  -o-object-fit: contain;
     object-fit: contain;
}
.ranking .ttlWrap__ttl {
  position: relative;
  display: inline-block;
  margin: 0 0 20px;
  padding: 8px;
  border-top: 5px solid #004DA1;
  border-bottom: 5px solid #D70110;
  font-size: clamp(1.5rem, 1.3909224012vw, 1.9rem);
  font-weight: 700;
  line-height: 1;
}
.ranking .ttlWrap__ttl::before {
  position: absolute;
  top: -16px;
  left: 2rem;
  display: inline-block;
  width: 25px;
  height: 16px;
  background: url(../img/common/icon/icon_crown_blue.svg) no-repeat center center #fff;
  background-size: contain;
  content: "";
}
.ranking .ttlWrap__catch {
  margin: 0 0 20px;
  font-size: clamp(2.2rem, 3.074670571vw, 4.2rem);
  font-weight: 700;
  line-height: 1.142857;
}
.ranking .ttlWrap__text {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.25;
}
.rankingCont {
  max-width: calc(1276px + 4%);
  /*---------------------
    記事タイトル
  ---------------------*/
  /*---------------------
    メインビジュアル
  ---------------------*/
  /*---------------------
    更新日
  ---------------------*/
  /*---------------------
    目次
  ---------------------*/
  /*---------------------
    関連記事
  ---------------------*/
  /*---------------------
    既存テーマスタイル
  ---------------------*/
  /* balloon状の見出し */
  /* トピックス状 */
  /* 商標誘導ボタン */
  /* 商標誘導カード */
  margin: 0 auto;
  padding: 0 4%;
  background: #fff;
}
.rankingCont h1, .rankingCont h2, .rankingCont h3, .rankingCont h4, .rankingCont h5, .rankingCont h6 {
  clear: both;
}
.rankingCont p:not([class]) {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
.rankingCont p:not([class]) + p {
  margin-top: 2rem;
}
.rankingCont h1:not([class]), .rankingCont h1.wp-block-heading {
  margin-top: 100px;
  margin-bottom: 40px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}
.rankingCont h2:not([class]), .rankingCont h2.wp-block-heading {
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 15px 30px;
  background: #004DA1;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.rankingCont h3:not([class]), .rankingCont h3.wp-block-heading {
  margin-top: 68px;
  margin-bottom: 30px;
  padding-top: 18px;
  border-top: 3px solid #004DA1;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
.rankingCont h4:not([class]), .rankingCont h4.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 12px 24px;
  background: #F5F6F9;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.666666;
}
.rankingCont h4:not([class])::before, .rankingCont h4.wp-block-heading::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 7px;
  height: 100%;
  border-right: 2px solid #D70110;
  border-left: 2px solid #004DA1;
  content: "";
}
.rankingCont h5:not([class]), .rankingCont h5.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 33px;
  padding-left: 30px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
}
.rankingCont h5:not([class])::before, .rankingCont h5.wp-block-heading::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 17px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingCont h6:not([class]), .rankingCont h6.wp-block-heading {
  position: relative;
  margin-top: 40px;
  margin-bottom: 20px;
  padding-left: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.77777;
  color: #004DA1;
}
.rankingCont h6:not([class])::before, .rankingCont h6.wp-block-heading::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #004DA1;
  content: "";
  transform: rotate(45deg);
}
.rankingCont blockquote {
  position: relative;
  box-sizing: border-box;
  margin: 50px 0 30px;
  padding: 50px 20px 20px;
  border: 10px solid #F5F6F9;
  font-style: italic;
  color: #464646;
}
.rankingCont blockquote::before {
  position: absolute;
  top: -25px;
  left: 15px;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background: #F5F6F9;
  font-size: 5rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  color: #004DA1;
  text-align: center;
  content: "“";
}
.rankingCont blockquote h1 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote h2 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote h3 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote h4 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote h5 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote h6 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.rankingCont blockquote p {
  font-style: normal;
}
.rankingCont blockquote cite {
  display: block;
  margin: 10px 0 0;
  font-size: 0.9em;
  line-height: 1;
  color: #888888;
  text-align: right;
}
.rankingCont .btnWrap {
  clear: both;
}
.rankingCont img:not([class]), .rankingCont.wp-block-heading {
  display: block;
  margin: 15px auto 20px;
}
.rankingCont img.alignleft {
  float: left;
  margin: 0 30px 30px 0;
}
.rankingCont img.alignright {
  float: right;
  margin: 0 0 30px 30px;
}
.rankingCont img.aligncenter, .rankingCont img.alignnone {
  display: block;
  margin: 0 auto;
}
.rankingCont ul:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingCont ul:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.rankingCont ul:not([class]) li {
  position: relative;
  padding-left: 28px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2;
  color: #004DA1;
}
.rankingCont ul:not([class]) li::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/common/icon/icon_ul.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingCont ul:not([class]) li + li {
  margin-top: 10px;
}
.rankingCont ul:not([class]) h1::before {
  content: none;
}
.rankingCont ul:not([class]) h2::before {
  content: none;
}
.rankingCont ul:not([class]) h3::before {
  content: none;
}
.rankingCont ul:not([class]) h4::before {
  content: none;
}
.rankingCont ul:not([class]) h5::before {
  content: none;
}
.rankingCont ul:not([class]) h6::before {
  content: none;
}
.rankingCont ol:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
  counter-reset: listNum;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingCont ol:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.rankingCont ol:not([class]) li {
  position: relative;
  padding-left: 31px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.rankingCont ol:not([class]) li::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: inline-block;
  width: 24px;
  border-radius: 50px;
  background: #004DA1;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
  text-align: center;
  content: counter(listNum);
  counter-increment: listNum;
}
.rankingCont ol:not([class]) li + li {
  margin-top: 10px;
}
.rankingCont ol:not([class]) h1::before {
  content: none;
}
.rankingCont ol:not([class]) h2::before {
  content: none;
}
.rankingCont ol:not([class]) h3::before {
  content: none;
}
.rankingCont ol:not([class]) h4::before {
  content: none;
}
.rankingCont ol:not([class]) h5::before {
  content: none;
}
.rankingCont ol:not([class]) h6::before {
  content: none;
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .rankingCont p:not([class]) {
    font-size: 1.5rem;
    line-height: 1.71428;
  }
  .rankingCont h1:not([class]), .rankingCont h1.wp-block-heading {
    margin-top: 54px;
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.44444;
  }
  .rankingCont h2:not([class]), .rankingCont h2.wp-block-heading {
    width: calc(108.7179487179% + 2px);
    margin-top: 54px;
    margin-bottom: 20px;
    margin-left: calc(-4.358974359% - 1px);
    padding: 15px 4.358974359%;
    font-size: 1.8rem;
    line-height: 1.55555;
  }
  .rankingCont h3:not([class]), .rankingCont h3.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 20px;
    padding-top: 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .rankingCont h4:not([class]), .rankingCont h4.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 11px 4.1025641026%;
    font-size: 1.4rem;
    line-height: 1.625;
  }
  .rankingCont h5:not([class]), .rankingCont h5.wp-block-heading {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-left: 22px;
    font-size: 1.5rem;
  }
  .rankingCont h5:not([class])::before, .rankingCont h5.wp-block-heading::before {
    top: 5px;
    width: 15px;
    height: 14px;
  }
  .rankingCont h6:not([class]), .rankingCont h6.wp-block-heading {
    padding-left: 15px;
    font-size: 1.5rem;
    line-height: 1.73333;
  }
  .rankingCont h6:not([class])::before, .rankingCont h6.wp-block-heading::before {
    top: 10px;
    width: 8px;
    height: 8px;
  }
  .rankingCont blockquote {
    margin: 40px 0 30px;
    padding: 40px 3.8461538462% 20px;
    border: 7px solid #F5F6F9;
  }
  .rankingCont blockquote::before {
    width: 45px;
    height: 45px;
    font-size: 4rem;
    line-height: 1.5;
  }
  .rankingCont blockquote h1 {
    font-size: 1.5rem;
  }
  .rankingCont blockquote h2 {
    font-size: 1.5rem;
  }
  .rankingCont blockquote h3 {
    font-size: 1.5rem;
  }
  .rankingCont blockquote h4 {
    font-size: 1.5rem;
  }
  .rankingCont blockquote h5 {
    font-size: 1.5rem;
  }
  .rankingCont blockquote h6 {
    font-size: 1.5rem;
  }
  .rankingCont img.alignleft {
    margin: 0 7px 7px 0;
  }
  .rankingCont img.alignright {
    margin: 0 0 7px 7px;
  }
  .rankingCont ul:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .rankingCont ul:not([class]) li {
    padding-left: 28px;
  }
  .rankingCont ul:not([class]) li::before {
    top: 5px;
    width: 20px;
    height: 20px;
  }
  .rankingCont ol:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .rankingCont ol:not([class]) li::before {
    width: 22px;
    font-size: 1rem;
    line-height: 22px;
  }
}
.rankingCont iframe {
  width: 100%;
}
.rankingCont .articleTtl {
  margin: 0 0 8px;
  font-size: 3.2rem;
  line-height: 1.5;
}
.rankingCont .articleMv {
  overflow: hidden;
  margin: 15px auto;
  text-align: center;
}
.rankingCont .articleMv img {
  margin: 0 auto;
}
.rankingCont .date {
  text-align: right;
}
.rankingCont .date > * {
  display: inline-block;
  margin: 0;
  font-size: 1.2rem !important;
  font-weight: 400;
  line-height: 1 !important;
  color: #333333;
}
.rankingCont .date > * + * {
  margin: 0 0 0 1rem !important;
}
.rankingCont .tocBox {
  margin: 40px auto 100px;
  padding: 23px;
  background: #F5F6F9;
}
.rankingCont .tocBox__inner {
  padding: 0 20px 20px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}
.rankingCont .tocBox__ttl {
  margin: 0 0 15px;
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
}
.rankingCont .tocBox__ttl::before {
  display: inline-block;
  width: 20px;
  height: 16px;
  margin: 0 9px -2px 0;
  background: url(../img/common/icon/icon_book.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingCont .tocBox .tocList {
  counter-reset: tocNum;
}
.rankingCont .tocBox .tocList__item:not(:last-child) {
  border-bottom: 1px solid #D2DAF0;
}
.rankingCont .tocBox .tocList__item a {
  position: relative;
  display: block;
  padding: 12px 24px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  text-decoration: none;
}
.rankingCont .tocBox .tocList__item a::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  content: counter(tocNum) ".";
  counter-increment: tocNum;
}
.rankingCont .tocBox .tocList__item a::after {
  position: absolute;
  right: 0;
  bottom: 12px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .rankingCont .tocBox .tocList__item a:hover {
    color: #304A85;
    text-decoration: underline;
  }
  .rankingCont .tocBox .tocList__item a:hover::after {
    bottom: 6px;
  }
}
.rankingCont .tocBox .tocList__item .tocList {
  padding-left: 26px;
  counter-reset: tocChildNum;
}
.rankingCont .tocBox .tocList__item .tocList__item a {
  display: block;
  padding-left: 46px;
}
.rankingCont .tocBox .tocList__item .tocList__item a::before {
  content: counter(tocNum) " - " counter(tocChildNum) ".";
  counter-increment: tocChildNum;
}
.rankingCont .tocBox .tocMore {
  position: relative;
  left: 50%;
  display: inline-block;
  margin-top: 20px;
  padding: 8px 20px;
  background: #FECB3F;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  text-align: center;
  cursor: pointer;
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) {
  .rankingCont .tocBox .tocMore:hover {
    background: #004DA1;
    color: #fff;
  }
}
.rankingCont .tocBox:not(.open) .tocBox__inner > .tocList > .tocList__item:nth-child(n+4) {
  display: none;
}
.rankingCont .tocBox:not(.open) .tocMore::after {
  transform: rotate(0deg);
}
@media screen and (min-width: 767px) {
  .rankingCont .tocBox:not(.open) .tocMore:hover::after {
    transform: translateY(2px) rotate(90deg);
  }
}
.rankingCont .related {
  position: relative;
  margin: 60px auto 50px;
}
.rankingCont .related__ttl {
  position: absolute;
  z-index: 1;
  top: -24px;
  right: 4px;
}
.rankingCont .related .relatedList__item {
  padding: 16px 24px 15px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}
.rankingCont .related .relatedList__item::after {
  right: 12px;
  bottom: 14px;
  border-width: 0 0 14px 14px;
}
.rankingCont .related .relatedList__item .itemWrap .thumb {
  width: 80px;
  min-height: 80px;
}
.rankingCont .related .relatedList__item .itemWrap .thumb img {
  margin: 0;
}
.rankingCont .related .relatedList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 102px);
  margin-left: 22px;
}
.rankingCont .related .relatedList__item .itemWrap .textWrap {
  padding: 15px 0;
}
.rankingCont .related .relatedList__item .itemWrap .textWrap__ttl {
  font-size: 1.8rem;
  line-height: 1.38888;
}
.rankingCont .related .relatedList__item + .relatedList__item {
  margin-top: 40px;
}
.rankingCont .point {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.rankingCont .point::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.rankingCont .point::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.rankingCont .point .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.rankingCont .point + ul, .rankingCont .point ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.rankingCont .point + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.rankingCont .tbl_ttl {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.rankingCont .tbl_ttl::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.rankingCont .tbl_ttl::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.rankingCont .tbl_ttl .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.rankingCont .tbl_ttl + ul, .rankingCont .tbl_ttl ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.rankingCont .tbl_ttl + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.rankingCont .note {
  position: relative;
  margin: 50px 40px;
  padding: 50px 40px 40px;
  background: #F5F6F9;
}
.rankingCont .note::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 7px;
  border-top: 2px solid #004DA1;
  border-bottom: 2px solid #D70110;
  content: "";
}
.rankingCont .note h1 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h1::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h1::after {
  content: none;
}
.rankingCont .note h2 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h2::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h2::after {
  content: none;
}
.rankingCont .note h3 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h3::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h3::after {
  content: none;
}
.rankingCont .note h4 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h4::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h4::after {
  content: none;
}
.rankingCont .note h5 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h5::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h5::after {
  content: none;
}
.rankingCont .note h6 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.rankingCont .note h6::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.rankingCont .note h6::after {
  content: none;
}
.rankingCont .note p {
  margin: 0 !important;
  padding: 20px;
  background: #fff;
}
.rankingCont .note p + p {
  padding-top: 0;
}
.rankingCont .btn {
  margin: 50px auto;
  padding: 30px;
  background: #F5F6F9;
}
.rankingCont .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 4px 4px 0px 4px #AA000C;
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.rankingCont .btn a::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .rankingCont .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .rankingCont .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(8px, 8px);
  }
}
.rankingCont .intr {
  position: relative;
  margin: 34px 0 70px;
}
.rankingCont .intr__ttl {
  position: absolute;
  top: -33px;
  right: 4px;
}
.rankingCont .intrBox {
  padding: 20px;
  border: 10px solid #E6E6E6;
}
.rankingCont .intrBox__link {
  display: block;
  margin: 0 0 20px;
  padding: 13px 5px;
  background: #F5F6F9;
  font-size: 2.2rem;
  color: #004DA1;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .rankingCont .intrBox__link:hover {
    text-decoration: underline;
  }
}
.rankingCont .intrBox__cont {
  display: flex;
  align-items: flex-start;
}
.rankingCont .intrBox__cont .thumb {
  width: clamp(150px, 19.0336749634vw, 260px);
  margin-right: 30px;
}
.rankingCont .intrBox__cont .thumb + .spec {
  width: calc(100% - clamp(150px, 19.0336749634vw, 260px) - 30px);
}
.rankingCont .intrBox__cont .spec__text {
  font-size: 1.5rem;
}
.rankingCont .intrBox__cont .spec__table {
  margin: 16px 0;
}
.rankingCont .intrBox__cont .spec__table th {
  font-weight: 500;
}
.rankingCont .intrBox__cont .spec__table td {
  background: #fff;
  font-weight: 700;
  text-align: center;
}
.rankingCont .intrBox__cont .spec__note {
  margin: 5px 0 0;
  font-size: 1rem;
  text-align: right;
}
.rankingCont .intrBox__cont .spec__btn {
  position: relative;
  display: block;
  margin: 12px 0 0;
  padding: 13px 5px 11px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.rankingCont .intrBox__cont .spec__btn::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .rankingCont .intrBox__cont .spec__btn {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .rankingCont .intrBox__cont .spec__btn:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(2px, 2px);
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .rankingCont {
    /*---------------------
      記事タイトル
    ---------------------*/
    /*---------------------
      メインビジュアル
    ---------------------*/
    /*---------------------
      更新日
    ---------------------*/
    /*---------------------
      目次
    ---------------------*/
    /*---------------------
      関連記事
    ---------------------*/
    /*---------------------
      既存テーマスタイル
    ---------------------*/
    /* balloon状の見出し */
    /* トピックス状 */
    /* 商標誘導ボタン */
    /* 商標誘導カード */
  }
  .rankingCont .articleTtl {
    font-size: 2.4rem;
    line-height: 1.33333;
  }
  .rankingCont .articleMv {
    padding: 0 2.0512820513%;
  }
  .rankingCont .date {
    text-align: left;
  }
  .rankingCont .tocBox {
    width: calc(108.7179487179% + 2px);
    margin: 50px auto;
    margin-left: calc(-4.358974359% - 1px);
    padding: 17px 4.358974359%;
  }
  .rankingCont .tocBox__inner {
    padding: 10px 3.8461538462% 26px;
    border: 1px solid #D2DAF0;
  }
  .rankingCont .tocBox__inner > .tocList > .tocList__item:last-of-type {
    border-bottom: 1px solid #D2DAF0;
  }
  .rankingCont .tocBox__ttl {
    margin: 0 0 10px;
  }
  .rankingCont .tocBox__ttl::before {
    width: 18px;
    height: 14px;
    margin: 0 7px -2px 0;
  }
  .rankingCont .tocBox .tocList__item a {
    padding: 11px 1rem 11px 2rem;
    font-size: 1.4rem;
  }
  .rankingCont .tocBox .tocList__item a::before {
    top: 11px;
    font-size: 1.4rem;
  }
  .rankingCont .tocBox .tocList__item a::after {
    bottom: 9px;
    border-width: 0 0 9px 9px;
  }
  .rankingCont .tocBox .tocList__item .tocList {
    padding-left: 2rem;
  }
  .rankingCont .tocBox .tocList__item .tocList__item a {
    padding-left: 4rem;
  }
  .rankingCont .tocBox .tocMore {
    margin-top: 15px;
    padding: 5px 15px;
    font-size: 1.3rem;
  }
  .rankingCont .related {
    margin: 30px auto;
  }
  .rankingCont .related__ttl {
    position: relative;
    top: -8px;
    right: initial;
    left: 50%;
    transform: translateX(-50%);
  }
  .rankingCont .related .relatedList__item {
    padding: 10px 6.6666666667% 10px 2.5641025641%;
  }
  .rankingCont .related .relatedList__item::after {
    right: 11px;
    bottom: 10px;
    border-width: 0 0 10px 10px;
  }
  .rankingCont .related .relatedList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 90px);
    margin-left: 10px;
  }
  .rankingCont .related .relatedList__item .itemWrap .textWrap {
    padding: 0;
  }
  .rankingCont .related .relatedList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.4285;
  }
  .rankingCont .related .relatedList__item + .relatedList__item {
    margin-top: 17px;
  }
  .rankingCont .point {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .rankingCont .point .icon {
    margin: 0 12px 0 0;
  }
  .rankingCont .tbl_ttl {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .rankingCont .tbl_ttl .icon {
    margin: 0 12px 0 0;
  }
  .rankingCont .note {
    margin: 30px 0 40px;
    padding: 25px 5.8974358974% 25px;
  }
  .rankingCont .note h1 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h1::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note h2 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h2::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note h3 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h3::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note h4 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h4::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note h5 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h5::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note h6 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .rankingCont .note h6::before {
    width: 24px;
    height: 33px;
  }
  .rankingCont .note p {
    padding: 18px 4.6153846154%;
  }
  .rankingCont .btn {
    margin: 37px auto;
    padding: 8px;
  }
  .rankingCont .btn a {
    padding: 20px 4.358974359%;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.8rem;
  }
  .rankingCont .btn a::before {
    width: 16px;
    height: 16px;
    margin: 0 5px -2px 0;
  }
  .rankingCont .intr {
    margin: 32px 0 40px;
  }
  .rankingCont .intr__ttl {
    position: relative;
    top: -12px;
    right: initial;
    left: 50%;
    font-size: 1.4rem;
    line-height: 3.2;
    transform: translateX(-50%);
  }
  .rankingCont .intrBox {
    padding: 10px 10px 20px;
    border: 7px solid #E6E6E6;
  }
  .rankingCont .intrBox__link {
    padding: 10px;
    font-size: 1.6rem;
  }
  .rankingCont .intrBox__cont {
    display: block;
  }
  .rankingCont .intrBox__cont .thumb {
    width: 97.4358974359%;
    margin: 0 auto 20px;
  }
  .rankingCont .intrBox__cont .thumb + .spec {
    width: 100%;
  }
  .rankingCont .intrBox__cont .spec__text {
    font-size: 1.6rem;
    text-align: center;
  }
  .rankingCont .intrBox__cont .spec__table {
    display: table;
    margin: 10px 0 15px;
    white-space: normal;
  }
  .rankingCont .intrBox__cont .spec__table th {
    padding: 8px;
    font-size: 1.2rem;
  }
  .rankingCont .intrBox__cont .spec__table td {
    padding: 8px;
    font-size: 1.4rem;
  }
  .rankingCont .intrBox__cont .spec__note {
    margin: 15px 0 0;
    font-size: 1.2rem;
    text-align: left;
  }
  .rankingCont .intrBox__cont .spec__btn {
    margin: 20px 0 0;
    padding: 17px 5px 17px;
  }
}
.rankingCont__inner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 0 30px;
  background: #fff;
}
.rankingCont .box--col2 {
  display: flex;
  margin: 43px 0 70px;
  padding: 28px 33px 36px;
  border: 10px solid #EDEEF1;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingCont .box--col2 {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.rankingCont .box--col2__right {
  width: 39.37%;
  margin-left: 5.26%;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingCont .box--col2__right {
    width: 48.5%;
    min-width: 400px;
    margin-left: 3%;
  }
}
.rankingCont .box--col2__left {
  width: 55.37%;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingCont .box--col2__left {
    width: 48.5%;
    min-width: 400px;
  }
}
.rankingCont .box--col2__ttl {
  position: relative;
  margin: 0 0 28px;
  padding: 0 0 0 36px;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.5;
}
.rankingCont .box--col2__ttl .sm {
  display: inline-block;
  margin: 0 0 0 1rem;
  font-size: 1.4rem;
  font-weight: 500;
}
.rankingCont .box--col2__ttl::before {
  position: absolute;
  top: 8px;
  left: 0;
  display: inline-block;
  width: 26px;
  height: 23px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingCont .box--col2__img {
  display: block;
  text-align: center;
}
.rankingCont .box--yellow {
  padding: 23px 8.4615384615% 34px;
  border-radius: 30px;
  background: #FFF7D4;
}
.rankingCont .box--yellow__ttl {
  margin: 0 0 19px;
  font-size: 1.8rem;
  font-weight: 700;
}
.rankingCont .box--yellow__ttl .icon {
  margin: 0 6px 2px 0;
}
.rankingCont .box--yellow__list li {
  position: relative;
  padding: 0 0 0 2rem;
}
.rankingCont .box--yellow__list li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "・";
}

.rankingBox {
  padding: 50px 4% 85px;
  background: #F5F6F9;
}
.rankingBox__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.rankingBox__ttl {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.212121;
  text-align: center;
}
.rankingBox .rankingList {
  counter-reset: rankingNum;
}
.rankingBox .rankingList__ttl {
  padding: 19px 23px 15px;
  background: #004DA1;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  text-decoration: none;
}
.rankingBox .rankingList__ttl a {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  text-decoration: none;
}
.rankingBox .rankingList__ttl::before {
  display: inline-block;
  width: 53px;
  height: 55px;
  margin: 0 16px 11px 0;
  background: url(../img/common/icon/icon_crown_ranking.svg) no-repeat center center;
  background-size: contain;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 2.5;
  color: #004DA1;
  text-align: center;
  vertical-align: middle;
  content: counter(rankingNum);
  counter-increment: rankingNum;
}
.rankingBox .rankingList__catch {
  margin: 0 0 30px;
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.33333;
  color: #D70110;
  text-align: center;
}
.rankingBox .rankingList__item {
  margin: 50px 0 0;
  background: #fff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}
.rankingBox .rankingList__item:nth-child(1) .rankingList__ttl {
  background: rgb(174, 140, 56);
  background: linear-gradient(90deg, rgb(174, 140, 56) 0%, rgb(206, 172, 91) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ae8c38",endColorstr="#ceac5b",GradientType=1);
}
.rankingBox .rankingList__item:nth-child(1) .rankingList__ttl::before {
  color: #B08E3A;
}
.rankingBox .rankingList__item:nth-child(2) .rankingList__ttl {
  background: rgb(180, 180, 180);
  background: linear-gradient(90deg, rgb(180, 180, 180) 0%, rgb(200, 198, 198) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b4b4b4",endColorstr="#c8c6c6",GradientType=1);
}
.rankingBox .rankingList__item:nth-child(2) .rankingList__ttl::before {
  color: #B5B5B5;
}
.rankingBox .rankingList__item:nth-child(3) .rankingList__ttl {
  background: rgb(101, 74, 42);
  background: linear-gradient(90deg, rgb(101, 74, 42) 0%, rgb(146, 125, 76) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#654a2a",endColorstr="#927d4c",GradientType=1);
}
.rankingBox .rankingList__item:nth-child(3) .rankingList__ttl::before {
  color: #684E2C;
}
.rankingBox .rankingList__item .container {
  padding: 30px 6% 64px;
}
.rankingBox .rankingList__item .headWrap {
  display: flex;
  align-items: flex-start;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingBox .rankingList__item .headWrap .thumb {
    width: 20.4978038067vw;
  }
}
.rankingBox .rankingList__item .headWrap .thumb + .pointList {
  width: calc(100% - 308px);
  margin-left: 28px;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingBox .rankingList__item .headWrap .thumb + .pointList {
    width: calc(100% - 22.5475841874vw);
    margin-left: 2.0497803807vw;
  }
}
.rankingBox .rankingList__item .headWrap .pointList {
  clear: both;
  padding: 25px 22px;
  border: 10px solid #FFF1B4;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .rankingBox .rankingList__item .headWrap .pointList {
    padding: 1.8301610542vw 1.6105417277vw;
  }
}
.rankingBox .rankingList__item .headWrap .pointList__item {
  position: relative;
  padding: 3px 12px 3px 40px;
  border-bottom: 1px dashed #CCCCCC;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
}
.rankingBox .rankingList__item .headWrap .pointList__item::before {
  position: absolute;
  top: 16px;
  left: 3px;
  display: inline-block;
  width: 22px;
  height: 22px;
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingBox .rankingList__item .status {
  margin: 25px 0 40px;
}
.rankingBox .rankingList__item .status .statusList {
  display: flex;
  margin: 0 0 10px -7px;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.rankingBox .rankingList__item .status .statusList__item {
  position: relative;
  display: flex;
  width: 88px;
  height: 88px;
  margin: 0 6px 7px 7px;
  border: 3px solid #004DA1;
  border-radius: 5px;
  background: #004DA1;
  text-align: center;
  align-items: center;
}
.rankingBox .rankingList__item .status .statusList__item .wrap {
  display: flex;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.133333;
  color: #fff;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.rankingBox .rankingList__item .status .statusList__item .sm {
  display: block;
  font-size: 1.6rem;
}
.rankingBox .rankingList__item .status .statusList__item .md {
  display: block;
  font-size: 2.1rem;
}
.rankingBox .rankingList__item .status .statusList__item.no {
  border-color: #CCCCCC;
  background: #fff;
}
.rankingBox .rankingList__item .status .statusList__item.no::after {
  position: absolute;
  right: -3px;
  bottom: -3px;
  display: inline-block;
  padding: 2px 9px;
  background: #D70110;
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
  content: "NO";
}
.rankingBox .rankingList__item .status .statusList__item.no .wrap {
  color: #CCCCCC;
}
.rankingBox .rankingList__item .status .note {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2;
}
.rankingBox .rankingList__item .conditions {
  margin: 40px 0 0;
}
.rankingBox .rankingList__item .conditions__ttl {
  padding: 15px 12px;
  border-top: 2px solid #004DA1;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4375;
}
.rankingBox .rankingList__item .conditions__ttl::before {
  display: inline-block;
  width: 16px;
  height: 18px;
  margin: 0 8px -2px 0;
  background: url(../img/common/icon/icon_user.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingBox .rankingList__item .conditions__text {
  font-size: 1.6rem;
  line-height: 1.75;
}
.rankingBox .rankingList__item .conditions__text .note {
  display: block;
  font-size: 1.2rem;
}
.rankingBox .rankingList__item .spec {
  margin: 40px 0 0;
}
.rankingBox .rankingList__item .spec__ttl {
  padding: 15px 12px;
  border-top: 2px solid #D70110;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4375;
}
.rankingBox .rankingList__item .spec__ttl::before {
  display: inline-block;
  width: 20px;
  height: 18px;
  margin: 0 8px -2px 0;
  background: url(../img/common/icon/icon_table.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.rankingBox .rankingList__item .spec__table {
  margin: 0;
}
.rankingBox .rankingList__item .spec__table th, .rankingBox .rankingList__item .spec__table td {
  border-color: #CCCCCC;
  text-align: center;
}
.rankingBox .rankingList__item .spec__table th {
  font-weight: 500;
}
.rankingBox .rankingList__item .spec__table td {
  background: #fff;
}
.rankingBox .rankingList__item .btn--col2 {
  display: flex;
  justify-content: center;
}
.rankingBox .rankingList__item .btn--col2 .btn {
  width: 48%;
}
.rankingBox .rankingList__item .btn--col2 .btn:nth-child(2n) {
  margin-left: 4%;
}
.rankingBox .rankingList__item .btn {
  margin: 40px 0 0;
  padding: 10px;
  background: #F5F6F9;
}
.rankingBox .rankingList__item .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 3px 3px 0px 3px #AA000C;
  font-size: 2.2rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.rankingBox .rankingList__item .btn a::before {
  display: inline-block;
  width: 25px;
  height: 25px;
  margin: 0 12px -4px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .rankingBox .rankingList__item .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .rankingBox .rankingList__item .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(6px, 6px);
  }
}

@media screen and (max-width: 767px) {
  /*=================================
    ranking
  =================================*/
  .ranking {
    /* キービジュアル */
    /* メインコンテンツ */
  }
  .ranking .ttlWrap {
    padding: 30px 4.358974359% 0 0;
  }
  .ranking .ttlWrap::before {
    content: none;
  }
  .ranking .ttlWrap__inner {
    display: block;
    padding: 20px 4.6153846154% 30px;
  }
  .ranking .ttlWrap__inner::after {
    top: -20px;
    right: -4.358974359%;
    width: clamp(87px, 44.358974359vw, 173px);
    height: clamp(73px, 37.4358974359vw, 146px);
    content: "";
  }
  .ranking .ttlWrap__img {
    margin: 30px 0;
  }
  .ranking .ttlWrap__ttl {
    margin: 0 0 10px;
    padding: 6px 8px;
    border-top: 4px solid #004DA1;
    border-bottom: 4px solid #D70110;
    font-size: 1.5rem;
  }
  .ranking .ttlWrap__ttl::before {
    top: -13px;
    width: 20px;
    height: 13px;
  }
  .ranking .ttlWrap__catch {
    margin: 0 0 10px;
    font-size: 3.4rem;
    line-height: 1.23529;
  }
  .ranking .ttlWrap__text {
    font-size: 1.4rem;
    line-height: 1.78571;
  }
  .rankingCont {
    padding: 0 4.358974359%;
  }
  .rankingCont__inner {
    padding: 0;
  }
  .rankingCont .box--col2 {
    display: block;
    margin: 40px 0;
    padding: 0;
    border: none;
  }
  .rankingCont .box--col2__right {
    width: 100%;
    margin: 20px 0 0;
  }
  .rankingCont .box--col2__left {
    width: 100%;
  }
  .rankingCont .box--col2__ttl {
    margin: 0 0 10px;
    padding: 0 0 0 21px;
    font-size: 1.6rem;
    line-height: 1.875;
  }
  .rankingCont .box--col2__ttl .sm {
    font-size: 1rem;
  }
  .rankingCont .box--col2__ttl::before {
    width: 15px;
    height: 14px;
  }
  .rankingCont .box--yellow {
    padding: 20px 7.6923076923%;
    border-radius: 15px;
  }
  .rankingCont .box--yellow__ttl {
    margin: 0 0 12px;
    font-size: 1.5rem;
    text-align: center;
  }
  .rankingCont .box--yellow__ttl .icon {
    width: 25px;
    margin: 0 5px 2px 0;
  }
  .rankingCont .box--yellow__list li {
    font-size: 1.3rem;
  }
  .rankingBox {
    padding: 40px 2.5641025641% 38px;
  }
  .rankingBox__ttl {
    font-size: 2rem;
    line-height: 1.6;
  }
  .rankingBox .rankingList__ttl {
    padding: 7px 2.0512820513% 2px;
    font-size: 1.8rem;
    line-height: 1.38888;
  }
  .rankingBox .rankingList__ttl a {
    font-size: 1.8rem;
    line-height: 1.38888;
  }
  .rankingBox .rankingList__ttl::before {
    width: 23px;
    height: 24px;
    margin: 0 5px 7px 0;
    font-size: 1rem;
    line-height: 2.5;
  }
  .rankingBox .rankingList__catch {
    margin: 0 0 15px;
    font-size: 2rem;
    line-height: 1.4;
  }
  .rankingBox .rankingList__item {
    margin: 30px 0 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  }
  .rankingBox .rankingList__item .container {
    padding: 15px 2.5641025641% 20px;
  }
  .rankingBox .rankingList__item .headWrap {
    display: block;
  }
  .rankingBox .rankingList__item .headWrap .thumb {
    display: block;
    margin: 0 auto;
    text-align: center;
  }
  .rankingBox .rankingList__item .headWrap .thumb + .pointList {
    width: 100%;
    margin: 10px 0 0;
  }
  .rankingBox .rankingList__item .headWrap .pointList {
    padding: 0;
    border: none;
  }
  .rankingBox .rankingList__item .headWrap .pointList__item {
    padding: 10px 15px 10px 27px;
    font-size: 1.4rem;
    line-height: 1.42857;
  }
  .rankingBox .rankingList__item .headWrap .pointList__item::before {
    top: 19px;
    left: 3px;
    width: 16px;
    height: 16px;
  }
  .rankingBox .rankingList__item .status {
    margin: 20px 0 30px;
  }
  .rankingBox .rankingList__item .status .statusList {
    margin: 0 0 20px -5px;
    justify-content: center;
  }
  .rankingBox .rankingList__item .status .statusList__item {
    width: 61px;
    height: 61px;
    margin: 0 4px 8px;
  }
  .rankingBox .rankingList__item .status .statusList__item .wrap {
    font-size: 1.9rem;
    line-height: 1.10526;
  }
  .rankingBox .rankingList__item .status .statusList__item .sm {
    font-size: 1rem;
  }
  .rankingBox .rankingList__item .status .statusList__item .md {
    font-size: 1.3rem;
  }
  .rankingBox .rankingList__item .status .statusList__item.no::after {
    font-size: 0.8rem;
  }
  .rankingBox .rankingList__item .status .note {
    line-height: 1.71428;
  }
  .rankingBox .rankingList__item .spec__ttl {
    padding: 15px 0;
  }
  .rankingBox .rankingList__item .spec__ttl::before {
    width: 19px;
    height: 16px;
    margin: 0 6px -2px 0;
  }
  .rankingBox .rankingList__item .spec__table {
    display: block;
    border-right: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
    white-space: normal;
  }
  .rankingBox .rankingList__item .spec__table:nth-child(2n) th {
    border-left: 1px solid #CCCCCC;
  }
  .rankingBox .rankingList__item .spec__table tr {
    display: flex;
    flex-wrap: wrap;
  }
  .rankingBox .rankingList__item .spec__table th, .rankingBox .rankingList__item .spec__table td {
    display: flex;
    padding: 20px 10px;
    border: none;
    border-top: 1px solid #CCCCCC;
    font-size: 1.3rem;
    align-items: center;
    justify-content: center;
  }
  .rankingBox .rankingList__item .spec__table th {
    width: 6rem;
    font-weight: 500;
  }
  .rankingBox .rankingList__item .spec__table td {
    width: calc((100% - 12rem) / 2);
  }
  .rankingBox .rankingList__item .conditions__ttl {
    padding: 15px 0;
  }
  .rankingBox .rankingList__item .conditions__ttl::before {
    width: 16px;
    height: 18px;
    margin: 0 7px -2px 0;
  }
  .rankingBox .rankingList__item .conditions__text {
    font-size: 1.4rem;
    line-height: 1.71428;
  }
  .rankingBox .rankingList__item .btn--col2 {
    display: block;
  }
  .rankingBox .rankingList__item .btn--col2 .btn {
    width: 100%;
  }
  .rankingBox .rankingList__item .btn--col2 .btn + .btn {
    margin: 15px 0 0;
  }
  .rankingBox .rankingList__item .btn {
    margin: 40px 0 0;
    padding: 0;
    background: transparent;
  }
  .rankingBox .rankingList__item .btn a {
    padding: 20px 5px;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.8rem;
  }
  .rankingBox .rankingList__item .btn a::before {
    width: 18px;
    height: 18px;
    margin: 0 5px -3px 0;
  }
}
@media screen and (max-width: 767px) and (min-width: 767px) {
  .rankingBox .rankingList__item .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .rankingBox .rankingList__item .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(6px, 6px);
  }
}
/*=================================
  lp
=================================*/
@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    lp
  =================================*/
}
/* =================================
  header
================================= */
.header {
  width: 100%;
  background: #fff;
}
.header__logo {
  margin-bottom: -90px;
  padding: 36px 35px;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .header__logo {
    margin-bottom: -7.3206442167vw;
    padding: 2.635431918vw 2.5622254758vw;
  }
}
.header__logo .logo {
  display: inline-block;
  margin-right: 36px;
  vertical-align: middle;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .header__logo .logo {
    width: 29.8682284041vw;
    margin-right: 2.635431918vw;
  }
}
.header__logo .logo a {
  display: block;
}
@media screen and (min-width: 767px) {
  .header__logo .logo a:hover {
    opacity: 0.8;
  }
}
.header__logo .text {
  display: inline-block;
  max-width: 13em;
  font-size: 1.4rem;
  vertical-align: middle;
}
.header .btnArea {
  margin: 0 25px 30px auto;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .header .btnArea {
    margin: 0 1.8301610542vw 2.196193265vw auto;
  }
}
.header .btnArea__ttl {
  display: none;
}
.header .btnArea__text {
  display: none;
}
.header .btnArea__btn {
  margin: 0 0 0 10px;
}
.header .gNav__inner {
  display: flex;
  flex-direction: column-reverse;
}
.header .gNavList {
  padding: 0 1%;
  background: rgb(0, 77, 161);
  background: linear-gradient(180deg, rgb(0, 77, 161) 0%, rgb(4, 69, 141) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$color-blue",endColorstr="#04458d",GradientType=1);
}
.header .gNavList__inner {
  display: flex;
  max-width: 1140px;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: space-between;
}
.header .gNavList__item {
  position: relative;
  display: inline-block;
}
.header .gNavList__item::after {
  position: absolute;
  z-index: 0;
  bottom: 13px;
  left: 50%;
  display: block;
  width: 0;
  height: 4px;
  border-bottom: 4px double #fff;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) {
  .header .gNavList__item:hover::after {
    width: 100%;
  }
}
.header .gNavList__item a {
  position: relative;
  z-index: 2;
  display: block;
  padding: 21px 0 20px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.428571;
  color: #fff;
  text-decoration: none;
}
.header .gNavList__item.current-menu-item a {
  color: #304A85;
}
.header .gNavList__item.current-menu-item a::after {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .gNavList.fixedNav {
    position: fixed;
    z-index: 999;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
    animation: header-show 0.5s ease-in;
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  /* =================================
    header
  ================================= */
  .header {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    padding: 0;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
    /*バーガーボタン設定*/
  }
  .header__inner {
    display: block;
    height: 60px;
  }
  .header__logo {
    display: flex;
    width: calc(100% - 60px);
    min-height: 60px;
    padding: 15px 0 15px 4.358974359%;
    background: #fff;
    align-items: center;
  }
  .header__logo .logo {
    width: clamp(200px, 70.7692307692vw, 276px);
    line-height: 1;
  }
  .header__logo .text {
    display: none;
  }
  .header .btnArea {
    position: relative;
    display: block;
    margin: 74px auto 0;
    padding: 40px 5.1282051282% 30px;
    background: #FFF8DB;
  }
  .header .btnArea__ttl {
    position: absolute;
    top: -43px;
    left: 5.1282051282%;
    display: block;
    width: 89.7435897436%;
    box-shadow: 3px 5px 0px 0px #DEBA10;
    font-size: 1.5rem;
  }
  .header .btnArea__ttl::before {
    position: absolute;
    top: 0;
    right: -5px;
    display: inline-block;
    width: 5px;
    height: calc(100% + 5px);
    background: #DEBA10;
  }
  .header .btnArea__ttl::after {
    bottom: -14px;
    border-width: 14px 8px 0 8px;
    filter: drop-shadow(3px 4px 0px #DEBA10);
  }
  .header .btnArea__text {
    display: block;
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 2;
  }
  .header .btnArea__btn {
    margin: 0;
  }
  .header .gNav {
    position: fixed;
    z-index: 9999;
    top: 60px;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    width: 100%;
    max-height: 90vh;
    margin: auto;
    padding: 20px 0;
    opacity: 0;
    transition: opacity 0.5s ease-in-out, transform 0.3s ease-out, visibility 0.2s ease-out;
    transform: scale(0.7);
  }
  .header .gNav__inner {
    display: block;
  }
  .header .gNavList {
    padding: 0 5.1282051282%;
    background: none;
  }
  .header .gNavList__inner {
    display: block;
  }
  .header .gNavList__item {
    display: block;
    margin: 0;
  }
  .header .gNavList__item::after {
    content: none;
  }
  .header .gNavList__item a {
    padding: 20px 40px 20px 3.8461538462%;
    border-radius: 5px;
    background: #004DA1;
    font-size: 1.4rem;
    color: #fff;
    text-align: center;
  }
  .header .gNavList__item a::before {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0 8px -3px 0;
    background: url(../img/common/icon/icon_gnav_arrow.svg) no-repeat center center;
    background-size: contain;
    content: "";
  }
  .header .gNavList__item + .gNavList__item {
    margin-top: 20px;
  }
  .header .gNav.show {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
  }
  .header .gNav.hide {
    visibility: hidden;
    opacity: 0;
    transform: scale(0.7);
  }
  .header .headerNav__cover {
    position: fixed;
    z-index: 9998;
    top: 60px;
    left: 0;
    display: none;
    width: 100vw;
    height: 0;
    background: #F5F6F9;
  }
  .header .headerNav__cover.show {
    display: block;
    animation: show 0.2s linear 0s;
  }
  .header .headerNav__cover.hide {
    display: none;
    animation: hide 0.2s linear 0s;
  }
  .header .burger {
    position: absolute;
    z-index: 9999;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    margin: auto;
    border-left: 2px solid #EBEBEB;
    background: #fff;
    cursor: pointer;
    /*クリック後、バツボタンになる*/
  }
  .header .burger::before {
    position: absolute;
    top: calc(50% - 3.5px);
    left: 50%;
    display: inline-block;
    width: 23px;
    height: 3px;
    background: #004DA1;
    content: "";
    transition-timing-function: ease-out;
    transition-duration: 0.2s;
    transition-property: all;
    transform: translate(-50%, -50%);
  }
  .header .burger::after {
    position: absolute;
    top: calc(50% + 3.5px);
    left: 50%;
    display: inline-block;
    width: 23px;
    height: 3px;
    background: #D70110;
    content: "";
    transition-timing-function: ease-out;
    transition-duration: 0.2s;
    transition-property: all;
    transform: translate(-50%, -50%);
  }
  .header .burger.is-open::before {
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .header .burger.is-open::after {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
  }
}
/*=================================
footer
=================================*/
.footer {
  background: #F5F6F9;
}
.footer__inner {
  max-width: calc(1140px + 2%);
  margin: 0 auto;
  padding: 29px 1% 27px;
}
.footer .fNavList {
  text-align: center;
}
.footer .fNavList__item {
  display: inline-block;
  margin: 0 25px;
}
.footer .fNavList__item a {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.384615;
  color: #000;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .footer .fNavList__item a:hover {
    color: #304A85;
    text-decoration: underline;
  }
}
.footer .copy {
  display: block;
  padding: 29px 1%;
  background: #004DA1;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #fff;
  text-align: center;
}

.footAnnounce {
  padding: 30px 1%;
  background: #fff;
}
.footAnnounce__inner {
  display: flex;
  flex-direction: row-reverse;
  max-width: 1280px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}
.footAnnounce .announce {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2.375;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
  footer
  =================================*/
  .footer__inner {
    padding: 29px 0;
  }
  .footer .fNavList__item {
    margin: 0 1rem;
  }
  .footer .fNavList__item a {
    font-size: 1.2rem;
  }
  .footAnnounce {
    padding: 40px 4.358974359% 30px;
    background: #FFF8DB;
  }
  .footAnnounce__inner {
    display: block;
  }
  .footAnnounce .announce {
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 2;
  }
}
/* =================================
  container
================================= */
/* singlePage */
.singlePage {
  /*---------------------
    記事タイトル
  ---------------------*/
  /*---------------------
    メインビジュアル
  ---------------------*/
  /*---------------------
    更新日
  ---------------------*/
  /*---------------------
    目次
  ---------------------*/
  /*---------------------
    関連記事
  ---------------------*/
  /*---------------------
    既存テーマスタイル
  ---------------------*/
  /* balloon状の見出し */
  /* トピックス状 */
  /* 商標誘導ボタン */
  /* 商標誘導カード */
  padding: 30px 1% 100px;
}
.singlePage h1, .singlePage h2, .singlePage h3, .singlePage h4, .singlePage h5, .singlePage h6 {
  clear: both;
}
.singlePage p:not([class]) {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
.singlePage p:not([class]) + p {
  margin-top: 2rem;
}
.singlePage h1:not([class]), .singlePage h1.wp-block-heading {
  margin-top: 100px;
  margin-bottom: 40px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}
.singlePage h2:not([class]), .singlePage h2.wp-block-heading {
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 15px 30px;
  background: #004DA1;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.singlePage h3:not([class]), .singlePage h3.wp-block-heading {
  margin-top: 68px;
  margin-bottom: 30px;
  padding-top: 18px;
  border-top: 3px solid #004DA1;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
.singlePage h4:not([class]), .singlePage h4.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 12px 24px;
  background: #F5F6F9;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.666666;
}
.singlePage h4:not([class])::before, .singlePage h4.wp-block-heading::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 7px;
  height: 100%;
  border-right: 2px solid #D70110;
  border-left: 2px solid #004DA1;
  content: "";
}
.singlePage h5:not([class]), .singlePage h5.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 33px;
  padding-left: 30px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
}
.singlePage h5:not([class])::before, .singlePage h5.wp-block-heading::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 17px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.singlePage h6:not([class]), .singlePage h6.wp-block-heading {
  position: relative;
  margin-top: 40px;
  margin-bottom: 20px;
  padding-left: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.77777;
  color: #004DA1;
}
.singlePage h6:not([class])::before, .singlePage h6.wp-block-heading::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #004DA1;
  content: "";
  transform: rotate(45deg);
}
.singlePage blockquote {
  position: relative;
  box-sizing: border-box;
  margin: 50px 0 30px;
  padding: 50px 20px 20px;
  border: 10px solid #F5F6F9;
  font-style: italic;
  color: #464646;
}
.singlePage blockquote::before {
  position: absolute;
  top: -25px;
  left: 15px;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background: #F5F6F9;
  font-size: 5rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  color: #004DA1;
  text-align: center;
  content: "“";
}
.singlePage blockquote h1 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote h2 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote h3 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote h4 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote h5 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote h6 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.singlePage blockquote p {
  font-style: normal;
}
.singlePage blockquote cite {
  display: block;
  margin: 10px 0 0;
  font-size: 0.9em;
  line-height: 1;
  color: #888888;
  text-align: right;
}
.singlePage .btnWrap {
  clear: both;
}
.singlePage img:not([class]), .singlePage.wp-block-heading {
  display: block;
  margin: 15px auto 20px;
}
.singlePage img.alignleft {
  float: left;
  margin: 0 30px 30px 0;
}
.singlePage img.alignright {
  float: right;
  margin: 0 0 30px 30px;
}
.singlePage img.aligncenter, .singlePage img.alignnone {
  display: block;
  margin: 0 auto;
}
.singlePage ul:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .singlePage ul:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.singlePage ul:not([class]) li {
  position: relative;
  padding-left: 28px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2;
  color: #004DA1;
}
.singlePage ul:not([class]) li::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/common/icon/icon_ul.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.singlePage ul:not([class]) li + li {
  margin-top: 10px;
}
.singlePage ul:not([class]) h1::before {
  content: none;
}
.singlePage ul:not([class]) h2::before {
  content: none;
}
.singlePage ul:not([class]) h3::before {
  content: none;
}
.singlePage ul:not([class]) h4::before {
  content: none;
}
.singlePage ul:not([class]) h5::before {
  content: none;
}
.singlePage ul:not([class]) h6::before {
  content: none;
}
.singlePage ol:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
  counter-reset: listNum;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .singlePage ol:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.singlePage ol:not([class]) li {
  position: relative;
  padding-left: 31px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.singlePage ol:not([class]) li::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: inline-block;
  width: 24px;
  border-radius: 50px;
  background: #004DA1;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
  text-align: center;
  content: counter(listNum);
  counter-increment: listNum;
}
.singlePage ol:not([class]) li + li {
  margin-top: 10px;
}
.singlePage ol:not([class]) h1::before {
  content: none;
}
.singlePage ol:not([class]) h2::before {
  content: none;
}
.singlePage ol:not([class]) h3::before {
  content: none;
}
.singlePage ol:not([class]) h4::before {
  content: none;
}
.singlePage ol:not([class]) h5::before {
  content: none;
}
.singlePage ol:not([class]) h6::before {
  content: none;
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .singlePage p:not([class]) {
    font-size: 1.5rem;
    line-height: 1.71428;
  }
  .singlePage h1:not([class]), .singlePage h1.wp-block-heading {
    margin-top: 54px;
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.44444;
  }
  .singlePage h2:not([class]), .singlePage h2.wp-block-heading {
    width: calc(108.7179487179% + 2px);
    margin-top: 54px;
    margin-bottom: 20px;
    margin-left: calc(-4.358974359% - 1px);
    padding: 15px 4.358974359%;
    font-size: 1.8rem;
    line-height: 1.55555;
  }
  .singlePage h3:not([class]), .singlePage h3.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 20px;
    padding-top: 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .singlePage h4:not([class]), .singlePage h4.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 11px 4.1025641026%;
    font-size: 1.4rem;
    line-height: 1.625;
  }
  .singlePage h5:not([class]), .singlePage h5.wp-block-heading {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-left: 22px;
    font-size: 1.5rem;
  }
  .singlePage h5:not([class])::before, .singlePage h5.wp-block-heading::before {
    top: 5px;
    width: 15px;
    height: 14px;
  }
  .singlePage h6:not([class]), .singlePage h6.wp-block-heading {
    padding-left: 15px;
    font-size: 1.5rem;
    line-height: 1.73333;
  }
  .singlePage h6:not([class])::before, .singlePage h6.wp-block-heading::before {
    top: 10px;
    width: 8px;
    height: 8px;
  }
  .singlePage blockquote {
    margin: 40px 0 30px;
    padding: 40px 3.8461538462% 20px;
    border: 7px solid #F5F6F9;
  }
  .singlePage blockquote::before {
    width: 45px;
    height: 45px;
    font-size: 4rem;
    line-height: 1.5;
  }
  .singlePage blockquote h1 {
    font-size: 1.5rem;
  }
  .singlePage blockquote h2 {
    font-size: 1.5rem;
  }
  .singlePage blockquote h3 {
    font-size: 1.5rem;
  }
  .singlePage blockquote h4 {
    font-size: 1.5rem;
  }
  .singlePage blockquote h5 {
    font-size: 1.5rem;
  }
  .singlePage blockquote h6 {
    font-size: 1.5rem;
  }
  .singlePage img.alignleft {
    margin: 0 7px 7px 0;
  }
  .singlePage img.alignright {
    margin: 0 0 7px 7px;
  }
  .singlePage ul:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .singlePage ul:not([class]) li {
    padding-left: 28px;
  }
  .singlePage ul:not([class]) li::before {
    top: 5px;
    width: 20px;
    height: 20px;
  }
  .singlePage ol:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .singlePage ol:not([class]) li::before {
    width: 22px;
    font-size: 1rem;
    line-height: 22px;
  }
}
.singlePage iframe {
  width: 100%;
}
.singlePage .articleTtl {
  margin: 0 0 8px;
  font-size: 3.2rem;
  line-height: 1.5;
}
.singlePage .articleMv {
  overflow: hidden;
  margin: 15px auto;
  text-align: center;
}
.singlePage .articleMv img {
  margin: 0 auto;
}
.singlePage .date {
  text-align: right;
}
.singlePage .date > * {
  display: inline-block;
  margin: 0;
  font-size: 1.2rem !important;
  font-weight: 400;
  line-height: 1 !important;
  color: #333333;
}
.singlePage .date > * + * {
  margin: 0 0 0 1rem !important;
}
.singlePage .tocBox {
  margin: 40px auto 100px;
  padding: 23px;
  background: #F5F6F9;
}
.singlePage .tocBox__inner {
  padding: 0 20px 20px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}
.singlePage .tocBox__ttl {
  margin: 0 0 15px;
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
}
.singlePage .tocBox__ttl::before {
  display: inline-block;
  width: 20px;
  height: 16px;
  margin: 0 9px -2px 0;
  background: url(../img/common/icon/icon_book.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.singlePage .tocBox .tocList {
  counter-reset: tocNum;
}
.singlePage .tocBox .tocList__item:not(:last-child) {
  border-bottom: 1px solid #D2DAF0;
}
.singlePage .tocBox .tocList__item a {
  position: relative;
  display: block;
  padding: 12px 24px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  text-decoration: none;
}
.singlePage .tocBox .tocList__item a::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  content: counter(tocNum) ".";
  counter-increment: tocNum;
}
.singlePage .tocBox .tocList__item a::after {
  position: absolute;
  right: 0;
  bottom: 12px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .singlePage .tocBox .tocList__item a:hover {
    color: #304A85;
    text-decoration: underline;
  }
  .singlePage .tocBox .tocList__item a:hover::after {
    bottom: 6px;
  }
}
.singlePage .tocBox .tocList__item .tocList {
  padding-left: 26px;
  counter-reset: tocChildNum;
}
.singlePage .tocBox .tocList__item .tocList__item a {
  display: block;
  padding-left: 46px;
}
.singlePage .tocBox .tocList__item .tocList__item a::before {
  content: counter(tocNum) " - " counter(tocChildNum) ".";
  counter-increment: tocChildNum;
}
.singlePage .tocBox .tocMore {
  position: relative;
  left: 50%;
  display: inline-block;
  margin-top: 20px;
  padding: 8px 20px;
  background: #FECB3F;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  text-align: center;
  cursor: pointer;
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) {
  .singlePage .tocBox .tocMore:hover {
    background: #004DA1;
    color: #fff;
  }
}
.singlePage .tocBox:not(.open) .tocBox__inner > .tocList > .tocList__item:nth-child(n+4) {
  display: none;
}
.singlePage .tocBox:not(.open) .tocMore::after {
  transform: rotate(0deg);
}
@media screen and (min-width: 767px) {
  .singlePage .tocBox:not(.open) .tocMore:hover::after {
    transform: translateY(2px) rotate(90deg);
  }
}
.singlePage .related {
  position: relative;
  margin: 60px auto 50px;
}
.singlePage .related__ttl {
  position: absolute;
  z-index: 1;
  top: -24px;
  right: 4px;
}
.singlePage .related .relatedList__item {
  padding: 16px 24px 15px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}
.singlePage .related .relatedList__item::after {
  right: 12px;
  bottom: 14px;
  border-width: 0 0 14px 14px;
}
.singlePage .related .relatedList__item .itemWrap .thumb {
  width: 80px;
  min-height: 80px;
}
.singlePage .related .relatedList__item .itemWrap .thumb img {
  margin: 0;
}
.singlePage .related .relatedList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 102px);
  margin-left: 22px;
}
.singlePage .related .relatedList__item .itemWrap .textWrap {
  padding: 15px 0;
}
.singlePage .related .relatedList__item .itemWrap .textWrap__ttl {
  font-size: 1.8rem;
  line-height: 1.38888;
}
.singlePage .related .relatedList__item + .relatedList__item {
  margin-top: 40px;
}
.singlePage .point {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.singlePage .point::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.singlePage .point::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.singlePage .point .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.singlePage .point + ul, .singlePage .point ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.singlePage .point + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.singlePage .tbl_ttl {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.singlePage .tbl_ttl::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.singlePage .tbl_ttl::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.singlePage .tbl_ttl .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.singlePage .tbl_ttl + ul, .singlePage .tbl_ttl ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.singlePage .tbl_ttl + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.singlePage .note {
  position: relative;
  margin: 50px 40px;
  padding: 50px 40px 40px;
  background: #F5F6F9;
}
.singlePage .note::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 7px;
  border-top: 2px solid #004DA1;
  border-bottom: 2px solid #D70110;
  content: "";
}
.singlePage .note h1 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h1::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h1::after {
  content: none;
}
.singlePage .note h2 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h2::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h2::after {
  content: none;
}
.singlePage .note h3 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h3::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h3::after {
  content: none;
}
.singlePage .note h4 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h4::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h4::after {
  content: none;
}
.singlePage .note h5 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h5::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h5::after {
  content: none;
}
.singlePage .note h6 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.singlePage .note h6::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.singlePage .note h6::after {
  content: none;
}
.singlePage .note p {
  margin: 0 !important;
  padding: 20px;
  background: #fff;
}
.singlePage .note p + p {
  padding-top: 0;
}
.singlePage .btn {
  margin: 50px auto;
  padding: 30px;
  background: #F5F6F9;
}
.singlePage .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 4px 4px 0px 4px #AA000C;
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.singlePage .btn a::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .singlePage .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .singlePage .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(8px, 8px);
  }
}
.singlePage .intr {
  position: relative;
  margin: 34px 0 70px;
}
.singlePage .intr__ttl {
  position: absolute;
  top: -33px;
  right: 4px;
}
.singlePage .intrBox {
  padding: 20px;
  border: 10px solid #E6E6E6;
}
.singlePage .intrBox__link {
  display: block;
  margin: 0 0 20px;
  padding: 13px 5px;
  background: #F5F6F9;
  font-size: 2.2rem;
  color: #004DA1;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .singlePage .intrBox__link:hover {
    text-decoration: underline;
  }
}
.singlePage .intrBox__cont {
  display: flex;
  align-items: flex-start;
}
.singlePage .intrBox__cont .thumb {
  width: clamp(150px, 19.0336749634vw, 260px);
  margin-right: 30px;
}
.singlePage .intrBox__cont .thumb + .spec {
  width: calc(100% - clamp(150px, 19.0336749634vw, 260px) - 30px);
}
.singlePage .intrBox__cont .spec__text {
  font-size: 1.5rem;
}
.singlePage .intrBox__cont .spec__table {
  margin: 16px 0;
}
.singlePage .intrBox__cont .spec__table th {
  font-weight: 500;
}
.singlePage .intrBox__cont .spec__table td {
  background: #fff;
  font-weight: 700;
  text-align: center;
}
.singlePage .intrBox__cont .spec__note {
  margin: 5px 0 0;
  font-size: 1rem;
  text-align: right;
}
.singlePage .intrBox__cont .spec__btn {
  position: relative;
  display: block;
  margin: 12px 0 0;
  padding: 13px 5px 11px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.singlePage .intrBox__cont .spec__btn::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .singlePage .intrBox__cont .spec__btn {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .singlePage .intrBox__cont .spec__btn:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(2px, 2px);
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .singlePage {
    /*---------------------
      記事タイトル
    ---------------------*/
    /*---------------------
      メインビジュアル
    ---------------------*/
    /*---------------------
      更新日
    ---------------------*/
    /*---------------------
      目次
    ---------------------*/
    /*---------------------
      関連記事
    ---------------------*/
    /*---------------------
      既存テーマスタイル
    ---------------------*/
    /* balloon状の見出し */
    /* トピックス状 */
    /* 商標誘導ボタン */
    /* 商標誘導カード */
  }
  .singlePage .articleTtl {
    font-size: 2.4rem;
    line-height: 1.33333;
  }
  .singlePage .articleMv {
    padding: 0 2.0512820513%;
  }
  .singlePage .date {
    text-align: left;
  }
  .singlePage .tocBox {
    width: calc(108.7179487179% + 2px);
    margin: 50px auto;
    margin-left: calc(-4.358974359% - 1px);
    padding: 17px 4.358974359%;
  }
  .singlePage .tocBox__inner {
    padding: 10px 3.8461538462% 26px;
    border: 1px solid #D2DAF0;
  }
  .singlePage .tocBox__inner > .tocList > .tocList__item:last-of-type {
    border-bottom: 1px solid #D2DAF0;
  }
  .singlePage .tocBox__ttl {
    margin: 0 0 10px;
  }
  .singlePage .tocBox__ttl::before {
    width: 18px;
    height: 14px;
    margin: 0 7px -2px 0;
  }
  .singlePage .tocBox .tocList__item a {
    padding: 11px 1rem 11px 2rem;
    font-size: 1.4rem;
  }
  .singlePage .tocBox .tocList__item a::before {
    top: 11px;
    font-size: 1.4rem;
  }
  .singlePage .tocBox .tocList__item a::after {
    bottom: 9px;
    border-width: 0 0 9px 9px;
  }
  .singlePage .tocBox .tocList__item .tocList {
    padding-left: 2rem;
  }
  .singlePage .tocBox .tocList__item .tocList__item a {
    padding-left: 4rem;
  }
  .singlePage .tocBox .tocMore {
    margin-top: 15px;
    padding: 5px 15px;
    font-size: 1.3rem;
  }
  .singlePage .related {
    margin: 30px auto;
  }
  .singlePage .related__ttl {
    position: relative;
    top: -8px;
    right: initial;
    left: 50%;
    transform: translateX(-50%);
  }
  .singlePage .related .relatedList__item {
    padding: 10px 6.6666666667% 10px 2.5641025641%;
  }
  .singlePage .related .relatedList__item::after {
    right: 11px;
    bottom: 10px;
    border-width: 0 0 10px 10px;
  }
  .singlePage .related .relatedList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 90px);
    margin-left: 10px;
  }
  .singlePage .related .relatedList__item .itemWrap .textWrap {
    padding: 0;
  }
  .singlePage .related .relatedList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.4285;
  }
  .singlePage .related .relatedList__item + .relatedList__item {
    margin-top: 17px;
  }
  .singlePage .point {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .singlePage .point .icon {
    margin: 0 12px 0 0;
  }
  .singlePage .tbl_ttl {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .singlePage .tbl_ttl .icon {
    margin: 0 12px 0 0;
  }
  .singlePage .note {
    margin: 30px 0 40px;
    padding: 25px 5.8974358974% 25px;
  }
  .singlePage .note h1 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h1::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note h2 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h2::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note h3 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h3::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note h4 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h4::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note h5 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h5::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note h6 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .singlePage .note h6::before {
    width: 24px;
    height: 33px;
  }
  .singlePage .note p {
    padding: 18px 4.6153846154%;
  }
  .singlePage .btn {
    margin: 37px auto;
    padding: 8px;
  }
  .singlePage .btn a {
    padding: 20px 4.358974359%;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.8rem;
  }
  .singlePage .btn a::before {
    width: 16px;
    height: 16px;
    margin: 0 5px -2px 0;
  }
  .singlePage .intr {
    margin: 32px 0 40px;
  }
  .singlePage .intr__ttl {
    position: relative;
    top: -12px;
    right: initial;
    left: 50%;
    font-size: 1.4rem;
    line-height: 3.2;
    transform: translateX(-50%);
  }
  .singlePage .intrBox {
    padding: 10px 10px 20px;
    border: 7px solid #E6E6E6;
  }
  .singlePage .intrBox__link {
    padding: 10px;
    font-size: 1.6rem;
  }
  .singlePage .intrBox__cont {
    display: block;
  }
  .singlePage .intrBox__cont .thumb {
    width: 97.4358974359%;
    margin: 0 auto 20px;
  }
  .singlePage .intrBox__cont .thumb + .spec {
    width: 100%;
  }
  .singlePage .intrBox__cont .spec__text {
    font-size: 1.6rem;
    text-align: center;
  }
  .singlePage .intrBox__cont .spec__table {
    display: table;
    margin: 10px 0 15px;
    white-space: normal;
  }
  .singlePage .intrBox__cont .spec__table th {
    padding: 8px;
    font-size: 1.2rem;
  }
  .singlePage .intrBox__cont .spec__table td {
    padding: 8px;
    font-size: 1.4rem;
  }
  .singlePage .intrBox__cont .spec__note {
    margin: 15px 0 0;
    font-size: 1.2rem;
    text-align: left;
  }
  .singlePage .intrBox__cont .spec__btn {
    margin: 20px 0 0;
    padding: 17px 5px 17px;
  }
}
.singlePage__in {
  max-width: 1140px;
  margin: 0 auto;
}
.singlePage__in > h1:first-child {
  margin-top: 0 !important;
}
.singlePage__in > h2:first-child {
  margin-top: 0 !important;
}
.singlePage__in > h3:first-child {
  margin-top: 0 !important;
}
.singlePage__in > h4:first-child {
  margin-top: 0 !important;
}
.singlePage__in > h5:first-child {
  margin-top: 0 !important;
}
.singlePage__in > h6:first-child {
  margin-top: 0 !important;
}
.singlePage__in .tocBox + * {
  margin-top: 0 !important;
}

/* 記事詳細ページ */
.articleDetail {
  position: relative;
  /*---------------------
    記事タイトル
  ---------------------*/
  /*---------------------
    メインビジュアル
  ---------------------*/
  /*---------------------
    更新日
  ---------------------*/
  /*---------------------
    目次
  ---------------------*/
  /*---------------------
    関連記事
  ---------------------*/
  /*---------------------
    既存テーマスタイル
  ---------------------*/
  /* balloon状の見出し */
  /* トピックス状 */
  /* 商標誘導ボタン */
  /* 商標誘導カード */
  padding: 33px 0 0;
}
.articleDetail h1, .articleDetail h2, .articleDetail h3, .articleDetail h4, .articleDetail h5, .articleDetail h6 {
  clear: both;
}
.articleDetail p:not([class]) {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
.articleDetail p:not([class]) + p {
  margin-top: 2rem;
}
.articleDetail h1:not([class]), .articleDetail h1.wp-block-heading {
  margin-top: 100px;
  margin-bottom: 40px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}
.articleDetail h2:not([class]), .articleDetail h2.wp-block-heading {
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 15px 30px;
  background: #004DA1;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.articleDetail h3:not([class]), .articleDetail h3.wp-block-heading {
  margin-top: 68px;
  margin-bottom: 30px;
  padding-top: 18px;
  border-top: 3px solid #004DA1;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
.articleDetail h4:not([class]), .articleDetail h4.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 12px 24px;
  background: #F5F6F9;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.666666;
}
.articleDetail h4:not([class])::before, .articleDetail h4.wp-block-heading::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 7px;
  height: 100%;
  border-right: 2px solid #D70110;
  border-left: 2px solid #004DA1;
  content: "";
}
.articleDetail h5:not([class]), .articleDetail h5.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 33px;
  padding-left: 30px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
}
.articleDetail h5:not([class])::before, .articleDetail h5.wp-block-heading::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 17px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.articleDetail h6:not([class]), .articleDetail h6.wp-block-heading {
  position: relative;
  margin-top: 40px;
  margin-bottom: 20px;
  padding-left: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.77777;
  color: #004DA1;
}
.articleDetail h6:not([class])::before, .articleDetail h6.wp-block-heading::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #004DA1;
  content: "";
  transform: rotate(45deg);
}
.articleDetail blockquote {
  position: relative;
  box-sizing: border-box;
  margin: 50px 0 30px;
  padding: 50px 20px 20px;
  border: 10px solid #F5F6F9;
  font-style: italic;
  color: #464646;
}
.articleDetail blockquote::before {
  position: absolute;
  top: -25px;
  left: 15px;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background: #F5F6F9;
  font-size: 5rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  color: #004DA1;
  text-align: center;
  content: "“";
}
.articleDetail blockquote h1 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote h2 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote h3 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote h4 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote h5 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote h6 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.articleDetail blockquote p {
  font-style: normal;
}
.articleDetail blockquote cite {
  display: block;
  margin: 10px 0 0;
  font-size: 0.9em;
  line-height: 1;
  color: #888888;
  text-align: right;
}
.articleDetail .btnWrap {
  clear: both;
}
.articleDetail img:not([class]), .articleDetail.wp-block-heading {
  display: block;
  margin: 15px auto 20px;
}
.articleDetail img.alignleft {
  float: left;
  margin: 0 30px 30px 0;
}
.articleDetail img.alignright {
  float: right;
  margin: 0 0 30px 30px;
}
.articleDetail img.aligncenter, .articleDetail img.alignnone {
  display: block;
  margin: 0 auto;
}
.articleDetail ul:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .articleDetail ul:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.articleDetail ul:not([class]) li {
  position: relative;
  padding-left: 28px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2;
  color: #004DA1;
}
.articleDetail ul:not([class]) li::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/common/icon/icon_ul.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.articleDetail ul:not([class]) li + li {
  margin-top: 10px;
}
.articleDetail ul:not([class]) h1::before {
  content: none;
}
.articleDetail ul:not([class]) h2::before {
  content: none;
}
.articleDetail ul:not([class]) h3::before {
  content: none;
}
.articleDetail ul:not([class]) h4::before {
  content: none;
}
.articleDetail ul:not([class]) h5::before {
  content: none;
}
.articleDetail ul:not([class]) h6::before {
  content: none;
}
.articleDetail ol:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
  counter-reset: listNum;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .articleDetail ol:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.articleDetail ol:not([class]) li {
  position: relative;
  padding-left: 31px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.articleDetail ol:not([class]) li::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: inline-block;
  width: 24px;
  border-radius: 50px;
  background: #004DA1;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
  text-align: center;
  content: counter(listNum);
  counter-increment: listNum;
}
.articleDetail ol:not([class]) li + li {
  margin-top: 10px;
}
.articleDetail ol:not([class]) h1::before {
  content: none;
}
.articleDetail ol:not([class]) h2::before {
  content: none;
}
.articleDetail ol:not([class]) h3::before {
  content: none;
}
.articleDetail ol:not([class]) h4::before {
  content: none;
}
.articleDetail ol:not([class]) h5::before {
  content: none;
}
.articleDetail ol:not([class]) h6::before {
  content: none;
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .articleDetail p:not([class]) {
    font-size: 1.5rem;
    line-height: 1.71428;
  }
  .articleDetail h1:not([class]), .articleDetail h1.wp-block-heading {
    margin-top: 54px;
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.44444;
  }
  .articleDetail h2:not([class]), .articleDetail h2.wp-block-heading {
    width: calc(108.7179487179% + 2px);
    margin-top: 54px;
    margin-bottom: 20px;
    margin-left: calc(-4.358974359% - 1px);
    padding: 15px 4.358974359%;
    font-size: 1.8rem;
    line-height: 1.55555;
  }
  .articleDetail h3:not([class]), .articleDetail h3.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 20px;
    padding-top: 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .articleDetail h4:not([class]), .articleDetail h4.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 11px 4.1025641026%;
    font-size: 1.4rem;
    line-height: 1.625;
  }
  .articleDetail h5:not([class]), .articleDetail h5.wp-block-heading {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-left: 22px;
    font-size: 1.5rem;
  }
  .articleDetail h5:not([class])::before, .articleDetail h5.wp-block-heading::before {
    top: 5px;
    width: 15px;
    height: 14px;
  }
  .articleDetail h6:not([class]), .articleDetail h6.wp-block-heading {
    padding-left: 15px;
    font-size: 1.5rem;
    line-height: 1.73333;
  }
  .articleDetail h6:not([class])::before, .articleDetail h6.wp-block-heading::before {
    top: 10px;
    width: 8px;
    height: 8px;
  }
  .articleDetail blockquote {
    margin: 40px 0 30px;
    padding: 40px 3.8461538462% 20px;
    border: 7px solid #F5F6F9;
  }
  .articleDetail blockquote::before {
    width: 45px;
    height: 45px;
    font-size: 4rem;
    line-height: 1.5;
  }
  .articleDetail blockquote h1 {
    font-size: 1.5rem;
  }
  .articleDetail blockquote h2 {
    font-size: 1.5rem;
  }
  .articleDetail blockquote h3 {
    font-size: 1.5rem;
  }
  .articleDetail blockquote h4 {
    font-size: 1.5rem;
  }
  .articleDetail blockquote h5 {
    font-size: 1.5rem;
  }
  .articleDetail blockquote h6 {
    font-size: 1.5rem;
  }
  .articleDetail img.alignleft {
    margin: 0 7px 7px 0;
  }
  .articleDetail img.alignright {
    margin: 0 0 7px 7px;
  }
  .articleDetail ul:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .articleDetail ul:not([class]) li {
    padding-left: 28px;
  }
  .articleDetail ul:not([class]) li::before {
    top: 5px;
    width: 20px;
    height: 20px;
  }
  .articleDetail ol:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .articleDetail ol:not([class]) li::before {
    width: 22px;
    font-size: 1rem;
    line-height: 22px;
  }
}
.articleDetail iframe {
  width: 100%;
}
.articleDetail .articleTtl {
  margin: 0 0 8px;
  font-size: 3.2rem;
  line-height: 1.5;
}
.articleDetail .articleMv {
  overflow: hidden;
  margin: 15px auto;
  text-align: center;
}
.articleDetail .articleMv img {
  margin: 0 auto;
}
.articleDetail .date {
  text-align: right;
}
.articleDetail .date > * {
  display: inline-block;
  margin: 0;
  font-size: 1.2rem !important;
  font-weight: 400;
  line-height: 1 !important;
  color: #333333;
}
.articleDetail .date > * + * {
  margin: 0 0 0 1rem !important;
}
.articleDetail .tocBox {
  margin: 40px auto 100px;
  padding: 23px;
  background: #F5F6F9;
}
.articleDetail .tocBox__inner {
  padding: 0 20px 20px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}
.articleDetail .tocBox__ttl {
  margin: 0 0 15px;
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
}
.articleDetail .tocBox__ttl::before {
  display: inline-block;
  width: 20px;
  height: 16px;
  margin: 0 9px -2px 0;
  background: url(../img/common/icon/icon_book.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.articleDetail .tocBox .tocList {
  counter-reset: tocNum;
}
.articleDetail .tocBox .tocList__item:not(:last-child) {
  border-bottom: 1px solid #D2DAF0;
}
.articleDetail .tocBox .tocList__item a {
  position: relative;
  display: block;
  padding: 12px 24px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  text-decoration: none;
}
.articleDetail .tocBox .tocList__item a::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  content: counter(tocNum) ".";
  counter-increment: tocNum;
}
.articleDetail .tocBox .tocList__item a::after {
  position: absolute;
  right: 0;
  bottom: 12px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .articleDetail .tocBox .tocList__item a:hover {
    color: #304A85;
    text-decoration: underline;
  }
  .articleDetail .tocBox .tocList__item a:hover::after {
    bottom: 6px;
  }
}
.articleDetail .tocBox .tocList__item .tocList {
  padding-left: 26px;
  counter-reset: tocChildNum;
}
.articleDetail .tocBox .tocList__item .tocList__item a {
  display: block;
  padding-left: 46px;
}
.articleDetail .tocBox .tocList__item .tocList__item a::before {
  content: counter(tocNum) " - " counter(tocChildNum) ".";
  counter-increment: tocChildNum;
}
.articleDetail .tocBox .tocMore {
  position: relative;
  left: 50%;
  display: inline-block;
  margin-top: 20px;
  padding: 8px 20px;
  background: #FECB3F;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  text-align: center;
  cursor: pointer;
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) {
  .articleDetail .tocBox .tocMore:hover {
    background: #004DA1;
    color: #fff;
  }
}
.articleDetail .tocBox:not(.open) .tocBox__inner > .tocList > .tocList__item:nth-child(n+4) {
  display: none;
}
.articleDetail .tocBox:not(.open) .tocMore::after {
  transform: rotate(0deg);
}
@media screen and (min-width: 767px) {
  .articleDetail .tocBox:not(.open) .tocMore:hover::after {
    transform: translateY(2px) rotate(90deg);
  }
}
.articleDetail .related {
  position: relative;
  margin: 60px auto 50px;
}
.articleDetail .related__ttl {
  position: absolute;
  z-index: 1;
  top: -24px;
  right: 4px;
}
.articleDetail .related .relatedList__item {
  padding: 16px 24px 15px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}
.articleDetail .related .relatedList__item::after {
  right: 12px;
  bottom: 14px;
  border-width: 0 0 14px 14px;
}
.articleDetail .related .relatedList__item .itemWrap .thumb {
  width: 80px;
  min-height: 80px;
}
.articleDetail .related .relatedList__item .itemWrap .thumb img {
  margin: 0;
}
.articleDetail .related .relatedList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 102px);
  margin-left: 22px;
}
.articleDetail .related .relatedList__item .itemWrap .textWrap {
  padding: 15px 0;
}
.articleDetail .related .relatedList__item .itemWrap .textWrap__ttl {
  font-size: 1.8rem;
  line-height: 1.38888;
}
.articleDetail .related .relatedList__item + .relatedList__item {
  margin-top: 40px;
}
.articleDetail .point {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.articleDetail .point::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.articleDetail .point::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.articleDetail .point .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.articleDetail .point + ul, .articleDetail .point ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.articleDetail .point + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.articleDetail .tbl_ttl {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.articleDetail .tbl_ttl::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.articleDetail .tbl_ttl::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.articleDetail .tbl_ttl .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.articleDetail .tbl_ttl + ul, .articleDetail .tbl_ttl ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.articleDetail .tbl_ttl + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.articleDetail .note {
  position: relative;
  margin: 50px 40px;
  padding: 50px 40px 40px;
  background: #F5F6F9;
}
.articleDetail .note::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 7px;
  border-top: 2px solid #004DA1;
  border-bottom: 2px solid #D70110;
  content: "";
}
.articleDetail .note h1 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h1::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h1::after {
  content: none;
}
.articleDetail .note h2 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h2::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h2::after {
  content: none;
}
.articleDetail .note h3 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h3::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h3::after {
  content: none;
}
.articleDetail .note h4 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h4::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h4::after {
  content: none;
}
.articleDetail .note h5 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h5::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h5::after {
  content: none;
}
.articleDetail .note h6 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.articleDetail .note h6::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.articleDetail .note h6::after {
  content: none;
}
.articleDetail .note p {
  margin: 0 !important;
  padding: 20px;
  background: #fff;
}
.articleDetail .note p + p {
  padding-top: 0;
}
.articleDetail .btn {
  margin: 50px auto;
  padding: 30px;
  background: #F5F6F9;
}
.articleDetail .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 4px 4px 0px 4px #AA000C;
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.articleDetail .btn a::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .articleDetail .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .articleDetail .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(8px, 8px);
  }
}
.articleDetail .intr {
  position: relative;
  margin: 34px 0 70px;
}
.articleDetail .intr__ttl {
  position: absolute;
  top: -33px;
  right: 4px;
}
.articleDetail .intrBox {
  padding: 20px;
  border: 10px solid #E6E6E6;
}
.articleDetail .intrBox__link {
  display: block;
  margin: 0 0 20px;
  padding: 13px 5px;
  background: #F5F6F9;
  font-size: 2.2rem;
  color: #004DA1;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .articleDetail .intrBox__link:hover {
    text-decoration: underline;
  }
}
.articleDetail .intrBox__cont {
  display: flex;
  align-items: flex-start;
}
.articleDetail .intrBox__cont .thumb {
  width: clamp(150px, 19.0336749634vw, 260px);
  margin-right: 30px;
}
.articleDetail .intrBox__cont .thumb + .spec {
  width: calc(100% - clamp(150px, 19.0336749634vw, 260px) - 30px);
}
.articleDetail .intrBox__cont .spec__text {
  font-size: 1.5rem;
}
.articleDetail .intrBox__cont .spec__table {
  margin: 16px 0;
}
.articleDetail .intrBox__cont .spec__table th {
  font-weight: 500;
}
.articleDetail .intrBox__cont .spec__table td {
  background: #fff;
  font-weight: 700;
  text-align: center;
}
.articleDetail .intrBox__cont .spec__note {
  margin: 5px 0 0;
  font-size: 1rem;
  text-align: right;
}
.articleDetail .intrBox__cont .spec__btn {
  position: relative;
  display: block;
  margin: 12px 0 0;
  padding: 13px 5px 11px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.articleDetail .intrBox__cont .spec__btn::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .articleDetail .intrBox__cont .spec__btn {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .articleDetail .intrBox__cont .spec__btn:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(2px, 2px);
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .articleDetail {
    /*---------------------
      記事タイトル
    ---------------------*/
    /*---------------------
      メインビジュアル
    ---------------------*/
    /*---------------------
      更新日
    ---------------------*/
    /*---------------------
      目次
    ---------------------*/
    /*---------------------
      関連記事
    ---------------------*/
    /*---------------------
      既存テーマスタイル
    ---------------------*/
    /* balloon状の見出し */
    /* トピックス状 */
    /* 商標誘導ボタン */
    /* 商標誘導カード */
  }
  .articleDetail .articleTtl {
    font-size: 2.4rem;
    line-height: 1.33333;
  }
  .articleDetail .articleMv {
    padding: 0 2.0512820513%;
  }
  .articleDetail .date {
    text-align: left;
  }
  .articleDetail .tocBox {
    width: calc(108.7179487179% + 2px);
    margin: 50px auto;
    margin-left: calc(-4.358974359% - 1px);
    padding: 17px 4.358974359%;
  }
  .articleDetail .tocBox__inner {
    padding: 10px 3.8461538462% 26px;
    border: 1px solid #D2DAF0;
  }
  .articleDetail .tocBox__inner > .tocList > .tocList__item:last-of-type {
    border-bottom: 1px solid #D2DAF0;
  }
  .articleDetail .tocBox__ttl {
    margin: 0 0 10px;
  }
  .articleDetail .tocBox__ttl::before {
    width: 18px;
    height: 14px;
    margin: 0 7px -2px 0;
  }
  .articleDetail .tocBox .tocList__item a {
    padding: 11px 1rem 11px 2rem;
    font-size: 1.4rem;
  }
  .articleDetail .tocBox .tocList__item a::before {
    top: 11px;
    font-size: 1.4rem;
  }
  .articleDetail .tocBox .tocList__item a::after {
    bottom: 9px;
    border-width: 0 0 9px 9px;
  }
  .articleDetail .tocBox .tocList__item .tocList {
    padding-left: 2rem;
  }
  .articleDetail .tocBox .tocList__item .tocList__item a {
    padding-left: 4rem;
  }
  .articleDetail .tocBox .tocMore {
    margin-top: 15px;
    padding: 5px 15px;
    font-size: 1.3rem;
  }
  .articleDetail .related {
    margin: 30px auto;
  }
  .articleDetail .related__ttl {
    position: relative;
    top: -8px;
    right: initial;
    left: 50%;
    transform: translateX(-50%);
  }
  .articleDetail .related .relatedList__item {
    padding: 10px 6.6666666667% 10px 2.5641025641%;
  }
  .articleDetail .related .relatedList__item::after {
    right: 11px;
    bottom: 10px;
    border-width: 0 0 10px 10px;
  }
  .articleDetail .related .relatedList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 90px);
    margin-left: 10px;
  }
  .articleDetail .related .relatedList__item .itemWrap .textWrap {
    padding: 0;
  }
  .articleDetail .related .relatedList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.4285;
  }
  .articleDetail .related .relatedList__item + .relatedList__item {
    margin-top: 17px;
  }
  .articleDetail .point {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .articleDetail .point .icon {
    margin: 0 12px 0 0;
  }
  .articleDetail .tbl_ttl {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .articleDetail .tbl_ttl .icon {
    margin: 0 12px 0 0;
  }
  .articleDetail .note {
    margin: 30px 0 40px;
    padding: 25px 5.8974358974% 25px;
  }
  .articleDetail .note h1 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h1::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note h2 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h2::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note h3 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h3::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note h4 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h4::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note h5 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h5::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note h6 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .articleDetail .note h6::before {
    width: 24px;
    height: 33px;
  }
  .articleDetail .note p {
    padding: 18px 4.6153846154%;
  }
  .articleDetail .btn {
    margin: 37px auto;
    padding: 8px;
  }
  .articleDetail .btn a {
    padding: 20px 4.358974359%;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.8rem;
  }
  .articleDetail .btn a::before {
    width: 16px;
    height: 16px;
    margin: 0 5px -2px 0;
  }
  .articleDetail .intr {
    margin: 32px 0 40px;
  }
  .articleDetail .intr__ttl {
    position: relative;
    top: -12px;
    right: initial;
    left: 50%;
    font-size: 1.4rem;
    line-height: 3.2;
    transform: translateX(-50%);
  }
  .articleDetail .intrBox {
    padding: 10px 10px 20px;
    border: 7px solid #E6E6E6;
  }
  .articleDetail .intrBox__link {
    padding: 10px;
    font-size: 1.6rem;
  }
  .articleDetail .intrBox__cont {
    display: block;
  }
  .articleDetail .intrBox__cont .thumb {
    width: 97.4358974359%;
    margin: 0 auto 20px;
  }
  .articleDetail .intrBox__cont .thumb + .spec {
    width: 100%;
  }
  .articleDetail .intrBox__cont .spec__text {
    font-size: 1.6rem;
    text-align: center;
  }
  .articleDetail .intrBox__cont .spec__table {
    display: table;
    margin: 10px 0 15px;
    white-space: normal;
  }
  .articleDetail .intrBox__cont .spec__table th {
    padding: 8px;
    font-size: 1.2rem;
  }
  .articleDetail .intrBox__cont .spec__table td {
    padding: 8px;
    font-size: 1.4rem;
  }
  .articleDetail .intrBox__cont .spec__note {
    margin: 15px 0 0;
    font-size: 1.2rem;
    text-align: left;
  }
  .articleDetail .intrBox__cont .spec__btn {
    margin: 20px 0 0;
    padding: 17px 5px 17px;
  }
}
.articleDetail::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  border-top: 3px solid #004DA1;
  border-bottom: 3px solid #D70110;
  content: "";
}
.articleDetail__in > h1:first-child {
  margin-top: 0 !important;
}
.articleDetail__in > h2:first-child {
  margin-top: 0 !important;
}
.articleDetail__in > h3:first-child {
  margin-top: 0 !important;
}
.articleDetail__in > h4:first-child {
  margin-top: 0 !important;
}
.articleDetail__in > h5:first-child {
  margin-top: 0 !important;
}
.articleDetail__in > h6:first-child {
  margin-top: 0 !important;
}
.articleDetail__in .tocBox + * {
  margin-top: 0 !important;
}

/* 記事一覧ページ */
.articleListWrap {
  padding: 90px 1% 100px;
  background: #F5F6F9;
}
.articleListWrap__in {
  max-width: 1140px;
  margin: 0 auto;
}

/* LP */
.lpDetail {
  /*---------------------
    記事タイトル
  ---------------------*/
  /*---------------------
    メインビジュアル
  ---------------------*/
  /*---------------------
    更新日
  ---------------------*/
  /*---------------------
    目次
  ---------------------*/
  /*---------------------
    関連記事
  ---------------------*/
  /*---------------------
    既存テーマスタイル
  ---------------------*/
  /* balloon状の見出し */
  /* トピックス状 */
  /* 商標誘導ボタン */
  /* 商標誘導カード */
  padding: 50px 1% 100px;
}
.lpDetail h1, .lpDetail h2, .lpDetail h3, .lpDetail h4, .lpDetail h5, .lpDetail h6 {
  clear: both;
}
.lpDetail p:not([class]) {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
}
.lpDetail p:not([class]) + p {
  margin-top: 2rem;
}
.lpDetail h1:not([class]), .lpDetail h1.wp-block-heading {
  margin-top: 100px;
  margin-bottom: 40px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}
.lpDetail h2:not([class]), .lpDetail h2.wp-block-heading {
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 15px 30px;
  background: #004DA1;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}
.lpDetail h3:not([class]), .lpDetail h3.wp-block-heading {
  margin-top: 68px;
  margin-bottom: 30px;
  padding-top: 18px;
  border-top: 3px solid #004DA1;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
.lpDetail h4:not([class]), .lpDetail h4.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 12px 24px;
  background: #F5F6F9;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.666666;
}
.lpDetail h4:not([class])::before, .lpDetail h4.wp-block-heading::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 7px;
  height: 100%;
  border-right: 2px solid #D70110;
  border-left: 2px solid #004DA1;
  content: "";
}
.lpDetail h5:not([class]), .lpDetail h5.wp-block-heading {
  position: relative;
  margin-top: 50px;
  margin-bottom: 33px;
  padding-left: 30px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
}
.lpDetail h5:not([class])::before, .lpDetail h5.wp-block-heading::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 19px;
  height: 17px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.lpDetail h6:not([class]), .lpDetail h6.wp-block-heading {
  position: relative;
  margin-top: 40px;
  margin-bottom: 20px;
  padding-left: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.77777;
  color: #004DA1;
}
.lpDetail h6:not([class])::before, .lpDetail h6.wp-block-heading::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #004DA1;
  content: "";
  transform: rotate(45deg);
}
.lpDetail blockquote {
  position: relative;
  box-sizing: border-box;
  margin: 50px 0 30px;
  padding: 50px 20px 20px;
  border: 10px solid #F5F6F9;
  font-style: italic;
  color: #464646;
}
.lpDetail blockquote::before {
  position: absolute;
  top: -25px;
  left: 15px;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background: #F5F6F9;
  font-size: 5rem;
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  color: #004DA1;
  text-align: center;
  content: "“";
}
.lpDetail blockquote h1 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote h2 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote h3 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote h4 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote h5 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote h6 {
  position: relative;
  margin: 0 0 20px !important;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.lpDetail blockquote p {
  font-style: normal;
}
.lpDetail blockquote cite {
  display: block;
  margin: 10px 0 0;
  font-size: 0.9em;
  line-height: 1;
  color: #888888;
  text-align: right;
}
.lpDetail .btnWrap {
  clear: both;
}
.lpDetail img:not([class]), .lpDetail.wp-block-heading {
  display: block;
  margin: 15px auto 20px;
}
.lpDetail img.alignleft {
  float: left;
  margin: 0 30px 30px 0;
}
.lpDetail img.alignright {
  float: right;
  margin: 0 0 30px 30px;
}
.lpDetail img.aligncenter, .lpDetail img.alignnone {
  display: block;
  margin: 0 auto;
}
.lpDetail ul:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .lpDetail ul:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.lpDetail ul:not([class]) li {
  position: relative;
  padding-left: 28px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2;
  color: #004DA1;
}
.lpDetail ul:not([class]) li::before {
  position: absolute;
  top: 6px;
  left: 0;
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/common/icon/icon_ul.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.lpDetail ul:not([class]) li + li {
  margin-top: 10px;
}
.lpDetail ul:not([class]) h1::before {
  content: none;
}
.lpDetail ul:not([class]) h2::before {
  content: none;
}
.lpDetail ul:not([class]) h3::before {
  content: none;
}
.lpDetail ul:not([class]) h4::before {
  content: none;
}
.lpDetail ul:not([class]) h5::before {
  content: none;
}
.lpDetail ul:not([class]) h6::before {
  content: none;
}
.lpDetail ol:not([class]) {
  clear: both;
  margin: 50px 30px;
  padding: 38px 27px;
  border: 10px solid #F5F6F9;
  background: #FFF;
  counter-reset: listNum;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .lpDetail ol:not([class]) {
    padding: 2.7818448023vw 1.9765739385vw;
  }
}
.lpDetail ol:not([class]) li {
  position: relative;
  padding-left: 31px;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.lpDetail ol:not([class]) li::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: inline-block;
  width: 24px;
  border-radius: 50px;
  background: #004DA1;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
  text-align: center;
  content: counter(listNum);
  counter-increment: listNum;
}
.lpDetail ol:not([class]) li + li {
  margin-top: 10px;
}
.lpDetail ol:not([class]) h1::before {
  content: none;
}
.lpDetail ol:not([class]) h2::before {
  content: none;
}
.lpDetail ol:not([class]) h3::before {
  content: none;
}
.lpDetail ol:not([class]) h4::before {
  content: none;
}
.lpDetail ol:not([class]) h5::before {
  content: none;
}
.lpDetail ol:not([class]) h6::before {
  content: none;
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .lpDetail p:not([class]) {
    font-size: 1.5rem;
    line-height: 1.71428;
  }
  .lpDetail h1:not([class]), .lpDetail h1.wp-block-heading {
    margin-top: 54px;
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.44444;
  }
  .lpDetail h2:not([class]), .lpDetail h2.wp-block-heading {
    width: calc(108.7179487179% + 2px);
    margin-top: 54px;
    margin-bottom: 20px;
    margin-left: calc(-4.358974359% - 1px);
    padding: 15px 4.358974359%;
    font-size: 1.8rem;
    line-height: 1.55555;
  }
  .lpDetail h3:not([class]), .lpDetail h3.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 20px;
    padding-top: 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .lpDetail h4:not([class]), .lpDetail h4.wp-block-heading {
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 11px 4.1025641026%;
    font-size: 1.4rem;
    line-height: 1.625;
  }
  .lpDetail h5:not([class]), .lpDetail h5.wp-block-heading {
    margin-top: 30px;
    margin-bottom: 20px;
    padding-left: 22px;
    font-size: 1.5rem;
  }
  .lpDetail h5:not([class])::before, .lpDetail h5.wp-block-heading::before {
    top: 5px;
    width: 15px;
    height: 14px;
  }
  .lpDetail h6:not([class]), .lpDetail h6.wp-block-heading {
    padding-left: 15px;
    font-size: 1.5rem;
    line-height: 1.73333;
  }
  .lpDetail h6:not([class])::before, .lpDetail h6.wp-block-heading::before {
    top: 10px;
    width: 8px;
    height: 8px;
  }
  .lpDetail blockquote {
    margin: 40px 0 30px;
    padding: 40px 3.8461538462% 20px;
    border: 7px solid #F5F6F9;
  }
  .lpDetail blockquote::before {
    width: 45px;
    height: 45px;
    font-size: 4rem;
    line-height: 1.5;
  }
  .lpDetail blockquote h1 {
    font-size: 1.5rem;
  }
  .lpDetail blockquote h2 {
    font-size: 1.5rem;
  }
  .lpDetail blockquote h3 {
    font-size: 1.5rem;
  }
  .lpDetail blockquote h4 {
    font-size: 1.5rem;
  }
  .lpDetail blockquote h5 {
    font-size: 1.5rem;
  }
  .lpDetail blockquote h6 {
    font-size: 1.5rem;
  }
  .lpDetail img.alignleft {
    margin: 0 7px 7px 0;
  }
  .lpDetail img.alignright {
    margin: 0 0 7px 7px;
  }
  .lpDetail ul:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .lpDetail ul:not([class]) li {
    padding-left: 28px;
  }
  .lpDetail ul:not([class]) li::before {
    top: 5px;
    width: 20px;
    height: 20px;
  }
  .lpDetail ol:not([class]) {
    margin: 20px auto 40px;
    padding: 17px 5.1282051282%;
    border: 7px solid #F5F6F9;
  }
  .lpDetail ol:not([class]) li::before {
    width: 22px;
    font-size: 1rem;
    line-height: 22px;
  }
}
.lpDetail iframe {
  width: 100%;
}
.lpDetail .articleTtl {
  margin: 0 0 8px;
  font-size: 3.2rem;
  line-height: 1.5;
}
.lpDetail .articleMv {
  overflow: hidden;
  margin: 15px auto;
  text-align: center;
}
.lpDetail .articleMv img {
  margin: 0 auto;
}
.lpDetail .date {
  text-align: right;
}
.lpDetail .date > * {
  display: inline-block;
  margin: 0;
  font-size: 1.2rem !important;
  font-weight: 400;
  line-height: 1 !important;
  color: #333333;
}
.lpDetail .date > * + * {
  margin: 0 0 0 1rem !important;
}
.lpDetail .tocBox {
  margin: 40px auto 100px;
  padding: 23px;
  background: #F5F6F9;
}
.lpDetail .tocBox__inner {
  padding: 0 20px 20px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}
.lpDetail .tocBox__ttl {
  margin: 0 0 15px;
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
}
.lpDetail .tocBox__ttl::before {
  display: inline-block;
  width: 20px;
  height: 16px;
  margin: 0 9px -2px 0;
  background: url(../img/common/icon/icon_book.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.lpDetail .tocBox .tocList {
  counter-reset: tocNum;
}
.lpDetail .tocBox .tocList__item:not(:last-child) {
  border-bottom: 1px solid #D2DAF0;
}
.lpDetail .tocBox .tocList__item a {
  position: relative;
  display: block;
  padding: 12px 24px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  text-decoration: none;
}
.lpDetail .tocBox .tocList__item a::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #004DA1;
  content: counter(tocNum) ".";
  counter-increment: tocNum;
}
.lpDetail .tocBox .tocList__item a::after {
  position: absolute;
  right: 0;
  bottom: 12px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .lpDetail .tocBox .tocList__item a:hover {
    color: #304A85;
    text-decoration: underline;
  }
  .lpDetail .tocBox .tocList__item a:hover::after {
    bottom: 6px;
  }
}
.lpDetail .tocBox .tocList__item .tocList {
  padding-left: 26px;
  counter-reset: tocChildNum;
}
.lpDetail .tocBox .tocList__item .tocList__item a {
  display: block;
  padding-left: 46px;
}
.lpDetail .tocBox .tocList__item .tocList__item a::before {
  content: counter(tocNum) " - " counter(tocChildNum) ".";
  counter-increment: tocChildNum;
}
.lpDetail .tocBox .tocMore {
  position: relative;
  left: 50%;
  display: inline-block;
  margin-top: 20px;
  padding: 8px 20px;
  background: #FECB3F;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  text-align: center;
  cursor: pointer;
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) {
  .lpDetail .tocBox .tocMore:hover {
    background: #004DA1;
    color: #fff;
  }
}
.lpDetail .tocBox:not(.open) .tocBox__inner > .tocList > .tocList__item:nth-child(n+4) {
  display: none;
}
.lpDetail .tocBox:not(.open) .tocMore::after {
  transform: rotate(0deg);
}
@media screen and (min-width: 767px) {
  .lpDetail .tocBox:not(.open) .tocMore:hover::after {
    transform: translateY(2px) rotate(90deg);
  }
}
.lpDetail .related {
  position: relative;
  margin: 60px auto 50px;
}
.lpDetail .related__ttl {
  position: absolute;
  z-index: 1;
  top: -24px;
  right: 4px;
}
.lpDetail .related .relatedList__item {
  padding: 16px 24px 15px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}
.lpDetail .related .relatedList__item::after {
  right: 12px;
  bottom: 14px;
  border-width: 0 0 14px 14px;
}
.lpDetail .related .relatedList__item .itemWrap .thumb {
  width: 80px;
  min-height: 80px;
}
.lpDetail .related .relatedList__item .itemWrap .thumb img {
  margin: 0;
}
.lpDetail .related .relatedList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 102px);
  margin-left: 22px;
}
.lpDetail .related .relatedList__item .itemWrap .textWrap {
  padding: 15px 0;
}
.lpDetail .related .relatedList__item .itemWrap .textWrap__ttl {
  font-size: 1.8rem;
  line-height: 1.38888;
}
.lpDetail .related .relatedList__item + .relatedList__item {
  margin-top: 40px;
}
.lpDetail .point {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.lpDetail .point::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.lpDetail .point::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.lpDetail .point .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.lpDetail .point + ul, .lpDetail .point ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.lpDetail .point + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.lpDetail .tbl_ttl {
  position: relative;
  display: inline-block;
  padding: 4px 16px 7px;
  background: #D70110;
  box-shadow: 3px 4px 0px 0px #AA000C;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  transform: translateY(20px);
}
.lpDetail .tbl_ttl::before {
  position: absolute;
  top: 0;
  right: -4px;
  display: inline-block;
  width: 4px;
  height: calc(100% + 4px);
  background: #AA000C;
  content: "";
}
.lpDetail .tbl_ttl::after {
  position: absolute;
  bottom: -11px;
  left: 50%;
  display: inline-block;
  border-width: 11px 5px 0 5px;
  border-style: solid;
  border-color: #D70110 transparent transparent transparent;
  content: "";
  transform: translateX(-50%);
  filter: drop-shadow(3px 4px 0px #AA000C);
}
.lpDetail .tbl_ttl .icon {
  display: inline-block;
  margin: 0 15px 0 0;
  vertical-align: middle;
}
.lpDetail .tbl_ttl + ul, .lpDetail .tbl_ttl ol {
  margin-top: 0;
  border-color: #FFF1B4;
}
.lpDetail .tbl_ttl + ul li::before {
  background: url(../img/common/icon/icon_ul_yellow.svg) no-repeat center center;
  background-size: contain;
}
.lpDetail .note {
  position: relative;
  margin: 50px 40px;
  padding: 50px 40px 40px;
  background: #F5F6F9;
}
.lpDetail .note::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 7px;
  border-top: 2px solid #004DA1;
  border-bottom: 2px solid #D70110;
  content: "";
}
.lpDetail .note h1 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h1::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h1::after {
  content: none;
}
.lpDetail .note h2 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h2::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h2::after {
  content: none;
}
.lpDetail .note h3 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h3::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h3::after {
  content: none;
}
.lpDetail .note h4 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h4::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h4::after {
  content: none;
}
.lpDetail .note h5 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h5::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h5::after {
  content: none;
}
.lpDetail .note h6 {
  position: relative;
  margin: 0 0 20px !important;
  padding: 0 0 0 43px;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.66666;
  color: #004DA1;
}
.lpDetail .note h6::before {
  position: absolute;
  top: -8px;
  left: 0;
  display: inline-block;
  width: 31px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  background: url(../img/common/ttl_topic.svg) no-repeat center center;
  background-size: contain;
  content: "";
  transform: none;
}
.lpDetail .note h6::after {
  content: none;
}
.lpDetail .note p {
  margin: 0 !important;
  padding: 20px;
  background: #fff;
}
.lpDetail .note p + p {
  padding-top: 0;
}
.lpDetail .btn {
  margin: 50px auto;
  padding: 30px;
  background: #F5F6F9;
}
.lpDetail .btn a {
  display: block;
  padding: 30px 5px;
  border-radius: 5px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 4px 4px 0px 4px #AA000C;
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.lpDetail .btn a::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .lpDetail .btn a {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .lpDetail .btn a:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(8px, 8px);
  }
}
.lpDetail .intr {
  position: relative;
  margin: 34px 0 70px;
}
.lpDetail .intr__ttl {
  position: absolute;
  top: -33px;
  right: 4px;
}
.lpDetail .intrBox {
  padding: 20px;
  border: 10px solid #E6E6E6;
}
.lpDetail .intrBox__link {
  display: block;
  margin: 0 0 20px;
  padding: 13px 5px;
  background: #F5F6F9;
  font-size: 2.2rem;
  color: #004DA1;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .lpDetail .intrBox__link:hover {
    text-decoration: underline;
  }
}
.lpDetail .intrBox__cont {
  display: flex;
  align-items: flex-start;
}
.lpDetail .intrBox__cont .thumb {
  width: clamp(150px, 19.0336749634vw, 260px);
  margin-right: 30px;
}
.lpDetail .intrBox__cont .thumb + .spec {
  width: calc(100% - clamp(150px, 19.0336749634vw, 260px) - 30px);
}
.lpDetail .intrBox__cont .spec__text {
  font-size: 1.5rem;
}
.lpDetail .intrBox__cont .spec__table {
  margin: 16px 0;
}
.lpDetail .intrBox__cont .spec__table th {
  font-weight: 500;
}
.lpDetail .intrBox__cont .spec__table td {
  background: #fff;
  font-weight: 700;
  text-align: center;
}
.lpDetail .intrBox__cont .spec__note {
  margin: 5px 0 0;
  font-size: 1rem;
  text-align: right;
}
.lpDetail .intrBox__cont .spec__btn {
  position: relative;
  display: block;
  margin: 12px 0 0;
  padding: 13px 5px 11px;
  border-radius: 4px;
  background: rgb(215, 1, 16);
  background: linear-gradient(180deg, rgb(215, 1, 16) 0%, rgb(185, 5, 18) 100%);
  box-shadow: 2px 2px 0px 2px #AA000C;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d70110",endColorstr="#b90512",GradientType=1);
}
.lpDetail .intrBox__cont .spec__btn::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 10px -2px 0;
  background: url(../img/common/icon/icon_arrow_right.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .lpDetail .intrBox__cont .spec__btn {
    transition-timing-function: ease-out;
    transition-duration: 0s;
    transition-property: all;
  }
  .lpDetail .intrBox__cont .spec__btn:hover {
    box-shadow: none;
    opacity: 0.9;
    transform: translate(2px, 2px);
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .lpDetail {
    /*---------------------
      記事タイトル
    ---------------------*/
    /*---------------------
      メインビジュアル
    ---------------------*/
    /*---------------------
      更新日
    ---------------------*/
    /*---------------------
      目次
    ---------------------*/
    /*---------------------
      関連記事
    ---------------------*/
    /*---------------------
      既存テーマスタイル
    ---------------------*/
    /* balloon状の見出し */
    /* トピックス状 */
    /* 商標誘導ボタン */
    /* 商標誘導カード */
  }
  .lpDetail .articleTtl {
    font-size: 2.4rem;
    line-height: 1.33333;
  }
  .lpDetail .articleMv {
    padding: 0 2.0512820513%;
  }
  .lpDetail .date {
    text-align: left;
  }
  .lpDetail .tocBox {
    width: calc(108.7179487179% + 2px);
    margin: 50px auto;
    margin-left: calc(-4.358974359% - 1px);
    padding: 17px 4.358974359%;
  }
  .lpDetail .tocBox__inner {
    padding: 10px 3.8461538462% 26px;
    border: 1px solid #D2DAF0;
  }
  .lpDetail .tocBox__inner > .tocList > .tocList__item:last-of-type {
    border-bottom: 1px solid #D2DAF0;
  }
  .lpDetail .tocBox__ttl {
    margin: 0 0 10px;
  }
  .lpDetail .tocBox__ttl::before {
    width: 18px;
    height: 14px;
    margin: 0 7px -2px 0;
  }
  .lpDetail .tocBox .tocList__item a {
    padding: 11px 1rem 11px 2rem;
    font-size: 1.4rem;
  }
  .lpDetail .tocBox .tocList__item a::before {
    top: 11px;
    font-size: 1.4rem;
  }
  .lpDetail .tocBox .tocList__item a::after {
    bottom: 9px;
    border-width: 0 0 9px 9px;
  }
  .lpDetail .tocBox .tocList__item .tocList {
    padding-left: 2rem;
  }
  .lpDetail .tocBox .tocList__item .tocList__item a {
    padding-left: 4rem;
  }
  .lpDetail .tocBox .tocMore {
    margin-top: 15px;
    padding: 5px 15px;
    font-size: 1.3rem;
  }
  .lpDetail .related {
    margin: 30px auto;
  }
  .lpDetail .related__ttl {
    position: relative;
    top: -8px;
    right: initial;
    left: 50%;
    transform: translateX(-50%);
  }
  .lpDetail .related .relatedList__item {
    padding: 10px 6.6666666667% 10px 2.5641025641%;
  }
  .lpDetail .related .relatedList__item::after {
    right: 11px;
    bottom: 10px;
    border-width: 0 0 10px 10px;
  }
  .lpDetail .related .relatedList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 90px);
    margin-left: 10px;
  }
  .lpDetail .related .relatedList__item .itemWrap .textWrap {
    padding: 0;
  }
  .lpDetail .related .relatedList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.4285;
  }
  .lpDetail .related .relatedList__item + .relatedList__item {
    margin-top: 17px;
  }
  .lpDetail .point {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .lpDetail .point .icon {
    margin: 0 12px 0 0;
  }
  .lpDetail .tbl_ttl {
    padding: 10px 20px 11px;
    font-size: 1.4rem;
    transform: translateY(0);
  }
  .lpDetail .tbl_ttl .icon {
    margin: 0 12px 0 0;
  }
  .lpDetail .note {
    margin: 30px 0 40px;
    padding: 25px 5.8974358974% 25px;
  }
  .lpDetail .note h1 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h1::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note h2 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h2::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note h3 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h3::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note h4 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h4::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note h5 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h5::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note h6 {
    margin: 0 0 9px !important;
    padding: 0 0 0 31px;
    font-size: 1.5rem;
  }
  .lpDetail .note h6::before {
    width: 24px;
    height: 33px;
  }
  .lpDetail .note p {
    padding: 18px 4.6153846154%;
  }
  .lpDetail .btn {
    margin: 37px auto;
    padding: 8px;
  }
  .lpDetail .btn a {
    padding: 20px 4.358974359%;
    border-radius: 4px;
    box-shadow: 2px 2px 0px 2px #AA000C;
    font-size: 1.8rem;
  }
  .lpDetail .btn a::before {
    width: 16px;
    height: 16px;
    margin: 0 5px -2px 0;
  }
  .lpDetail .intr {
    margin: 32px 0 40px;
  }
  .lpDetail .intr__ttl {
    position: relative;
    top: -12px;
    right: initial;
    left: 50%;
    font-size: 1.4rem;
    line-height: 3.2;
    transform: translateX(-50%);
  }
  .lpDetail .intrBox {
    padding: 10px 10px 20px;
    border: 7px solid #E6E6E6;
  }
  .lpDetail .intrBox__link {
    padding: 10px;
    font-size: 1.6rem;
  }
  .lpDetail .intrBox__cont {
    display: block;
  }
  .lpDetail .intrBox__cont .thumb {
    width: 97.4358974359%;
    margin: 0 auto 20px;
  }
  .lpDetail .intrBox__cont .thumb + .spec {
    width: 100%;
  }
  .lpDetail .intrBox__cont .spec__text {
    font-size: 1.6rem;
    text-align: center;
  }
  .lpDetail .intrBox__cont .spec__table {
    display: table;
    margin: 10px 0 15px;
    white-space: normal;
  }
  .lpDetail .intrBox__cont .spec__table th {
    padding: 8px;
    font-size: 1.2rem;
  }
  .lpDetail .intrBox__cont .spec__table td {
    padding: 8px;
    font-size: 1.4rem;
  }
  .lpDetail .intrBox__cont .spec__note {
    margin: 15px 0 0;
    font-size: 1.2rem;
    text-align: left;
  }
  .lpDetail .intrBox__cont .spec__btn {
    margin: 20px 0 0;
    padding: 17px 5px 17px;
  }
}
.lpDetail__in {
  position: relative;
  max-width: 1140px;
  margin: 0 auto;
  padding: 80px 5% 50px;
  background: #fff;
}
.lpDetail__in::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  border-top: 3px solid #004DA1;
  border-bottom: 3px solid #D70110;
  content: "";
}
.lpDetail__in > h1:first-child {
  margin-top: 0 !important;
}
.lpDetail__in > h2:first-child {
  margin-top: 0 !important;
}
.lpDetail__in > h3:first-child {
  margin-top: 0 !important;
}
.lpDetail__in > h4:first-child {
  margin-top: 0 !important;
}
.lpDetail__in > h5:first-child {
  margin-top: 0 !important;
}
.lpDetail__in > h6:first-child {
  margin-top: 0 !important;
}
.lpDetail__in .tocBox + * {
  margin-top: 0 !important;
}
.lpDetail__in .articleMv {
  margin: 50px auto;
}
.lpDetail__in .articleTtl {
  font-size: 4rem;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /* singlePage */
  .singlePage {
    padding: 0 4.358974359%;
  }
  /* 記事詳細ページ */
  .articleDetail {
    padding: 19px 0 0;
  }
  .articleDetail::before {
    height: 9px;
  }
  .articleDetail__in {
    padding: 0 4.358974359%;
  }
  /* 記事一覧ページ */
  .articleListWrap {
    padding: 20px 4.358974359%;
  }
  /* LP */
  .lpDetail {
    padding: 50px 4.358974359%;
  }
  .lpDetail::before {
    height: 9px;
  }
  .lpDetail__in {
    padding: 40px 4.358974359% 15px;
  }
  .lpDetail__in .articleMv {
    margin: 30px auto;
  }
  .lpDetail__in .articleTtl {
    font-size: 3rem;
  }
}
/*=================================
  article
=================================*/
/* 記事一覧 */
.articleList__item {
  position: relative;
  padding: 25px;
  background: #fff;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05);
}
.articleList__item::after {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: inline-block;
  border-width: 0 0 17px 17px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .articleList__item:hover .textWrap__ttl {
    text-decoration: underline !important;
  }
}
.articleList__item .itemWrap {
  display: flex;
}
.articleList__item .itemWrap .thumb {
  width: 100px;
  min-height: 100px;
}
.articleList__item .itemWrap .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.articleList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 126px);
  margin-left: 26px;
}
.articleList__item .itemWrap .textWrap__ttl {
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.38888;
  color: #004DA1;
  text-decoration: none;
}
.articleList__item .itemWrap .textWrap__text {
  margin: 16px 0 0;
  font-size: 1.6rem;
  line-height: 1.75;
}
.articleList__item .itemWrap .textWrap__data {
  margin-top: 4px;
  line-height: 1;
}
.articleList__item .itemWrap .textWrap__data > * {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.7142;
}
.articleList__item .itemWrap .textWrap__data > * + * {
  margin-left: 2rem;
}
.articleList__item + .articleList__item {
  margin-top: 20px;
}

/* 関連記事 */
.relatedBox {
  padding: 60px 1% 40px;
  background: #F5F6F9;
}
.relatedBox__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.relatedBox__ttl {
  position: relative;
  margin: 0 0 50px;
  padding: 0 0 0 48px;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.5;
}
.relatedBox__ttl::before {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 28px;
  height: 24px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.relatedBox__text {
  margin-top: 7px;
  font-size: 1.6rem;
  font-weight: 400;
}
.relatedBox .relatedList {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.relatedBox .relatedList__item {
  width: calc((100% - 40px) / 2);
  margin-bottom: 20px;
}
.relatedBox .relatedList__item:not(:nth-child(2n+1)) {
  margin-left: 40px;
}

.relatedList__item {
  position: relative;
  background: #fff;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05);
}
.relatedList__item::after {
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #004DA1 transparent;
  content: "";
  transition-timing-function: ease-out;
  transition-duration: 0.1s;
  transition-property: all;
}
@media screen and (min-width: 767px) {
  .relatedList__item:hover .textWrap__ttl {
    text-decoration: underline !important;
  }
}
.relatedList__item .itemWrap {
  display: flex;
}
.relatedList__item .itemWrap .thumb {
  width: 100px;
  min-height: 100px;
}
.relatedList__item .itemWrap .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.relatedList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 100px);
}
.relatedList__item .itemWrap .textWrap {
  padding: 18px 26px;
}
.relatedList__item .itemWrap .textWrap__ttl {
  display: block;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5625;
  color: #004DA1;
  text-decoration: none;
}
.relatedList__item .itemWrap .textWrap__text {
  margin: 10px 0 0;
  font-size: 1.5rem;
  line-height: 1.5;
}
.relatedList__item .itemWrap .textWrap__data {
  margin-top: 4px;
  line-height: 1;
}
.relatedList__item .itemWrap .textWrap__data > * {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.7142;
}
.relatedList__item .itemWrap .textWrap__data > * + * {
  margin-left: 2rem;
}

/*カテゴリー別記事一覧*/
.articleByCategory {
  display: flex;
  max-width: 1060px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.articleByCategory__ttl {
  display: flex;
  margin: 0 0 20px;
  padding: 8px 18px;
  background: #004DA1;
  color: #fff;
  align-items: center;
}
.articleByCategory__ttl .ttl, .articleByCategory__ttl .num {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.66666;
}
.articleByCategory__item {
  width: calc((100% - 40px) / 2);
}
.articleByCategory__item:nth-child(2n) {
  margin-left: 40px;
}
.articleByCategory__item:nth-child(n+3) {
  margin-top: 40px;
}
.articleByCategory__item .btn--more {
  width: 70%;
  margin: 30px auto 0;
}
.articleByCategory .articleList__item {
  padding: 0;
}
.articleByCategory .articleList__item .itemWrap .thumb + .textWrap {
  width: calc(100% - 100px);
  margin-left: 0;
}
.articleByCategory .articleList__item .itemWrap .textWrap {
  padding: 26px 30px;
}
.articleByCategory .articleList__item .itemWrap .textWrap__ttl {
  font-size: 1.6rem;
  line-height: 1.5625;
}
.articleByCategory .articleList__item::after {
  right: 8px;
  bottom: 8px;
  border-width: 0 0 12px 12px;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
  article
  =================================*/
  /* 記事一覧 */
  .articleList__item {
    padding: 8px;
  }
  .articleList__item::after {
    right: 7px;
    bottom: 7px;
    border-width: 0 0 10px 10px;
  }
  .articleList__item .itemWrap .thumb {
    width: 80px;
    min-height: 80px;
  }
  .articleList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 95px);
    margin-left: 15px;
  }
  .articleList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.64285;
  }
  .articleList__item .itemWrap .textWrap__text {
    display: none;
  }
  .articleList__item .itemWrap .textWrap__data {
    margin-top: 0;
  }
  .articleList__item .itemWrap .textWrap__data > * {
    font-size: 1.2rem;
  }
  .articleList__item + .articleList__item {
    margin-top: 17px;
  }
  /* 関連記事 */
  .relatedBox {
    padding: 40px 4.358974359%;
  }
  .relatedBox__ttl {
    margin: 0 0 23px;
    padding: 0 0 0 27px;
    font-size: 2.2rem;
    line-height: 1.545454;
  }
  .relatedBox__ttl::before {
    top: 8px;
    width: 20px;
    height: 17px;
  }
  .relatedBox__text {
    font-size: 1.4rem;
  }
  .relatedBox .relatedList {
    display: block;
  }
  .relatedBox .relatedList__item {
    width: 100%;
    margin-bottom: 15px;
  }
  .relatedBox .relatedList__item:not(:nth-child(2n+1)) {
    margin-left: 0;
  }
  .relatedList__item::after {
    right: 6px;
    bottom: 6px;
    border-width: 0 0 8px 8px;
  }
  .relatedList__item .itemWrap .thumb {
    width: 80px;
    min-height: 80px;
  }
  .relatedList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 80px);
  }
  .relatedList__item .itemWrap .textWrap {
    padding: 11px 12px 26px;
  }
  .relatedList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
    line-height: 1.64285;
  }
  .relatedList__item .itemWrap .textWrap__text {
    display: none;
  }
  .relatedList__item .itemWrap .textWrap__data {
    margin-top: 0;
  }
  .relatedList__item .itemWrap .textWrap__data > * {
    font-size: 1.2rem;
  }
  /*カテゴリー別記事一覧*/
  .articleByCategory {
    display: block;
  }
  .articleByCategory__ttl {
    margin: 0 0 15px;
    padding: 9px 4.6153846154%;
  }
  .articleByCategory__ttl .ttl, .articleByCategory__ttl .num {
    font-size: 1.6rem;
  }
  .articleByCategory__item {
    width: 100%;
  }
  .articleByCategory__item:nth-child(2n) {
    margin-left: 0;
  }
  .articleByCategory__item:nth-child(n+2) {
    margin-top: 40px;
  }
  .articleByCategory__item .btn--more {
    width: 100%;
    margin: 15px auto 0;
  }
  .articleByCategory .articleList__item {
    padding: 0;
  }
  .articleByCategory .articleList__item .itemWrap .thumb + .textWrap {
    width: calc(100% - 80px);
    margin-left: 0;
  }
  .articleByCategory .articleList__item .itemWrap .textWrap {
    padding: 11px 3.0769230769%;
  }
  .articleByCategory .articleList__item .itemWrap .textWrap__ttl {
    font-size: 1.4rem;
  }
  .articleByCategory .articleList__item::after {
    right: 6px;
    bottom: 6px;
    border-width: 0 0 8px 8px;
  }
}
/* =================================
  side nav
================================= */
.sideNav {
  width: 290px;
}
.sideNav__inner {
  width: 290px;
}
.sideNav .sideSec {
  position: relative;
  padding-top: 15px;
}
.sideNav .sideSec__ttl {
  position: absolute;
  top: -55px;
  font-size: 1.5rem;
}
.sideNav .sideSec__cont {
  background: #fff;
}
.sideNav .sideSec__cont .contTtl {
  position: relative;
  padding: 0 0 18px 27px;
  border-bottom: 1px solid #CCCCCC;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5555;
}
.sideNav .sideSec__cont .contTtl::before {
  position: absolute;
  top: 8px;
  left: 0;
  display: inline-block;
  width: 20px;
  height: 17px;
  background: url(../img/common/ttl_line_4.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.sideNav .sideSec__cont .linkList {
  margin: 20px 0 0;
}
.sideNav .sideSec__cont .linkList__item {
  position: relative;
}
.sideNav .sideSec__cont .linkList__item a {
  display: block;
  padding: 0 0 0 22px;
  font-size: 1.6rem;
  line-height: 1.375;
  color: #004DA1;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .sideNav .sideSec__cont .linkList__item a:hover {
    text-decoration: underline;
  }
}
.sideNav .sideSec__cont .linkList__item::before {
  position: absolute;
  top: 5px;
  left: 0;
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url(../img/common/icon/icon_arrow_right_blue.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
.sideNav .sideSec__cont .linkList__item + .linkList__item {
  margin-top: 20px;
}
.sideNav .sideSec__cont .linkList.new .linkList__item .date {
  display: block;
  font-size: 1.2rem;
}
.sideNav .sideSec__cont .linkList.new .linkList__item a {
  padding: 0;
}
.sideNav .sideSec__cont .linkList.new .linkList__item::before {
  content: none;
}
.sideNav .sideSec__cont .linkList.ranking {
  margin: 0;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item {
  position: relative;
  padding: 17px 17px 17px 60px;
  border-right: 1px solid #CCCCCC;
  border-bottom: 1px solid #CCCCCC;
  border-left: 1px solid #CCCCCC;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item .icon {
  position: absolute;
  top: 17px;
  left: 17px;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item .text {
  font-size: 1.4rem;
  line-height: 1.57142;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item a {
  padding: 0;
  font-size: 1.8rem;
  color: #000;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item::before {
  content: none;
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item::after {
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: inline-block;
  border-width: 0 0 12px 12px;
  border-style: solid;
  border-color: transparent transparent #D70110 transparent;
  content: "";
}
.sideNav .sideSec__cont .linkList.ranking .linkList__item + .linkList__item {
  margin-top: 0;
}
.sideNav .sideSec__cont + .sideSec__cont {
  margin-top: 50px;
}

@media screen and (max-width: 1023px) {
  /* =================================
    side nav
  ================================= */
  .sideNav {
    width: 100%;
  }
  .sideNav__inner {
    width: 100%;
  }
  .sideNav .sideSec {
    display: flex;
    padding-top: 0;
    flex-wrap: wrap;
  }
  .sideNav .sideSec__ttl {
    display: none;
  }
  .sideNav .sideSec__cont {
    width: 48%;
    margin-bottom: 4%;
  }
  .sideNav .sideSec__cont:nth-child(2n-1) {
    margin-left: 4%;
  }
  .sideNav .sideSec__cont .linkList.ranking {
    margin: 0;
  }
  .sideNav .sideSec__cont .linkList.ranking .linkList__item {
    border-right: none;
    border-left: none;
  }
  .sideNav .sideSec__cont + .sideSec__cont {
    margin-top: 0;
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  /* =================================
    side nav
  ================================= */
  .sideNav {
    padding: 0 4.358974359%;
  }
  .sideNav .sideSec__cont {
    width: 100%;
    margin-bottom: 11%;
  }
  .sideNav .sideSec__cont:nth-child(2n-1) {
    margin-left: 0;
  }
  .sideNav .sideSec__cont .linkList.ranking .linkList__item .icon {
    left: 0;
  }
}
/*=================================
  cvBox
=================================*/
.cvBox {
  padding: 68px 1% 90px;
  background: #fff;
}
.cvBox__inner {
  position: relative;
  display: flex;
  max-width: 1140px;
  margin: 0 auto;
  background: #FFF8DB;
}
.cvBox__inner::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  border-top: 3px solid #004DA1;
  border-bottom: 3px solid #D70110;
  content: "";
}
.cvBox__inner::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  border-top: 3px solid #004DA1;
  border-bottom: 3px solid #D70110;
  content: "";
}
.cvBox__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left top;
     object-position: left top;
}
.cvBox__cont {
  padding: 74px 60px;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .cvBox__cont {
    padding: 5.4172767204vw 4.39238653vw;
  }
}
.cvBox__ttl {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.71875;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .cvBox__ttl {
    font-size: clamp(2.8rem, 2.3426061493vw, 3.2rem);
  }
}
.cvBox__ttl .sm {
  display: block;
  font-size: 2.5rem;
  line-height: 2.2;
}
@media screen and (min-width: 767px) and (max-width: 1366px) {
  .cvBox__ttl .sm {
    font-size: clamp(2.1rem, 1.8301610542vw, 2.5rem);
  }
}
.cvBox__btn {
  margin: 30px 0 0;
}
.cvBox__btn .btn {
  width: 100%;
}

.cvBox--loan {
  padding: 60px 1%;
  background: #FFF7D4;
}
.cvBox--loan__inner {
  max-width: 1140px;
  margin: 0 auto;
}
.cvBox--loan .balloon--red {
  display: block;
  width: 100%;
  max-width: 350px;
  margin: 0 auto 18px;
  text-align: center;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    cvBox
  =================================*/
  .cvBox {
    padding: 40px 6.4102564103%;
  }
  .cvBox__inner {
    display: block;
  }
  .cvBox__inner::before {
    height: 9px;
  }
  .cvBox__inner::after {
    height: 9px;
  }
  .cvBox__cont {
    padding: 14px 5.1282051282% 30px;
  }
  .cvBox__ttl {
    font-size: 3rem;
    line-height: 1.4;
  }
  .cvBox__ttl .sm {
    font-size: 1.8rem;
    line-height: 2;
  }
  .cvBox__btn {
    margin: 19px 0 0;
  }
  .cvBox--loan {
    display: block !important;
    padding: 30px 6.4102564103%;
  }
  .cvBox--loan .ttl--base {
    margin: 0 0 10px;
  }
  .cvBox--loan .balloon--red {
    width: 95%;
    margin: 0 auto;
    font-size: 1.5rem;
    line-height: 3.5;
    text-align: center;
  }
  .cvBox--loan .btnWrap {
    margin: 25px 0 0;
  }
  .cvBox--loan .loanList__item {
    margin: 17px 0 0;
  }
}
/*=================================
  typeList
=================================*/
.typeList {
  display: flex;
  flex-wrap: wrap;
}
.typeList__item {
  position: relative;
  width: calc((100% - 60px) / 3);
  margin-bottom: 30px;
  padding: 30px 30px 30px 102px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}
.typeList__item:not(:nth-child(3n+1)) {
  margin-left: 30px;
}
.typeList__item .icon {
  position: absolute;
  top: 36px;
  left: 25px;
  width: 55px;
  height: 50px;
  -o-object-fit: contain;
     object-fit: contain;
}
.typeList__item .ttl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.5909;
}
.typeList__item .text {
  margin: 9px 0 0;
  font-size: 1.6rem;
  line-height: 1.625;
}
.typeList__item .btn {
  display: inline-block;
  margin: 10px 0 0;
  padding: 10px 20px;
  border: 1px solid #D70110;
  border-radius: 3px;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.46153;
  color: #D70110;
  text-align: center;
  text-decoration: none;
}
.typeList__item .btn::before {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 7px -2px 0;
  background: url(../img/common/icon/icon_crown_red.svg) no-repeat center center;
  background-size: contain;
  content: "";
}
@media screen and (min-width: 767px) {
  .typeList__item .btn:hover {
    background: #D70110;
    color: #fff;
  }
  .typeList__item .btn:hover::before {
    background: url(../img/common/icon/icon_crown_white.svg) no-repeat center center;
    background-size: contain;
  }
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    typeList
  =================================*/
  .typeList {
    display: block;
  }
  .typeList__item {
    width: 100%;
    margin: 26px 0 0;
    padding: 20px 7.4358974359%;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.06);
  }
  .typeList__item:not(:nth-child(3n+1)) {
    margin-left: 0;
  }
  .typeList__item .icon {
    top: 28px;
  }
  .typeList__item .ttl {
    padding-left: 73px;
  }
  .typeList__item .text {
    padding-left: 73px;
  }
  .typeList__item .btn {
    display: block;
    margin: 25px 0 0;
    padding: 15px 10px;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
  }
  .typeList__item .btn::before {
    width: 19px;
    height: 19px;
    margin: 0 10px -2px 0;
  }
}
/*=================================
  loanList
=================================*/
.loanList {
  display: flex;
  margin: 0 30px 0 0;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
.loanList__item {
  width: 340px;
  margin: 0 0 30px 30px;
  padding: 20px;
  border: 1px solid #CCCCCC;
  background: #fff;
}
.loanList__item .thumb {
  display: block;
  margin: 0 auto 13px;
}
.loanList__item .link {
  display: block;
  margin: 0 0 20px;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.75;
  color: #004DA1;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 767px) {
  .loanList__item .link:hover {
    text-decoration: underline;
  }
}
.loanList__item .band {
  display: block;
  padding: 3px 5px;
  background: #004DA1;
  font-size: 1.4rem;
  font-weight: 400;
  color: #fff;
  text-align: center;
}
.loanList__item .text {
  margin: 10px 0 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.44444;
  color: #D70110;
  text-align: center;
}
.loanList__item .table {
  margin: 10px 0 20px;
}
.loanList__item .table th, .loanList__item .table td {
  padding: 16px 6px;
  text-align: center;
}
.loanList__item .table th {
  min-width: 65px;
  background: #F5F6F9;
  font-size: 1.2rem;
  font-weight: 400;
  color: #000;
}
.loanList__item .table td {
  background: #fff;
  font-size: 1.4rem;
  font-weight: 700;
}
.loanList__item .note {
  margin: -10px 0 10px;
  font-size: 1.2rem;
  line-height: 1.5;
}
.loanList__item .btn {
  display: block;
  padding: 19px 5px 17px;
  font-size: 1.4rem;
  line-height: 1.428571;
}

@media screen and (min-width: 0) and (max-width: 767px) {
  /*=================================
    loanList
  =================================*/
  .loanList {
    display: block;
    margin: 0;
  }
  .loanList__item {
    width: 100%;
    margin: 25px 0 0;
    padding: 20px 5.1282051282%;
  }
  .loanList__item .table {
    display: table;
    white-space: normal;
  }
}
/*# sourceMappingURL=maps/style.css.map */

/* PR表記 */
.tooltip--float { /* ツールチップを設置する「親要素」に指定、そこを基準に右上に配置される */
  position: relative;
}
.tooltip--float .tooltipWrap {
  cursor: pointer;
  border-radius: 2px;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
.tooltip--float .js--tooltipTarget {
  font-size: 1rem;
  line-height: 1;
  letter-spacing: .05em;
  color: #fff;
  background: #6e7682;
  display: inline-block;
  padding: 6px 9px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
}
.tooltip--float .js--tooltipItem {
  font-size: 0.9rem;
  padding: 10px;
  border-radius: 5px;
  color: #555;
  background: #d5d7d9;
  width: 50%;
  position: absolute;
  z-index: 1000;
  display: none;
}
.tooltip--float .tooltipWrap:hover .js--tooltipItem {
  display: inline-block;
  top: 32px;
  right: 5px;
  width: 300px;
}
.tooltip--float .js--tooltipItem::before {
  content: "";
  border-style: solid;
  border-width: 0 6px 12px 6px;
  border-color: transparent transparent #d5d7d9 transparent;
  position: absolute;
  top: -12px;
  right: 10px;
  z-index: 1000;
}

.tooltip--static {
  position: relative;
  text-align: right;
}
.tooltip--static .tooltipWrap {
  display: inline-block;
}
.tooltip--static .js--tooltipTarget {
  font-size: 1rem;
  line-height: 1;
  letter-spacing: .05em;
  color: #fff;
  background: #6e7682;
  display: inline-block;
  padding: 6px 9px;
  cursor: pointer;
  position: relative;
  z-index: 999;
}
.tooltip--static .js--tooltipItem {
  font-size: 0.9rem;
  padding: 10px;
  border-radius: 5px;
  color: #555;
  background: #d5d7d9;
  width: 50%;
  text-align: left;
  position: absolute;
  z-index: 1000;
  display: none;
}
.tooltip--static .tooltipWrap:hover .js--tooltipItem {
  display: inline-block;
  top: 35px;
  right: 5px;
  width: 300px;
}
.tooltip--static .js--tooltipItem::before {
  content: "";
  border-style: solid;
  border-width: 0 6px 12px 6px;
  border-color: transparent transparent #d5d7d9 transparent;
  position: absolute;
  top: -12px;
  right: 10px;
  z-index: 1000;
}
