@charset "UTF-8";
/*-------------------------------------------
　PCや携帯のサイズによってCSS変更
-------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block; }

nav ul {
  list-style: none; }

li {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color: #000; }

ins {
  background-color: #FFF;
  color: #0d0d38;
  text-decoration: none; }

mark {
  background-color: #FFF;
  color: #0d0d38;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #0d0d38;
  cursor: help; }

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

input, select {
  vertical-align: middle; }

body {
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ Pro", "メイリオ", "游ゴシック体", "Yu Gothic", YuGothic, "Meiryo", メイリオ, sans-serif, serif;
  font-size: 1rem;
  line-height: 2rem;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal; }

main {
  overflow: hidden; }

.row img {
  width: 100%;
  height: auto; }

a {
  text-decoration: none; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
a.anchor {
  display: block;
  padding-top: 120px;
  margin-top: -120px; }

/*-------------------------------------------
　セクション背景設定
-------------------------------------------*/
@keyframes gradientBG {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }
/*-------------------------------------------
　画像　位置設定
-------------------------------------------*/
/*-------------------------------------------
　テキスト装飾
-------------------------------------------*/
/*-------------------------------------------
　テキストサイズ
-------------------------------------------*/
/*-------------------------------------------
　テキストサイズ
-------------------------------------------*/
/*-------------------------------------------
　スクロール　矢印×アニメーション
-------------------------------------------*/
/*-------------------------------------------
　クリックで開く　Q&Aなど
-------------------------------------------*/
.accbox_group {
  border-top: 1px solid #B6B6C3; }

.accbox {
  max-width: 100%; }
  .accbox label {
    display: block;
    margin: 1.5px 0;
    padding: 10px 10px 12px 55px;
    line-height: 2.5rem;
    font-size: 1.1rem;
    font-weight: bold;
    color: #0d0d38;
    border-bottom: 1px solid #B6B6C3;
    text-indent: -1.5em;
    transition: all 0.3s;
    cursor: pointer; }
    @media screen and (max-width: 834px) {
      .accbox label {
        line-height: 1.75rem;
        font-size: 0.88rem; } }
    @media screen and (max-width: 834px) {
      .accbox label {
        padding: 12px 20px 14px 2.4em; } }
    .accbox label:hover {
      background: #e4dff6;
      color: #0d0d38; }
  .accbox input {
    display: none; }
  .accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.3s; }

.cssacc:checked + .accshow {
  height: auto;
  padding: 15px 30px 20px;
  line-height: 2.5rem;
  font-size: 1rem;
  color: #0d0d38;
  background: #F0F0F3;
  opacity: 1;
  border-bottom: 2px solid #0d0d38; }
  @media screen and (max-width: 834px) {
    .cssacc:checked + .accshow {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

/*-------------------------------------------
　バナー枠
-------------------------------------------*/
.banner {
  padding: 20px; }
  @media screen and (max-width: 834px) {
    .banner {
      padding: 10px 20px; } }
  .banner small {
    font-size: 0.7em; }

/*-------------------------------------------
　バナー　拡大する
-------------------------------------------*/
figure.cat_banner {
  position: relative;
  overflow: hidden;
  max-height: 150px;
  width: 100%;
  margin-bottom: 20px;
  background: #4b4bc6;
  color: #FFF;
  text-align: center;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  border: 2px #FFF solid; }
  @media screen and (max-width: 834px) {
    figure.cat_banner {
      margin: 10px 0; } }
  figure.cat_banner * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.45s ease-in-out;
    transition: all 0.45s ease-in-out; }
  figure.cat_banner img {
    width: 100%;
    position: relative;
    opacity: 0.7;
    overflow: hidden; }
  figure.cat_banner figcaption {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 15%;
    right: 15%;
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-width: 1px 1px 0px;
    background-color: rgba(0, 0, 0, 0.4); }
  figure.cat_banner center {
    margin: 0;
    padding: 12px 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px; }
    @media screen and (max-width: 834px) {
      figure.cat_banner center {
        font-size: 1rem; } }
  figure.cat_banner .icon, figure.cat_banner .caption {
    overflow: hidden;
    width: 100%;
    position: absolute; }
  figure.cat_banner .icon {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 0; }
  figure.cat_banner .caption {
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    bottom: 0; }
  figure.cat_banner p, figure.cat_banner .icon span {
    display: table;
    margin: 0 auto;
    padding: 0 10px;
    position: relative;
    text-align: center;
    width: auto;
    color: rgba(179, 159, 198, 0);
    font-size: 0.6em; }
  figure.cat_banner p:before, figure.cat_banner .icon span:before, figure.cat_banner p:after {
    position: absolute;
    height: 1px;
    content: '';
    background: white;
    -webkit-transition: all 0.45s ease-in-out;
    transition: all 0.45s ease-in-out; }
  figure.cat_banner .icon span:after {
    position: absolute;
    height: 1px;
    content: '';
    background: white;
    -webkit-transition: all 0.45s ease-in-out;
    transition: all 0.45s ease-in-out; }
  figure.cat_banner .icon span:before, figure.cat_banner .icon span:after {
    width: 1000%;
    top: 50%; }
  figure.cat_banner .icon span:before {
    left: -1000%; }
  figure.cat_banner .icon span:after {
    right: -1000%; }
  figure.cat_banner i {
    color: white;
    font-size: 30px; }
  figure.cat_banner p:before, figure.cat_banner p:after {
    width: 150%;
    bottom: 50%; }
  figure.cat_banner p:before {
    left: -100%; }
  figure.cat_banner p:after {
    right: -100%; }
  figure.cat_banner a {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: 1; }
  figure.cat_banner:hover img, figure.cat_banner.hover img {
    opacity: 0.15;
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  figure.cat_banner:hover p, figure.cat_banner.hover p {
    opacity: 1;
    -webkit-transition-delay: 0.35s;
    transition-delay: 0.35s;
    color: #FFF; }
  figure.cat_banner:hover p:before, figure.cat_banner.hover p:before {
    left: -150%; }
  figure.cat_banner:hover p:after, figure.cat_banner.hover p:after {
    right: -150%; }

/*-------------------------------------------
　リンクボタン
-------------------------------------------*/
.linkbutton a {
  display: block;
  position: relative;
  max-width: 350px;
  margin: 0 auto;
  margin-top: 12px;
  padding: 18px 0;
  background: linear-gradient(90deg, #6e6eff, #28288c);
  background-size: cover;
  overflow: hidden;
  text-decoration: none;
  line-height: 2.5rem;
  font-size: 1rem;
  font-style: normal;
  font-family: "ten-mincho-text", serif;
  letter-spacing: 0.1em;
  text-align: center;
  color: #FFF;
  box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.057), 0 5px 6.1px rgba(13, 13, 56, 0.076), 0 10.1px 11.4px rgba(13, 13, 56, 0.086), 0 19.2px 19.8px rgba(13, 13, 56, 0.092), 0 38.4px 34.8px rgba(13, 13, 56, 0.1); }
  @media screen and (max-width: 834px) {
    .linkbutton a {
      line-height: 1.75rem;
      font-size: 0.8rem; } }
  @media screen and (max-width: 834px) {
    .linkbutton a {
      display: block;
      width: 100%;
      margin: 0 auto;
      padding: 1em 0;
      background: #4b4bc6;
      color: #FFF;
      text-align: center;
      font-size: 0.9em;
      box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.037), 0 5px 6.1px rgba(13, 13, 56, 0.057), 0 10.1px 11.4px rgba(13, 13, 56, 0.076), 0 19.2px 19.8px rgba(13, 13, 56, 0.086); } }
  .linkbutton a:hover {
    text-decoration: none;
    color: #FFF;
    filter: drop-shadow(1px 1px 1px rgba(13, 13, 56, 0.1));
    background: #4b4bc6;
    box-shadow: none; }
  .linkbutton a::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    -moz-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    content: "";
    background-color: #ffcf12;
    position: absolute;
    top: -150px;
    right: auto;
    left: 20px;
    z-index: -1;
    width: 0;
    height: 300px; }
  .linkbutton a:hover::before {
    transform: rotate(70deg);
    width: 700px;
    opacity: 0.7; }

/*-------------------------------------------
　赤リンクボタン
-------------------------------------------*/
.linkbuttonRed a {
  border-left: 1px solid #FFF;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #ff1240;
  border-right: 1px solid #ff1240;
  display: block;
  position: relative;
  max-width: 350px;
  margin: 0 auto;
  margin-top: 12px;
  padding: 22px 0;
  background: linear-gradient(90deg, #ff1240, #7f0920);
  background-size: cover;
  overflow: hidden;
  text-decoration: none;
  line-height: 2rem;
  font-size: 1.2rem;
  font-style: normal;
  font-family: "ten-mincho-text", serif;
  letter-spacing: 0.1em;
  text-align: center;
  color: #FFF;
  box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.057), 0 5px 6.1px rgba(13, 13, 56, 0.076), 0 10.1px 11.4px rgba(13, 13, 56, 0.086), 0 19.2px 19.8px rgba(13, 13, 56, 0.092), 0 38.4px 34.8px rgba(13, 13, 56, 0.1); }
  @media screen and (max-width: 834px) {
    .linkbuttonRed a {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  @media screen and (max-width: 834px) {
    .linkbuttonRed a {
      display: block;
      width: 100%;
      margin: 0 auto;
      padding: 1em 0;
      background: #ff1240;
      color: #FFF;
      text-align: center;
      font-size: 1em;
      box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.037), 0 5px 6.1px rgba(13, 13, 56, 0.057), 0 10.1px 11.4px rgba(13, 13, 56, 0.076), 0 19.2px 19.8px rgba(13, 13, 56, 0.086); } }
  .linkbuttonRed a:hover {
    text-decoration: none;
    color: #FFF;
    filter: drop-shadow(1px 1px 1px rgba(13, 13, 56, 0.1));
    background: #ff1240;
    box-shadow: none; }
  .linkbuttonRed a::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    -moz-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    content: "";
    background-color: #ffcf12;
    position: absolute;
    top: -150px;
    right: auto;
    left: 20px;
    z-index: -1;
    width: 0;
    height: 300px; }
  .linkbuttonRed a:hover::before {
    transform: rotate(70deg);
    width: 700px;
    opacity: 0.7; }

/*-------------------------------------------
　緑リンクボタン
-------------------------------------------*/
.linkbuttonGr a {
  border-left: 1px solid #FFF;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #4CE01F;
  border-right: 1px solid #4CE01F;
  display: block;
  position: relative;
  max-width: 350px;
  margin: 0 auto;
  margin-top: 12px;
  padding: 22px 0;
  background: linear-gradient(90deg, #4ce01f, #38941c);
  background-size: cover;
  overflow: hidden;
  text-decoration: none;
  line-height: 2rem;
  font-size: 1.2rem;
  font-style: normal;
  font-family: "ten-mincho-text", serif;
  letter-spacing: 0.1em;
  text-align: center;
  color: #FFF;
  box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.057), 0 5px 6.1px rgba(13, 13, 56, 0.076), 0 10.1px 11.4px rgba(13, 13, 56, 0.086), 0 19.2px 19.8px rgba(13, 13, 56, 0.092), 0 38.4px 34.8px rgba(13, 13, 56, 0.1); }
  @media screen and (max-width: 834px) {
    .linkbuttonGr a {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  @media screen and (max-width: 834px) {
    .linkbuttonGr a {
      display: block;
      width: 100%;
      margin: 0 auto;
      padding: 1em 0;
      background: #4CE01F;
      color: #FFF;
      text-align: center;
      font-size: 1em;
      box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.037), 0 5px 6.1px rgba(13, 13, 56, 0.057), 0 10.1px 11.4px rgba(13, 13, 56, 0.076), 0 19.2px 19.8px rgba(13, 13, 56, 0.086); } }
  .linkbuttonGr a:hover {
    text-decoration: none;
    color: #FFF;
    filter: drop-shadow(1px 1px 1px rgba(13, 13, 56, 0.1));
    background: #4CE01F;
    box-shadow: none; }
  .linkbuttonGr a::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    -moz-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    content: "";
    background-color: #ffcf12;
    position: absolute;
    top: -150px;
    right: auto;
    left: 20px;
    z-index: -1;
    width: 0;
    height: 300px; }
  .linkbuttonGr a:hover::before {
    transform: rotate(70deg);
    width: 700px;
    opacity: 0.7; }

/*-------------------------------------------
　白リンクボタン
-------------------------------------------*/
.linkbuttonwhite a {
  border: 1px solid #0d0d38;
  display: block;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  margin-top: 12px;
  padding: 18px 0;
  background: #FFF;
  background-size: cover;
  overflow: hidden;
  text-decoration: none;
  line-height: 2rem;
  font-size: 1.2rem;
  font-style: normal;
  font-family: "ten-mincho-text", serif;
  letter-spacing: 0.1em;
  text-align: center;
  color: #0d0d38;
  box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.057), 0 5px 6.1px rgba(13, 13, 56, 0.076), 0 10.1px 11.4px rgba(13, 13, 56, 0.086), 0 19.2px 19.8px rgba(13, 13, 56, 0.092), 0 38.4px 34.8px rgba(13, 13, 56, 0.1); }
  @media screen and (max-width: 834px) {
    .linkbuttonwhite a {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  .linkbuttonwhite a:hover {
    text-decoration: none;
    color: #0d0d38;
    filter: drop-shadow(1px 1px 1px rgba(13, 13, 56, 0.1));
    background: #FFF;
    box-shadow: none; }
  .linkbuttonwhite a::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    -moz-transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.2, 1);
    content: "";
    background-color: #ffcf12;
    position: absolute;
    top: -150px;
    right: auto;
    left: 20px;
    z-index: -1;
    width: 0;
    height: 300px; }
  .linkbuttonwhite a:hover::before {
    transform: rotate(70deg);
    width: 700px;
    opacity: 0.7; }

/*-------------------------------------------
　新着一覧表示
-------------------------------------------*/
.info-box {
  margin-bottom: 20px;
  padding: 10px 20px 5px;
  border: 1px solid #717189;
  background: #FFF; }
  @media screen and (max-width: 834px) {
    .info-box {
      margin-bottom: 0px;
      border: none;
      padding: 10px 10px;
      border-bottom: 1px solid #717189; } }
  .info-box p {
    padding: 2px 0 12px 0;
    line-height: 1.3rem;
    font-size: 0.8rem; }
    @media screen and (max-width: 834px) {
      .info-box p {
        line-height: 1.17rem;
        font-size: 0.72rem; } }
    .info-box p a {
      text-decoration: underline; }
      .info-box p a:hover {
        color: #4b4bc6;
        text-decoration: underline; }
  .info-box span.lead {
    display: inline-block;
    font-weight: 400; }
  .info-box .imgthumbnail {
    height: 140px;
    overflow-y: hidden;
    align-items: center;
    display: flex; }
    @media screen and (max-width: 834px) {
      .info-box .imgthumbnail {
        max-height: 90px; } }
    .info-box .imgthumbnail img {
      width: 100%; }
    .info-box .imgthumbnail:hover {
      opacity: 0.8; }
    @media screen and (max-width: 834px) {
      .info-box .imgthumbnail {
        height: 220px;
        overflow-y: hidden;
        align-items: center;
        display: flex; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .info-box .imgthumbnail {
      max-height: 170px; } }
    @media screen and (max-width: 834px) {
        .info-box .imgthumbnail img {
          width: 100%; } }

.info-cat {
  display: inline-block;
  margin-top: -2px;
  line-height: 1.3rem;
  font-size: 0.7rem;
  font-weight: bold;
  color: #FFF;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .info-cat {
      line-height: 1.17rem;
      font-size: 0.63rem; } }
  .info-cat a {
    color: #FFF;
    text-decoration: none; }
    .info-cat a:hover {
      color: #B6B6C3;
      text-decoration: none; }

.info-cat-news {
  margin: 0 10px;
  width: 80px;
  background: #4b4bc6; }

.info-cat-media {
  margin: 0 10px;
  width: 80px;
  background: #745fcb; }

.info-cat-research {
  margin: 0 10px 0 0;
  padding: 0 10px;
  background: #2E9EB4; }

.info-cat-youtube {
  margin: 0 10px;
  width: 80px;
  background: #ff1240; }

/*-------------------------------------------
　新着RSS一覧表示
-------------------------------------------*/
.rss {
  margin-bottom: 20px;
  padding: 10px 20px;
  border: 1px solid #717189;
  background: #FFF; }
  .rss p {
    padding: 10px 10px 8px;
    line-height: 1.3rem;
    font-size: 0.8rem;
    border-bottom: 1px dashed #717189; }
    @media screen and (max-width: 834px) {
      .rss p {
        line-height: 1.17rem;
        font-size: 0.72rem; } }
    .rss p a {
      text-decoration: underline; }
      .rss p a:hover {
        color: #4b4bc6;
        text-decoration: underline; }
    .rss p:last-child {
      border-bottom: none; }

/*-------------------------------------------
 アーカイブ　ページネーション
-------------------------------------------*/
.pagination {
  clear: both;
  position: relative;
  line-height: 2.5rem;
  font-size: 1rem;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .pagination {
      line-height: 1.75rem;
      font-size: 0.8rem; } }
  .pagination .pagination-box {
    display: inline-block; }
  .pagination span {
    display: block;
    float: left;
    margin: 2px 5px 2px 0;
    padding: 2px 20px 0;
    text-decoration: none;
    width: auto;
    color: #FFF;
    background: #0d0d38; }
  .pagination a {
    display: block;
    float: left;
    margin: 2px 5px 2px 0;
    padding: 2px 20px 0;
    text-decoration: none;
    width: auto;
    color: #FFF;
    background: #0d0d38; }
    .pagination a:hover {
      color: #FFF;
      background: #4b4bc6; }
  .pagination .current {
    padding: 2px 20px 0;
    color: #FFF;
    background: #4b4bc6; }

/*-------------------------------------------
 シングルページ　ページネーション
-------------------------------------------*/
ul.pager {
  margin: 5px 0 15px;
  list-style-type: none;
  padding-left: 0;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 834px) {
    ul.pager {
      display: inline-block; } }
  ul.pager li {
    margin: 5px 15px 4px 0; }
    @media screen and (max-width: 834px) {
      ul.pager li {
        width: 100%;
        margin: 10px 0;
        display: inline-block;
        text-align: center; } }
  ul.pager a {
    background: #4b4bc6;
    padding: 10px 20px;
    line-height: 1.3rem;
    font-size: 0.8rem;
    color: #FFF;
    font-weight: bold; }
    @media screen and (max-width: 834px) {
      ul.pager a {
        line-height: 1.17rem;
        font-size: 0.72rem; } }
    @media screen and (max-width: 834px) {
      ul.pager a {
        width: 100%;
        line-height: 2rem;
        font-size: 1.1rem;
        font-weight: bold;
        text-align: center; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    ul.pager a {
      line-height: 1.6rem;
      font-size: 0.99rem; } }

    ul.pager a:hover {
      background: #0d0d38;
      text-decoration: none; }

/*-------------------------------------------
　ページトップへ戻る
-------------------------------------------*/
#page-top_div p {
  margin: 0;
  text-align: center;
  width: 100%;
  background: #0d0d38;
  font-size: 0.6em;
  color: #FFF;
  border-top: 1px solid #0d0d38;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease; }
#page-top_div p:hover {
  background: #454553; }
#page-top_div a:hover {
  text-decoration: none; }

/*-------------------------------------------
　パンくず
-------------------------------------------*/
ul.pankuzu {
  text-align: center;
  line-height: 1.2rem;
  font-size: 0.7rem;
  overflow: hidden;
  padding: 7px 8px 5px 22px; }
  @media screen and (max-width: 834px) {
    ul.pankuzu {
      line-height: 1.08rem;
      font-size: 0.63rem; } }
  ul.pankuzu li {
    float: left;
    list-style: none; }
    ul.pankuzu li a {
      color: #4b4bc6; }
      ul.pankuzu li a:hover {
        color: #0d0d38;
        text-decoration: none; }

/*-------------------------------------------
　タブ切り替え
-------------------------------------------*/
.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  @media screen and (max-width: 834px) {
    .nav {
      line-height: 2.5rem;
      font-size: 1rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .nav {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

.nav-link {
  padding: 3px 25px 0;
  margin-right: 2px; }
  @media screen and (max-width: 834px) {
    .nav-link {
      padding: 3px 15px 0; } }

/* タブ */
.nav-tabs {
  border-bottom: 2px solid #0d0d38;
  font-weight: bold; }
  .nav-tabs .nav-link {
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    background-color: #0d0d38;
    color: #FFF; }
    .nav-tabs .nav-link:hover {
      color: #FFF;
      border-bottom: 3px solid #4b4bc6;
      background-color: #4b4bc6; }
  .nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    margin-bottom: -3px;
    font-weight: bold;
    color: #4b4bc6;
    background-color: #FFF;
    border: 2px solid #0d0d38;
    border-bottom: 4px solid #FFF; }
  @media screen and (max-width: 834px) {
    .nav-tabs li {
      width: 50%; } }

/* タブで開くコンテンツ */
.tab-content > .tab-pane {
  display: none; }
.tab-content > .active {
  padding-top: 80px;
  display: block; }
  @media screen and (max-width: 834px) {
    .tab-content > .active {
      padding-top: 10px; } }

/*-------------------------------------------
　リサーチ記事テーブル
-------------------------------------------*/
.magazine-content {
  /* テーブル　基本 */ }
  .magazine-content table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 2px solid #B6B6C3;
    margin-top: 10px; }
    .magazine-content table th, .magazine-content table td {
      padding: 14px 15px 12px;
      border-bottom: 1px solid #B6B6C3;
      border-right: 1px solid #B6B6C3;
      line-height: 1.4rem;
      font-size: 0.9rem; }
      @media screen and (max-width: 834px) {
        .magazine-content table th, .magazine-content table td {
          line-height: 0.98rem;
          font-size: 0.72rem; } }
      @media screen and (max-width: 834px) {
        .magazine-content table th, .magazine-content table td {
          padding: 5px 7px 4px; } }
    .magazine-content table th {
      background: #F0F0F3;
      line-height: 1.4rem;
      font-size: 1rem;
      font-weight: bold;
      text-align: center; }
      @media screen and (max-width: 834px) {
        .magazine-content table th {
          line-height: 0.98rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 834px) {
        .magazine-content table th {
          text-align: left; } }
    .magazine-content table p {
      padding: 0; }

/*-------------------------------------------
　テーブル設定
-------------------------------------------*/
/* 列１：紫 */
.trtdbgcolac tr:nth-child(1) th, .trtdbgcolac tr:nth-child(1) td {
  background: #e4dff6;
  font-weight: bold;
  letter-spacing: 0.1;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .trtdbgcolac tr:nth-child(1) th, .trtdbgcolac tr:nth-child(1) td {
      text-align: left; } }

/* 列１：紫　行１：背景灰色 */
.trtdbgcol tr:nth-child(1) th, .trtdbgcol tr:nth-child(1) td {
  background: #e4dff6;
  font-weight: bold;
  letter-spacing: 0.1;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .trtdbgcol tr:nth-child(1) th, .trtdbgcol tr:nth-child(1) td {
      text-align: left; } }
.trtdbgcol td:nth-child(1) {
  background: #F0F0F3;
  font-weight: bold; }

/* 行１：背景灰色 */
.tdbgcol td:nth-child(1) {
  background: #E6E6EB;
  font-weight: bold; }

/* 行２列均等 */
.td02 td:nth-child(1) {
  width: calc(100% / 5); }
.td02 td:nth-child(2) {
  width: calc(100% / 5); }

/* 行３列均等　最初が少し小さい */
.td03 td:nth-child(1) {
  width: calc(100% / 3.4); }
.td03 td:nth-child(2) {
  width: calc(100% / 2.8); }
.td03 td:nth-child(3) {
  width: calc(100% / 2.8); }

/* 文字：テーブル全てセンター */
.txtallcenter th {
  text-align: center;
  vertical-align: middle; }
.txtallcenter td {
  text-align: center;
  vertical-align: middle; }

/* ○など　色：黄色　文字：センター */
#scolor {
  background: #fff7dd;
  text-align: center;
  font-weight: bold; }

#scenter {
  text-align: center; }

/*-------------------------------------------
　横スクロール
-------------------------------------------*/
.scrolltable {
  overflow-x: scroll;
  width: 100%; }
  .scrolltable table {
    width: 815px; }

/*-------------------------------------------
　th → tdへ矢印
-------------------------------------------*/
.yazirushi tr {
  border-bottom: solid 1px white; }
  .yazirushi tr:nth-child(1), .yazirushi tr:last-child {
    border-bottom: none; }
.yazirushi th:nth-child(1), .yazirushi td:nth-child(1) {
  position: relative;
  background: #e4dff6;
  padding: 14px 15px 12px;
  line-height: 1.4rem;
  font-size: 1rem;
  letter-spacing: 0.1;
  font-weight: bold;
  vertical-align: middle;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .yazirushi th:nth-child(1), .yazirushi td:nth-child(1) {
      line-height: 0.98rem;
      font-size: 0.8rem; } }
  @media screen and (max-width: 834px) {
    .yazirushi th:nth-child(1), .yazirushi td:nth-child(1) {
      text-align: left; } }
  @media screen and (max-width: 834px) {
    .yazirushi th:nth-child(1), .yazirushi td:nth-child(1) {
      padding: 5px 7px 4px; } }
  .yazirushi th:nth-child(1):after, .yazirushi td:nth-child(1):after {
    display: block;
    content: "";
    width: 0px;
    height: 0px;
    position: absolute;
    top: calc(50% - 10px);
    right: -10px;
    border-left: 10px solid #e4dff6;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; }
.yazirushi td {
  padding: 14px 15px 12px 30px; }
  @media screen and (max-width: 834px) {
    .yazirushi td {
      padding: 5px 7px 4px 30px; } }

/*-------------------------------------------
簡易フローチャート
-------------------------------------------*/
.flowcart {
  background: #E6E6EB;
  padding: 20px; }
  .flowcart .flowcart-afterborder-one {
    margin-bottom: 40px;
    padding: 10px 20px 20px;
    background: #FFF;
    border: 1px solid #454553;
    position: relative; }
    .flowcart .flowcart-afterborder-one p {
      padding: 0;
      line-height: 1.5rem;
      font-size: 0.9rem; }
      @media screen and (max-width: 834px) {
        .flowcart .flowcart-afterborder-one p {
          line-height: 1.05rem;
          font-size: 0.72rem; } }
    .flowcart .flowcart-afterborder-one::after {
      position: absolute;
      content: "";
      width: 41px;
      height: 41px;
      display: block;
      border-left: 1px solid #714990;
      bottom: -41px;
      left: 50%; }
  .flowcart .flowcart-last {
    padding: 10px 20px 20px;
    background: #FFF;
    border: 1px solid #454553; }
    .flowcart .flowcart-last p {
      padding: 0;
      line-height: 1.5rem;
      font-size: 0.9rem; }
      @media screen and (max-width: 834px) {
        .flowcart .flowcart-last p {
          line-height: 1.05rem;
          font-size: 0.72rem; } }

/*-------------------------------------------
フローチャート
-------------------------------------------*/
.flowtable {
  overflow-x: scroll;
  overflow-y: hidden; }
  .flowtable table.flow2 {
    border: none;
    position: relative; }
    .flowtable table.flow2 tr:nth-child(odd) td {
      background: #FFF; }
    .flowtable table.flow2 hr {
      margin: 0;
      margin-top: 10px;
      padding: 0;
      border-top: 1px solid #0d0d38;
      height: 1px; }
    .flowtable table.flow2 th {
      margin: 0;
      padding: 0;
      border: none;
      text-align: center;
      font-size: 12px;
      font-weight: bold;
      height: 30px;
      line-height: 31px; }
      .flowtable table.flow2 th.flowtop {
        width: 120px;
        color: #FFF;
        background: #714990;
        display: block; }
      .flowtable table.flow2 th.flowtoplink {
        width: 120px; }
        .flowtable table.flow2 th.flowtoplink a {
          width: 120px;
          color: #FFF;
          background: #714990;
          display: block;
          text-decoration: none; }
          .flowtable table.flow2 th.flowtoplink a:hover {
            background: #4b325e; }
      .flowtable table.flow2 th.flowtopicon::before {
        content: "";
        width: 10px;
        height: 10px;
        display: block;
        border-top: 3px solid #714990;
        border-right: 3px solid #714990;
        top: calc(40% - 0px);
        left: 0%;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
    .flowtable table.flow2 td {
      padding: 0;
      margin: 0;
      background: #eee;
      border: none;
      padding: 5px 0; }
      .flowtable table.flow2 td.flowitemicon::before {
        content: "";
        width: 10px;
        height: 10px;
        display: block;
        border-top: 3px solid #714990;
        border-right: 3px solid #714990;
        top: calc(40% - 0px);
        left: 0%;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      .flowtable table.flow2 td.flowitemlinktitle a {
        width: 120px;
        font-size: 12px;
        line-height: 1.2em;
        color: #FFF;
        background: #4b325e;
        display: block;
        text-decoration: none;
        text-align: center;
        height: 30px;
        line-height: 31px;
        font-weight: bold; }
        .flowtable table.flow2 td.flowitemlinktitle a:hover {
          background: #714990; }
      .flowtable table.flow2 td.flowitem p {
        margin: 0;
        padding: 6px 6px 4px;
        font-size: 10px;
        line-height: 1.2em;
        border: #745fcb solid 3px;
        text-align: justify;
        vertical-align: top;
        background: #FFF;
        display: block; }

/*-------------------------------------------
　スマホでは一行　基本テーブル
-------------------------------------------*/
.table-mobileone table {
  border-top: 1px solid #B6B6C3;
  width: 100%;
  border-collapse: collapse;
  line-height: 2.5rem;
  font-size: 1rem; }
  @media screen and (max-width: 834px) {
    .table-mobileone table {
      line-height: 1.75rem;
      font-size: 0.8rem; } }
  .table-mobileone table tr {
    border-bottom: 1px solid #B6B6C3; }
  .table-mobileone table td {
    border: none;
    text-align: left;
    vertical-align: middle;
    padding: 16px 3%; }
    @media screen and (max-width: 834px) {
      .table-mobileone table td {
        padding: 10px 20px;
        display: block; } }
  .table-mobileone table th {
    text-align: center;
    padding: 16px;
    width: 22%;
    font-weight: normal;
    background-color: #E6E6EB; }
    @media screen and (max-width: 834px) {
      .table-mobileone table th {
        padding: 10px 20px;
        display: block;
        width: 100%;
        box-sizing: border-box;
        text-align: left; } }

/*-------------------------------------------
 アーカイブ
-------------------------------------------*/
.archive {
  background: #E6E6EB; }
  .archive-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    /* M&A用語名 */
    /* メンバー */
    /* M&A事例 */ }
    @media screen and (max-width: 1024px) {
      .archive-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .archive-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .archive-content h2 {
      position: relative;
      margin-top: 0px;
      margin-left: -25px;
      margin-bottom: 30px;
      padding: 0.5em 20px 0.6em 20px;
      line-height: 2rem;
      font-size: 1.2rem;
      letter-spacing: 0.1em;
      color: #FFF;
      background: #745fcb;
      line-height: 2rem;
      font-size: 1.2rem; }
      @media screen and (max-width: 834px) {
        .archive-content h2 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 834px) {
        .archive-content h2 {
          margin-right: -25px;
          padding: 0.5em 20px 0.6em; } }
      .archive-content h2::before {
        position: absolute;
        content: '';
        top: 100%;
        left: 0;
        border: none;
        border-bottom: solid 15px transparent;
        border-right: solid 20px #959e9b; }
      @media screen and (max-width: 834px) {
        .archive-content h2 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
    .archive-content-box {
      border: 1px solid #B6B6C3;
      margin-bottom: 30px;
      position: relative;
      width: 100%;
      background: #FFF;
      /* カテゴリ名 */
      /* 日付 */
      /* 画像 */
      /* テキスト部分コンテンツ */ }
      .archive-content-box .cat {
        margin: -6px -4px;
        line-height: 1.3rem;
        font-size: 0.7rem;
        text-align: left;
        text-align: justify;
        text-justify: inter-ideograph;
        font-weight: bold;
        color: #FFF;
        position: absolute; }
        @media screen and (max-width: 834px) {
          .archive-content-box .cat {
            line-height: 1.17rem;
            font-size: 0.63rem; } }
        .archive-content-box .cat a {
          padding: 2px 5px;
          background: #0d0d38;
          color: #FFF; }
          .archive-content-box .cat a:hover {
            color: #B6B6C3;
            background: #4b4bc6;
            text-decoration: none; }
      .archive-content-box time {
        padding: 0 25px 0 0;
        display: inline-block;
        line-height: 1rem;
        font-size: 0.7rem;
        letter-spacing: 0.1em; }
        @media screen and (max-width: 834px) {
          .archive-content-box time {
            line-height: 0.9rem;
            font-size: 0.63rem; } }
      .archive-content-box .imgthumbnail {
        height: 120px;
        overflow-y: hidden;
        align-items: center;
        display: flex; }
        @media screen and (max-width: 834px) {
          .archive-content-box .imgthumbnail {
            max-height: 70px; } }
        .archive-content-box .imgthumbnail img {
          width: 100%; }
      .archive-content-box-txt {
        padding: 0px 10px 5px 10px;
        /* 監修者 */ }
        .archive-content-box-txt h3 {
          margin: 10px 0;
          padding: 0.5em 0.8em;
          line-height: 1.6rem;
          font-size: 1.1rem;
          color: #0d0d38;
          border-left: solid 5px #745fcb;
          background: #e4dff6;
          line-height: 1.5rem;
          font-size: 0.9rem;
          margin: 0;
          min-height: 90px;
          margin-bottom: 5px; }
          @media screen and (max-width: 834px) {
            .archive-content-box-txt h3 {
              line-height: 1.28rem;
              font-size: 0.99rem; } }
          @media screen and (max-width: 834px) {
            .archive-content-box-txt h3 {
              line-height: 1.05rem;
              font-size: 0.72rem; } }
          .archive-content-box-txt h3:hover {
            color: #4b4bc6; }
          @media screen and (max-width: 834px) {
            .archive-content-box-txt h3 {
              min-height: 50px;
              line-height: 1.7rem;
              font-size: 1.2rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .archive-content-box-txt h3 {
      line-height: 1.19rem;
      font-size: 0.96rem; } }

        .archive-content-box-txt-supervised {
          align-items: center;
          display: flex; }
          .archive-content-box-txt-supervised img {
            width: 25px;
            height: 25px; }
          .archive-content-box-txt-supervised p {
            padding: 0 5px;
            line-height: 1rem;
            font-size: 0.7rem; }
            @media screen and (max-width: 834px) {
              .archive-content-box-txt-supervised p {
                line-height: 0.9rem;
                font-size: 0.63rem; } }
    .archive-content-glossary {
      background: #FFF;
      margin-top: -30px;
      margin-bottom: 15px; }
      .archive-content-glossary-box {
        border-bottom: solid 1px #4b4bc6;
        position: relative;
        width: 100%; }
        .archive-content-glossary-box h3 {
          padding-left: 20px;
          padding-top: 15px;
          padding-right: 110px;
          padding-bottom: 12px;
          line-height: 2rem;
          font-size: 1.2rem; }
          @media screen and (max-width: 834px) {
            .archive-content-glossary-box h3 {
              line-height: 1.6rem;
              font-size: 1.08rem; } }
          .archive-content-glossary-box h3 a {
            color: #0d0d38; }
            .archive-content-glossary-box h3 a:hover {
              color: #4b4bc6;
              text-decoration: underline; }
        .archive-content-glossary-box a.glossary-box-next {
          position: absolute;
          right: 10px;
          bottom: 8px;
          text-align: right;
          padding: 0px 15px 1px;
          line-height: 2.5rem;
          font-size: 1rem;
          font-weight: bold;
          color: #FFF;
          border-radius: 5px;
          background: #745fcb; }
          @media screen and (max-width: 834px) {
            .archive-content-glossary-box a.glossary-box-next {
              line-height: 1.75rem;
              font-size: 0.8rem; } }
          @media screen and (max-width: 834px) {
            .archive-content-glossary-box a.glossary-box-next {
              display: none; } }
          .archive-content-glossary-box a.glossary-box-next:hover {
            color: #FFF;
            text-decoration: none;
            background: #0d0d38;
            -webkit-transition: all .3s;
            transition: all .3s; }
    .archive-content-menbers-box {
      border: 1px solid #B6B6C3;
      margin-bottom: 30px;
      position: relative;
      width: 100%;
      background: #FFF;
      /* カテゴリ名 */
      /* 画像 */ }
      .archive-content-menbers-box .qualifications {
        position: absolute;
        margin: -6px -4px;
        padding: 2px 15px;
        line-height: 1.3rem;
        font-size: 0.7rem;
        text-align: left;
        text-align: justify;
        text-justify: inter-ideograph;
        font-weight: bold;
        color: #FFF;
        background: #0d0d38; }
        @media screen and (max-width: 834px) {
          .archive-content-menbers-box .qualifications {
            line-height: 1.17rem;
            font-size: 0.63rem; } }
      .archive-content-menbers-box .imgthumbnail {
        height: 200px;
        overflow-y: hidden;
        align-items: center;
        display: flex; }
        @media screen and (max-width: 834px) {
          .archive-content-menbers-box .imgthumbnail {
            max-height: 150px; } }
        .archive-content-menbers-box .imgthumbnail img {
          width: 100%; }
        @media screen and (max-width: 834px) {
          .archive-content-menbers-box .imgthumbnail {
            height: 250px;
            overflow-y: hidden;
            align-items: center;
            display: flex; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .archive-content-menbers-box .imgthumbnail {
      max-height: 200px; } }
        @media screen and (max-width: 834px) {
            .archive-content-menbers-box .imgthumbnail img {
              width: 100%; } }
      .archive-content-menbers-box-txt {
        padding: 5px 10px 10px 10px;
        text-align: center; }
        .archive-content-menbers-box-txt h3 {
          line-height: 2.4rem;
          font-size: 1.7rem;
          text-align: center;
          letter-spacing: 0.1em;
          color: #0d0d38; }
          @media screen and (max-width: 834px) {
            .archive-content-menbers-box-txt h3 {
              line-height: 1.92rem;
              font-size: 1.53rem; } }
        .archive-content-menbers-box-txt a.archivemenbers-box-next {
          padding: 3px 15px 4px 15px;
          line-height: 1.3rem;
          font-size: 0.8rem;
          color: #FFF;
          background: #4b4bc6; }
          @media screen and (max-width: 834px) {
            .archive-content-menbers-box-txt a.archivemenbers-box-next {
              line-height: 1.17rem;
              font-size: 0.72rem; } }
          .archive-content-menbers-box-txt a.archivemenbers-box-next:hover {
            text-decoration: none;
            background: #0d0d38;
            -webkit-transition: all .3s;
            transition: all .3s; }
        .archive-content-menbers-box-txt p {
          padding-top: 5px;
          line-height: 1rem;
          font-size: 0.7rem;
          text-align: center; }
          @media screen and (max-width: 834px) {
            .archive-content-menbers-box-txt p {
              line-height: 0.9rem;
              font-size: 0.63rem; } }
    .archive-content-performance-box {
      width: 100%;
      margin-bottom: 30px;
      padding: 7px 12px;
      position: relative;
      background: #FFF;
      border: 1px solid #B6B6C3;
      /* 画像 */ }
      .archive-content-performance-box .casenumber {
        line-height: 2.5rem;
        font-size: 1rem;
        font-weight: bold; }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box .casenumber {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
        .archive-content-performance-box .casenumber strong {
          background: #0d0d38;
          padding: 1px 5px;
          color: #FFF;
          font-size: 0.9em; }
      .archive-content-performance-box .topimages {
        height: 170px;
        overflow-y: hidden;
        align-items: center;
        display: flex; }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box .topimages {
            max-height: 120px; } }
        .archive-content-performance-box .topimages img {
          width: 100%; }
        .archive-content-performance-box .topimages:hover {
          opacity: 0.8; }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box .topimages {
            height: 250px;
            overflow-y: hidden;
            align-items: center;
            display: flex; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .archive-content-performance-box .topimages {
      max-height: 200px; } }
        @media screen and (max-width: 834px) {
            .archive-content-performance-box .topimages img {
              width: 100%; } }
      .archive-content-performance-box-txt h3 {
        margin: 10px 0;
        padding: 0.5em 0.8em;
        line-height: 1.6rem;
        font-size: 1.1rem;
        color: #0d0d38;
        border-left: solid 5px #745fcb;
        background: #e4dff6;
        line-height: 1.2rem;
        font-size: 1rem;
        margin: 0;
        min-height: 55px;
        margin-bottom: 5px; }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box-txt h3 {
            line-height: 1.28rem;
            font-size: 0.99rem; } }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box-txt h3 {
            line-height: 0.84rem;
            font-size: 0.8rem; } }
        .archive-content-performance-box-txt h3:hover {
          color: #4b4bc6; }
      .archive-content-performance-box-txt .company {
        padding: 8px 10px;
        line-height: 1rem;
        font-size: 0.7rem;
        text-align: center;
        color: #FFF;
        background: #0d0d38; }
        @media screen and (max-width: 834px) {
          .archive-content-performance-box-txt .company {
            line-height: 0.9rem;
            font-size: 0.63rem; } }

/*-------------------------------------------
　テキスト設定
-------------------------------------------*/
h1, h2, h3, h4 {
  font-style: normal;
  font-family: "ten-mincho-text", serif;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
  font-display: swap; }

p {
  line-height: 2.5rem;
  font-size: 1rem;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
  font-display: swap; }
  @media screen and (max-width: 834px) {
    p {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

li {
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph; }

time {
  line-height: 1.3rem;
  font-size: 0.8rem;
  font-weight: bold;
  letter-spacing: 0.1em; }
  @media screen and (max-width: 834px) {
    time {
      line-height: 1.17rem;
      font-size: 0.72rem; } }

/*-------------------------------------------
　テキスト装飾設定
-------------------------------------------*/
strong {
  padding: 0 2px;
  background: linear-gradient(transparent 60%, #fff9B2 40%); }

/*-------------------------------------------
　メインタイトル
-------------------------------------------*/
.main-ttl {
  margin-top: 75px;
  background: #ffeebb;
  background: linear-gradient(130deg, rgba(255, 238, 187, 0.9), rgba(116, 95, 203, 0.6));
  background-size: cover; }
  @media screen and (max-width: 834px) {
    .main-ttl {
      margin-top: 55px; } }
  .main-ttl-content {
    padding: 27px 40px 27px 40px; }
    @media screen and (max-width: 834px) {
      .main-ttl-content {
        padding: 27px 20px 27px 20px; } }
    .main-ttl-content p {
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      line-height: 1.3rem;
      font-size: 0.8rem;
      text-transform: uppercase; }
      @media screen and (max-width: 834px) {
        .main-ttl-content p {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
    .main-ttl-content-title {
      line-height: 2.4rem;
      font-size: 1.7rem;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 834px) {
        .main-ttl-content-title {
          line-height: 1.92rem;
          font-size: 1.53rem; } }

/*---------------------------------------------
検索フォーム
---------------------------------------------*/
#form2 {
  margin: 0;
  padding: 0;
  max-width: 102%;
  margin-bottom: 20px;
  background: none; }
  @media screen and (max-width: 834px) {
    #form2 {
      margin-top: 40px; } }

#sbox2 {
  width: 80%;
  height: 50px;
  padding: 0 15px;
  left: 0;
  top: 0;
  border-radius: 2px;
  outline: 0;
  background: #717189;
  border: 1px solid #FFF; }

#sbtn2 {
  height: 50px;
  right: 0;
  /*アイコン左右の位置調整*/
  top: 0;
  background: none;
  color: #454553;
  border: none;
  font-size: 20px;
  /*アイコンサイズ*/ }

#sbtn2:hover {
  background: #B6B6C3; }

#sbtn5:hover {
  color: #4b4bc6; }

/*-------------------------------------------
スマホ表示有無
-------------------------------------------*/
@media screen and (max-width: 1024px) {
  .visible-desktop-lg {
    display: none; } }
@media screen and (max-width: 834px) {
  .visible-desktop {
    display: none; } }
@media screen and (min-width: 1025px) {
  .visible-phone {
    display: none; } }
@media screen and (min-width: 599px) {
  .visible-phone-sm {
    display: none; } }
/*-------------------------------------------
ページトップ
-------------------------------------------*/
#page-top_div p {
  text-align: center;
  width: 100%;
  background: #000;
  font-size: 0.9em;
  color: #FFF;
  padding: 0; }
  #page-top_div p:hover {
    background: #0d0d38; }
#page-top_div a:hover {
  text-decoration: none; }

/*-------------------------------------------
footer-info
-------------------------------------------*/
.footer {
  background-color: #0d0d38; }
  .footer .footer-content {
    max-width: 1024px;
    margin: 0 auto;
    position: relative;
    padding: 0 0 40px; }
    @media screen and (max-width: 1024px) {
      .footer .footer-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .footer .footer-content {
        padding: 0px 15px 30px 20px; } }
    .footer .footer-content a {
      color: #B6B6C3;
      text-decoration: none; }
      .footer .footer-content a:hover {
        color: #FFF;
        text-decoration: underline; }
    .footer .footer-content-nav {
      width: 100%; }
      .footer .footer-content-nav ul {
        line-height: 2em;
        margin-right: 30px;
        padding: 20px 10px 15px 0px;
        display: inline-block;
        vertical-align: top; }
        @media screen and (max-width: 834px) {
          .footer .footer-content-nav ul {
            padding: 20px 10px 20px 10px; } }
      .footer .footer-content-nav p {
        letter-spacing: 0em; }
    .footer .footer-content-corporategroup {
      margin-top: 15px;
      margin-bottom: 15px; }
      .footer .footer-content-corporategroup img {
        margin-right: 20px;
        max-height: 40px;
        background: #FFF;
        height: auto; }
    .footer .footer-content-copy {
      position: relative; }
      @media screen and (max-width: 834px) {
        .footer .footer-content-copy {
          margin-bottom: 60px; } }
      .footer .footer-content-copy img {
        width: 170px;
        height: auto;
        position: absolute;
        bottom: 0;
        right: 0; }
        @media screen and (max-width: 834px) {
          .footer .footer-content-copy img {
            position: absolute;
            bottom: 60px;
            right: 20px; } }
      .footer .footer-content-copy p {
        line-height: 1.3rem;
        font-size: 0.8rem;
        color: #B6B6C3; }
        @media screen and (max-width: 834px) {
          .footer .footer-content-copy p {
            line-height: 1.17rem;
            font-size: 0.72rem; } }
        @media screen and (max-width: 834px) {
          .footer .footer-content-copy p {
            margin: 10px; } }

/*-------------------------------------------
LP footer
-------------------------------------------*/
.lp-footer {
  background-color: #0d0d38; }
  .lp-footer .footer-content {
    max-width: 1024px;
    margin: 0 auto;
    position: relative;
    padding: 40px 0; }
    @media screen and (max-width: 1024px) {
      .lp-footer .footer-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .lp-footer .footer-content {
        padding: 20px; } }
    .lp-footer .footer-content a {
      color: #B6B6C3;
      text-decoration: none; }
      .lp-footer .footer-content a:hover {
        color: #FFF;
        text-decoration: underline; }
    .lp-footer .footer-content-copy {
      position: relative; }
      @media screen and (max-width: 834px) {
        .lp-footer .footer-content-copy {
          margin-bottom: 60px; } }
      .lp-footer .footer-content-copy img {
        width: 170px;
        height: auto;
        position: absolute;
        bottom: 0;
        right: 0; }
        @media screen and (max-width: 834px) {
          .lp-footer .footer-content-copy img {
            display: none; } }
      .lp-footer .footer-content-copy p {
        line-height: 1.3rem;
        font-size: 0.8rem;
        color: #B6B6C3; }
        @media screen and (max-width: 834px) {
          .lp-footer .footer-content-copy p {
            line-height: 1.17rem;
            font-size: 0.72rem; } }
        @media screen and (max-width: 834px) {
          .lp-footer .footer-content-copy p {
            text-align: center; } }

/*-------------------------------------------
footerお問合せ
-------------------------------------------*/
.footer-inquiry {
  position: fixed;
  bottom: -10px;
  padding: 0;
  z-index: 2100;
  opacity: 0.95; }
  .footer-inquiry img {
    width: 50%;
    height: auto; }

/*-------------------------------------------
　フロントページ　メインビジュアル
-------------------------------------------*/
/* 告知リンク */
.front-Announcement {
  background: #e4dff6;
  margin-bottom: -150px; }
  @media screen and (max-width: 834px) {
    .front-Announcement {
      margin-top: 55px;
      margin-bottom: -60px; } }
  .front-Announcement-content {
    max-width: 1024px;
    margin: 0 auto; }
    @media screen and (max-width: 1024px) {
      .front-Announcement-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    .front-Announcement-content p {
      line-height: 1.5rem;
      font-size: 1rem;
      text-align: center;
      padding: 8px 0;
      font-weight: bold; }
      @media screen and (max-width: 834px) {
        .front-Announcement-content p {
          line-height: 1.05rem;
          font-size: 0.8rem; } }
    .front-Announcement-content span {
      background: #4b4bc6;
      color: #FFF;
      line-height: 1.3rem;
      font-size: 0.8rem;
      padding: 2px 8px; }
      @media screen and (max-width: 834px) {
        .front-Announcement-content span {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
    .front-Announcement-content a {
      font-size: 0.9em;
      color: #4b4bc6;
      text-decoration: underline; }
      .front-Announcement-content a:hover {
        text-decoration: none;
        color: #0d0d38; }

/* メインビジュアル */
.mainvisual-mobile {
  margin-bottom: -10px;
  margin-top: 54px; }
  .mainvisual-mobile img {
    width: 100vw; }

.mainvisual {
  position: relative;
  max-height: 100vh;
  background: #000; }
  .mainvisual .video_wrapper {
    position: relative;
    width: 100vw;
    max-height: 100vh;
    overflow: hidden;
    text-align: center; }
    @media screen and (min-width: 1261px) {
      .mainvisual .video_wrapper {
        margin-top: -20px;
        margin-bottom: 20px; } }
    @media screen and (min-width: 1521px) {
      .mainvisual .video_wrapper {
        margin-top: -30px;
        margin-bottom: 30px; } }
  .mainvisual .carousel-inner img {
    animation: anime1 12s forwards;
    transform-origin: center;
    width: 100vw;
    height: auto;
    z-index: -100; }
@keyframes anime1 {
  0% {
    transform: scale(1.1); }
  100% {
    transform: scale(1); } }
  .mainvisual .mainvisualtxt {
    position: absolute;
    top: 500px;
    left: calc(340 / 1440 * 100%);
    z-index: 1; }
    @media screen and (min-width: 1521px) {
      .mainvisual .mainvisualtxt {
        top: calc(230 / 1440 * 100%); } }
    .mainvisual .mainvisualtxt img {
      height: 35vw;
      width: auto; }
      @media screen and (min-width: 1521px) {
        .mainvisual .mainvisualtxt img {
          height: 28vw; } }
  .mainvisual .mainvisualbtn {
    position: absolute;
    top: calc(100% - 200px);
    left: calc(80 / 1440 * 100%);
    width: calc(920 / 1440 * 100%); }
    @media screen and (max-width: 1024px) {
      .mainvisual .mainvisualbtn {
        width: 500px; }
        .mainvisual .mainvisualbtn .linkbuttonwhite a {
          font-size: 1em; } }
    @media screen and (max-width: 598px) {
      .mainvisual .mainvisualbtn {
        top: calc(820 / 1440 * 100%);
        width: 400px; }
        .mainvisual .mainvisualbtn .linkbuttonwhite a {
          font-size: 0.8em;
          padding: 10px 0; } }
    @media screen and (min-width: 1521px) {
      .mainvisual .mainvisualbtn {
        top: calc(100% - 220px);
        width: calc(700 / 1440 * 100%); }
        .mainvisual .mainvisualbtn .linkbuttonwhite a {
          font-size: 1.4em;
          padding: 30px 0; } }
  .mainvisual .mainvisualScroll a {
    position: absolute;
    bottom: -20px;
    left: calc(750 / 1600 * 100%);
    z-index: 2;
    display: inline-block;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-decoration: none;
    line-height: 1rem;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.3em;
    color: #FFF;
    padding-top: 70px; }
    @media screen and (max-width: 834px) {
      .mainvisual .mainvisualScroll a {
        line-height: 0.9rem;
        font-size: 0.63rem; } }
    .mainvisual .mainvisualScroll a:hover {
      color: #E6E6EB; }
  .mainvisual .mainvisualScroll a span {
    position: absolute;
    top: 0;
    left: 40%;
    width: 24px;
    height: 24px;
    margin-left: -12px;
    border-left: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: sdb 1.5s infinite;
    animation: sdb 1.5s infinite;
    box-sizing: border-box; }
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }
@keyframes sdb {
  0% {
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }
  .mainvisual .mainvisualLP {
    position: absolute;
    top: calc(100% - 260px);
    right: 0;
    z-index: 1;
    width: 22%; }
    .mainvisual .mainvisualLP img {
      width: 100%; }
    .mainvisual .mainvisualLP a {
      display: inline-block;
      text-decoration: none; }
      .mainvisual .mainvisualLP a:hover {
        opacity: 0.8; }
    @media screen and (max-width: 598px) {
      .mainvisual .mainvisualLP {
        display: none; } }

/*-------------------------------------------
　フロントページ全体設定
-------------------------------------------*/
.ttlEn {
  padding: 0;
  font-family: "nimbus-sans", serif;
  line-height: 5.2rem;
  font-size: 4.8rem;
  text-align: center;
  text-transform: uppercase;
  color: #F0F0F3; }
  @media screen and (max-width: 834px) {
    .ttlEn {
      line-height: 2.6rem;
      font-size: 2.4rem; } }

.front-ttl {
  line-height: 4.2rem;
  font-size: 3.5rem;
  letter-spacing: 0.1em;
  padding-bottom: 40px;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .front-ttl {
      line-height: 2.52rem;
      font-size: 2.1rem; } }
  @media screen and (max-width: 598px) {
    .front-ttl {
      padding-bottom: 30px; } }

/*-------------------------------------------
　フロントページ
-------------------------------------------*/
/* CM・サービス紹介動画 */
.front-cmservicesmove {
  background: #4b4bc6;
  background: linear-gradient(-45deg, #4b4bc6, #0d0d38, #4b4bc6, #0d0d38);
  background-size: 400% 400%;
  animation: gradientBG 15s ease infinite;
  width: 100%;
  z-index: 2;
  height: 200px; }
  @media screen and (max-width: 1024px) {
    .front-cmservicesmove {
      height: 120px; } }
  .front-cmservicesmove-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 0px; }
    @media screen and (max-width: 1024px) {
      .front-cmservicesmove-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-cmservicesmove-content {
        padding-top: 0px;
        padding-bottom: -20px; } }
    @media screen and (max-width: 598px) {
      .front-cmservicesmove-content {
        padding: 18px 20px 10px;
        background: #4b4bc6;
        background: linear-gradient(-45deg, #4b4bc6, #0d0d38, #4b4bc6, #0d0d38);
        background-size: 400% 400%;
        animation: gradientBG 15s ease infinite; } }
    .front-cmservicesmove-content p {
      margin-right: 150px;
      padding-top: 40px;
      text-align: right;
      line-height: 2.4rem;
      font-size: 1.7rem;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      letter-spacing: 0.1em;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-cmservicesmove-content p {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 1024px) {
        .front-cmservicesmove-content p {
          padding-top: 12px;
          line-height: 2rem;
          font-size: 1.2rem;
          margin-right: 50px; } }
  @media screen and (max-width: 1024px) and (max-width: 834px) {
    .front-cmservicesmove-content p {
      line-height: 1.6rem;
      font-size: 1.08rem; } }

    .front-cmservicesmove-content img {
      margin-left: -150px;
      height: 160px;
      width: auto; }
      @media screen and (max-width: 1024px) {
        .front-cmservicesmove-content img {
          height: 80px;
          margin-left: -50px; } }
      .front-cmservicesmove-content img:hover {
        opacity: 0.8; }

/* CM紹介動画 */
.front-cmmove {
  background: #4b4bc6;
  background: linear-gradient(-45deg, #4b4bc6, #0d0d38, #4b4bc6, #0d0d38);
  background-size: 400% 400%;
  animation: gradientBG 15s ease infinite;
  width: 100%;
  z-index: 2;
  height: 200px; }
  @media screen and (max-width: 598px) {
    .front-cmmove {
      position: relative;
      height: 120px; } }
  .front-cmmove-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 12px;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .front-cmmove-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-cmmove-content {
        padding-top: 0px;
        padding-bottom: -8px; } }
    @media screen and (max-width: 1260px) {
      .front-cmmove-content {
        padding: 20px 40px 10px 0px; } }
    @media screen and (max-width: 598px) {
      .front-cmmove-content {
        padding: 20px 80px 10px 0px; } }
    .front-cmmove-content p {
      position: absolute;
      top: 38%;
      left: 100px;
      line-height: 2.4rem;
      font-size: 1.7rem;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      letter-spacing: 0.1em;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-cmmove-content p {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 1260px) {
        .front-cmmove-content p {
          left: 20px; } }
      @media screen and (max-width: 598px) {
        .front-cmmove-content p {
          top: 28%;
          line-height: 2rem;
          font-size: 1.2rem; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-cmmove-content p {
      line-height: 1.6rem;
      font-size: 1.08rem; } }

    .front-cmmove-content img {
      height: 160px;
      width: auto; }
      @media screen and (max-width: 598px) {
        .front-cmmove-content img {
          height: 80px; } }
      .front-cmmove-content img:hover {
        opacity: 0.8; }

/* サービス紹介動画 */
.front-move {
  background: #0d0d38;
  width: 100%;
  z-index: 2;
  height: 200px; }
  @media screen and (max-width: 598px) {
    .front-move {
      position: relative;
      height: 120px; } }
  .front-move-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 12px;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .front-move-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-move-content {
        padding-top: 0px;
        padding-bottom: -8px; } }
    @media screen and (max-width: 1260px) {
      .front-move-content {
        padding: 20px 40px 10px 0px; } }
    @media screen and (max-width: 598px) {
      .front-move-content {
        padding: 20px 80px 10px 0px; } }
    .front-move-content p {
      position: absolute;
      top: 38%;
      left: 100px;
      line-height: 2.4rem;
      font-size: 1.7rem;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      letter-spacing: 0.1em;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-move-content p {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 1260px) {
        .front-move-content p {
          left: 20px; } }
      @media screen and (max-width: 598px) {
        .front-move-content p {
          top: 28%;
          line-height: 2rem;
          font-size: 1.2rem; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-move-content p {
      line-height: 1.6rem;
      font-size: 1.08rem; } }

    .front-move-content img {
      height: 160px;
      width: auto; }
      @media screen and (max-width: 598px) {
        .front-move-content img {
          height: 80px; } }
      .front-move-content img:hover {
        opacity: 0.8; }

/* キャッチ */
.front-catch {
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 598px) {
    .front-catch {
      margin-top: 120px; } }
  .front-catch-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .front-catch-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-catch-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-catch-content h1 {
      line-height: 2.4rem;
      font-size: 1.7rem;
      background: #0d0d38;
      background: linear-gradient(-45deg, #4b4bc6, #0d0d38, #4b4bc6, #0d0d38);
      background-size: 400% 400%;
      animation: gradientBG 15s ease infinite;
      padding: 1px 0px 3px 10px;
      color: #FFF;
      width: 350px;
      margin-bottom: 15px;
      margin-left: -5px; }
      @media screen and (max-width: 834px) {
        .front-catch-content h1 {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 598px) {
        .front-catch-content h1 {
          width: 70%; } }
    .front-catch-content h2 {
      line-height: 3.4rem;
      font-size: 2.6rem; }
      @media screen and (max-width: 834px) {
        .front-catch-content h2 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
    .front-catch-content p {
      padding-top: 10px;
      line-height: 2rem;
      font-size: 1rem; }
      @media screen and (max-width: 834px) {
        .front-catch-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
    .front-catch-content-bn {
      padding-top: 20px;
      max-width: 580px; }
      .front-catch-content-bn a img {
        box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.067), 0 5px 6.1px rgba(13, 13, 56, 0.086), 0 10.1px 11.4px rgba(13, 13, 56, 0.096), 0 19.2px 19.8px rgba(13, 13, 56, 0.102); }
      .front-catch-content-bn a img:hover {
        opacity: 0.8;
        box-shadow: none; }
    .front-catch-content-abso {
      pointer-events: none; }
      .front-catch-content-abso img {
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 580px;
        margin-left: 30px; }
        @media screen and (max-width: 1260px) {
          .front-catch-content-abso img {
            margin-left: 0px;
            z-index: -1; } }
        @media screen and (max-width: 834px) {
          .front-catch-content-abso img {
            width: 480px;
            margin-left: -110px;
            z-index: -1; } }
    .front-catch-content-backimg img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -5; }

/* 選ばれる理由 */
.front-advantage {
  background: #0d0d38; }
  .front-advantage-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .front-advantage-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-advantage-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-advantage-content h2 {
      color: #FFF;
      line-height: 3.4rem;
      font-size: 2.6rem; }
      @media screen and (max-width: 834px) {
        .front-advantage-content h2 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
    .front-advantage-content h3 {
      padding: 0px 0 10px 0;
      line-height: 3.4rem;
      font-size: 2.6rem;
      color: #4b4bc6; }
      @media screen and (max-width: 834px) {
        .front-advantage-content h3 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
      @media screen and (max-width: 598px) {
        .front-advantage-content h3 {
          padding: 5px 0 10px; } }
    .front-advantage-content p {
      line-height: 2rem;
      font-size: 1rem; }
      @media screen and (max-width: 834px) {
        .front-advantage-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 598px) {
        .front-advantage-content p {
          line-height: 2.5rem;
          font-size: 1rem; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-advantage-content p {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

    .front-advantage-content p.addition {
      padding: 10px 0 0 0;
      line-height: 0.9rem;
      font-size: 0.7rem; }
      @media screen and (max-width: 834px) {
        .front-advantage-content p.addition {
          line-height: 0.81rem;
          font-size: 0.63rem; } }
    .front-advantage-content .point {
      position: absolute;
      color: #FFF;
      line-height: 2rem;
      font-size: 1.2rem;
      font-family: "nimbus-sans", serif;
      top: 40px; }
      @media screen and (max-width: 834px) {
        .front-advantage-content .point {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 598px) {
        .front-advantage-content .point {
          top: 30px; } }
      .front-advantage-content .point strong {
        background: #4b4bc6;
        background: #4b4bc6;
        background: linear-gradient(45deg, #4b4bc6, #0d0d38);
        background-size: cover;
        padding: 1px 8px; }
    .front-advantage-content-left {
      margin: 0 0 30px;
      margin-left: -100px;
      padding: 35px 50px 30px;
      background: #FFF;
      position: relative; }
      @media screen and (max-width: 1260px) {
        .front-advantage-content-left {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 40px 30px; } }
      @media screen and (max-width: 834px) {
        .front-advantage-content-left {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 20px 30px; } }
      .front-advantage-content-left .point {
        left: -20px;
        transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -webkit-transform: rotate(-10deg); }
        @media screen and (max-width: 598px) {
          .front-advantage-content-left .point {
            left: 10px; } }
    .front-advantage-content-right {
      margin: 0 0 30px;
      margin-right: -100px;
      padding: 35px 50px 30px;
      background: #FFF;
      position: relative; }
      @media screen and (max-width: 1260px) {
        .front-advantage-content-right {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 40px 30px; } }
      @media screen and (max-width: 834px) {
        .front-advantage-content-right {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 20px 30px; } }
      .front-advantage-content-right .point {
        right: -20px;
        transform: rotate(10deg);
        -moz-transform: rotate(10deg);
        -webkit-transform: rotate(10deg); }
        @media screen and (max-width: 598px) {
          .front-advantage-content-right .point {
            right: 10px; } }

/* M&A事例 */
.front-performance-content {
  padding-top: 50px;
  padding-bottom: 50px; }
  @media screen and (max-width: 834px) {
    .front-performance-content {
      padding-top: 30px;
      padding-bottom: 30px; } }
  .front-performance-content h2 {
    margin-top: -60px; }
    @media screen and (max-width: 598px) {
      .front-performance-content h2 {
        margin-top: -40px; } }
  .front-performance-content p {
    padding: 0px 15px 20px;
    text-align: center;
    line-height: 2rem;
    font-size: 1rem; }
    @media screen and (max-width: 834px) {
      .front-performance-content p {
        text-align: left; } }
    @media screen and (max-width: 834px) {
      .front-performance-content p {
        line-height: 1.4rem;
        font-size: 0.8rem; } }
    .front-performance-content p strong {
      line-height: 2.4rem;
      font-size: 1.7rem; }
      @media screen and (max-width: 834px) {
        .front-performance-content p strong {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
  .front-performance-content a {
    text-decoration: none; }
    .front-performance-content a:hover {
      text-decoration: none; }
  .front-performance-content-success {
    margin: 0 auto;
    margin-bottom: 40px;
    border: 1px solid #F0F0F3;
    padding: 20px;
    max-width: 680px;
    min-height: 300px;
    box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.047), 0 5px 6.1px rgba(13, 13, 56, 0.066), 0 10.1px 11.4px rgba(13, 13, 56, 0.076), 0 19.2px 19.8px rgba(13, 13, 56, 0.082); }
    .front-performance-content-success:hover {
      box-shadow: none;
      border: 1px solid #B6B6C3; }
    @media screen and (max-width: 598px) {
      .front-performance-content-success {
        min-height: 310px;
        margin: 0 20px 20px;
        padding: 20px 20px 15px; } }
    .front-performance-content-success .company {
      line-height: 1.3rem;
      font-size: 0.8rem;
      text-align: center;
      background: #0d0d38;
      padding: 1px 5px;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-performance-content-success .company {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
      @media screen and (max-width: 1260px) {
        .front-performance-content-success .company {
          line-height: 1rem;
          font-size: 0.7rem; } }
  @media screen and (max-width: 1260px) and (max-width: 834px) {
    .front-performance-content-success .company {
      line-height: 0.9rem;
      font-size: 0.63rem; } }

      @media screen and (max-width: 598px) {
        .front-performance-content-success .company {
          line-height: 1.4rem;
          font-size: 1rem;
          padding: 10px 5px 8px; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-performance-content-success .company {
      line-height: 0.98rem;
      font-size: 0.8rem; } }

    .front-performance-content-success img {
      width: 100%;
      height: 400px;
      object-fit: cover; }
      .front-performance-content-success img:hover {
        opacity: 0.8; }
      @media screen and (max-width: 1260px) {
        .front-performance-content-success img {
          height: 320px; } }
      @media screen and (max-width: 598px) {
        .front-performance-content-success img {
          height: 220px; } }
    .front-performance-content-success h3 {
      padding-top: 10px;
      line-height: 2rem;
      font-size: 1.2rem;
      text-align: center; }
      @media screen and (max-width: 834px) {
        .front-performance-content-success h3 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
  .front-performance-content figure {
    margin: 0 15px 25px;
    border: 1px solid #F0F0F3;
    padding: 20px;
    min-height: 300px;
    box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.047), 0 5px 6.1px rgba(13, 13, 56, 0.066), 0 10.1px 11.4px rgba(13, 13, 56, 0.076), 0 19.2px 19.8px rgba(13, 13, 56, 0.082); }
    .front-performance-content figure:hover {
      box-shadow: none;
      border: 1px solid #B6B6C3; }
    @media screen and (max-width: 1260px) {
      .front-performance-content figure {
        min-height: 230px; } }
    @media screen and (max-width: 598px) {
      .front-performance-content figure {
        min-height: 216px;
        padding: 20px 20px 15px; } }
    .front-performance-content figure .company {
      line-height: 1.3rem;
      font-size: 0.8rem;
      text-align: center;
      background: #0d0d38;
      padding: 1px 5px;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-performance-content figure .company {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
      @media screen and (max-width: 1260px) {
        .front-performance-content figure .company {
          line-height: 1rem;
          font-size: 0.7rem; } }
  @media screen and (max-width: 1260px) and (max-width: 834px) {
    .front-performance-content figure .company {
      line-height: 0.9rem;
      font-size: 0.63rem; } }

      @media screen and (max-width: 598px) {
        .front-performance-content figure .company {
          line-height: 2.5rem;
          font-size: 1rem; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-performance-content figure .company {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

    .front-performance-content figure img {
      width: 100%;
      height: 200px;
      object-fit: cover; }
      .front-performance-content figure img:hover {
        opacity: 0.8; }
      @media screen and (max-width: 1260px) {
        .front-performance-content figure img {
          height: 100px; } }
    .front-performance-content figure h3 {
      padding-top: 10px;
      line-height: 1.3rem;
      font-size: 0.8rem; }
      @media screen and (max-width: 834px) {
        .front-performance-content figure h3 {
          line-height: 1.17rem;
          font-size: 0.72rem; } }

/* M&Aプロセス */
.front-process {
  background: #0d0d38;
  position: relative; }
  .front-process .ttlEn {
    font-size: 9rem;
    position: absolute;
    top: -10px;
    left: calc(50% - 360px);
    color: #FFF;
    opacity: 0.2; }
    @media screen and (max-width: 598px) {
      .front-process .ttlEn {
        top: 0;
        left: 0;
        position: relative;
        line-height: 5.2rem;
        font-size: 4.8rem;
        text-align: center;
        padding-top: 20px; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-process .ttlEn {
      line-height: 2.6rem;
      font-size: 2.4rem; } }

  .front-process-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .front-process-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-process-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-process-content h2 {
      margin-top: -35px;
      color: #FFF; }
      @media screen and (max-width: 598px) {
        .front-process-content h2 {
          margin-top: -65px; } }
    .front-process-content p {
      line-height: 2rem;
      font-size: 1rem;
      text-align: center;
      margin-bottom: 20px;
      color: #FFF; }
      @media screen and (max-width: 834px) {
        .front-process-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 834px) {
        .front-process-content p {
          text-align: left; } }
    .front-process-content .linkbutton {
      margin-top: 40px; }
      @media screen and (max-width: 598px) {
        .front-process-content .linkbutton {
          margin-top: 20px; } }
    .front-process-content-list {
      background: #F0F0F3; }
      .front-process-content-list ul {
        text-align: center;
        display: flex;
        padding: 50px 0px 50px 60px; }
        @media screen and (max-width: 834px) {
          .front-process-content-list ul {
            text-align: left; } }
        @media screen and (max-width: 598px) {
          .front-process-content-list ul {
            padding: 20px 10px 25px 15px; } }
        .front-process-content-list ul li {
          display: inline-block;
          position: relative;
          width: 100%;
          text-align: center; }
          .front-process-content-list ul li::before {
            content: '';
            width: 9px;
            height: 9px;
            border: 0px;
            border-top: solid 2px #454553;
            border-right: solid 2px #454553;
            -ms-transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            position: absolute;
            top: 3%;
            right: 30%; }
            @media screen and (max-width: 598px) {
              .front-process-content-list ul li::before {
                display: none; } }
          .front-process-content-list ul li:last-child::before {
            content: none; }
          .front-process-content-list ul li h3 {
            padding-top: 40px;
            line-height: 2rem;
            font-size: 1.2rem;
            writing-mode: vertical-rl;
            text-orientation: upright; }
            @media screen and (max-width: 834px) {
              .front-process-content-list ul li h3 {
                line-height: 1.6rem;
                font-size: 1.08rem; } }
            @media screen and (max-width: 598px) {
              .front-process-content-list ul li h3 {
                padding-top: 33px; } }
          .front-process-content-list ul li p {
            position: absolute;
            width: 30px;
            height: 30px;
            line-height: 2.5rem;
            font-size: 1rem;
            text-align: center;
            line-height: 31px;
            border-radius: 30px;
            font-weight: bold;
            color: #FFF;
            background: #0d0d38; }
            @media screen and (max-width: 834px) {
              .front-process-content-list ul li p {
                line-height: 1.75rem;
                font-size: 0.8rem; } }
            @media screen and (max-width: 598px) {
              .front-process-content-list ul li p {
                width: 25px;
                height: 25px;
                line-height: 26px;
                border-radius: 25px; } }
    .front-process-content-abso img {
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 350px;
      margin-left: 300px; }
      @media screen and (max-width: 1260px) {
        .front-process-content-abso img {
          margin-left: 0px;
          z-index: -1; } }
      @media screen and (max-width: 834px) {
        .front-process-content-abso img {
          width: 470px;
          margin-left: -110px;
          z-index: -1; } }
      @media screen and (max-width: 1260px) {
        .front-process-content-abso img {
          display: none; } }

/* サービス */
.front-services {
  background: #fff7dd;
  background: #fff7dd;
  background: linear-gradient(0deg, #fff7dd, white);
  background-size: cover;
  position: relative; }
  .front-services .ttlEn {
    font-size: 9rem;
    position: absolute;
    top: -10px;
    left: calc(50% - 370px);
    color: #717189;
    opacity: 0.1; }
    @media screen and (max-width: 598px) {
      .front-services .ttlEn {
        top: 0;
        left: 0;
        position: relative;
        line-height: 5.2rem;
        font-size: 4.8rem;
        text-align: center; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-services .ttlEn {
      line-height: 2.6rem;
      font-size: 2.4rem; } }

  .front-services-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .front-services-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-services-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-services-content h2 {
      margin-top: -35px; }
    .front-services-content p {
      line-height: 2rem;
      font-size: 1rem;
      text-align: center;
      margin-bottom: 20px; }
      @media screen and (max-width: 834px) {
        .front-services-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 834px) {
        .front-services-content p {
          text-align: left; } }
    .front-services-content a img {
      box-shadow: 0 1.9px 2.5px rgba(13, 13, 56, 0.057), 0 5px 6.1px rgba(13, 13, 56, 0.076), 0 10.1px 11.4px rgba(13, 13, 56, 0.086), 0 19.2px 19.8px rgba(13, 13, 56, 0.092); }
    .front-services-content a img:hover {
      opacity: 0.8;
      box-shadow: none; }

/* 新着情報 */
.front-news-content {
  padding-top: 50px;
  padding-bottom: 50px;
  position: relative; }
  @media screen and (max-width: 834px) {
    .front-news-content {
      padding-top: 30px;
      padding-bottom: 30px; } }
  @media screen and (min-width: 1261px) {
    .front-news-content {
      padding-bottom: 40px; } }
  .front-news-content h2 {
    margin-top: -60px; }
    @media screen and (max-width: 598px) {
      .front-news-content h2 {
        margin-top: -40px; } }
  .front-news-content .tab-content {
    margin: 0 auto;
    padding: 0px 20px;
    max-width: 1400px; }
  .front-news-content a p:hover {
    color: #4b4bc6;
    text-decoration: underline; }
  .front-news-content a img:hover {
    opacity: 0.8; }

/* 最短21日 */
.front-21 {
  background: #0d0d38; }
  .front-21-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .front-21-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-21-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-21-content h2 {
      color: #FFF;
      line-height: 3.4rem;
      font-size: 2.6rem; }
      @media screen and (max-width: 834px) {
        .front-21-content h2 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
    .front-21-content .front-ttl {
      padding-bottom: 0px; }
    .front-21-content p.front-ttl-p {
      color: #FFF;
      text-align: center;
      line-height: 2.5rem;
      font-size: 1rem;
      padding-bottom: 30px; }
      @media screen and (max-width: 834px) {
        .front-21-content p.front-ttl-p {
          line-height: 1.75rem;
          font-size: 0.8rem; } }
    .front-21-content h3 {
      padding: 0px 0 20px 0;
      line-height: 3.4rem;
      font-size: 2.6rem;
      color: #4b4bc6; }
      @media screen and (max-width: 834px) {
        .front-21-content h3 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
      @media screen and (max-width: 598px) {
        .front-21-content h3 {
          padding: 5px 0 10px; } }
    .front-21-content p {
      line-height: 2rem;
      font-size: 1rem; }
      @media screen and (max-width: 834px) {
        .front-21-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 598px) {
        .front-21-content p {
          line-height: 2.5rem;
          font-size: 1rem; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-21-content p {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

      .front-21-content p small {
        line-height: 1.3rem;
        font-size: 0.8rem; }
        @media screen and (max-width: 834px) {
          .front-21-content p small {
            line-height: 1.17rem;
            font-size: 0.72rem; } }
    .front-21-content .point {
      color: #FFF;
      line-height: 2rem;
      font-size: 1.2rem;
      font-family: "nimbus-sans", serif;
      margin-bottom: 15px; }
      @media screen and (max-width: 834px) {
        .front-21-content .point {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 598px) {
        .front-21-content .point {
          margin: 10px 0; } }
      .front-21-content .point strong {
        background: #4b4bc6;
        background: #4b4bc6;
        background: linear-gradient(45deg, #4b4bc6, #0d0d38);
        background-size: cover;
        padding: 1px 8px; }
    .front-21-content-left {
      margin: 0 0 30px;
      margin-left: -100px;
      padding: 50px 50px 40px;
      background: #FFF;
      position: relative; }
      @media screen and (max-width: 1260px) {
        .front-21-content-left {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 40px 30px; } }
      @media screen and (max-width: 834px) {
        .front-21-content-left {
          margin: 0px;
          margin-bottom: 20px;
          padding: 30px 20px; } }
      .front-21-content-left .point {
        left: -20px; }
    .front-21-content-right {
      margin: 0 0 30px;
      margin-right: -100px;
      padding: 50px 50px 40px;
      background: #FFF;
      position: relative; }
      @media screen and (max-width: 1260px) {
        .front-21-content-right {
          margin: 0px;
          margin-bottom: 20px;
          padding: 40px 40px 30px; } }
      @media screen and (max-width: 834px) {
        .front-21-content-right {
          margin: 0px;
          margin-bottom: 20px;
          padding: 30px 20px; } }
      .front-21-content-right .point {
        right: -20px; }

/* 訴求ポイント */
.front-appeal {
  position: relative; }
  .front-appeal-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    padding-right: 300px; }
    @media screen and (max-width: 1024px) {
      .front-appeal-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .front-appeal-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .front-appeal-content h2 {
      line-height: 3.4rem;
      font-size: 2.6rem;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 834px) {
        .front-appeal-content h2 {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
      @media screen and (max-width: 598px) {
        .front-appeal-content h2 {
          line-height: 2.4rem;
          font-size: 1.7rem;
          letter-spacing: 0em; } }
  @media screen and (max-width: 598px) and (max-width: 834px) {
    .front-appeal-content h2 {
      line-height: 1.92rem;
      font-size: 1.53rem; } }

    .front-appeal-content p {
      padding-top: 10px;
      line-height: 2rem;
      font-size: 1rem; }
      @media screen and (max-width: 834px) {
        .front-appeal-content p {
          line-height: 1.4rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 598px) {
        .front-appeal-content p {
          max-width: 200px; } }
    .front-appeal-content-bn {
      padding-top: 20px; }
      .front-appeal-content-bn img {
        max-width: 650px; }
        @media screen and (max-width: 598px) {
          .front-appeal-content-bn img {
            width: 100%; } }
    @media screen and (max-width: 1260px) {
      .front-appeal-content .linkbutton {
        padding-right: 400px; } }
    @media screen and (max-width: 598px) {
      .front-appeal-content .linkbutton {
        padding-right: 0px; } }
    .front-appeal-content-abso img {
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 660px;
      margin-left: 30px; }
      @media screen and (max-width: 1260px) {
        .front-appeal-content-abso img {
          margin-left: 0px;
          z-index: -1; } }
      @media screen and (max-width: 834px) {
        .front-appeal-content-abso img {
          width: 470px;
          margin-left: -110px;
          z-index: -1; } }
      @media screen and (max-width: 598px) {
        .front-appeal-content-abso img {
          width: 420px; } }
    .front-appeal-content-backimg img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -5; }

/* Q&A */
.front-qa-content {
  max-width: 1024px;
  margin: 0 auto;
  padding-top: 50px;
  padding-bottom: 50px; }
  @media screen and (max-width: 1024px) {
    .front-qa-content {
      max-width: 100%;
      padding-left: 25px;
      padding-right: 25px; } }
  @media screen and (max-width: 834px) {
    .front-qa-content {
      padding-top: 30px;
      padding-bottom: 30px; } }
  .front-qa-content h2 {
    margin-top: -60px; }

/*-------------------------------------------
header
-------------------------------------------*/
/* お問合せ */
.header-inquiry {
  position: absolute;
  top: 10px;
  right: 0px;
  z-index: 1005; }
  @media screen and (max-width: 1024px) {
    .header-inquiry {
      position: relative;
      top: 0px;
      left: 0px;
      margin: 0 10px 30px 10px; } }
  .header-inquiry img {
    width: 360px; }

header {
  width: 100%;
  top: 0px;
  position: fixed;
  padding: 0;
  z-index: 900;
  background: #000; }
  @media screen and (max-width: 834px) {
    header {
      background: #000; } }

.header-inner {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  background: #0d0d38;
  /* ヘッダーロゴ */
  /* ヘッダーナビ文字 */
  /* 株価算定 */
  /* お問い合わせ */ }
  @media screen and (max-width: 1024px) {
    .header-inner {
      height: 55px;
      width: 100%;
      padding: 10px 5% 8px;
      background-color: rgba(255, 255, 255, 0); } }
  .header-inner a {
    text-decoration: none; }
  .header-inner-logo {
    float: left;
    left: 40px;
    top: 20px;
    position: fixed; }
    @media screen and (max-width: 1024px) {
      .header-inner-logo {
        top: 18px;
        left: 15px; } }
    .header-inner-logo img {
      width: 250px; }
      @media screen and (max-width: 1024px) {
        .header-inner-logo img {
          width: 200px;
          left: 0px;
          top: 0;
          margin-top: -5px; } }
  .header-inner-nav {
    float: right;
    margin-right: 290px;
    margin-top: 10px; }
    @media screen and (max-width: 1024px) {
      .header-inner-nav {
        display: none; } }
    .header-inner-nav #header-nav {
      position: relative;
      list-style: none;
      font-weight: 400;
      font-size: 0;
      display: inline-block;
      padding: 0;
      margin: 15px 0; }
      .header-inner-nav #header-nav a {
        color: #FFF;
        font-weight: 800;
        display: block;
        padding: 5px 15px;
        position: relative;
        text-decoration: none; }
        .header-inner-nav #header-nav a::after {
          position: absolute;
          bottom: -1px;
          left: 0;
          content: '';
          width: 100%;
          height: 4px;
          background: #4b4bc6;
          transform: scale(0, 1);
          transform-origin: left top;
          transition: transform .3s; }
        .header-inner-nav #header-nav a:hover::after {
          transform: scale(1, 1); }
      .header-inner-nav #header-nav li {
        margin: 0;
        display: inline-block;
        line-height: 1.4rem;
        font-size: 0.9rem;
        position: relative;
        cursor: pointer;
        z-index: 1005;
        min-width: 50px;
        text-align: center; }
        @media screen and (max-width: 834px) {
          .header-inner-nav #header-nav li {
            line-height: 1.12rem;
            font-size: 0.81rem; } }
      .header-inner-nav #header-nav li > ul {
        display: none;
        position: absolute; }
      .header-inner-nav #header-nav > li > ul > li > a {
        color: #0d0d38;
        width: 165px;
        background: #FFF;
        padding: 5px 5px 10px 7px;
        text-align: left;
        line-height: 1.4rem;
        font-size: 0.8rem; }
        @media screen and (max-width: 834px) {
          .header-inner-nav #header-nav > li > ul > li > a {
            line-height: 1.12rem;
            font-size: 0.72rem; } }
      .header-inner-nav #header-nav > li > ul > li > a:before {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        margin-right: 4px;
        margin-left: 4px;
        border: transparent solid 5px;
        border-left-color: #4b4bc6;
        vertical-align: 1px; }
      .header-inner-nav #header-nav li:hover a + ul {
        display: block;
        margin-top: 1px; }
  .header-inner #headerLP {
    position: absolute;
    top: 0;
    right: 120px;
    width: 160px;
    line-height: 1.4rem;
    font-size: 0.9rem;
    font-weight: bold;
    height: 80px;
    line-height: 20px;
    padding-top: 21px;
    background: #ff1240;
    color: #FFF;
    text-align: center; }
    @media screen and (max-width: 834px) {
      .header-inner #headerLP {
        line-height: 1.12rem;
        font-size: 0.81rem; } }
    .header-inner #headerLP:hover {
      background: #51191a; }
  .header-inner #headercontact {
    position: absolute;
    top: 0;
    right: 0;
    width: 120px;
    line-height: 1.4rem;
    font-size: 0.9rem;
    font-weight: bold;
    height: 80px;
    line-height: 80px;
    background: #4CE01F;
    color: #FFF;
    text-align: center; }
    @media screen and (max-width: 834px) {
      .header-inner #headercontact {
        line-height: 1.12rem;
        font-size: 0.81rem; } }
    .header-inner #headercontact:hover {
      background: #38941C; }

/*-------------------------------------------
  スクロールに合わせて移動
-------------------------------------------*/
.smaller {
  top: 0px;
  background: #FFF;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
  @media screen and (max-width: 1024px) {
    .smaller {
      background: none; } }
  .smaller .header-inner-logo {
    float: left;
    position: fixed;
    top: 16px; }
    .smaller .header-inner-logo img {
      width: 220px;
      margin-top: 0px;
      margin-left: 0px;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
      @media screen and (max-width: 1024px) {
        .smaller .header-inner-logo img {
          width: 150px;
          left: 15px;
          top: 0;
          margin-top: -5px; } }
  .smaller .header-inner-nav {
    margin-top: 0px; }
    @media screen and (max-width: 1024px) {
      .smaller .header-inner-nav {
        display: none; } }
    .smaller .header-inner-nav #header-nav a {
      color: #0d0d38; }

/*-------------------------------------------
  携帯用ナビゲーション
-------------------------------------------*/
/* サイドメニュー */
.side-menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 60%;
  height: 100%;
  padding-top: 70px;
  padding-bottom: 30px;
  text-align: left;
  font-size: 1rem;
  background: #0d0d38;
  z-index: 1201;
  opacity: 0.9;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .side-menu .phone-menu {
    height: 100%;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch; }
  .side-menu ul {
    padding: 10px 0 15px;
    color: #FFF; }
  .side-menu li {
    margin-bottom: 0;
    padding: 0px 20px;
    position: relative;
    font-size: 1.1rem; }
  .side-menu .phone-menu-entry a {
    display: inline-block;
    width: 100%;
    padding: 2px 20px;
    margin: 5px 0;
    font-size: 1rem;
    background: #e4dff6;
    color: #0d0d38;
    text-decoration: none;
    text-align: center;
    font-weight: bold; }
    .side-menu .phone-menu-entry a:hover {
      background: #fff7dd; }
  .side-menu .phone-menu-g a {
    display: inline-block;
    width: 100%;
    margin-left: 2em;
    font-size: 0.9rem;
    color: #FFF;
    text-decoration: none; }
    .side-menu .phone-menu-g a:hover {
      color: #fff7dd; }
    .side-menu .phone-menu-g a:before {
      font-size: 1rem;
      color: #FFF;
      content: "ー";
      position: absolute;
      top: 1px;
      left: 25px; }

.side-open .side-menu {
  transform: translateX(0); }

/*-------------------------------------------
 開閉用ボタン
-------------------------------------------*/
.side-menu-btn {
  position: fixed;
  top: 11px;
  right: 2px;
  width: 110px;
  height: 35px;
  padding: 5px;
  cursor: pointer;
  z-index: 2004;
  background: url(../images/common/sp-menu.svg) no-repeat; }

.side-open .side-menu-btn {
  position: fixed;
  background: url(../images/common/sp-close.svg) no-repeat;
  width: 110px;
  height: 35px; }

/*-------------------------------------------
　ページ メインビジュアル
-------------------------------------------*/
.pagevisual {
  background: url("https://subaru-inc.co.jp/wp-content/themes/madx/images/pagevisualpagevisual.jpg") no-repeat center center;
  -moz-background-size: cover;
  background-size: cover;
  max-width: 100%;
  height: 0;
  padding-top: 30.972%;
  /* calc未対応用 */
  padding-top: calc(420 / 1440 * 100%);
  /* calc(画像高さ ÷ 画像横幅 × 100%) */ }

/*-------------------------------------------
　ページ設定
-------------------------------------------*/
.page {
  /* 全体設定 */
  /* ノーマルコンテンツ */
  /* 左側メインビジュアル */
  /* 事業内容 */
  /* M&A流れ */ }
  .page .name {
    line-height: 2.4rem;
    font-size: 1.7rem;
    font-style: normal;
    font-family: "ten-mincho-text", serif; }
    @media screen and (max-width: 834px) {
      .page .name {
        line-height: 1.92rem;
        font-size: 1.53rem; } }
  .page .tel {
    line-height: 3.4rem;
    font-size: 2.6rem;
    font-weight: bold; }
    @media screen and (max-width: 834px) {
      .page .tel {
        line-height: 2.38rem;
        font-size: 1.82rem; } }
  .page-contact {
    background: #E6E6EB;
    padding-top: 80px; }
    @media screen and (max-width: 834px) {
      .page-contact {
        padding-top: 50px; } }
    .page-contact-content {
      max-width: 1024px;
      margin: 0 auto; }
      @media screen and (max-width: 1024px) {
        .page-contact-content {
          max-width: 100%;
          padding-left: 25px;
          padding-right: 25px; } }
  .page-content {
    max-width: 1024px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    /* サステナビリティについての取り組み */
    /* Q&A */ }
    @media screen and (max-width: 1024px) {
      .page-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .page-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .page-content-maintxt {
      padding: 10px 20px 20px; }
      @media screen and (max-width: 834px) {
        .page-content-maintxt {
          padding: 10px 0px 20px; } }
    .page-content h2 {
      position: relative;
      margin-top: 50px;
      margin-left: -25px;
      margin-bottom: 10px;
      padding: 0.5em 20px 0.6em 20px;
      line-height: 2rem;
      font-size: 1.2rem;
      letter-spacing: 0.1em;
      color: #FFF;
      background: #745fcb; }
      @media screen and (max-width: 834px) {
        .page-content h2 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 834px) {
        .page-content h2 {
          margin-right: -25px;
          padding: 0.5em 20px 0.6em; } }
      .page-content h2::before {
        position: absolute;
        content: '';
        top: 100%;
        left: 0;
        border: none;
        border-bottom: solid 15px transparent;
        border-right: solid 20px #959e9b; }
    .page-content h3 {
      width: 102%;
      display: inline-block;
      margin-top: 40px;
      margin-bottom: 10px;
      margin-left: -10px;
      padding: 0.5em;
      line-height: 2rem;
      font-size: 1.2rem;
      color: #0d0d38;
      background: #ada1e4;
      border-radius: 25px 0px 0px 25px; }
      @media screen and (max-width: 834px) {
        .page-content h3 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 834px) {
        .page-content h3 {
          width: 106%;
          padding-right: 1em;
          padding-left: 1em; } }
      .page-content h3:before {
        content: '●';
        color: #FFF;
        margin-right: 8px; }
    .page-content p {
      padding-top: 15px;
      padding-bottom: 15px; }
      .page-content p a {
        text-decoration: underline; }
        .page-content p a:hover {
          color: #4b4bc6; }
    .page-content .linkbutton a {
      color: #FFF;
      text-decoration: none; }
      .page-content .linkbutton a:hover {
        color: #FFF; }
    .page-content ol {
      list-style-type: disc;
      padding-left: 20px;
      padding-top: 15px;
      padding-bottom: 15px; }
      .page-content ol li {
        list-style-type: disc;
        line-height: 2.5rem;
        font-size: 1rem; }
        @media screen and (max-width: 834px) {
          .page-content ol li {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
    .page-content .sustainability-philosophy-title {
      line-height: 3.4rem;
      font-size: 2.6rem;
      text-align: center;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      letter-spacing: 0.1em; }
      @media screen and (max-width: 834px) {
        .page-content .sustainability-philosophy-title {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
      @media screen and (max-width: 834px) {
        .page-content .sustainability-philosophy-title {
          text-align: left; } }
    .page-content .sustainability-philosophy-p {
      padding: 0;
      line-height: 2.5rem;
      font-size: 1rem;
      text-align: center;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      padding-bottom: 20px; }
      @media screen and (max-width: 834px) {
        .page-content .sustainability-philosophy-p {
          line-height: 1.75rem;
          font-size: 0.8rem; } }
      @media screen and (max-width: 834px) {
        .page-content .sustainability-philosophy-p {
          text-align: left; } }
    .page-content-qa {
      /* Q&A目次 */ }
      .page-content-qa-contents {
        padding: 10px 0px; }
        .page-content-qa-contents li {
          list-style-type: decimal-leading-zero;
          padding-left: 30px;
          display: inline-block;
          position: relative; }
          @media screen and (max-width: 834px) {
            .page-content-qa-contents li {
              padding-left: 10px; } }
        .page-content-qa-contents a {
          line-height: 2rem;
          font-size: 1.2rem;
          font-weight: bold;
          text-decoration: underline;
          color: #4b4bc6; }
          @media screen and (max-width: 834px) {
            .page-content-qa-contents a {
              line-height: 1.6rem;
              font-size: 1.08rem; } }
          .page-content-qa-contents a:hover {
            text-decoration: none;
            color: #0d0d38; }
  .page-maintxt {
    max-width: 980px;
    padding: 30px; }
    @media screen and (max-width: 834px) {
      .page-maintxt {
        padding: 10px 20px 30px; } }
    .page-maintxt h2 {
      line-height: 2.4rem;
      font-size: 1.7rem;
      margin-bottom: 20px; }
      @media screen and (max-width: 834px) {
        .page-maintxt h2 {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
  .page-ourbusiness ol {
    padding-left: 30px; }
    .page-ourbusiness ol li {
      padding-left: 20px;
      list-style-type: decimal-leading-zero;
      line-height: 2.4rem;
      font-size: 1.7rem;
      font-style: normal;
      font-family: "ten-mincho-text", serif; }
      @media screen and (max-width: 834px) {
        .page-ourbusiness ol li {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 834px) {
        .page-ourbusiness ol li {
          line-height: 2.5rem;
          font-size: 1rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .page-ourbusiness ol li {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

  .page-ourbusiness ul {
    margin-top: 10px; }
    .page-ourbusiness ul li {
      line-height: 2.4rem;
      font-size: 1.7rem;
      font-style: normal;
      font-family: "ten-mincho-text", serif;
      margin-left: -15px; }
      @media screen and (max-width: 834px) {
        .page-ourbusiness ul li {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 834px) {
        .page-ourbusiness ul li {
          line-height: 2.5rem;
          font-size: 1rem;
          margin-left: 10px; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .page-ourbusiness ul li {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

  .page-process {
    margin-bottom: 20px; }
    .page-process h3 {
      position: relative;
      display: block;
      max-width: 100%;
      height: 100%;
      padding: 27px 30px;
      line-height: 2rem;
      font-size: 1.2rem;
      background: #ada1e4; }
      @media screen and (max-width: 834px) {
        .page-process h3 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 834px) {
        .page-process h3 {
          padding-top: 20px 10px 20px 15px;
          margin: 20px 0;
          height: auto;
          font-size: 1.3em; } }
      .page-process h3:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 100%;
        margin-top: -15px;
        border: 15px solid transparent;
        border-left: 15px solid #ada1e4; }
        @media screen and (max-width: 834px) {
          .page-process h3:before {
            content: "";
            position: absolute;
            top: 110%;
            left: 50%;
            margin-left: -15px;
            margin-bottom: 20px;
            border: 15px solid transparent;
            border-top: 15px solid #ada1e4; } }

/*-------------------------------------------
　動画設定
-------------------------------------------*/
.youtube {
  margin: 10px 0;
  width: 100%;
  padding: 0;
  box-sizing: border-box; }
  .youtube-inner {
    padding-top: 56.25%;
    position: relative;
    height: 0;
    overflow: hidden; }
    .youtube-inner iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

/*-------------------------------------------
　サイドバー
-------------------------------------------*/
.sidebar {
  /* カテゴリ一覧アコーディオン */ }
  .sidebar h3 {
    position: relative;
    margin-top: 30;
    margin-left: -20px;
    margin-bottom: 0;
    padding: 0.5em 20px 0.6em 20px;
    line-height: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    color: #FFF;
    background: #745fcb;
    line-height: 2rem;
    font-size: 1.2rem; }
    @media screen and (max-width: 834px) {
      .sidebar h3 {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .sidebar h3 {
        margin-right: -25px;
        padding: 0.5em 20px 0.6em; } }
    .sidebar h3::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
    @media screen and (max-width: 834px) {
      .sidebar h3 {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    .sidebar h3 a {
      display: block;
      color: #FFF;
      width: 100%; }
      .sidebar h3 a:after {
        content: "";
        top: 50%;
        right: 15px;
        display: block;
        position: absolute;
        margin: -4px 0 0 0;
        width: 6px;
        height: 6px;
        border-top: solid 2px #4b4bc6;
        border-right: solid 2px #4b4bc6;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      .sidebar h3 a:hover {
        text-decoration: none; }
    .sidebar h3::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
    .sidebar h3:hover {
      background: #0d0d38; }
  .sidebar ul.sidebar {
    color: #B6B6C3; }
    .sidebar ul.sidebar li {
      position: relative;
      width: 100%;
      padding: 15px 35px 15px 18px;
      line-height: 1.4rem;
      font-size: 0.9rem;
      font-weight: bold;
      border-bottom: solid 1px #4b4bc6;
      background: #FFF; }
      @media screen and (max-width: 834px) {
        .sidebar ul.sidebar li {
          line-height: 0.98rem;
          font-size: 0.72rem; } }
      @media screen and (max-width: 834px) {
        .sidebar ul.sidebar li {
          line-height: 2.5rem;
          font-size: 1rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .sidebar ul.sidebar li {
      line-height: 1.75rem;
      font-size: 0.8rem; } }

      .sidebar ul.sidebar li a {
        display: block;
        color: #0d0d38;
        width: 100%; }
        .sidebar ul.sidebar li a:after {
          content: "";
          top: 50%;
          right: 15px;
          display: block;
          position: absolute;
          margin: -4px 0 0 0;
          width: 6px;
          height: 6px;
          border-top: solid 2px #4b4bc6;
          border-right: solid 2px #4b4bc6;
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
        .sidebar ul.sidebar li a:hover {
          text-decoration: none; }
      .sidebar ul.sidebar li:hover {
        background: #e4dff6; }
  .sidebar details {
    transition: .5s;
    margin-bottom: 20px; }
  .sidebar summary {
    transition: .2s;
    position: relative;
    margin-top: 30;
    margin-left: -20px;
    margin-bottom: 10px;
    padding: 0.5em 20px 0.6em 20px;
    line-height: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    color: #FFF;
    background: #745fcb;
    font-style: normal;
    font-family: "ten-mincho-text", serif;
    line-height: 2rem;
    font-size: 1.2rem;
    padding-left: -20px; }
    @media screen and (max-width: 834px) {
      .sidebar summary {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .sidebar summary {
        margin-right: -25px;
        padding: 0.5em 20px 0.6em; } }
    .sidebar summary::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
    @media screen and (max-width: 834px) {
      .sidebar summary {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    .sidebar summary:hover {
      background: #a99fc6; }
    .sidebar summary::-webkit-details-marker {
      background: none;
      color: transparent; }
    .sidebar summary a {
      color: #FFF;
      display: block;
      width: 100%; }
    .sidebar summary::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
    .sidebar summary:after {
      display: block;
      content: "";
      position: absolute;
      top: 46%;
      right: 23px;
      width: 8px;
      height: 8px;
      margin: -4px 0 0 0;
      border-top: solid 2px #4b4bc6;
      border-right: solid 2px #4b4bc6;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg); }

/*-------------------------------------------
　シングルページ　マガジン
-------------------------------------------*/
.magazine {
  /* フッターコンテンツ */ }
  .magazine-content-footer {
    max-width: 1024px;
    margin: 0 auto;
    margin-top: -60px;
    margin-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .magazine-content-footer {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
  @media screen and (max-width: 834px) {
    .magazine iframe {
      width: 100%; } }
  .magazine-content {
    max-width: 1080px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    /* マガジン全体設定 */
    /* 監修 */
    /* 概要 */
    /* 目次 */
    /* 記事ポイント */
    /* メインコンテンツ */
    /* 監修者吹き出し */ }
    @media screen and (max-width: 1024px) {
      .magazine-content {
        max-width: 100%;
        padding-left: 25px;
        padding-right: 25px; } }
    @media screen and (max-width: 834px) {
      .magazine-content {
        padding-top: 30px;
        padding-bottom: 30px; } }
    .magazine-content h1 {
      padding-top: 10px;
      padding-bottom: 20px;
      line-height: 2.4rem;
      font-size: 1.7rem; }
      @media screen and (max-width: 834px) {
        .magazine-content h1 {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
    .magazine-content p {
      padding-top: 15px;
      padding-bottom: 15px; }
      .magazine-content p a {
        text-decoration: underline; }
        .magazine-content p a:hover {
          color: #4b4bc6; }
    .magazine-content-supervised .supervised {
      position: relative;
      background: #B6B6C3; }
      .magazine-content-supervised .supervised::before {
        content: "";
        top: 0;
        left: 0;
        position: absolute;
        border-bottom: 4em solid transparent;
        border-left: 4em solid #4b4bc6;
        z-index: 100; }
      .magazine-content-supervised .supervised::after {
        content: "監修";
        display: block;
        top: 9px;
        left: 6px;
        position: absolute;
        color: #FFF;
        transform: rotate(-45deg);
        z-index: 101; }
      .magazine-content-supervised .supervised h3 {
        padding: 15px 30px 0 0;
        line-height: 2rem;
        font-size: 1.2rem; }
        @media screen and (max-width: 834px) {
          .magazine-content-supervised .supervised h3 {
            line-height: 1.6rem;
            font-size: 1.08rem; } }
        @media screen and (max-width: 834px) {
          .magazine-content-supervised .supervised h3 {
            padding: 10px 30px 0 50px; } }
      .magazine-content-supervised .supervised p {
        padding: 0px 30px 15px 0;
        line-height: 1.1rem;
        font-size: 0.7rem; }
        @media screen and (max-width: 834px) {
          .magazine-content-supervised .supervised p {
            line-height: 0.99rem;
            font-size: 0.63rem; } }
        @media screen and (max-width: 834px) {
          .magazine-content-supervised .supervised p {
            padding: 0 20px 15px;
            line-height: 1.2rem;
            font-size: 0.7rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .magazine-content-supervised .supervised p {
      line-height: 1.08rem;
      font-size: 0.63rem; } }

    .magazine-content-summery p {
      padding: 10px 0px; }
    .magazine-content-toc {
      margin-top: 10px;
      padding: 20px 30px 15px;
      border: 1px #ccc dotted;
      background: #e4dff6; }
      @media screen and (max-width: 834px) {
        .magazine-content-toc {
          padding: 10px 20px; } }
      .magazine-content-toc h3 {
        line-height: 2.5rem;
        font-size: 1rem; }
        @media screen and (max-width: 834px) {
          .magazine-content-toc h3 {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
      .magazine-content-toc ol {
        list-style-type: decimal-leading-zero;
        padding-left: 25px; }
        .magazine-content-toc ol li {
          list-style-type: decimal-leading-zero; }
      .magazine-content-toc a {
        color: #4b4bc6;
        line-height: 1.3rem;
        font-size: 0.8rem;
        text-decoration: underline; }
        @media screen and (max-width: 834px) {
          .magazine-content-toc a {
            line-height: 1.17rem;
            font-size: 0.72rem; } }
        .magazine-content-toc a:hover {
          text-decoration: none; }
    .magazine-content-overview {
      margin: 20px 0; }
      .magazine-content-overview h2 {
        margin: 0;
        padding: 10px 20px;
        line-height: 2rem;
        font-size: 1.2rem;
        font-weight: bold;
        color: #FFF;
        background: #4b4bc6; }
        @media screen and (max-width: 834px) {
          .magazine-content-overview h2 {
            line-height: 1.6rem;
            font-size: 1.08rem; } }
      .magazine-content-overview ol {
        padding: 8px 20px 20px 50px;
        list-style-type: decimal-leading-zero;
        border: 2px #4b4bc6 solid;
        line-height: 2.5rem;
        font-size: 1rem; }
        @media screen and (max-width: 834px) {
          .magazine-content-overview ol {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
        @media screen and (max-width: 834px) {
          .magazine-content-overview ol {
            padding: 8px 20px 20px 35px; } }
      .magazine-content-overview li {
        padding-top: 8px;
        text-align: left;
        text-align: justify;
        text-justify: inter-ideograph;
        list-style-type: decimal; }
    .magazine-content-main {
      /* 囲みボーダー */
      /* M&A誘導文内ボーダー */ }
      .magazine-content-main a.anchor {
        /* 目次から飛ぶ */
        display: block;
        padding-top: 70px;
        margin-top: -70px; }
      .magazine-content-main h2 {
        position: relative;
        margin-top: 50px;
        margin-left: -25px;
        margin-bottom: 10px;
        padding: 0.5em 20px 0.6em 20px;
        line-height: 2rem;
        font-size: 1.2rem;
        letter-spacing: 0.1em;
        color: #FFF;
        background: #745fcb; }
        @media screen and (max-width: 834px) {
          .magazine-content-main h2 {
            line-height: 1.6rem;
            font-size: 1.08rem; } }
        @media screen and (max-width: 834px) {
          .magazine-content-main h2 {
            margin-right: -25px;
            padding: 0.5em 20px 0.6em; } }
        .magazine-content-main h2::before {
          position: absolute;
          content: '';
          top: 100%;
          left: 0;
          border: none;
          border-bottom: solid 15px transparent;
          border-right: solid 20px #959e9b; }
      .magazine-content-main h3 {
        width: 102%;
        display: inline-block;
        margin-top: 40px;
        margin-bottom: 10px;
        margin-left: -10px;
        padding: 0.5em;
        line-height: 2rem;
        font-size: 1.2rem;
        color: #0d0d38;
        background: #ada1e4;
        border-radius: 25px 0px 0px 25px; }
        @media screen and (max-width: 834px) {
          .magazine-content-main h3 {
            line-height: 1.6rem;
            font-size: 1.08rem; } }
        @media screen and (max-width: 834px) {
          .magazine-content-main h3 {
            width: 106%;
            padding-right: 1em;
            padding-left: 1em; } }
        .magazine-content-main h3:before {
          content: '●';
          color: #FFF;
          margin-right: 8px; }
      .magazine-content-main h4 {
        margin: 10px 0;
        padding: 0.5em 0.8em;
        line-height: 1.6rem;
        font-size: 1.1rem;
        color: #0d0d38;
        border-left: solid 5px #745fcb;
        background: #e4dff6; }
        @media screen and (max-width: 834px) {
          .magazine-content-main h4 {
            line-height: 1.28rem;
            font-size: 0.99rem; } }
      .magazine-content-main .magazineP_border_info {
        border: 2px solid #17a2b8;
        padding: 20px 35px;
        font-weight: 600; }
      .magazine-content-main .magazine-content-contact-check-border {
        border: 1px solid #B6B6C3;
        padding: 20px 35px; }
        .magazine-content-main .magazine-content-contact-check-border p {
          padding: 10px 5px;
          border-bottom: 1px solid #B6B6C3; }
          .magazine-content-main .magazine-content-contact-check-border p:last-child {
            border-bottom: none; }
      .magazine-content-main .magazineborder {
        border-bottom: 3px double #4b4bc6; }
    .magazine-content .comment {
      position: relative;
      display: inline-block;
      margin: 0 0 0 120px;
      padding: 15px 20px 18px 20px;
      max-width: 90%;
      max-height: 100%;
      font-size: 1em;
      line-height: 1.7em;
      background: #e0edff;
      text-align: left;
      text-align: justify;
      text-justify: inter-ideograph;
      border-radius: 10px 10px 10px 10px; }
      @media screen and (max-width: 834px) {
        .magazine-content .comment {
          margin: 0em 0 0em 75px;
          padding: 10px 15px;
          font-size: 0.9em; } }
      .magazine-content .comment:before {
        content: "";
        position: absolute;
        top: 50%;
        left: -30px;
        margin-top: -15px;
        border: 15px solid transparent;
        border-right: 15px solid #e0edff; }
      .magazine-content .comment:after {
        content: '';
        position: absolute;
        display: inline-block;
        width: 80px;
        height: 80px;
        background-size: contain;
        top: calc(50% - 40px);
        left: -100px; }
        @media screen and (max-width: 834px) {
          .magazine-content .comment:after {
            top: calc(50% - 28px);
            width: 50px;
            height: 50px;
            left: -70px; } }

/*-------------------------------------------
　シングルページ基本設定
-------------------------------------------*/
.single-content {
  max-width: 1024px;
  margin: 0 auto;
  padding-top: 50px;
  padding-bottom: 50px;
  /* 規定のサイズにしたいとき */
  /* シングル全体設定 */
  /* コンタクト */
  /* メンバー */
  /* M&A DX実績 */
  /* 用語集コンテンツ */ }
  @media screen and (max-width: 1024px) {
    .single-content {
      max-width: 100%;
      padding-left: 25px;
      padding-right: 25px; } }
  @media screen and (max-width: 834px) {
    .single-content {
      padding-top: 30px;
      padding-bottom: 30px; } }
  .single-content .imgauto img {
    width: auto; }
  .single-content-maintitle {
    position: relative;
    margin-top: 0px;
    margin-left: -25px;
    margin-bottom: 10px;
    padding: 0.5em 20px 0.6em 20px;
    line-height: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    color: #FFF;
    background: #745fcb; }
    @media screen and (max-width: 834px) {
      .single-content-maintitle {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .single-content-maintitle {
        margin-right: -25px;
        padding: 0.5em 20px 0.6em; } }
    .single-content-maintitle::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
  .single-content p {
    padding-top: 15px;
    padding-bottom: 15px; }
    .single-content p a {
      text-decoration: underline; }
      .single-content p a:hover {
        color: #4b4bc6;
        text-decoration: none; }
    @media screen and (max-width: 834px) {
      .single-content p iframe {
        width: 100%; } }
  .single-content-contact h2 {
    line-height: 2.4rem;
    font-size: 1.7rem;
    text-align: center;
    letter-spacing: 0.1em;
    color: #0d0d38; }
    @media screen and (max-width: 834px) {
      .single-content-contact h2 {
        line-height: 1.92rem;
        font-size: 1.53rem; } }
  .single-content-contact-choice {
    margin-top: 30px;
    border-top: 4px solid #4b4bc6;
    border-bottom: 4px solid #4b4bc6;
    border-left: 1px solid #B6B6C3;
    border-right: 1px solid #B6B6C3;
    padding: 25px 20px 27px; }
    .single-content-contact-choice h3 {
      line-height: 2.4rem;
      font-size: 1.7rem;
      text-align: center;
      color: #4b4bc6;
      padding-bottom: 10px;
      border-bottom: 1px solid #4b4bc6; }
      @media screen and (max-width: 834px) {
        .single-content-contact-choice h3 {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
    .single-content-contact-choice p {
      line-height: 1.3rem;
      font-size: 0.8rem;
      text-align: center; }
      @media screen and (max-width: 834px) {
        .single-content-contact-choice p {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
    .single-content-contact-choice .linkbutton a {
      padding: 10px 0; }
  .single-content-contact-choice-black {
    margin-top: 30px;
    border-top: 4px solid #717189;
    border-bottom: 4px solid #717189;
    border-left: 1px solid #B6B6C3;
    border-right: 1px solid #B6B6C3;
    padding: 25px 20px 27px; }
    .single-content-contact-choice-black h3 {
      line-height: 2.4rem;
      font-size: 1.7rem;
      text-align: center;
      color: #0d0d38; }
      @media screen and (max-width: 834px) {
        .single-content-contact-choice-black h3 {
          line-height: 1.92rem;
          font-size: 1.53rem; } }
      @media screen and (max-width: 834px) {
        .single-content-contact-choice-black h3 {
          padding-bottom: 15px; } }
    .single-content-contact-choice-black p {
      line-height: 1.3rem;
      font-size: 0.8rem;
      text-align: center; }
      @media screen and (max-width: 834px) {
        .single-content-contact-choice-black p {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
    .single-content-contact-choice-black .linkbutton a {
      padding: 5px 0; }
  @media screen and (max-width: 834px) {
    .single-content-members {
      padding-top: 15px; } }
  .single-content-members .qualifications {
    margin-bottom: 10px;
    padding: 0px 10px;
    background: #0d0d38;
    display: inline-block;
    line-height: 2rem;
    font-size: 1.2rem;
    font-style: normal;
    font-family: "ten-mincho-text", serif;
    color: #FFF; }
    @media screen and (max-width: 834px) {
      .single-content-members .qualifications {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
  .single-content-members h1 {
    margin: 10px 0 20px;
    line-height: 4.2rem;
    font-size: 3.5rem;
    letter-spacing: 0.1em;
    color: #0d0d38; }
    @media screen and (max-width: 834px) {
      .single-content-members h1 {
        line-height: 2.52rem;
        font-size: 2.1rem; } }
  .single-content-members .position {
    padding: 0;
    line-height: 2rem;
    font-size: 1.2rem;
    font-style: normal;
    font-family: "ten-mincho-text", serif; }
    @media screen and (max-width: 834px) {
      .single-content-members .position {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
  .single-content-members p {
    padding: 10px 0; }
  .single-content-memberarticles {
    margin-top: 50px; }
    .single-content-memberarticles h2 {
      position: relative;
      margin-top: 30;
      margin-left: -20px;
      margin-bottom: 0;
      padding: 0.5em 20px 0.6em 20px;
      line-height: 2rem;
      font-size: 1.2rem;
      letter-spacing: 0.1em;
      color: #FFF;
      background: #745fcb;
      line-height: 2rem;
      font-size: 1.2rem; }
      @media screen and (max-width: 834px) {
        .single-content-memberarticles h2 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
      @media screen and (max-width: 834px) {
        .single-content-memberarticles h2 {
          margin-right: -25px;
          padding: 0.5em 20px 0.6em; } }
      .single-content-memberarticles h2::before {
        position: absolute;
        content: '';
        top: 100%;
        left: 0;
        border: none;
        border-bottom: solid 15px transparent;
        border-right: solid 20px #959e9b; }
      @media screen and (max-width: 834px) {
        .single-content-memberarticles h2 {
          line-height: 1.6rem;
          font-size: 1.08rem; } }
    .single-content-memberarticles ul.memberarticles {
      color: #B6B6C3; }
      .single-content-memberarticles ul.memberarticles a:hover {
        text-decoration: none; }
      .single-content-memberarticles ul.memberarticles li {
        position: relative;
        width: 100%;
        padding: 15px 35px 15px 18px;
        line-height: 1.4rem;
        font-size: 1rem;
        font-weight: bold;
        border-bottom: solid 1px #4b4bc6;
        background: #FFF;
        display: block;
        color: #0d0d38;
        width: 100%; }
        @media screen and (max-width: 834px) {
          .single-content-memberarticles ul.memberarticles li {
            line-height: 0.98rem;
            font-size: 0.8rem; } }
        .single-content-memberarticles ul.memberarticles li:after {
          content: "";
          top: 50%;
          right: 15px;
          display: block;
          position: absolute;
          margin: -4px 0 0 0;
          width: 6px;
          height: 6px;
          border-top: solid 2px #4b4bc6;
          border-right: solid 2px #4b4bc6;
          -webkit-transform: rotate(45deg);
          transform: rotate(45deg); }
        .single-content-memberarticles ul.memberarticles li:hover {
          background: #e4dff6;
          text-decoration: none; }
  .single-content-performances-company {
    margin: 25px 0; }
    .single-content-performances-company table {
      width: 100%;
      border-collapse: collapse; }
      .single-content-performances-company table th {
        position: relative;
        width: 20%;
        background-color: #4b4bc6;
        color: #FFF;
        text-align: center;
        padding: 10px 0;
        line-height: 2.5rem;
        font-size: 1rem;
        font-weight: none;
        vertical-align: middle; }
        @media screen and (max-width: 834px) {
          .single-content-performances-company table th {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
        @media screen and (max-width: 834px) {
          .single-content-performances-company table th {
            width: 25%; } }
        .single-content-performances-company table th:after {
          display: block;
          content: "";
          width: 0px;
          height: 0px;
          position: absolute;
          top: calc(50% - 10px);
          right: -10px;
          border-left: 10px solid #4b4bc6;
          border-top: 10px solid transparent;
          border-bottom: 10px solid transparent; }
      .single-content-performances-company table td {
        text-align: left;
        background-color: #E6E6EB;
        padding: 10px 30px;
        line-height: 2.5rem;
        font-size: 1rem;
        vertical-align: middle; }
        @media screen and (max-width: 834px) {
          .single-content-performances-company table td {
            line-height: 1.75rem;
            font-size: 0.8rem; } }
        @media screen and (max-width: 834px) {
          .single-content-performances-company table td {
            padding: 10px 10px 10px 15px;
            line-height: 1.3rem;
            font-size: 1rem; } }
  @media screen and (max-width: 834px) and (max-width: 834px) {
    .single-content-performances-company table td {
      line-height: 0.91rem;
      font-size: 0.8rem; } }

    .single-content-performances-company .x {
      line-height: 3.4rem;
      font-size: 2.6rem;
      text-align: center; }
      @media screen and (max-width: 834px) {
        .single-content-performances-company .x {
          line-height: 2.38rem;
          font-size: 1.82rem; } }
  .single-content-performances .Introduction {
    border: solid 1px #4b4bc6;
    padding: 16px 20px 3px; }
    .single-content-performances .Introduction h3 {
      margin: 10px 0;
      padding: 0.5em 0.8em;
      line-height: 1.6rem;
      font-size: 1.1rem;
      color: #0d0d38;
      border-left: solid 5px #745fcb;
      background: #e4dff6;
      font-size: 1em;
      line-height: 1.2em;
      margin: 0; }
      @media screen and (max-width: 834px) {
        .single-content-performances .Introduction h3 {
          line-height: 1.28rem;
          font-size: 0.99rem; } }
    .single-content-performances .Introduction p {
      line-height: 1.3rem;
      font-size: 0.8rem; }
      @media screen and (max-width: 834px) {
        .single-content-performances .Introduction p {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
  .single-content-performances h2 {
    position: relative;
    margin-top: 50px;
    margin-left: -25px;
    margin-bottom: 10px;
    padding: 0.5em 20px 0.6em 20px;
    line-height: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    color: #FFF;
    background: #745fcb;
    margin-top: 30px; }
    @media screen and (max-width: 834px) {
      .single-content-performances h2 {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .single-content-performances h2 {
        margin-right: -25px;
        padding: 0.5em 20px 0.6em; } }
    .single-content-performances h2::before {
      position: absolute;
      content: '';
      top: 100%;
      left: 0;
      border: none;
      border-bottom: solid 15px transparent;
      border-right: solid 20px #959e9b; }
  .single-content-performances-01 h3 {
    width: 102%;
    display: inline-block;
    margin-top: 40px;
    margin-bottom: 10px;
    margin-left: -10px;
    padding: 0.5em;
    line-height: 2rem;
    font-size: 1.2rem;
    color: #0d0d38;
    background: #ada1e4;
    border-radius: 25px 0px 0px 25px; }
    @media screen and (max-width: 834px) {
      .single-content-performances-01 h3 {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .single-content-performances-01 h3 {
        width: 106%;
        padding-right: 1em;
        padding-left: 1em; } }
    .single-content-performances-01 h3:before {
      content: '●';
      color: #FFF;
      margin-right: 8px; }
  .single-content-performances-01 h4 {
    margin: 10px 0;
    padding: 0.5em 0.8em;
    line-height: 1.6rem;
    font-size: 1.1rem;
    color: #0d0d38;
    border-left: solid 5px #745fcb;
    background: #e4dff6; }
    @media screen and (max-width: 834px) {
      .single-content-performances-01 h4 {
        line-height: 1.28rem;
        font-size: 0.99rem; } }
  .single-content-performances-02 h3 {
    margin: 20px 0px 10px;
    line-height: 1.3rem;
    font-size: 1rem;
    color: #4b4bc6;
    position: relative;
    display: inline-block;
    padding: 0 0 0 55px; }
    @media screen and (max-width: 834px) {
      .single-content-performances-02 h3 {
        line-height: 0.91rem;
        font-size: 0.8rem; } }
    @media screen and (max-width: 834px) {
      .single-content-performances-02 h3 {
        padding: 0 0 0 25px; } }
    .single-content-performances-02 h3:before {
      content: '';
      position: absolute;
      top: 50%;
      display: inline-block;
      width: 45px;
      height: 2px;
      border-top: solid 1px #4b4bc6;
      border-bottom: solid 1px #4b4bc6;
      left: 0; }
      @media screen and (max-width: 834px) {
        .single-content-performances-02 h3:before {
          width: 20px; } }
  .single-content-performances-02 strong {
    line-height: 1.2rem;
    font-size: 1rem;
    color: #4b4bc6;
    background: none; }
    @media screen and (max-width: 834px) {
      .single-content-performances-02 strong {
        line-height: 0.84rem;
        font-size: 0.8rem; } }
  .single-content-glossary h2 {
    width: 102%;
    display: inline-block;
    margin-top: 40px;
    margin-bottom: 10px;
    margin-left: -10px;
    padding: 0.5em;
    line-height: 2rem;
    font-size: 1.2rem;
    color: #0d0d38;
    background: #ada1e4;
    border-radius: 25px 0px 0px 25px;
    margin-top: 20px; }
    @media screen and (max-width: 834px) {
      .single-content-glossary h2 {
        line-height: 1.6rem;
        font-size: 1.08rem; } }
    @media screen and (max-width: 834px) {
      .single-content-glossary h2 {
        width: 106%;
        padding-right: 1em;
        padding-left: 1em; } }
    .single-content-glossary h2:before {
      content: '●';
      color: #FFF;
      margin-right: 8px; }
  .single-content-glossary img {
    margin: 20px 0 0; }

/* シングルページ */
.singleP h3 {
  width: 102%;
  display: inline-block;
  margin-top: 40px;
  margin-bottom: 10px;
  margin-left: -10px;
  padding: 0.5em;
  line-height: 2rem;
  font-size: 1.2rem;
  color: #0d0d38;
  background: #ada1e4;
  border-radius: 25px 0px 0px 25px; }
  @media screen and (max-width: 834px) {
    .singleP h3 {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  @media screen and (max-width: 834px) {
    .singleP h3 {
      width: 106%;
      padding-right: 1em;
      padding-left: 1em; } }
  .singleP h3:before {
    content: '●';
    color: #FFF;
    margin-right: 8px; }
.singleP h4 {
  margin: 10px 0;
  padding: 0.5em 0.8em;
  line-height: 1.6rem;
  font-size: 1.1rem;
  color: #0d0d38;
  border-left: solid 5px #745fcb;
  background: #e4dff6; }
  @media screen and (max-width: 834px) {
    .singleP h4 {
      line-height: 1.28rem;
      font-size: 0.99rem; } }
.singleP img {
  width: auto;
  max-width: 100%; }

/* カテゴリ名 */
.singleP-cat {
  line-height: 2.5rem;
  font-size: 1rem;
  font-weight: bold;
  color: #FFF; }
  @media screen and (max-width: 834px) {
    .singleP-cat {
      line-height: 1.75rem;
      font-size: 0.8rem; } }
  .singleP-cat a {
    padding: 4px 11px;
    background: #4b4bc6;
    color: #FFF; }
    .singleP-cat a:hover {
      color: #B6B6C3;
      text-decoration: none; }

/* 関連記事 */
.related_posts li {
  border-bottom: 1px dotted #B6B6C3;
  position: relative; }
  .related_posts li a {
    color: #0d0d38;
    padding: 10px 30px 10px 50px;
    display: block;
    width: 100%; }
    @media screen and (max-width: 834px) {
      .related_posts li a {
        padding: 10px 10px 10px 30px; } }
    .related_posts li a:after {
      display: block;
      content: "";
      position: absolute;
      top: 50%;
      left: 30px;
      width: 6px;
      height: 6px;
      margin: -4px 0 0 0;
      border-top: solid 2px #4b4bc6;
      border-right: solid 2px #4b4bc6;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
      @media screen and (max-width: 834px) {
        .related_posts li a:after {
          left: 10px; } }
    .related_posts li a:hover {
      opacity: 0.8; }
.related_posts h3 {
  position: relative;
  margin-top: 50px;
  margin-left: -25px;
  margin-bottom: 10px;
  padding: 0.5em 20px 0.6em 20px;
  line-height: 2rem;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  color: #FFF;
  background: #745fcb;
  line-height: 2rem;
  font-size: 1.2rem; }
  @media screen and (max-width: 834px) {
    .related_posts h3 {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  @media screen and (max-width: 834px) {
    .related_posts h3 {
      margin-right: -25px;
      padding: 0.5em 20px 0.6em; } }
  .related_posts h3::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #959e9b; }
  @media screen and (max-width: 834px) {
    .related_posts h3 {
      line-height: 1.6rem;
      font-size: 1.08rem; } }

/* 関連記事　用語集 */
ul.glossaryarticles li {
  border-bottom: 1px dotted #B6B6C3;
  position: relative;
  color: #0d0d38;
  padding: 10px 30px 10px 50px;
  display: block;
  width: 100%; }
  @media screen and (max-width: 834px) {
    ul.glossaryarticles li {
      padding: 10px 10px 10px 30px; } }
  ul.glossaryarticles li:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 30px;
    width: 6px;
    height: 6px;
    margin: -4px 0 0 0;
    border-top: solid 2px #4b4bc6;
    border-right: solid 2px #4b4bc6;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
    @media screen and (max-width: 834px) {
      ul.glossaryarticles li:after {
        left: 10px; } }
  ul.glossaryarticles li:hover {
    opacity: 0.8; }

/* ピックアップ */
.pickup h2 {
  position: relative;
  margin-top: 30px;
  margin-left: -25px;
  margin-bottom: 10px;
  padding: 0.5em 20px 0.6em 20px;
  line-height: 2rem;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  color: #FFF;
  background: #745fcb;
  line-height: 2rem;
  font-size: 1.2rem; }
  @media screen and (max-width: 834px) {
    .pickup h2 {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
  @media screen and (max-width: 834px) {
    .pickup h2 {
      margin-right: -25px;
      padding: 0.5em 20px 0.6em; } }
  .pickup h2::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #959e9b; }
  @media screen and (max-width: 834px) {
    .pickup h2 {
      line-height: 1.6rem;
      font-size: 1.08rem; } }
.pickup-banner {
  position: relative; }
  .pickup-banner:hover {
    opacity: 0.8; }
  @media screen and (max-width: 834px) {
    .pickup-banner {
      margin: 10px 0; } }
  .pickup-banner-txt {
    position: absolute;
    margin-top: -5px;
    padding: 8px 20px 15px;
    width: 170px;
    height: 100%;
    background: #0d0d38;
    color: #FFF; }
    .pickup-banner-txt h3 {
      line-height: 2.5rem;
      font-size: 1rem;
      border-bottom: solid 1px #FFF; }
      @media screen and (max-width: 834px) {
        .pickup-banner-txt h3 {
          line-height: 1.75rem;
          font-size: 0.8rem; } }
    .pickup-banner-txt p {
      line-height: 1.3rem;
      font-size: 0.8rem;
      margin: 10px 0 0; }
      @media screen and (max-width: 834px) {
        .pickup-banner-txt p {
          line-height: 1.17rem;
          font-size: 0.72rem; } }
  .pickup-banner-img {
    width: 100%;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
