@charset "utf-8";
/* ==================================================
汎用
================================================== */
/* ----- リンクアイコン ----- */
.linkIcon {
  --linkIcon: url(/common/images/icon/icon_link.svg);
  --linkIconColor: var(--mainColor);
  --linkIconWidth: .9em;
  --linkIconHeight: .9em;
  width: var(--linkIconWidth);
  height: var(--linkIconHeight);
  flex-shrink: 0;
  display: inline-block;
  position: relative;
  top: .1em;
  margin: 0 8px;
}
.linkIcon::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background: var(--linkIconColor);

  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-image: var(--linkIcon);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: var(--linkIcon);
}
/* - オプション - */
/* 色 */
.linkIcon-orange { --linkIconColor: var(--subColor); }
.linkIcon-red { --linkIconColor: var(--colorRed); }
/* アイコン種類 */
.linkIcon-blank { --linkIcon: url(/common/images/icon/icon_blank.svg); }
.linkIcon-down { --linkIcon: url(/common/images/icon/icon_down.svg); }
.linkIcon-download { --linkIcon: url(/common/images/icon/icon_download.svg); }
/* PDFはサイズ調整 */
.linkIcon-pdf {
  --linkIcon: url(/common/images/icon/icon_pdf.svg);
  width: 37px;
  height: 18px;
}

/* ==================================================
heading
================================================== */

/* --------------------------------------------------
h1
-------------------------------------------------- */
.heading1 {

}
.heading1_inner {
  width: 100%;
  position: relative;
  display: flex;
}
.heading1_text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  min-height: 176px;
  padding: 16px 40px;
  color: #CE2D26;
  border-bottom: 1px solid #CE2D26;
}
.heading1_text_main {
  font-size: 40px;
  line-height: 1.3;
}
.heading1_text_sub {
  font-size: 24px;
  line-height: 1.4;
}
.heading1_lead_inner {
  width: 100%;
  max-width: var(--cntMaxWidth);
  margin: auto;
  padding: 40px var(--cntPaddingX);
}

/* type-img */

/* type-btn */

.heading1.type-img, .heading1.type-btn {
  padding-top: 40px;
}

.heading1.type-img .heading1_inner, .heading1.type-btn .heading1_inner {
  height: 360px;
  flex-direction: column;
  justify-content: center;
  background: url(/common/images/h1_mv_bg.jpg) repeat 0 0;
}

.heading1.type-img .heading1_text, .heading1.type-btn .heading1_text {
  width: 580px;
  position: relative;
  top: -40px;
  background: #fff;
  z-index: 1;
}

.heading1.type-img .heading1_img, .heading1.type-btn .heading1_img {
  width: 1126px;
  height: 100%;
  position: absolute;
  top: -40px;
  left: 50%;
  margin-left: -489px;
  z-index: 0;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.heading1.type-btn {
  background: linear-gradient(transparent 50%, #f2f2f2 65%);
}

.heading1.type-btn .heading1_inner {
  height: 440px;
}

.heading1_btns {
  width: 880px;
  margin: -114px auto 0;
  padding: 24px 32px;
  background-color: #fff;
  position: relative;
}
.heading1_btns_title {
  font-size: 20px;
  line-height: 1.3;
  text-align: center;
}
.heading1_btns .nmlBtn {
  margin-top: 16px;
}

/* type-text */

.heading1.type-text .heading1_inner {
  background: #FAFAFA url(/common/images/h1_bg.png) no-repeat right bottom;
}

/* --------------------------------------------------
h2
-------------------------------------------------- */

.heading2 {
  width: 1080px;
  margin: 52px auto 80px;
  font-size: 40px;
  line-height: 1.5;
  letter-spacing: .05em;
}

.heading2::after {
  content: "";
  display: block;
  border-top: 1px solid #ccc;
  width: 100%;
}

.heading2_text {
  display: inline-block;
  border-bottom: 1px solid #CE2D26;
  margin-bottom: -1px;
  padding-bottom: 20px;
}

.heading2_text .text-sub {
  font-size: 20px;
}

.heading2+.innerWrap {
  padding-top: 0;
}

/* type-bdrT */

.heading2.type-bdrT {
  position: relative;
  width: 100%;
  margin-top: 0;
}

.heading2.type-bdrT::after {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.heading2.type-bdrT .heading2_text {
  border-bottom: none;
  border-top: 1px solid #CE2D26;
  padding-bottom: 0;
  padding-top: 40px;
  position: relative;
  z-index: 1;
}

/* heading2_wrap（各トップページ用） */

.heading2_wrap {
  margin: 45px 0;
  text-align: center;
}

.heading2_wrap:first-child {
  margin-top: 0;
}

.heading2_wrap:last-child {
  margin-bottom: 0;
}

.heading2_wrap .heading2_sub {
  color: #ce2d26;
  font-family: Nunito, sans-serif;
  font-size: 16px;
}

.heading2_wrap .heading2 {
  width: auto;
  margin: 0;
}

.heading2_wrap .heading2::after {
  display: none;
}

/* --------------------------------------------------
h3
-------------------------------------------------- */

.heading3 {
  position: relative;
  border-bottom: 1px solid #ccc;
  margin: 74px 0 56px;
  padding-bottom: 16px;
  font-size: 24px;
  line-height: 1.4;
}

.heading3:first-child {
  margin-top: 0;
}

.heading3:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  display: block;
  width: 106px;
  height: 1px;
  background: #01693E;
}

/* --------------------------------------------------
h4
-------------------------------------------------- */

.heading4 {
  position: relative;
  margin: 40px auto 32px;
  padding-bottom: 12px;
  font-size: 20px;
  line-height: 1.4;
}

.heading4:first-child {
  margin-top: 0;
}

.heading4:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 40px;
  height: 1px;
  background: #01693E;
}

/* --------------------------------------------------
h5
-------------------------------------------------- */

.heading5 {
  position: relative;
  margin: 40px auto 32px;
  padding-bottom: 8px;
  font-size: 18px;
  line-height: 1.5;
}

.heading5:first-child {
  margin-top: 0;
}

.heading5:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 24px;
  height: 1px;
  background: #ccc;
}

/* --------------------------------------------------
triLabel
-------------------------------------------------- */

.triLabel {
  padding: 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  color: #fff;
  text-align: center;
  transition: all .2s ease;
}

.triLabel:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 92px 92px 0 0;
  border-color: #CE2D26 transparent transparent transparent;
  transition: all .2s ease;
}

.triLabel_text {
  display: block;
  position: relative;
  z-index: 1;
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
}

.triLabel_no {
  display: block;
  position: relative;
  z-index: 1;
  font-family: Roboto, sans-serif;
  font-size: 32px;
  line-height: 1;
}

/* --------------------------------------------------
numIcon
-------------------------------------------------- */

.numIcon {
  width: 64px;
  line-height: 1;
  text-align: center;
}

.numIcon_text {
  min-width: 50px;
  display: inline-block;
  vertical-align: bottom;
  border: 2px solid #CE2D26;
  border-radius: 4px;
  padding: 2px 4px;
  font-family: Nunito, sans-serif;
  font-weight: 700;
  font-size: 12px;
  color: #CE2D26;
  position: relative;
}

.numIcon_text:before {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  border: 3px solid transparent;
  border-top: 3px solid #FCE900;
  z-index: 2;
}

.numIcon_text:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-top: 4px solid #CE2D26;
  z-index: 1;
}

.numIcon_text+.numIcon_no {
  margin-top: -13px;
  padding-top: 2px;
}

.numIcon_no {
  display: block;
  width: 64px;
  height: 64px;
  font-family: Roboto, sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 64px;
  color: #CE2D26;
  background: #FCE900;
  border-radius: 50%;
}
/* --------------------------------------------------
headingSp
-------------------------------------------------- */

.headingSp {
  display: flex;
  margin: 40px auto 32px;
}

.headingSp:first-child {
  margin-top: 0;
}

.headingSp_text .text-main {
  display: block;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 600;
}

.headingSp_text .text-sub {
  display: block;
  font-size: 16px;
  line-height: 1.4;
  margin-top: 8px;
}

/* type-vertical */

.headingSp.type-vertical {
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.headingSp.type-vertical .numIcon {
  margin-bottom: 12px;
}

/* type-horizontal */

.headingSp.type-horizontal {
  align-items: center;
}

.headingSp.type-horizontal .numIcon {
  margin-right: 20px;
}

/* ==================================================
List
================================================== */

/* --------------------------------------------------
cirList
-------------------------------------------------- */

.cirList {
  margin-top: 20px;
}

.cirList:first-child {
  margin-top: 0;
}

li>.cirList {
  margin-top: 8px;
}

.cirList>li {
  position: relative;
  margin-top: 8px;
  padding-left: .8em;
  line-height: 1.5;
}

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

.cirList>li:before {
  position: absolute;
  left: 0;
  top: .5em;
  content: "";
  width: .5em;
  height: .5em;
  border-radius: 50%;
  background: #000;
}

.cirList.color-green>li:before {
  background: #079B5E;
}

.cirList.color-black>li:before {
  background: #000;
}

.cirList.color-red>li:before {
  background: #CE2D26;
}

.cirList>li.fcRed:before {
  background: #CE2D26;
}

/* --------------------------------------------------
checkList
-------------------------------------------------- */

.checkList {
  margin-top: 20px;
}

.checkList:first-child {
  margin-top: 0;
}

li>.checkList {
  margin-top: 8px;
}

.checkList>li {
  position: relative;
  margin-top: 8px;
  padding-left: 1.3em;
  line-height: 1.5;
}

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

.checkList>li:before {
  position: absolute;
  left: 0;
  top: .25em;
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  background: url(/common/images/icon_check.svg) no-repeat center center;
  background-size: 1em 1em;
}

/* --------------------------------------------------
numList
-------------------------------------------------- */

.numList {
  margin-top: 20px;
  padding-left: 2em;
}

.numList:first-child {
  margin-top: 0;
}

li>.numList {
  margin-top: 8px;
}

.numList>li {
  position: relative;
  margin-top: 8px;
  line-height: 1.5;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: num1;
}

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

.numList>li:before {
  position: absolute;
  left: -2em;
  top: 0;
  font-weight: 600;
  color: #079B5E;
  display: marker;
  content: counter(num1) ".";
}

/* --------------------------------------------------
numList2
-------------------------------------------------- */

.numList2 {
  margin-top: 20px;
  padding-left: 2.5em;
}

.numList2:first-child {
  margin-top: 0;
}

li>.numList2 {
  margin-top: 8px;
}

.numList2>li {
  position: relative;
  margin-top: 8px;
  line-height: 1.5;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: num2;
}

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

.numList2>li:before {
  position: absolute;
  left: -2.5em;
  top: 0;
  font-weight: 600;
  color: #079B5E;
  display: marker;
  content: "("counter(num2)")";
  letter-spacing: -.01em;
}

/* --------------------------------------------------
docNumList
-------------------------------------------------- */

.docNumList {
  margin-top: 20px;
  padding-left: 2.3em;
}

.docNumList:first-child {
  margin-top: 0;
}

li>.docNumList {
  margin-top: 8px;
}

.docNumList>li {
  position: relative;
  margin-top: 8px;
  line-height: 1.5;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: docNum;
}

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

.docNumList>li:before {
  position: absolute;
  left: -2.3em;
  top: 0;
  display: marker;
  content: "("counter(docNum)")";
  letter-spacing: -.01em;
}

/* --------------------------------------------------
docNumList2
-------------------------------------------------- */

.docNumList2 {
  margin-top: 20px;
  padding-left: 2.3em;
}

.docNumList2:first-child {
  margin-top: 0;
}

li>.docNumList2 {
  margin-top: 8px;
}

.docNumList2>li {
  position: relative;
  margin-top: 8px;
  line-height: 1.5;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: docNum2;
}

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

.docNumList2>li:before {
  position: absolute;
  left: -2.3em;
  top: 0;
  display: marker;
  content: "["counter(docNum2)"]";
  letter-spacing: -.01em;
}

/* --------------------------------------------------
docNumList3
-------------------------------------------------- */

.docNumList3 {
  margin-top: 20px;
  padding-left: 2.3em;
}

.docNumList3:first-child {
  margin-top: 0;
}

li>.docNumList3 {
  margin-top: 8px;
}

.docNumList3>li {
  position: relative;
  margin-top: 8px;
  line-height: 1.5;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: docNum3;
}

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

.docNumList3>li:before {
  position: absolute;
  left: -2.3em;
  top: 0;
  display: marker;
  content: "["counter(docNum3, upper-alpha)"]";
  letter-spacing: -.01em;
}


/* --------------------------------------------------
noteNumList
-------------------------------------------------- */

.noteNumList {
  margin-top: 20px;
}

.noteNumList:first-child {
  margin-top: 0;
}

li>.noteNumList {
  margin-top: 8px;
}

.noteNumList>li {
  position: relative;
  margin-top: 8px;
  padding-left: 2.5em;
  font-size: 14px;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: noteNum;
}

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

.noteNumList>li:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "\203B"counter(noteNum);
  letter-spacing: -.01em;
}

/* ==================================================
Accordion
================================================== */

/* --------------------------------------------------
通常
-------------------------------------------------- */
/* ----- アコーディオン（デフォルト） ----- */
.acd {
  --acdIconColor: #0AA365;
  --acdIconSize: 18px;
  --acdIconPos: 24px;
  --acdIconRotate: rotate(-90deg);
  border: 1px solid #0AA365;
  border-radius: 16px;
  margin-top: 40px;
  overflow: hidden;
}
.acd:first-child { margin-top: 0; }
.acd + .acd { margin-top: 32px; }
/* - ボタン - */
.acd_btn {
  width: 100%;
  display: flex;
  position: relative;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.25;
  background-color: #fff;
  padding: 24px;
  transition:
    color .4s ease,
    background-color .4s ease,
    opacity .4s ease;
}
.acd_btn[summary] { cursor: pointer; }
.acd_btn[summary]:hover { opacity: .7; }
.acd_btn_inner {
  width: 100%;
  display: flex;
  gap: 16px;
  align-items: center;
  position: relative;
  padding-right: var(--acdIconSize);
}
div.acd_btn > .acd_btn_inner { padding-right: 0; }
.acd_btn_sub {
  font-size: 20px;
}
.acd_btn_icon {
  width: var(--acdIconSize);
  height: var(--acdIconSize);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.acd_btn_icon::before,
.acd_btn_icon::after {
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: var(--acdIconColor);
  margin: auto;
  transition:
    background-color .4s ease,
    transform .4s ease;
}
.acd_btn_icon::before { transform: var(--acdIconRotate); }
/* - コンテンツ - */
.acd_box {
  display: none;
  position: relative;
  background: #fff;
  border-top: 1px solid #0AA365;
  padding: 24px;
}
.acd_box_inner {
  width: 100%;
}
.acd_box_inner > .faqIcon-a {
  position: absolute;
}
.acd_box_inner2 {
  margin-top: 24px;
}
.acd_box_main {
  width: 100%;
}
.faqIcon + .acd_box_main:has(> .nmlText:only-child) {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.faqIcon-a + .acd_box_main {
  min-height: 56px;
  padding-left: 72px;
}
.acd_box.wideBox .faqIcon-a + .acd_box_main,
.acd_box.pc_wideBox .faqIcon-a + .acd_box_main {
  padding-left: 0;
  padding-top: 60px;
}
/* --- 開閉 --- */
.acd[open] { --acdIconRotate: rotate(0); }
/* --- spのみアコーディオン --- */
.acd.acd-spOnly {
  border: none;
}
.acd.acd-spOnly > .acd_btn {
  padding: 0;
  cursor: auto;
}
.acd.acd-spOnly > .acd_btn .acd_btn_icon {
  display: none;
}
.acd.acd-spOnly > .acd_box {
  display: block;
  background: none;
  border: none;
  padding: 0;
  margin-top: 24px;
}
/* - パターン2 - */
.acd-type2 {
  --acdIconColor: #fff;
  border: none;
  border-radius: 0;
}
.acd-type2 .acd_btn {
  width: 420px;
  color: #fff;
  font-size: 18px;
  text-align: center;
  background-color: #ccc;
  border-radius: 12px;
  margin: auto;
}
.acd-type2 .acd_btn_inner {
  justify-content: center;
}
.acd-type2 .acd_box {
  background: none;
  border-top: none;
  padding: 48px 0 0;
}

/* ==================================================
テーブル
================================================== */
.nmlTable {
  --paddingY: 16px;
  --paddingX: 20px;
  width: 100%;
  table-layout: fixed;
  font-size: var(--defFontSize);
  margin-top: 40px;
}
.nmlTable:first-child { margin-top: 0; }
.nmlTable caption {
  font-size: var(--largeFontSize);
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 12px;
}
.nmlTable caption img {
  vertical-align: middle;
}
/* - th & td - */
.nmlTable th,
.nmlTable td {
  vertical-align: middle;
  border: 1px solid #ccc;
  padding: var(--paddingY) var(--paddingX);
}
/* - th - */
.nmlTable th {
  color: #fff;
  font-size: var(--largeFontSize);
  font-weight: bold;
  text-align: left;
  background-color: var(--mainColor);
}
.nmlTable th.bgLGray {
  color: var(--defaultColor);
}
/* thead内のth */
.nmlTable thead th {
  height: 64px;
  text-align: center;
}
/* thead有り tbody内のth */
.nmlTable thead + tbody > tr > th {
  color: inherit;
  text-align: center;
  background-color: #F2F2F2;
}
/* thead無し tbody内のth */
.nmlTable colgroup + tbody > tr > th {
  color: #fff;
}
/* - td - */
.nmlTable td {
  min-height: 60px;
  background: #fff;
}
/* - オプション - */
/* thのテキストを左右中央 */
.nmlTable.taC tbody th { text-align: center; }
/* - 小さいパターン（テーブル内にテーブルがある場合などに使用） - */
.nmlTable-small {
  --largeFontSize: 16px;
  --defFontSize: 14px;
  --paddingY: 8px;
  --paddingX: 8px;
}
.nmlTable-small thead th { height: auto; }
/* 別色グレーテーブル */
.nmlTable-type2 th {
  background-color: #6E6E6E;
}

/* ==================================================
Box
================================================== */

/* --------------------------------------------------
boxGroup
-------------------------------------------------- */

.boxGroup {
  margin-top: 40px;
}

.boxGroup:first-child {
  margin-top: 0;
}

.boxGroup .boxGroup_inner {
  display: flex;
  flex-wrap: wrap;
  min-width: 100%;
  margin: 0 -12px -24px;
  /* デフォルト gap24 */
}

.boxGroup .boxGroup_item {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  /* デフォルト col1 */
  padding: 0 12px 24px;
  /* デフォルト gap24 */
}

.boxGroup .boxGroup_item>* {
  width: 100%;
}

/* カラム */

.boxGroup.col1 .boxGroup_item {
  width: calc(100% / 1);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col1 .boxGroup_item {
  width: calc((100% - 0.01px) / 1);
}

.boxGroup.col2 .boxGroup_item {
  width: calc(100% / 2);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col2 .boxGroup_item {
  width: calc((100% - 0.01px) / 2);
}

.boxGroup.col3 .boxGroup_item {
  width: calc(100% / 3);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col3 .boxGroup_item {
  width: calc((100% - 0.01px) / 3);
}

.boxGroup.col4 .boxGroup_item {
  width: calc(100% / 4);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col4 .boxGroup_item {
  width: calc((100% - 0.01px) / 4);
}

.boxGroup.col5 .boxGroup_item {
  width: calc(100% / 5);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col5 .boxGroup_item {
  width: calc((100% - 0.01px) / 5);
}

.boxGroup.col6 .boxGroup_item {
  width: calc(100% / 6);
}
_:-ms-lang(x)::-ms-backdrop, .boxGroup.col6 .boxGroup_item {
  width: calc((100% - 0.01px) / 6);
}

/* 余白 */

.boxGroup.gap0 .boxGroup_inner {
  margin: 0;
}

.boxGroup.gap0 .boxGroup_item {
  padding: 0;
}

.boxGroup.gap8 .boxGroup_inner {
  margin: 0 -4px -8px;
}

.boxGroup.gap8 .boxGroup_item {
  padding: 0 4px 8px;
}

.boxGroup.gap16 .boxGroup_inner {
  margin: 0 -8px -16px;
}

.boxGroup.gap16 .boxGroup_item {
  padding: 0 8px 16px;
}

.boxGroup.gap24 .boxGroup_inner {
  margin: 0 -12px -24px;
}

.boxGroup.gap24 .boxGroup_item {
  padding: 0 12px 24px;
}

.boxGroup.gap32 .boxGroup_inner {
  margin: 0 -16px -32px;
}

.boxGroup.gap32 .boxGroup_item {
  padding: 0 16px 32px;
}

.boxGroup.gap40 .boxGroup_inner {
  margin: 0 -20px -40px;
}

.boxGroup.gap40 .boxGroup_item {
  padding: 0 20px 40px;
}

.boxGroup.icon-plus .boxGroup_item {
  position: relative;
}
.boxGroup.icon-plus .boxGroup_item:not(:first-child)::before {
  content: '';
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  left: -10px;
  top: -10px;
  bottom: 0;
  background: url(/lifeplan/bringup/images/index/icon_plus.png) no-repeat center center;
  background-size: contain;
  margin: auto;
}
.boxGroup.gap16.icon-plus .boxGroup_item::before {
  width: 14px;
  height: 14px;
  left: -7px;
  top: -7px;
}

/* --------------------------------------------------
box1
-------------------------------------------------- */

.box1 {
  margin-top: 40px;
  padding: 0 40px 24px;
  background-color: #FFEFDD;
}

.box1:first-child {
  margin-top: 0;
}

.box1_head {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #ccc;
  padding-top: 30px;
  padding-bottom: 24px;
  font-size: 24px;
}

.box1_body {
  padding-top: 24px;
}

/* --------------------------------------------------
box2
-------------------------------------------------- */

.box2 {
  margin-top: 40px;
  border: 1px solid #ccc;
  background-color: #fff;
}

.box2:first-child {
  margin-top: 0;
}

.box2_head {
  display: flex;
  align-items: center;
  margin: -1px -1px 0;
  padding: 18px 40px 18px;
  color: #fff;
  background-color: #0071E3;
  font-size: 24px;
  line-height: 1.4;
}

.box2_head-icon {
  width: 48px;
  height: 48px;
  margin: -5px 16px -5px 0;
}

.box2_body {
  padding: 24px 40px 24px;
}

/* color-blue */

.box2.color-blue {
  background-color: #E6F3FF;
  border-color: #E6F3FF;
}

.box2.color-blue .box2_head {
  background-color: #0071E3;
}

/* color-red */
.box2.color-red .box2_head {
  background-color: #CE2D26;
}



/* --------------------------------------------------
box3
-------------------------------------------------- */

.box3 {
  margin-top: 40px;
  padding: 24px 40px;
  background-color: #fff;
  border: 1px solid #6A6A6A;
}

.box3:first-child {
  margin-top: 0;
}

/* --------------------------------------------------
box4
-------------------------------------------------- */

.box4 {
  margin-top: 40px;
  padding: 32px 24px;
  background-color: #fff;
}

.box4:first-child {
  margin-top: 0;
}

.box4_head {
  margin-bottom: 32px;
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
  color: #01693E;
}

.box4_head:after {
  content: "";
  display: block;
  width: 40px;
  margin: 16px auto 0;
  border-bottom: 1px solid #717171;
}

/* --------------------------------------------------
box5
-------------------------------------------------- */

.box5 {
  margin-top: 40px;
  padding: 20px 12px;
  background-color: #fff;
  border: 1px solid #ccc;
}

.box5:first-child {
  margin-top: 0;
}

.box5_head {
  margin-bottom: 20px;
  text-align: center;
  font-size: 20px;
  line-height: 1.4;
}

/* --------------------------------------------------
noteBox
-------------------------------------------------- */

.noteBox {
  margin-top: 40px;
  background-color: #F9EBEB;
}

.noteBox:first-child {
  margin-top: 0;
}

.noteBox_head {
  display: flex;
  align-items: center;
  padding: 30px 40px 24px;
  color: #D80000;
  font-size: 24px;
  line-height: 1.4;
  position: relative;
  width: 100%;
}

.noteBox_head::before {
  content: "";
  display: inline-block;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  background: url(/common/images/icon_attention_red.svg) no-repeat left center / contain;
}

.noteBox_body {
  padding: 24px 40px;
}

.noteBox_head+.noteBox_body::before {
  content: "";
  display: block;
  border-top: 1px solid #ccc;
  position: relative;
  top: -24px;
}

/* アコーディオン付き */

.noteBox.acd {
  border-radius: 8px;
  border: 1px solid #B10600;
  overflow: hidden;
}

.noteBox_head.js-acd_btn {
  cursor: pointer;
  transition: .2s;
}

.noteBox_head.js-acd_btn::after {
  content: '';
  display: block;
  position: absolute;
  right: 24px;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  background: url(/common/images/icon_plus_red.svg) no-repeat 0 0 / 100% 100%;
  transition: .2s;
}

.noteBox_head.js-acd_btn.is-active::after {
  background-image: url(/common/images/icon_minus_red.svg);
}

.noteBox_body.js-acd_box {
  display: none;
}

/* ボタンホバー時 */

.noteBox_head.js-acd_btn:hover,
.noteBox_head.js-acd_btn:focus {
  background-color: #B10600;
  color: #FFF;
}

.noteBox_head.js-acd_btn:hover::before,
.noteBox_head.js-acd_btn:focus::before {
  background-image: url(/common/images/icon_attention_white.svg);
}

.noteBox_head.js-acd_btn:hover::after,
.noteBox_head.js-acd_btn:focus::after {
  background-image: url(/common/images/icon_plus_white_red.svg);
}

.noteBox_head.js-acd_btn.is-active:hover::after,
.noteBox_head.js-acd_btn.is-active:focus::after {
  background-image: url(/common/images/icon_minus_white_red.svg);
}

/* --------------------------------------------------
imgTxt
-------------------------------------------------- */

.imgTxt {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 40px;
}

.imgTxt:first-child {
  margin-top: 0;
}

.imgTxt .imgTxt_item {
  flex: 1 1 auto;
}

.imgTxt .imgTxt_item img {
  max-width: none;
}

.imgTxt .imgTxt_item:not(:last-child) {
  margin-right: 4%;
}

.imgTxt.type-float {
  display: block;
}

.imgTxt.type-float .imgTxt_item {
  margin: 0;
}

.imgTxt.type-float .imgTxt_item.imgTxt_floatLeft {
  float: left;
  margin: 0 40px 40px 0;
}

.imgTxt.type-float .imgTxt_item.imgTxt_floatRight {
  float: right;
  margin: 0 0 40px 40px;
}

.imgTxt.type-float .imgTxt_item.imgTxt_floatLeft:after, .imgTxt.type-float .imgTxt_item.imgTxt_floatRight:after {
  display: block;
  clear: both;
  content: '';
}




/* ----- コンバージョンボタン ----- */
/* - 変数用 - */
.cnvBtn {
  /* 色 */
  --cnvBtnColor: linear-gradient(#1eb581 0%, #107c6a 100%);
  /* アイコン */
  --cnvBtnLinkIcon: url(/common/images/icon/icon_link.svg);
}
/* - メイン - */
.cnvBtn {
  max-width: 100%;
  display: flex;
  gap: 24px 32px;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 1.3;
  text-align: center;
  margin-top: 48px;
}
.cnvBtn:first-child { margin-top: 0; }
.cnvBtn_item {
  flex: 0 0 auto;
  width: 420px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
}
.cnvBtn_item_inner {
  width: 100%;
  height: 100%;
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  color: #fff;
  background: var(--cnvBtnColor);
  border-radius: 40px;
  padding: 8px 44px;
  text-decoration: none;
  cursor: pointer;
  transition: var(--transOpac);
}
.cnvBtn_text {
  display: flex;
  gap: 4px;
  flex-direction: column;
}
.cnvBtn_text_main {
  font-size: 22px;
  font-weight: bold;
}
.cnvBtn_text_sub {
  font-size: 14px;
}
.cnvBtn_caption {
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 8px;
}
.cnvBtn_caption strong,
.cnvBtn_caption2 strong {
  color: var(--defColor);
  font-size: 20px;
}
.cnvBtn_caption2 {
  display: flex;
  justify-content: center;
  position: relative;
  color: var(--cnvBtnColor);
  font-weight: bold;
  line-height: 1.5;
  margin: auto auto 8px;
  padding: 0 32px;
}
.cnvBtn_caption2::before,
.cnvBtn_caption2::after {
  content: "";
  position: absolute;
  width: 30px;
  height:2px;
  bottom: 12px;
  background-color: var(--cnvBtnColor);
}
.cnvBtn_caption2::before {
  left: 0;
  transform: rotate(45deg);
}
.cnvBtn_caption2::after {
  right: 0;
  transform: rotate(-45deg);
}
.cnvBtn_caption.fcWhite,
.cnvBtn_caption2.fcWhite,
.cnvBtn_caption.pc_fcWhite,
.cnvBtn_caption2.pc_fcWhite { --cnvBtnColor: #fff; }
.cnvBtn_caption2-simple::before,
.cnvBtn_caption2-simple::after { content: none; }
/* - 色 - */
.cnvBtn_item-orange {
  --cnvBtnColor: var(--subColor);
}
/* - 左側に置く（かもしれない）アイコン - */
.cnvBtn_icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-content: center;
  position: absolute;
  top: 0;
  left: 20px;
  bottom: 0;
  margin: auto;
}
.cnvBtn_icon::after {
  background-color: var(--cnvBtnTxtColor);
  transition: var(--transBg);
}
/* - リンクアイコン - */
.cnvBtn_linkIcon {
  width: 14px;
  height: 14px;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.cnvBtn_linkIcon::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  transition: var(--transBg);

  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-image: var(--cnvBtnLinkIcon);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: var(--cnvBtnLinkIcon);
}
/* アイコンの種類 */
.cnvBtn_linkIcon-down {
  transform: rotate(90deg);
}
.cnvBtn_linkIcon-blank {
  --cnvBtnLinkIcon: url(/common/images/icon/icon_blank.svg);
}
/* - ホバー - */
a.cnvBtn_item_inner:hover {
  opacity: var(--hoverOpac);
}

/* ----- 注意喚起ボタン ----- */
/* - 変数用 - */
.cautionBtn {
  /* カラム・幅など */
  --cautionBtnCol: 1;
  --cautionBtnMaxW: 344px;
  --cautionBtnPadding: 40px;
  /* 色 */
  --cautionBtnColor: var(--colorRed);
  --cautionBtnBoderColor: var(--colorRed);
  --cautionBtnColor_hover: #fff;
  /* アイコン */
  --cautionBtnLinkIcon: url(/common/images/icon/icon_link.svg);
  --cautionBtnLinkIconWidth: 14px;
  --cautionBtnLinkIconHeight: 14px;
}
/* - メイン - */
.cautionBtn {
  max-width: 100%;
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  margin-top: 40px;
}
.cautionBtn:first-child { margin-top: 0; }
.cautionBtn_item {
  --cautionBtnTxtColor: var(--cautionBtnColor_hover);
  --cautionBtnBgColor: var(--cautionBtnColor);

  flex: 0 0 auto;
  width: 344px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
}
.cautionBtn_item_inner {
  width: 100%;
  height: 100%;
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  color: var(--cautionBtnTxtColor);
  background: var(--cautionBtnBgColor);
  border: 1px solid var(--cautionBtnBoderColor);
  border-radius: 8px;
  padding: 8px var(--cautionBtnPadding);
  text-decoration: none;
  cursor: pointer;
  transition:
    var(--transColor),
    var(--transBg);
}
.cautionBtn_text {
  display: flex;
  gap: 4px;
  flex-direction: column;
}
.cautionBtn_text_main {
  font-weight: bold;
}
.cautionBtn_text_sub {
  font-size: 14px;
}
/* - リンクアイコン - */
.cautionBtn_linkIcon {
  width: var(--cautionBtnLinkIconWidth);
  height: var(--cautionBtnLinkIconHeight);
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.cautionBtn_linkIcon::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background-color: var(--cautionBtnTxtColor);
  transition: var(--transBg);

  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-image: var(--cautionBtnLinkIcon);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: var(--cautionBtnLinkIcon);
}
/* アイコンの種類 */
.cautionBtn_linkIcon-down {
  transform: rotate(90deg);
}
.cautionBtn_linkIcon-blank {
  --cautionBtnLinkIcon: url(/common/images/icon/icon_blank.svg);
}
.cautionBtn_linkIcon-pdf {
  --cautionBtnLinkIcon: url(/common/images/icon/icon_pdf.svg);
  --cautionBtnLinkIconWidth: 37px;
  --cautionBtnLinkIconHeight: 18px;
}
/* - ホバー - */
a.cautionBtn_item_inner:hover {
  --cautionBtnTxtColor: var(--cautionBtnColor);
  --cautionBtnBgColor: var(--cautionBtnColor_hover);
}
/* 反転 */
.cautionBtn_item-reverseColor {
  --cautionBtnTxtColor: var(--cautionBtnColor);
  --cautionBtnBgColor: var(--cautionBtnColor_hover);
}
.cautionBtn_item-reverseColor a.cautionBtn_item_inner:hover {
  --cautionBtnTxtColor: var(--cautionBtnColor_hover);
  --cautionBtnBgColor: var(--cautionBtnColor);
}

/* ----- 小ボタン ----- */
/* - 変数用 - */
.smlBtn {
  /* カラム・幅など */
  --smlBtnW: 200px;
  --gapY: 20px;
  --gapX: 20px;
  --smlBtnRadius: 24px;
  --smlBtnPadding: 28px;
  /* 色 */
  --smlBtnColor: var(--defColor);
  --smlBtnBoderColor: var(--colorGray);
  /* アイコン */
  --smlBtnLinkIcon: url(/common/images/icon/icon_link.svg);
  --smlBtnLinkIconWidth: 14px;
  --smlBtnLinkIconHeight: 10px;
}
/* - メイン - */
.smlBtn {
  max-width: 100%;
  display: flex;
  gap: var(--gapY) var(--gapX);
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  margin-top: 24px;
}
.smlBtn:first-child { margin-top: 0; }
.smlBtn_item {
  flex: 0 0 auto;
  width: var(--smlBtnW);
  max-width: 100%;
  display: flex;
  flex-direction: column;
}
.smlBtn_item_inner {
  width: 100%;
  height: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  color: var(--smlBtnColor);
  background: #fff;
  border: 1px solid var(--colorGray);
  border-radius: var(--smlBtnRadius);
  padding: 8px var(--smlBtnPadding);
  text-decoration: none;
  cursor: pointer;
  transition: var(--transOpac);
}
.smlBtn_text {
  display: flex;
  gap: 4px;
  flex-direction: column;
}
.smlBtn_text_main {
  font-size: 14px;
  font-weight: bold;
}
.smlBtn_text_sub {
  font-size: 12px;
}
/* - 幅 - */
.smlBtn-col3,
.smlBtn.col3,
.smlBtn.pc_col3 { --smlBtnW: 346px; }
/* - リンクアイコン - */
.smlBtn_linkIcon {
  width: var(--smlBtnLinkIconWidth);
  height: var(--smlBtnLinkIconHeight);
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  margin: auto;
}
.smlBtn_linkIcon::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background-color: var(--mainColor);
  transition: var(--transBg);

  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-image: var(--smlBtnLinkIcon);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: var(--smlBtnLinkIcon);
}
.smlBtn_item_inner:has(.smlBtn_linkIcon-pdf) {
  --smlBtnPadding: 44px;
}
/* アイコンの種類 */
.smlBtn_linkIcon-down {
  --smlBtnLinkIcon: url(/common/images/icon/icon_anchor.svg);
}
.smlBtn_linkIcon-blank {
  --smlBtnLinkIcon: url(/common/images/icon/icon_blank.svg);
}
.smlBtn_linkIcon-pdf {
  --smlBtnPadding: 38px;
  --smlBtnLinkIcon: url(/common/images/icon/icon_pdf.svg);
  --smlBtnLinkIconWidth: 31px;
  --smlBtnLinkIconHeight: 14px;
}
/* - ホバー - */
a.smlBtn_item_inner:hover {
  opacity: var(--hoverOpac);
}
/* - 非活性ボタン - */
.smlBtn_item-disabled {
  --smlBtnColor: var(--colorGray);
  --smlBtnBoderColor: var(--colorGray);
  --smlBtnTxtColor: var(--defColor);

  pointer-events: none;
  user-select: none;
}
.smlBtn_item-disabled .smlBtn-linkIcon {
  display: none;
}
/* - 見た目だけボタン - */
div.smlBtn_item_inner:not([data-modalclass]) {
  user-select: none;
  pointer-events: none;
}
/* --------------------------------------------------
Panel
-------------------------------------------------- */

.panel {
  margin-top: 40px;
}

.panel:first-child {
  margin-top: 0;
}

.panel+.panel {
  margin-top: 20px;
}

.panel_list {
  display: flex;
  flex-wrap: wrap;
  min-width: 100%;
  margin: 0 -8px -20px;
}

.panel_item {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
  padding: 0 8px 20px;
}

/* カラム */

.panel.col1 .panel_item {
  width: calc(100% / 1);
}
_:-ms-lang(x)::-ms-backdrop, .panel.col1 .panel_item {
  width: calc((100% - 0.01px) / 1);
}

.panel.col2 .panel_item {
  width: calc(100% / 2);
}
_:-ms-lang(x)::-ms-backdrop, .panel.col2 .panel_item {
  width: calc((100% - 0.01px) / 2);
}

.panel.col3 .panel_item {
  width: calc(100% / 3);
}
_:-ms-lang(x)::-ms-backdrop, .panel.col3 .panel_item {
  width: calc((100% - 0.01px) / 3);
}

.panel.col4 .panel_item {
  width: calc(100% / 4);
}
_:-ms-lang(x)::-ms-backdrop, .panel.col4 .panel_item {
  width: calc((100% - 0.01px) / 4);
}

.panel.col5 .panel_item {
  width: calc(100% / 5);
}
_:-ms-lang(x)::-ms-backdrop, .panel.col5 .panel_item {
  width: calc((100% - 0.01px) / 5);
}

.panel_inner {
  position: relative;
  border: 1px solid #ccc;
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
  height: 100%;
  z-index: 1;
  /* safariバグ 対策*/
  transition: all .2s ease;
  text-decoration: none;
}

.panel_img {
  position: relative;
  height: 228px;
  overflow: hidden;
}

.panel_img img {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
  transition: all .2s ease;
}

.panel_txt {
  padding: 20px 24px;
}

.panel_txt .text-main {
  font-size: 16px;
  font-weight: 600;
}

.panel_txt .text-sub {
  font-size: 14px;
}

.panel_txt .text-main+.text-sub {
  margin-top: 20px;
}

/* type-icon */

.panel_item.type-icon .numIcon {
  position: relative;
  z-index: 2;
  margin: 0 auto -32px;
}

.panel_item.type-icon .numIcon+.panel_inner .panel_txt:first-child {
  margin-top: 24px;
}

.panel_item.type-icon .panel_inner {
  border: none;
}

.panel_item.type-icon .panel_img {
  border-radius: 8px;
}

.panel_item.type-icon .panel_txt {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

.panel_item.type-icon .panel_txt .text-main {
  font-size: 20px;
  font-weight: 600;
}

/* type-link */

.panel_item.type-link .panel_inner {
  padding-bottom: 20px;
  background: right 12px bottom 12px no-repeat;
}

.panel_item.type-link.arrow-right .panel_inner {
  background-image: url(/common/images/arrow_right_half_red.svg);
  background-size: 6px 12px;
}

.panel_item.type-link .panel_inner .icon-pdf {
  position: absolute;
  right: 12px;
  bottom: 12px;
}

.panel_item.type-link .panel_inner .icon-blank {
  position: absolute;
  right: 12px;
  bottom: 12px;
}

.panel_item.type-link .panel_txt .text-sub {
  color: #000;
}

.panel_item.type-link .panel_inner:hover,
.panel_item.type-link .panel_inner:focus {
  background-color: #CE2D26;
}

.panel_item.type-link.arrow-right .panel_inner:hover,
.panel_item.type-link.arrow-right .panel_inner:focus {
  background-image: url(/common/images/arrow_right_half_white.svg);
}

.panel_item.type-link .panel_inner:hover .icon-pdf::after,
.panel_item.type-link .panel_inner:focus .icon-pdf::after {
  background-image: url(/common/images/icon_document_white.svg);
}

.panel_item.type-link .panel_inner:hover .icon-blank::after,
.panel_item.type-link .panel_inner:focus .icon-blank::after{
  background-image: url(/common/images/icon_blank_white.svg);
}

.panel_item.type-link .panel_inner:hover .triLabel,
.panel_item.type-link .panel_inner:focus .triLabel {
  color: #CE2D26;
}

.panel_item.type-link .panel_inner:hover .triLabel:after,
.panel_item.type-link .panel_inner:focus .triLabel:after {
  border-color: #fff transparent transparent transparent;
}

.panel_item.type-link .panel_inner:hover .panel_img img,
.panel_item.type-link .panel_inner:focus .panel_img img {
  transform: scale(1.05);
}

.panel_item.type-link .panel_inner:hover .panel_txt .text-main, .panel_item.type-link .panel_inner:hover .panel_txt .text-sub,
.panel_item.type-link .panel_inner:focus .panel_txt .text-main, .panel_item.type-link .panel_inner:focus .panel_txt .text-sub {
  color: #fff;
}

/* ==================================================
card
================================================== */
.card_outer {
  border: 1px solid #CCCCCC;
  border-radius: 8px;
  margin-top: 40px;
  overflow: hidden;
}
.card_outer:first-child {
  margin-top: 0;
}
.card {
}
.card_link {
  position: relative;
  display: flex;
  color: #000;
  font-size: 16px;
  text-decoration: none;
  transition: .2s all ease-in-out;
}
.card_img_outer {
  order: 1;
  flex: 0 0 700px;
}
.card_img {
  position: relative;
  padding-top: 34.2857%;
  overflow: hidden;
}
.card_img img {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
  transition: .2s all ease-in-out;
}
.card_txt {
  flex: 1 1 auto;
  line-height: 1.5;
  background: no-repeat right 11px bottom 10px;
  background-size: 6px 12px;
  padding: 24px;
}
.card_txt_main {
  color: #CE2D26;
  font-weight: 600;
  transition: .2s all ease-in-out;
}
.card_txt_sub {
}
.card_txt_main + .card_txt_sub {
  margin-top: 20px;
}
/* ホバー */
.card_link:hover,
.card_link:focus {
  color: #fff;
  background: #CE2D26;
}
.card_link:hover .card_img img,
.card_link:focus .card_img img {
  transform: scale(1.05);
}
.card_link:hover .card_txt_main,
.card_link:focus .card_txt_main {
  color: #fff;
}

.card_link.icon-right .card_txt { background-image: url(/common/images/arrow_right_half_red.svg); }
.card_link.icon-right:hover .card_txt,.card_link.icon-right:focus .card_txt { background-image: url(/common/images/arrow_right_half_white.svg); }
.card_link.icon-pdf .card_txt { background-image: url(/common/images/icon_document_red.svg); }
.card_link.icon-pdf:hover .card_txt,.card_link.icon-pdf:focus .card_txt { background-image: url(/common/images/icon_document_white.svg); }

.card.no-link .card_link {
  user-select: none;
  pointer-events: none;
}

.card.has-label .card_link {
  align-items: center;
  padding-left: 15px;
}
.card.type2 .card_txt_main {
  color: #000000;
  font-size: 24px;
}
