@charset "UTF-8";

/*----------------------------------------
* カスタム目次
------------------------------------------*/
.custom_index nav ul li a::before {
  content: counters(item, ".", decimal) !important;
  margin-right: 0.5em !important;
  width: 26px;
  height: 26px;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  background: #2040a1;
  border-radius: 3px;
}

.article_body #ez-toc-container {
  display: none;
}

/*----------------------------------------
* アンダーライン＆文字色
------------------------------------------*/
.txt_underline {
  /* text-decoration: underline; */
  font-weight: bold;
  border-bottom: 3px solid yellow;
}

.txt_yellow_underline {
  font-weight: bold;
  background: linear-gradient(transparent 70%, yellow 70%);
}

.txt_red {
  color: #c31e1e;
  font-weight: bold;
}

/*----------------------------------------
* 2025-04-14 CTA
------------------------------------------*/
.kouza_order_area {
  margin: 20px auto;
  padding: 3.4em 0 3em 0;
  width: 100%;
  background: #f9f9f9;
}

@media screen and (max-width: 480px) {
  .kouza_order_area {
    margin-top: 10px;
    margin-bottom: 20px;
    padding-bottom: 2em;
  }
}

.kouza_order_area.top {
  margin: 0 auto 30px auto;
}

@media screen and (max-width: 480px) {
  .kouza_order_area.top {
    margin-bottom: 10px;
  }
}

.kouza_order_area .inner_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  width: 90%;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area {
    width: 98%;
  }
}

.kouza_order_area .inner_area .document_request_btn {
  position: relative;
  margin: 0 auto;
  padding: 0;
  width: 45%;
  height: 70px;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .document_request_btn {
    width: 40%;
    height: 34px;
  }
}

.kouza_order_area .inner_area .document_request_btn .doc_fukidashi {
  position: absolute;
  top: -30%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 40%;
  height: 30px;
  font-size: 0.85rem;
  font-weight: bold;
  color: #fff;
  border-radius: 100vh;
  border: 2px solid #17adbd;
  background: #17adbd;
  z-index: 1;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .document_request_btn .doc_fukidashi {
    top: -70%;
    width: 70%;
    height: 24px;
    font-size: 0.75rem;
  }
}

.kouza_order_area .inner_area .document_request_btn .doc_fukidashi::after {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 8px solid transparent;
  border-top: 8px solid #17adbd;
  width: 0;
  height: 0;
}

.kouza_order_area .inner_area .document_request_btn .str_red {
  color: #e62b2b;
}

.kouza_order_area .inner_area .document_request_btn>a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-size: 1.3rem;
  font-weight: bold;
  color: #17adbd;
  letter-spacing: 0.04em;
  border-radius: 100vh;
  border: 3px solid #17adbd;
  background: #fff;
  text-decoration: none !important;
}

.kouza_order_area .inner_area .document_request_btn>a:hover {
  background: #bbf4fa;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .document_request_btn>a {
    font-size: 0.9rem;
  }
}

.kouza_order_area .inner_area .application_request_btn {
  position: relative;
  margin: 0 auto;
  padding: 0;
  width: 51%;
  height: 70px;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .application_request_btn {
    width: 54%;
    height: 34px;
  }
}

.kouza_order_area .inner_area .application_request_btn .app_fukidashi {
  position: absolute;
  top: -30%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 40%;
  height: 30px;
  font-size: 0.85rem;
  font-weight: bold;
  color: #ecb500;
  border-radius: 100vh;
  border: 2px solid #ecb500;
  background: #fff;
  z-index: 1;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .application_request_btn .app_fukidashi {
    top: -70%;
    width: 70%;
    height: 24px;
    font-size: 0.75rem;
  }
}

.kouza_order_area .inner_area .application_request_btn .app_fukidashi::after {
  content: "";
  position: absolute;
  content: "";
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 12px;
  background: #fff;
  border: 3px solid #ecb500;
  rotate: -45deg;
  clip-path: polygon(0px 0px, 0px 100%, 100% 100%);
}

.kouza_order_area .inner_area .application_request_btn>a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-size: 1.3rem;
  font-weight: bold;
  color: #000;
  border-radius: 100vh;
  background: #fbc61a;
  text-decoration: none !important;
  border: 2px solid #fbc61a;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .application_request_btn>a {
    font-size: 0.85rem;
  }
}

.kouza_order_area .inner_area .application_request_btn>a::after {
  content: "\f061";
  position: absolute;
  top: 50%;
  right: 10%;
  transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  font-size: 1.3rem;
  color: #000;
}

@media screen and (max-width: 480px) {
  .kouza_order_area .inner_area .application_request_btn>a::after {
    right: 3%;
    font-size: 0.9rem;
  }
}

.kouza_order_area .inner_area .application_request_btn>a:hover {
  background: #dfae10;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

/*----------------------------------------
* 2025-04-14 サイドバー目次
------------------------------------------*/
.sidebar_index_area {
  position: sticky;
  top: 20px;
  margin: 20px auto 0 auto;
  padding: 0;
  width: 100%;
  background: #fafaff;
}

@media screen and (max-width: 480px) {
  .sidebar_index_area {
    display: none;
  }
}

.sidebar_index_area .index_title {
  margin: 0 auto;
  padding: 0.6em 1em;
  width: 100%;
  font-size: 0.9rem;
  color: #000;
  background: #e0e0e0;
  box-sizing: border-box;
}

.sidebar_index_area .sidebar_index {
  margin: 0 auto;
  padding: 1.4em 1em !important;
  border: none !important;
  box-sizing: border-box;
}

.sidebar_index_area .sidebar_index .ez-toc-heading-level-2 {
  margin-bottom: 5px !important;
}

.sidebar_index_area .sidebar_index .ez-toc-heading-level-2>a {
  font-size: 0.94rem;
}

.sidebar_index_area .sidebar_index a {
  color: #444;
  box-shadow: none;
  text-decoration: none;
  text-shadow: none;
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
}

.sidebar_index_area .sidebar_index a:visited {
  color: #9f9f9f;
}

.sidebar_index_area .sidebar_index a:hover {
  text-decoration: underline;
}

.sidebar_index_area .sidebar_index a.ez-toc-toggle {
  display: flex;
  align-items: center;
  color: #444;
  background: inherit;
  border: inherit;
}

.sidebar_index_area .sidebar_index label.cssicon {
  height: 30px;
}

.sidebar_index_area .sidebar_index input {
  position: absolute;
  left: -999em;
}

.sidebar_index_area .sidebar_index input[type=checkbox]:checked+nav {
  opacity: 0;
  max-height: 0;
  border: none;
  display: none;
}

.sidebar_index_area .sidebar_index .ez-toc-js-icon-con,
.sidebar_index_area .sidebar_index label {
  position: relative;
  cursor: pointer;
  display: initial;
}

.sidebar_index_area .sidebar_index .ez-toc-js-icon-con,
.sidebar_index_area .sidebar_index .ez-toc-toggle label {
  float: right;
  position: relative;
  font-size: 16px;
  padding: 0;
  border: 1px solid #999191;
  border-radius: 5px;
  cursor: pointer;
  left: 10px;
  width: 35px;
}

.sidebar_index_area .sidebar_index .ez-toc-title {
  text-align: left;
  line-height: 1.45;
  margin: 0;
  padding: 0;
  display: initial;
}

.sidebar_index_area .sidebar_index .eztoc-toggle-hide-by-default {
  display: none;
}

.sidebar_index_area .sidebar_index li {
  background: transparent;
  list-style: none;
  line-height: 1.6;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  border: none;
  padding: 0;
}

.sidebar_index_area .sidebar_index li.active {
  background-color: #ededed;
}

.sidebar_index_area .sidebar_index li.active>a {
  font-weight: 900;
}

.sidebar_index_area .sidebar_index ul {
  display: block;
  background: transparent;
  list-style: none;
  line-height: 1.6;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  padding: 0;
}

.sidebar_index_area .sidebar_index ul.ez-toc-list {
  padding: 10px;
}

.sidebar_index_area .sidebar_index ul.ez-toc-list li {
  height: auto !important;
}

.sidebar_index_area .sidebar_index ul.ez-toc-list li::before {
  content: " ";
  position: absolute;
  left: 0;
  right: 0;
  height: 30px;
  line-height: 30px;
  z-index: -1;
}

.sidebar_index_area .sidebar_index ul.ez-toc-list li a {
  padding-left: 10px;
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
}

.sidebar_index_area .sidebar_index ul ul {
  margin-left: 1.5em;
}

.sidebar_index_area .sidebar_index.ez-toc-black a,
.sidebar_index_area .sidebar_index.ez-toc-black a:visited,
.sidebar_index_area .sidebar_index.ez-toc-black p.ez-toc-title {
  color: #fff;
}

.sidebar_index_area .sidebar_index div.ez-toc-title-container+ul.ez-toc-list {
  margin-top: 1em;
}

.ez-toc-cssicon {
  float: right;
  position: relative;
  font-size: 16px;
  padding: 0;
  border: 1px solid #999191;
  border-radius: 5px;
  cursor: pointer;
  left: 10px;
  width: 35px;
}

.ez-toc-title-container {
  display: table;
  width: 100%;
}

.ez-toc-title,
.ez-toc-title-toggle {
  display: inline;
  text-align: left;
  vertical-align: middle;
}

.ez-toc-btn,
.ez-toc-glyphicon {
  display: inline-block;
  font-weight: 400;
}

.ez-toc-wrap-left {
  margin: 0 auto 1em 0 !important;
}

.ez-toc-wrap-left-text {
  float: left;
}

.ez-toc-wrap-right {
  margin: 0 0 1em auto !important;
}

.ez-toc-wrap-right-text {
  float: right;
}

.ez-toc-wrap-center {
  margin: 0 auto 1em !important;
}

div.ez-toc-widget-container {
  padding: 0;
  position: relative;
  background: transparent;
  list-style: none;
  line-height: 1.6;
  margin: 0;
  overflow: hidden;
  z-index: 1;
}

div.ez-toc-widget-container ul {
  display: block;
}

div.ez-toc-widget-container ul.ez-toc-list {
  padding: 10px;
}

div.ez-toc-widget-container ul.ez-toc-list li {
  height: auto !important;
}

div.ez-toc-widget-container ul.ez-toc-list li::before {
  content: " ";
  position: absolute;
  left: 0;
  right: 0;
  height: 30px;
  line-height: 30px;
  z-index: -1;
}

div.ez-toc-widget-container ul.ez-toc-list li.active {
  background-color: #ededed;
}

div.ez-toc-widget-container ul.ez-toc-list li.active>a {
  font-weight: 900;
}

div.ez-toc-widget-container ul.ez-toc-list li a {
  padding-left: 10px;
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
}

div.ez-toc-widget-container ul ul {
  margin-left: 1.5em;
}

div.ez-toc-widget-container li {
  border: none;
  padding: 0;
  background: transparent;
  list-style: none;
  line-height: 1.6;
  margin: 0;
  overflow: hidden;
  z-index: 1;
}

div.ez-toc-widget-container ul.ez-toc-list {
  padding: 10px;
}

div.ez-toc-widget-container #ez-toc-widget-container input[type=checkbox]:checked+nav {
  opacity: 0;
  max-height: 0;
  border: none;
  display: none;
}

div.ez-toc-widget-container #ez-toc-widget-container label.cssicon {
  height: 30px;
}

.ez-toc-btn {
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.428571429;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.ez-toc-btn:focus {
  outline: #333 dotted thin;
  outline: -webkit-focus-ring-color auto 5px;
  outline-offset: -2px;
  color: #333;
  text-decoration: none;
}

.ez-toc-btn:hover {
  color: #333;
  text-decoration: none;
}

.ez-toc-btn.active,
.ez-toc-btn:active {
  background-image: none;
  outline: 0;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.ez-toc-btn-default {
  color: #333;
  background-color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  text-shadow: 0 1px 0 #fff;
  background-image: linear-gradient(to bottom, #fff 0, #e0e0e0 100%);
  background-repeat: repeat-x;
  border-color: #ccc;
}

.ez-toc-btn-default.active,
.ez-toc-btn-default:active,
.ez-toc-btn-default:focus,
.ez-toc-btn-default:hover {
  color: #333;
  background-color: #ebebeb;
  border-color: #adadad;
}

.ez-toc-btn-default.active,
.ez-toc-btn-default:active {
  background-image: none;
  background-color: #e0e0e0;
  border-color: #dbdbdb;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.ez-toc-btn-default:focus,
.ez-toc-btn-default:hover {
  background-color: #e0e0e0;
  background-position: 0 -15px;
}

.ez-toc-btn-sm,
.ez-toc-btn-xs {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.ez-toc-btn-xs {
  padding: 1px 5px;
}

.btn.active,
.ez-toc-btn:active {
  background-image: none;
}

.ez-toc-pull-right {
  float: right !important;
  margin-left: 10px;
}

.ez-toc-glyphicon {
  position: relative;
  top: 1px;
  font-family: "Glyphicons Halflings";
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  line-height: 1;
  -moz-osx-font-smoothing: grayscale;
}

.ez-toc-glyphicon:empty {
  width: 1em;
}

.ez-toc-toggle i.ez-toc-glyphicon {
  font-size: 16px;
  margin-left: 2px;
}

.ez-toc-toggle #item {
  position: absolute;
  left: -999em;
}

label.cssicon .ez-toc-glyphicon:empty {
  font-size: 16px;
  margin-left: 2px;
}

.eztoc-hide,
label.cssiconcheckbox {
  display: none;
}

.ez-toc-icon-toggle-span {
  display: flex;
  align-items: center;
  width: 35px;
  height: 30px;
  justify-content: center;
  direction: ltr;
}

.eztoc_no_heading_found {
  background-color: #ff0;
  padding-left: 10px;
}

.term-description .ez-toc-title-container p:nth-child(2) {
  width: 50px;
  float: right;
  margin: 0;
}

.bottom_cta_area {
  margin: 0 auto;
  padding: 1.5em 0;
  width: 96%;
}

.bottom_cta_area .shindan_cta {
  margin: 0 auto;
  padding: 0;
  width: 90%;
  border: 1px solid #ddd;
  overflow: hidden;
}

.bottom_cta_area .shindan_cta>a>img {
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
  height: auto;
}

.bottom_cta_area .ranking_cta {
  margin: 16px auto 0 auto;
  padding: 0;
  width: 90%;
  overflow: hidden;
}

.bottom_cta_area .ranking_cta>a>img {
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
  height: auto;
}

.bottom_cta_area .other_ranking_title {
  margin: 16px auto 0 auto;
  padding: 0.4em 0;
  width: 90%;
  font-size: 1rem;
  font-weight: bold;
  color: #666;
  text-align: center;
  background: #f1f1f1;
}

.bottom_cta_area .other_ranking_cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 16px auto 0 auto;
  padding: 0;
  width: 90%;
  overflow: hidden;
}

.bottom_cta_area .other_ranking_cta .cta_list {
  margin: 0 0 8px 0;
  padding: 0;
  width: 49%;
}

/*---------------------------------------------
* コラムCTAバナー：2025-09-17追記
----------------------------------------------*/
.kouza_banner_wrapper {
  margin: 0 auto 24px auto;
  padding: 0;
  width: 100%;
}

.kouza_banner_wrapper .kouza_banner_body {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 1.5em 1.5em 1em 2.2em;
  width: 90%;
  border: 1px solid #000;
  background: #fff;
  box-sizing: border-box;
}

@media screen and (max-width: 480px) {
  .kouza_banner_wrapper .kouza_banner_body {
    padding: 1em;
    width: 100%;
  }
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area {
  margin: 0;
  padding: 0;
  width: 48%;
  background: #fff;
}

@media screen and (max-width: 480px) {
  .kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area {
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_head_txt {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  color: #3d85c6;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_main_title {
  margin: 8px 0 0 0;
  padding: 0;
  width: 100%;
  font-size: 1.2rem;
  font-weight: bold;
  color: #000;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_summary_txt {
  margin: 6px 0 0 0;
  padding: 0;
  width: 100%;
  font-size: 0.94rem;
  color: #002038;
  line-height: 1.4rem;
}

@media screen and (max-width: 480px) {
  .kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_summary_txt {
    margin: 6px auto 0 auto;
    width: 80%;
  }
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_link_btn {
  margin: 8px 0 0 0;
  padding: 0 1em;
  width: 100%;
  box-sizing: border-box;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_link_btn>a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 86%;
  height: 46px;
  font-size: 1.2rem;
  color: #fff;
  text-decoration: none;
  background: #0c5394;
  border: 1px solid #0c5394;
  border-radius: 30px;
  transition: all 0.3s;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_link_btn>a:hover {
  color: #0c5394;
  background: #fff;
}

@media screen and (max-width: 480px) {
  .kouza_banner_wrapper .kouza_banner_body .kouza_banner_text_area .banner_link_btn>a {
    margin: 0 auto;
  }
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_image_area {
  margin: 0;
  padding: 0;
  width: 48%;
}

@media screen and (max-width: 480px) {
  .kouza_banner_wrapper .kouza_banner_body .kouza_banner_image_area {
    margin-top: 24px;
    width: 100%;
  }
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_image_area .banner_image {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 170px;
  overflow: hidden;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_image_area .banner_image>a {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
}

.kouza_banner_wrapper .kouza_banner_body .kouza_banner_image_area .banner_image>a>img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/*---------------------------------------------
* コラムページ：ページトップバナー：2025-09-25追記
----------------------------------------------*/
.page_top_banner {
  display: none;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 60px;
  box-sizing: border-box;
}

.page_top_banner>a {
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
  /* background: purple; */
  background: #e2e2e2 url("../../assets/images/img_column_top_banner_bg.svg") center top no-repeat;
  transition: all 0.3s;
}

.page_top_banner>a:hover {
  filter: brightness(1.1);
}

.page_top_banner>a .banner_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  width: 1300px;
  height: 100%;
  /* background: darkblue; */
}

.page_top_banner>a .term_date {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  width: 18%;
  height: 100%;
  font-size: 2.5rem;
  font-weight: bold;
  color: #000;
}

.page_top_banner>a .term_date .week_txt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 16px 0 0 4px;
  padding: 0;
  width: 22px;
  height: 22px;
  font-size: 0.8rem;
  font-weight: bold;
  color: #000;
  text-align: center;
  border: 2px solid #000;
  border-radius: 11px;
  background: #AEE958;
  box-sizing: border-box;
}

.page_top_banner>a .term_date .end_txt {
  display: inline-block;
  margin: 0 0 0 6px;
  padding: 0;
  font-size: 2.2rem;
  font-weight: bold;
  color: #000;
  box-sizing: border-box;
}

.page_top_banner>a .kouza_title {
  display: flex;
  align-items: center;
  margin: 0.3em 0;
  padding: 0 0.5em;
  width: 32%;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  background: #000;
  box-sizing: border-box;
}

.page_top_banner>a .campaign_image {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 0.5em;
  width: 35%;
  height: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.page_top_banner>a .campaign_image>img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.page_top_banner>a .kouza_link_btn {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  width: 15%;
  box-sizing: border-box;
}

.page_top_banner>a .kouza_link_btn .link_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 47px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.06em;
  border: 3px solid #000;
  background: #AEE958;
}

.page_top_banner>a .kouza_link_btn .link_btn::after {
  content: "\f138";
  margin-left: 8px;
  font-family: "Font Awesome 5 Free";
  font-size: 1rem;
  font-weight: 600;
  color: #000;
}

.page_top_banner_sp {
  display: none;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100px;
  box-sizing: border-box;
}

.page_top_banner_sp>a {
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
  background: #e2e2e2 url("../../assets/images/img_column_top_banner_bg.svg") center no-repeat;
}

.page_top_banner_sp>a .banner_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.page_top_banner_sp>a .term_date {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 0.2em;
  width: 25%;
  height: 38%;
  font-size: 1.3rem;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.04em;
  box-sizing: border-box;
}

.page_top_banner_sp>a .term_date .week_txt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 16px 0 0 0;
  padding: 0;
  width: 12px;
  height: 12px;
  font-size: 0.6rem;
  font-weight: bold;
  color: #000;
  text-align: center;
  border: 1px solid #000;
  border-radius: 6px;
  background: #AEE958;
  box-sizing: border-box;
}

.page_top_banner_sp>a .term_date .end_txt {
  display: inline-block;
  margin: 0 0 0 3px;
  padding: 0;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.08em;
  box-sizing: border-box;
}

.page_top_banner_sp>a .kouza_title {
  display: flex;
  align-items: center;
  margin: 0 1% 0 0;
  padding: 0 0.5em;
  width: 74%;
  height: 38%;
  font-size: 1.1rem;
  font-weight: bold;
  color: #000;
  background: #AEE958;
  border: 2px solid #000;
  box-sizing: border-box;
}

.page_top_banner_sp>a .campaign_image {
  display: flex;
  align-items: center;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.page_top_banner_sp>a .campaign_image>img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

/*
* 人気コラムTOP5（コラムページ：サイドバー)
----------------------------------------------*/
.popular_column_listarea {
  position: sticky;
  top: 80px;
  margin: 24px auto 0 auto;
  padding: 0;
  width: 100%;
}

.popular_column_listarea .listarea_title {
  margin: 0 auto 15px auto;
  padding: 15px;
  width: 100%;
  box-sizing: border-box;
  font-size: 1.1rem;
  text-align: center;
  border: 3px dotted #2d4b8b;
}

.popular_column_listarea .listarea_title>i {
  margin-right: 10px;
}

.popular_column_listarea .side_article_list {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.popular_column_listarea .side_article_list>dt {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100px;
  overflow: hidden;
  display: flex;
  justify-items: center;
  align-items: center;
}

.popular_column_listarea .side_article_list>dt>a {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
}

.popular_column_listarea .side_article_list>dt>a>img {
  max-width: 100%;
  height: auto;
}

.popular_column_listarea .side_article_list>dt>a:hover>img {
  transform: scale(1.2);
  transition-duration: 0.5s;
}

.popular_column_listarea .side_article_list>dd {
  margin: 0 auto 8px auto;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}

.popular_column_listarea .side_article_list>dd>a {
  display: block;
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
  font-size: 0.9rem;
  color: #333;
  line-height: 1.4rem;
  background: #f5f5f5;
  text-decoration: none;
}

.popular_column_listarea .side_article_list>dd>a:hover {
  color: #fff;
  background: #87c2e9;
  transition: ease-in-out 0.3s;
}

/*
* 関連講座
*-------------------------------*/
.kouza_related_course {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  background: #f0f4fd;
}

.kouza_related_course .related_course_inner {
  margin: 0 auto;
  padding: 60px 0 40px 0;
  width: 1140px;
}

@media screen and (max-width: 480px) {
  .kouza_related_course .related_course_inner {
    padding: 24px 0;
    width: 94%;
  }
}

.kouza_related_course .related_course_inner .relate_title {
  display: flex;
  align-items: center;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.kouza_related_course .related_course_inner .relate_title .title_wrap {
  display: block;
  margin: 0 auto;
  padding: 8px 30px;
  width: auto;
  font-size: 1rem;
  font-weight: 500;
  color: #fff;
  background: #593f99;
  text-align: center;
  box-sizing: border-box;
}

.kouza_related_course .related_course_inner .relate_title::before,
.kouza_related_course .related_course_inner .relate_title::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: #ccc;
}

.kouza_related_course .related_course_inner .relate_title::before {
  margin-right: 1rem;
}

.kouza_related_course .related_course_inner .relate_title::after {
  margin-left: 1rem;
}

.kouza_related_course .related_course_inner .rel_course_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 32px auto 0 auto !important;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}

@media screen and (max-width: 480px) {
  .kouza_related_course .related_course_inner .rel_course_list {
    margin: 24px auto 0 auto !important;
  }
}

.kouza_related_course .related_course_inner .rel_course_list::before {
  content: "";
  display: block;
  width: 23%;
  order: 1;
}

.kouza_related_course .related_course_inner .rel_course_list::after {
  content: "";
  display: block;
  width: 23%;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items {
  margin: 0 0 15px 0;
  padding: 0;
  width: 32.6666666667%;
  box-sizing: border-box;
}

@media screen and (max-width: 480px) {
  .kouza_related_course .related_course_inner .rel_course_list .list_items {
    margin-bottom: 16px;
    width: 100%;
  }
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a:hover {
  opacity: 0.8;
  transition: all 0.3s ease-in-out;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a .relate_list {
  margin: 0;
  padding: 0;
  width: 100%;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a .relate_list .list_img {
  margin: 0;
  padding: 4px;
  width: 100%;
  background: #fff;
  border: 1px solid #ddd;
  overflow: hidden;
  box-sizing: border-box;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a .relate_list .list_img>img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.kouza_related_course .related_course_inner .rel_course_list .list_items>a .relate_list .list_title {
  margin: 3px auto 0 auto;
  padding: 0;
  width: 100%;
  font-size: 0.9rem;
  color: #333;
  text-align: center;
}

.kouza_related_course .related_course_inner .other_related_course_link {
  margin: 30px auto 0 auto;
  padding: 0;
  width: 100%;
}

@media screen and (max-width: 480px) {
  .kouza_related_course .related_course_inner .other_related_course_link {
    margin-top: 24px;
  }
}

.kouza_related_course .related_course_inner .other_related_course_link>a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  padding: 0;
  width: 50%;
  height: 40px;
  font-size: 1rem;
  color: #fff;
  background: #2e5f98;
  border-radius: 5px;
  text-decoration: none !important;
}

@media screen and (max-width: 480px) {
  .kouza_related_course .related_course_inner .other_related_course_link>a {
    width: 100%;
    font-size: 0.9rem;
  }
}

.kouza_related_course .related_course_inner .other_related_course_link>a:hover {
  background: #1d4777;
  transition: all 0.3s ease;
}

/*
* コラム関連記事（心理カウンセラー）
*-------------------------------*/
.column_specific_articles {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 30px auto 0 auto;
  padding: 0;
  width: 100%;
}

@media screen and (max-width: 480px) {
  .column_specific_articles {
    margin-top: 16px !important;
  }
}

.column_specific_articles .article_item {
  margin: 0 auto;
  padding: 0;
  width: calc(98% / 3);
}

@media screen and (max-width: 480px) {
  .column_specific_articles .article_item {
    margin-bottom: 8px;
    width: 100%;
  }
}

.column_specific_articles .article_item a {
  /* display: flex;
  align-items: center;
  justify-content: center; */
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.column_specific_articles .article_item a:hover {
  opacity: 0.8;
  transition: all 0.3s ease-in-out;
}

.column_specific_articles .article_item a .column_image {
  margin: 0;
  padding: 0;
  width: 100%;
}

.column_specific_articles .article_item a .column_image img {
  object-fit: cover;
  width: 100%;
  height: auto;
}

.column_specific_articles .article_item a .column_title {
  margin: 0 auto;
  padding: 0.8em 1em;
  width: 100%;
  font-size: 1rem;
  color: #333;
  line-height: 1.6rem;
  background: #fafafa;
  box-sizing: border-box;
}

/*# sourceMappingURL=column.css.map */