@charset "UTF-8";
/* 共通 ========== */
/* リセット ===== */
* {
  box-sizing: border-box;
}

*:before, *:after {
  box-sizing: border-box;
}

html {
  width: 100%;
  height: 100%;
  line-height: 1;
  background: #fff;
  color: #000;
  font-size: 62.5%;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1.6rem;
  line-height: 1.6;
  overflow-y: scroll;
  background: #fff;
  color: #000;
  -webkit-text-size-adjust: 100%;
  background-repeat: no-repeat;
  background-position: top center;
  -webkit-background-size: cover;
  background-size: cover;
  background-attachment: fixed;
}

article,
aside,
details,
figcaption,
include,
footer,
header,
hgroup,
main,
nav,
section,
summary,
figure {
  display: block;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
dl,
dt,
dd,
p,
blockquote,
ul,
ol,
li {
  margin: 16px 0;
  padding: 0;
  vertical-align: baseline;
  -webkit-overflow-wrap: break-word;
  -ms-overflow-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-word-wrap: break-word;
  -ms-word-wrap: break-word;
  word-wrap: break-word;
  font-size: 1.6rem;
}

figcaption,
span {
  -webkit-overflow-wrap: break-word;
  -ms-overflow-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-word-wrap: break-word;
  -ms-word-wrap: break-word;
  word-wrap: break-word;
}

p {
  font-size: 1.6rem;
  margin: 8px 0;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  cursor: pointer;
  color: inherit;
  text-decoration: none;
}

a:focus, a:hover {
  color: inherit;
  text-decoration: underline;
}

.loaded a {
  transition: 0.3s color, 0.3s background-color, 0.3s border-color, 0.3s opacity;
}

abbr[title] {
  border-bottom: 1px dotted;
}

i,
em,
address {
  font-style: normal;
}

b,
strong,
em {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ffff00;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul,
ol {
  margin: 16px 0;
  padding: 0 0 0 24px;
}

li {
  margin: 16px 0;
}

img {
  border-style: none;
  vertical-align: bottom;
  max-width: 100%;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ebebeb;
  margin: 8px 0;
  padding: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1.4rem;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* フォント ===== */
@font-face {
  font-family: YuGothicMedium;
  src: local("Yu Gothic Medium");
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}

body {
  font-family: "游ゴシック Medium", "Yu Gothic", YuGothic, YuGothicMedium, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

@media all and (-ms-high-contrast: none) {
  body {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

@media all and (-ms-high-contrast: active) {
  body {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

@font-face {
  font-family: "nikkeiBP_iconfont";
  src: url("/css/2021/fonts/nikkeiBP_iconfont.eot?oqxrys");
  src: url("/css/2021/fonts/nikkeiBP_iconfont.eot?oqxrys#iefix") format("embedded-opentype"), url("/css/2021/fonts/nikkeiBP_iconfont.ttf?oqxrys") format("truetype"), url("/css/2021/fonts/nikkeiBP_iconfont.woff?oqxrys") format("woff"), url("/css/2021/fonts/nikkeiBP_iconfont.svg?oqxrys#nikkeiBP_iconfont") format("svg");
  font-weight: 400;
  font-style: normal;
}

[class^='icon-'],
[class*=' icon-'] {
  font-family: "nikkeiBP_iconfont" !important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-twitter::before {
  content: "\e900";
}

.icon-new-arrival-2::before {
  content: "\e901";
}

.icon-special-2::before {
  content: "\e902";
}

.icon-digital-magazine::before {
  content: "\e903";
}

.icon-glossary::before {
  content: "\e904";
}

.icon-location::before {
  content: "\e905";
}

.icon-vertical-ellipsis::before {
  content: "\e906";
}

.icon-expand::before {
  content: "\e907";
}

.icon-useful::before {
  content: "\e908";
}

.icon-useless::before {
  content: "\e909";
}

.icon-instagram::before {
  content: "\e90a";
}

.icon-facebook::before {
  content: "\e90b";
}

.icon-unlock::before {
  content: "\e90c";
}

.icon-lock::before {
  content: "\e90d";
}

.icon-tag-sharp::before {
  content: "\e90e";
}

.icon-book::before {
  content: "\e90f";
}

.icon-author::before {
  content: "\e910";
}

.icon-tag::before {
  content: "\e911";
}

.icon-q-a::before {
  content: "\e912";
}

.icon-guide::before {
  content: "\e913";
}

.icon-setting::before {
  content: "\e914";
}

.icon-podcast::before {
  content: "\e915";
}

.icon-event::before {
  content: "\e916";
}

.icon-forum::before {
  content: "\e917";
}

.icon-seminar::before {
  content: "\e918";
}

.icon-calendar::before {
  content: "\e919";
}

.icon-data-base-2::before {
  content: "\e91a";
}

.icon-data-base::before {
  content: "\e91b";
}

.icon-ranking::before {
  content: "\e91c";
}

.icon-tag-list-search::before {
  content: "\e91d";
}

.icon-special::before {
  content: "\e91e";
}

.icon-new-arrival::before {
  content: "\e91f";
}

.icon-site-top::before {
  content: "\e920";
}

.icon-menu::before {
  content: "\e921";
}

.icon-and::before {
  content: "\e922";
}

.icon-add::before {
  content: "\e923";
}

.icon-print::before {
  content: "\e924";
}

.icon-mail::before {
  content: "\e925";
}

.icon-hourglass::before {
  content: "\e926";
}

.icon-reset::before {
  content: "\e927";
}

.icon-folder::before {
  content: "\e928";
}

.icon-attention::before {
  content: "\e929";
}

.icon-trash-can::before {
  content: "\e92a";
}

.icon-report::before {
  content: "\e92b";
}

.icon-DB9::before {
  content: "\e92c";
}

.icon-DB8::before {
  content: "\e92d";
}

.icon-DB7::before {
  content: "\e92e";
}

.icon-DB6::before {
  content: "\e92f";
}

.icon-DB5::before {
  content: "\e930";
}

.icon-DB4::before {
  content: "\e931";
}

.icon-DB3::before {
  content: "\e932";
}

.icon-DB2::before {
  content: "\e933";
}

.icon-DB1::before {
  content: "\e934";
}

.icon-delete::before {
  content: "\e935";
}

.icon-unfollow::before {
  content: "\e936";
}

.icon-follow::before {
  content: "\e937";
}

.icon-book-unfollow::before {
  content: "\e938";
}

.icon-book-follow::before {
  content: "\e939";
}

.icon-user-unfollow::before {
  content: "\e93a";
}

.icon-user-follow::before {
  content: "\e93b";
}

.icon-time::before {
  content: "\e93c";
}

.icon-date::before {
  content: "\e93d";
}

.icon-function::before {
  content: "\e93e";
}

.icon-link-copy::before {
  content: "\e93f";
}

.icon-download::before {
  content: "\e940";
}

.icon-pen::before {
  content: "\e941";
}

.icon-like::before {
  content: "\e942";
}

.icon-left-arrow::before {
  content: "\e943";
}

.icon-down-arrow::before {
  content: "\e944";
}

.icon-right-arrow::before {
  content: "\e945";
}

.icon-user::before {
  content: "\e946";
}

.icon-outbound::before {
  content: "\e947";
}

.icon-comment::before {
  content: "\e948";
}

.icon-search::before {
  content: "\e949";
}

.icon-clip::before {
  content: "\e94a";
}

.icon-bell::before {
  content: "\e94b";
}

.icon-login::before {
  content: "\e94c";
}

.icon-hatena-bookmark::before {
  content: "\e94d";
}

.icon-line::before {
  content: "\e94e";
}

.icon-sns-share::before {
  content: "\e94f";
}

.icon-special-template::before {
  content: "\e950";
}

.icon-article-series::before {
  content: "\e951";
}

.icon-forum-comment::before {
  content: "\e952";
}

.icon-function-2::before {
  content: "\e953";
}

.icon-gift::before {
  content: "\e954";
}

.icon-like-2::before {
  content: "\e955";
}

.icon-watcher::before {
  content: "\e956";
}

.icon-x-logo::before {
  content: "\e957";
}

.icon-document::before {
  content: "\e958";
}

.icon-information::before {
  content: "\e959";
}

.icon-uni-e95a::before {
  content: "\e95a";
}

.icon-uni-e95b::before {
  content: "\e95b";
}

.icon-check-circle::before {
  content: "\e95c";
}

.icon-man::before {
  content: "\e95d";
}

.icon-modal::before {
  content: "\e95e";
}

.icon-pickup-comment::before {
  content: "\e95f";
}

/* 鍵なし */
body.notlogin i.icon-lock.FREE,
body.notlogin i.icon-lock.nxr,
body.nxr i.icon-lock.FREE,
body.nxr i.icon-lock.nxr,
body.nxr_charge i.icon-lock.FREE,
body.nxr_charge i.icon-lock.nxr,
body.nxr_charge i.icon-lock.nxr_charge,
body.nxr_charge i.icon-lock.nxr_charge-v,
body.nxr_charge i.icon-lock.nxr_charge_only-v,
body.nxr_charge_seminar i.icon-lock.FREE,
body.nxr_charge_seminar i.icon-lock.nxr,
body.nxr_charge_seminar i.icon-lock.nxr_charge,
body.nxr_charge_seminar i.icon-lock.nxr_charge-v,
body.nxr_charge_seminar i.icon-lock.nxr_charge_only-v,
body.nxr_charge_seminar i.icon-lock.nxr_charge_seminar {
  display: none;
}

/* 鍵開け */
body.nxr i.icon-lock.nxr_charge-v:before {
  content: "\e90c";
}

/* 画像アイコン */
.img-icon-video {
  display: inline-block;
  width: 14px;
  height: 10px;
  background-image: url("/images/2021/common/icon_video.svg");
  background-repeat: no-repeat;
  background-size: 14px 10px;
  background-position: center center;
}

.img-icon-play {
  display: inline-block;
  width: 22px;
  height: 14px;
  background-image: url("/images/2021/common/icon_play.svg");
  background-repeat: no-repeat;
  background-size: 22px 14px;
  background-position: center center;
}

/* 共通 ========== */
.hide:not(:root) {
  display: none;
}

/* レイアウト ========== */
.l-wrapper {
  width: 100%;
  min-width: 1140px;
}

.l-content {
  position: relative;
  width: 1120px;
  margin: 0 auto;
}

.l-section {
  margin: 24px 0 0;
}

.l-section + .l-section {
  margin-top: 48px;
}

.l-section + .l-parallel {
  margin-top: 24px;
}

.l-section.is-short {
  margin-top: 24px;
}

.l-section.is-mini {
  margin-top: 12px;
}

.l-parallel {
  display: flex;
  position: relative;
}

.l-col-main {
  width: calc(100% - 300px);
  padding-right: 48px;
}

.l-col-side {
  width: 300px;
  margin: 0;
}

.l-col-section-main {
  margin: 24px 0 0;
}

.l-col-section-main + .l-col-section-main {
  margin-top: 48px;
}

.l-col-section-main.is-short {
  margin-top: 24px;
}

.l-col-section-main.is-col1 {
  width: 722px;
  margin-left: auto;
  margin-right: auto;
}

.l-col-section-side {
  margin: 24px 0 0;
}

.l-article {
  width: 650px;
  margin: 20px auto 0;
}

/* もっと見る ========== */
.show-more-item:not(.is-active) {
  display: none;
}

.show-more-btn-box:not(.is-active),
.show-more-link-box:not(.is-active) {
  display: none;
}

/* 絞り込み ========== */
.switch-category-item.is-exclusion {
  display: none;
}

.switch-category-cnt.is-hide {
  display: none;
}

/* アコーディオン ========== */
.acd-cnt-box:not(.is-active) {
  display: none;
}

/* 完全に閉じないパターン */
.few-acd-cnt {
  overflow: hidden;
  transition: 0.3s height;
}

.few-acd-cnt.is-active {
  height: auto;
}

/* スクロールバー ========== */
.custom-scrollbar::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 3px;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background-color: #666;
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
}

/* 汎用 ========== */
.hide-elm {
  display: none;
}

.opacity-zero {
  opacity: 0;
}

/* 入力項目 ========== */
/* リセット ===== */
form {
  margin: 0;
  padding: 0;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  box-sizing: border-box;
  font-size: 1.4rem;
  font-family: inherit;
  line-height: normal;
  color: #000;
}

button {
  cursor: pointer;
  outline: 0;
}

fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

legend {
  border: 0;
  padding: 0;
}

optgroup {
  font-weight: 700;
}

input[type='text'], input[type='tel'], input[type='email'], input[type='date'], input[type='month'], input[type='search'], input[type='password'], input[type='button'], input[type='submit'], input[type='reset'], input[type='number'] {
  -webkit-appearance: none;
  font-size: 1.4rem;
  padding: 4px 8px;
  width: 100%;
  border: none;
  background-color: #f6f6f6;
  height: 40px;
  line-height: 1.6;
  transition: 0.3s border-color, 0.3s background-color;
  border-radius: 2px;
  outline: 0;
}

input:focus {
  outline: 0;
}

input:disabled {
  cursor: not-allowed;
}

input [readonly] {
  pointer-events: none;
}

input [readonly]:hover {
  pointer-events: none;
}

input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input[type='reset'], input[type='submit'] {
  -webkit-appearance: button;
  cursor: pointer;
}

input[type='number'] {
  -moz-appearance: textfield;
}

input[type='number']::-webkit-inner-spin-button, input[type='number']::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

input[type='search']::-webkit-search-cancel-button, input[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

::placeholder {
  color: #666;
}

::-webkit-input-placeholder {
  color: #666;
}

:-ms-input-placeholder {
  color: #666;
}

::-moz-placeholder {
  color: #666;
}

input::placeholder,
textarea::placeholder {
  color: #666;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #666;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #666;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #666;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #666;
}

input:focus::placeholder,
textarea:focus::placeholder {
  color: transparent;
}

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

input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: transparent;
}

input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: transparent;
}

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

select {
  padding: 0 34px 0 8px;
  height: 38px;
  min-height: 38px;
  background-repeat: no-repeat;
  background-position: 100% center;
  background-color: #f6f6f6;
  border-radius: 0;
  border: none;
  position: relative;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  transition: 0.3s border-color, 0.3s background-color;
  background-image: url("/images/2021/common/icon_down_arrow.svg");
  background-repeat: no-repeat;
  background-size: 14px 8px;
  background-position: right 12px center;
  outline: 0;
  color: #d32f2f;
  font-weight: 700;
}

select::-ms-expand {
  display: none;
}

select:disabled {
  cursor: not-allowed;
}

select:disabled:hover {
  cursor: not-allowed;
}

option {
  color: #000;
  font-weight: 700;
}

input[type='radio'].form-rdo,
input[type='checkbox'].form-chk {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  margin: 0;
}

.form-tag {
  display: block;
  font-size: 1.4rem;
  background-color: #f6f6f6;
  border: 1px solid rgba(0, 0, 0, 0.1);
  padding: 2px 6px;
  transition: 0.3s background-color, 0.3s color, 0.3s border-color;
  border-radius: 2px;
}

.form-tag .icon-tag-sharp {
  font-size: 1.2rem;
}

.form-tag:hover {
  background-color: #d32f2f;
  color: #fff;
  border-color: #d32f2f;
}

input[type='checkbox'].form-chk:checked ~ .form-tag {
  background-color: #fff;
  color: #d32f2f;
  border-color: #d32f2f;
}

input[type='checkbox'].form-chk:checked ~ .form-tag:hover {
  background-color: #d32f2f;
  color: #fff;
  border-color: #d32f2f;
}

.form-rdo-tx {
  display: block;
  padding: 8px 6px 8px 28px;
  box-sizing: border-box;
  position: relative;
  font-size: 1.4rem;
  transition: border-color 0.3s, background-color 0.3s, color 0.3s;
}

.form-rdo-faker {
  display: block;
  width: 16px;
  height: 16px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  box-sizing: border-box;
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translate(0, -50%);
  transition: all 0.3s;
}

.form-rdo-faker:after {
  content: '';
  width: 10px;
  height: 10px;
  background-color: transparent;
  border-radius: 10px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: background-color 0.3s;
  transform: translate(-50%, -50%);
}

.form-rdo:hover ~ .form-rdo-tx .form-rdo-faker, .form-rdo:checked:hover ~ .form-rdo-tx .form-rdo-faker {
  border-color: #d32f2f;
}

.form-rdo:checked ~ .form-rdo-tx .form-rdo-faker {
  border-color: rgba(0, 0, 0, 0.1);
  background-color: #fff;
}

.form-rdo:checked ~ .form-rdo-tx .form-rdo-faker:after {
  background-color: #d32f2f;
}

.form-lb {
  cursor: pointer;
  display: block;
  position: relative;
}

.form-lb.is-year {
  margin-right: 16px;
}

.form-lb.is-reordering ~ .form-lb.is-reordering {
  margin-left: 16px;
}

.form-lb.is-period {
  display: flex;
  align-items: center;
  width: 84px;
}

.form-lb.is-period.is-year, .form-lb.is-period.is-month {
  margin-right: 8px;
}

.form-items {
  margin: -2px 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.form-item {
  margin: 2px 4px 2px 0;
}

.form-period-box {
  display: flex;
  align-items: center;
}

.form-period-items {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.form-period-item {
  display: flex;
  align-items: center;
}

.form-period-item.is-sep {
  margin-left: 16px;
  font-size: 1.4rem;
}

.form-period-item.is-end {
  margin-left: 16px;
}

.form-period-tx {
  font-size: 1.4rem;
  margin-left: 6px;
}

.form-period-note {
  display: block;
  margin-left: 16px;
  font-size: 1.1rem;
  color: #666;
}

/* プラグイン ========== */
/* スライダー ===== */
/**
 * Swiper 5.4.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 16, 2020
 */
@font-face {
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-family: 'swiper-icons';
  font-style: normal;
  font-weight: 400;
}

:root {
  --swiper-theme-color: $color-slider-theme--default;
}

.swiper-container {
  /* Fix of Webkit flickering */
  z-index: 1;
  position: relative;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
  overflow: hidden;
  list-style: none;
}

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  box-sizing: content-box;
  display: flex;
  z-index: 1;
  position: relative;
  width: 100%;
  height: 100%;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  flex-direction: column;
  flex-wrap: wrap;
}

.swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.swiper-slide {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  overflow: auto;
  /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  display: flex;
  z-index: 10;
  position: absolute;
  top: 50%;
  align-items: center;
  justify-content: center;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
  outline: none;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  cursor: pointer;
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  cursor: auto;
  opacity: 0.35;
  pointer-events: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  font-variant: initial;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none !important;
  text-transform: none;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  right: auto;
  left: 10px;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: $color-bg--white;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: $color-bg--black;
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination {
  z-index: 10;
  position: absolute;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  text-align: center;
  transition: 300ms opacity;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  position: relative;
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  opacity: 1;
}

.swiper-container-vertical > .swiper-pagination-bullets {
  top: 50%;
  right: 10px;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical
> .swiper-pagination-bullets
.swiper-pagination-bullet {
  display: block;
  margin: 6px 0;
}

.swiper-container-vertical
> .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  width: 8px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.swiper-container-vertical
> .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
.swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform;
}

.swiper-container-horizontal
> .swiper-pagination-bullets
.swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal
> .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-container-horizontal
> .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
.swiper-pagination-bullet {
  transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl
> .swiper-pagination-bullets-dynamic
.swiper-pagination-bullet {
  transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform;
}

/* Progress */
.swiper-pagination-progressbar {
  position: absolute;
  background: rgba(0, 0, 0, 0.25);
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-rtl
.swiper-pagination-progressbar
.swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical
> .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal
> .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
}

.swiper-pagination-white {
  --swiper-pagination-color: $color-bg--white;
}

.swiper-pagination-black {
  --swiper-pagination-color: $color-bg--black;
}

.swiper-pagination-lock {
  display: none;
}

/* Scrollbar */
.swiper-scrollbar {
  -ms-touch-action: none;
  position: relative;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  z-index: 50;
  position: absolute;
  bottom: 3px;
  left: 1%;
  width: 98%;
  height: 5px;
}

.swiper-container-vertical > .swiper-scrollbar {
  z-index: 50;
  position: absolute;
  top: 1%;
  right: 3px;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.5);
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

.swiper-lazy-preloader {
  box-sizing: border-box;
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 42px;
  height: 42px;
  margin-top: -21px;
  margin-left: -21px;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: $color-bg--white;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: $color-bg--black;
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* a11y */
.swiper-container .swiper-notification {
  z-index: -1000;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}

.swiper-container-cube .swiper-slide {
  -webkit-backface-visibility: hidden;
  visibility: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  backface-visibility: hidden;
  pointer-events: none;
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  visibility: visible;
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  -webkit-backface-visibility: hidden;
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
  -webkit-filter: blur(50px);
  z-index: 0;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  filter: blur(50px);
  opacity: 0.6;
}

.swiper-container-flip {
  overflow: visible;
}

.swiper-container-flip .swiper-slide {
  -webkit-backface-visibility: hidden;
  z-index: 1;
  backface-visibility: hidden;
  pointer-events: none;
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  -webkit-backface-visibility: hidden;
  z-index: 0;
  backface-visibility: hidden;
}

/* スクロールバー */
[data-simplebar] {
  position: relative;
  z-index: 0;
  overflow: hidden !important;
  max-height: inherit;
}

[data-simplebar] .simplebar-scroll-content {
  overflow: hidden;
}

[data-simplebar] .simplebar-content {
  overflow: hidden;
}

[data-simplebar='init'] {
  display: flex;
}

[data-simplebar='init'] .simplebar-scroll-content {
  overflow: scroll;
}

[data-simplebar='init'] .simplebar-content {
  overflow: scroll;
}

.simplebar-scroll-content {
  overflow-x: hidden !important;
  min-width: 100% !important;
  max-height: inherit !important;
  box-sizing: content-box !important;
}

.simplebar-content {
  overflow-y: hidden !important;
  box-sizing: border-box !important;
  min-height: 100% !important;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 3px;
  pointer-events: none;
}

.simplebar-track.vertical {
  top: 0;
}

.simplebar-track.vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
}

.simplebar-track.horizontal {
  left: 0;
  width: auto;
  height: 11px;
}

.simplebar-track.horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px;
}

.simplebar-scrollbar {
  position: absolute;
  right: 2px;
  width: 3px;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: '';
  background: #7a7a7a;
  border-radius: 3px;
  left: 0;
  right: 0;
}

.horizontal.simplebar-track .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

[data-simplebar-direction='rtl'] .simplebar-track {
  right: auto;
  left: 0;
}

[data-simplebar-direction='rtl'] .simplebar-track.horizontal {
  right: 0;
}

/* グローバルナビ ========== */
.globalNavi {
  position: relative;
  clear: both;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  background-color: #fff;
  height: 32px;
}

.globalNavi .globalNaviContainer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 1120px;
  height: 100%;
  margin: 0 auto;
}

.globalNavi .globalNaviLeft {
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.globalNavi .globalNaviLeft > li {
  padding: 0;
  float: left;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  margin: 0;
}

.globalNavi .globalNaviLeft > li + li {
  margin-left: 24px;
}

.globalNavi .globalNaviLeft > li a {
  text-decoration: none;
}

.globalNavi .globalNaviLeft > li a:hover {
  color: #d32f2f;
}

.globalNavi .globalNaviRight {
  display: flex;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

.globalNavi .globalNaviRight li {
  font-size: 1.2rem;
  font-weight: 500;
  margin: 0;
}

.globalNavi .globalNaviRight .btn {
  padding: 0;
  margin-left: 12px;
}

.globalNavi .globalNaviRight .btn + .btn {
  margin-left: 4px;
}

.globalNavi .globalNaviRight .status {
  margin-left: 12px;
}

.globalNavi .globalNaviRight .name {
  margin-left: 8px;
}

.globalNavi .globalNaviRight .config {
  margin-left: 10px;
}

.globalNavi .globalNaviRight .config a {
  color: #d32f2f;
  text-decoration: none;
}

.globalNavi .globalNaviRight .config a:hover {
  text-decoration: underline;
}

.bpSiteNavi {
  position: relative;
}

.bpSiteNavi label {
  cursor: pointer;
  transition: 0.3s color;
}

.bpSiteNavi label:hover {
  color: #d32f2f;
}

.bpSiteNavi label .icon-down-arrow {
  margin-left: 6px;
  color: #000;
}

.bpSiteNavi label.mask {
  display: none;
}

.bpSiteNavi label.mask div {
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}

.bpSiteNavi .bpSiteList {
  box-sizing: content-box;
  display: none;
  z-index: 9999;
  position: absolute;
  top: 23px;
  left: 0;
  width: 200px;
  padding: 8px 16px;
  border: 1px solid #ccc;
  background: #fff;
  font-size: 1.2rem;
  line-height: 1;
  margin: 0;
  list-style: none;
}

.bpSiteNavi .bpSiteList li {
  margin: 0;
  padding: 6px 0;
  font-size: 1.2rem;
  line-height: 1;
}

.bpSiteNavi .bpSiteList li.close {
  box-sizing: content-box;
  display: block;
  position: absolute;
  top: 4px;
  right: 4px;
  width: 12px;
  height: 12px;
  margin: 0;
  padding: 0;
  border: solid 1px #888;
  border-radius: 2px;
}

.bpSiteNavi .bpSiteList li.close:before, .bpSiteNavi .bpSiteList li.close:after {
  display: block;
  position: absolute;
  top: -9px;
  width: 17px;
  height: 17px;
  border-bottom: solid 1px #888;
  content: '';
}

.bpSiteNavi .bpSiteList li.close:before {
  left: 3px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.bpSiteNavi .bpSiteList li.close:after {
  left: -8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.bpSiteNavi .bpSiteList li.close label {
  display: block;
  z-index: 9999;
  position: absolute;
  width: 100%;
  height: 100%;
}

#globalNaviStatus {
  display: none;
}

#globalNaviStatus:checked ~ label.mask {
  display: block !important;
}

#globalNaviStatus:checked ~ label.mask ~ ul.bpSiteList {
  display: block !important;
}

.btnFunc:not(:root) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 110px;
  height: 26px;
  padding: 0;
  border: 1px solid #ddd;
  border-radius: 1px;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}

.btnFunc:not(:root).-login {
  border-color: #e6001e;
  background: linear-gradient(103deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0)), linear-gradient(to bottom, #e6001e, #e6001e);
  color: #fff;
}

.btnFunc:not(:root).-apply {
  border-color: #1b9b82;
  background: linear-gradient(103deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0)), linear-gradient(to bottom, #1b9b82, #1b9b82);
  color: #fff;
}

.btnFunc:not(:root):hover {
  opacity: 0.5;
}

/* ローカルナビ ===== */
.local-navi-wrap {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.local-navi-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.local-navi-col {
  display: flex;
  position: relative;
}

.local-navi-col.is-left {
  justify-content: flex-start;
  /*
  width: 50%;
  padding-right: 8px;
  */
  width: 44%;
}

.local-navi-col.is-left:after {
  content: '';
  display: block;
  width: 1px;
  height: 25px;
  background-color: rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -14.5px;
}

.local-navi-col.is-right {
  justify-content: flex-end;
  /*
  width: 40%;
  padding-left: 8px;
  */
}

.local-navi-link-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.local-navi-link-items .local-navi-link-item:last-of-type {
/*
  margin-right: 0;
*/
  margin-right: 8px;
}

.local-navi-link-item {
  margin: 4px 32px 4px 0;
}

.local-navi-link:not(:root) {
  display: block;
  text-decoration: none;
  font-size: 1.4rem;
}

.local-navi-link:not(:root):hover {
  color: #d32f2f;
}

.local-navi-site-items {
  margin: 0;
  /*
  padding: 0;
  */
  padding: 0 0 0 8px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.local-navi-site-items .local-navi-site-item:last-of-type {
  margin-right: 0;
}

.local-navi-site-item {
  margin: 12px 30px 12px 0;
}

.local-navi-site-link:not(:root) {
  display: block;
  text-decoration: none;
}

.local-navi-site-img-box {
  height: 24px;
}

.local-navi-site-img {
  width: auto;
  height: 24px;
}

.local-navi-site-img.NXR {
  width: auto;
  height: 11px !important;
  vertical-align: middle;
}

.btn {
  display: inline-block;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid transparent;
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  border-radius: 0.125rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.hd-global-menu-box .global-menu-inner {
  width: 496px;
  height: 100%;
  overflow-y: auto;
  padding-bottom: 60px;
}

.hd-global-menu-box .btn-close-box {
  width: 100%;
  height: 40px;
  position: relative;
  padding: 0 16px;
  background-color: #fff;
}

.hd-global-menu-box .btn-close-box .btn-close {
  width: 100%;
  height: 100%;
  position: relative;
  cursor: pointer;
}

.btn-close-border1 {
  width: 26px;
  height: 2px;
  display: inline-block;
  background: #666666;
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 28px;
  left: 0;
}

.btn-close-border2 {
  width: 26px;
  height: 2px;
  display: inline-block;
  background: #666666;
  position: absolute;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 28px;
  left: 0;
}

.hd-global-menu-box .burgerMenuHead {
  width: 456px;
  margin: 0;
  padding: 24px 0 0;
  background-color: #fff;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft a {
  display: inline-flex;
  width: auto;
  padding: 0 16px;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft a:hover {
  text-decoration: none;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft a:hover .burgerMenuHeadeftLeftContent .textAuthorName {
  color: #d32f2f;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadLeftImg {
  margin-right: 10px;
  width: 48px;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadLeftImg img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadeftLeftContent {
  max-width: 366px;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadeftLeftContent .textAuthorTitle {
  margin: 0;
  color: #666;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.2px;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadeftLeftContent .textAuthorName {
  margin: 0;
  color: #242424;
  font-size: 14px;
  line-height: 1.75;
  letter-spacing: 0.2px;
  font-weight: bold;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadeftLeftContent .textAuthorName > span {
  font-size: 12px;
  font-weight: normal;
  margin-left: 5px;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadLeft .burgerMenuHeadeftLeftContent .displayName {
  margin: 0;
  color: #242424;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.2px;
}

.hd-global-menu-box .burgerMenuHead > .btnFunc {
  display: block;
  font-size: 14px;
  width: 345px;
  height: 47px;
  line-height: 1.25;
  padding: 14px 1rem;
  margin: 16px auto 0;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadRight .global-menu-block .global-menu-func li i.icon.icon-modal {
  margin: 0 0 0 12px;
  vertical-align: inherit;
}

.hd-global-menu-box .burgerMenuHead .burgerMenuHeadRight .global-menu-block .global-menu-func li i.icon.icon-modal::before {
  font-size: 12px;
}

.hd-global-menu-box .header-global-menu-message {
  margin: 0;
  padding: 16px 55px 0 16px;
  background-color: #fff;
  font-size: 1.4rem;
}

.hd-global-menu-box .burgerMenuHead03 {
  width: 100%;
  margin: 0;
  padding: 16px 55px 16px 30px;
  background-color: #fff;
  border-bottom: 1px solid #eee;
}

.hd-global-menu-box .burgerMenuHead03 .standard-btn:not(:root) {
  display: inline-block;
  margin: 0 15px;
  padding: 14px 1rem;
  min-width: 158px;
  line-height: 1.25;
  font-size: 14px;
}

.article {
  position: relative;
}

.hd-global-menu-box .global-menu-block {
  margin: 16px 0 0 0;
  width: 456px;
}

.hd-global-menu-box .global-menu-block .global-menu-func {
  list-style: none;
  margin: 16px 0 0 0;
  padding: 0;
  border-top: 1px solid #eee;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  position: relative;
}

.hd-global-menu-box .global-menu-block .global-menu-func > li {
  margin: 0;
  width: 50%;
}

.hd-global-menu-box .global-menu-block .global-menu-func > li:nth-child(odd):not(.row1) a {
  padding-right: 0;
  margin-right: 8px;
}

.hd-global-menu-box .global-menu-block .global-menu-func > li.row1 {
  width: 100%;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent,
.hd-global-menu-box .global-menu-block .global-menu-func a {
  display: block;
  padding: 0 16px;
  line-height: 44px;
  box-sizing: border-box;
  font-size: 14px;
  font-weight: bold;
  border-bottom: 1px solid #eee;
  cursor: pointer;
  position: relative;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent:hover,
.hd-global-menu-box .global-menu-block .global-menu-func a:hover {
  color: #d32f2f;
  text-decoration: none;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent .menu-list-btn {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  height: 18px;
  width: 18px;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent .menu-list-btn::before {
  content: "";
  width: 18px;
  height: 2px;
  display: inline-block;
  background: #666666;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent .menu-list-btn::after {
  content: "";
  width: 2px;
  height: 18px;
  display: inline-block;
  background: #666666;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent.is-active .menu-list-btn::after {
  opacity: 0;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent ~ .menu-list-child {
  display: none;
}

.hd-global-menu-box .global-menu-block .global-menu-func span.menu-list-parent ~ .menu-list-child.is-active {
  display: block;
}

.hd-global-menu-box .global-menu-block .global-menu-theme li i.icon,
.hd-global-menu-box .global-menu-block .global-menu-func li i.icon {
  margin-right: 12px;
  vertical-align: middle;
}

.hd-global-menu-box .global-menu-block .global-menu-theme li i.icon::before,
.hd-global-menu-box .global-menu-block .global-menu-func li i.icon::before {
  font-size: 18px;
  color: #666;
}

.hd-global-menu-box .global-menu-block .global-menu-func .menu-list-child {
  margin: 0;
  padding: 0;
  background: #f6f6f6;
}

.hd-global-menu-box .global-menu-block .global-menu-func .menu-list-child li {
  margin: 0;
  padding: 0;
}

.hd-global-menu-box .section-feature-articles {
  padding: 0 16px;
}

.hd-global-menu-box .section-feature-articles .article + .article {
  margin-top: 16px;
}

.hd-global-menu-box .section-feature-articles .article figure {
  position: relative;
}

.hd-global-menu-box .section-feature-articles img {
  width: 100%;
  height: auto;
}

.hd-global-menu-box .section-feature-articles a.block {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 4;
}

.hd-global-menu-box .section-feature-articles .plate-feature {
  font-size: 10px;
  display: inline-block;
  padding: 2px 10px;
  position: absolute;
  background: #000;
  color: #fff;
  top: 0;
  left: 0;
  z-index: 2;
  border-radius: 0 0 0 2px;
}

.icon-articleSeries:before {
  content: "\e951";
}

.icon-specialTemplate:before {
  content: "\e950";
}

.hd-global-menu-box .menu-userinfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 425px;
  margin: 20px 16px;
  justify-content: space-between;
}

.hd-global-menu-box .menu-userinfo a.btn {
  padding: 0;
  width: 98px;
  line-height: 38px;
  border-color: #666;
  color: #666;
  box-sizing: border-box;
  font-size: 14px;
}

.hd-global-menu-box .menu-userinfo a.btn:hover {
  background: #d32f2f;
  border-color: #d32f2f;
  color: #fff;
  text-decoration: none;
}

/* ヘッダー ========== */
.hd-wrap {
  position: relative;
  z-index: 120;
  background-color: #fff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
  width: 100%;
}

.hd-wrap.is-clone {
  z-index: 110;
}

.hd-wrap.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  transition: 0.3s top;
}

.hd-box {
  display: flex;
  align-items: center;
  height: 70px;
}

.hd-logo-box {
  width: 180px;
}

.hd-logo-title {
  display: block;
  margin: 0;
}

.hd-logo-link {
  display: block;
  text-decoration: none;
}

.hd-logo-img {
  width: 180px;
  height: 40px;
}

.hd-col {
  display: flex;
  align-items: center;
  width: calc((100% - 180px) / 2);
  height: 100%;
}

.hd-col.is-left {
  padding-right: 16px;
}

.hd-col.is-right {
  padding-left: 16px;
  justify-content: flex-end;
}

.hd-btn-box {
  width: 48px;
  height: 100%;
  margin-right: 20px;
}

.hd-btn:not(:root) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border: none;
  background-color: transparent;
  border-radius: 0;
  font-size: 1.1rem;
  font-weight: 700;
  padding: 0;
  margin: 0;
  text-align: center;
}

.hd-btn:not(:root) .icon-menu {
  font-size: 1.6rem;
  color: #d32f2f;
}

.hd-btn:not(:root):hover .hd-btn-text {
  color: #d32f2f;
}

.hd-btn-text {
  display: block;
  margin-top: 4px;
  transition: 0.3s color;
}

.hd-search-box {
  position: relative;
  width: 280px;
  margin-bottom: 6px;
}

.form-lb.is-hd-search .input-search {
  background-color: transparent;
  border-bottom: 1px solid #d32f2f;
  border-radius: 0;
  padding-left: 0;
  padding-right: 24px;
}

.form-lb.is-hd-search .icon-search {
  position: absolute;
  top: 50%;
  right: 2px;
  margin-top: -10px;
  color: #d32f2f;
  font-size: 1.5rem;
}

.hd-search-tag-box {
  display: none;
  position: absolute;
  top: calc(100% - 2px);
  left: 2px;
  width: 620px;
  background-color: #fff;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
  padding: 24px;
}

.hd-search-tag-box.is-active {
  display: block;
}

.hd-global-nav {
  height: 100%;
}

.hd-global-nav-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  height: 100%;
}

.hd-global-nav-item {
  margin: 0;
  height: 100%;
}

.hd-global-nav-link:not(:root) {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-width: 78px;
  padding: 0 0 4px;
  height: 100%;
  text-decoration: none;
  text-align: center;
}

.hd-global-nav-link:not(:root):hover .hd-global-nav-text {
  color: #d32f2f;
}

.hd-global-nav-icon {
  color: #d32f2f;
  font-size: 1.6rem;
}

.hd-global-nav-text {
  display: block;
  width: 100%;
  font-size: 1.1rem;
  font-weight: 700;
  transition: 0.3s color;
}

.hd-global-menu-box {
  position: fixed;
  top: 0;
  left: -496px;
  z-index: 130;
  width: 456px;
  height: 100%;
  background: #f6f6f6;
  overflow: hidden;
  transition: 0.1s left;
}

.hd-global-menu-box.is-active {
  left: 0;
  box-shadow: 2px 0 2px 0 rgba(0, 0, 0, 0.1);
}

/* notlogin */
@media (max-width: 768px) {
  .l-wrapper.is-responsive .hd-wrap > .l-content {
    height: 64px;
  }
  .l-wrapper.is-responsive .hd-wrap > .l-content .hd-box {
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0 16px;
    box-sizing: border-box;
  }
  .l-wrapper.is-responsive .hd-wrap > .l-content .hd-logo-box {
    display: flex;
    align-items: center;
    width: 140px;
  }
}

/* フッター ========== */
.nav-global-footer {
  background-color: #f6f6f6;
  font-size: 1.4rem;
  margin-top: 80px;
  padding: 0;
}

.nav-global-footer > .inner {
  position: relative;
  width: 1120px;
  margin: 0 auto;
  padding: 40px 0;
  background-color: #f6f6f6;
}

.nav-global-footer .flex-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.nav-global-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.nav-global-footer ul li {
  font-weight: bold;
  margin-top: 28px;
  font-size: 1.4rem;
}

.nav-global-footer ul li:first-child {
  margin-top: 0;
}

.nav-global-footer ul li a {
  display: block;
  color: inherit;
  text-decoration: none;
  line-height: 1;
}

.nav-global-footer ul li a:focus, .nav-global-footer ul li a:hover {
  color: inherit;
  text-decoration: underline;
}

.nav-global-footer ul li.relation {
  font-weight: normal;
  margin-top: 40px;
}

.nav-global-footer ul li.relation:first-child {
  margin-top: 24px;
}

.nav-global-footer ul ul {
  margin-left: 0;
}

.nav-global-footer ul ul li {
  margin: 24px 0 0;
  margin-left: 1em;
  text-indent: -1em;
}

.nav-global-footer ul ul li:first-child {
  margin-top: 28px;
}

.nav-global-footer ul ul li a {
  color: #666;
}

.nav-global-footer ul ul li a::before {
  content: '-';
  color: inherit;
  padding-right: 8px;
}

.nav-global-footer .official-sns {
  position: absolute;
  right: 0;
  bottom: 60px;
}

.nav-global-footer .official-sns img {
  width: 30px;
  height: 30px;
}

.nav-global-footer .official-sns .title-official-sns {
  font-size: 1.4rem;
  margin-right: 8px;
}

.nav-global-footer .official-sns span + span {
  margin-left: 16px;
}

.nav-global-footer .poweredBy {
  margin: 40px 0 0 0;
  padding: 0;
  text-align: left;
}

.ft-wrap {
  margin-top: 15px;
  padding-bottom: 80px;
}

.ft-wrap > .inner {
  position: relative;
  width: 1120px;
  margin: 0 auto;
}

.ft-wrap .flex-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.ft-wrap .logo-nikkeibp,
.ft-wrap .nav-external {
  -ms-flex-item-align: center;
  align-self: center;
}

.ft-wrap .logo-nikkeibp {
  width: 143px;
}

.ft-wrap .logo-nikkeibp img {
  width: auto;
  height: 20px;
}

.ft-wrap nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ft-wrap .nav-external ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.ft-wrap .nav-external ul li {
  margin: 0;
  border-right: 1px solid #ccc;
}

.ft-wrap .nav-external ul li a {
  display: block;
  color: inherit;
  text-decoration: none;
  line-height: 1;
  font-size: 1.4rem;
  padding: .125rem 1rem;
}

.ft-wrap .nav-external ul li a:focus, .ft-wrap .nav-external ul li a:hover {
  color: inherit;
  text-decoration: underline;
}

.ft-wrap .nav-external ul li:first-child {
  border-left: 1px solid #ccc;
}

.ft-wrap .copyright {
  color: #666;
  font-size: 1.2rem;
  text-align: right;
  margin-top: .75rem;
}

/* notlogin */
@media (max-width: 768px) {
  .l-wrapper.is-responsive .ft-wrap {
    margin: 0 auto;
    padding: 24px 0 0;
    background: #fff;
    width: 100%;
  }
  .l-wrapper.is-responsive .ft-wrap > .inner {
    width: 100%;
  }
  .l-wrapper.is-responsive .ft-wrap .flex-between {
    display: block;
  }
  .l-wrapper.is-responsive .ft-wrap .logo-nikkeibp {
    width: 92%;
    margin: 0 auto 24px;
  }
  .l-wrapper.is-responsive .ft-wrap .logo-nikkeibp a {
    line-height: 1;
    vertical-align: top;
  }
  .l-wrapper.is-responsive .ft-wrap .logo-nikkeibp img {
    height: 17px;
  }
  .l-wrapper.is-responsive .ft-wrap .nav-external {
    width: 100%;
    margin: 0 auto 24px;
  }
  .l-wrapper.is-responsive .ft-wrap .nav-external ul {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .l-wrapper.is-responsive .ft-wrap .nav-external ul li {
    width: calc(100% / 3);
    border-right: none;
    border-left: 1px solid #D8D8D8;
    margin: 0 0 8px;
    height: 36px;
  }
  .l-wrapper.is-responsive .ft-wrap .nav-external ul li:nth-child(3n + 1) {
    border-left: none;
  }
  .l-wrapper.is-responsive .ft-wrap .nav-external ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    color: #000;
    height: 100%;
  }
  .l-wrapper.is-responsive .ft-wrap .copyright {
    background: #fff;
    padding: 6px 0 8px;
    border-top: 1px solid #CCCCCC;
    font-size: 10px;
    text-align: center;
  }
}

/* 全社緊急お知らせ */
#corporateInfomation {
  display: block;
  width: 1140px;
  margin: 0 auto;
  padding: 10px 0;
  background-color: #fff;
  font-size: 14px;
}

#corporateInfomation h4 {
  margin: 0 0 5px 0;
  color: #d80022;
}

#corporateInfomation a {
  display: block;
  width: 600px;
  height: 100%;
  margin: 0 auto;
  padding: 10px 40px;
  border: solid 1px red;
  border-radius: 4px;
  text-decoration: none;
}

/* 汎用 ========== */
/* 重要なお知らせ ===== */
.l-importantNotice {
  display: none;
  background-color: #f6f6f6;
  height: 41px;
}

.l-importantNotice.is-active {
  display: block;
}

.l-importantNotice_list {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

.l-importantNotice_item {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.l-importantNotice_link:not(:root) {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #d32f2f;
  font-size: 1.6rem;
  font-weight: 500;
  padding: 8px 22px;
  text-decoration: none;
  position: relative;
}

.l-importantNotice_link:not(:root):hover {
  text-decoration: underline;
}

.l-importantNotice_link:not(:root):after {
  content: '\e945';
  font-family: 'nikkeiBP_iconfont' !important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.4rem;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -8px;
}

/* パンくず ===== */
.breadcrumb-box {
  width: 1120px;
  margin: 0 auto;
}

.breadcrumb-box.is-bottom {
  margin-top: 80px;
}

.breadcrumb-box.is-bottom ~ .nav-global-footer {
  margin-top: 0;
}

.breadcrumb-items {
  margin: 0;
  padding: 12px 0 16px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.breadcrumb-items .breadcrumb-item:last-of-type {
  margin-right: 0;
}

.breadcrumb-item {
  display: flex;
  align-items: center;
  margin: 4px 16px 0 0;
}

.breadcrumb-item .icon-right-arrow {
  font-size: 1.2rem;
  color: #666;
  margin-left: 12px;
}

.breadcrumb-link:not(:root) {
  display: block;
  color: #d32f2f;
  font-size: 1.4rem;
}

.breadcrumb-text {
  display: block;
  color: #666;
  font-size: 1.4rem;
}

/* ボタン ========== */
/* 標準ボタン ===== */
.standard-btn-box {
  margin: 24px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.standard-btn-box.is-left {
  justify-content: flex-start;
}

.standard-btn-box.is-short {
  margin-top: 14px;
}

.standard-btn-box.is-grounding {
  margin-top: 0;
}

.standard-btn-box.is-large {
  margin-top: 32px;
}

.standard-btn-box.is-semi-long {
  margin-top: 38px;
}

.standard-btn-box.is-long {
  margin-top: 48px;
}

.standard-btn-box.is-hide {
  display: none;
}

.standard-btn:not(:root) {
  position: relative;
  display: block;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 40px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  color: #d32f2f;
  min-width: 320px;
  z-index: 2;
  transition: 0.3s color, 0.3s background, 0.3s opacity;
  border: 1px solid #d32f2f;
}

.standard-btn:not(:root):hover {
  background-color: #d32f2f;
  color: #fff;
}

.standard-btn:not(:root).is-side-mypage {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 100%;
  padding: 6px 16px;
}

.standard-btn:not(:root).is-cv {
  font-size: 1.8rem;
  color: #fff;
  min-width: 230px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #1b9b82, #1b9b82);
  border: none;
  border-radius: 2px;
}

.standard-btn:not(:root).is-cv:hover {
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #1b9b82, #1b9b82);
  opacity: 0.5;
}

.standard-btn:not(:root).is-login {
  font-size: 1.8rem;
  color: #fff;
  min-width: 230px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #e6001e, #e6001e);
  border: none;
  border-radius: 2px;
}

.standard-btn:not(:root).is-login:hover {
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #e6001e, #e6001e);
  opacity: 0.5;
}

.standard-btn:not(:root).is-full {
  min-width: auto;
  width: 100%;
}

.standard-btn:not(:root).is-large {
  font-size: 1.8rem;
  padding-top: 12px;
  padding-bottom: 12px;
}

.standard-btn:not(:root).is-long {
  min-width: 342px;
}

.standard-btn:not(:root).is-sub {
  font-weight: 500;
  color: #666;
  border-radius: 2px;
  border-color: rgba(0, 0, 0, 0.1);
}

.standard-btn:not(:root).is-sub:hover {
  color: #fff;
}

.standard-btn:not(:root).is-active:not(.acd-btn) {
  background-color: #d32f2f;
  color: #fff;
}

.standard-btn:not(:root).is-active:not(.acd-btn):before, .standard-btn:not(:root).is-active:not(.acd-btn):after {
  content: none;
}

.standard-btn:not(:root).is-active:not(.acd-btn):hover {
  color: #fff;
}

.standard-btn:not(:root).is-parallel {
  display: flex;
  align-items: center;
  justify-content: center;
}

.standard-btn:not(:root) .icon-down-arrow {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -6px;
  font-size: 1.4rem;
}

.standard-btn:not(:root) .icon-right-arrow {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -6px;
  font-size: 1.4rem;
}

.standard-btn:not(:root) .icon-user {
  font-size: 1.8rem;
  margin-right: 8px;
}

.standard-btn:not(:root) .icon-data-base {
  font-size: 1.8rem;
  margin-right: 8px;
}

/* フォローボタン ===== */
.follow-btn-box {
  display: flex;
  align-items: center;
}

.follow-btn:not(:root) {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 12px;
  font-size: 1.4rem;
  text-align: center;
  color: #d32f2f;
  min-width: 142px;
  transition: 0.3s background-color, 0.3s color;
  border: 1px solid #d32f2f;
}

.follow-btn:not(:root):hover {
  background-color: #d32f2f;
  color: #fff;
}

.follow-btn:not(:root).is-active {
  background-color: #d32f2f;
  color: #fff;
}

.follow-btn:not(:root) .icon-unfollow {
  font-size: 2rem;
  margin-right: 8px;
}

.follow-info {
  display: block;
  margin-left: 12px;
  color: #666;
  font-size: 1.4rem;
}

/* 検索ボタン ===== */
.search-btn:not(:root) {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #d32f2f;
  color: #fff;
  border: 1px solid #d32f2f;
  border-radius: 0;
  font-size: 1.8rem;
  padding: 6px 8px;
  transition: 0.3s opacity, 0.3s background-color, 0.3s color, 0.3s border-color;
  min-width: 180px;
  text-align: center;
  font-weight: 700;
}

.search-btn:not(:root):hover {
  opacity: 0.5;
}

.search-btn:not(:root).is-mini {
  min-width: 64px;
  font-size: 1.4rem;
  min-height: 38px;
}

.search-btn:not(:root).is-search:not(.is-active) {
  cursor: not-allowed;
  background-color: #ccc;
  color: #fff;
  border-color: #ccc;
}

.search-btn:not(:root).is-search:not(.is-active):hover {
  opacity: 1;
}

.search-btn:not(:root).is-sub {
  background-color: #fff;
  color: #d32f2f;
}

.search-btn:not(:root).is-sub:hover {
  opacity: 1;
  background-color: #d32f2f;
  color: #fff;
}

.search-btn:not(:root).is-full {
  min-width: auto;
  width: 100%;
}

.search-btn:not(:root) ~ .search-btn:not(:root) {
  margin-left: 8px;
}

.search-btn:not(:root) .icon-follow {
  font-size: 2rem;
  margin-right: 8px;
}

/* モーダル ========== */
/* 基本設定 ===== */
/* Magnific Popup CSS */
.mfp-bg {
  z-index: 100001;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #222;
  opacity: 0.5;
}

.mfp-wrap {
  -webkit-backface-visibility: hidden;
  z-index: 100002;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  outline: none !important;
}

.mfp-container {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

.mfp-container:before {
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  content: '';
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  display: inline-block;
  z-index: 1045;
  position: relative;
  margin: 0 auto;
  text-align: left;
  vertical-align: middle;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  z-index: 1044;
  position: absolute;
  top: 50%;
  right: 8px;
  left: 8px;
  width: auto;
  margin-top: -0.8em;
  color: #ccc;
  text-align: center;
}

.mfp-preloader a {
  color: #ccc;
}

.mfp-preloader a:hover {
  color: #fff;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  -webkit-appearance: none;
  display: block;
  z-index: 1046;
  padding: 0;
  overflow: visible;
  outline: none;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  touch-action: manipulation;
  border: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  position: absolute;
  top: -44px;
  right: 0;
  width: 21px;
  height: 21px;
  font-size: 0;
}

.mfp-close::before,
.mfp-close::after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -4px;
  width: 28px;
  height: 2px;
  margin: auto 0;
  background: #fff;
  content: '';
}

.mfp-close::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mfp-close::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 0.7;
}

.mfp-close-btn-in .mfp-close {
  color: #f6f6f6;
}

.mfp-close-btn-in .mfp-content {
  padding: 50px 0;
}

.mfp-close-hide .mfp-close {
  display: none;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: 1.2rem;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  -webkit-tap-highlight-color: transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 40px;
  height: 100%;
  margin: 0;
  margin: auto 0;
  padding: 0;
}

.mfp-arrow:hover {
  opacity: 0.7;
}

.mfp-arrow::after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  margin: auto 0;
  content: '';
}

.mfp-arrow-left {
  left: -40px;
}

.mfp-arrow-left::after {
  left: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
}

.mfp-arrow-right {
  right: -40px;
}

.mfp-arrow-right::after {
  right: 15px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

.mfp-iframe-holder .c-modal {
  max-height: calc(100vh - 16rem);
}

.mfp-iframe-holder .mfp-content {
  width: 100%;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}

.mfp-iframe-scaler iframe {
  display: block;
  position: absolute;
  top: 6rem;
  right: 0;
  left: 0;
  width: calc(100% - 12rem);
  max-width: 96rem;
  height: calc(100% - 12rem);
  margin: auto;
}

/* Main image in popup */
img.mfp-img {
  box-sizing: border-box;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  line-height: 0;
}

/* The shadow behind the image */
.mfp-figure.c-modal {
  padding: 0;
}

.p-figure small {
  display: block;
  color: #bdbdbd;
  font-size: 1.2rem;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  margin-top: -36px;
  cursor: auto;
}

.mfp-title {
  word-wrap: break-word;
  font-size: 1.4rem;
  line-height: initial;
  text-align: left;
}

.mfp-image-holder .mfp-content {
  position: relative;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

/* overlay at start */
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.6;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

/* -----------------------------------------------
  .c-modal
----------------------------------------------- */
.c-modal {
  position: relative;
  width: 660px;
  max-width: 100%;
  max-height: 80%;
  margin: auto;
  padding: 30px;
  border-radius: 2px;
  background: #fff;
}

.c-modal.is-inner-full {
  padding: 0;
}

.c-modal.is-wide {
  width: 1000px;
}

.c-modal_scroll {
  max-height: calc(100vh - 271px);
  margin: 0 -30px;
  padding: 0 30px;
  overflow: auto;
}

.c-modal_title {
  margin: 0 0 20px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 30px;
}

.c-modal_title a {
  color: #000;
}

.c-modal_title a:hover {
  color: #d32f2f;
}

.c-modal_body {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 500;
}

.c-modal_body a {
  color: #d32f2f;
}

.c-modal_body a:hover {
  text-decoration: underline;
}

.c-modal_sub {
  display: flex;
  margin: 20px 0 0;
}

.c-modal_sub_text {
  font-weight: bold;
}

.c-modal_sub_text a {
  color: #d32f2f;
}

.c-modal_sub_text a:hover {
  text-decoration: underline;
}

.c-modal_closeBtn {
  text-align: center;
}

.c-modal_closeBtn a {
  display: inline-block;
  color: #8c8c8c;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: 0.2px;
  vertical-align: middle;
}

.c-modal_closeBtn a:hover {
  color: #d32f2f;
}

.c-modal_closeBtn a:hover .-cross:before, .c-modal_closeBtn a:hover .-cross:after {
  background: #d32f2f;
}

.c-modal_closeBtn a .-cross {
  display: inline-block;
  position: relative;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  vertical-align: middle;
}

.c-modal_closeBtn a .-cross:before, .c-modal_closeBtn a .-cross:after {
  display: block;
  position: absolute;
  top: 0;
  left: 12%;
  width: 18px;
  height: 1px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  background: #8c8c8c;
  content: '';
}

.c-modal_closeBtn a .-cross:after {
  right: 12%;
  left: auto;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
}

.modal-box {
  overflow: hidden;
  border-radius: 2px;
}

/* 設定 ===== */
.p-loginForRead {
  padding: 30px;
  border-radius: 1px;
  background: #f6f6f6;
}

.p-loginForRead .p-loginForRead_heading {
  margin: 0 0 15px;
  padding: 0;
  border: none;
  background: none;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.21px;
  line-height: 30px;
  text-align: center;
}

.p-loginForRead .p-loginForRead_subTitle {
  font-weight: 500;
  letter-spacing: 0.16px;
  text-align: center;
}

.p-loginForRead .p-loginForRead_subTitle a {
  color: #d32f2f;
}

.p-loginForRead .p-loginForRead_subTitle a:hover {
  text-decoration: underline;
}

.p-loginForRead .p-loginForRead_msg {
  margin: 0;
  font-size: 1.7rem;
  line-height: 1.5;
  text-align: center;
}

.p-loginForRead .p-loginForRead_image {
  margin: 30px 0;
  text-align: center;
}

.p-loginForRead .p-loginForRead_action {
  margin: 25px 0 0;
}

.p-loginForRead .p-loginForRead_action_title {
  margin: 0 0 15px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
}

.p-loginForRead .p-loginForRead_action_title .-red {
  color: #d32f2f;
}

.p-loginForRead .p-loginForRead_action_list {
  display: flex;
  justify-content: center;
}

.p-loginForRead .p-loginForRead_action_item {
  max-width: 322px;
}

.p-loginForRead .p-loginForRead_action_item:only-child {
  flex: auto;
  width: 100%;
  max-width: 100%;
}

.p-loginForRead .p-loginForRead_action_item:only-child .p-loginForRead_action_btn {
  width: 322px;
}

.p-loginForRead .p-loginForRead_action_item + .p-loginForRead_action_item {
  margin-left: 48px;
}

.p-loginForRead .p-loginForRead_action_btn {
  display: block;
  position: relative;
  min-width: 322px;
  margin: 0 auto;
  padding: 18px 0;
  font-size: 1.7rem;
  font-weight: bold;
}

.p-loginForRead .p-loginForRead_action_btn .-icon {
  position: absolute;
  top: -12px;
  left: 4px;
  width: 100px;
  padding: 6px 0;
  background-color: #f57123;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
}

.p-loginForRead .p-loginForRead_action_btn .-icon:after {
  position: absolute;
  right: 0px;
  bottom: -5px;
  width: 0;
  height: 0;
  border-top: 11px solid #f57123;
  border-right: 11px solid transparent;
  border-left: 11px solid transparent;
  content: '';
}

.p-loginForRead .p-loginForRead_body {
  width: 100%;
  max-width: 692px;
  margin: 20px auto 0;
  padding: 20px;
  background-color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 30px;
  text-align: center;
}

.p-loginForRead .p-loginForRead_body a {
  text-decoration: underline;
}

.p-loginForRead .p-loginForRead_body a:hover {
  color: #d32f2f;
}

.p-loginForRead .p-loginForRead_body p {
  margin: 0;
}

.p-loginForRead .p-loginForRead_body p strong {
  font-weight: bold;
}

.p-loginForRead .p-loginForRead_body p + p {
  margin-top: 10px;
  line-height: 30px;
}

.p-loginForRead .p-loginForRead_body .-red {
  color: #d32f2f;
  font-weight: 700;
}

.p-loginForRead .p-loginForRead_body_title {
  margin-bottom: 20px;
}

.p-loginForRead .p-loginForRead_link {
  margin-top: 20px;
  color: #d32f2f;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}

.p-loginForRead .p-loginForRead_link:hover {
  text-decoration: underline;
}

.p-loginForRead .p-loginForRead_btn {
  width: 322px;
  margin: 30px auto 0;
}

.p-loginForRead .p-loginForRead_btn a {
  width: 322px;
  padding: 20px 0;
  font-size: 17px;
  letter-spacing: 0.43px;
}

.p-loginForRead .p-loginForRead_gift_btn {
  margin-top: 20px;
}

.p-loginForRead .p-loginForRead_gift_btn a {
  background: none;
}

.p-loginForRead .p-loginForRead_gift_complete {
  width: 322px;
  margin: 20px auto 0;
  padding: 13px 0;
  background-color: #f6f6f6;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.p-loginForRead .p-loginForRead_gift_text {
  margin: 10px 0;
  text-align: center;
}

.p-loginForRead .p-loginForRead_gift_count {
  text-align: center;
}

.p-loginForRead.c-modal {
  background-color: #fff;
}

.p-loginForRead.c-modal .p-loginForRead_btn {
  width: 100%;
}

.p-loginForRead.c-modal .p-loginForRead_btn .btnFunc {
  width: 100%;
}

.p-loginForRead.c-modal .p-loginForRead_body {
  padding: 0;
}

.p-loginForRead#paywall_notlogin {
  width: 660px;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_action_list {
  justify-content: space-between;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_action_btn {
  width: 200px;
  min-width: 200px;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_action_btn .-icon {
  left: -10px;
  width: 100px;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_action_btn.-apply {
  width: 380px;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_body {
  padding: 20px 0;
  border-top: 1px solid #dadada;
  background-color: #fff;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_body_title {
  margin-bottom: 10px;
}

.p-loginForRead#paywall_notlogin .p-loginForRead_link {
  margin-top: 0;
}

.p-loginForRead#paywall_nbodd {
  width: 660px;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_action_list {
  justify-content: center;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_action_item {
  max-width: 100%;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_action_btn .-icon {
  left: -10px;
  width: 100px;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_body {
  padding: 20px 0;
  border-top: 1px solid #dadada;
  background-color: #fff;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_body_title {
  margin-bottom: 10px;
}

.p-loginForRead#paywall_nbodd .p-loginForRead_link {
  margin-top: 0;
}

.p-loginForRead#paywall_gift .p-loginForRead_heading {
  font-weight: 700;
}

.p-loginForRead#paywall_gift .p-loginForRead_image {
  margin: 0 0 20px;
}

.p-loginForRead#paywall_gift .p-loginForRead_action_list {
  justify-content: space-between;
}

.p-loginForRead#paywall_gift .p-loginForRead_action_btn.-apply {
  width: 380px;
  min-width: 380px;
}

.p-loginForRead#paywall_gift .p-loginForRead_action_btn.-login {
  width: 200px;
  min-width: 200px;
}

.p-loginForRead#paywall_gift .p-loginForRead_action_item:only-child .p-loginForRead_action_btn {
  width: 100%;
}

.p-loginForRead#paywall_gift .p-loginForRead_body {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #dadada;
}

.p-loginForRead.-side {
  padding: 30px 8px;
}

.p-loginForRead.-side .p-loginForRead_heading {
  font-size: 14px;
  line-height: 24px;
}

.p-loginForRead.-side .p-loginForRead_image {
  width: 200px;
  margin-right: auto;
  margin-left: auto;
}

.p-loginForRead.-side .p-loginForRead_body {
  padding: 10px;
  font-size: 1.4rem;
}

.p-loginForRead.-side .p-loginForRead_btn {
  width: 100%;
}

.p-loginForRead.-side .p-loginForRead_btn a {
  width: 100%;
}

.p-loginForRead.-search {
  margin: 30px 0 40px;
}

.p-loginForRead.-search .p-loginForRead_action_item {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.p-loginForRead.-article {
  position: relative;
  margin: 0 -85px;
  clear: both;
}

.p-loginForRead.-article:before {
  display: block;
  position: absolute;
  top: -200px;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #fff 100%);
  content: '';
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
}

.p-loginForRead.-article .p-loginForRead_heading {
  margin-bottom: 10px;
}

.p-loginForRead.-article .p-loginForRead_action {
  margin-top: 20px;
}

.p-loginForRead.-article .p-loginForRead_link {
  font-size: 1.7rem;
}

.p-loginForRead.-article .p-loginForRead_body_title {
  margin-bottom: 10px;
}

.p-loginForRead.-article.-noLayer:before {
  content: none;
}

.articleBody .bplead + .onlyLastPage .p-loginForRead.-article:before {
  top: -48px;
  height: 48px;
}

body.nbodd #rhizomePopupNnbodd .p-loginForRead .p-loginForRead_action_list {
  justify-content: center;
}

body.nbodd #rhizomePopupNnbodd .p-loginForRead .p-loginForRead_action_item + .p-loginForRead_action_item {
  display: none;
  margin-left: 0;
}

#mypagemodal .popupOption {
  margin: 0;
  padding: 0;
  list-style: none;
}

#mypagemodal .popupOption li {
  margin: 0;
  border-top: 1px solid #ddd;
  text-align: center;
}

#mypagemodal .popupOption li:first-child {
  border-top: none;
}

#mypagemodal .popupOption li a {
  text-decoration: none;
  display: inline-block;
  padding: 12px;
  color: #d32f2f;
  font-size: 1.6rem;
}

#mypagemodal .popupOption li a .icon-outbound {
  margin-left: 8px;
}

#mypagemodal .popupOption li a:hover {
  text-decoration: underline;
}

/* 企業選択 ===== */
.modal-select-tags-box {
  display: flex;
  height: 600px;
}

.modal-select-tags-col {
  position: relative;
}

.modal-select-tags-col:after {
  content: '';
  display: block;
  width: 100%;
  height: 36px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  opacity: 0.8;
}

.modal-select-tags-col.is-main {
  width: calc(100% - 320px);
}

.modal-select-tags-col.is-main:after {
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}

.modal-select-tags-col.is-side {
  width: 320px;
  background-color: #f6f6f6;
}

.modal-select-tags-col.is-side:after {
  background-image: linear-gradient(to bottom, rgba(246, 246, 246, 0), #f6f6f6);
}

.modal-select-tags-title {
  margin: 0;
  padding: 0 16px;
  height: 78px;
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  border-bottom: 1px solid #ccc;
}

.modal-select-tags-side-btn-box {
  padding: 16px 16px 0;
}

.modal-select-tags-side-title {
  padding: 16px 16px 0;
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
  color: #666;
}

.modal-select-tags-tmp-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 8px;
  padding: 0 16px 30px;
  overflow-y: auto;
  max-height: calc(100% - 59px - 35px);
}

.modal-select-tags-tmp-box > .icon-and {
  font-size: 2rem;
  margin: 0 4px 4px 0;
}

/* 企業リスト ===== */
.modal-select-tags-panel {
  display: flex;
  height: calc(100% - 78px);
}

.modal-select-tags-panel.is-tab {
  height: 100%;
}

.modal-panel-link-box {
  width: 45px;
  background-color: #f6f6f6;
}

.modal-panel-link-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  height: 100%;
  padding-bottom: 30px;
}

.modal-panel-link-item {
  margin: 0;
}

.modal-panel-link:not(:root) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: 700;
  color: #9b9b9b;
}

.modal-panel-link:not(:root).is-active, .modal-panel-link:not(:root):hover {
  color: #d32f2f;
}

.modal-panel-cnt-box {
  width: calc(100% - 45px);
  height: 100%;
  padding: 0 16px 30px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.modal-panel-cnt-title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  margin: 20px 0 0;
}

/* タグ選択 ===== */
.modal-select-tags {
  padding-top: 12px;
}

.modal-select-tags:not(.is-panel) {
  padding-left: 16px;
  padding-right: 16px;
}

/* タグフォロー ===== */
.modal-tag-follow-tmp-box {
  height: 140px;
  padding-bottom: 0;
}

.modal-tag-follow-tmp {
  max-height: 100%;
  padding-bottom: 0;
}

.modal-hits-num-box {
  padding: 16px 16px 8px;
  text-align: right;
  border-bottom: 1px solid #ccc;
}

.modal-hits-num {
  color: #d32f2f;
  font-size: 1.8rem;
  font-weight: 700;
}

.modal-hits-num-text {
  font-size: 1.4rem;
  margin-left: 4px;
}

.modal-result-box {
  height: 305px;
  padding-bottom: 30px;
  overflow-y: auto;
}

.modal-result-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.modal-result-item {
  margin: 0;
}

/* タイトル ========== */
/* ピックアップ ===== */
.pickup-title-box {
  margin-top: 24px;
  padding: 16px 16px 12px;
  background-color: #f6f6f6;
}

.pickup-title {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.pickup-title .icon-comment {
  color: #d32f2f;
  margin-right: 8px;
}

/* セクション ===== */
.section-title {
  position: relative;
  margin: 0;
  padding: 18px 0 0;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
}

.section-title:before {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background-color: #d32f2f;
  position: absolute;
  top: 0;
  left: 0;
}

.section-title-emphasis {
  color: #d32f2f;
}

/* サイド ===== */
.side-title-box.is-normal .side-title {
  padding-left: 0;
  border: none;
}

.side-title {
  margin: 0;
  padding: 0 0 0 16px;
  font-size: 1.8rem;
  font-weight: 700;
  border-left: 2px solid #d32f2f;
}

.side-title-emphasis {
  color: #d32f2f;
}

/* 特設 ===== */
.sp-title-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #f6f6f6;
  padding: 18px 24px;
}

.sp-title-box.is-border-red {
  border-top: 4px solid #d32f2f;
}

/* エンタテインメント */
.sp-title-box.is-border-red2 {
  border-top: 4px solid #e73559;
}

.sp-title-box.is-border-yellow {
  border-top: 4px solid #ffde00;
}

.sp-title-box.is-text-title {
  padding-top: 28px;
  padding-bottom: 28px;
}

.sp-title-col.is-left {
  margin-right: 24px;
  flex-shrink: 0;
}

.sp-title {
  margin: 0;
  font-size: 2.4rem;
  font-weight: 700;
}

.sp-title-img-box {
  display: flex;
  align-items: center;
  height: 54px;
}

.sp-title-desc {
  margin: 0;
  font-size: 1.4rem;
}

.sp-title-desc a {
  color: #d32f2f;
  text-decoration: underline;
}

.sp-title-desc a:hover {
  text-decoration: none;
}

/* ページ ===== */
.page-title-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.page-title-box.is-mypage {
  margin-top: 32px;
  margin-bottom: -8px;
  justify-content: flex-start;
}

.page-title-box.is-mypage .page-title {
  font-size: 1.8rem;
}

.page-title-box.is-mypage-large {
  margin-top: 32px;
  justify-content: flex-start;
}

.page-title-box.is-mypage-large .page-title {
  font-size: 2.4rem;
}

.page-title-col.is-right {
  margin-left: 24px;
  flex-shrink: 0;
}

.page-title {
  margin: 0;
  font-size: 2.8rem;
  font-weight: 700;
}

.page-title .page-description {
  margin: 0 0 0 16px;
  font-size: 1.8rem;
  font-weight: 500;
  color: #666;
}

.is-page-title.standard-btn-box {
  margin-top: 0;
}

.page-title-modal {
  margin-left: 8px;
}

.page-title-modal .c-helpIcon {
  display: block;
  width: 16px;
  height: 16px;
}

.page-title-modal .c-helpIcon a {
  display: block;
  width: 16px;
  height: 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  color: #d32f2f;
  font-size: 12px;
  font-weight: normal;
  line-height: 16px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}

.page-title-modal .c-helpIcon a:hover {
  text-decoration: none;
  border-color: #d32f2f;
}

/* 記事 ========== */
/* メイン記事 ===== */
.articles-main-box {
  margin-top: 24px;
}

.articles-main-link:not(:root) {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.articles-main-link:not(:root):visited .articles-main-title {
  color: #666;
}

.articles-main-link:not(:root):hover .articles-main-img {
  transform: scale(1.06);
}

.articles-main-link:not(:root):hover .articles-main-title {
  color: #d32f2f;
}

.articles-main-link:not(:root).is-main-normal .articles-main-img-box {
  width: 385px;
  margin-right: 32px;
}

.articles-main-link:not(:root).is-main-normal .articles-main-cnt {
  width: calc(100% - (385px + 32px));
}

.articles-main-link:not(:root).is-normal .articles-main-img-box {
  width: 386px;
  margin-right: 32px;
}

.articles-main-link:not(:root).is-normal .articles-main-cnt {
  width: calc(100% - (386px + 32px));
}

.articles-main-link:not(:root).is-normal .articles-main-parent-title {
  margin-bottom: 6px;
  line-height: 2.6;
}

.articles-main-link:not(:root).is-normal .articles-main-title {
  line-height: 1.5;
}

.articles-main-link:not(:root).is-feature .articles-main-img-box:before {
  content: '';
  display: block;
  width: 100%;
  height: 5px;
  background-color: #d32f2f;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
}

.articles-main-link:not(:root).is-sub {
  padding: 24px;
  background-color: #f6f6f6;
  align-items: flex-start;
}

.articles-main-link:not(:root).is-sub .articles-main-img-box {
  width: 360px;
  margin-right: 24px;
}

.articles-main-link:not(:root).is-sub .articles-main-cnt {
  width: calc(100% - (360px + 24px));
}

.articles-main-link:not(:root).is-sub .articles-main-parent-title {
  font-size: 1.2rem;
  margin-bottom: 8px;
  line-height: 2;
}

.articles-main-link:not(:root).is-sub .articles-main-title {
  font-size: 1.6rem;
  line-height: 1.3;
}

.articles-main-link:not(:root).is-sub .articles-main-text {
  margin-top: 10px;
  font-size: 1.2rem;
  line-height: 1.8;
}

.articles-main-link:not(:root).is-sub .icon-lock {
  font-size: 1.4rem;
}

.articles-main-link:not(:root) .icon-lock {
  color: #dadada;
  margin-left: 4px;
  font-size: 2rem;
}

.articles-main-img-box {
  position: relative;
  width: 472px;
  overflow: hidden;
  margin-right: 40px;
}

.articles-main-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.articles-main-category {
  display: block;
  color: #fff;
  background-color: #d32f2f;
  font-size: 1.1rem;
  padding: 4px 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.articles-main-cnt {
  width: calc(100% - (472px + 40px));
}

.articles-main-parent-title {
  display: block;
  font-size: 1.6rem;
  color: #666;
  font-weight: 700;
  margin-bottom: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.articles-main-title {
  display: inline;
  font-size: 3.2rem;
  font-weight: 700;
  transition: 0.3s color;
}

.articles-main-text {
  display: block;
  margin: 22px 0 0;
  color: #666;
  font-size: 1.4rem;
  line-height: 2;
}

/* 記事リスト ===== */
.articles-list-box {
  margin-top: 24px;
}

.articles-list-box.is-short {
  margin-top: 12px;
}

.articles-list-box.is-grounding {
  margin-top: 0;
}

.articles-list-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.articles-list-items.is-col-2 .articles-list-item {
  width: calc( (100% / 2) - ((24px * (2 - 1)) / 2));
  margin-right: 24px;
}

.articles-list-items.is-col-2 .articles-list-item:nth-of-type(2n) {
  margin-right: 0;
}

.articles-list-items.is-col-2 .articles-list-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.articles-list-items.is-col-3 {
  justify-content: space-between;
  margin-top: -16px;
}

.articles-list-items.is-col-3:after {
  content: '';
  display: block;
  width: calc( (100% / 3) - ((47px * (3 - 1)) / 3));
}

.articles-list-items.is-col-3 .articles-list-item {
  width: calc( (100% / 3) - ((47px * (3 - 1)) / 3));
}

.articles-list-items.is-col-3 .articles-list-item:first-of-type {
  margin-top: 16px;
}

.articles-list-items.is-col-3.is-large {
  margin-top: -24px;
}

.articles-list-items.is-col-3.is-large:after {
  width: calc( (100% / 3) - ((47px * (3 - 1)) / 3));
}

.articles-list-items.is-col-3.is-large .articles-list-item {
  width: calc( (100% / 3) - ((24px * (3 - 1)) / 3));
  margin-top: 24px;
}

.articles-list-items.is-col-3.is-large .articles-list-item:first-of-type {
  margin-top: 24px;
}

.articles-list-items.is-col-4 .articles-list-item {
  width: calc( (100% / 4) - ((24px * (4 - 1)) / 4));
  margin-right: 24px;
}

.articles-list-items.is-col-4 .articles-list-item:nth-of-type(4n) {
  margin-right: 0;
}

.articles-list-items.is-col-4 .articles-list-item:nth-of-type(-n + 4) {
  margin-top: 0;
}

.articles-list-items .articles-list-item:first-of-type {
  margin-top: 0;
}

.articles-list-item {
  margin: 16px 0 0;
  width: 100%;
}

/* 記事パネル ===== */
.articles-panel-link:not(:root) {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.articles-panel-link:not(:root) .icon-lock {
  color: #dadada;
  margin-left: 4px;
}

.articles-panel-link:not(:root):visited .articles-panel-title {
  color: #666;
}

.articles-panel-link:not(:root):hover .articles-panel-img {
  transform: scale(1.06);
}

.articles-panel-link:not(:root):hover .articles-panel-title {
  color: #d32f2f;
}

.articles-panel-link:not(:root).is-main .articles-panel-cnt {
  margin-top: 24px;
}

.articles-panel-link:not(:root).is-main .articles-panel-title {
  font-size: 2.4rem;
  line-height: 1.4;
}

.articles-panel-link:not(:root).is-feature .articles-panel-img-box:before {
  content: '';
  display: block;
  width: 100%;
  height: 5px;
  background-color: #d32f2f;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
}

.articles-panel-link:not(:root).is-feature .icon-lock {
  font-size: 1.8rem;
}

.articles-panel-link:not(:root).is-col-2 .articles-panel-cnt {
  margin-top: 24px;
}

.articles-panel-link:not(:root).is-col-2 .articles-panel-parent-title {
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.articles-panel-link:not(:root).is-col-2 .articles-panel-title {
  font-size: 2.4rem;
  line-height: 1.5;
}

.articles-panel-link:not(:root).is-col-3 .articles-panel-parent-title {
  margin-bottom: 4px;
}

.articles-panel-link:not(:root).is-col-3 .articles-panel-title {
  line-height: 1;
}

.articles-panel-link:not(:root).is-col-3 .articles-panel-img {
  width: 226px;
  height: 170px;
  -o-object-fit: contain;
  object-fit: contain;
}

.articles-panel-link:not(:root).is-seminar .articles-panel-parent-title {
  margin-bottom: 8px;
  line-height: 1.8;
}

.articles-panel-link:not(:root).is-seminar .articles-panel-title {
  line-height: 1.4;
}

.articles-panel-link:not(:root).is-seminar .articles-panel-text {
  color: #000;
  margin-top: 6px;
  font-size: 1.4rem;
  line-height: 1.5;
}

.articles-panel-link:not(:root).is-seminar.is-col-3 .articles-panel-text {
  margin-top: 10px;
}

.articles-panel-link:not(:root).is-seminar.is-col-3 .articles-panel-icon-box {
  width: 24px;
  height: 24px;
}

.articles-panel-link:not(:root).is-seminar.is-col-3 .articles-panel-icon-box .img-icon-play {
  width: 12px;
  height: 8px;
  background-size: 12px 8px;
}

.articles-panel-link:not(:root).is-seminar.is-col-3 .articles-panel-img {
  width: 241px;
  height: 136px;
}

.articles-panel-link:not(:root).is-visualization .articles-panel-cnt {
  margin-top: 16px;
}

.articles-panel-link:not(:root).is-visualization .articles-panel-parent-title {
  margin-bottom: 14px;
  line-height: 1;
}

.articles-panel-link:not(:root).is-visualization .articles-panel-title {
  line-height: 1.4;
}

.articles-panel-link:not(:root).is-special .articles-panel-category {
  top: auto;
  bottom: 0;
}

.articles-panel-link:not(:root).is-special .articles-panel-title {
  font-size: 1.4rem;
}

.articles-panel-link:not(:root).is-special .articles-panel-tag-items {
  margin-top: 4px;
}

.articles-panel-img-box {
  position: relative;
  overflow: hidden;
}

.articles-panel-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.articles-panel-icon-box {
  position: absolute;
  z-index: 2;
  bottom: 8px;
  right: 8px;
  width: 48px;
  height: 48px;
  border-radius: 48px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.5);
}

.articles-panel-category {
  display: block;
  color: #fff;
  background-color: #d32f2f;
  font-size: 1.1rem;
  padding: 4px 8px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.articles-panel-cnt {
  overflow: hidden;
  margin-top: 10px;
}

.articles-panel-parent-title {
  display: block;
  font-size: 1.2rem;
  color: #666;
  font-weight: 700;
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.articles-panel-title {
  display: inline;
  font-size: 1.6rem;
  font-weight: 700;
  transition: 0.3s color;
}

.articles-panel-text {
  display: block;
  margin-top: 12px;
  font-size: 1.2rem;
  color: #666;
}

.articles-panel-tag-items {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.articles-panel-tag-items .articles-panel-tag-item:last-of-type {
  margin-right: 0;
}

.articles-panel-tag-item {
  margin: 4px 8px 0 0;
  padding: 2px 8px;
  border-radius: 2px;
  font-size: 1.1rem;
  font-weight: 700;
  background-color: #d32f2f;
  color: #fff;
}

.articles-panel-info {
  display: flex;
  align-items: center;
  margin-top: 12px;
  font-size: 1.1rem;
  color: #666;
}

.articles-panel-info .icon-time {
  font-size: 1.2rem;
  color: #dadada;
  margin-right: 6px;
}

.articles-panel-presenter {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.articles-panel-presenter-name {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
}

.articles-panel-presenter-pos {
  display: block;
  font-size: 1.2rem;
  color: #666;
}

.text-other {
  float: right;
}

/* 並列記事 ===== */
.articles-parallel-box {
  display: flex;
}

.articles-parallel-col {
  width: 50%;
}

.articles-parallel-col.is-left {
  padding-right: 12px;
}

.articles-parallel-col.is-right {
  padding-left: 12px;
}

/* 2列記事 ===== */
.articles-col-2-box {
  margin-top: 24px;
}

.articles-main-box + .articles-col-2-box {
  margin-top: 48px;
}

.articles-col-2-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.articles-col-2-items .articles-col-2-item {
  width: calc( (100% / 2) - ((46px * (2 - 1)) / 2));
  margin-right: 46px;
}

.articles-col-2-items .articles-col-2-item:nth-of-type(2n) {
  margin-right: 0;
}

.articles-col-2-items .articles-col-2-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.articles-col-2-items.is-sub {
  padding: 24px;
  background-color: #f6f6f6;
}

.articles-col-2-items.is-sub .articles-col-2-item {
  width: calc( (100% / 2) - ((24px * (2 - 1)) / 2));
  margin-right: 24px;
}

.articles-col-2-items.is-sub .articles-col-2-item:nth-of-type(2n) {
  margin-right: 0;
}

.articles-col-2-items.is-sub .articles-col-2-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.articles-col-2-item {
  margin: 48px 0 0 0;
}

/* 絞り込み ===== */
.articles-narrowing-btn-box {
  margin-top: 16px;
}

.articles-narrowing-btn-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.articles-narrowing-btn-items .articles-narrowing-btn-item:last-of-type {
  margin-right: 0;
}

.articles-narrowing-btn-item {
  margin: 8px 16px 0 0;
}

.articles-narrowing-btn:not(:root) {
  display: block;
  text-decoration: none;
  font-size: 1.6rem;
  margin: 0;
  padding: 0;
  border: none;
  border-bottom: 1px solid #b6b6b6;
  border-radius: 0;
  background-color: transparent;
  transition: 0.3s color, 0.3s border-color, 0.3s font-weight;
  min-width: 40px;
}

.articles-narrowing-btn:not(:root):hover, .articles-narrowing-btn:not(:root).is-active {
  color: #d32f2f;
  border-bottom-color: #d32f2f;
  font-weight: 700;
}

/* タブ ===== */
.articles-tab-btn-box {
  margin-top: 40px;
}

.articles-tab-btn-items {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.articles-tab-btn-items:after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #d32f2f;
  position: absolute;
  bottom: 0;
  left: 0;
}

.articles-tab-btn-item {
  margin: 0;
}

.is-mypage .articles-tab-btn-item {
  margin: 0;
  width: 25%;
}

.articles-tab-btn:not(:root) {
  display: block;
  text-decoration: none;
  font-size: 1.8rem;
  background-color: transparent;
  padding: 8px;
  text-align: center;
  min-width: 130px;
  border: none;
  border-radius: 0;
  position: relative;
  transition: 0.3s color;
}

.articles-tab-btn:not(:root):after {
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  background-color: transparent;
  position: absolute;
  bottom: 0;
  left: 0;
}

.articles-tab-btn:not(:root):hover {
  color: #d32f2f;
}

.articles-tab-btn:not(:root).is-active {
  color: #d32f2f;
  font-weight: 700;
}

.articles-tab-btn:not(:root).is-active:after {
  background-color: #d32f2f;
}

.articles-tab-cnt-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.articles-tab-cnt-item {
  margin: 0;
}

/* 更新中 ===== */
.articles-collection-box {
  padding: 32px;
  background-color: #f6f6f6;
}

.articles-collection-title-box {
  margin-bottom: 12px;
}

.articles-collection-title {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
}

/* 続きを読む ===== */
.articles-more-link-box {
  margin-top: 6px;
  line-height: 1;
}

.articles-more-link:not(:root) {
  display: inline-block;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  padding-left: 12px;
  text-decoration: none;
}

.articles-more-link:not(:root) .icon-right-arrow {
  position: absolute;
  top: 50%;
  left: -4px;
  margin-top: -7px;
  font-size: 1.2rem;
  color: #d32f2f;
}

.articles-more-link:not(:root):hover {
  color: #d32f2f;
}

/* プッシュダウン、ビルボード ===== */
.ad-contents .ad.ad-rectangle > div {
  margin-top: 24px;
  text-align: center;
}

/* バナー ===== */
.articles-banner-box {
  margin-top: 24px;
}

.articles-banner-link:not(:root) {
  display: block;
  text-decoration: none;
}

.articles-banner-link:not(:root):hover .articles-banner-img {
  transform: scale(1.06);
}

.articles-banner-img-box {
  overflow: hidden;
}

.articles-banner-img {
  transition: transform 0.4s ease-in-out;
}

/* セクション ========== */
/* 未来消費カレンダー ===== */
.section-calendar-box {
  margin: 24px auto 0;
  position: relative;
  width: 100%;
}

.section-calendar {
  height: 276px;
  border: 1px solid #ccc;
  position: relative;
}

.section-calendar-year {
  position: absolute;
  width: 85px;
  height: 100%;
  color: #666;
  font-size: 1.6rem;
  font-weight: 700;
  top: 0;
  left: 0;
}

.section-calendar-year-inner {
  position: relative;
  height: 100%;
}

.section-calendar-rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.section-calendar-year .is-current,
.section-calendar-month .is-current {
  color: #d32f2f;
  text-decoration: none;
  cursor: pointer;
}

.section-calendar-year-link:not(:root):hover {
  text-decoration: none;
}

.section-calendar-month {
  position: absolute;
  width: 53px;
  height: 100%;
  color: gray;
  background-color: #f6f6f6;
  top: 0;
  left: 85px;
  overflow: hidden;
}

.section-calendar-month-inner {
  position: relative;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  margin-right: 0px;
}

.section-calendar-rows {
  padding-bottom: 0;
  border-left: none;
  margin-left: 0;
}

.section-calendar-num-month {
  color: #666;
  font-size: 1.6rem;
  font-weight: 700;
}

.section-calendar-month-link {
  display: inline-block;
  width: 100%;
  margin: 0 0;
  text-align: center;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.section-calendar-month-link:not(:root):hover {
  text-decoration: none;
}

.section-calendar-results {
  position: absolute;
  width: 631px;
  height: 100%;
  top: 0;
  left: 139px;
  overflow: hidden;
}

.section-calendar-results-inner {
  position: relative;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  padding: 0 30px;
}

.section-calendar-container-article {
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.section-calendar-article-link {
  display: block;
}

.section-calendar-article-link:hover {
  text-decoration: none;
}

.section-calendar-article {
  padding: 16px 0;
  position: relative;
}

.section-calendar-article-row {
  display: flex;
  width: 100%;
  justify-content: space-between;
  position: relative;
}

.section-calendar-title-box {
  order: 1;
  flex: 1;
  min-width: 0;
}

.section-calendar-img-box {
  width: 84px;
  margin-left: 24px;
  order: 2;
}

.section-calendar-img {
  transition: transform 0.4s ease-in-out;
}

.section-calendar-article-link:hover .section-calendar-img {
  transform: scale(1.06);
}

.section-calendar-article-link:hover .section-calendar-article-title {
  color: #d32f2f;
}

.section-calendar-date,
.section-calendar-parent-title {
  font-size: 1.2rem;
  color: #666;
}

.section-calendar-article-title {
  font-size: 1.6rem;
  font-weight: 700;
  word-break: break-all;
  transition: 0.3s color;
}

.section-calendar-results-inner::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 6px;
}

.section-calendar-results-inner::-webkit-scrollbar-thumb {
  background-color: #c4c4c4;
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  border-radius: 6px;
}

/* 注目特集 ===== */
.section-feature-img-wrap {
  margin-top: 24px;
}

.feature-img-link:not(:root) {
  display: block;
  text-decoration: none;
}

.feature-img-cnt {
  margin-top: 16px;
}

.feature-img-text {
  margin: 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
}

.feature-img-cnt-link:not(:root) {
  display: inline-block;
  margin-top: 12px;
  padding-left: 16px;
  position: relative;
  font-size: 1.4rem;
  text-decoration: none;
}

.feature-img-cnt-link:not(:root) .icon-right-arrow {
  color: #e6001e;
  position: absolute;
  font-size: 1rem;
  top: 50%;
  left: 0;
  margin-top: -5px;
}

.feature-img-cnt-link:not(:root):hover {
  color: #d32f2f;
}

.feature-img-bottom {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
}

.feature-img-bottom .standard-btn-box {
  margin-top: 16px;
  margin-right: 0;
}

/* 前文 ===== */
.section-lead-box {
  margin-top: 14px;
}

.section-lead-box.is-sub {
  margin-top: 24px;
}

.section-lead-box.is-sub .section-lead-text {
  color: #666;
}

.section-lead-text {
  margin: 0;
  font-size: 1.4rem;
}

/* タグ ===== */
.section-tags-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 12px;
}

.section-tags-box.is-main {
  margin-top: 24px;
}

.section-tags-col.is-left {
  margin-right: 16px;
}

.section-tags-link:not(:root) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  text-decoration: none;
  margin-top: -4px;
}

.section-tags-link:not(:root) .icon-and {
  margin: 4px 6px 0;
}

.section-tags-link:not(:root):hover .section-tags-link-tag {
  background-color: #d32f2f;
  color: #fff;
  border-color: #d32f2f;
}

.section-tags-link-tag {
  display: block;
  background-color: #f6f6f6;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  font-size: 1.4rem;
  padding: 2px 8px;
  margin-top: 4px;
  transition: 0.3s color, 0.3s background-color, 0.3s border-color;
}

.section-tags-link-tag .icon-tag-sharp {
  font-size: 1.2rem;
}

.section-tags-link-text {
  display: block;
  margin-left: 12px;
  margin-top: 4px;
  font-size: 1.4rem;
  font-weight: 700;
}

.section-tags-info {
  font-size: 1.1rem;
  color: #666;
}

/* デジタル雑誌 ===== */
.section-magazine-box {
  padding: 32px;
  background-color: #f6f6f6;
}

.section-magazine-items {
  display: flex;
  flex-wrap: wrap;
  margin: 32px 0 0;
  padding: 0;
  list-style: none;
}

.section-magazine-items .section-magazine-item {
  width: calc( (100% / 3) - ((31px * (3 - 1)) / 3));
  margin-right: 31px;
}

.section-magazine-items .section-magazine-item:nth-of-type(3n) {
  margin-right: 0;
}

.section-magazine-items .section-magazine-item:nth-of-type(-n + 3) {
  margin-top: 0;
}

.section-magazine-item {
  margin: 30px 31px 0 0;
}

.section-magazine-link:not(:root) {
  display: block;
  text-decoration: none;
}

.section-magazine-link:not(:root):hover .section-magazine-img {
  transform: scale(1.06);
}

.section-magazine-link:not(:root):hover .section-magazine-link-title {
  color: #d32f2f;
}

.section-magazine-img-box {
  position: relative;
  overflow: hidden;
}

.section-magazine-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.section-magazine-link-date {
  display: block;
  margin-top: 14px;
  font-size: 1.2rem;
  font-weight: 700;
  color: #666;
}

.section-magazine-link-title {
  display: block;
  margin-top: 2px;
  font-size: 1.6rem;
  font-weight: 700;
  transition: 0.3s color;
  line-height: 1.4;
}

/* 雑誌紹介 ===== */
.section-magazine-main-box {
  padding: 24px;
  background-color: #f6f6f6;
}

.section-magazine-main-cnt-box {
  display: flex;
  margin-top: 24px;
}

.section-magazine-main-img-box {
  width: 168px;
  margin-right: 24px;
  overflow: hidden;
}

.section-magazine-main-img {
  transition: transform 0.4s ease-in-out;
}

.section-magazine-main-cnt {
  width: calc(100% - 168px - 24px);
}

.section-magazine-main-parent-title {
  display: block;
  margin-bottom: 8px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
}

.section-magazine-main-title {
  display: block;
  font-size: 1.8rem;
  font-weight: 700;
  color: #d32f2f;
}

.section-magazine-main-text {
  margin: 8px 0 0;
  font-size: 1.4rem;
  line-height: 1.5;
}

.section-magazine-main-img-link:not(:root) {
  display: block;
  margin-right: 24px;
  text-decoration: none;
}

.section-magazine-main-img-link:not(:root) .section-magazine-main-img-box {
  margin-right: 0;
}

.section-magazine-main-img-link:not(:root):hover .section-magazine-main-img {
  transform: scale(1.06);
}

/* バックナンバー ===== */
.backnumber-main-box {
  margin-top: 32px;
  display: flex;
}

.backnumber-main-box.is-grounding {
  margin-top: 0;
}

.backnumber-main-img-box {
  width: 226px;
  overflow: hidden;
  margin-right: 32px;
}

.backnumber-main-img-link:not(:root) {
  display: block;
}

.backnumber-main-img-link:not(:root):hover .backnumber-main-img {
  transform: scale(1.06);
}

.backnumber-main-img {
  transition: transform 0.4s ease-in-out;
}

.backnumber-main-cnt {
  width: calc(100% - (226px + 32px));
}

.backnumber-main-tag-items {
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.backnumber-main-tag-items .backnumber-main-item:last-of-type {
  margin-right: 0;
}

.backnumber-main-item {
  display: flex;
  background-color: #d32f2f;
  border-radius: 2px;
  font-size: 1.2rem;
  color: #fff;
  padding: 2px 8px;
  margin: 0 8px 4px 0;
}

.backnumber-main-title-link:not(:root) {
  display: block;
  text-decoration: none;
}

.backnumber-main-title-link:not(:root):visited {
  color: #666;
}

.backnumber-main-title-link:not(:root):hover {
  color: #d32f2f;
}

.backnumber-main-page-title {
  margin: 0;
}

.backnumber-main-title {
  display: block;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}

.backnumber-main-follow-box {
  margin-top: 6px;
}

.backnumber-main-text {
  display: block;
  margin: 16px 0 0;
  font-size: 1.4rem;
  line-height: 1.5;
}

/* バックナンバーリスト ===== */
.backnumber-list-items {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.backnumber-list-items .backnumber-list-item:first-of-type .backnumber-list-link:not(:root) {
  padding-top: 0;
}

.backnumber-list-item {
  margin: 0;
  border-bottom: 1px solid #ebebeb;
}

.backnumber-list-item.is-hide {
  display: none;
}

.backnumber-list-item.is-show-btn {
  border-bottom: none;
}

.backnumber-list-link:not(:root) {
  position: relative;
  display: flex;
  text-decoration: none;
  padding: 24px 0 16px;
}

.backnumber-list-link:not(:root):visited .backnumber-list-title {
  color: #666;
}

.backnumber-list-link:not(:root):hover .backnumber-list-img {
  transform: scale(1.06);
}

.backnumber-list-link:not(:root):hover .backnumber-list-title {
  color: #d32f2f;
}

.backnumber-list-link:not(:root).is-center {
  align-items: center;
}

.backnumber-list-link:not(:root).is-wide {
  padding: 16px 0;
}

.backnumber-list-link:not(:root).is-wide .backnumber-list-cnt {
  padding-right: 16px;
}

.backnumber-list-link:not(:root).is-ranking {
  padding-left: 36px;
}

.backnumber-list-link:not(:root) .icon-lock {
  color: #dadada;
  margin-left: 8px;
}

.backnumber-list-cnt {
  width: calc(100% - 143px);
  padding-right: 12px;
}

.backnumber-list-info-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.backnumber-list-info-items .backnumber-list-info-item:last-of-type {
  margin-right: 0;
}

.backnumber-list-info-item {
  margin: 0 8px 8px 0;
  font-size: 1.2rem;
  color: #666;
  line-height: 2.2;
}

.backnumber-list-info-item.is-parent-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.backnumber-list-title {
  font-size: 1.8rem;
  font-weight: 700;
  transition: 0.3s color;
}

.backnumber-list-text {
  display: block;
  margin: 8px 0 0;
  color: #666;
  font-size: 1.2rem;
}

.backnumber-list-img-box {
  width: 143px;
  overflow: hidden;
}

.backnumber-list-img {
  width: 143px;
  height: 107px;
  -o-object-fit: contain;
  object-fit: contain;
  transition: transform 0.4s ease-in-out;
}

.backnumber-list-show-btn:not(:root) {
  display: block;
  text-decoration: none;
  border: none;
  background-color: transparent;
  border-radius: 0;
  width: 100%;
  position: relative;
  text-align: center;
  padding: 24px 0 0;
  font-size: 1.8rem;
  transition: 0.3s color;
}

.backnumber-list-show-btn:not(:root):hover {
  color: #d32f2f;
}

.backnumber-list-show-btn:not(:root) .icon-expand {
  color: #d32f2f;
  margin-left: 12px;
  font-size: 1.4rem;
}

.backnumber-list-show-icon {
  position: absolute;
  top: 30px;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.backnumber-list-show-icon .icon-function {
  font-size: 1.8rem;
  color: #b6b6b6;
}

.backnumber-list-info {
  display: flex;
  align-items: center;
  margin-top: 8px;
  font-size: 1.1rem;
  color: #666;
  line-height: 1;
}

.backnumber-list-info .icon-time {
  font-size: 1.2rem;
  color: #dadada;
  margin-right: 6px;
}

.backnumber-list-ranking {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  font-size: 1rem;
  font-weight: 700;
  background-color: #f6f6f6;
}

.backnumber-list-ranking.is-top {
  background-color: transparent;
  color: #fff;
  background-size: 20px auto;
  background-repeat: no-repeat;
  background-position: center top;
  align-items: flex-end;
}

.backnumber-list-ranking.is-top.is-first {
  background-image: url("/images/2021/common/icon_ranking_first.svg");
}

.backnumber-list-ranking.is-top.is-second {
  background-image: url("/images/2021/common/icon_ranking_second.svg");
}

.backnumber-list-ranking.is-top.is-third {
  background-image: url("/images/2021/common/icon_ranking_third.svg");
}

.backnumber-list-preparation {
  position: relative;
  display: flex;
  padding: 24px 0 16px;
}

.backnumber-list-preparation.is-wide {
  padding: 16px 0;
}

.backnumber-list-preparation .backnumber-list-cnt {
  padding-right: 0;
  width: 100%;
}

.backnumber-list-preparation .backnumber-list-title {
  color: #666;
}

/* 説明 ===== */
.section-description-text {
  margin: 24px 0 0;
  color: #666;
  font-size: 1.2rem;
  line-height: 1.4;
}

/* ランキングリスト ===== */
.ranking-list-items {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.ranking-list-items .ranking-list-item:first-of-type .ranking-panel-link:not(:root).is-ranking-only-num {
  padding-top: 0;
}

.ranking-list-items .ranking-list-item:last-of-type .ranking-panel-link:not(:root) {
  padding-bottom: 0;
}

.ranking-list-items.is-img-lock .ranking-list-item {
  border-bottom: 1px solid #ebebeb;
}

.ranking-list-items.is-img-lock .ranking-list-item:first-of-type .ranking-panel-link:not(:root) {
  padding-top: 0;
}

.ranking-list-items.is-img-lock .ranking-list-item:last-of-type {
  border-bottom: 1px solid #ebebeb;
}

.ranking-list-items.is-img-lock .ranking-list-item:last-of-type .ranking-panel-link:not(:root) {
  padding-bottom: 16px;
}

.ranking-list-items.is-col-2 {
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
}

.ranking-list-items.is-col-2 .ranking-list-item {
  width: calc( (100% / 2) - ((48px * (2 - 1)) / 2));
  margin-right: 48px;
  border-bottom: 1px solid #ebebeb;
}

.ranking-list-items.is-col-2 .ranking-list-item:nth-of-type(2n) {
  margin-right: 0;
}

.ranking-list-items.is-col-2 .ranking-list-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.ranking-list-items.is-col-2 .ranking-list-item:nth-of-type(-n + 2) .ranking-panel-link:not(:root) {
  padding-top: 0;
}

.ranking-list-items.is-col-2 .ranking-panel-link:not(:root) {
  padding: 24px 0 16px;
}

.ranking-list-items.is-col-2 .ranking-panel-ranking-box {
  top: 50%;
  margin-top: -10px;
}

.ranking-list-items.is-col-2 .ranking-panel-cnt {
  width: calc(100% - 143px);
  padding-left: 48px;
  padding-right: 16px;
}

.ranking-list-items.is-col-2 .ranking-panel-parent-title {
  margin-bottom: 8px;
}

.ranking-list-items.is-col-2 .ranking-panel-title {
  font-size: 1.8rem;
}

.ranking-list-items.is-col-2 .ranking-panel-img-box {
  width: 143px;
}

.ranking-list-items.is-col-2.is-magazine .ranking-panel-link:not(:root) {
  align-items: center;
}

.ranking-list-items.is-col-2.is-magazine .ranking-panel-link:not(:root).is-magazine .ranking-panel-cnt {
  width: calc(100% - 120px);
  padding-right: 22px;
}

.ranking-list-items.is-col-2.is-magazine .ranking-panel-link:not(:root).is-magazine .ranking-panel-img-box {
  width: 120px;
}

.ranking-list-items.is-col-2.is-magazine .ranking-panel-info {
  margin-top: 8px;
}

.ranking-list-items.is-not-tab {
  margin-top: 48px;
}

.ranking-list-item {
  margin: 0;
}

.ranking-panel-link:not(:root) {
  display: flex;
  padding: 8px 0;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.ranking-panel-link:not(:root) .icon-lock,
.ranking-panel-link:not(:root) .icon-outbound {
  color: #dadada;
  margin-left: 4px;
}

.ranking-panel-link:not(:root):visited .ranking-panel-title {
  color: #666;
}

.ranking-panel-link:not(:root):hover .ranking-panel-img {
  transform: scale(1.06);
}

.ranking-panel-link:not(:root):hover .ranking-panel-title {
  color: #d32f2f;
}

.ranking-panel-link:not(:root).is-ranking-only-num .ranking-panel-ranking-box {
  top: 50%;
  margin-top: -10px;
}

.ranking-panel-link:not(:root).is-magazine {
  padding: 8px 0;
}

.ranking-panel-link:not(:root).is-magazine .ranking-panel-cnt {
  width: calc(100% - 60px);
}

.ranking-panel-link:not(:root).is-magazine .ranking-panel-img-box {
  width: 60px;
}

.ranking-panel-link:not(:root).is-img-lock {
  padding: 16px 0;
}

.ranking-panel-link:not(:root).is-img-lock .ranking-panel-cnt {
  width: calc(100% - 52px);
}

.ranking-panel-link:not(:root).is-img-lock .ranking-panel-lock-box {
  width: 52px;
}

.ranking-panel-cnt {
  position: relative;
  width: calc(100% - 80px);
  padding-left: 36px;
  padding-right: 12px;
  overflow: hidden;
}

.ranking-panel-parent-title {
  display: block;
  font-size: 1.2rem;
  color: #666;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.9;
}

.ranking-panel-title {
  display: inline;
  font-size: 1.4rem;
  font-weight: 700;
  transition: 0.3s color;
}

.ranking-panel-img-box {
  position: relative;
  overflow: hidden;
  width: 80px;
}

.ranking-panel-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.ranking-panel-ranking-box {
  position: absolute;
  top: 0;
  left: 0;
}

.ranking-panel-ranking {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-color: #f6f6f6;
  font-size: 1rem;
  font-weight: 700;
  color: #000;
}

.ranking-panel-ranking.is-top {
  background-color: transparent;
  color: #fff;
  background-size: 20px auto;
  background-repeat: no-repeat;
  background-position: center top;
  align-items: flex-end;
}

.ranking-panel-ranking.is-top.is-first {
  background-image: url("/images/2021/common/icon_ranking_first.svg");
}

.ranking-panel-ranking.is-top.is-second {
  background-image: url("/images/2021/common/icon_ranking_second.svg");
}

.ranking-panel-ranking.is-top.is-third {
  background-image: url("/images/2021/common/icon_ranking_third.svg");
}

.ranking-panel-ranking.is-normal {
  background-color: transparent;
  font-size: 1.4rem;
  justify-content: flex-start;
  color: #666;
}

.ranking-panel-text {
  display: block;
  font-size: 1.2rem;
  margin-top: 6px;
}

.ranking-panel-info {
  display: block;
  font-size: 1.2rem;
  margin-top: 14px;
  color: #666;
}

.ranking-panel-lock-box {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
}

.ranking-panel-note {
  margin: 24px 0 0;
  font-size: 1.1rem;
  text-align: right;
  color: #666;
}

/* もっと見る ===== */
.section-more-link-box {
  margin-top: 16px;
  text-align: right;
}

.section-more-link-box.is-short {
  margin-top: 12px;
}

.section-more-link:not(:root) {
  display: inline-block;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  padding-left: 22px;
  text-decoration: none;
}

.section-more-link:not(:root) .icon-right-arrow {
  position: absolute;
  top: 50%;
  left: 6px;
  margin-top: -5px;
  font-size: 1.1rem;
  color: #d32f2f;
}

.section-more-link:not(:root):hover {
  color: #d32f2f;
}

/* タブ ===== */
.section-tab-box {
  margin-top: 12px;
}

.section-tab-box.is-main .section-tab-btn-items {
  border-bottom-color: rgba(0, 0, 0, 0.1);
}

.section-tab-box.is-main .section-tab-btn-item {
  width: auto;
  min-width: 100px;
}

.section-tab-box.is-main .section-tab-btn:not(:root) {
  font-size: 1.8rem;
}

.section-tab-box.is-main .section-tab-btn:not(:root):after {
  height: 3px;
  bottom: -1px;
}

.section-tab-box.is-modal {
  margin-top: 0;
  height: calc(100% - 78px);
}

.section-tab-box.is-modal .section-tab-btn-items {
  border-bottom-color: #ccc;
  padding-left: 16px;
  overflow-x: auto;
}

.section-tab-box.is-modal .section-tab-btn-item {
  width: auto;
}

.section-tab-box.is-modal .section-tab-btn:not(:root) {
  font-size: 1.4rem;
  padding: 8px 12px;
  white-space: nowrap;
  height: 40px;
}

.section-tab-box.is-modal .section-tab-cnt-box {
  margin-top: 0;
  height: calc(100% - 40px);
}

.section-tab-box.is-modal .section-tab-cnt-items {
  height: 100%;
}

.section-tab-box.is-modal .section-tab-cnt-item {
  height: 100%;
}

.section-tab-btn-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  border-bottom: 1px solid #d32f2f;
}

.section-tab-btn-item {
  margin: 0;
  width: calc(100% / 3);
}

.section-tab-btn:not(:root) {
  display: block;
  text-align: center;
  width: 100%;
  text-decoration: none;
  border-radius: 0;
  border: none;
  background-color: transparent;
  margin: 0;
  padding: 12px;
  position: relative;
  font-size: 1.6rem;
  color: #000;
  transition: 0.3s color;
}

.section-tab-btn:not(:root):after {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background-color: transparent;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: 0.3s background-color;
}

.section-tab-btn:not(:root).is-active, .section-tab-btn:not(:root):hover {
  color: #d32f2f;
}

.section-tab-btn:not(:root).is-active:after, .section-tab-btn:not(:root):hover:after {
  background-color: #d32f2f;
}

.section-tab-btn:not(:root).is-active {
  font-weight: 700;
}

.section-tab-cnt-box {
  margin-top: 16px;
}

.section-tab-cnt-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.section-tab-cnt-item {
  margin: 0;
  display: none;
}

.section-tab-cnt-item.is-active {
  display: block;
}

.section-tab-search-monthly {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 16px;
}

.section-tab-search-monthly-input-box {
  display: flex;
  align-items: center;
  margin-right: 16px;
}

/* ページ内リンク ===== */
.page-link-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.page-link-items .page-link-item:last-of-type {
  margin-right: 0;
}

.page-link-item {
  margin: 12px 24px 0 0;
}

.page-link:not(:root) {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  position: relative;
  padding-right: 24px;
  text-decoration: none;
}

.page-link:not(:root):hover {
  color: #d32f2f;
}

.page-link:not(:root) .icon-down-arrow {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -7px;
  color: #d32f2f;
}

/* 著者 ===== */
.author-article-box {
  display: flex;
  margin-top: 24px;
  align-items: center;
}

.author-article-box .author-article-follow {
  visibility: hidden;
}

.author-article-img-box {
  position: relative;
  width: 80px;
  height: 80px;
  margin-right: 16px;
  overflow: hidden;
  border-radius: 50%;
  flex-shrink: 0;
}

.uthor-article-img {
  -webkit-transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  transform: translate(-50%, -50%);
}

.author-article-info {
  width: calc(100% - 238px);
  flex-shrink: 0;
}

.author-article-name {
  margin: 6px 0 0 0;
  font-size: 1.8rem;
  font-weight: 700;
}

.author-article-position {
  margin: 6px 0 0 0;
  font-size: 1.2rem;
  color: #666;
}

/* タグリスト ===== */
.section-tag-list-box {
  margin-top: 24px;
}

.section-tag-list-box.is-hd-search {
  margin-top: 0;
}

.section-tag-list-box.is-hd-search .section-tag-list-items {
  margin: -6px 0;
}

.section-tag-list-box.is-hd-search .section-tag-list-item {
  margin: 6px 8px 6px 0;
}

.section-tag-list-items {
  display: flex;
  flex-wrap: wrap;
  margin: -4px 0;
  padding: 0;
  list-style: none;
}

.section-tag-list-item {
  margin: 4px 8px 4px 0;
}

.section-tag-list-link:not(:root) {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  text-decoration: none;
  padding: 2px 8px;
  background-color: #f6f6f6;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}

.section-tag-list-link:not(:root) .icon-tag-sharp {
  font-size: 1.2rem;
}

.section-tag-list-link:not(:root):hover {
  color: #fff;
  background-color: #d32f2f;
  border-color: #d32f2f;
}

/* コンテンツの説明 ===== */
.contents-description-box {
  padding: 32px;
  background-color: #f6f6f6;
}

.contents-description-text {
  margin: 18px 0 0;
  font-size: 1.1rem;
  color: #666;
}

/* 連載 ========== */
/* 連載 ===== */
.serial-list-box {
  margin-top: 24px;
}

.serial-list-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.serial-list-items .serial-list-item {
  width: calc( (100% / 2) - ((46px * (2 - 1)) / 2));
  margin-right: 46px;
}

.serial-list-items .serial-list-item:nth-of-type(2n) {
  margin-right: 0;
}

.serial-list-items .serial-list-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.serial-list-item {
  margin: 28px 46px 0 0;
}

.serial-list-cnt-box {
  display: flex;
}

.serial-list-img-link:not(:root) {
  display: block;
  text-decoration: none;
}

.serial-list-img-link:not(:root):hover .serial-list-img {
  transform: scale(1.06);
}

.serial-list-img-box {
  width: 113px;
  overflow: hidden;
  margin-right: 16px;
}

.serial-list-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.serial-list-cnt {
  width: calc(100% - (113px + 16px));
}

.serial-list-title-link:not(:root) {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  color: #666;
  margin-bottom: 16px;
  text-decoration: none;
}

.serial-list-title-link:not(:root):visited {
  color: #666;
}

.serial-list-title-link:not(:root):hover {
  color: #d32f2f;
}

.serial-list-article-link:not(:root) {
  display: block;
  text-decoration: none;
}

.serial-list-article-link:not(:root):visited .serial-list-article-title {
  color: #666;
}

.serial-list-article-link:not(:root):hover .serial-list-article-img {
  transform: scale(1.06);
}

.serial-list-article-link:not(:root):hover .serial-list-article-title {
  color: #d32f2f;
}

.serial-list-info {
  display: block;
  font-size: 1.2rem;
  color: #666;
}

.serial-list-article {
  margin-top: 4px;
  display: flex;
}

.serial-list-article-title-box {
  width: calc(100% - 84px);
  padding-right: 8px;
}

.serial-list-article-title {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  transition: 0.3s color;
  line-height: 1.4;
}

.serial-list-article-img-box {
  width: 84px;
  overflow: hidden;
}

.serial-list-article-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

/* 連載リスト ===== */
.series-list-box {
  margin-top: 24px;
}

.series-list-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.series-list-items .series-list-item:first-of-type {
  margin-top: 0;
}

.series-list-item {
  margin: 26px 0 0;
  display: flex;
}

.series-list-img-box {
  width: 120px;
  overflow: hidden;
  margin-right: 24px;
}

.series-list-link:not(:root) {
  display: block;
}

.series-list-link:not(:root):hover .series-list-img {
  transform: scale(1.06);
}

.series-list-img {
  transition: transform 0.4s ease-in-out;
}

.series-list-cnt {
  width: calc(100% - 120px - 24px);
}

.series-list-title-link:not(:root) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  text-decoration: none;
}

.series-list-title-link:not(:root):hover .series-list-title {
  color: #d32f2f;
}

.series-list-title-link:not(:root) .series-list-title-tag:last-of-type {
  margin-right: 0;
}

.series-list-title {
  font-size: 2.4rem;
  font-weight: 700;
  transition: 0.3s color;
  line-height: 1.2;
}

.series-list-title + .series-list-title-tag {
  margin-left: 12px;
}

.series-list-title-tag {
  margin: 2px 8px 2px 0;
  padding: 4px 12px;
  border-radius: 2px;
  font-size: 1.1rem;
  background-color: #d32f2f;
  color: #fff;
}

.series-list-parent-info-items {
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.series-list-parent-info-items .series-list-parent-info-item:last-of-type {
  margin-right: 0;
}

.series-list-parent-info-item {
  margin: 4px 12px 0 0;
  font-size: 1.2rem;
  color: #666;
}

.series-list-child-box {
  margin-top: 30px;
}

.series-list-child-info-items {
  margin: 0 0 2px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.series-list-child-info-items .series-list-child-info-item:last-of-type {
  margin-right: 0;
}

.series-list-child-info-item {
  margin: 0 8px 4px 0;
  font-size: 1.2rem;
}

.series-list-child-info-item.is-emph {
  color: #d32f2f;
}

.series-list-child-title {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
}

/* 未来消費カレンダー ========== */
/* 未来消費カレンダー ===== */
.container-calendar > .flex {
  display: flex;
  position: relative;
  border: 1px solid #ccc;
  border-top: 0;
}

.container-calendar > .flex .header-year {
  width: 70px;
  height: 55px;
  padding: 20px 0;
  border-right: 1px solid #ccc;
  border-top: 1px solid #ccc;
  font-size: 1.4rem;
  color: #666;
  line-height: 1;
  text-align: center;
}

.container-calendar > .flex .header-month {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 150px;
  height: 55px;
  padding: 0 0;
  border-right: 1px solid #ccc;
  border-top: 1px solid #ccc;
  color: #666;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
}

.container-calendar .standard-btn-box.future-calendar-header-today {
  margin: 0 0 0 8px;
}

.container-calendar .standard-btn.is-calendar-current {
  min-width: 1px;
  padding: 6px 16px;
  font-size: 1.2rem;
}

.container-calendar .scale-line {
  position: absolute;
  display: inline-block;
  border-top: 2px solid #d32f2f;
  width: 32px;
  height: 0;
  top: 90px;
  right: -16px;
  z-index: 1;
}

.container-calendar .header-filter {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 0;
  height: 55px;
  padding: 20px 30px;
  color: #666;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  border-top: 1px solid #ccc;
}

.container-calendar .header-filter > ul {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
}

.container-calendar .header-filter > ul > li {
  margin: 0;
  padding: 0;
}

.container-calendar .header-filter > ul > li .custom-checkbox {
  display: none;
}

.container-calendar .header-filter > ul > li .custom-checkbox + span {
  display: flex;
  position: relative;
  padding-left: 24px;
  line-height: 1;
  font-size: 1.4rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.container-calendar .header-filter > ul > li .custom-checkbox + span::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 16px;
  height: 16px;
  border: 1px solid #ccc;
  border-radius: 2px;
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.container-calendar .header-filter > ul > li .custom-checkbox:checked + span {
  color: #d32f2f;
}

.container-calendar .header-filter > ul > li .custom-checkbox:checked + span::before {
  border: 1px solid #d32f2f;
  background-color: #d32f2f;
}

.container-calendar .header-filter > ul > li .custom-checkbox:checked + span::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 5px;
  width: 6px;
  height: 12px;
  -webkit-transform: rotate(40deg);
  transform: rotate(40deg);
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
}

.container-calendar .header-filter > ul > li .custom-checkbox:disabled + span::before {
  background-color: #ccc;
}

.container-calendar .header-filter > ul > li > label:hover .custom-checkbox + span {
  color: #d32f2f;
}

.container-calendar .header-filter > ul > li > label:hover .custom-checkbox + span::before {
  border: 1px solid #d32f2f;
}

.container-calendar .calendar {
  position: relative;
  height: 544px;
  border: 1px solid #ccc;
  border-top: 0;
}

.container-calendar .calendar .calendar-anchor.current {
  color: #d32f2f;
}

.container-calendar .calendar .year {
  position: absolute;
  width: 70px;
  height: 100%;
  color: #666;
  font-size: 1.4rem;
  font-weight: 700;
  border-right: 1px solid #ccc;
  top: 0;
  left: 0;
}

.container-calendar .calendar .year .year-inner {
  position: relative;
  height: 100%;
}

.container-calendar .calendar .year .year-inner .flex-rows {
  display: flex;
  flex-direction: column;
  height: 100%;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.container-calendar .calendar .year .year-inner .flex-rows a {
  text-decoration: none;
  font-size: 1.4rem;
}

.container-calendar .calendar .year .year-inner .flex-rows a:hover {
  color: #d32f2f;
  text-decoration: none;
}

.container-calendar .calendar .month {
  position: absolute;
  width: 150px;
  height: 100%;
  color: #666;
  background-color: #f6f6f6;
  border-right: 1px solid #ccc;
  top: 0;
  left: 70px;
  overflow: hidden;
}

.container-calendar .calendar .month .month-inner {
  position: relative;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  margin-right: -15px;
}

.container-calendar .calendar .month .month-inner .left-line-box {
  border-left: 1px solid #ccc;
  margin-left: 22px;
  padding-bottom: 600px;
}

.container-calendar .calendar .month .month-inner .num-month {
  color: #666;
  font-size: 1.8rem;
  font-weight: 700;
}

.container-calendar .calendar .month .month-inner .num-month > a {
  display: inline-block;
  margin: 21px 16px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  font-size: 1.8rem;
  text-decoration: none;
}

.container-calendar .calendar .month .month-inner .num-month > a .count {
  font-size: 1.2rem;
  font-weight: 500;
}

.container-calendar .calendar .month .month-inner .num-month > a:hover {
  color: #d32f2f;
  text-decoration: none;
}

.container-calendar .calendar .month .month-inner .plate .calendar-anchor {
  display: inline-block;
  margin: 21px 16px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  font-size: 1.8rem;
}

.container-calendar .calendar .month .month-inner .plate .calendar-anchor .plate-year-plan {
  position: relative;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.container-calendar .calendar .month .month-inner .season > a,
.container-calendar .calendar .month .month-inner .season > span {
  position: relative;
  display: inline-block;
  width: 24px;
  height: 24px;
  left: -12px;
  margin: 18px 0;
}

.container-calendar .calendar .month .month-inner .season .i {
  position: relative;
  display: inline-block;
  width: 24px;
  height: 24px;
}

.container-calendar .calendar .month .month-inner .season .i::before {
  content: '';
  position: relative;
  display: inline-block;
  background-color: #fff;
  width: 24px;
  height: 24px;
  top: 0;
  left: 0;
  border: 1px solid #888;
  border-radius: 50%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.container-calendar .calendar .month .month-inner .season .i::after {
  content: '';
  position: relative;
  color: #666;
  font-size: 1.1rem;
  line-height: 1;
  top: -24px;
  left: 6px;
}

.container-calendar .calendar .month .month-inner .season .i.icon-spring::after {
  content: '春';
}

.container-calendar .calendar .month .month-inner .season .i.icon-summer::after {
  content: '夏';
}

.container-calendar .calendar .month .month-inner .season .i.icon-autumn::after {
  content: '秋';
}

.container-calendar .calendar .month .month-inner .season .i.icon-winter::after {
  content: '冬';
}

.container-calendar .calendar .month .month-inner .season a {
  text-decoration: none;
}

.container-calendar .calendar .month .month-inner .season a:hover {
  color: #d32f2f;
  text-decoration: none;
}

.container-calendar .calendar .month .month-inner .season a:hover .i::before {
  background: #d32f2f;
  border-color: #d32f2f;
}

.container-calendar .calendar .month .month-inner .season a:hover .i::after {
  color: #fff;
}

.container-calendar .calendar .month .month-inner .season a.current .i::before {
  background: #d32f2f;
  border-color: #d32f2f;
}

.container-calendar .calendar .month .month-inner .season a.current .i::after {
  color: #fff;
}

.container-calendar .results {
  position: absolute;
  width: 898px;
  height: 100%;
  top: 0;
  left: 220px;
  overflow: hidden;
}

.container-calendar .results .results-inner {
  position: relative;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  padding: 0 30px;
}

.container-calendar .results .num-month-large,
.container-calendar .results .num-year-large {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 16px;
  padding-bottom: 8px;
  color: #666;
}

.container-calendar .results .num-month-large .month-small,
.container-calendar .results .num-month-large .full-year-small,
.container-calendar .results .num-month-large .year-small,
.container-calendar .results .num-year-large .month-small,
.container-calendar .results .num-year-large .full-year-small,
.container-calendar .results .num-year-large .year-small {
  font-size: 1.2rem;
}

.container-calendar .results .article {
  padding: 16px 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.container-calendar .results .article > .flex {
  display: flex;
  justify-content: space-between;
  border: 0;
}

.container-calendar .results .article > .flex figure {
  padding-left: 20px;
  width: 93px;
  align-self: center;
  order: 2;
}

.container-calendar .results .article > .flex figure img {
  transition: transform 0.4s ease-in-out;
}

.container-calendar .results .article:hover .article-title {
  color: #d32f2f;
}

.container-calendar .results .article:hover figure img {
  transform: scale(1.06);
}

.container-calendar .results .article .date {
  font-size: 1.4rem;
}

.container-calendar .results .article .article-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 4px;
}

.container-calendar .results .article .block {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 4;
}

.c-modal .flex {
  display: flex;
  justify-content: space-between;
}

.c-modal .flex .main-article-date {
  font-size: 1.4rem;
  color: #666;
}

.c-modal .flex .main-article-title {
  font-size: 2.4rem;
  font-weight: 700;
  margin-top: 4px;
}

.c-modal .flex .bplead main-article-summary {
  margin-top: 16px;
  line-height: 1.66;
  font-size: 1.8rem;
}

.c-modal .flex .bplead main-article-summary p {
  margin: 16px 0;
}

.c-modal .flex figure {
  margin-left: 32px;
  position: relative;
  flex-shrink: 0;
}

.c-modal .flex figure img {
  width: 300px;
  height: 225px;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.c-modal .loading-absolute {
  text-align: center;
}

/* サイドカラム ========== */
/* まずはこちらの記事から ===== */
.side-welcome-box {
  border: 2px solid #ebebeb;
  padding: 16px;
}

.side-welcome-lead {
  margin: 8px 0 0;
  font-size: 1.1rem;
  color: #666;
}

/* 記事リスト ===== */
.side-tags-box + .ranking-list-box {
  margin-top: 24px;
}

.side-articles-list-items {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.side-articles-list-items .side-articles-list-item:last-of-type {
  border-bottom: 1px solid #ebebeb;
}

.side-articles-list-items.is-welcome .side-articles-list-item:last-of-type {
  border-bottom: none;
}

.side-articles-list-items.is-welcome .side-articles-list-item:last-of-type .side-articles-panel-link:not(:root) {
  padding-bottom: 0;
}

.side-articles-list-items.is-magazine .side-articles-list-item {
  border-top: none;
}

.side-articles-list-items.is-magazine .side-articles-list-item:last-of-type {
  border-bottom: none;
}

.side-articles-list-items.is-magazine .side-articles-list-item:last-of-type .side-articles-panel-link:not(:root) {
  padding-bottom: 0;
}

.side-articles-list-item {
  margin: 0;
  border-top: 1px solid #ebebeb;
}

.side-articles-panel-link:not(:root) {
  display: flex;
  padding: 16px 0;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.side-articles-panel-link:not(:root) .icon-lock,
.side-articles-panel-link:not(:root) .icon-outbound {
  color: #dadada;
  margin-left: 4px;
}

.side-articles-panel-link:not(:root):visited .side-articles-panel-title {
  color: #666;
}

.side-articles-panel-link:not(:root):hover .side-articles-panel-img {
  transform: scale(1.06);
}

.side-articles-panel-link:not(:root):hover .side-articles-panel-title {
  color: #d32f2f;
}

.side-articles-panel-link:not(:root).is-welcome .side-articles-panel-cnt {
  padding-right: 8px;
}

.side-articles-panel-link:not(:root).is-magazine {
  padding: 8px 0;
}

.side-articles-panel-link:not(:root).is-magazine .side-articles-panel-cnt {
  width: calc(100% - 60px);
}

.side-articles-panel-link:not(:root).is-magazine .side-articles-panel-img-box {
  width: 60px;
}

.side-articles-panel-link:not(:root).is-magazine .side-articles-panel-parent-title {
  line-height: 1.9;
  margin-bottom: 2px;
}

.side-articles-panel-link:not(:root).is-magazine .side-articles-panel-title-box {
  line-height: 1.8;
}

.side-articles-panel-cnt {
  position: relative;
  width: calc(100% - 80px);
  padding-right: 12px;
  overflow: hidden;
}

.side-articles-panel-parent-title {
  display: block;
  font-size: 1.2rem;
  color: #666;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 2;
}

.side-articles-panel-title-box {
  line-height: 1.5;
}

.side-articles-panel-title {
  display: inline;
  font-size: 1.4rem;
  font-weight: 700;
  transition: 0.3s color;
}

.side-articles-panel-img-box {
  position: relative;
  overflow: hidden;
  width: 80px;
}

.side-articles-panel-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.side-articles-panel-text {
  display: block;
  font-size: 1.2rem;
  margin-top: 6px;
}

.side-articles-panel-info {
  display: block;
  font-size: 1.2rem;
  margin-top: 16px;
  color: #666;
}

/* 前文 ===== */
.side-lead-box {
  margin-top: 16px;
}

.side-lead-text {
  margin: 0;
  color: #666;
  font-size: 1.1rem;
  line-height: 1.7;
}

/* タグ ========== */
.side-tags-box {
  margin-top: 14px;
}

.side-tags-link:not(:root) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  text-decoration: none;
  font-weight: 700;
}

.side-tags-link:not(:root) .icon-and {
  margin: 4px 4px 0;
}

.side-tags-link:not(:root):hover .side-tags-link-tag {
  background-color: #d32f2f;
  color: #fff;
  border-color: #d32f2f;
}

.side-tags-link-tag {
  display: block;
  background-color: #f6f6f6;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  font-size: 1.1rem;
  padding: 2px;
  margin-top: 4px;
  transition: 0.3s color, 0.3s background-color, 0.3s border-color;
}

.side-tags-link-tag .icon-tag-sharp {
  font-size: 1rem;
}

.side-tags-link-text {
  display: block;
  margin: 4px 0 0 4px;
  font-size: 1.2rem;
}

/* 2列記事 ===== */
.side-articles-col-2-items {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.side-articles-col-2-items .side-articles-col-2-item {
  width: calc( (100% / 2) - ((20px * (2 - 1)) / 2));
  margin-right: 20px;
}

.side-articles-col-2-items .side-articles-col-2-item:nth-of-type(2n) {
  margin-right: 0;
}

.side-articles-col-2-items .side-articles-col-2-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.side-articles-col-2-items.is-seminar {
  margin-top: 24px;
}

.side-articles-col-2-items.is-seminar .side-articles-col-2-item {
  width: calc( (100% / 2) - ((24px * (2 - 1)) / 2));
  margin-right: 24px;
}

.side-articles-col-2-items.is-seminar .side-articles-col-2-item:nth-of-type(2n) {
  margin-right: 0;
}

.side-articles-col-2-items.is-seminar .side-articles-col-2-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.side-articles-col-2-item {
  margin: 24px 20px 0 0;
}

.side-articles-col-2-link:not(:root) {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.side-articles-col-2-link:not(:root):visited .side-articles-col-2-title {
  color: #666;
}

.side-articles-col-2-link:not(:root):hover .side-articles-col-2-img {
  transform: scale(1.06);
}

.side-articles-col-2-link:not(:root):hover .side-articles-col-2-title {
  color: #d32f2f;
}

.side-articles-col-2-link:not(:root) .icon-lock {
  color: #dadada;
  margin-left: 4px;
}

.side-articles-col-2-img-box {
  position: relative;
  overflow: hidden;
}

.side-articles-col-2-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.side-articles-col-2-icon-box {
  position: absolute;
  z-index: 2;
  bottom: 4px;
  right: 4px;
  width: 26px;
  height: 26px;
  border-radius: 26px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.5);
}

.side-articles-col-2-img-tag {
  display: block;
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
  font-size: 1.2rem;
  color: #fff;
  background-color: #d32f2f;
  padding: 2px 4px;
}

.side-articles-col-2-cnt {
  overflow: hidden;
  margin-top: 12px;
}

.side-articles-col-2-parent-title {
  display: block;
  font-size: 1.2rem;
  color: #666;
  margin-bottom: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.9;
}

.side-articles-col-2-title {
  display: inline;
  font-size: 1.4rem;
  font-weight: 700;
  transition: 0.3s color;
}

.side-articles-col-2-tag-items {
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.side-articles-col-2-tag-items .side-articles-col-2-tag-item:last-of-type {
  margin-right: 0;
}

.side-articles-col-2-tag-item {
  margin: 4px 8px 0 0;
  padding: 1px 8px;
  border-radius: 2px;
  font-size: 1.2rem;
  background-color: #d32f2f;
  color: #fff;
}

/* 未来消費カレンダー ===== */
.side-calendar-box {
  margin: 16px auto 0;
}

.side-calendar-box .flex {
  display: flex;
  border: none;
  position: relative;
}

.side-calendar {
  height: 349px;
  border: 1px solid #ebebeb;
  position: relative;
}

.side-calendar-results {
  width: 100%;
  left: 0;
  position: absolute;
  height: 100%;
  top: 0;
  overflow: hidden;
}

.side-calendar-results-inner {
  position: relative;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  padding: 0 16px;
}

.side-calendar-container-article {
  padding: 16px 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.side-calendar-date {
  line-height: 1.5;
  margin-top: 1px;
  margin-right: 8px;
  font-size: 1.2rem;
  color: #666;
}

.side-calendar-article-title {
  font-size: 1.4rem;
  font-weight: 700;
  transition: 0.3s color;
}

.side-calendar-link:not(:root) :hover {
  text-decoration: none;
}

.side-calendar-link:not(:root) :hover .side-calendar-article-title {
  color: #d32f2f;
}

.side-calendar-results-inner::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 6px;
}

.side-calendar-results-inner::-webkit-scrollbar-thumb {
  background-color: #c4c4c4;
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  border-radius: 6px;
}

/* マイページ ===== */
.side-mypage-box {
  padding: 32px 0;
  background-color: #f6f6f6;
}

.side-mypage-cnt {
  padding: 0 20px;
}

/* バナー ===== */
.side-feature-banner-link:not(:root) {
  display: block;
}

/* 追従要素 ===== */
.side-sticky-cnt {
  position: sticky;
  top: 16px;
}

/* 動画子記事右ペイン ===== */
.is-seminar-article.l-col-side {
  margin-top: 513px;
}

/* セミナー ========== */
/* メイン記事 ===== */
.seminar-main-box {
  margin-top: 24px;
}

.seminar-main-link:not(:root) {
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
  text-decoration: none;
}

.seminar-main-link:not(:root):visited .seminar-main-title {
  color: #666;
}

.seminar-main-link:not(:root):hover .seminar-main-img {
  transform: scale(1.06);
}

.seminar-main-link:not(:root):hover .seminar-main-title {
  color: #d32f2f;
}

.seminar-main-link:not(:root) .icon-lock {
  color: #dadada;
  margin-left: 4px;
  font-size: 2rem;
}

.seminar-main-img-box {
  position: relative;
  width: 772px;
  overflow: hidden;
  margin-right: 48px;
}

.seminar-main-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.seminar-main-icon-box {
  position: absolute;
  z-index: 2;
  bottom: 12px;
  right: 12px;
  width: 48px;
  height: 48px;
  border-radius: 48px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.5);
}

.seminar-main-cnt {
  width: calc(100% - (772px + 48px));
}

.seminar-main-parent-title {
  display: block;
  font-size: 1.6rem;
  color: #666;
  font-weight: 700;
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.seminar-main-title {
  font-size: 2.8rem;
  font-weight: 700;
  transition: 0.3s color;
  line-height: 1.5;
}

.seminar-main-text {
  display: block;
  margin: 16px 0 0;
  font-size: 1.4rem;
  line-height: 1.5;
}

.seminar-main-info {
  display: flex;
  align-items: center;
  margin-top: 16px;
  font-size: 1.1rem;
  color: #666;
}

.seminar-main-info .icon-time {
  font-size: 1.2rem;
  color: #dadada;
  margin-right: 6px;
}

.seminar-main-presenter {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.seminar-main-presenter-name {
  display: block;
  font-size: 1.8rem;
  font-weight: 700;
}

.seminar-main-presenter-pos {
  display: block;
  font-size: 1.2rem;
  color: #666;
  margin-top: 2px;
}

/* セミナー子記事ヘッダ ===== */
.seminar-article-header {
  position: absolute;
  top: 0;
  right: 0;
  width: 300px;
  z-index: 1;
}

.seminar-category-items {
  display: flex;
  flex-flow: wrap;
  margin: 0 0 8px 0;
  padding: 0;
  list-style: none;
}

.seminar-category-item {
  margin: 0 8px 0 0;
  padding: 0;
}

.seminar-category-link {
  display: inline-block;
  padding: 1px 8px;
  border-radius: 2px;
  background: #d32f2f;
  color: #fff;
  font-size: 1.2rem;
}

.seminar-category-link:hover {
  opacity: 0.5;
  text-decoration: none;
  color: #fff;
}

.seminar-article-parent-title {
  margin-top: 16px;
  margin-bottom: 8px;
  line-height: 1.31;
  font-size: 1.6rem;
  font-weight: 700;
  color: #666;
}

.seminar-articles-lead {
  margin: 16px 0 0 0;
  line-height: 1.5;
  font-size: 1.4rem;
}

.seminar-article-header-info {
  margin-top: 16px;
}

.seminar-article-header-date {
  font-size: 1.4rem;
  color: #666;
}

.seminar-article-header-time {
  font-size: 1.4rem;
  color: #666;
}

.seminar-article-header-response {
  display: flex;
  margin: 16px 0 0 0;
}

.seminar-article-header-action {
  margin: 16px 0 0 0;
}

.seminar-article-header-action .article-action-items {
  margin-top: 16px;
  justify-content: flex-start;
}

.seminar-article-header-action .article-action-item:first-child {
  margin-left: 0;
}

.seminar-article-pay {
  display: inline-block;
  margin-right: 6px;
  padding: 1px 8px;
  border-radius: 2px;
  background: #d32f2f;
  color: #fff;
  font-size: 1.2rem;
}

.seminar-article-like,
.numberComment {
  display: flex;
  align-items: center;
  margin-right: 8px;
  color: #b6b6b6;
}

.seminar-article-response-icon {
  margin-right: 4px;
  font-size: 1.8rem;
}

.numberComment .icon-forum-comment {
  margin-right: 4px;
  font-size: 1.8rem;
}

.seminar-article-response-num,
.numberComment .num {
  font-size: 1.2rem;
  font-style: normal;
}

.article-header-category {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 1px 8px;
  border-radius: 2px;
  background: #d32f2f;
  color: #fff;
  font-size: 1.2rem;
}

.article-header-lock {
  display: flex;
  align-items: center;
  margin-right: 8px;
  color: #b6b6b6;
}

.article-header-lock .icon-lock {
  font-size: 1.6rem;
}

/* セミナー子記事講師 ===== */
.seminar-article-author {
  margin: 24px auto 0;
  padding: 4px 16px;
  background: #f6f6f6;
}

.seminar-article-author-name {
  margin-right: 12px;
  line-height: 1.6;
  font-size: 1.4rem;
  color: #000;
}

.seminar-article-author-name-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

.seminar-article-author-position {
  margin: 0;
  line-height: 1.6;
  font-size: 1.2rem;
  color: #666;
}

.seminar-article-author-box {
  display: flex;
  padding: 12px 0;
  align-items: center;
}

.seminar-article-author-img-box {
  width: 50px;
  height: 50px;
  margin-right: 16px;
  flex-shrink: 0;
}

.seminar-article-author-img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}

.seminar-author-name-list {
  margin-left: 16px;
  font-size: 1.2rem;
  color: #d32f2f;
}

.seminar-author-name-list .icon-modal {
  margin-left: 3px;
}

.seminar-author-modal-items {
  margin: 16px 0 0 0;
  padding: 0;
  list-style: none;
}

.seminar-author-modal-item {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #ebebeb;
}

.seminar-author-modal-link {
  display: flex;
  padding: 8px 0;
  width: 100%;
  align-items: center;
}

.seminar-author-modal-link:hover {
  text-decoration: none;
}

.seminar-author-modal-link:hover .seminar-author-modal-name {
  color: #d32f2f;
}

.seminar-author-modal-link:hover .seminar-author-modal-position {
  color: #d32f2f;
}

.seminar-author-modal-img-box {
  margin-right: 16px;
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

.seminar-author-modal-img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
}

.seminar-author-modal-name {
  margin-right: 12px;
  line-height: 1.6;
  font-size: 1.4rem;
  color: #000;
}

.seminar-author-modal-position {
  margin: 0;
  line-height: 1.6;
  font-size: 1.2rem;
  color: #666;
}

/* セミナ―子記事動画 ===== */
.is-seminar-article .articleBody:first-of-type .video-style {
  margin: 0;
  width: 772px;
  position: relative;
}

.is-seminar-article .articleBody:first-of-type .bpbox_center ~ .textAlignRight {
  margin-top: 16px;
}

.seminar-article-icon-box {
  position: absolute;
  z-index: 2;
  bottom: 8px;
  right: 8px;
  width: 48px;
  height: 48px;
  border-radius: 48px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.5);
}

.seminar-file-download {
  font-size: 1.6rem;
}

.seminar-download-text {
  margin: 0 auto;
  text-align: center;
  font-weight: 700;
}

.seminar-download-rule {
  margin: 16px 0 0 0;
  text-align: center;
}

.seminar-download-rule-link {
  font-size: 1.6rem;
  font-weight: 700;
}

.seminar-download-rule-link .icon-right-arrow {
  margin-right: 4px;
  color: #d32f2f;
}

.seminar-download-rule-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

.seminar-download-link:not(:root) {
  padding: 11px 40px;
}

.seminar-download-link:not(:root):before {
  content: "\e940";
  font-family: 'nikkeiBP_iconfont' !important;
}

/* ペイウォール ========== */
/* お申し込み ===== */
.paywall-offer-cnt {
  padding: 24px 24px 32px;
  background-color: #f6f6f6;
}

.paywall-offer-text {
  margin: 0;
  text-align: center;
  font-size: 1.4rem;
}

.paywall-offer-emph {
  font-weight: 700;
  color: #d32f2f;
}

.paywall-offer-link-box {
  margin-top: 24px;
}

.paywall-offer-link-note {
  display: block;
  text-align: center;
  font-size: 1.4rem;
}

/* 共通ペイウォール ===== */
.paywall-caution:not(:root) {
  margin: 0;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
}

.paywall-regist {
  margin: 24px 0 0 0;
}

.paywall-campaign-txt {
  text-align: center;
  font-size: 1.4rem;
}

.paywall-campaign-link {
  text-decoration: underline;
  color: #d32f2f;
}

.paywall-campaign-link span:after {
  content: '　';
}

.paywall-campaign-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

.paywall-btn-box:not(:root) {
  display: flex;
  justify-content: center;
  margin: 24px 0 0 0;
}

.paywall-btn {
  margin: 0 4px;
  text-align: center;
}

.paywall-btn .standard-btn:not(:root) {
  min-width: 169px;
}

.paywall-btn-txt {
  font-size: 1.4rem;
  color: #666;
}

.paywall-bnr:not(:root) {
  margin: 24px 0 16px;
  text-align: center;
}

.paywall-sitebnr:not(:root) {
  margin: 16px 0;
  text-align: center;
}

.paywall-link-box:not(:root) {
  margin-top: 12px;
  text-align: center;
}

.paywall-link {
  display: inline-block;
  margin: 0 auto 0;
  padding-left: 16px;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
}

.paywall-link:hover {
  color: #d32f2f;
}

.paywall-link .icon-right-arrow {
  color: #d32f2f;
  position: absolute;
  font-size: 1rem;
  top: 50%;
  left: 0;
  margin-top: -5px;
}

.article-cmn-paywall {
  position: relative;
  margin-top: 30px;
}

.article-cmn-paywall.no-grad::before {
  display: none;
}

.article-cmn-paywall::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100px;
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
  left: 0;
  top: -130px;
  z-index: 2;
}

.article-cmn-paywall .paywall-campaign-txt {
  margin: 0;
  font-size: 1.4rem;
}

.article-cmn-paywall .paywall-regist {
  margin-top: 8px;
}

/* notlogin */
.l-wrapper.is-responsive .paywall-box {
  margin: 64px 0 80px;
}

@media (max-width: 768px) {
  .l-wrapper.is-responsive {
    min-width: auto;
    min-width: initial;
  }
  .l-wrapper.is-responsive .l-content {
    width: 100%;
  }
  .l-wrapper.is-responsive .paywall-box {
    margin: 24px 0 40px;
    padding: 0 16px;
  }
  .l-wrapper.is-responsive .paywall-caution:not(:root) {
    line-height: 1.78;
  }
  .l-wrapper.is-responsive .paywall-regist {
    margin: 16px 0 0 0;
  }
  .l-wrapper.is-responsive .paywall-campaign-link {
    font-size: 1.4rem;
  }
  .l-wrapper.is-responsive .paywall-campaign-link span {
    display: block;
  }
  .l-wrapper.is-responsive .paywall-campaign-link span::after {
    content: none;
  }
  .l-wrapper.is-responsive .paywall-btn-box:not(:root) {
    display: block;
    margin: 16px 0 0 0;
  }
  .l-wrapper.is-responsive .paywall-btn {
    margin: 16px 0 0;
  }
  .l-wrapper.is-responsive .paywall-btn .standard-btn:not(:root) {
    padding: 2px 20px;
    min-width: auto;
    min-width: initial;
    width: 100%;
    max-width: 448px;
    height: 40px;
    line-height: 38px;
    box-sizing: border-box;
  }
  .l-wrapper.is-responsive .paywall-btn .standard-btn-box:not(:root) {
    margin: 4px 0 0;
  }
  .l-wrapper.is-responsive .paywall-bnr:not(:root) img {
    height: auto;
  }
  .l-wrapper.is-responsive .paywall-btn-txt:not(:root) {
    line-height: 1.75;
    font-size: 1.2rem;
  }
  .l-wrapper.is-responsive .paywall-link-box:not(:root) {
    line-height: 1.5;
  }
}

/* ページ ========== */
/* 切り替え ===== */
.page-switching-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.page-switching-items .page-switching-item:nth-of-type(odd) {
  padding-right: 12px;
}

.page-switching-items .page-switching-item:nth-of-type(even) {
  padding-left: 12px;
}

.page-switching-item {
  margin: 0;
  width: 50%;
}

/* 子記事 ========== */
/* スライダー ===== */
.article-slider-box {
  margin-top: 48px;
}

.article-slider-box.is-slider-mode-16-9 .article-slider-main-img-aspect,
.article-slider-box.is-slider-mode-16-9 .article-slider-sub-img-aspect {
  padding-top: 56.25%;
}

.article-slider-box.is-slider-mode-3-2 .article-slider-main-img-aspect,
.article-slider-box.is-slider-mode-3-2 .article-slider-sub-img-aspect {
  padding-top: 66.66666666666667%;
}

.article-slider-main-box {
  opacity: 0;
  position: relative;
  margin-top: 16px;
}

.article-slider-main-box.is-active, .article-slider-main-box.is-single {
  opacity: 1;
}

.article-slider-main-items {
  position: relative;
}

.slider-btn:not(:root) {
  position: absolute;
  top: 50%;
  margin-top: -22px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: none;
  background-color: #f6f6f6;
}

.slider-btn:not(:root).is-prev {
  left: -60px;
}

.slider-btn:not(:root).is-next {
  right: -60px;
}

.slider-btn:not(:root).is-article-sub {
  background-color: transparent;
}

.slider-btn:not(:root) .icon-left-arrow,
.slider-btn:not(:root) .icon-right-arrow {
  color: #d32f2f;
}

.article-slider-main-link:not(:root) {
  display: block;
  text-decoration: none;
  outline: 0;
}

.article-slider-main-img-aspect,
.article-slider-sub-img-aspect {
  position: relative;
  display: block;
  padding-top: 75%;
}

.article-slider-main-img,
.article-slider-sub-img {
  position: absolute;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.article-slider-main-title {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  height: 46px;
  overflow: hidden;
  margin-bottom: 16px;
}

.article-slider-main-text {
  display: block;
  font-size: 1.4rem;
  height: 46px;
  overflow: hidden;
  margin-top: 16px;
}

.article-slider-sub-box {
  opacity: 0;
  position: relative;
  margin-top: 16px;
}

.article-slider-sub-box.is-active, .article-slider-sub-box.is-not-slider {
  opacity: 1;
}

.article-slider-sub-box.is-not-slider .article-slider-sub-items {
  display: flex;
  justify-content: center;
}

.article-slider-sub-box.is-not-slider .article-slider-sub-items .article-slider-sub-item {
  width: calc(100% / 6);
}

.article-slider-sub-box.is-not-slider .article-slider-sub-item.swiper-slide-active .article-slider-sub-img {
  border-color: transparent;
}

.article-slider-sub-box.is-not-slider .article-slider-sub-item.is-active .article-slider-sub-img {
  border-color: #d32f2f;
}

.article-slider-sub-box.is-not-slider .slider-btn:not(:root) {
  display: none;
}

.article-slider-sub-item.swiper-slide-active .article-slider-sub-img {
  border-color: #d32f2f;
}

.article-slider-sub-btn:not(:root) {
  display: block;
  border: none;
  border-radius: 0;
  background-color: transparent;
  padding: 0;
  width: 100%;
}

.article-slider-sub-img {
  border: 2px solid transparent;
  transition: 0.3s border-color;
}

.article-slider-num-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  font-size: 1.2rem;
}

.article-slider-title:not(:root) {
  font-weight: 700;
  margin: 16px 0 0;
}

.article-slider-caption {
  display: block;
  margin: 16px 0 0;
  font-size: 1.4rem;
}

/* ソーシャルボタン ===== */
.article-action-items {
  display: flex;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  list-style: none;
}

.is-col1 .article-action-items {
  width: 650px;
  margin: 0 auto;
}

.article-action-item {
  margin: 0 6px;
  padding: 0;
}

.article-action-item:last-child {
  margin-right: 0;
}

.article-action-btn {
  display: block;
  padding: 0;
  width: 29px;
  height: 29px;
  box-sizing: border-box;
  border-radius: 50%;
  border: 1px solid #666;
  color: #666;
  background: #fff;
  transition: 0.3s color, 0.3s background-color, 0.3s opacity;
}

.article-action-btn:hover, .article-action-btn.is-active {
  border: 1px solid #d32f2f;
  color: #fff;
  background: #d32f2f;
}

.article-action-icon {
  display: block;
  margin: 0;
  width: 27px;
  height: 27px;
  position: relative;
}

.article-action-icon:before {
  top: 0;
  font-size: 1.4rem;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.article-action-icon.icon-hatena-bookmark:before {
  font-size: 1.2rem;
}

.btn-clip-block {
  position: relative;
}

.btn-clip-balloon {
  display: none;
  width: 300px;
  padding: 12px;
  position: absolute;
  background: rgba(0, 0, 0, 0.75);
  border-radius: 2px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.17);
  top: -80px;
  left: -135px;
  z-index: 100;
  text-align: center;
  box-sizing: border-box;
}

.btn-clip-balloon.is-active {
  display: block;
}

.container-user-tools .btn-clip-balloon {
  left: -105px;
}

.btn-clip-balloon::before {
  content: '';
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 10px solid rgba(0, 0, 0, 0.75);
  position: absolute;
  bottom: -20px;
  left: 50%;
}

.btn-clip-balloon .clip-balloon-header {
  color: #fff;
  font-size: 1.8rem;
}

.btn-clip-balloon .clip-balloon-detail {
  color: #fff;
  font-size: 1.2rem;
}

.btn-clip-balloon .clip-balloon-detail a {
  text-decoration: underline;
}

.btn-clip-balloon .clip-balloon-detail a:hover {
  text-decoration: none;
}

.popupGift {
  text-align: center;
}

.popupShareGiftTitle {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
}

.popupIconGift {
  margin-top: 10px;
  margin-bottom: 5px;
  text-align: center;
}

.popupIconGift .icon-gift {
  font-size: 2.4rem;
}

.popupGift .shareLoading {
  margin: 40px auto 38px;
}

.popupShareGiftContentGray {
  font-size: 1.8rem;
  text-align: center;
}

.popupShareGiftContentGray a {
  color: #e6001e;
}

.popupGift .popupButtonURLRed,
.popupGift .popupButtonURLGray,
.popupGift .popupButtonURLGrayBackground {
  display: inline-block;
  font-size: 18px;
  line-height: 58px;
  height: 58px;
  border-radius: 2px;
  margin-bottom: 30px;
}

.popupGift .popupButtonURLRed,
.popupGift .popupButtonURLGray,
.popupGift .popupButtonURLGrayBackground {
  margin: 40px auto 0;
  width: 360px;
  height: 58px;
  line-height: 58px;
  border-radius: 2px;
}

.popupGift .popupButtonURLRed a {
  display: block;
  border: 1px solid #d32f2f;
  padding: 0;
  line-height: 58px;
  box-sizing: border-box;
  border-radius: 2px;
  font-weight: 700;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.popupGift .popupButtonURLRed a:hover {
  background: #d32f2f;
  color: #fff;
  text-decoration: none;
}

.popupGift .popupButtonURLGrayBackground {
  background-color: #f6f6f6;
  font-weight: 700;
  color: #898989;
  box-sizing: border-box;
  border-radius: 2px;
  margin-top: 20px;
}

.popupGift .popupShareGiftContentGray,
.popupGift .popupShareGiftContentBlack {
  font-size: 18px;
  line-height: 1.76;
}

.popupGift .popupShareGiftContentBlack {
  margin-bottom: 15px;
  color: #242424;
}

.popupGift .popupButtonURLGray {
  border: solid 1px #898989;
  color: #898989;
  box-sizing: border-box;
  font-weight: 700;
}

.popupGift .popupShareGiftContentBlack {
  margin-top: 16px;
  margin-bottom: 0;
}

.popupGift .userGuide {
  margin-top: 20px;
  font-size: 1.5rem;
}

.popupGift textarea {
  margin: 22px 0 20px 0;
  border: none;
  background-color: #f6f6f6;
  width: 540px;
  height: 74px;
  font-size: 1.5rem;
  resize: vertical !important;
  padding: 3px 12px;
}

textarea#copyUrl {
  font-size: 1.4rem;
  color: #444;
  margin: 20px 0 20px;
}

.gift-clip-btn:not(:root) {
  padding: 16px 40px;
}

/* 子記事ヘッダ ===== */
.article-header-category-items {
  display: flex;
  flex-flow: wrap;
  margin: 0 0 8px 0;
  padding: 0;
  list-style: none;
}

.article-header-category-item {
  margin: 0 8px 0 0;
  padding: 0;
}

.article-header-category-link {
  display: inline-block;
  padding: 1px 8px;
  border-radius: 2px;
  background: #d32f2f;
  color: #fff;
  font-size: 1.2rem;
}

.-marketer .article-header-category-link {
  background: #555;
}

.article-header-category-link:hover {
  opacity: 0.5;
  text-decoration: none;
  color: #fff;
}

.articles-main-parent-title {
  margin-bottom: 8px;
}

.articles-main-parent-title:hover {
  color: #d32f2f;
  text-decoration: none;
}

.articles-main-parent-title-link .article-header-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: wrap;
  margin-top: 12px;
}

.article-header-date {
  font-size: 1.2rem;
  color: #666;
}

.article-header-time {
  font-size: 1.2rem;
  color: #666;
}

.article-header-response {
  display: flex;
  margin: 4px 10px 0 0;
}

.article-header-pay {
  display: inline-block;
  margin-right: 6px;
  padding: 1px 8px;
  border-radius: 2px;
  background: #d32f2f;
  color: #fff;
  font-size: 1.2rem;
}

.article-header-author {
  width: 100%;
}

.article-header-lock,
.article-header-like,
.numberComment {
  display: flex;
  align-items: center;
  margin-right: 8px;
  color: #b6b6b6;
}

.article-header-like.is-hide {
  display: none;
}

.article-header-response-icon {
  margin-right: 4px;
  font-size: 1.8rem;
}

.article-header-lock .article-header-response-icon {
  font-size: 1.5rem;
}

.numberComment .icon-forum-comment {
  margin-right: 4px;
  font-size: 1.8rem;
}

.article-header-response-num,
.numberComment .num {
  font-size: 1.2rem;
  font-style: normal;
}

.article-header-author {
  margin-top: 12px;
  padding: 4px 16px;
  background: #f6f6f6;
}

.article-header-author-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.article-header-author-item {
  margin: 0 0;
  padding: 0;
  list-style: none;
}

.article-header-author-link {
  display: flex;
  align-items: center;
}

.article-header-author-link:hover {
  text-decoration: none;
}

.article-header-author-link:hover .article-header-author-name,
.article-header-author-link:hover .article-header-author-position {
  color: #d32f2f;
}

.article-header-author-name {
  margin-right: 12px;
  line-height: 1.6;
  font-size: 1.4rem;
  color: #000;
}

.article-header-author-position {
  margin: 0;
  line-height: 1.6;
  font-size: 1.2rem;
  color: #666;
}

/* 子記事ヘッダ（右ペインなし） ===== */
.article-header-col1 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}

.article-header-col1 .article-header-category {
  margin: 0;
}

/* 用語集 ===== */
.page-title-sub {
  font-size: 1.6rem;
  font-weight: 700;
}

/* 本文 */
.articleBody {
  font-size: 1.8rem;
}

.articleBody p {
  font-size: 1.8rem;
  line-height: 1.76;
}

.articleBody h3 {
  font-size: 2.8rem;
  line-height: 1.5;
  border-bottom: 1px solid #ccc;
  margin-top: 80px;
  padding-bottom: 20px;
}

.articleBody .bplead:first-of-type + h3 {
  margin-top: 46px;
}

.articleBody h3:first-child {
  margin-top: 0;
}

.articleBody h4 {
  margin-top: 40px;
  line-height: 1.5;
  font-size: 2rem;
}

.articleBody h3 + h4 {
  margin-top: 40px;
}

.articleBody .bplead {
  font-weight: 700;
  background-color: #fff;
  margin-bottom: 16px;
  padding: 0 0 32px 0;
  font-size: 1.8rem;
  line-height: 1.76;
}

.articleBody a {
  color: inherit;
  text-decoration-line: underline;
}

.articleBody a:hover {
  color: #d32f2f;
  text-decoration-line: none;
}

.articleBody .bpimage_image {
  position: relative;
  display: inline-block;
}

.articleBody .fontSizeXXL {
  font-size: 42px;
  line-height: 60px;
}

.articleBody .fontSizeXL {
  font-size: 36px;
  line-height: 54px;
}

.articleBody .fontSizeL {
  font-size: 24px;
  line-height: 36px;
}

.articleBody .fontSizeS {
  font-size: 14px;
  line-height: 24px;
}

.articleBody .fontSizeXS {
  font-size: 12px;
  line-height: 18px;
}

.articleBody .textCol {
  color: #d32f2f;
}

.articleBody .textColTintA {
  color: #fa6461;
}

.articleBody .textColTintB {
  color: #fa8460;
}

.articleBody .textColShade {
  color: #fdb2b1;
}

.articleBody .textColShadeA {
  color: #ffe0e0;
}

.articleBody .textColShadeB {
  color: #faeaea;
}

.articleBody .bgCol {
  background-color: #d32f2f;
}

.articleBody .bgColTintA {
  background-color: #fa6461;
}

.articleBody .bgColTintB {
  background-color: #fa8460;
}

.articleBody .bgColShade {
  background-color: #fdb2b1;
}

.articleBody .bgColShadeA {
  background-color: #ffe0e0;
}

.articleBody .bgColShadeB {
  background-color: #faeaea;
}

.articleBody .textColBlack {
  color: #000000;
}

.articleBody .textColBlackTintA {
  color: #666666;
}

.articleBody .textColBlackTintB {
  color: #888888;
}

.articleBody .textColBlackShade {
  color: #cccccc;
}

.articleBody .textColBlackShadeA {
  color: #eeeeee;
}

.articleBody .textColBlackShadeB {
  color: #f6f6f6;
}

.articleBody .bgColBlack {
  background-color: #000000;
}

.articleBody .bgColBlackTintA {
  background-color: #666666;
}

.articleBody .bgColBlackTintB {
  background-color: #888888;
}

.articleBody .bgColBlackShade {
  background-color: #cccccc;
}

.articleBody .bgColBlackShadeA {
  background-color: #eeeeee;
}

.articleBody .bgColBlackShadeB {
  background-color: #f6f6f6;
}

.articleBody .textColBlack {
  color: black;
}

.articleBody .textColGray {
  color: gray;
}

.articleBody .textColSilver {
  color: silver;
}

.articleBody .textColWhite {
  color: white;
}

.articleBody .textColRed {
  color: red;
}

.articleBody .textColYellow {
  color: yellow;
}

.articleBody .textColLime {
  color: lime;
}

.articleBody .textColAqua {
  color: aqua;
}

.articleBody .textColBlue {
  color: blue;
}

.articleBody .textColFuchsia {
  color: fuchsia;
}

.articleBody .textColMaroon {
  color: maroon;
}

.articleBody .textColOlive {
  color: olive;
}

.articleBody .textColGreen {
  color: green;
}

.articleBody .textColTeal {
  color: teal;
}

.articleBody .textColNavy {
  color: navy;
}

.articleBody .textColPurple {
  color: purple;
}

.articleBody .bgColBlack {
  background-color: black;
}

.articleBody .bgColGray {
  background-color: gray;
}

.articleBody .bgColSilver {
  background-color: silver;
}

.articleBody .bgColWhite {
  background-color: white;
}

.articleBody .bgColRed {
  background-color: red;
}

.articleBody .bgColYellow {
  background-color: yellow;
}

.articleBody .bgColLime {
  background-color: lime;
}

.articleBody .bgColAqua {
  background-color: aqua;
}

.articleBody .bgColBlue {
  background-color: blue;
}

.articleBody .bgColFuchsia {
  background-color: fuchsia;
}

.articleBody .bgColMaroon {
  background-color: maroon;
}

.articleBody .bgColOlive {
  background-color: olive;
}

.articleBody .bgColGreen {
  background-color: green;
}

.articleBody .bgColTeal {
  background-color: teal;
}

.articleBody .bgColNavy {
  background-color: navy;
}

.articleBody .bgColPurple {
  background-color: purple;
}

.articleBody em,
.articleBody strong {
  font-style: normal;
  font-weight: normal;
}

.articleBody em.fontBold,
.articleBody strong.fontBold,
.articleBody .fontBold {
  font-weight: bold;
}

.articleBody .fontItalic {
  font-style: italic;
}

.articleBody .textSolidUndrLine {
  text-decoration: none;
  border-bottom: 1px solid #000;
}

.articleBody .textUnsolidUndrLine {
  border-bottom: 1px dashed #000;
}

.articleBody .textLineThrough {
  text-decoration: line-through;
}

.articleBody .textHighlight {
  background-color: #bd10e0;
}

.articleBody .textHighlightTintA {
  background-color: #50e3c2;
}

.articleBody .textHighlightTintB {
  background-color: #f5a623;
}

.articleBody .textHighlightShade {
  background-color: #eabcf5;
}

.articleBody .textHighlightShadeA {
  background-color: #ccf6ec;
}

.articleBody .textHighlightShadeB {
  background-color: #fbe4c1;
}

.articleBody .textAlignLeft {
  text-align: left;
}

.articleBody .textAlignCenter {
  text-align: center;
}

.articleBody .textAlignRight {
  text-align: right;
}

.articleBody hr.diamond {
  margin: 30px 0 0 0;
  height: 28px;
  border: 0;
}

.articleBody hr.diamond::after {
  content: '◇◇◇';
  letter-spacing: 4em;
  margin-right: -4em;
  text-align: center;
}

.articleBody hr,
.articleBody hr.line {
  border-top: 1px solid #ccc;
}

.articleBody hr::after,
.articleBody hr.line::after {
  content: '';
  display: block;
}

.articleBody hr.asterisk {
  margin: 30px 0 0 0;
  height: 28px;
  border: 0;
}

.articleBody hr.asterisk::after {
  content: '＊＊＊';
  letter-spacing: 4em;
  margin-right: -4em;
  text-align: center;
}

.articleBody .clearLeft {
  clear: left;
}

.articleBody .clearRight {
  clear: right;
}

.articleBody .clearBoth {
  clear: both;
}

.articleBody .clearFix:after {
  content: '';
  display: block;
  clear: both;
}

.articleBody .bpimage_title,
.articleBody .bpimage_caption,
.articleBody .bpimage_click {
  font-size: 14px;
  line-height: 24px;
}

.articleBody .bpimage_title {
  display: inline-block;
  font-weight: bold;
}

.articleBody .bpimage_caption {
  line-height: 24px;
}

.articleBody .bpimage_click {
  color: #0096be;
}

.articleBody .bpimage_right {
  float: right;
  margin: 40px 0 15px 30px;
}

.articleBody .bpimage_left {
  float: left;
  margin: 40px 30px 15px 0;
}

.articleBody .bpimage_center {
  display: table;
  width: 1px;
  margin: 40px auto 30px;
}

.articleBody .bpimage_left::before,
.articleBody .bpimage_left::after,
.articleBody .bpimage_right::before,
.articleBody .bpimage_right::after,
.articleBody .bpimage_center::before,
.articleBody .bpimage_center::after {
  content: '';
  display: table;
}

.articleBody .bpimage_left::after,
.articleBody .bpimage_right::after,
.articleBody .bpimage_center::after {
  clear: both;
}

.articleBody .bpimage_caption_right {
  margin-top: 40px;
}

.articleBody .bpimage_caption_right .bpimage_left {
  margin-top: 0;
}

.articleBody .bpimage_caption_right::before,
.articleBody .bpimage_caption_right::after {
  content: '';
  display: table;
}

.articleBody .bpimage_caption_right::after {
  clear: both;
}

.articleBody .bpimage_double {
  width: 100%;
  margin: 40px auto 30px;
  overflow: hidden;
}

.articleBody .bpimage_double .bpimage_left,
.articleBody .bpimage_double .bpimage_right {
  margin: 0;
}

.articleBody .bpimage_double .bpimage_right + .bpimage_title {
  padding-top: 10px;
  clear: both;
}

.articleBody .bpimage_triple {
  width: 100%;
  margin: 40px auto 30px;
  overflow: hidden;
}

.articleBody .bpimage_triple .bpimage_wrap {
  margin: 0;
  float: left;
  overflow: hidden;
}

.articleBody .bpimage_triple .bpimage_left,
.articleBody .bpimage_triple .bpimage_right {
  margin: 0;
}

.articleBody .bpimage_triple .bpimage_center {
  float: right;
  margin: 0;
}

.articleBody .bpbox_left {
  float: left;
  margin: 40px 30px 10px 0;
}

.articleBody .bpbox_right {
  float: right;
  margin: 40px 0 10px 30px;
}

.articleBody .bpimage_set {
  margin-bottom: 1rem;
}

.articleBody .bptable {
  margin: 40px 0;
}

.articleBody .bptable table {
  border-collapse: separate;
  background-color: #ccc;
  border-spacing: 1px;
  font-size: 14px;
  margin-top: 1.5rem;
}

.articleBody .bptable table th {
  background-color: #f6f6f6;
}

.articleBody .bptable table td {
  background-color: #fff;
  padding: 8px 14px;
}

.articleBody .bptable_title {
  font-size: 14px;
  font-weight: bold;
}

.articleBody .bptable_caption {
  font-size: 14px;
  line-height: 24px;
}

.articleBody .container-movie {
  position: relative;
  margin: 40px auto;
}

.articleBody .container-movie figure {
  position: relative;
  vertical-align: middle;
}

.articleBody .container-movie a:active img,
.articleBody .container-movie a:hover img {
  background-color: #fff;
  opacity: 0.7;
}

.articleBody .container-movie a:active .btn-play,
.articleBody .container-movie a:hover .btn-play {
  background-color: transparent;
}

.articleBody .container-movie img {
  max-width: 640px;
  width: 100%;
  height: auto;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.articleBody .bpprofile,
.articleBody .bpprofile_photo,
.articleBody .bpinterview {
  clear: both;
  margin: 1.5rem 0;
}

.articleBody .bpprofile_profile,
.articleBody .bpinterview_profile {
  line-height: normal;
}

.articleBody .bpprofile_name,
.articleBody .bpinterview_name {
  font-size: 1.8rem;
  font-weight: bold;
}

.articleBody .bpprofile_position,
.articleBody .bpinterview_position {
  color: #666;
  font-size: 14px;
  line-height: 1.25;
}

.articleBody .bpprofile_text,
.articleBody .bpinterview_text {
  font-size: 14px;
  line-height: 24px;
  margin-top: 8px;
}

.articleBody .bpprofile_photo .bpprofile_text img {
  float: right;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  margin-left: 30px;
}

.articleBody .bpinterview {
  border: 1px solid #ccc;
  border-radius: 2px;
  padding: 30px;
  margin: 1.5rem 0;
}

.articleBody ul,
.articleBody ul.disc {
  padding-left: 2em;
  list-style: disc;
}

.articleBody ul.none {
  padding-left: 0.5em;
  list-style: none;
}

.articleBody ul.circle {
  list-style: circle;
}

.articleBody ul.square {
  list-style: square;
}

.articleBody ol,
.articleBody ol.decimal {
  padding-left: 2em;
  list-style: decimal;
}

.articleBody ol.upperAlpha {
  list-style: upper-alpha;
}

.articleBody ol.lowerAlpha {
  list-style: lower-alpha;
}

.articleBody ol.upperRoman {
  list-style: upper-roman;
}

.articleBody ol.lowerRoman {
  list-style: lower-roman;
}

.articleBody ol.circledDecimal {
  list-style: none;
}

.articleBody ol.circledDecimal li {
  text-indent: -1em;
}

.articleBody ol.circledDecimal li::before {
  padding-right: 0.5em;
}

.articleBody ol.circledDecimal li:nth-child(1)::before {
  content: '\2460';
}

.articleBody ol.circledDecimal li:nth-child(2)::before {
  content: '\2461';
}

.articleBody ol.circledDecimal li:nth-child(3)::before {
  content: '\2462';
}

.articleBody ol.circledDecimal li:nth-child(4)::before {
  content: '\2463';
}

.articleBody ol.circledDecimal li:nth-child(5)::before {
  content: '\2464';
}

.articleBody ol.circledDecimal li:nth-child(6)::before {
  content: '\2465';
}

.articleBody ol.circledDecimal li:nth-child(7)::before {
  content: '\2466';
}

.articleBody ol.circledDecimal li:nth-child(8)::before {
  content: '\2467';
}

.articleBody ol.circledDecimal li:nth-child(9)::before {
  content: '\2468';
}

.articleBody ol.circledDecimal li:nth-child(10)::before {
  content: '\2469';
}

.articleBody ol.circledDecimal li:nth-child(11)::before {
  content: '\246a';
}

.articleBody ol.circledDecimal li:nth-child(12)::before {
  content: '\246b';
}

.articleBody ol.circledDecimal li:nth-child(13)::before {
  content: '\246c';
}

.articleBody ol.circledDecimal li:nth-child(14)::before {
  content: '\246d';
}

.articleBody ol.circledDecimal li:nth-child(15)::before {
  content: '\246e';
}

.articleBody ol.circledDecimal li:nth-child(16)::before {
  content: '\246f';
}

.articleBody ol.circledDecimal li:nth-child(17)::before {
  content: '\2470';
}

.articleBody ol.circledDecimal li:nth-child(18)::before {
  content: '\2471';
}

.articleBody ol.circledDecimal li:nth-child(19)::before {
  content: '\2472';
}

.articleBody ol.circledDecimal li:nth-child(20)::before {
  content: '\2473';
}

.articleBody .speaker01 {
  color: #d32f2f;
  font-weight: 700;
}

.articleBody .speaker02 {
  color: #728832;
  font-weight: 700;
}

.articleBody .speaker03 {
  color: #3853a1;
  font-weight: 700;
}

.articleBody .speaker04 {
  color: #3e93be;
  font-weight: 700;
}

.articleBody .speaker05 {
  color: #ce357f;
  font-weight: 700;
}

.articleBody .speaker06 {
  color: #a55900;
  font-weight: 700;
}

.articleBody .speaker07 {
  color: #92327d;
  font-weight: 700;
}

.articleBody .speaker08 {
  color: #664320;
  font-weight: 700;
}

.articleBody .speaker09 {
  color: #000000;
  font-weight: 700;
}

.articleBody .bpquestion {
  font-weight: bold;
}

.articleBody .bpquestion::before {
  content: 'Q.';
  font-family: serif;
  color: #666;
  font-size: 28px;
  font-weight: bold;
  margin-right: 12px;
}

.articleBody .bpanswer::before {
  content: 'A.';
  font-family: serif;
  color: #d32f2f;
  font-size: 28px;
  font-weight: bold;
  margin-right: 12px;
}

.articleBody .bpbox,
.articleBody .bpbox2,
.articleBody .bpbox3,
.articleBody .bpbox4,
.articleBody .bpframe {
  clear: both;
  border: 1px solid transparent;
  padding: 30px;
  margin: 2rem 0;
  border-radius: 2px;
}

.articleBody .bpbox p,
.articleBody .bpbox2 p,
.articleBody .bpbox3 p,
.articleBody .bpbox4 p,
.articleBody .bpframe p {
  margin: 20px 0;
}

.articleBody .bpbox p:last-child,
.articleBody .bpbox2 p:last-child,
.articleBody .bpbox3 p:last-child,
.articleBody .bpbox4 p:last-child,
.articleBody .bpframe p:last-child {
  margin-bottom: 0;
}

.articleBody .bpbox .bpimage_left,
.articleBody .bpbox .bpimage_right,
.articleBody .bpbox2 .bpimage_left,
.articleBody .bpbox2 .bpimage_right,
.articleBody .bpbox3 .bpimage_left,
.articleBody .bpbox3 .bpimage_right,
.articleBody .bpbox4 .bpimage_left,
.articleBody .bpbox4 .bpimage_right,
.articleBody .bpframe .bpimage_left,
.articleBody .bpframe .bpimage_right {
  margin-top: 0;
}

.articleBody .bpbox_title {
  font-size: 1.8rem;
  font-weight: 700;
  border-bottom: 1px solid transparent;
  padding-bottom: 8px;
}

.articleBody .bpbox_text {
  font-size: 1.6rem;
  margin-top: 16px;
}

.articleBody .bpbox_text p {
  font-size: 1.6rem;
}

.articleBody .bpbox {
  border-color: #ccc;
}

.articleBody .bpbox .bpbox_title {
  border-color: #ccc;
}

.articleBody .bpbox2 {
  border-color: #3c6478;
  background-color: #f5fafa;
}

.articleBody .bpbox2 .bpbox_title {
  color: #3c6478;
  border-color: #3c6478;
}

.articleBody .bpbox3 {
  border-color: #be6400;
  background: #fffae6;
}

.articleBody .bpbox3 .bpbox_title {
  color: #be6400;
  border-color: #be6400;
}

.articleBody .bpbox4 {
  border-color: #503c8c;
  background-color: #fff7fa;
}

.articleBody .bpbox4 .bpbox_title {
  color: #503c8c;
  border-color: #503c8c;
}

.articleBody .bpframe {
  border-color: #ccc;
  background-color: #fafafa;
}

.articleBody .bpframe .bpbox_title {
  color: #333333;
  border-color: #333333;
}

.articleBody blockquote {
  position: relative;
  background-color: #f6f6f6;
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 40px 0;
  padding: 40px 50px;
}

.articleBody blockquote::before {
  content: '“';
  position: absolute;
  font-size: 4.8rem;
  line-height: 1;
  font-family: sans-serif;
  color: #ccc;
  top: 20px;
  left: 20px;
}

.articleBody blockquote::after {
  content: '”';
  position: absolute;
  font-size: 4.8rem;
  line-height: 1;
  font-family: sans-serif;
  color: #ccc;
  right: 20px;
  bottom: 0;
}

.articleBody blockquote h3 {
  font-size: 2.2rem;
  margin-top: 10px;
  padding-bottom: 10px;
}

.articleBody blockquote p {
  margin: 16px 0 0;
}

.articleBody blockquote cite {
  font-style: normal;
}

.articleBody pre {
  margin: 32px 0;
  padding: 16px;
  white-space: pre;
  font-size: 1.4rem;
  line-height: 1.2;
  overflow: auto;
  border: 1px solid gray;
}

.articleBody pre.light {
  background-color: whitesmoke;
  color: black;
  border: 1px solid silver;
}

.articleBody pre.dark {
  background-color: black;
  color: white;
  border: 1px solid silver;
}

.articleBody .bpteisei_box {
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 2rem 0;
}

.articleBody .bpteisei_box b {
  color: #d32f2f;
}

.articleBody .bpannotation {
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 16px 0;
}

.articleBody .bpreference {
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 16px 0;
}

.articleBody .partner {
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 16px 0;
}

.articleBody .partner .line-dotted {
  margin: 16px 0;
}

.articleBody .container-comment {
  border-top: 1px solid #ccc;
  margin-top: 32px;
}

.articleBody .container-comment .flex {
  margin: 16px 0;
}

.articleBody .container-comment .job-title {
  line-height: 1;
  margin-top: 8px;
}

.articleBody .container-comment .name {
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 8px;
}

.articleBody .container-comment .comment {
  margin-top: 16px;
  font-size: 1.4rem;
  line-height: 1.5;
}

.articleBody .container-comment:last-child {
  border-bottom: 1px solid #ccc;
}

.articleBody .vjs-play-start-button::before {
  vertical-align: baseline;
}

.articleBody .article-morebtn-box {
  margin-top: 48px;
}

.articleBody .article-morebtn:not(:root) {
  width: 100%;
  padding: 10px 40px;
}

.articleBody .article-morebtn-title {
  color: #000;
}

.articleBody .article-morebtn-title:not(.is-active) {
  display: none;
}

.articleBody .article-morebtn:hover .article-morebtn-title {
  color: #fff;
}

.articleBody .article-morebtn:not(:root) .icon-down-arrow {
  position: static;
  margin-left: 8px;
}

.articleBody p,
.articleBody h5,
.articleBody ul,
.articleBody ol {
  margin: 30px 0 0 0;
}

.articleBody p:first-of-type {
  margin-top: 24px;
}

.articleBody p.bplead:first-of-type {
  margin-top: 24px;
  margin-bottom: -12px;
  padding-bottom: 24px;
}

.articleBody p.bplead:first-of-type + h3 {
  margin-top: 46px;
}

.articleBody p.bplead:first-of-type + h4 {
  margin-top: 46px;
}

.articleBody .bpimage_title {
  display: block;
}

.articleBody .bpimage_click {
  line-height: 1.4;
  font-size: 14px;
  font-weight: normal;
  color: #666;
}

.articleBody .bpimage_click a {
    color: #000;
    text-decoration-line: none;
  }
  
.articleBody .bpimage_click a:hover {
  color: #000;
  text-decoration-line: none;
}

.articleBody .bpimage_title + .bpimage_image,
.articleBody .bpimage_caption + .bpimage_image,
.articleBody .bpimage_image + .bpimage_title,
.articleBody .bpimage_image + .bpimage_caption,
.articleBody .bpimage_image + .bpimage_click {
  margin-top: 8px;
}

.articleBody .bpimage_title + .bpimage_caption {
  margin-top: 4px;
}

.articleBody .bpimage_caption + .bpimage_click {
  margin-top: 6px;
}

.articleBody .bpimage_click span {
  text-decoration: underline;
}

/* atcl_component */
.article-child .article.article-detail {
  overflow: hidden;
}

.articleBody .bgCol,
.articleBody .bgColTintA,
.articleBody .bgColTintB,
.articleBody .bgColShade,
.articleBody .bgColShadeA,
.articleBody .bgColShadeB,
.articleBody .bgColBlack,
.articleBody .bgColBlackTintA,
.articleBody .bgColBlackTintB,
.articleBody .bgColBlackShade,
.articleBody .bgColBlackShadeA,
.articleBody .bgColBlackShadeB,
.articleBody .bgColGray,
.articleBody .bgColSilver,
.articleBody .bgColWhite,
.articleBody .bgColRed,
.articleBody .bgColYellow,
.articleBody .bgColLime,
.articleBody .bgColAqua,
.articleBody .bgColBlue,
.articleBody .bgColFuchsia,
.articleBody .bgColMaroon,
.articleBody .bgColOlive,
.articleBody .bgColGreen,
.articleBody .bgColTeal,
.articleBody .bgColNavy,
.articleBody .bgColPurple {
  padding: 5px 4px;
  display: inline-block;
  margin: 5px;
}

.articleBody .bpbox_left,
.articleBody .bpimage_left {
  margin: 30px 30px 10px 0;
}

.articleBody .bpbox_right,
.articleBody .bpimage_right {
  margin: 30px 0 10px 30px;
}

.articleBody .bpbox_center .bpimage_triple .bpimage_image {
  margin-top: 0px;
}

.articleBody .bpbox_left .bpimage_image,
.articleBody .bpimage_left .bpimage_image,
.articleBody .bpbox_right .bpimage_image,
.articleBody .bpimage_right .bpimage_image {
  margin-top: 5px;
}

.articleBody .bpimage_center {
  margin: 30px auto 30px;
}

.articleBody .bpprofile {
  position: relative;
}

.articleBody .bpprofile::before,
.articleBody .bpprofile::after,
.articleBody .bpprofile_photo::before,
.articleBody .bpprofile_photo::after {
  content: '';
  display: block;
  background-image: linear-gradient(to right, #666, #666 1px, transparent 1px, transparent 3px);
  background-size: 5px 1px;
  background-position: top;
  background-repeat: repeat-x;
  height: 1px;
}

.articleBody .bpprofile::before,
.articleBody .bpprofile_photo::before {
  margin-bottom: 20px;
}

.articleBody .bpprofile::after,
.articleBody .bpprofile_photo::after {
  margin-top: 20px;
}

.articleBody .bpprofile_photo .bpprofile_text {
  margin-top: 16px;
}

.articleBody .bpprofile_photo .bpprofile_profile {
  overflow: hidden;
}

.articleBody .bpprofile_photo .bpprofile_profile .bpprofile_name {
  display: inline-block;
  margin-top: 10px;
}

.articleBody .bpprofile_photo .bpprofile_profile img {
  float: left;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin-right: 20px;
}

.articleBody ul ul,
.articleBody ol ul {
  list-style: none;
  padding-left: 20px;
}

.articleBody ul ul li,
.articleBody ol ul li {
  position: relative;
}

.articleBody ul ul li::before,
.articleBody ol ul li::before {
  content: '' !important;
  display: block;
  padding-right: 0.5em;
  width: 8px;
  height: 2px;
  background: #000;
  position: absolute;
  left: -14px;
  top: 14px;
}

.articleBody ol.circledDecimal ol {
  padding-left: 2em;
  list-style: decimal;
}

.articleBody ol.circledDecimal ol li {
  text-indent: 0;
}

.articleBody ol.circledDecimal ol > li::before {
  display: none;
}

.articleBody blockquote {
  padding: 48px;
}

.articleBody blockquote + p.textAlignRight {
  margin: -24px 0 0 0;
  font-size: 14px;
}

.articleBody blockquote + p.textAlignRight cite {
  font-style: normal;
}

.articleBody blockquote h3 {
  border-bottom: none;
  font-size: 1.8rem;
  padding-bottom: 0;
}

.articleBody blockquote:before {
  font-family: Helvetica;
  font-size: 60px;
}

.articleBody blockquote:after {
  font-family: Helvetica;
  font-size: 60px;
  bottom: -6px;
}

.articleBody .container-more .btn {
  width: auto;
  height: auto;
  min-height: 48px;
  padding: 14px 1rem;
  border-color: #d32f2f;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
}

.articleBody .container-more .btn:hover {
  text-decoration: none;
  background: #d32f2f;
  color: #fff;
}

.articleBody .container-more .btn:hover em {
  text-decoration: underline;
}

.articleBody .container-more .btn .container-more-title {
  color: #d32f2f;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.articleBody .container-more .btn em {
  font-weight: bold;
  white-space: normal;
}

.articleBody .container-more .btn:hover .container-more-title {
  color: #fff;
}

.articleBody .container-more .btn.btn-outline-normal {
  width: 158px;
  height: 48px;
  cursor: pointer;
}

.articleBody .container-more .btn.btn-outline-normal .container-more-title {
  color: #d32f2f;
  font-weight: bold;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.articleBody
.container-more
.btn.btn-outline-normal:hover
.container-more-title {
  color: #fff;
}

.articleBody .container-more .btn.btn-outline-normal i.icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  right: 12px;
}

.articleBody .container-more .btn i.icon::before {
  margin-left: 8px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.articleBody .container-more .btn:hover i.icon::before {
  color: #fff;
}

.articleBody .nav-article-page-anchor {
  margin-top: 24px;
  text-align: center;
}

.articleBody .nav-article-page-anchor ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  justify-content: center;
}

.articleBody .nav-article-page-anchor ul li {
  padding: 0 6px;
  line-height: 1;
  font-size: 1rem;
  color: #666;
}

.articleBody .nav-article-page-anchor ul li.current {
  color: #d32f2f;
}

.articleBody .container-movie {
  text-align: center;
}

.articleBody .bpprofile_position,
.articleBody .bpinterview_position {
  display: inline-block;
  margin-bottom: 12px;
}

.audio-box {
  margin: 30px auto 0;
  position: relative;
  height: 126px;
}

.audio-box a {
  display: block;
  margin: 0 auto;
  width: 96px;
  text-decoration: none !important;
}

.audio-box a .podcast-img {
  display: block;
  width: 96px;
  height: 96px;
  border: 2px #d32f2f solid;
  background: #fff url("/images/2021/common/icon_podcast.svg") no-repeat center center;
  background-size: 32px 24px;
  color: #d32f2f;
  border-radius: 100%;
  position: relative;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.audio-box a .podcast-txt {
  display: block;
  margin: 10px 0 0 0;
  color: #d32f2f;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  position: relative;
}

.audio-box a .podcast-txt::before {
  content: '再生する';
}

.audio-box a + audio {
  margin: 0 auto;
  opacity: 0;
  transition: 0.3s all;
  max-height: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.audio-box a.off + audio {
  opacity: 1;
  max-height: none;
}

.audio-box a:hover .podcast-img {
  background: #d32f2f url("/images/2021/common/icon_podcast_on.svg") no-repeat center center;
  background-size: 32px 24px;
}

.pageBox:not([data-page='1']) {
  visibility: hidden;
  height: 0px;
  overflow: hidden;
}

.pageBox:not([data-page='1']) .uliza-play-start-button {
  visibility: hidden;
  pointer-events: none;
}

/* Video */
.ulizahtml5 {
  max-width: 100%;
  margin: 0 auto;
}

.articleBody .video-style {
  display: block;
}

.articleBody .video-style {
  padding-top: 5px;
}

.articleBody .video-style.bpimage_center {
  padding-top: 0;
}

.articleBody .video-style .bpimage_title {
  margin-top: 8px;
}

/* 親記事の本文要素 */
.is-parent .articleBody {
  transform: scale(0.9, 0.9);
  transform-origin: left;
  width: calc(100% / 0.9);
}

/* 親記事フォロー */
.articleBody .p-seiresParent {
  position: relative;
}

.articleBody .p-seiresParent .follow-btn-box {
  position: absolute;
  bottom: 26px;
  left: 160px;
}

.articleBody .p-seiresParent > a {
  display: flex;
  padding: 24px 24px;
  overflow: hidden;
  background-color: #f6f6f6;
  text-decoration-line: none;
}

.articleBody .p-seiresParent > a:hover, .articleBody .p-seiresParent > a:focus {
  text-decoration: none;
}

.articleBody .p-seiresParent > a:hover .lead, .articleBody .p-seiresParent > a:focus .lead {
  text-decoration: underline;
}

.articleBody .p-seiresParent > a:hover .seiresImage img, .articleBody .p-seiresParent > a:focus .seiresImage img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}

.articleBody .p-seiresParent .seiresImage {
  position: relative;
  flex-shrink: 0;
  width: 113px;
  height: auto;
  margin-right: 20px;
  overflow: hidden;
}

.articleBody .p-seiresParent .seiresImage img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.articleBody .p-seiresParent .seiresText {
  width: 100%;
}

.articleBody .p-seiresParent h5 {
  width: 100%;
  margin: 0 0 0;
  color: #000;
  font-size: 1.8rem;
  line-height: 1.4;
  order: 2;
}

.articleBody .p-seiresParent .description {
  order: 3;
  margin: 0 0 15px;
  width: 100%;
  color: #666;
  font-size: 14px;
  line-height: 1.5;
}

.articleBody .p-seiresParent .followBox {
  padding-right: 0;
}

.articleBody .p-seiresParent .follow-info {
  font-size: 1.2rem;
}

.articleBody .p-seiresParent .seiresText .tag {
  margin: 0 0 10px;
}

.articleBody .p-seiresParent .seiresText .tag .tag-lb {
  display: block;
  width: 100px;
  text-align: center;
  padding: 4px 5px 4px;
  border-radius: 2px;
  background-color: #d32f2f;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  vertical-align: top;
}

.articleBody .p-seiresParent .description {
  margin: 0 0 15px;
  color: #666;
  font-size: 14px;
  line-height: 1.5;
}

.articleBody .p-seiresParent .seiresFollow {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.articleBody .p-seiresParent p.lead {
  margin: 0;
  line-height: 36px;
  color: #d32f2f;
  font-size: 14px;
  text-align: right;
}

.articleBody .bpbox.p-seiresIndex {
  padding: 16px 30px 30px;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li {
  margin: 4px 0;
  padding: 0;
  list-style: none;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li .num {
  margin: 0 8px 0 0;
  color: #666;
  font-size: 14px;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li.is-current {
  position: relative;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li.is-current em {
  display: inline-block;
  margin: 0;
  padding: 4px 5px 4px;
  border-radius: 2px;
  line-height: 1;
  background: #d32f2f;
  color: #fff;
  font-size: 12px;
  position: absolute;
  left: -78px;
  top: 3px;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li.is-current em:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-left: 8px solid #d32f2f;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  position: absolute;
  top: 5px;
  right: -7px;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li a {
  text-decoration: underline;
}

.articleBody .bpbox.p-seiresIndex ul.p-seiresIndex-items li a:hover {
  text-decoration: none;
}

.articleBody .bpbox_title-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 16px;
  border-bottom: 1px solid #ccc;
}

.articleBody .bpbox_title-box .bpbox_title {
  border-bottom: none;
  padding: 3px 0 0 0;
}

.articleBody .bpbox_title-box .follow-btn-box {
  flex-flow: column;
  margin: 0 0 0 16px;
  width: 122px;
}

.articleBody .bpbox_title-box .follow-btn-box .btn-rhizome-follow {
  margin: 0 0 0 auto;
  padding: 4px 6px;
  min-width: 122px;
}

.articleBody .bpbox_title-box .follow-btn-box .btn-rhizome-follow:before {
  margin-right: 4px;
}

.articleBody .bpbox_title-box .follow-info {
  margin: 4px 0 0 0;
  font-size: 1.2rem;
}

.articleBody .p-article_watchBox {
  margin: 30px 0;
  padding: 24px 24px;
  background-color: #f6f6f6;
}

.articleBody .p-article_watchBox p.p-article_watchBox_text {
  margin: 0;
  font-size: 1.6rem;
}

.articleBody .p-article_watchBox .follow-btn-box {
  margin: 16px auto 0;
  justify-content: center;
}

.articleBody .p-article_watchBox .follow-info {
  font-size: 1.2rem;
}

.articleBody .p-article_watchBox a {
  color: #d32f2f;
  text-decoration: none;
}

.articleBody .p-article_watchBox a:hover {
  color: #d32f2f;
  text-decoration: underline;
}

/* 1列記事 ===== */
.articleBody .is-wide {
  width: 1120px;
  position: relative;
  left: -235px;
  margin-right: -235px;
}

.articleBody .is-wide .bpimage_image img {
  text-align: center;
  width: 1120px;
}

/* セミナー子記事本文 ===== */
/* いいね ===== */
/* like */
.article-body-like {
  margin-top: 30px;
  text-align: center;
}

.article-body-like-btn {
  display: inline-flex;
  flex-flow: column;
  width: 56px;
  height: 56px;
  border-radius: 56px;
  padding: 0;
  line-height: 1.25;
  text-align: center;
  justify-self: center;
  align-items: center;
  outline: 0;
  border: 1px solid #d32f2f;
  background-color: #fff;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  transition: 0.3s color, 0.3s background-color;
  cursor: pointer;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration-line: none !important;
}

.article-body-like-btn.is-active, .article-body-like-btn:hover {
  background-color: #d32f2f;
  text-decoration: none;
}

.article-body-like-btn.is-active .article-body-like-icon, .article-body-like-btn:hover .article-body-like-icon {
  color: #fff;
}

.article-body-like-btn.is-active .article-body-like-num, .article-body-like-btn:hover .article-body-like-num {
  color: #fff;
}

.article-body-like-btn.is-active {
  cursor: auto;
}

.article-body-like-icon {
  margin: auto auto 0 auto;
  font-size: 1.8rem;
  color: #000;
}

.article-body-like-num {
  margin: 0 auto auto auto;
  font-size: 1.4rem;
  font-style: normal;
  color: #000;
}

.article-body-like-txt {
  margin-top: 4px;
  font-size: 1.4rem;
  color: #d32f2f;
}

/* 前後の記事 ===== */
.article-series-box {
  display: flex;
  margin: 48px auto 0;
  width: 650px;
}

.article-series {
  width: 50%;
}

.article-series.is-next {
  border-left: 1px solid #ebebeb;
}

.article-series-link {
  display: flex;
  align-items: center;
  flex-flow: column;
  position: relative;
  padding: 0 42px 0 42px;
}

.article-series-link:hover {
  text-decoration: none;
}

.article-series-link:not(:root):hover .article-series-main-title {
  color: #d32f2f;
}

.article-series-badge {
  margin-top: 4px;
  font-size: 1.1rem;
  color: #666;
}

.article-series-main-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #000;
}

.article-series-icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  color: #d32f2f;
}

.article-series-icon.icon-left-arrow {
  left: 16px;
}

.article-series-icon.icon-right-arrow {
  right: 16px;
}

.is-prev .article-series-link {
  text-align: left;
}

.is-prev .article-series-badge {
  margin: 0 auto 0 0;
}

.is-next .article-series-link {
  text-align: right;
}

.is-next .article-series-badge {
  margin: 0 0 0 auto;
}

/* この記事のタグ ===== */
.article-tag-list .section-title {
  text-align: center;
  font-size: 1.8rem;
  padding-top: 0;
}

.article-tag-list .section-title:before {
  display: none;
}

.is-article .section-tag-list-items {
  justify-content: center;
  width: 650px;
  margin: 0 auto;
}

.is-article .section-tag-list-text {
  font-size: 1.6rem;
}

.is-article .section-tag-list-link:not(:root) {
  padding: 1px 4px;
}

/* 子記事下ー ===== */
.l-col-section-main.is-article {
  margin-top: 32px;
}

/* 子記事下バナー ===== */
.artcle-bottom-bnr-box:not(:root) {
  margin: 24px auto 0 auto;
  text-align: right;
  width: 650px;
}

.artcle-bottom-bnr-img {
  max-width: 200px;
}

/* ギフト受取 ===== */
.gift-info-box {
  margin-top: 40px;
  margin-bottom: 20px;
  padding: 20px 30px;
  width: 100%;
  position: relative;
  border: 1px solid #eee;
}

.gift-info {
  display: flex;
  align-items: center;
  width: 100%;
}

.gift-info-share {
  display: flex;
  align-items: center;
  width: 100%;
}

.gift-info-share {
  width: 600px;
  margin-right: 30px;
}

.gift-info-icon {
  text-align: center;
  margin: 0 30px 0 0;
  min-width: 72px;
}

.icon-gift {
  font-size: 2.4rem;
}

.gift-info-icon-text {
  display: block;
  font-size: 1.2rem;
  font-weight: 700;
}

.gift-text {
  margin: 0;
}

.gift-text-msg {
  font-size: 1.4rem;
  line-height: 1.8;
}

.gift-text-date {
  font-size: 1.4rem;
  line-height: 1.8;
}

.gift-info-share .gift-text p a {
  color: #d32f2f;
}

.gift-info-entry {
  margin: 0;
  width: calc(100% - 630px);
}

.gift-info-entry-items {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  justify-content: center;
  border-left: 1px solid #eee;
}

.gift-info-entry-item {
  text-align: center;
  margin: 0;
  width: 50%;
  border-right: 1px solid #eee;
  padding: 10px 30px;
}

.gift-info-entry-item ~ .gift-info-entry-item {
  border-right: none;
}

.gift-info-entry-label {
  display: block;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
  color: #000;
}

.gift-info-entry-link {
  color: #d32f2f;
  margin: 6px 0 0;
  padding: 0 12px;
  font-size: 1.4rem;
}

.gift-info-close {
  border: none;
  background-color: transparent;
  outline: 0;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1;
  cursor: pointer;
}

.gift-info-close .icon-and {
  font-size: 3.0rem;
}

body.image .articleBody {
  overflow: hidden;
  zoom: 1;
  margin: 40px auto 54px;
  word-wrap: break-word;
  overflow-wrap: break-word;
  width: 100%;
  min-width: 980px;
}

body.image .articleBody .bpimage_center {
  display: block;
  width: auto;
  max-width: 980px;
  margin: 0 auto 16px;
}

body.image .articleBody .bpimage_image {
  display: block;
  margin-bottom: 16px;
  text-align: center;
}

body.image .articleBody .bpimage_title {
  margin: 0;
  line-height: 24px;
  font-size: 1.4rem;
}

body.image .articleBody .bpimage_caption {
  margin: 0;
  line-height: 24px;
  font-size: 1.4rem;
}

body.image .articleBody .bpimage_caption .atttx {
  font-weight: normal;
  color: #666;
}

body.image .articleBody .atcl-header {
  width: 980px;
  padding: 40px 0 56px;
  margin: 0 auto;
  border-top: 1px solid #eee;
  border-bottom: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body.image .articleBody .atcl-header h1 {
  border: none;
  font-size: 28px;
  margin: 0;
  line-height: 1;
}

body.image .articleBody .atcl-header .date {
  font-size: 1.4rem;
  line-height: 1.4rem;
  display: block;
  font-weight: normal;
  color: #666;
  margin: 0;
  margin-top: 16px;
}

body.image .articleBody ul.panel_img {
  display: flex;
  flex-flow: wrap;
  overflow: hidden;
  zoom: 1;
  width: 980px;
  margin: 0 auto;
  padding-left: 0;
  list-style: none;
}

body.image .articleBody ul.panel_img li {
  vertical-align: top;
  margin: 0 27px 27px 0;
  padding: 0;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body.image .articleBody ul.panel_img li:nth-child(4n) {
  margin-right: 0;
}

body.image .articleBody ul.panel_img li a:hover {
  opacity: 0.7;
}

body.image .button {
  width: 980px;
  margin: 0 auto 40px;
  list-style: none;
  padding: 0;
  text-align: center;
}

body.image .button li {
  display: inline-block;
}

body.image .button .standard-btn {
  font-size: 14px;
  min-width: 160px;
  margin: 8px;
  padding: 14px 8px;
}

body.image main + .ft-wrap {
  padding-top: 15px;
  border-top: 1px solid #eee;
}

body.image .paywall-box {
  padding-bottom: 60px;
}

body.image .paywall-campaign-txt {
  margin: 8px 0;
  text-align: center;
  font-size: 1.4rem;
}

.theme-list-box .backnumber-list-img-box {
  width: 120px;
  overflow: hidden;
  margin-right: 24px;
  order: 1;
}

.theme-list-box .backnumber-list-cnt {
  order: 2;
}

.theme-list-box .backnumber-list-link:not(:root).is-wide .backnumber-list-cnt {
  padding: 0;
}

.theme-list-box .backnumber-list-info-items .backnumber-list-info-item {
  padding: 0 5px;
  color: #fff;
  background-color: #d32f2f;
}

/* 子記事ヘッダ ===== */
.bzb .article-header-category-link:hover {
  opacity: 1;
  text-decoration: none;
  background: #d32f2f;
  color: #fff;
}

.bzb .articles-main-parent-title:hover {
  color: #666;
}

.bzb .article-header-author-link:hover .article-header-author-name {
  color: #000;
}

.bzb .article-header-author-link:hover .article-header-author-position {
  color: #666;
}

.bzb {
  /* ビズボード */
  /* スライダー */
}

.bzb .l-wrapper {
  min-width: 1px;
}

.bzb .l-content {
  width: auto;
}

.bzb .l-article {
  width: 92vw;
  max-width: 920px;
}

.bzb .content {
  width: 92vw;
  max-width: 920px;
  margin: 0 auto;
}

.bzb .ft-wrap {
  margin-top: 32px;
  padding-top: 16px;
  border-top: 1px solid #ebebeb;
}

.bzb .ft-wrap > .inner {
  width: 92vw;
  max-width: 920px;
}

.bzb.image .articleBody {
  min-width: 1px;
}

.bzb.image .articleBody .bpimage_image img {
  width: auto !important;
  max-width: 100%;
}

.bzb.image .articleBody .button {
  max-width: 100%;
}

@media screen and (max-width: 600px) {
  .bzb.image .articleBody {
    min-width: 1px;
  }
  .bzb.image .articleBody .bpimage_image img {
    width: auto !important;
    max-width: 100%;
  }
  .bzb.image .atcl-header {
    min-width: 1px;
  }
}

@media screen and (max-width: 600px) {
  .bzb .article-header-action {
    margin-top: 16px;
  }
  .bzb .article-header-author-name {
    margin-right: 12px;
    line-height: 1.6;
    white-space: nowrap;
    font-size: 1.4rem;
    font-weight: 700;
    color: #000;
  }
}

.bzb .hd-wrap.is-clone {
  display: none;
}

.bzb .articleBody .bpimage_center,
.bzb .articleBody .bpimage_left,
.bzb .articleBody .bpimage_right,
.bzb .articleBody .bpimage_double,
.bzb .articleBody .bpbox_right,
.bzb .articleBody .bpbox_left {
  max-width: 92vw !important;
  width: auto;
  float: none;
  text-align: center;
}

.bzb .articleBody .bpbox_text .bpimage_center,
.bzb .articleBody .bpbox_text .bpimage_left,
.bzb .articleBody .bpbox_text .bpimage_right {
  max-width: 100% !important;
}

.bzb .articleBody .bpimage_left,
.bzb .articleBody .bpimage_right {
  margin: 30px auto 0;
}

.bzb .articleBody .bpimage_center {
  text-align: center;
}

.bzb .articleBody .bpimage_center .bpimage_caption,
.bzb .articleBody .bpimage_center .bpimage_click {
  text-align: left !important;
}

.bzb .articleBody [class^='bpimage_'] .bpimage_caption,
.bzb .articleBody [class^='bpimage_'] .bpimage_click,
.bzb .articleBody [class^='bpimage_'] .bpimage_title {
  display: block;
  text-align: left !important;
}

.bzb .articleBody .bpimage_image img {
  height: auto;
  width: 100% !important;
}

.bzb .articleBody .bpimage_triple .bpimage_wrap {
  width: auto !important;
  float: none;
}

.bzb .articleBody .bpimage_triple .bpimage_wrap .bpimage_center,
.bzb .articleBody .bpimage_triple .bpimage_right {
  margin: 16px auto 0 auto;
}

.bzb .articleBody .bpbox_right,
.bzb .articleBody .bpbox_left {
  float: none;
  margin: 30px auto 0;
}

.bzb .articleBody .bpimage_caption_right,
.bzb .articleBody .bpimage_double,
.bzb .articleBody .bpimage_triple {
  margin: 0 auto;
}

.bzb .articleBody .bpimage_double .bpimage_left + .bpimage_right {
  margin-top: 16px;
}

.bzb .footer {
  padding: 20px 0 20px;
  border-top: 1px solid #eee;
}

.bzb body.image.content {
  width: 92vw;
  max-width: 920px;
  padding: 0;
}

.bzb body.image.articleBody {
  min-width: 1px;
}

.bzb body.image.articleBody .atcl-header {
  width: 92vw;
  max-width: 920px;
  padding: 30px 0;
  margin: 0 auto;
  border-top: 1px solid #eee;
  border-bottom: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.bzb body.image.articleBody .atcl-header .date {
  font-size: 0.875rem;
  line-height: 0.875rem;
  display: block;
  font-weight: normal;
  color: #666;
  margin: 0;
  margin-top: 16px;
}

.bzb body.image.articleBody .atcl-header h1 {
  border: none;
  font-size: 28px;
  margin: 0;
  line-height: 1.5;
}

.bzb body.image.articleBody .bpimage_image img {
  width: auto !important;
  max-width: 100%;
}

.bzb body.image.articleBody .bpimage_center .bpimage_title {
  width: auto;
  margin: 10px 0 0;
  text-align: left;
}

.bzb body.image.articleBody .bpimage_center .bpimage_caption {
  width: auto;
  text-align: left;
  line-height: 1.3;
}

.bzb .articleBody .bpimage_caption_right .bpimage_left + .bpimage_title,
.bzb .bzb
.articleBody
.bpimage_double
.bpimage_left
+ .bpimage_right
+ .bpimage_title {
  margin-top: 8px;
}

.bzb body.image.button {
  width: 92vw;
  max-width: 920px;
  margin: 0 auto;
  list-style: none;
  padding: 0;
  text-align: center;
}

.bzb body.image.button li {
  display: inline-block;
}

.bzb body.image.button a {
  font-size: 14px;
  line-height: 1.3em;
  display: inline-block;
  min-width: 160px;
  background: #fff;
  color: #d32f2f;
  border: 1px solid #d32f2f;
  border-radius: 0.125rem;
  text-decoration: none;
  margin: 8px;
  padding: 14px 8px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
  text-align: center;
  transition: 0.5s;
  font-weight: bold;
}

.bzb body.image.button a:hover {
  background: #d32f2f;
  color: #fff;
}

.bzb .article-slider-box {
  width: 650px;
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  .bzb {
    /* スライダー ===== */
  }
  .bzb .articleBody .bpimage_center,
  .bzb .articleBody .bpimage_left,
  .bzb .articleBody .bpimage_right,
  .bzb .articleBody .bpimage_double,
  .bzb .articleBody .bpimage_triple,
  .bzb .articleBody .bpimage_set,
  .bzb .articleBody .bpimage_caption_right {
    width: 95% !important;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .bzb .articleBody .bpimage_double .bpimage_left,
  .bzb .articleBody .bpimage_double .bpimage_right,
  .bzb .articleBody .bpimage_triple .bpimage_left,
  .bzb .articleBody .bpimage_triple .bpimage_right,
  .bzb .articleBody .bpimage_triple .bpimage_center,
  .bzb .articleBody .bpimage_caption_right .bpimage_left,
  .bzb .articleBody .bpimage_caption_right .bpimage_right {
    width: 100% !important;
  }
  .bzb .articleBody .bpbox_text .bpimage_center,
  .bzb .articleBody .bpbox_text .bpimage_left,
  .bzb .articleBody .bpbox_text .bpimage_right {
    max-width: 100% !important;
    width: 100% !important;
  }
  .bzb .article-slider-box {
    margin-top: 16px;
    width: auto;
  }
  .bzb .article-slider-box.is-slider-mode-16-9 .article-slider-main-img-aspect,
  .bzb .article-slider-box.is-slider-mode-16-9 .article-slider-sub-img-aspect {
    padding-top: 56.25%;
  }
  .bzb .article-slider-box.is-slider-mode-3-2 .article-slider-main-img-aspect,
  .bzb .article-slider-box.is-slider-mode-3-2 .article-slider-sub-img-aspect {
    padding-top: 66.66666666666667%;
  }
  .bzb .article-slider-main-box {
    opacity: 0;
    position: relative;
    margin-top: 8px;
  }
  .bzb .article-slider-main-box.is-active, .bzb .article-slider-main-box.is-single {
    opacity: 1;
  }
  .bzb .article-slider-main-items {
    position: relative;
  }
  .bzb .slider-btn:not(:root) {
    position: absolute;
    top: 50%;
    margin-top: -22px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: none;
    background-color: rgba(246, 246, 246, 0.5);
    z-index: 2;
  }
  .bzb .slider-btn:not(:root).is-prev {
    left: 0;
  }
  .bzb .slider-btn:not(:root).is-next {
    right: 0;
  }
  .bzb .slider-btn:not(:root).is-article-sub {
    background-color: transparent;
  }
  .bzb .slider-btn:not(:root) .icon-left-arrow,
  .bzb .slider-btn:not(:root) .icon-right-arrow {
    color: #d32f2f;
  }
  .bzb .article-slider-main-link:not(:root) {
    display: block;
    text-decoration: none;
    outline: 0;
  }
  .bzb .article-slider-main-img-aspect,
  .bzb .article-slider-sub-img-aspect {
    position: relative;
    display: block;
    padding-top: 75%;
  }
  .bzb .article-slider-main-img,
  .bzb .article-slider-sub-img {
    position: absolute;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
  }
  .bzb .article-slider-main-title {
    display: block;
    line-height: 1.5;
    font-size: 1.4rem;
    font-weight: 700;
    overflow: hidden;
    margin-bottom: 16px;
  }
  .bzb .article-slider-main-text {
    display: block;
    font-size: 1.2rem;
    overflow: hidden;
    margin-top: 16px;
  }
  .bzb .article-slider-sub-box {
    opacity: 0;
    width: calc(100% - 56px);
    position: relative;
    margin: 16px auto 0;
  }
  .bzb .article-slider-sub-box.is-active, .bzb .article-slider-sub-box.is-not-slider {
    opacity: 1;
  }
  .bzb .article-slider-sub-box.is-not-slider .article-slider-sub-items {
    display: flex;
    justify-content: center;
  }
  .bzb .article-slider-sub-box.is-not-slider .article-slider-sub-items .article-slider-sub-item {
    width: calc(100% / 6);
  }
  .bzb .article-slider-sub-box.is-not-slider .article-slider-sub-item.swiper-slide-active .article-slider-sub-img {
    border-color: transparent;
  }
  .bzb .article-slider-sub-box.is-not-slider .article-slider-sub-item.is-active .article-slider-sub-img {
    border-color: #d32f2f;
  }
  .bzb .article-slider-sub-box.is-not-slider .slider-btn:not(:root) {
    display: none;
  }
  .bzb .article-slider-sub-box .slider-btn:not(:root).is-prev {
    left: -42px;
  }
  .bzb .article-slider-sub-box .slider-btn:not(:root).is-next {
    right: -42px;
  }
  .bzb .article-slider-sub-item.swiper-slide-active .article-slider-sub-img {
    border-color: #d32f2f;
  }
  .bzb .article-slider-sub-btn:not(:root) {
    display: block;
    border: none;
    border-radius: 0;
    background-color: transparent;
    padding: 0;
    width: 100%;
  }
  .bzb .article-slider-sub-img {
    border: 2px solid transparent;
    transition: 0.3s border-color;
  }
  .bzb .article-slider-num-box {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 16px;
    font-size: 1.2rem;
  }
  .bzb .article-slider-title:not(:root) {
    font-weight: 700;
    margin: 16px 0 0;
  }
  .bzb .article-slider-caption {
    display: block;
    margin: 8px 0 0;
  }
}

/* 検索系 ========== */
/* 検索結果一覧 ===== */
.tag-search-form-box.is-active .icon-search {
  display: none;
}

.tag-search-form {
  position: relative;
  background-color: #f6f6f6;
  padding: 12px 104px 0 16px;
  display: flex;
  flex-wrap: wrap;
}

.tag-search-form .icon-search {
  width: 20px;
  font-size: 2rem;
  color: #666;
  margin: 4px 12px 0 0;
}

.tag-search-input-box {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% - 32px);
}

.tag-search-item {
  display: flex;
  align-items: center;
  padding: 1px 8px 1px 8px;
  margin: 0 12px 12px 0;
  background-color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
}

.tag-search-item.is-modal {
  font-size: 1.4rem;
  font-weight: 400;
  padding: 2px 6px;
  margin: 0 4px 4px 0;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 2px;
}

.tag-search-item.is-modal .tag-search-remove-btn:not(:root) {
  margin-left: 4px;
}

.tag-search-item.is-modal .tag-search-remove-btn:not(:root) .icon-and {
  color: #dadada;
}

.tag-search-item.is-modal .icon-tag-sharp {
  font-size: 1.4rem;
}

.tag-search-item .icon-tag-sharp {
  font-size: 1.6rem;
}

.tag-search-remove-btn:not(:root) {
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  margin-left: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tag-search-remove-btn:not(:root) .icon-and {
  color: #d32f2f;
  font-size: 2rem;
}

.tag-search-reset-btn {
  display: flex;
  align-items: center;
  background-color: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  position: absolute;
  right: 16px;
  top: 16px;
  font-size: 1.4rem;
  font-weight: 700;
}

.tag-search-reset-btn .icon-reset {
  color: #d32f2f;
  margin-right: 10px;
}

.tag-search-input:not(:root) {
  padding: 0;
  height: 30px;
  line-height: 30px;
  margin: 0 0 12px;
}

.case-search-items {
  margin-top: 26px;
}

.case-search-item {
  margin: 12px 0 0;
  display: flex;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.case-search-item.is-theme {
  width: calc(100% - 326px - 12px);
  margin-right: 12px;
}

.case-search-item.is-company {
  width: 326px;
}

.case-search-item.is-reordering .case-search-title-box,
.case-search-item.is-reordering .case-search-cnt-box {
  padding-top: 8px;
  padding-bottom: 8px;
}

.case-search-title-box {
  margin: 0;
  padding: 12px 16px;
  width: 152px;
  display: flex;
  align-items: center;
}

.case-search-title {
  font-size: 1.4rem;
  font-weight: 700;
}

.case-search-tag-count {
  display: none;
  width: 16px;
  height: 16px;
  border-radius: 16px;
  text-align: center;
  white-space: nowrap;
  line-height: 16px;
  font-size: 1.1rem;
  font-weight: 700;
  background-color: #f6f6f6;
  color: #d32f2f;
  margin-left: 4px;
}

.case-search-tag-count.is-active {
  display: inline-block;
}

.case-search-cnt-box {
  margin: 0;
  padding: 12px 16px 12px 0px;
  width: calc(100% - 152px);
  display: flex;
  align-items: center;
}

.case-search-parallel {
  display: flex;
}

.case-search-tag-box {
  height: 30px;
}

.case-search-tag-btn-box {
  margin-left: auto;
  min-width: 96px;
  display: flex;
  justify-content: flex-end;
}

.case-search-tag-btn:not(:root) {
  display: flex;
  align-items: center;
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: 700;
  border: none;
  background-color: transparent;
  border-radius: 0;
  padding: 0;
  white-space: nowrap;
}

.case-search-tag-btn:not(:root) .icon-and {
  display: inline-block;
  color: #d32f2f;
  transform: rotate(45deg);
  font-size: 1.8rem;
  margin-right: 8px;
  transition: 0.3s transform;
}

.case-search-tag-btn:not(:root).is-active .icon-and {
  transform: rotate(0deg);
}

.case-search-option-items {
  display: flex;
  align-items: center;
}

.case-search-option-items .case-search-option-item:first-of-type {
  border-left: none;
  margin-left: 0;
  padding-left: 0;
}

.case-search-option-items .case-search-option-item:first-of-type:first-of-type:before {
  content: none;
}

.case-search-option-item {
  display: flex;
  align-items: center;
  position: relative;
  margin: 0 0 0 14px;
  padding: 0 0 0 24px;
}

.case-search-option-item:before {
  content: '';
  display: block;
  width: 1px;
  height: 30px;
  background-color: rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -15px;
}

.case-search-option-ttl {
  font-weight: 700;
  font-size: 1.4rem;
  margin: 0;
  padding: 0 10px 0 0;
}

.case-search-option-cnt {
  margin: 0;
}

.case-search-btm-box {
  margin-top: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.case-search-btm-info-box {
  display: flex;
  align-items: center;
  padding-left: 14px;
}

.case-search-btm-info-box.is-hide {
  display: none;
}

.case-search-result-num-box {
  margin-right: 16px;
}

.case-search-result-num {
  font-size: 2.8rem;
  font-weight: 700;
}

.case-search-result-text {
  font-size: 1.8rem;
}

.case-search-reordering-box {
  display: flex;
}

.case-search-btm-btn-box {
  margin-left: auto;
  display: flex;
}

/* 著者・アドバイザリーボード ========== */
/* 著者ナビゲーション ===== */
.authors-nav {
  display: flex;
  align-items: center;
}

.authors-nav.-marketer {
  display: initial;
}

.syllabary-nav {
  margin: 0 16px 0 0;
  padding: 0 16px 0 0;
  border-right: 1px solid #ebebeb;
}

.-marketer .syllabary-nav {
  border: none;
  margin-bottom: 15px;
  display: flex;
}

.-marketer .syllabary-nav > span {
  flex-shrink: 0;
  font-weight: 700;
}

.syllabary-items {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.syllabary-item {
  margin: 0 4px 0 0;
  padding: 0;
}

.syllabary-item-link {
  display: block;
  width: 34px;
  height: 32px;
  line-height: 32px;
  border-radius: 2px;
  background: #f6f6f6;
  text-align: center;
  font-size: 1.8rem;
}

.syllabary-item-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

.is-active .syllabary-item-link {
  background: #d32f2f;
  color: #fff;
}

.advisory-nav-link {
  font-style: 1.8rem;
  font-weight: 700;
  color: #000;
}

.advisory-nav-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

.is-active .advisory-nav-link {
  color: #d32f2f;
}

.-marketer .advisory-nav-link {
  margin: 0 5px 10px 0;
  white-space: nowrap;
  background-color: #f6f6f6;
  padding: 2px 10px;
  display: inline-block;
  font-weight: 500;
}

.-marketer .advisory-nav-link.is-active {
  background: #d32f2f;
  color: #fff;
}

/* 著者一覧 ===== */
.authors-list-items {
  display: flex;
  flex-flow: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.authors-list-item {
  display: flex;
  width: calc((100% - 50px) / 3);
  margin: 0 0 0 25px;
  padding: 24px 0 24px 0;
  border-bottom: 1px solid #ebebeb;
}

.authors-list-item:nth-child(3n+1) {
  margin: 0;
}

.authors-list-img-box {
  margin: 0 16px 0 0;
  width: 48px;
  height: 48px;
  overflow: hidden;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
}

.authors-list-img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: inherit;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.authors-list-position {
  margin: 0;
  line-height: 1.6;
  font-size: 1.1rem;
  color: #666;
}

.authors-list-name {
  margin: 0;
}

.authors-list-name-link {
  line-height: 1.78;
  font-size: 1.8rem;
  font-weight: 700;
  color: #000;
}

.authors-list-name-link:hover {
  text-decoration: none;
  color: #d32f2f;
}

/* 著者ヘッダー ===== */
.author-header-box {
  display: flex;
  flex-flow: wrap;
}

.author-header-img-box {
  width: 135px;
  margin-right: 40px;
  flex-shrink: 0;
}

.author-header-img {
  width: 135px;
  height: 135px;
  border-radius: 50%;
}

.author-header-info {
  width: calc(100% - 175px);
}

.author-header-name {
  margin: 0;
  font-size: 2.8rem;
  font-weight: 700;
}

.author-header-kana {
  margin: 0 0 0 0;
  font-size: 1.4rem;
}

.author-header-position {
  margin: 8px 0 0 0;
  font-size: 1.4rem;
  color: #666;
}

.author-header-action {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin: 16px 0 0 0;
  align-items: center;
}

.author-header-role {
  display: flex;
}

.author-header-role-items {
  display: flex;
  margin: 0 12px 0 0;
  padding: 0;
  list-style: none;
}

.author-header-role-item {
  margin: 0 8px 0 0;
  padding: 2px 8px;
  background: #d32f2f;
  border-radius: 2px;
  color: #fff;
}

.author-header-book {
  margin: 24px 0 0 0;
  width: 100%;
}

.author-header-book-title {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 700;
}

.author-header-book-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.author-header-book-item {
  margin: 4px 0 0 0;
  padding: 0;
  line-height: 1.6;
  font-size: 1.4rem;
}

.author-header-book-item .author-header-book-link {
  text-decoration: underline;
  color: #d32f2f;
}

.author-header-book-item .author-header-book-link:hover {
  text-decoration: none;
}

.author-header-detail {
  margin: 24px 0 0 0;
  width: 100%;
}

.author-header-detail .articleBody {
  margin: 0;
}

.author-header-detail .articleBody p:first-of-type {
  margin-top: 0;
}

.author-header-detail-note {
  margin: 12px 0 0 0;
  line-height: 1.5;
  font-size: 1.4rem;
  color: #666;
}

/* デジタル雑誌 ========== */
/* デジタル雑誌一覧 ===== */
.viewer-list-items {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
}

.viewer-list-item {
  margin: 0;
  padding: 0;
  width: 344px;
}

.viewer-magazine-box {
  background: #f6f6f6;
  margin: 16px 0 0 0;
  padding: 32px 56px;
}

.viewer-magazine-title {
  margin: 16px 0 0 0;
  position: relative;
  font-size: 1.8rem;
  height: 54px;
  line-height: 27px;
  font-weight: 700;
  overflow: hidden;
  word-break: break-all;
  text-align: justify;
  min-width: 10em;
}

.viewer-magazine-title::after {
  content: '';
  background: #f6f6f6;
  width: 100%;
  height: 100%;
}

.viewer-date {
  margin: 4px 0 0 0;
  font-size: 1.4rem;
  color: #666;
}

.viewer-magazine-link:hover .viewer-cover-img {
  transform: scale(1.06);
}

.viewer-magazine-link:hover .viewer-magazine-title {
  color: #d32f2f;
}

.viewer-cover-img-box {
  position: relative;
  width: 232px;
  overflow: hidden;
}

.viewer-cover-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

/* デジタル雑誌バックナンバー一覧 ===== */
.viewer-magazine-items {
  display: flex;
  flex-wrap: wrap;
  margin: 32px 0 0;
  padding: 0;
  list-style: none;
}

.viewer-magazine-items .viewer-magazine-item {
  width: calc( (100% / 5) - ((31px * (5 - 1)) / 5));
  margin-right: 31px;
}

.viewer-magazine-items .viewer-magazine-item:nth-of-type(5n) {
  margin-right: 0;
}

.viewer-magazine-items .viewer-magazine-item:nth-of-type(-n + 5) {
  margin-top: 0;
}

.viewer-magazine-item {
  margin: 30px 31px 0 0;
}

.viewer-magazine-link:not(:root) {
  display: block;
  text-decoration: none;
}

.viewer-magazine-link:not(:root):hover .viewer-magazine-img {
  transform: scale(1.06);
}

.viewer-magazine-link:not(:root):hover .viewer-magazine-link-title {
  color: #d32f2f;
}

.viewer-magazine-img-box {
  position: relative;
  overflow: hidden;
}

.viewer-magazine-img {
  position: relative;
  z-index: 1;
  transition: transform 0.4s ease-in-out;
}

.viewer-magazine-link-title {
  display: block;
  margin-top: 14px;
  font-size: 1.8rem;
  font-weight: 700;
  transition: 0.3s color;
  line-height: 1.4;
}

.viewer-magazine-link-date {
  display: block;
  margin-top: 2px;
  font-size: 1.4rem;
  font-weight: 700;
  color: #666;
}

.magazine-old-link:not(:root) {
  display: inline-block;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  padding-right: 24px;
  text-decoration: none;
}

.magazine-old-link:not(:root) .icon-outbound {
  position: absolute;
  top: 50%;
  right: 6px;
  margin-top: -7px;
  font-size: 1.3rem;
  color: #d32f2f;
}

.magazine-old-link:not(:root):hover {
  color: #d32f2f;
}

/* マイページ ========== */
/* フォローしているタグヘッダー ===== */
.follow-tag-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.follow-tag-regist .standard-btn:not(:root) {
  min-width: 1px;
}

/* フォローしているタグ一覧 ===== */
.follow-tag-items {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

.follow-tag-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 16px;
  padding: 0 0 16px;
  list-style: none;
  border-bottom: 1px solid #ebebeb;
  width: 100%;
}

.follow-tag-btn-box {
  width: 142px;
  flex-shrink: 0;
  margin-left: 16px;
}

.follow-tag-cnt .section-tags-box {
  margin-top: 0;
}

/* タグ新着 ===== */
.is-mypage-tag .is-parent-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #000;
}

.is-mypage-tag .is-parent-title .icon-tag {
  margin-right: 10px;
  color: #d32f2f;
}

.is-mypage-tag .backnumber-list-item {
  position: relative;
}

/* クリップ ===== */
.is-mypage-clip .is-parent-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #000;
}

.is-mypage-clip .is-parent-title .icon-clip {
  margin-right: 10px;
  color: #d32f2f;
}

.is-mypage-clip .backnumber-list-item {
  position: relative;
}

.mypage-clip-bottom {
  display: flex;
  position: absolute;
  bottom: 16px;
  justify-content: space-between;
  width: calc(100% - 159px);
  pointer-events: none;
}

.mypage-clip-date {
  margin: 0;
  color: #666;
  font-size: 1.4rem;
}

.mypage-clip-delete {
  position: relative;
  margin: 0;
  font-size: 1.4rem;
  color: #d32f2f;
  z-index: 10;
}

.mypage-clip-delete .icon-trash-can {
  margin-right: 6px;
}

.mypage-clip-delete-btn:not(:root) {
  pointer-events: all;
  padding: 0;
  border: none;
  border-radius: 0;
  color: #d32f2f;
  background-color: transparent;
}

.mypage-clip-delete-btn:not(:root):hover {
  text-decoration: none;
}

.mypage-clip-delete-btn:not(:root):hover .mypage-clip-delete-text {
  text-decoration: underline;
}

.no-result-item {
  margin: 0;
}

.no-result-text {
  margin: 40px 0;
  text-align: center;
  color: #666;
}

/* ペイウォール ===== */
.mypage-paywal {
  margin: 0;
  padding: 40px;
  background: #f6f6f6;
}

/* リゾーム ===== */
.is-mypage .noticeText:not(:root) {
  margin: 24px auto 0;
  text-align: center;
  line-height: 1.76;
  font-size: 1.7rem;
}

.is-mypage .listFunctionForUser {
  display: flex;
  margin: 32px auto 40px;
  padding: 0;
  list-style: none;
}

.is-mypage .listFunctionForUser > li {
  margin: 0;
  padding: 0 16px 16px;
  width: calc(100% / 3);
}

.is-mypage .listFunctionForUser > li ~ li {
  border-left: 1px solid #ebebeb;
}

.is-mypage .listFunctionForUser > li > p {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
}

.is-mypage .functionImg {
  margin: 8px 0 16px;
  text-align: center;
}

.is-mypage .functionImg > img {
  height: 40px;
}

.is-mypage .boxActionRegister .noticeText:not(:root) {
  margin: 0 auto 8px;
}

.is-mypage .boxActionRegister .btn-regist {
  padding: 0;
  font-size: 1.7rem;
  line-height: 56px;
}

/* 広告 ========== */
/* 共通 ===== */
.ad-notice ul,
.ad-pickup ul,
.ad-recommend ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ad-notice li,
.ad-pickup li,
.ad-recommend li {
  margin: 0;
  border-bottom: 1px solid #ebebeb;
}

.ad-pickup ul li:first-of-type {
  border-top: 1px solid #ebebeb;
}

.ad-recommend {
  margin-top: 16px;
}

.ad-recommend ul li:first-of-type {
  border-top: 1px solid #ebebeb;
}

/* ピックアップ ===== */
.ad-text-box {
  padding: 24px;
  background-color: #f6f6f6;
}

.ad-text-title {
  margin: 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 2;
}

.ad-text-items {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.ad-text-items li {
  margin: 4px 0 0;
}

.ad-text-items li:first-of-type {
  margin-top: 0;
}

.ad-text-link:not(:root) {
  position: relative;
  display: inline-block;
  font-size: 1.4rem;
  padding-left: 16px;
  text-decoration: none;
}

.ad-text-link:not(:root):before {
  content: '';
  display: block;
  width: 2px;
  height: 2px;
  border-radius: 2px;
  background-color: #000;
  position: absolute;
  top: 10px;
  left: 8px;
}

.ad-text-link:not(:root):hover {
  color: #d32f2f;
}

/* rhizome ========== */
/* 共通 ===== */
/* 通知エリア */
.notificationArea ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.notificationArea ul li {
  height: auto;
  margin: 0;
}

.notificationArea ul li.active a {
  background: #fffcf8;
  box-sizing: border-box;
}

.notificationArea ul .itemNotice {
  display: flex;
}

.notificationArea ul .itemNotice .itemIcon {
  text-align: center;
}

.notificationArea ul .itemNotice .itemContent p.desciption {
  color: #666;
  margin: 5px 0 0 0;
  font-size: 1.4rem;
}

.notificationArea ul .itemNotice .itemDate {
  align-self: flex-end;
}

.notificationArea ul .itemNotice .itemDate p {
  margin: 0;
}

.notificationArea ul .itemNotice .itemDate p span {
  font-size: 1rem;
  color: #e6001e;
  font-family: serif;
}

.notificationArea ul .itemNotice .itemDate p span:before {
  font-weight: 500;
  font-family: serif;
}

.notificationArea ul .itemNotice .itemDate p span.ONB:before {
  content: 'NB';
}

.notificationArea ul .itemNotice .itemDate p span.NXW:before {
  color: #f13c5d;
  content: 'xwoman';
}

.notificationArea ul .itemNotice .itemDate p span.NXWT:before {
  color: #36b2b2;
  content: 'Terrace';
}

.notificationArea ul .itemNotice .itemDate p span.ARIA:before {
  color: #937e28;
  content: 'ARIA';
}

.notificationArea ul .itemNotice .itemDate p span.DUAL:before {
  color: #e6001e;
  content: 'DUAL';
}

.notificationArea ul .itemNotice .itemDate p span.DRS:before {
  color: #ff6600;
  content: 'doors';
}

.notificationArea ul .itemNotice .itemDate p span.NXR:before {
  color: #d32f2f;
  content: 'xTREND';
}

.notificationArea ul .itemNotice .itemDate p var {
  font-size: 1.4rem;
  color: #666;
  font-style: normal;
  font-weight: 500;
}

.notificationArea ul .itemContent h5.title {
  font-style: normal;
  font-weight: 500;
  font-size: 1.4rem;
  margin: 0;
}

.notificationArea ul .itemContent h5.title var,
.notificationArea ul .itemContent h5.title em {
  font-style: normal;
  font-weight: 700;
  font-size: 1.6rem;
}

/* リゾーム案内 */
.registerForUse .lblNotificationRed {
  color: #fff;
  font-weight: 700;
  font-size: 1.7rem;
  background-color: #d32f2f;
  height: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  width: 320px;
  margin: 0 auto 15px;
  position: relative;
}

.registerForUse .lblNotificationRed:after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-width: 12px 0 0 12px;
  border-color: transparent transparent transparent #d32f2f;
  left: 50%;
  top: -12px;
}

.registerForUse .noticeText {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.2px;
  color: #242424;
  margin-bottom: 19px;
}

.boxActionRegister {
  background-color: #f6f6f6;
  padding: 40px;
  margin: 0 auto;
}

.btnGreenGradientPc:not(:root) {
  display: block;
  width: 284px;
  height: 56px;
  line-height: 56px;
  color: #fff;
  font-size: 1.7rem;
  font-weight: 700;
  text-align: center;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

.btnGreenGradientPc:not(:root):hover {
  opacity: 0.5;
}

.boxActionRegister .btnGreenGradientPc {
  width: 344px;
  margin: 0 auto;
  background-color: #00b3a4;
}

/* ヘッダー ===== */
.hd-global-nav-items .avatarUser {
  margin: 0;
  height: 100%;
}

.hd-global-nav-items .avatarUser a {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-left: 8px;
  height: 100%;
}

.hd-global-nav-items .avatarUser.is-active .modalNotification {
  display: block;
}

.hd-global-nav-items .avatarCircle {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  overflow: hidden;
}

.hd-global-nav-items .avatarCircle .rhizomeStage {
  width: 100%;
}

.hd-global-nav-items .modalNotification {
  display: none;
  width: 400px;
  max-height: 700px;
  position: absolute;
  top: 67px;
  right: 0;
  z-index: 9999;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
  border-top: 1px solid #d32f2f;
  background: #fff;
  z-index: 9999;
  transition: all 0.4s ease-in-out;
}

.hd-global-nav-items .modalNotification:before {
  content: '';
  position: absolute;
  right: 12px;
  top: -8px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #d32f2f;
}

.hd-global-nav-items .modalNotification ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hd-global-nav-items .modalNotification ul li {
  margin: 0;
  width: 100%;
  border-bottom: 1px solid #eee;
}

.hd-global-nav-items .modalNotification ul li a {
  border-bottom: none;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

.hd-global-nav-items .modalNotification ul li a:hover {
  background-color: #f6f6f6;
}

.hd-global-nav-items .modalNotification .avatarCircle {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  overflow: hidden;
}

.hd-global-nav-items .modalNotification .avatarCircle img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  overflow: hidden;
}

.hd-global-nav-items .modalNotification .itemNotice {
  display: flex;
  flex-flow: wrap;
  align-items: flex-start;
  padding: 16px 16px 12px;
  white-space: normal;
}

.hd-global-nav-items .modalNotification .itemNotice .itemIcon {
  width: 24px;
}

.hd-global-nav-items .modalNotification .itemNotice .itemIcon img {
  text-align: center;
  width: 24px;
  height: 24px;
}

.hd-global-nav-items .modalNotification .itemNotice .itemIcon.info img {
  width: auto;
  height: 20px;
}

.hd-global-nav-items .modalNotification .itemNotice .itemContent {
  margin-left: 11px;
  text-align: left;
  width: 330px;
  line-height: 1.5;
}

.hd-global-nav-items .modalNotification .itemNotice .itemContent .desciption {
  margin: 12px 0 0 -34px;
  font-weight: 500;
  font-size: 1.4rem;
  color: #666;
}

.hd-global-nav-items .modalNotification .itemNotice .itemDate {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: 100%;
  height: auto;
  margin-top: 12px;
}

.hd-global-nav-items .modalNotification .itemNotice .itemDate var {
  display: inline-block;
  font-size: 1.4rem;
  color: #666;
  font-style: normal;
  font-weight: 500;
}

.hd-global-nav-items .modalNotification .itemNotice .itemDate span {
  display: inline-block;
  margin: 0 0 0 8px;
}

.hd-global-nav-items .modalNotification .navButtonContent {
  position: relative;
}

.hd-global-nav-items .modalNotification .notificationAlert:before {
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #d32f2f;
  position: absolute;
  right: 14px;
  top: 0px;
  z-index: 1;
}

.hd-global-nav-items .modalNotification .notificationSeeMore {
  display: block;
  font-weight: 500;
  background: #f6f6f6;
  color: #d32f2f;
  height: 48px;
  line-height: 48px;
  text-decoration: none;
  text-align: center;
  border-bottom: 3px solid transparent;
}

.hd-global-nav-items .modalNotification .notificationSeeMore:hover {
  border-color: #d32f2f;
}

/* リゾーム未登録用通知 */
.hd-global-nav-items .avatarUser.notLogin .modalNotification ul li {
  display: block;
  padding: 16px 16px 26px;
  border-bottom: none;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemNotice {
  padding: 0;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemNotice .itemContent .title {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 700;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemNotice .itemContent .title > span {
  font-weight: 500;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemDate {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: 100%;
  height: auto;
  align-self: flex-end;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemDate p {
  margin: 12px 0 0;
  font-size: 1.4rem;
  color: #666;
  font-style: normal;
  font-weight: 500;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemDate p span {
  display: inline-block;
  margin: 0 0 0 8px;
  font-size: 1rem;
  color: #e6001e;
  font-family: serif;
}

.hd-global-nav-items .avatarUser.notLogin .modalNotification .itemDate p span.NXR:before {
  color: #d32f2f;
  content: 'xTREND';
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .lblNotificationRed:after {
  border-width: 0 0 12px 12px;
  border-color: transparent transparent #d32f2f transparent;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .noticeText {
  margin: 24px 0 0;
  padding: 0 24px;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .listFunctionForUser {
  margin: 30px 0 0;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .listFunctionForUser li {
  margin: 0 0 20px;
  padding: 0 28px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .listFunctionForUser li .functionImg {
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: start;
  margin: 0 16px 0 0;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .listFunctionForUser li .functionImg img {
  width: 100%;
}

.hd-global-nav-items .avatarUser.notLogin .articleRegisterForUse .registerForUse .listFunctionForUser li p {
  font-size: 1.7rem;
  margin: 0;
  font-weight: 500;
  display: flex;
  align-items: center;
  color: #242424;
}

.hd-global-nav-items .avatarUser.notLogin .boxActionRegister {
  margin-top: 30px;
  padding: 12px 24px 22px;
}

.hd-global-nav-items .avatarUser.notLogin .boxActionRegister .noticeText {
  font-size: 1.5rem;
  margin: 0;
  color: #242424;
  font-weight: 500;
  text-align: center;
}

.hd-global-nav-items .avatarUser.notLogin .boxActionRegister .noticeText b {
  font-weight: 700;
}

.hd-global-nav-items .avatarUser.notLogin .boxActionRegister .btn {
  display: inline-block;
  font-size: 1.7rem;
  line-height: 56px;
  margin-top: 15px;
}

/* フォローボタン ===== */
.btn-rhizome-follow {
  visibility: visible;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 12px;
  font-size: 1.4rem;
  text-align: center;
  color: #d32f2f;
  min-width: 142px;
  transition: 0.3s background-color, 0.3s color;
  border: 1px solid #d32f2f;
  line-height: normal;
  font-weight: 500;
}
/*  著者フォローはいったん非表示 */
.btn-rhizome-follow.btn-follow-author{
  visibility: hidden;
}

.btn-rhizome-follow:hover {
  background-color: #d32f2f;
  color: #fff;
}
.btn-rhizome-follow:before {
  content: "\e936";
  font-family: "nikkeiBP_iconfont" !important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 2rem;
  margin-right: 8px;
}

.btn-rhizome-follow:after {
  content: 'フォローする';
}

.btn-rhizome-follow.followed {
  background-color: #d32f2f;
  color: #fff;
}

.btn-rhizome-follow.followed:after {
  content: 'フォロー中';
}

/* 子記事コメント ===== */
.commentBox {
  margin: 20px;
  width: 650px;
  margin: 0 auto;
}

.commentBox .commentContent {
  height: auto;
}

.commentBox .commentContent ul li {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 1px;
  padding: 16px 8px;
}

.commentBox .commentContent ul li.usrHighlight {
  background: #FDF8F8;
}

.commentBox .commentContent ul li.usrHighlight .replySection {
  background: #fff;
}

.commentBox .commentContent ul li .commentItemLeft {
  position: relative;
}

.commentBox .avatarCircle {
  width: 32px;
  height: 32px;
  overflow: hidden;
  position: relative;
  border-radius: 50%;
}

.commentBox .commentContent ul li .commentItemRight {
  position: relative;
  margin-left: 10px;
  width: calc(100% - 42px);
}

.commentBox .commentContent ul li .commentItemRight .commentIcon {
  color: #666;
  margin-top: 5px;
  font-size: 1.2rem;
}

.commentBox .commentContent ul li .commentItemRight a.iconBall,
.commentBox .commentContent ul li .commentItemRight a.myIconBall {
  position: absolute;
  right: 0;
  top: 12px;
  display: flex;
  padding: 10px;
  padding-right: 0;
  z-index: 1;
}

.commentBox .commentContent ul li .commentItemRight a.iconBall {
  padding: 0;
  top: 0;
}

.commentBox .commentContent ul li .commentItemRight a.iconBall img,
.commentBox .commentContent ul li .commentItemRight a.myIconBall img {
  width: 20px;
  height: 20px;
}

.commentBox .commentContent ul li .commentItemRight p.textAuthor,
.commentBox .commentContent ul li .commentItemRight p.textAuthorTitle {
  word-break: break-all;
  margin: 0;
  padding-right: 25px;
}

.commentBox .commentContent ul li .commentItemRight p.textAuthor {
  font-size: 1.2rem;
  line-height: 1.5;
  margin-bottom: 0;
  color: #242424;
  font-weight: 700;
}

.commentBox .commentContent ul li .commentItemRight p.textAuthorTitle {
  font-size: 1.2rem;
  line-height: normal;
  margin-bottom: 10px;
  color: #666;
}

.commentBox .commentContent ul li .commentItemRight .commentItemRightContent {
  overflow: hidden;
  position: relative;
}

.commentBox .commentContent ul li .commentItemRight .commentItemRightContent p {
  margin: 0;
  font-size: 1.4rem;
}

.commentBox .commentContent ul li .commentItemRight p span.commentReadmore {
  color: #666;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon {
  color: #666;
  margin-top: 10px;
  font-size: 1.4rem;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentlike {
  margin-left: 20px;
  vertical-align: middle;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentlike a {
  cursor: default;
  vertical-align: middle;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentlike a:hover {
  text-decoration: none;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentlike .iconLike {
  position: relative;
  display: inline-block;
  margin-right: 4px;
  width: 14px;
  height: 15px;
  vertical-align: middle;
  font-size: 1.6rem;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentlike .icon.iconLike::before {
  content: "\e908";
}

.commentBox .commentContent ul li .commentItemRight .commentIcon.isLike span.commentlike {
  color: #d32f2f;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentReply {
  margin-left: 20px;
  float: right;
  color: #d32f2f;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon span.commentVoteLike {
  float: right;
  color: #d32f2f;
  margin-left: 20px;
}

.commentBox .commentContent ul li .commentItemRight .commentIcon.isLike span.commentVoteLike {
  font-weight: 700;
}

.commentBox .commentContent ul li .commentItemLeft .iconFill {
  position: absolute;
  z-index: 1;
  width: 14px;
  height: 14px;
  background-size: 100% 100%;
  right: -5px;
  top: 21px;
}

.icon.iconFill {
  width: 20px;
  height: 20px;
  position: relative;
}

.icon.iconLike::before,
.icon.iconFill::before,
.icon.iconFill::after {
  display: block;
  font-family: 'nikkeiBP_iconfont' !important;
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 14px;
  height: 14px;
  position: absolute;
  bottom: 2px;
}

.icon.iconFill::before {
  content: "\e95a";
  font-size: 1.4rem;
  color: #d32f2f;
}

.icon.iconFill::after {
  content: "\e95b";
  font-size: 1.4rem;
  color: #fff;
}

.buttomCommentBoxZero {
  width: 536px;
  height: 36px;
  line-height: 36px;
  font-size: 1.4rem;
  color: #666;
  display: block;
  margin: 0 auto;
  margin-top: 5px;
  text-align: center;
  background-color: #f6f6f6;
}

.commentBox .commentContent ul {
  margin-top: 20px;
  padding-left: 0;
}

.commentBox .commentContent ul li .commentItemRight .commentShowReply {
  font-size: 1.4rem;
  color: #d32f2f;
  margin-top: 17px;
  text-align: center;
  letter-spacing: normal;
}

.icon.iconReplyDown {
  width: 20px;
  height: 20px;
}

.commentBox .commentContent ul li .commentItemRight .commentShowReply .iconReplyDown {
  width: 14px;
  height: 14px;
  margin-left: 8px;
}

.commentBox .commentContent ul li .commentItemRight .commentShowReply .iconReplyDown:before {
  font-family: 'nikkeiBP_iconfont' !important;
  content: "\e944";
  font-size: 10px;
}

.commentBox .commentContent ul li .commentItemRight .replySection li {
  flex-direction: inherit;
}

.commentBox .commentContent ul li .commentItemRight .replySection li .commentItemRight {
  width: calc(100% - 42px);
  margin-right: 0;
}

.commentBox form.frmComment {
  display: flex;
  margin-top: 20px;
  align-items: flex-start;
  position: relative;
  flex-direction: row;
  flex-wrap: wrap;
}

.commentBox .commentItemRight form.frmComment {
  margin-bottom: 40px;
}

.commentBox form.frmComment textarea {
  margin-left: 8px;
  width: 548px;
  padding: 1.5% 10px;
  border: 1px solid;
  border-color: #F6F6F6;
  background: #F6F6F6;
  background-position: center;
  max-height: 130px;
  font-size: 16px;
  line-height: 1.67;
  color: #666666;
  box-sizing: border-box;
  resize: vertical !important;
}

.commentBox .commentContent ul li form.frmComment textarea {
  width: 482px;
}

.commentBox form.frmComment textarea:hover {
  outline: inherit;
  border: 1px solid;
  border-color: #d32f2f;
  transition: 0.3s;
}

.commentBox form.frmComment button {
  margin: 0 0 0 auto;
  width: 51px;
  height: 49px;
  border: solid 1px #242424;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  align-self: flex-end;
  cursor: pointer;
}

.commentBox form.frmComment .replyClose {
  display: none;
  font-size: 1.2rem;
  font-weight: 400;
  color: #666;
  margin-left: 43px;
  position: relative;
  padding-left: 19px;
  margin-top: 8px;
}

.icon.iconClose_18x18 {
  background: url("/images/2021/common/iconClose_18x18.png") no-repeat;
  width: 20px;
  height: 20px;
}

.commentBox form.frmComment .replyClose i.iconClose_18x18 {
  background-size: 100%;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 2px;
  left: 0;
}

.commentBox .commentContent ul li.isHighLight {
  padding-top: 45px;
}

.commentBox .commentContent ul li.isHighLight.usrHighlight {
  padding-top: 45px;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 110px;
  top: -37px;
  padding: 1px 0;
  border: solid 1px #ddd;
  background-color: #fff;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight:before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-width: 8px 8px 0 0;
  border-color: #ddd transparent transparent transparent;
  bottom: -8px;
  left: 14px;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight:after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-width: 6px 6px 0 0;
  border-color: #fffcf8 transparent transparent transparent;
  bottom: -6px;
  left: 15px;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight .commentHighLightIcon {
  margin-right: 3px;
  display: flex;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight .commentHighLightIcon img {
  width: 12px;
  height: 12px;
}

.commentBox .commentContent ul li .commentItemLeft .commentHighLight p {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 500;
  color: #666;
}

.poweredBy {
  text-align: right;
  padding: 3px 0 0;
  color: #666;
  font-size: 10px;
}

/* 機能.css */
.rhizomeStage[data-purpose="postArea"] .commentItemRight .commentItemRightContent p del {
  text-decoration: none;
  display: none;
}

.rhizomeStage[data-purpose="postArea"] .commentItemRight .commentItemRightContent p del.show {
  display: inline;
}

.rhizomeStage[data-purpose="postArea"] var {
  font-style: normal;
}

.commentBox h5 {
  font-size: 1.5rem;
  margin: 0 0 20px;
}

.commentBox .commentContent {
  border-top: 1px solid #fffcf8;
}

.commentBox a.readMore {
  display: flex;
  width: 160px;
  border: solid 1px #d32f2f;
  color: #000;
  font-size: 1.5rem;
  font-weight: 500;
  margin: 0 auto;
  position: relative;
  height: 34px;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  margin-top: 15px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.commentBox a.readMore.hide {
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.commentBox a.readMore:hover {
  color: #fff;
  background: #d32f2f;
  text-decoration: none;
}

.commentBox a.readMore span {
  position: relative;
}

.commentBox a.readMore span:after {
  content: "";
  display: block;
  border-right: solid 2px #d32f2f;
  border-bottom: solid 2px #d32f2f;
  width: 6px;
  height: 6px;
  transform: rotate(-135deg);
  position: absolute;
  right: -20px;
  bottom: 6px;
  padding: 0px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.commentBox a.readMore:hover span:after {
  border-color: #fff;
}

/* ポップアップ */
.rhizomePopup {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100001;
  transition-property: opacity;
  transition-duration: 0.3s;
  opacity: 0;
  display: block;
  pointer-events: none;
}

.rhizomePopup.show {
  background: rgba(0, 0, 0, 0.7);
  opacity: 1;
  pointer-events: auto;
}

.rhizomePopup > div {
  width: 620px;
  height: auto;
  padding: 0;
  background: transparent !important;
  overflow: inherit;
  position: absolute;
  left: 50%;
  top: 50%;
  max-height: 80%;
  max-width: 100%;
  z-index: 100002;
  transform: translate(-50%, -50%);
}

.rhizomePopup > div > div {
  text-align: center;
  background: #fffcf8;
  padding: 30px 40px;
}

.rhizomePopup > div > div p {
  font-size: 1.7rem;
  line-height: 1.67;
  letter-spacing: 0.2px;
  margin: 0;
}

.rhizomePopup > div > div p b {
  font-weight: 700;
}

.rhizomePopup > div > div > p + div {
  margin-top: 20px;
}

.rhizomePopup .flex-center {
  display: flex;
  justify-content: center;
}

.rhizomePopup > div > div a {
  border: 1px solid #d32f2f;
  background: #fffcf8;
  color: #d32f2f;
  display: inline-block;
  font-size: 1.5rem;
  text-align: center;
  text-decoration: none;
}

.rhizomePopup > div > div a:hover {
  background: #d32f2f;
  color: #fff;
}

.rhizomePopup > div > div .btn {
  width: 100%;
  padding: 0 1rem;
  font-size: 1.7rem;
  line-height: 60px;
  height: 60px;
}

.rhizomePopup > div > span {
  position: absolute;
  display: block;
  width: 65px;
  height: 65px;
  top: -18px;
  right: -65px;
  cursor: pointer;
  text-align: center;
}

.rhizomePopup > div > span:before {
  color: #fff;
  font-size: 65px;
  line-height: 65px;
  display: inline-block;
  text-align: center;
  content: "\00d7";
}

.rhizomePopup .flex-center .flex-item {
  width: 50%;
  margin: 0 8px;
}

.rhizomePopup > div > div .label {
  margin-bottom: 15px;
  color: #242424;
  font-size: 1.5rem;
  text-align: center;
  line-height: 1;
}

/* 未ログインポップアップ */
.rhizomePopup.popupNotLogin > div > div {
  padding: 30px 15px;
}

.rhizomePopup.popupNotLogin > div > div p {
  font-size: 1.7rem;
  margin: 0;
  padding: 0;
}

.rhizomePopup.popupNotLogin > div > div p var {
  font-style: normal;
}

/* rhizome_authなしポップアップ */
.rhizomePopup.popupNotRhizome > div > div ul {
  width: 360px;
  margin: 30px auto 40px;
  padding: 0;
  border: 0;
  list-style: none;
}

.rhizomePopup.popupNotRhizome > div > div ul li {
  margin-bottom: 20px;
  align-items: center;
}

.rhizomePopup.popupNotRhizome > div > div ul div {
  display: inline-block;
  width: 35px;
  height: 35px;
  margin: 0 17px 0 0;
  padding: 0;
  border: 0;
}

.rhizomePopup.popupNotRhizome > div div ul p {
  display: inline-block;
  width: calc(100% - 60px);
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  text-align: left;
  font-size: 1.5rem;
  font-weight: 700;
  vertical-align: middle;
}

.rhizomePopup.popupNotRhizome > div div a.aboutRhizome {
  border: none;
  display: inline-block;
  background: none;
  box-shadow: none;
  color: #d32f2f;
  font-size: 1.5rem;
  margin-top: 15px;
}

.rhizomePopup.popupNotRhizome .flex-center .flex-item {
  width: 327px;
}

.rhizomePopup .btn.btn-regist {
  font-size: 1.8rem;
  color: #fff;
  min-width: 230px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #1b9b82, #1b9b82);
  border: none;
}

.rhizomePopup .btn.btn-regist:hover {
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #1b9b82, #1b9b82);
  opacity: 0.5;
}

.rhizomePopup .btn.btn-login {
  font-size: 1.8rem;
  color: #fff;
  min-width: 230px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #e6001e, #e6001e);
  border: none;
}

.rhizomePopup .btn.btn-login:hover {
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 100%), linear-gradient(0deg, #e6001e, #e6001e);
  opacity: 0.5;
}

/* 会員登録 */
.commentBox .signUp {
  width: 100%;
  border-radius: 2px;
  border: solid 1px #eeeeee;
  background-color: #ffffff;
  margin: 26px auto 0;
}

#Promote > div {
  font-size: 12px;
  text-align: center;
  font-weight: bold;
  color: #242424;
  padding: 18px 16px;
}

#Promote > div p {
  display: inline;
  margin: 0;
  font-size: 12px;
}

#Promote > div > span > a {
  color: #d32f2f;
  letter-spacing: 0.3px;
}

#Promote > div > span > a:nth-of-type(1) {
  display: inline-block;
  margin: 0 0 0 8px;
  position: relative;
}

#Promote > div > span > a:nth-of-type(1)::after {
  font-family: 'nikkeiBP_iconfont' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e947";
  display: inline-block;
  width: 12px;
  height: 12px;
  color: #d32f2f;
  font-size: 12px;
}

#Promote > div > span > a:nth-of-type(2)::before {
  content: "\A";
  white-space: pre;
}

/* 著者コメント ===== */
.section-comment-articles h2 {
  position: relative;
  margin: 0;
  padding: 18px 0 0;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
}

.section-comment-articles h2:before {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background-color: #d32f2f;
  position: absolute;
  top: 0;
  left: 0;
}

.section-comment-articles ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.section-comment-articles ul li {
  margin: 24px 0 0 0;
  padding: 0;
}

.section-comment-articles ul li > a:hover {
  text-decoration: none;
}

.section-comment-articles ul li > a:hover .commentProfileTitle {
  color: #d32f2f;
}

.section-comment-articles .commentProfileTitle {
  line-height: 1.78;
  font-size: 1.8rem;
  font-weight: 700;
}

.section-comment-articles .commentProfileInfo {
  display: flex;
  margin: 16px 0 0 0;
}

.section-comment-articles .commentProfileInfoLeft {
  width: 56px;
  flex-flow: wrap;
  flex-shrink: 0;
  margin: 0 16px 0 0;
}

.section-comment-articles .commentProfileInfoLeft > img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
}

.commentProfileInfoContent {
  line-height: 1.78;
  font-size: 1.8rem;
}

.commentProfileInfoIcon {
  margin: 8px 0 0 0;
  line-height: 1.78;
  font-size: 1.8rem;
  color: #666;
}

.commentProfileInfoIcon .icon-like-2 {
  margin-left: 16px;
}

.rhizomeStage .paginate {
  margin: 24px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rhizomeStage .paginate .btnPaginate {
  position: relative;
  display: block;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 40px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  color: #d32f2f;
  min-width: 320px;
  z-index: 2;
  transition: 0.3s color, 0.3s background, 0.3s opacity;
  border: 1px solid #d32f2f;
}

.rhizomeStage .paginate .btnPaginate:hover {
  background-color: #d32f2f;
  color: #fff;
}

.rhizomeStage .paginate .btnPaginate .icon-down-arrow {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -6px;
  font-size: 1.4rem;
}

/* マイページヘッダー ===== */
.mypageHeader {
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
  margin-bottom: 32px;
}

.mypageHeader .avatarCircle {
  width: 64px;
  height: 64px;
  margin-right: 16px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
}

.mypageHeader .info {
  margin-right: auto;
}

.mypageHeader .textAuthortitle {
  margin: 0;
  line-height: 1.5;
  font-size: 1.4rem;
  color: #666;
}

.mypageHeader .textAuthorName {
  margin: 0;
  line-height: 1.67;
  font-size: 1.8rem;
  font-weight: 700;
}

.mypageHeader .textAuthorName span {
  margin-left: 6px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #000;
}

.mypageHeader .displayName {
  margin: 0;
  line-height: 1.5;
  font-size: 1.2rem;
  color: #666;
}

.mypageHeader .setting {
  margin: 24px 0 0 auto;
  color: #d32f2f;
  font-size: 1.4rem;
}

/* マイページスイッチー ===== */
.mypage-switch-box {
  margin-bottom: 32px;
}

.mypage-switch-items {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  border-radius: 20px;
}

.mypage-switch-item {
  margin: 0 0 0 0;
  padding: 0;
  width: 225px;
}

.mypage-switch-item ~ .mypage-switch-item {
  margin-left: 8px;
}

.mypage-switch-item a,
.mypage-switch-item span {
  display: block;
  padding: 15px 0;
  line-height: 1;
  text-align: center;
  background: #f6f6f6;
  font-size: 1.2rem;
  color: #000;
  border: 1px solid #f6f6f6;
}

.mypage-switch-item a:hover,
.mypage-switch-item span:hover {
  text-decoration: none;
  color: #d32f2f;
}

.mypage-switch-item.is-active {
  background-color: #d32f2f;
}

.mypage-switch-item.is-active a,
.mypage-switch-item.is-active span {
  border: 1px solid #d32f2f;
  background: #fff;
  color: #000;
  font-weight: bold;
}

/* フォローしている連載の更新 ===== */
.p-articleList.-mypage .p-articleList_list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-articleList.-mypage .p-articleList_item {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ebebeb;
}

.p-articleList.-mypage .p-articleList_item_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.p-articleList.-mypage .p-articleList_item_info {
  width: 605px;
}

.p-articleList.-mypage .p-articleList_item_series {
  margin-bottom: 12px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
}

.p-articleList.-mypage .p-articleList_item_series .-title {
  padding: 0 0 0 0;
}

.p-articleList.-mypage .p-articleList_item_series .-title.-new {
  position: relative;
}

.p-articleList.-mypage .p-articleList_item_series .-title.-new:before {
  content: "\e91f";
  vertical-align: middle;
  font-size: 2.4rem;
  margin-right: 8px;
  font-family: 'nikkeiBP_iconfont' !important;
  font-weight: 500;
  color: #d32f2f;
}

.p-articleList.-mypage .p-articleList_item_title {
  margin: 0;
  font-size: 1.8rem;
  line-height: 1.67;
}

.p-articleList.-mypage .p-articleList_item_image {
  position: relative;
  width: 143px;
  height: 107px;
  overflow: hidden;
}

.p-articleList.-mypage .p-articleList_item_image img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: inherit;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transition: 0.4s ease-in-out;
}

.p-articleList.-mypage .p-articleList_item_link:hover {
  text-decoration: none;
}

.p-articleList.-mypage .p-articleList_item_link:hover .p-articleList_item_image img {
  -webkit-transform: translate(-50%, -50%) scale(1.06);
  transform: translate(-50%, -50%) scale(1.06);
}

.p-articleList.-mypage .p-articleList_item_link:hover .p-articleList_item_title {
  color: #d32f2f;
}

.is-mypage .standard-btn-box .standard-btn {
  visibility: hidden;
}

.is-mypage .standard-btn-box .standard-btn.is-show {
  visibility: visible;
}

/* フォローしている著者・ユーザーの更新 ===== */
.p-articleList_item_author {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  line-height: 1.5;
  font-size: 1.4rem;
  font-weight: 700;
}

.p-articleList_item_author .-image {
  display: block;
  position: relative;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  overflow: hidden;
  border-radius: 50%;
}

.p-articleList_item_author .-image img {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: inherit;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transition: 0.4;
}

.p-articleList_item_link:hover .p-articleList_item_author .-image img {
  -webkit-transform: translate(-50%, -50%) scale(1.06);
  transform: translate(-50%, -50%) scale(1.06);
}

.p-articleList_item_link:visited .p-articleList_item_title {
  color: #666;
}

/* フォローしている連載の一覧 ===== */
.is-mypage .p-focusList_list {
  margin: 24px 0 0 0;
  padding: 0;
  list-style: none;
}

.is-mypage .p-focusList_item {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 12px 0;
  padding: 0 0 12px 0;
  border-bottom: 1px solid #ebebeb;
}

.is-mypage .p-focusList_item_link:not(:root) {
  display: flex;
  align-items: center;
  width: 606px;
}

.is-mypage .p-focusList_item_link:not(:root):hover {
  text-decoration: none;
}

.is-mypage .p-focusList_item_link:not(:root):hover .p-focusList_item_image img {
  -webkit-transform: translate(-50%, -50%) scale(1.06);
  transform: translate(-50%, -50%) scale(1.06);
}

.is-mypage .p-focusList_item_link:not(:root):hover .p-focusList_item_title {
  text-decoration: none;
  color: #d32f2f;
}

.is-mypage .p-focusList_item_image {
  position: relative;
  width: 96px;
  height: 128px;
  margin-right: 24px;
  overflow: hidden;
}

.is-mypage .p-focusList_item_image img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: inherit;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transition: 0.4s ease-in-out;
}

.is-mypage .p-focusList_item_title {
  line-height: 1.67;
  font-size: 1.8rem;
}

.is-mypage .p-focusList_item_info .c-watchBtn a {
  visibility: visible;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 12px;
  font-size: 1.4rem;
  text-align: center;
  color: #d32f2f;
  min-width: 142px;
  transition: 0.3s background-color, 0.3s color;
  border: 1px solid #d32f2f;
  line-height: normal;
  font-weight: 500;
}

.is-mypage .p-focusList_item_info .c-watchBtn a:before {
  content: '\e936';
  font-family: 'nikkeiBP_iconfont' !important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 2rem;
  margin-right: 8px;
}

.is-mypage .p-focusList_item_info .c-watchBtn a:hover {
  background-color: #d32f2f;
  color: #fff;
  text-decoration: none;
}

.is-mypage .p-focusList_item_info .c-watchBtn.-active a {
  background-color: #d32f2f;
  color: #fff;
}

/* おすすめ連載 ===== */
.is-mypage-recommend:not(:root) {
  margin-top: 32px;
}

/* フォローしている著者の一覧 ===== */
.p-circleThumbList_list {
  display: flex;
  flex-flow: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-circleThumbList_item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  box-sizing: border-box;
  width: calc( (100% / 2) - ((48px * (2 - 1)) / 2));
  margin-right: 48px;
}

.p-circleThumbList_item:nth-of-type(2n) {
  margin-right: 0;
}

.p-circleThumbList_item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.p-circleThumbList_item .btn-rhizome-follow {
  min-width: 120px;
}

.p-circleThumbList_item:nth-child(n + 3) {
  margin-top: 24px;
}

.p-circleThumbList_link {
  display: flex;
  align-items: center;
  width: 183px;
  flex-shrink: 0;
}

.p-circleThumbList_link:hover {
  text-decoration: none;
}

.p-circleThumbList_link:hover .p-circleThumbList_image img {
  -webkit-transform: translate(-50%, -50%) scale(1.06);
  transform: translate(-50%, -50%) scale(1.06);
}

.p-circleThumbList_link:hover .p-circleThumbList_name {
  color: #d32f2f;
}

.p-circleThumbList_link:visited .p-circleThumbList_name {
  color: #666;
}

.p-circleThumbList_link .p-circleThumbList_image {
  position: relative;
  margin: 0 12px 0 0;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border-radius: 50%;
  flex-shrink: 0;
}

.p-circleThumbList_link .p-circleThumbList_image img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: inherit;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transition: 0.4s ease-in-out;
}

.p-circleThumbList_link .p-circleThumbList_name {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  font-size: 1.4rem;
}

.p-circleThumbList_link .p-circleThumbList_position {
  margin: 2px 0 0 0;
  line-height: 1.64;
  font-size: 1.1rem;
  color: #666;
}

/* 右ペインタイムライン ===== */
.is-timeline .side-timeline-head {
  display: flex;
  align-items: center;
  margin: 0 0 16px;
}

.is-timeline .side-timeline-title {
  display: inline-block;
  margin: 0;
  padding-left: 0;
  border-left: none;
  line-height: 1.67;
  font-size: 1.8rem;
}

.is-timeline .side-timeline-title:before {
  content: "\e93c";
  margin-right: 8px;
  line-height: 1.67;
  font-family: 'nikkeiBP_iconfont' !important;
  font-weight: 500;
  font-size: 1.4rem;
  color: #d32f2f;
}

.is-timeline .followBox {
  margin-left: 8px;
}

.is-timeline .c-helpIcon {
  display: block;
  width: 16px;
  height: 16px;
}

.is-timeline .c-helpIcon a {
  display: block;
  width: 16px;
  height: 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  color: #d32f2f;
  font-size: 12px;
  font-weight: normal;
  line-height: 16px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}

.is-timeline .c-helpIcon a:hover {
  text-decoration: none;
  border-color: #d32f2f;
}

.is-timeline .p-sideArticleList_list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.is-timeline .p-sideArticleList.-timeline .p-sideArticleList_item {
  position: relative;
  margin-bottom: 0;
  margin-left: 5px;
  margin-top: 0;
  padding: 0 0 30px 16px;
  border-left: 1px solid #d32f2f;
}

.is-timeline .p-sideArticleList.-timeline .p-sideArticleList_item:first-of-type {
  padding-top: 0;
}

.is-timeline .p-sideArticleList.-timeline .p-sideArticleList_item:first-of-type:before {
  top: 0;
}

.is-timeline .p-sideArticleList.-timeline .p-sideArticleList_item:last-of-type {
  border-left-color: #fff;
}

.is-timeline .p-sideArticleList.-timeline .p-sideArticleList_item:before {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: -5px;
  width: 9px;
  height: 9px;
  border: 1px solid #d32f2f;
  border-radius: 50%;
  background-color: #fff;
  content: '';
}

.is-timeline .p-sideArticleList_item_link {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

.is-timeline .p-sideArticleList_item_link .u-textbold {
  font-weight: 700;
}

.is-timeline .p-sideArticleList_item_image {
  width: 60px;
  height: 45px;
  overflow: hidden;
  position: relative;
}

.is-timeline .p-sideArticleList_item_image.-avator {
  width: 40px;
  height: 40px;
  margin-left: 10px;
  border-radius: 50%;
}

.is-timeline .p-sideArticleList_item_image img {
  -webkit-transform: translate(-50%, -50%);
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
  transition: 0.4s ease-in-out;
}

.is-timeline .p-sideArticleList_item_link:not(:root):hover {
  text-decoration: none;
}

.is-timeline .p-sideArticleList_item_link:not(:root):hover .p-sideArticleList_item_image img {
  -webkit-transform: translate(-50%, -50%) scale(1.06);
  transform: translate(-50%, -50%) scale(1.06);
}

.is-timeline .p-sideArticleList_item_link:not(:root):hover .p-sideArticleList_item_title {
  color: #d32f2f;
}

.is-timeline .p-sideArticleList_item_info {
  width: 200px;
}

.is-timeline .p-sideArticleList_item_title {
  margin: 0;
  color: #242424;
  font-size: 1.2rem;
  line-height: 1.5;
  font-weight: normal;
}

.is-timeline .p-sideArticleList_item_desc {
  margin: 4px 0 0 0;
  color: #666;
  font-size: 1.2rem;
  line-height: 1.75;
  font-weight: 500;
}

.is-timeline .p-sideArticleList_item_date {
  display: block;
  width: 100%;
  margin: 4px 0 0 0;
  color: #666;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: right;
}

.is-timeline .c-btn {
  margin: 8px 0 0 0;
}

.is-timeline .c-btn a {
  position: relative;
  display: block;
  text-decoration: none;
  background-color: #fff;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 6px 40px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  color: #d32f2f;
  min-width: 320px;
  z-index: 2;
  transition: 0.3s color, 0.3s background, 0.3s opacity;
  border: 1px solid #d32f2f;
  background: #fff;
}

.is-timeline .c-btn a:before {
  content: "\e944";
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -6px;
  font-size: 1.4rem;
  font-family: 'nikkeiBP_iconfont' !important;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}

.is-timeline .c-btn a:hover {
  background: #d32f2f;
  color: #fff;
}

/* ポップアップ ========== */
/* データ利用について ===== */
.bpPrivacy {
  background: #fff;
  border-top: 4px solid #1e4d84;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.24);
  display: none;
  padding: 16px;
  position: fixed;
  z-index: 100;
  bottom: 16px;
  right: 16px;
  width: 440px;
}

.bpPrivacy_message {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.65;
}

.bpPrivacy_buttons {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}

.bpPrivacy_button-detail,
.bpPrivacy_button-close {
  user-select: none;
  text-decoration: none;
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 1.65;
  align-items: center;
  display: inline-flex;
  height: 40px;
  justify-content: center;
  padding: 0 12px;
  vertical-align: bottom;
  white-space: nowrap;
}

.bpPrivacy_button-detail {
  background-color: #fff;
  color: #333;
  font-weight: 500;
  border: 1px solid #e8e8e8;
  border-radius: 2px;
}

.bpPrivacy_button-detail:hover {
  background-color: rgba(0, 0, 0, 0.06);
}

.bpPrivacy_button-close {
  background-color: #0068bc;
  color: #fff;
  font-weight: 700;
  margin-left: 15px;
  border: none;
}

.bpPrivacy_button-close:hover {
  background-color: rgba(0, 104, 188, 0.9);
}

/* スライドイン ===== */
#slideIn {
  opacity: 0;
  width: 300px;
  height: auto;
  border-radius: 0 8px 8px 0;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.24);
  background-color: #fff;
  position: fixed;
  bottom: 18px;
  left: -310px;
  z-index: 10;
}

#slideIn a {
  display: block;
  padding: 10px 5px 10px 10px;
  margin-right: 20px;
}

#slideIn a:hover dl dd h4 {
  color: #d32f2f;
}

#slideIn dl {
  display: flex;
  justify-content: space-between;
  margin: 0;
}

#slideIn dl dt {
  width: 80px;
  height: auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#slideIn dl dt img {
  width: 80px;
  height: auto;
}

#slideIn dl dd {
  width: 170px;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#slideIn dl dd h4 {
  font-size: 1.2rem;
  color: #141d1d;
  line-height: 1.4;
  margin-bottom: 2px;
}

#slideIn dl dd p {
  font-size: 1rem;
  color: #666;
  font-weight: 500;
}

#slideIn .close {
  width: 18px;
  height: 18px;
  position: absolute;
  right: -6px;
  top: -6px;
  cursor: pointer;
}

#slideIn .close:after {
  display: block;
  border: 1px solid #e8e8e8;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
  content: '\00d7';
  font-size: 1.6rem;
  color: #999;
  width: 18px;
  line-height: 16px;
  font-weight: 500;
  padding-top: 1px;
}

#slideIn .close:hover:after {
  color: #d32f2f;
  font-size: 1.6rem;
  line-height: 1.76;
}

/* ▽▽LayoutLink▽▽ */
/* インライン */
span.bpLayoutLink.inline,span.bpLayoutLink.inline em,span.bpLayoutLink.inline a{
  display:inline;
}
span.bpLayoutLink.inline a{
  text-decoration: underline;
}
span.bpLayoutLink.inline a:hover {
  text-decoration: none;
}
span.bpLayoutLink.inline span:first-of-type:before{
  content:"（";
}
span.bpLayoutLink.inline span:after{
  content:"、";
}
span.bpLayoutLink.inline span:last-of-type:after{
  content:"）"!important;
}

/* ブロック */
span.bpLayoutLink.block,span.bpLayoutLink.block em,span.bpLayoutLink.block a{
  display:block;
}
span.bpLayoutLink.block{
  /* margin:10px 5px; */
  margin: 2em 0;
  padding: 30px;
  border: 1px solid #ccc;
  border-radius: 2px;
}
span.bpLayoutLink.block a{
  margin: 8px 0;
  font-size: 1.6rem;
  line-height: 1.76;
  text-decoration: underline;
}
span.bpLayoutLink.block a:hover{
  text-decoration: none;
}
span.bpLayoutLink.block a:before{
  display:inline-block;
  width:4px;
  height:4px;
  background:black;
  content:"";
  margin:0 5px 4px 0;
  border-radius:50%;
}
/* △△LayoutLink△△ */


/* リーフに実装するクイズのフォーム ========== */
.articleBody input[type="radio"][class="nxrQuiz"]{
 transform: scale(1.5); /* 1.5倍 */
 margin:0px;
}
.articleBody p input[type="button"][id="answer"]{
 color:#ffffff;
 font-size:100%;
 font-weight:bold;
 background-color:#ce353f;
border-radius: 20px;
}

/* ▽▽記事本文中キャンペーン▽▽ */
.bpcampaignbody{
  margin: 2rem 0;
  padding: 30px;
  clear: both;
  border: 1px solid #3c6478;
  border-radius: 2px;
  background-color: #f5fafa;
}
.bpcampaignbody a{
  text-decoration:none;
  transition:none;
  color:black;
}
.bpcampaignbody a[href]:hover{
  text-decoration:underline;
  text-decoration-color:black;
  color:black;
}
.bpcampaignbody img{
height: auto;
}
.bpcampaignbody.pt1 a{
display: flex;
}
.bpcampaignbody.pt1 img{
width: 120px;
}
.bpcampaignbody.pt2 img, .bpcampaignbody.pt3 img{
width: 600px;
margin: 0 auto;
display: block;
}
.bpcampaignbody.pt1 .cmpb_heading{
  margin-right: 30px;
}
.bpcampaignbody.pt2 .cmpb_heading{
padding-bottom: 30px;
}
.bpcampaignbody.pt3 .cmpb_heading{
padding-top: 30px;
}
/*
.bpcampaignbody .cmpb_text{
padding: 10px;
}
*/
.bpcampaignbody .cmpb_text h4{
  margin-top: 0;
  padding-bottom: 8px;
  border-bottom: 1px solid #3c6478;
  color: #3c6478;
  font-size: 1.8rem;
  font-weight: 700;
}
.bpcampaignbody .cmpb_subtitle{
  font-size: 15px;
  margin:0 0 10px 0;
  padding:0;
  font-weight:bold;
}
.bpcampaignbody .cmpb_notice{
  margin-top: 16px;
  font-size: 1.6rem;
}
}
.bpcampaignbody .cmpb_link{
  text-align: right;
  font-size: 14px;
}
/* △△記事本文中キャンペーン△△ */

/* ▽▽トップページで会員種別ごとに会員登録を促す用のmodal処理 ※呼び出しはPiano▽▽ */
.bp-js-modal-outer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: .6s;
}
.bp-js-modal-outer.bp-js-modal-is-show {
  opacity: 1;
  visibility: visible;
}
.bp-js-modal-outer .bp-js-modal-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 740px;
  padding: 0 0 26px;
  background-color: #fff;
  border: 2px solid #dedcdc;
  z-index: 2;
  /*
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
  */
}
.bp-js-modal-outer .bp-js-modal-inner .bp-js-modal-image {
  width: 640px;
  margin: 20px auto 0;
  display: block;
}
.bp-js-modal-outer .bp-js-modal-inner .bp-js-modal-image img{
  width: 100%;
  height: auto;
  display: block;
}
.bp-js-modal-outer .bp-js-modal-close {
  width: 100%;
  height: 50px;
  margin: 0;
  display: block;
  overflow: hidden;
}
.bp-js-modal-outer .bp-js-modal-close .bp-js-modal-close-btn {
  width: 50px;
  height: 50px;
  background:#f3f1f1;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  float: right;
}
.bp-js-modal-close-btn:before, .bp-js-modal-close-btn:after {
  width: 20px;
  height: 2px;
  display: block;
  position: absolute;
  background: #000;
  content: '';
}
.bp-js-modal-close-btn:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.bp-js-modal-close-btn:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.bp-js-modal-title{
  margin: 0 50px 0;
  display: block;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6em;
  letter-spacing: -2px;
  text-align: center;
}
.bp-js-modal-lead{
  margin: 20px 50px 0;
  font-size: 16px;
  line-height: 1.6em;
}
.bp-js-modal-link {
  width: 300px;
  height: 40px;
  margin: 20px auto 0;
  display: block;
  background: #d32f2f;
}
.bp-js-modal-link a{
  height: 40px;
  padding: 0 10px;
  display: flex;
  justify-content: space-around;
}
.bp-js-modal-link a span{
  font-size: 22px;
  font-weight: bold;
  color:#fff;
  line-height: 40px;
}
.bp-js-modal-link .bp-js-modal-arrow{
  width: 22px;
  height: 22px;
  margin: 9px 0 0;
  display: block;
}
.bp-js-modal-link .bp-js-modal-arrow img{
  width: 22px;
  height: 22px;
  margin: 0;
  display: block;
}
.bp-js-modal-outer .bp-js-modal-black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  /*
  background-color: rgba(0,0,0,.7);
  */
  z-index: 1;
  cursor: pointer;
}
/* △△トップページで会員種別ごとに会員登録を促す用のmodal処理 ※呼び出しはPiano△△ */



/* ブログカード */
.articleBody .blog_card {
  clear: both;
  border: 1px solid transparent;
  padding: 30px;
  margin: 2rem 0;
  border-radius: 2px;
  border-color: #ccc;
}
.articleBody .blog_card a {
  text-decoration-line: none;
}
.articleBody .blog_card p {
  margin: 20px 0;
}
.articleBody .blog_card p:last-child {
  margin-bottom: 0;
}
.articleBody .blog_card .bpbox_text .bpimage_right {
  margin-top: 0 !important;
}
.articleBody .bpbox_title {
  font-size: 1.8rem;
  font-weight: 700;
  border-bottom: 1px solid transparent;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-color: #ccc;
}
.articleBody .blog_card .bpbox_subtitle {
  font-size: 1.6rem;
  color: #666;
  margin-top: 0;
}
.articleBody .blog_card a:hover .bpbox_subtitle {
  color: #d32f2f;
}
.articleBody .blog_card .bpbox_text {
  font-size: 1.6rem;
  margin-top: 0;
}



/* 記事下ギフトボタン（大） */
.article-bottom-gift2{
	margin: 30px 0;
}
.article-action-icon2{
	display: block;
	width: 56px;
	height: 56px;
	margin: 0 auto;
	border: 1px solid #d32f2f;
	border-radius: 56px;
}
.icon-gift2{
	width: 100%;
	height: 100%;
	display: inline-block;
	position: relative;
}
.icon-gift2:before{
	position: absolute;
	top: 17px;
	left: 17px;
	content: "\e954";
	font-size: 2.2rem;
}
.article-action-icon2:hover{
	background: #d32f2f;
}
.article-action-icon2:hover .icon-gift2:before{
	color: #fff !important;
}
.article-body-gift-txt{
	margin-top: 4px;
	font-size: 1.4rem;
	color: #d32f2f;
	text-align: center;
}

/* X(Twitter Icon) */
.article-action-icon3 {
  display: block;
  margin: 0;
  width: 27px;
  height: 27px;
  position: relative;
}
.article-action-icon3::before {
  top: 0;
  font-size: 1.4rem;
  position: absolute;
  left: -36px;
  top: -38px;
}
.icon-twitter2::before {
  content: url(/images/2021/common/logo_x.png);
  -webkit-transform: scale(0.12);
  transform: scale(0.1);
}
.article-action-twitter:hover .icon-twitter2::before {
  content: url(/images/2021/common/logo_x_white.png);
  -webkit-transform: scale(0.12);
  transform: scale(0.1);
}

/* meta(facebook Icon) */
.article-action-icon3 {
  display: block;
  margin: 0;
  width: 27px;
  height: 27px;
  position: relative;
}
.article-action-icon3::before {
  top: 0;
  font-size: 1.4rem;
  position: absolute;
  left: -36px;
  top: -38px;
}
.icon-facebook2::before {
  content: url(/images/2021/common/logo_facebook.png);
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
}
.article-action-fb:hover .icon-facebook2::before {
  content: url(/images/2021/common/logo_facebook_white.png);
  -webkit-transform: scale(0.25);
  transform: scale(0.25);
}
