@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

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

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

body {
  background-color: #fff;
  font-family: sans-serif; }
  body header > div > div p, body footer > div > div p {
    font-size: 12px;
    font-family: serif; }
  body header a, body footer a {
    text-decoration: none;
    color: #333; }

header img, main img, footer img,
header svg, main svg, footer svg {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

header {
  -webkit-box-shadow: #eee 0 2px 3px;
          box-shadow: #eee 0 2px 3px; }
  header > div > div p {
    font-size: 10px; }
    header > div > div p a {
      -webkit-transition: .5s;
      transition: .5s; }
      header > div > div p a:hover {
        opacity: .5;
        -webkit-transition: .5s;
        transition: .5s; }
  header > div nav.h_nav ul.catIco li a {
    padding-bottom: 20px;
    position: relative;
    -webkit-transition: .5s;
    transition: .5s; }
    header > div nav.h_nav ul.catIco li a:hover {
      text-decoration: none;
      opacity: .5;
      -webkit-transition: .5s;
      transition: .5s; }
    header > div nav.h_nav ul.catIco li a:before {
      position: absolute;
      top: auto;
      left: 50%;
      bottom: 0; }
  header .subMenu li {
    padding-left: 2em;
    font-size: 13px; }
    header .subMenu li.ico:before {
      margin-right: 5px;
      content: '';
      display: inline-block;
      width: 14px;
      height: 14px;
      background-repeat: no-repeat;
      background-size: contain;
      background-image: url(/ccl/common/images/ico_lock.svg); }
    header .subMenu li.ico.search:before {
      background-image: url(/ccl/common/images/ico_search.svg); }
    header .subMenu li a {
      -webkit-transition: .5s;
      transition: .5s; }
      header .subMenu li a:hover {
        opacity: .5;
        -webkit-transition: .5s;
        transition: .5s; }

footer .ccl_member {
  padding: 50px 0;
  background-color: #2665b4;
  text-align: center;
  position: relative;
  color: #fff; }
  footer .ccl_member div {
    position: relative;
    z-index: 10; }
  footer .ccl_member svg {
    margin-left: -25%;
    height: 80%;
    width: auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 1; }
  footer .ccl_member h3 {
    margin: 0 auto 20px;
    width: 140px; }
  footer .ccl_member p {
    margin-bottom: 20px;
    font-weight: bold; }
  footer .ccl_member ul {
    margin: 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    footer .ccl_member ul li {
      margin: 0 2.5%;
      width: 25%;
      font-size: 14px; }
      footer .ccl_member ul li p {
        margin-bottom: 10px;
        font-weight: normal; }

footer .f_mailmaga {
  display: table; }
  footer .f_mailmaga > div {
    width: 50%;
    text-align: center;
    display: table-cell; }
    footer .f_mailmaga > div:first-child {
      color: #fff;
      background-image: url(/ccl/common/images/bg_mm.jpg);
      background-size: cover;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      vertical-align: middle; }
      footer .f_mailmaga > div:first-child h3 {
        font-size: 36px;
        margin-bottom: 10px; }
      footer .f_mailmaga > div:first-child p {
        font-size: 16px; }
    footer .f_mailmaga > div:last-child {
      padding: 45px;
      background-color: #ebeff2;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      footer .f_mailmaga > div:last-child p {
        margin-bottom: 2.5em;
        text-align: left;
        line-height: 1.5; }
      footer .f_mailmaga > div:last-child a.btn_base {
        max-width: 300px; }

footer .f_nav {
  margin-bottom: 40px;
  padding: 45px 0 0;
  border-top: 1px solid #E0E0E0;
  border-bottom: 1px solid #E0E0E0; }

footer .f_copy p {
  font-size: 12px; }

footer .f_copy ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 14px;
  width: 55%;
  margin-left: auto; }

section.topNewcatColor00 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor00:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(51, 51, 51, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor01 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor01:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(0, 153, 217, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor02 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor02:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(77, 208, 225, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor03 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor03:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(234, 128, 252, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor04 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor04:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(255, 209, 128, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor05 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor05:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(190, 204, 48, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor06 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor06:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(179, 136, 255, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor07 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor07:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(0, 171, 132, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

section.topNewcatColor08 {
  overflow: hidden;
  position: relative; }
  section.topNewcatColor08:before {
    content: '';
    display: block;
    width: 600px;
    height: 600px;
    position: absolute;
    background-color: rgba(180, 132, 85, 0.7);
    border-radius: 50%;
    top: -50%;
    right: -10%; }

.top_cate {
  margin-bottom: 60px;
  padding: 40px 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .top_cate li {
    width: 14%;
    text-align: center;
    font-weight: bold;
    line-height: 1.5; }
    .top_cate li a {
      text-decoration: none;
      color: #333; }
    .top_cate li svg {
      margin: 0 auto 20px;
      width: 40%;
      min-height: 64px;
      display: block; }
    .top_cate li span {
      font-weight: normal;
      font-size: 12px; }

nav .hNav {
  padding-top: 20px;
  font-size: 13px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

nav .fNav {
  font-size: 13px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  line-height: 3; }
  nav .fNav li {
    text-align: right;
    padding-left: 20px; }

.check_hidden {
  display: none; }

header div label {
  display: none; }

input#mNav:checked ~ nav.h_nav {
  position: fixed;
  top: 80px;
  background-color: #f6f7f9;
  width: 100%;
  z-index: 50;
  height: 100%;
  opacity: 1;
  -webkit-transition: .5s;
  transition: .5s;
  display: block; }
  input#mNav:checked ~ nav.h_nav ul:last-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    input#mNav:checked ~ nav.h_nav ul:last-child a {
      text-decoration: none; }

.catIco li.catColor00 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor00 a:hover {
    text-decoration: underline; }
  .catIco li.catColor00 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #333;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor01 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor01 a:hover {
    text-decoration: underline; }
  .catIco li.catColor01 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #0099D9;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor02 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor02 a:hover {
    text-decoration: underline; }
  .catIco li.catColor02 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #4DD0E1;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor03 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor03 a:hover {
    text-decoration: underline; }
  .catIco li.catColor03 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #EA80FC;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor04 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor04 a:hover {
    text-decoration: underline; }
  .catIco li.catColor04 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #FFD180;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor05 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor05 a:hover {
    text-decoration: underline; }
  .catIco li.catColor05 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #BECC30;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor06 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor06 a:hover {
    text-decoration: underline; }
  .catIco li.catColor06 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #B388FF;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor07 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor07 a:hover {
    text-decoration: underline; }
  .catIco li.catColor07 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #00AB84;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

.catIco li.catColor08 a {
  display: block;
  position: relative;
  padding-left: 15px;
  padding-right: 10px;
  text-decoration: none; }
  .catIco li.catColor08 a:hover {
    text-decoration: underline; }
  .catIco li.catColor08 a:before {
    content: '';
    margin-right: 5px;
    margin-top: -3px;
    display: block;
    width: 6px;
    height: 6px;
    background-color: #B48455;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 3px; }

#ccl_logo .cls-1,
#ccl_logo .cls-2 {
  fill: #333; }

#ccl_logo .cls-2 {
  font-size: 11.4px;
  font-family: Oswald-Light, Oswald;
  letter-spacing: 0.05em; }

#ccl_logo .cls-3, #ccl_logo .cls-4, #ccl_logo .cls-5 {
  letter-spacing: 0.05em; }

#nbpc_logo .cls-1 {
  fill: #333; }

footer #nbpc_logo .cls-1 {
  fill: #2665B4; }

.entry_new {
  color: #fff;
  background-color: #000;
  position: relative; }
  .entry_new > div {
    padding-top: 100px;
    padding-bottom: 100px; }
    .entry_new > div a {
      color: #fff;
      text-decoration: none; }
      .entry_new > div a:hover {
        text-decoration: underline; }
    .entry_new > div ul.cate_date li {
      margin-right: 1em; }
      .entry_new > div ul.cate_date li svg {
        vertical-align: middle;
        width: 15px; }
  .entry_new:after {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    background: #e57373;
    background: -webkit-gradient(linear, left top, right top, from(#e57373), color-stop(20%, #9a75c5), color-stop(40%, #55a3f6), color-stop(60%, #8bd8a2), color-stop(80%, #f9e282), to(#ff9e81));
    background: linear-gradient(to right, #e57373 0%, #9a75c5 20%, #55a3f6 40%, #8bd8a2 60%, #f9e282 80%, #ff9e81 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e57373', endColorstr='#ff9e81',GradientType=1 );
    position: absolute;
    bottom: 0;
    left: 0; }

.entry_list {
  -webkit-transition: .5s;
  transition: .5s;
  position: relative; }
  .entry_list.list_bgcatColor00:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(0, 0, 0, 0.08); }
  .entry_list.list_bgcatColor01:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(0, 0, 0, 0.08); }
  .entry_list.list_bgcatColor02:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(7, 36, 40, 0.08); }
  .entry_list.list_bgcatColor03:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(105, 3, 122, 0.08); }
  .entry_list.list_bgcatColor04:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(128, 82, 0, 0.08); }
  .entry_list.list_bgcatColor05:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(0, 0, 0, 0.08); }
  .entry_list.list_bgcatColor06:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(49, 0, 136, 0.08); }
  .entry_list.list_bgcatColor07:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(0, 0, 0, 0.08); }
  .entry_list.list_bgcatColor08:hover {
    -webkit-transition: .5s;
    transition: .5s;
    background-color: rgba(7, 5, 3, 0.08); }
  .entry_list:before, .entry_list:after {
    content: '';
    display: block;
    width: 15px;
    border-bottom: #000 solid 1px;
    position: absolute;
    left: 0;
    bottom: 0; }
  .entry_list:after {
    left: auto;
    right: 0; }
  .entry_list > div {
    padding-top: 50px;
    padding-bottom: 50px; }
    .entry_list > div a {
      color: #333; }
    .entry_list > div ul.cate_date li {
      margin-right: 1em; }
      .entry_list > div ul.cate_date li:nth-child(2):before, .entry_list > div ul.cate_date li.date:before {
        content: '';
        margin-right: 5px;
        display: inline-block;
        vertical-align: middle;
        width: 15px;
        height: 15px;
        background-image: url(/ccl/common/images/ico_time.svg);
        background-repeat: no-repeat; }
      .entry_list > div ul.cate_date li:nth-child(3):before {
        content: '';
        margin-right: 5px;
        display: inline-block;
        vertical-align: middle;
        width: 15px;
        height: 15px;
        background-image: url(/ccl/common/images/ico_lock.svg);
        background-repeat: no-repeat; }
  .entry_list .list_type01 ul.keywordTag {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .entry_list .list_type01 ul.keywordTag li {
      margin-bottom: 5px; }
      .entry_list .list_type01 ul.keywordTag li a {
        border: #333 solid 1px;
        -webkit-transition: .5s;
        transition: .5s; }
        .entry_list .list_type01 ul.keywordTag li a:hover {
          -webkit-transition: .5s;
          transition: .5s;
          background-color: rgba(128, 128, 128, 0.5); }

.list_type01 {
  z-index: 10;
  position: relative; }
  .list_type01 h1, .list_type01 h2 {
    font-size: 45px;
    font-family: serif;
    line-height: 1.5; }
    .list_type01 h1 a, .list_type01 h2 a {
      text-decoration: none;
      display: block; }
      .list_type01 h1 a:hover, .list_type01 h2 a:hover {
        text-decoration: underline; }
  .list_type01 p.entry_series {
    font-size: 16px;
    font-family: serif; }
  .list_type01 p a {
    text-decoration: none;
    display: block; }
  .list_type01 ul {
    font-size: 13px; }
    .list_type01 ul.prof {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .list_type01 ul.prof li {
        padding-left: 10px;
        vertical-align: middle; }
        .list_type01 ul.prof li.catColor00 {
          padding: 7px;
          background-color: #333;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor01 {
          padding: 7px;
          background-color: #0099D9;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor02 {
          padding: 7px;
          background-color: #4DD0E1;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor03 {
          padding: 7px;
          background-color: #EA80FC;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor04 {
          padding: 7px;
          background-color: #FFD180;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor05 {
          padding: 7px;
          background-color: #BECC30;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor06 {
          padding: 7px;
          background-color: #B388FF;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor07 {
          padding: 7px;
          background-color: #00AB84;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.catColor08 {
          padding: 7px;
          background-color: #B48455;
          border-radius: 50%;
          max-width: 50px;
          max-height: 50px;
          width: 100%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
        .list_type01 ul.prof li.member_photo {
          max-width: 50px;
          max-height: 50px;
          width: 100%; }
          .list_type01 ul.prof li.member_photo img {
            border-radius: 50%; }
    .list_type01 ul.keywordTag li a {
      margin-right: 8px;
      padding: 8px 10px;
      display: block;
      text-decoration: none;
      border: #fff solid 1px;
      border-radius: 5px;
      -webkit-transition: .5s;
      transition: .5s; }
      .list_type01 ul.keywordTag li a:hover {
        -webkit-transition: .5s;
        transition: .5s;
        background-color: rgba(128, 128, 128, 0.5); }

.list_col {
  padding-top: 100px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .list_col > div {
    width: 100%; }
  .list_col > li {
    margin-bottom: 30px; }
    .list_col > li a {
      text-decoration: none;
      color: #333; }
    .list_col > li .entry_list:before, .list_col > li .entry_list:after {
      display: none; }
    .list_col > li .entry_list.list_cattype01:hover, .list_col > li .entry_list.list_cattype02:hover, .list_col > li .entry_list.list_cattype03:hover, .list_col > li .entry_list.list_cattype04:hover, .list_col > li .entry_list.list_cattype05:hover {
      background: transparent; }
    .list_col > li .entry_list:before {
      content: '';
      margin: 0 auto 50px;
      display: block;
      width: 8px;
      height: 8px;
      background-color: #333;
      border: none;
      border-radius: 50%;
      position: inherit; }
    .list_col > li .entry_list div {
      padding-top: 15px; }
      .list_col > li .entry_list div.list_type01 h2 {
        font-size: 32px; }
    .list_col > li .entry_list > p {
      position: relative;
      overflow: hidden;
      height: 298px; }
      .list_col > li .entry_list > p img {
        vertical-align: bottom;
        -webkit-filter: grayscale(100%);
                filter: grayscale(100%); }
      .list_col > li .entry_list > p a {
        display: block;
        height: 100%; }
        .list_col > li .entry_list > p a:after {
          margin-left: -130px;
          margin-top: -1.5em;
          padding: 20px 0;
          content: 'CHECK';
          color: #fff;
          display: block;
          font-size: 24px;
          border-top: #fff solid 1px;
          border-bottom: #fff solid 1px;
          position: absolute;
          text-align: center;
          top: 50%;
          left: 50%;
          width: 260px;
          z-index: 2;
          opacity: 0;
          -webkit-transition: .5s;
          transition: .5s; }
        .list_col > li .entry_list > p a:before {
          content: '';
          display: block;
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          z-index: 1;
          opacity: 0;
          -webkit-transition: .5s;
          transition: .5s; }
    .list_col > li .entry_list.list_catColor00 > p a:before {
      background: rgba(51, 51, 51, 0.7); }
    .list_col > li .entry_list.list_catColor01 > p a:before {
      background: rgba(0, 153, 217, 0.7); }
    .list_col > li .entry_list.list_catColor02 > p a:before {
      background: rgba(77, 208, 225, 0.7); }
    .list_col > li .entry_list.list_catColor03 > p a:before {
      background: rgba(234, 128, 252, 0.7); }
    .list_col > li .entry_list.list_catColor04 > p a:before {
      background: rgba(255, 209, 128, 0.7); }
    .list_col > li .entry_list.list_catColor05 > p a:before {
      background: rgba(190, 204, 48, 0.7); }
    .list_col > li .entry_list.list_catColor06 > p a:before {
      background: rgba(179, 136, 255, 0.7); }
    .list_col > li .entry_list.list_catColor07 > p a:before {
      background: rgba(0, 171, 132, 0.7); }
    .list_col > li .entry_list.list_catColor08 > p a:before {
      background: rgba(180, 132, 85, 0.7); }
    .list_col > li .entry_list:hover p a:after {
      opacity: 1;
      -webkit-transition: .5s;
      transition: .5s; }
    .list_col > li .entry_list:hover p a:before {
      -webkit-transition: .5s;
      transition: .5s;
      opacity: 1; }
    .list_col > li.list_img_left section {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .list_col > li.list_img_left section:before {
        display: none; }
      .list_col > li.list_img_left section div {
        padding-top: 0;
        padding-bottom: 40px;
        width: 100%; }
        .list_col > li.list_img_left section div.list_type01 h2 {
          font-size: 24px; }
        .list_col > li.list_img_left section div.list_type01 ul.keywordTag {
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
          .list_col > li.list_img_left section div.list_type01 ul.keywordTag li {
            margin-bottom: 5px; }
            .list_col > li.list_img_left section div.list_type01 ul.keywordTag li a {
              padding: 5px; }
      .list_col > li.list_img_left section > p {
        margin-right: 20px;
        height: 180px;
        min-width: 180px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        overflow: hidden; }
        .list_col > li.list_img_left section > p img {
          height: 100%;
          width: auto;
          position: relative;
          left: -25%; }
  .list_col.list_col2 > li, .list_col.list_col2 > div {
    width: 48%;
    margin-bottom: 80px; }
    .list_col.list_col2 > li:nth-child(odd), .list_col.list_col2 > div:nth-child(odd) {
      margin-top: -100px; }
      .list_col.list_col2 > li:nth-child(odd).list_img_left, .list_col.list_col2 > div:nth-child(odd).list_img_left {
        margin-top: 0; }
  .list_col.list_col3 > li {
    width: 32%;
    margin-bottom: 40px; }
    .list_col.list_col3 > li:nth-child(3n+1) {
      margin-top: -200px; }
    .list_col.list_col3 > li:nth-child(3n+2) {
      margin-top: -100px; }
    .list_col.list_col3 > li .entry_list div.list_type01 h2 {
      font-size: 24px; }
    .list_col.list_col3 > li .entry_list > p {
      height: auto; }
  .list_col.list_col3.list_col {
    padding-top: 200px; }
  .list_col.relation_list > li {
    margin-bottom: 0; }
    .list_col.relation_list > li.list_img_left section > p {
      height: auto;
      width: 45%;
      margin-right: 15px;
      margin-bottom: 15px; }
    .list_col.relation_list > li.list_img_left section .list_type01 p {
      margin-bottom: 5px;
      font-size: 13px; }
      .list_col.relation_list > li.list_img_left section > p img {
        left: 0%;
        width: 100%;
        height: auto; }
      .list_col.relation_list > li.list_img_left section > p:after {
        font-size: 14px;
        padding: 10px 0; }
    .list_col.relation_list > li.list_img_left section div {
      padding-bottom: 0;
      width: 70%; }
      .list_col.relation_list > li.list_img_left section div h4 {
        border-top: none;
        padding-top: 0;
        font-weight: normal;
        font-size: 15px; }

.member_list {
  margin-bottom: 40px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .member_list li {
    margin-bottom: 40px;
    width: 31%;
    line-height: 1.5; }
    .member_list li > a, .member_list li > span {
      color: #333;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .member_list li > a > span, .member_list li > span > span {
        margin-right: 10px;
        display: block;
        width: 110px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        border-radius: 50%;
        overflow: hidden; }

.ccm-pagination-wrapper {
  text-align: center; }

.ttl_t01 {
  margin-bottom: 50px;
  padding: 50px 0;
  text-align: center;
  border-top: #333 solid 1px;
  font-size: 36px;
  -webkit-box-shadow: #eee 0 1px 2px;
          box-shadow: #eee 0 1px 2px; }
  .ttl_t01 span {
    display: block;
    font-size: 16px;
    margin-top: 15px; }
  .ttl_t01:before {
    content: '';
    margin: 0 auto 20px;
    display: block;
    width: 8px;
    height: 8px;
    background-color: #333;
    border-radius: 50%; }

.ttl_t02 {
  padding: 30px 0 15px;
  font-size: 30px;
  font-weight: normal;
  font-family: serif; }
  .ttl_t02.ttl_catColor00 {
    border-bottom: #333 solid 1px; }
  .ttl_t02.ttl_catColor01 {
    border-bottom: #0099D9 solid 1px; }
  .ttl_t02.ttl_catColor02 {
    border-bottom: #4DD0E1 solid 1px; }
  .ttl_t02.ttl_catColor03 {
    border-bottom: #EA80FC solid 1px; }
  .ttl_t02.ttl_catColor04 {
    border-bottom: #FFD180 solid 1px; }
  .ttl_t02.ttl_catColor05 {
    border-bottom: #BECC30 solid 1px; }
  .ttl_t02.ttl_catColor06 {
    border-bottom: #B388FF solid 1px; }
  .ttl_t02.ttl_catColor07 {
    border-bottom: #00AB84 solid 1px; }
  .ttl_t02.ttl_catColor08 {
    border-bottom: #B48455 solid 1px; }

.ttl_t03 {
  margin-bottom: 20px;
  font-size: 36px;
  font-family: serif; }
  .ttl_t03.ico_question:before {
    margin: 0 auto 10px;
    content: '';
    display: block;
    width: 44px;
    height: 44px;
    background-image: url(/ccl/common/images/ico_question.svg);
    background-repeat: no-repeat; }

.ttl_t04 {
  font-size: 36px;
  text-align: center;
  color: #fff; }
  .ttl_t04 span {
    display: block;
    font-size: 16px;
    margin-top: 15px; }

.ttl_t05 {
  font-size: 20px;
  text-align: center;
  color: #fff; }

.ttl01 {
  margin-bottom: 30px;
  padding: 20px 0;
  font-size: 22px;
  border-top: #333 solid 1px;
  border-bottom: #333 solid 1px; }

.ttl02 {
  padding: 20px 0;
  font-size: 22px;
  border-top: #333 solid 1px; }

.btn_base {
  padding: 20px 0;
  margin: 0 auto;
  width: 100%;
  display: block;
  background-color: #fff;
  color: #2665b2;
  font-size: 18px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-decoration: none;
  border-radius: 5px; }
  .btn_base.btn_blue {
    color: #fff;
    -webkit-transition: .5s;
    transition: .5s;
    background-color: #2665b4; }
    .btn_base.btn_blue:hover {
      -webkit-transition: .5s;
      transition: .5s;
      opacity: .5; }
  .btn_base.btn_radius {
    border-radius: 5px; }
  .btn_base.btn_blue_border {
    padding: 15px 0;
    font-size: 16px;
    color: #2665b4;
    display: inline-block;
    border: #2665b4 solid 1px; }
  .btn_base.btn_blue_side {
    padding: 15px 0;
    color: #fff;
    width: 100%;
    background-color: #2665b4; }

aside ul.list_col > li {
  margin-bottom: 15px; }
  aside ul.list_col > li.list_img_left section > p {
    margin-right: 10px;
    width: 30%;
    min-width: auto;
    height: 80px; }
    aside ul.list_col > li.list_img_left section > p img {
      left: -25%; }
  aside ul.list_col > li.list_img_left section div.list_type01 {
    padding-bottom: 0px;
    width: 70%; }
    aside ul.list_col > li.list_img_left section div.list_type01 h2 {
      font-size: 14px;
      font-family: sans-serif; }
  aside ul.list_col > li .entry_list > p:after {
    padding: 5px 0;
    margin-top: -1.2em;
    font-size: 16px; }

.link_function {
  margin-left: auto; }
  .link_function li {
    margin-bottom: .8em;
    margin-left: 8px; }
    .link_function li a {
      text-decoration: none;
      display: block;
      color: #2665B4;
      border: #2665B4 solid 1px;
      border-radius: 50%;
      width: 40px;
      height: 40px;
      text-align: center;
      position: relative; }
      .link_function li a img {
        margin: 0 auto -15%;
        width: 22px;
        height: 22px; }
      .link_function li a:before {
        display: inline-block;
        position: absolute;
        font-size: 12px;
        width: 150px;
        left: 0;
        top: -50px;
        margin-left: -56px;
        text-align: center; }

.page_details {
  line-height: 1.6; }
  .page_details article div.details_ttl > p, .page_details article div.details_ttl > h1 {
    margin-bottom: 10px; }
  .page_details article div.details_ttl > p {
    font-size: 18px; }
  .page_details article div.details_ttl > h1 {
    font-size: 36px;
    line-height: 1.3; }
  .page_details article div.details_ttl div {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .page_details article div.details_ttl div p {
      margin-right: 1em;
      font-size: 12px; }
      .page_details article div.details_ttl div p:before {
        content: '';
        margin-right: 5px;
        display: inline-block;
        vertical-align: middle;
        width: 15px;
        height: 15px;
        background-image: url(/ccl/common/images/ico_time.svg);
        background-repeat: no-repeat; }
    .page_details article div.details_ttl div ul.details_ttl {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .page_details article div.details_ttl div ul.details_ttl li {
        margin-bottom: 5px; }
        .page_details article div.details_ttl div ul.details_ttl li a {
          margin-right: 8px;
          padding: 6px 8px;
          font-size: 12px;
          display: inline-block;
          text-decoration: none;
          border: #333 solid 1px;
          border-radius: 5px;
          color: #333; }
  .page_details article div.details_ttl ul.prof {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .page_details article div.details_ttl ul.prof li {
      padding: 10px;
      vertical-align: middle;
      position: relative; }
      .page_details article div.details_ttl ul.prof li.catColor00 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor00:after {
        content: '';
        display: block;
        background-color: #333;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor01 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor01:after {
        content: '';
        display: block;
        background-color: #0099D9;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor02 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor02:after {
        content: '';
        display: block;
        background-color: #4DD0E1;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor03 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor03:after {
        content: '';
        display: block;
        background-color: #EA80FC;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor04 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor04:after {
        content: '';
        display: block;
        background-color: #FFD180;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor05 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor05:after {
        content: '';
        display: block;
        background-color: #BECC30;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor06 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor06:after {
        content: '';
        display: block;
        background-color: #B388FF;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor07 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor07:after {
        content: '';
        display: block;
        background-color: #00AB84;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.catColor08 img {
        width: 30px;
        height: 30px; }
      .page_details article div.details_ttl ul.prof li.catColor08:after {
        content: '';
        display: block;
        background-color: #B48455;
        border-radius: 50%;
        width: 50px;
        height: 50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1; }
      .page_details article div.details_ttl ul.prof li.member_photo {
        height: 50px;
        width: 100%;
        font-size: 12px;
        box-sizing: content-box;
        line-height: 1.5; }
        .page_details article div.details_ttl ul.prof li.member_photo div {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
          .page_details article div.details_ttl ul.prof li.member_photo div p:before {
            display: none; }
          .page_details article div.details_ttl ul.prof li.member_photo div p.author_photo {
            width: 50px;
            height: 50px; }
          .page_details article div.details_ttl ul.prof li.member_photo div p img {
            border-radius: 50%;
            height: 100%;
            width: auto;
            float: left; }
          .page_details article div.details_ttl ul.prof li.member_photo div p a, .page_details article div.details_ttl ul.prof li.member_photo div p span {
            font-size: 14px;
            font-weight: bold;
            color: #333;
            display: block; }
  .page_details article p.read_name {
    font-size: 13px; }
    .page_details article p.read_name em {
      font-size: 16px;
      font-weight: bold; }
  .page_details .body_txt hr {
    border-top: #ccc solid 1px;
    border-bottom: none;
    clear: both; }
  .page_details .body_txt strong {
    font-weight: bold; }
  .page_details .body_txt div.flex_div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .page_details .body_txt div.flex_div div {
      margin-right: 15px; }
      .page_details .body_txt div.flex_div div:last-child {
        margin-right: 0; }
  .page_details .body_txt div.ttl_box {
    padding: 8px 16px;
    display: inline-block;
    background-color: #000; }
    .page_details .body_txt div.ttl_box p {
      margin-bottom: 0;
      color: #fff; }
  .page_details .body_txt p {
    margin-bottom: 1.3em;
    font-size: 18px;
    line-height: 1.8;
    color: #333; }
    .page_details .body_txt p span.body_name {
      min-width: 65px;
      display: inline-block;
      font-weight: bold; }
    .page_details .body_txt p.lh1 {
      line-height: 1; }
    .page_details .body_txt p.lh11 {
      line-height: 1.1; }
    .page_details .body_txt p.lh12 {
      line-height: 1.2; }
    .page_details .body_txt p.lh13 {
      line-height: 1.3; }
    .page_details .body_txt p.lh14 {
      line-height: 1.4; }
    .page_details .body_txt p.lh15 {
      line-height: 1.5; }
    .page_details .body_txt p.lh16 {
      line-height: 1.6; }
    .page_details .body_txt p.lh17 {
      line-height: 1.7; }
    .page_details .body_txt p.lh18 {
      line-height: 1.8; }
    .page_details .body_txt p.lh19 {
      line-height: 1.9; }
    .page_details .body_txt p.lh20 {
      line-height: 2; }
    .page_details .body_txt p img {
      margin: 0 auto;
      height: auto;
      display: block; }
      .page_details .body_txt p img.mr20 {
        margin-right: 20px;
        margin-bottom: 10px; }
      .page_details .body_txt p img.ml20 {
        margin-left: 20px;
        margin-bottom: 10px; }
      .page_details .body_txt p img.ma_none {
        margin: 0; }
  .page_details .body_txt ol {
    margin-bottom: 20px;
    list-style-type: decimal;
    margin-left: 2em; }
  .page_details .body_txt figure figcaption {
    padding-top: 10px;
    font-size: 14px; }
  .page_details .body_txt .text_prof {
    margin-bottom: 30px;
    padding: 30px 30px 20px;
    font-size: 14px;
    border: #f5f5f5 solid 4px; }
    .page_details .body_txt .text_prof p {
      margin-bottom: .5em; }
      .page_details .body_txt .text_prof p.bold {
        font-size: 16px;
        font-weight: bold; }
  .page_details .body_txt .body_txtlist_col > li.list_img_left section > p {
    width: 30%;
    height: auto; }
    .page_details .body_txt .body_txtlist_col > li.list_img_left section > p:after, .page_details .body_txt .body_txtlist_col > li.list_img_left section > p:before {
      display: none; }
    .page_details .body_txt .body_txtlist_col > li.list_img_left section > p img {
      left: 0;
      height: auto;
      width: auto;
      -o-object-fit: cover;
         object-fit: cover; }
  .page_details .body_txt .body_txtlist_col > li.list_img_left section div {
    width: 70%; }
    .page_details .body_txt .body_txtlist_col > li.list_img_left section div.list_type01 h4 {
      font-size: 14px; }
      .page_details .body_txt .body_txtlist_col > li.list_img_left section div.list_type01 h4 span {
        font-size: 12px; }
  .page_details .body_txt h2 {
    margin-bottom: 30px;
    padding: 20px 0;
    font-size: 22px;
    color: #161616;
    border-top: #333 solid 1px;
    border-bottom: #333 solid 1px;
    overflow: hidden; }
    .page_details .body_txt h2 em {
      float: right;
      font-size: small;
      background-color: #000;
      color: #fff;
      padding: 5px 10px;
      border-radius: 3px; }
  .page_details .body_txt h3 {
    padding: 20px 0;
    color: #161616;
    font-size: 22px;
    border-top: #333 solid 1px; }
  .page_details .body_txt h4 {
    padding: 20px 0;
    color: #161616;
    font-size: 18px;
    border-top: #333 solid 1px; }
  .page_details .body_txt .waku01 {
    margin: 50px 0 40px 15px;
    padding: 50px 30px 0;
    border: #2665B4 solid 2px;
    position: relative; }
    .page_details .body_txt .waku01 > h3, .page_details .body_txt .waku01 > h4 {
      border-top: none;
      padding: 10px 20px;
      color: #fff;
      font-size: 18px;
      position: absolute;
      top: -24px;
      left: -15px;
      background-color: #095697; }
  .page_details .body_txt table {
    width: 100%;
    border-top: solid 1px #c8c8c8; }
    .page_details .body_txt table th, .page_details .body_txt table td {
      border-left: solid 1px #c8c8c8; }
    .page_details .body_txt table th, .page_details .body_txt table td {
      padding: 3px 5px;
      border-bottom: solid 1px #c8c8c8;
      border-right: solid 1px #c8c8c8; }
    .page_details .body_txt table th {
      font-weight: bold; }
  .page_details .body_txt div.btn p a {
    padding: 10px 40px;
    display: inline-block;
    border: #2665B4 solid 1px;
    text-decoration: none;
    color: #2665B4;
    font-size: 16px;
    border-radius: 5px;
    min-width: 100px; }
    .page_details .body_txt div.btn p a:hover {
      background-color: rgba(38, 102, 180, 0.1); }
  .page_details .body_txt div.btn01 p a {
    padding: 10px 20px;
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-size: 16px;
    border-radius: 5px;
    text-align: center;
    min-width: 240px;
    background-color: #2665B4; }
    .page_details .body_txt div.btn01 p a:hover {
      background-color: rgba(38, 102, 180, 0.9); }

.ccm-custom-style-container {
  overflow: hidden; }
.l-entry_col1{
  margin: 0 auto;
}
.waku01 {
  margin: 50px 0 40px 15px;
  padding: 50px 30px 0;
  border: #2665B4 solid 2px;
  position: relative; }
  .waku01 > h3, .waku01 > h4 {
    padding: 10px 20px;
    color: #fff;
    font-size: 18px;
    position: absolute;
    top: -24px;
    left: -15px;
    background-color: #095697; }
    .waku01 > h3:before, .waku01 > h4:before {
      content: '';
      position: absolute;
      bottom: -15px;
      left: -15px;
      border: 15px solid transparent;
      border-top: 0px solid transparent;
      border-right: 15px solid #093A5F; }
    .waku01 > h3:after, .waku01 > h4:after {
      content: '';
      position: absolute;
      right: -22px;
      top: 0;
      height: 100%;
      border: 24px solid #095697;
      border-right: 18px solid transparent;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
  .waku01 div h3, .waku01 div h4 {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: bold; }

.flex_col2 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .flex_col2 div, .flex_col2 p, .flex_col2 li {
    width: 48%; }

.col_img_text_01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .col_img_text_01.imgR {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    .col_img_text_01.imgR div.image {
      margin-left: 5%;
      width: 30%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    .col_img_text_01.imgR div.text {
      width: 65%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    .col_img_text_01.imgR div img {
      margin-bottom: 5px; }
  .col_img_text_01.imgL div.image {
    margin-right: 5%;
    width: 30%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .col_img_text_01.imgL div.text {
    width: 65%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .col_img_text_01.imgL div img {
    margin-bottom: 5px; }

.list_series ul li {
  color: #aaa;
  margin-bottom: 1em; }
  .list_series ul li a {
    color: #333;
    text-decoration: none; }

.modal a {
  padding-left: 1.5em;
  color: #333;
  text-decoration: none;
  background-image: url(/ccl/common/images/ico_scale.svg);
  background-repeat: no-repeat;
  background-size: contain; }

.modal #modal01:not(:target) {
  display: none; }

.modal #modal01:target {
  display: block;
  position: fixed;
  top: 5%;
  left: 50%;
  margin-left: -25%;
  z-index: 100;
  max-width: 80%; }
  .modal #modal01:target img {
    width: auto;
    height: auto;
    border: #aaa solid 10px; }
  .modal #modal01:target a {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background-color: #000;
    position: absolute;
    top: -15px;
    right: -15px;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-image: none;
    color: #000; }
    .modal #modal01:target a:before, .modal #modal01:target a:after {
      content: '';
      display: block;
      height: 3px;
      width: 80%;
      background-color: #fff;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      position: absolute;
      top: 14px;
      right: 10%; }
    .modal #modal01:target a:before {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }

div .img_f {
  overflow: hidden; }
  div .img_f div.img_left p, div .img_f div.img_right p {
    line-height: 1.2;
    margin-bottom: 5px; }
  div .img_f div.img_left img, div .img_f div.img_right img {
    margin-bottom: 5px; }
  div .img_f div.img_left {
    margin: 0 20px 10px 0;
    float: left; }
  div .img_f div.img_right {
    margin: 0 0 10px 20px;
    float: right; }
      div .img_f div.img_left, div .img_f div.img_right {
    line-height: 1.2;}
  div .img_f div.w0 {
    width: 0%; }
  div .img_f div.w10 {
    width: 10%; }
  div .img_f div.w20 {
    width: 20%; }
  div .img_f div.w30 {
    width: 30%; }
  div .img_f div.w40 {
    width: 40%; }
  div .img_f div.w50 {
    width: 50%; }
  div .img_f div.w60 {
    width: 60%; }
  div .img_f div.w70 {
    width: 70%; }
  div .img_f div.w80 {
    width: 80%; }
  div .img_f div.w90 {
    width: 90%; }
  div .img_f div.w100 {
    width: 100%; }

.bg_ccl:after {
  content: '';
  margin-left: -400px;
  display: block;
  width: 800px;
  height: 230px;
  background: url(/ccl/common/images/bg_ccl.svg) no-repeat;
  position: absolute;
  bottom: 0;
  left: 50%;
  opacity: .1;
  z-index: -1; }

.tag_keyword ul {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .tag_keyword ul li {
    margin-bottom: 10px; }
    .tag_keyword ul li a {
      margin-right: 8px;
      padding: 8px 10px;
      display: block;
      color: #333;
      font-size: 13px;
      text-decoration: none;
      border: #333 solid 1px;
      border-radius: 5px; }

input.css_checkbox {
  display: none; }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.txC {
  text-align: center; }

.txR {
  text-align: right; }

.txL {
  text-align: left; }

.display_none {
  display: none; }

.maxWbase {
  margin-left: auto;
  margin-right: auto;
  max-width: 1160px; }

.list_keyword_menu {
  padding: 60px 0 90px; }
  .list_keyword_menu ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .list_keyword_menu ul li {
      margin: 0 30px;
      font-size: 14px; }
      .list_keyword_menu ul li a {
        padding: 0 5px 10px;
        color: #333;
        text-decoration: none; }
        .list_keyword_menu ul li a:hover, .list_keyword_menu ul li a.current {
          border-bottom: #333 solid 2px; }

.bottom_con01 {
  padding: 40px 0;
  background-color: #D4E0F0; }
  .bottom_con01 div p {
    line-height: 1.5;
    margin-bottom: 20px;
    font-size: 18px; }
  .bottom_con01 div ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .bottom_con01 div ul li {
      width: 32%; }
      .bottom_con01 div ul li a {
        font-size: 16px;
        font-weight: bold;
        padding: 30px 5px;
        text-decoration: none; }

.bottom_con02 {
  padding: 40px 0;
  background-image: url(/ccl/common/images/bg_bt_con01.jpg);
  background-size: cover; }
  .bottom_con02 div p {
    font-size: 14px; }
  .bottom_con02 div ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .bottom_con02 div ul li {
      margin-bottom: 18px;
      width: 24%;
      background-color: #fff;
      border-radius: 5px; }
      .bottom_con02 div ul li a {
        padding: 15px 5px 15px 20px;
        display: block;
        text-decoration: none;
        color: #333;
        font-size: 16px;
        font-weight: bold; }
        .bottom_con02 div ul li a:before {
          margin: 0 15px 0 0;
          content: '';
          display: inline-block;
          width: 46px;
          height: 39px;
          vertical-align: middle;
          background-repeat: no-repeat;
          background-size: contain;
          background-position: center; }
      .bottom_con02 div ul li:nth-child(1) a:before {
        background-image: url(/ccl/common/images/ico_bj.svg); }
      .bottom_con02 div ul li:nth-child(2) a:before {
        background-image: url(/ccl/common/images/ico_om.svg); }
      .bottom_con02 div ul li:nth-child(3) a:before {
        background-image: url(/ccl/common/images/ico_ce.svg); }
      .bottom_con02 div ul li:nth-child(4) a:before {
        background-image: url(/ccl/common/images/ico_ab.svg); }
      .bottom_con02 div ul li:nth-child(5) a:before {
        background-image: url(/ccl/common/images/ico_esg.svg); }
      .bottom_con02 div ul li:nth-child(6) a:before {
        background-image: url(/ccl/common/images/ico_dna.svg); }
      .bottom_con02 div ul li:nth-child(7) a:before {
        background-image: url(/ccl/common/images/ico_up.svg); }
      .bottom_con02 div ul li:nth-child(8) a:before {
        background-image: url(/ccl/common/images/ico_fc.svg); }

.content {
  padding: 50px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .content > article {
    width: 100%;
    max-width: 780px; }
  .content > aside {
    width: 340px; }

.list_pagenation {
  padding-bottom: 60px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .list_pagenation li {
    margin: 0 5px; }
    .list_pagenation li a, .list_pagenation li span {
      text-decoration: none;
      color: #333;
      padding: 8px 10px;
      display: block;
      border: #333 solid 1px;
      font-size: 12px;
      line-height: 1; }
    .list_pagenation li:not(.page-active):not(.page_prev):not(.page_next) a:hover, .list_pagenation li:not(.page-active):not(.page_prev):not(.page_next) span:hover {
      color: #fff;
      background: #333; }
    .list_pagenation li.page-active a, .list_pagenation li.page-active span {
      color: #fff;
      background-color: #333; }
    .list_pagenation li.page_prev, .list_pagenation li.page_next {
      margin: 0; }
      .list_pagenation li.page_prev a, .list_pagenation li.page_next a {
        border: none; }
        .list_pagenation li.page_prev a:before, .list_pagenation li.page_next a:before {
          content: '';
          display: block;
          width: 10px;
          height: 10px;
          border-top: #333 solid 2px;
          border-right: #333 solid 2px;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg); }
    .list_pagenation li.page_prev a:before {
      -webkit-transform: rotate(-135deg);
              transform: rotate(-135deg); }
    .list_pagenation li.page_disabled {
      display: none; }

.maxW10p {
  max-width: 10%; }

.maxW20p {
  max-width: 20%; }

.maxW30p {
  max-width: 30%; }

.maxW40p {
  max-width: 40%; }

.maxW50p {
  max-width: 50%; }

.maxW60p {
  max-width: 60%; }

.maxW70p {
  max-width: 70%; }

.maxW80p {
  max-width: 80%; }

.maxW90p {
  max-width: 90%; }

.maxW100p {
  max-width: 100%; }

.maxW10px {
  max-width: 10px; }

.maxW20px {
  max-width: 20px; }

.maxW30px {
  max-width: 30px; }

.maxW40px {
  max-width: 40px; }

.maxW50px {
  max-width: 50px; }

.maxW60px {
  max-width: 60px; }

.maxW70px {
  max-width: 70px; }

.maxW80px {
  max-width: 80px; }

.maxW90px {
  max-width: 90px; }

.maxW100px {
  max-width: 100px; }

.maxW110px {
  max-width: 110px; }

.maxW120px {
  max-width: 120px; }

.maxW130px {
  max-width: 130px; }

.maxW140px {
  max-width: 140px; }

.maxW150px {
  max-width: 150px; }

.maxW160px {
  max-width: 160px; }

.maxW170px {
  max-width: 170px; }

.maxW180px {
  max-width: 180px; }

.maxW190px {
  max-width: 190px; }

.maxW200px {
  max-width: 200px; }

.maxW210px {
  max-width: 210px; }

.maxW220px {
  max-width: 220px; }

.maxW230px {
  max-width: 230px; }

.maxW240px {
  max-width: 240px; }

.maxW250px {
  max-width: 250px; }

.maxW260px {
  max-width: 260px; }

.maxW270px {
  max-width: 270px; }

.maxW280px {
  max-width: 280px; }

.maxW290px {
  max-width: 290px; }

.maxW300px {
  max-width: 300px; }

.maxW310px {
  max-width: 310px; }

.maxW320px {
  max-width: 320px; }

.maxW330px {
  max-width: 330px; }

.maxW340px {
  max-width: 340px; }

.maxW350px {
  max-width: 350px; }

.maxW360px {
  max-width: 360px; }

.maxW370px {
  max-width: 370px; }

.maxW380px {
  max-width: 380px; }

.maxW390px {
  max-width: 390px; }

.maxW400px {
  max-width: 400px; }

.maxW410px {
  max-width: 410px; }

.maxW420px {
  max-width: 420px; }

.maxW430px {
  max-width: 430px; }

.maxW440px {
  max-width: 440px; }

.maxW450px {
  max-width: 450px; }

.maxW460px {
  max-width: 460px; }

.maxW470px {
  max-width: 470px; }

.maxW480px {
  max-width: 480px; }

.maxW490px {
  max-width: 490px; }

.maxW500px {
  max-width: 500px; }

.maxW510px {
  max-width: 510px; }

.maxW520px {
  max-width: 520px; }

.maxW530px {
  max-width: 530px; }

.maxW540px {
  max-width: 540px; }

.maxW550px {
  max-width: 550px; }

.maxW560px {
  max-width: 560px; }

.maxW570px {
  max-width: 570px; }

.maxW580px {
  max-width: 580px; }

.maxW590px {
  max-width: 590px; }

.maxW600px {
  max-width: 600px; }

.maxW610px {
  max-width: 610px; }

.maxW620px {
  max-width: 620px; }

.maxW630px {
  max-width: 630px; }

.maxW640px {
  max-width: 640px; }

.maxW650px {
  max-width: 650px; }

.maxW660px {
  max-width: 660px; }

.maxW670px {
  max-width: 670px; }

.maxW680px {
  max-width: 680px; }

.maxW690px {
  max-width: 690px; }

.maxW700px {
  max-width: 700px; }

.maxW710px {
  max-width: 710px; }

.maxW720px {
  max-width: 720px; }

.maxW730px {
  max-width: 730px; }

.maxW740px {
  max-width: 740px; }

.maxW750px {
  max-width: 750px; }

.maxW760px {
  max-width: 760px; }

.maxW770px {
  max-width: 770px; }

.maxW780px {
  max-width: 780px; }

.maxW790px {
  max-width: 790px; }

.maxW800px {
  max-width: 800px; }

.mrA {
  margin-right: auto; }

.mlA {
  margin-left: auto; }

.m0 {
  margin: 0px; }

.mt0 {
  margin-top: 0px; }

.mr0 {
  margin-right: 0px; }

.mb0 {
  margin-bottom: 0px; }

.ml0 {
  margin-left: 0px; }

.p0 {
  padding: 0px; }

.pt0 {
  padding-top: 0px; }

.pr0 {
  padding-right: 0px; }

.pb0 {
  padding-bottom: 0px; }

.pl0 {
  padding-left: 0px; }

.m5 {
  margin: 5px; }

.mt5 {
  margin-top: 5px; }

.mr5 {
  margin-right: 5px; }

.mb5 {
  margin-bottom: 5px; }

.ml5 {
  margin-left: 5px; }

.p5 {
  padding: 5px; }

.pt5 {
  padding-top: 5px; }

.pr5 {
  padding-right: 5px; }

.pb5 {
  padding-bottom: 5px; }

.pl5 {
  padding-left: 5px; }

.m10 {
  margin: 10px; }

.mt10 {
  margin-top: 10px; }

.mr10 {
  margin-right: 10px; }

.mb10 {
  margin-bottom: 10px; }

.ml10 {
  margin-left: 10px; }

.p10 {
  padding: 10px; }

.pt10 {
  padding-top: 10px; }

.pr10 {
  padding-right: 10px; }

.pb10 {
  padding-bottom: 10px; }

.pl10 {
  padding-left: 10px; }

.m15 {
  margin: 15px; }

.mt15 {
  margin-top: 15px; }

.mr15 {
  margin-right: 15px; }

.mb15 {
  margin-bottom: 15px; }

.ml15 {
  margin-left: 15px; }

.p15 {
  padding: 15px; }

.pt15 {
  padding-top: 15px; }

.pr15 {
  padding-right: 15px; }

.pb15 {
  padding-bottom: 15px; }

.pl15 {
  padding-left: 15px; }

.m20 {
  margin: 20px; }

.mt20 {
  margin-top: 20px; }

.mr20 {
  margin-right: 20px; }

.mb20 {
  margin-bottom: 20px; }

.ml20 {
  margin-left: 20px; }

.p20 {
  padding: 20px; }

.pt20 {
  padding-top: 20px; }

.pr20 {
  padding-right: 20px; }

.pb20 {
  padding-bottom: 20px; }

.pl20 {
  padding-left: 20px; }

.m25 {
  margin: 25px; }

.mt25 {
  margin-top: 25px; }

.mr25 {
  margin-right: 25px; }

.mb25 {
  margin-bottom: 25px; }

.ml25 {
  margin-left: 25px; }

.p25 {
  padding: 25px; }

.pt25 {
  padding-top: 25px; }

.pr25 {
  padding-right: 25px; }

.pb25 {
  padding-bottom: 25px; }

.pl25 {
  padding-left: 25px; }

.m30 {
  margin: 30px; }

.mt30 {
  margin-top: 30px; }

.mr30 {
  margin-right: 30px; }

.mb30 {
  margin-bottom: 30px; }

.ml30 {
  margin-left: 30px; }

.p30 {
  padding: 30px; }

.pt30 {
  padding-top: 30px; }

.pr30 {
  padding-right: 30px; }

.pb30 {
  padding-bottom: 30px; }

.pl30 {
  padding-left: 30px; }

.m35 {
  margin: 35px; }

.mt35 {
  margin-top: 35px; }

.mr35 {
  margin-right: 35px; }

.mb35 {
  margin-bottom: 35px; }

.ml35 {
  margin-left: 35px; }

.p35 {
  padding: 35px; }

.pt35 {
  padding-top: 35px; }

.pr35 {
  padding-right: 35px; }

.pb35 {
  padding-bottom: 35px; }

.pl35 {
  padding-left: 35px; }

.m40 {
  margin: 40px; }

.mt40 {
  margin-top: 40px; }

.mr40 {
  margin-right: 40px; }

.mb40 {
  margin-bottom: 40px; }

.ml40 {
  margin-left: 40px; }

.p40 {
  padding: 40px; }

.pt40 {
  padding-top: 40px; }

.pr40 {
  padding-right: 40px; }

.pb40 {
  padding-bottom: 40px; }

.pl40 {
  padding-left: 40px; }

.m45 {
  margin: 45px; }

.mt45 {
  margin-top: 45px; }

.mr45 {
  margin-right: 45px; }

.mb45 {
  margin-bottom: 45px; }

.ml45 {
  margin-left: 45px; }

.p45 {
  padding: 45px; }

.pt45 {
  padding-top: 45px; }

.pr45 {
  padding-right: 45px; }

.pb45 {
  padding-bottom: 45px; }

.pl45 {
  padding-left: 45px; }

.m50 {
  margin: 50px; }

.mt50 {
  margin-top: 50px; }

.mr50 {
  margin-right: 50px; }

.mb50 {
  margin-bottom: 50px; }

.ml50 {
  margin-left: 50px; }

.p50 {
  padding: 50px; }

.pt50 {
  padding-top: 50px; }

.pr50 {
  padding-right: 50px; }

.pb50 {
  padding-bottom: 50px; }

.pl50 {
  padding-left: 50px; }

.m55 {
  margin: 55px; }

.mt55 {
  margin-top: 55px; }

.mr55 {
  margin-right: 55px; }

.mb55 {
  margin-bottom: 55px; }

.ml55 {
  margin-left: 55px; }

.p55 {
  padding: 55px; }

.pt55 {
  padding-top: 55px; }

.pr55 {
  padding-right: 55px; }

.pb55 {
  padding-bottom: 55px; }

.pl55 {
  padding-left: 55px; }

.m60 {
  margin: 60px; }

.mt60 {
  margin-top: 60px; }

.mr60 {
  margin-right: 60px; }

.mb60 {
  margin-bottom: 60px; }

.ml60 {
  margin-left: 60px; }

.p60 {
  padding: 60px; }

.pt60 {
  padding-top: 60px; }

.pr60 {
  padding-right: 60px; }

.pb60 {
  padding-bottom: 60px; }

.pl60 {
  padding-left: 60px; }

.m65 {
  margin: 65px; }

.mt65 {
  margin-top: 65px; }

.mr65 {
  margin-right: 65px; }

.mb65 {
  margin-bottom: 65px; }

.ml65 {
  margin-left: 65px; }

.p65 {
  padding: 65px; }

.pt65 {
  padding-top: 65px; }

.pr65 {
  padding-right: 65px; }

.pb65 {
  padding-bottom: 65px; }

.pl65 {
  padding-left: 65px; }

.m70 {
  margin: 70px; }

.mt70 {
  margin-top: 70px; }

.mr70 {
  margin-right: 70px; }

.mb70 {
  margin-bottom: 70px; }

.ml70 {
  margin-left: 70px; }

.p70 {
  padding: 70px; }

.pt70 {
  padding-top: 70px; }

.pr70 {
  padding-right: 70px; }

.pb70 {
  padding-bottom: 70px; }

.pl70 {
  padding-left: 70px; }

.m75 {
  margin: 75px; }

.mt75 {
  margin-top: 75px; }

.mr75 {
  margin-right: 75px; }

.mb75 {
  margin-bottom: 75px; }

.ml75 {
  margin-left: 75px; }

.p75 {
  padding: 75px; }

.pt75 {
  padding-top: 75px; }

.pr75 {
  padding-right: 75px; }

.pb75 {
  padding-bottom: 75px; }

.pl75 {
  padding-left: 75px; }

.w0p {
  max-width: 0%; }

.w5p {
  max-width: 5%; }

.w10p {
  max-width: 10%; }

.w15p {
  max-width: 15%; }

.w20p {
  max-width: 20%; }

.w25p {
  max-width: 25%; }

.w30p {
  max-width: 30%; }

.w35p {
  max-width: 35%; }

.w40p {
  max-width: 40%; }

.w45p {
  max-width: 45%; }

.w50p {
  max-width: 50%; }

.w55p {
  max-width: 55%; }

.w60p {
  max-width: 60%; }

.w65p {
  max-width: 65%; }

.w70p {
  max-width: 70%; }

.w75p {
  max-width: 75%; }

.w80p {
  max-width: 80%; }

.w85p {
  max-width: 85%; }

.w90p {
  max-width: 90%; }

.w95p {
  max-width: 95%; }

.w100p {
  max-width: 100%; }

.wAuto {
  width: auto; }

.ccldot_search form div.searchBox {
  padding: 30px 0;
  margin: 20px 0;
  background-color: #ebeff2;
  text-align: center; }
  .ccldot_search form div.searchBox input[type=text] {
    font-size: 20px;
    padding: 10px;
    width: 30%; }
  .ccldot_search form div.searchBox input[type=image] {
    position: relative;
    left: -40px; }

.ccldot_search form div#searchResults div.searchResult {
  margin-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .ccldot_search form div#searchResults div.searchResult > p {
    margin-right: 20px; }
    .ccldot_search form div#searchResults div.searchResult > p img {
      width: 150px;
      height: auto; }
  .ccldot_search form div#searchResults div.searchResult > div p {
    line-height: 1.4; }
  .ccldot_search form div#searchResults div.searchResult > div h2 {
    font-size: 28px;
    margin: .4em 0;
    font-family: serif; }
    .ccldot_search form div#searchResults div.searchResult > div h2 a {
      color: #333;
      text-decoration: none; }

header,main,footer,
header div,header p,header small,header span,
main div,main p,main small,main span,
footer div,footer p,footer small,footer span {
  font-family: 'Arial', 'YuGothic', 'Yu Gothic', Hiragino Sans, 'ヒラギノ角ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif !important;
  font-weight: 500;
  color: #333;
  line-height: 1.6; }

.maxWbase {
  max-width: 996px; }

.ccl_logo {
  height: 44.52px; }

.bpc_logo {
  height: 15.17px; }

.bpc_logo_ft {
  height: 19px; }

header {
  position: relative;
  z-index: 1;
  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 1px rgba(0, 0, 0, 0.15); }
  header > div nav .hNav {
    margin: auto;
    width: 95%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  header > div nav.h_nav ul.catIco li a {
    position: relative;
    z-index: 10;
    padding: 5px 3px;
    font-weight: 700;
    text-align: center;
    line-height: 1.4;
    display: block;
    cursor: pointer; }
    header > div nav.h_nav ul.catIco li a:before {
      content: none; }
    header > div nav.h_nav ul.catIco li a:after {
      content: '';
      position: absolute;
      z-index: -1;
      width: 100%;
      height: 3px;
      bottom: 0;
      left: 0;
      border-radius: 3px;
      opacity: 0.5;
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
      -webkit-transition: 0.3s;
      transition: 0.3s; }
    header > div nav.h_nav ul.catIco li a.c-1:after {
      background-color: #60a9ec; }
    header > div nav.h_nav ul.catIco li a.c-2:after {
      background-color: #63c8ba; }
    header > div nav.h_nav ul.catIco li a.c-3:after {
      background-color: #ea676a; }
    header > div nav.h_nav ul.catIco li a.c-4:after {
      background-color: #eeb94f; }
    header > div nav.h_nav ul.catIco li a.c-5:after {
      background-color: #7b8ca1; }
    header > div nav.h_nav ul.catIco li a.c-6:after {
      background-color: #b388ff; }
    header > div nav.h_nav ul.catIco li a.c-7:after {
      background-color: #6ada8a; }
    header > div nav.h_nav ul.catIco li a:hover, header > div nav.h_nav ul.catIco li a.current {
      opacity: 1; }
      header > div nav.h_nav ul.catIco li a:hover:after, header > div nav.h_nav ul.catIco li a.current:after {
        -webkit-transform: scalex(1);
                transform: scalex(1); }
  header > div nav.h_nav ul.catIco li.inquiry a {
    position: relative;
    padding: 10px 20px;
    background-color: #2665b4;
    border: solid 1px #2665b4;
    color: #fff; }
    header > div nav.h_nav ul.catIco li.inquiry a:hover {
      color: #2665b4; }
    header > div nav.h_nav ul.catIco li.inquiry a:after {
      opacity: 1;
      background: #fff;
      border-radius: 0;
      height: 100%;
      top: 0; }

main {
  background-color: #f8f9fa;
  padding: 30px 0 0; }

.content {
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 50px;
  padding-top: 30px;
  padding-bottom: 30px; }
  .content > article {
    font-family: 'Arial', 'YuGothic', 'Yu Gothic', Hiragino Sans, 'ヒラギノ角ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif;
    font-weight: 500;
    max-width: 600px; }
  .content > aside {
    font-family: 'Arial', 'YuGothic', 'Yu Gothic', Hiragino Sans, 'ヒラギノ角ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif;
    font-weight: 500; }

.link_function li a {
  position: relative; }
  .link_function li a:after {
    position: absolute;
    display: block;
    z-index: 2;
    content: attr(data-text);
    width: 50px;
    padding: 3px 0;
    font-size: 10px;
    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
    letter-spacing: -0.5px;
    line-height: 1;
    top: -18px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    color: #333;
    background: #eee;
    border: solid 1px #ccc;
    border-radius: 3px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0; }
  .link_function li a:hover {
    background-color: #2665b4; }
    .link_function li a:hover img {
      -webkit-filter: brightness(10);
              filter: brightness(10); }
    .link_function li a:hover:after {
      opacity: 1;
      top: -23px; }

.subtitle {
  color: #6c6a6a;
  font-size: 15px;
  margin: 10px 0 0;
  display: block;
  width: 100%; }

  .category {
    font-size: 12px;
    font-weight: 700;
    color: #333;
    display: inline-block;
    margin-right: 1em; }
    .category.c-1,
    [class^="c-3667"] {
      color: #60a9ec; }
    .category.c-2,
    [class^="c-3595"] {
      color: #63c8ba; }
    .category.c-3,
    [class^="c-3596"] {
      color: #ea676a; }
    .category.c-4,
    [class^="c-3599"] {
      color: #eeb94f; }
    .category.c-5,
    [class^="c-3597"] {
      color: #7b8ca1; }
    .category.c-6,
    [class^="c-3598"] {
      color: #b388ff; }
    .category.c-7,
    [class^="c-3668"],
    [class^="c-8305"] {
      color: #6ada8a; }

time {
  display: inline-block;
  color: #6c6a6a;
  font-size: 12px; }

ul.details_ttl {
  width: 100%;
  margin: 10px 0 0; }
  ul.details_ttl li a {
    font-size: 10px;
    border: none;
    background-color: #f0f1f2;
    padding: 3px 10px;
    color: #888;
    text-decoration: none;
    margin-right: 8px;
    display: inline-block; }
    ul.details_ttl li a:hover {
      opacity: .7;
      text-decoration: underline; }

.profile {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px solid #f0f1f2;
  padding-top: 15px;
  margin-top: 15px;
  width: 100%; }
  .profile .author_photo {
    display: inline-block;
    border-radius: 50%;
    height: auto;
    width: 50px;
    overflow: hidden;
    margin-right: 15px; }
  .profile .profile_name {
    display: inline-block;
    font-size: 10px;
      width: 85%;
    color: #6c6a6a; }
    .profile .profile_name span {
      display: block;
      font-size: 12px;
      color: #333; }

.photo_wrap {
  background: url(/ccl/common/images/blank_thumb.png) center no-repeat;
  background-size: cover; }

.entry_wrap a,
.popular_post_wrap a,
.category_wrap a,
.cv_area a,
.list_col a,
.f_mailmaga a {
  text-decoration: none;
  display: block;
  -webkit-transition: .5s;
  transition: .5s; }
  .entry_wrap a:hover,
  .popular_post_wrap a:hover,
  .category_wrap a:hover,
  .cv_area a:hover,
  .list_col a:hover,
  .f_mailmaga a:hover {
    opacity: .7;
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }

.topNew_entry_inner {
  padding: 25px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .topNew_entry_inner .photo_wrap {
    position: relative;
    width: 50%;
    height: 0;
    padding-top: 33%;
    overflow: hidden; }
    .topNew_entry_inner .photo_wrap img {
      position: absolute;
      display: block;
      width: 100%;
      top: 0;
      left: 0; }
  .topNew_entry_inner .txt_wrap {
    width: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-right: 25px; }
    .topNew_entry_inner .txt_wrap h1 {
      font-size: 21px;
      font-weight: 700;
      margin-bottom: 30px;
      line-height: 1.4; }

.new_entry {
  margin: 20px 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .new_entry:after {
    content: '';
    display: block;
    width: 33%; }
  .new_entry > a {
    max-width: 320px;
    width: 33%;
    background-color: #fff;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 20px; }

.new_entry_items .photo_wrap {
  position: relative;
  margin-bottom: 10px;
  width: 100%;
  height: 0;
  padding-top: 66%;
  overflow: hidden; }
  .new_entry_items .photo_wrap img {
    position: absolute;
    display: block;
    width: 100%;
    top: 0;
    left: 0; }

.new_entry_items h2 {
  font-weight: 700;
  font-size: 16px;
  height: 3em;
  overflow: hidden; }

.new_entry_items time {
  text-align: right; }

.new_entry_items .profile {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }

.new_entry_items.ad {
  background-color: #888; }
  .new_entry_items.ad h2,
  .new_entry_items.ad p,
  .new_entry_items.ad time {
    color: #fff;
    height: auto;
    text-align: center;
    display: block; }
    .new_entry_items.ad h2 span,
    .new_entry_items.ad p span,
    .new_entry_items.ad time span {
      color: #fff !important; }
  .new_entry_items.ad time {
    margin-bottom: 10px; }

.category_title {
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 30px; }
  .category_title:after {
    content: '';
    display: block;
    position: absolute;
    width: 100px;
    height: 1px;
    background-color: #888;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0; }
  .category_title span {
    margin-top: 20px;
    display: block;
    color: #888;
    font-size: 14px; }
    .category_title span.c-1 {
      color: #60a9ec; }
    .category_title span.c-2 {
      color: #63c8ba; }
    .category_title span.c-3 {
      color: #ea676a; }
    .category_title span.c-4 {
      color: #eeb94f; }
    .category_title span.c-5 {
      color: #7b8ca1; }
    .category_title span.c-6 {
      color: #b388ff; }
    .category_title span.c-7 {
      color: #6ada8a; }

.f_copy a:hover svg, .f_nav a:hover svg {
  opacity: 0.5;
  -webkit-transition: .5s;
  transition: .5s; }

.f_copy a:hover {
  text-decoration: underline; }

.series_wrap {
  padding: 80px 0;
  background-color: #333; }
  .series_wrap > div {
    position: relative; }
  .series_wrap h2 {
    position: absolute;
    left: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    font-weight: 700;
    font-size: 24px; }
    .series_wrap h2 span {
      color: #fff;
      display: block;
      font-size: 15px; }
  .series_wrap ul {
    width: 90%;
    max-width: 800px;
    margin: auto; }
    .series_wrap ul li a {
      position: relative;
      display: block;
      -webkit-transition: .5s;
      transition: .5s; }
      .series_wrap ul li a:hover {
        opacity: .7; }
      .series_wrap ul li a div {
        position: absolute;
        width: 70%;
        height: 100%;
        top: 0;
        left: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .series_wrap ul li a div p {
          padding-left: 5%;
          font-weight: 700;
          line-height: 1.4; }
          .series_wrap ul li a div p.title {
            font-size: 24px;
            margin-bottom: 10px; }
          .series_wrap ul li a div p.nav {
            font-size: 14px;
            color: #2665b4; }

.popular_post_wrap {
  padding: 40px 0; }
  .popular_post_wrap .popular_post_inner {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .popular_post_wrap .popular_post_inner > div {
      width: 100%; }
    .popular_post_wrap .popular_post_inner > a {
      width: 49%;
      background-color: #fff;
      padding: 25px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      counter-increment: li;
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .popular_post_wrap .popular_post_inner > a.rank::before {
        position: absolute;
        top: 3px;
        left: 31px;
        color: #333;
        content: counter(li);
        font-size: 15px;
        z-index: 1;
        background-color: transparent;
        -webkit-transform: none;
                transform: none; }
      .popular_post_wrap .popular_post_inner > a.rank::after {
        position: absolute;
        top: 0;
        left: 25px;
        width: 0;
        height: 0;
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg);
        content: "";
        border: 10px solid #ddd;
        border-top: 5px solid transparent;
        border-bottom: 25px solid #ddd; }
      .popular_post_wrap .popular_post_inner > a:first-child::before, .popular_post_wrap .popular_post_inner > a:nth-child(2)::before, .popular_post_wrap .popular_post_inner > a:nth-child(3)::before {
        width: 0;
        height: 0;
        color: #fff;
        border-bottom: 10px solid #ebd272; }
      .popular_post_wrap .popular_post_inner > a:first-child::after, .popular_post_wrap .popular_post_inner > a:nth-child(2)::after, .popular_post_wrap .popular_post_inner > a:nth-child(3)::after {
        border: 10px solid #ebd272;
        border-top: 5px solid transparent;
        border-bottom: 25px solid #ebd272; }
      .popular_post_wrap .popular_post_inner > a:nth-child(2)::after {
        border: 10px solid #c1c5c8;
        border-top: 5px solid transparent;
        border-bottom: 25px solid #c1c5c8; }
      .popular_post_wrap .popular_post_inner > a:nth-child(3)::after {
        border: 10px solid #b28956;
        border-top: 5px solid transparent;
        border-bottom: 25px solid #b28956; }
    .popular_post_wrap .popular_post_inner .pp_items {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: top;
          -ms-flex-align: top;
              align-items: top;
      margin-bottom: 25px; }
      .popular_post_wrap .popular_post_inner .pp_items .photo_wrap {
        position: relative;
        width: 170px;
        height: 150px;
        overflow: hidden; }
        .popular_post_wrap .popular_post_inner .pp_items .photo_wrap img {
          position: absolute;
          top: 0;
          left: 50%;
          width: auto;
          height: 100%;
          -webkit-transform: translate(-50%, 0);
                  transform: translate(-50%, 0); }
      .popular_post_wrap .popular_post_inner .pp_items .txt_wrap {
        width: 250px;
        margin-left: 15px; }
        .popular_post_wrap .popular_post_inner .pp_items .txt_wrap h3 {
          font-weight: 700;
          height: 3em;
          overflow: hidden; }
        .popular_post_wrap .popular_post_inner .pp_items .txt_wrap .profile {
          margin-top: 10px;
          padding-top: 10px; }
          .popular_post_wrap .popular_post_inner .pp_items .txt_wrap .profile .author_photo {
            width: 40px;
            height: 40px;
            margin-right: 10px; }
          .popular_post_wrap .popular_post_inner .pp_items .txt_wrap .profile .profile_name {
            line-height: 1.2;
            width: 80%; }

.category_wrap {
  width: 100%;
  background-color: #fff;
  padding: 40px 0 50px; }

.category_inner {
  width: 90%;
  margin: auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .category_inner > a {
    width: 100px;
    position: relative;
    padding-bottom: 10px; }
    .category_inner > a:after {
      content: '';
      position: absolute;
      z-index: 1;
      width: 100%;
      height: 3px;
      bottom: 0;
      left: 0;
      border-radius: 3px;
      opacity: 0.5;
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
      -webkit-transition: 0.3s;
      transition: 0.3s; }
    .category_inner > a.c-1:after {
      background-color: #60a9ec; }
    .category_inner > a.c-2:after {
      background-color: #63c8ba; }
    .category_inner > a.c-3:after {
      background-color: #ea676a; }
    .category_inner > a.c-4:after {
      background-color: #eeb94f; }
    .category_inner > a.c-5:after {
      background-color: #7b8ca1; }
    .category_inner > a.c-6:after {
      background-color: #b388ff; }
    .category_inner > a.c-7:after {
      background-color: #6ada8a; }
    .category_inner > a:hover {
      opacity: .7;
      -webkit-box-shadow: none;
              box-shadow: none; }
      .category_inner > a:hover:after {
        -webkit-transform: scalex(1);
                transform: scalex(1); }
    .category_inner > a img {
      width: 80px;
      margin: 0 auto 20px;
      display: block; }
    .category_inner > a p {
      width: 300px;
      display: table-cell;
      vertical-align: middle;
      text-align: center;
      font-weight: 700;
      font-size: 14px;
      height: 3em;
      line-height: 1.4; }

.page_details article div.details_ttl {
  color: #333; }
  .page_details article div.details_ttl > h1 {
    font-weight: 700;
    font-size: 24px;
    line-height: 1.4; }
  .page_details article div.details_ttl p {
    font-weight: 500; }
    .page_details article div.details_ttl p:before {
      content: none !important; }
    .page_details article div.details_ttl p.subtitle {
      font-size: 14px;
      color: #6c6c6c;
      margin-bottom: 5px; }
    .page_details article div.details_ttl p.category {
      font-size: 12px;
      font-weight: 700;
      color: #333; }
      .page_details article div.details_ttl p.category.c-1 {
        color: #60a9ec; }
      .page_details article div.details_ttl p.category.c-2 {
        color: #63c8ba; }
      .page_details article div.details_ttl p.category.c-3 {
        color: #ea676a; }
      .page_details article div.details_ttl p.category.c-4 {
        color: #eeb94f; }
      .page_details article div.details_ttl p.category.c-5 {
        color: #7b8ca1; }
      .page_details article div.details_ttl p.category.c-6 {
        color: #b388ff; }
      .page_details article div.details_ttl p.category.c-7 {
        color: #6ada8a; }
  .page_details article div.details_ttl .profile {
    border-top: 1px solid #f0f1f2;
    padding-top: 10px; }
  .page_details article div.details_ttl div ul.details_ttl {
    width: 100%;
    margin: 10px 0 0; }
    .page_details article div.details_ttl div ul.details_ttl li a {
      font-size: 10px;
      border: none;
      background-color: #f0f1f2;
      padding: 3px 10px;
      border-radius: 0px;
      color: #888;
      -webkit-transition: .5s;
      transition: .5s; }
      .page_details article div.details_ttl div ul.details_ttl li a:hover {
        opacity: .7;
        -webkit-transform: translateY(-3px);
                transform: translateY(-3px); }

.page_details article table,
.page_details article tr,
.page_details article th,
.page_details article td {
  font-size: 14px;
  color: #333; }

.page_details .body_txt a {
  color: #2665b4;
  -webkit-transition: .5s;
  transition: .5s; }
  .page_details .body_txt a:hover {
    opacity: .7; }
  .page_details .body_txt p a[target="_blank"]:after {
    content: '';
    background: url(/ccl/common/images/blank.svg) no-repeat;
    background-size: contain;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-left: 5px;}

.page_details .body_txt div.lead {
  font-size: 15px;
  font-weight: 700;
  background-color: #f0f1f2;
  padding: 15px; }
  .page_details .body_txt div.lead small {
    display: block;
    margin-top: 10px;
    font-size: 80%; }
  .page_details .body_txt div.lead span {
    font-weight: 700; }

.page_details .body_txt p {
  font-size: 16px;
  line-height: 1.85;
  font-weight: 500; }
  .page_details .body_txt p a {
    display: inline; }
    .page_details .body_txt p a:hover {
      text-decoration: none;
      -webkit-box-shadow: none;
              box-shadow: none; }
  .page_details .body_txt p.subtitle {
    font-size: 14px;
    color: #6c6c6c;
    margin-bottom: 5px; }
  .page_details .body_txt p.interviewer {
    position: relative;
    margin: 2em auto;
    font-weight: bold;
    text-indent: 2em; }
    .page_details .body_txt p.interviewer:before {
      content: '';
      position: absolute;
      top: 0.9em;
      left: 0;
      width: 1.9em;
      height: 1px;
      background: #333; }
  .page_details .body_txt p .bold {
    font-weight: 700;
    text-decoration: none; }
  .page_details .body_txt p a {
    color: #2665b4;
    text-decoration: underline; }

.page_details .body_txt h2 {
  border: none;
  border-left: 5px solid #2665b4;
  font-weight: 700;
  padding: 0 10px;
  font-size: 18px;
  margin: 2.5em 0 2em; }
  .page_details .body_txt h2 small {
    display: block;
    font-size: 80%; }
  .page_details .body_txt h2.c-1 {
    border-color: #60a9ec; }
  .page_details .body_txt h2.c-2 {
    border-color: #63c8ba; }
  .page_details .body_txt h2.c-3 {
    border-color: #ea676a; }
  .page_details .body_txt h2.c-4 {
    border-color: #eeb94f; }
  .page_details .body_txt h2.c-5 {
    border-color: #7b8ca1; }
  .page_details .body_txt h2.c-6 {
    border-color: #b388ff; }
  .page_details .body_txt h2.c-7 {
    border-color: #6ada8a; }
  .page_details .body_txt h2.h2-sp {
    border: none;
    padding: 10px;
    font-size: 20px;
    background: #e4f0fa; }
    .page_details .body_txt h2.h2-sp p, .page_details .body_txt h2.h2-sp span {
      margin-bottom: 0;
      font-size: 14px; }

.page_details .body_txt h3 {
  padding: 0 0 5px;
  margin: 2.5em 0 2em;
  border: none;
  border-bottom: 1px solid #2665b4;
  font-size: 18px;
  font-weight: 700; }
  .page_details .body_txt h3.c-1 {
    border-color: #60a9ec; }
  .page_details .body_txt h3.c-2 {
    border-color: #63c8ba; }
  .page_details .body_txt h3.c-3 {
    border-color: #ea676a; }
  .page_details .body_txt h3.c-4 {
    border-color: #eeb94f; }
  .page_details .body_txt h3.c-5 {
    border-color: #7b8ca1; }
  .page_details .body_txt h3.c-6 {
    border-color: #b388ff; }
  .page_details .body_txt h3.c-7 {
    border-color: #6ada8a; }

.page_details .body_txt h4 {
  font-weight: 700;
  font-size: 16px;
  border: none;
  padding: 0;
  margin-bottom: 10px; }

.page_details .body_txt hr {
  margin: 2em auto;
  border: 0;
  background-color: #f0f1f2;
  height: 1px; }

.page_details .body_txt .caption {
  display: block;
  margin: 5px auto 30px;
  font-size: 12px;
  line-height: 1.4; }

.page_details .body_txt .img_f {
  display: inline; }

.page_details .body_txt .img_c {
  margin: 0 auto; }

.page_details .body_txt .img_cf {
  display: block;
  overflow: hidden; }

.page_details .body_txt ul {
  margin-bottom: 1em;
  background-color: #f8f9fa;
  padding: 15px 20px; }
  .page_details .body_txt ul li {
    margin-bottom: .5em;
    font-size: 14px;
    font-weight: 700;
    position: relative;
    padding-left: 20px;
    color: #444; }
    .page_details .body_txt ul li:before {
      display: block;
      content: '';
      position: absolute;
      top: .5em;
      left: 0;
      width: 6px;
      height: 6px;
      background-color: #888;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    .page_details .body_txt ul li:last-child {
      margin-bottom: 0; }
  .page_details .body_txt ul.none li {
    padding-left: 0; }
    .page_details .body_txt ul.none li:before {
      display: none; }
  .page_details .body_txt ul.check li:before {
    background-color: transparent; }
  .page_details .body_txt ul.check li::after {
    display: block;
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 8px;
    height: 3px;
    border-left: 2px solid #888;
    border-bottom: 2px solid #888;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .page_details .body_txt ul.rank li {
    counter-increment: li; }
    .page_details .body_txt ul.rank li::before {
      position: absolute;
      top: 3px;
      left: 2.5px;
      color: #333;
      content: counter(li);
      font-size: 10px;
      z-index: 1;
      background-color: transparent;
      -webkit-transform: none;
              transform: none; }
    .page_details .body_txt ul.rank li::after {
      position: absolute;
      top: 4px;
      left: -2px;
      width: 0;
      height: 0;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg);
      content: "";
      border: 7px solid #ddd;
      border-top: 3px solid transparent;
      border-bottom: 15px solid #ddd; }
    .page_details .body_txt ul.rank li:first-child::before, .page_details .body_txt ul.rank li:nth-child(2)::before, .page_details .body_txt ul.rank li:nth-child(3)::before {
      width: 0;
      height: 0;
      color: #fff;
      border-bottom: 10px solid #ebd272; }
    .page_details .body_txt ul.rank li:first-child::after, .page_details .body_txt ul.rank li:nth-child(2)::after, .page_details .body_txt ul.rank li:nth-child(3)::after {
      border: 7px solid #ebd272;
      border-top: 3px solid transparent;
      border-bottom: 15px solid #ebd272; }
    .page_details .body_txt ul.rank li:nth-child(2)::after {
      border: 7px solid #c1c5c8;
      border-top: 3px solid transparent;
      border-bottom: 15px solid #c1c5c8; }
    .page_details .body_txt ul.rank li:nth-child(3)::after {
      border: 7px solid #b28956;
      border-top: 3px solid transparent;
      border-bottom: 15px solid #b28956; }

.page_details .body_txt dl {
  background-color: #f8f9fa;
  font-size: 14px;
  padding: 15px 20px;
  color: #444;
  margin-bottom: 1em; }
  .page_details .body_txt dl dt {
    font-weight: 700;
    margin-bottom: .5em;
    font-size: 110%; }
  .page_details .body_txt dl dd {
    margin-bottom: 1em; }
    .page_details .body_txt dl dd:last-child {
      margin: 0; }

.page_details .body_txt figure {
  width: 100%;
  max-width: 550px;
  margin: 40px auto; }
  .page_details .body_txt figure figcaption {
    margin-bottom: 15px;
    text-align: center;
    font-size: 14px;
    font-weight: bold; }
  .page_details .body_txt figure img {
    display: block;
    width: 100%;
    border: solid 1px #2665b4; }

.page_details .body_txt table td {
  padding: 10px; }
  .page_details .body_txt table td:first-child {
    width: 20%;
    text-align: center; }

.page_details .body_txt .list_pagenation {
  padding: 30px 0 50px;
  background-color: transparent; }
  .page_details .body_txt .list_pagenation li {
    padding: 0; }
    .page_details .body_txt .list_pagenation li:before {
      content: none; }
  .page_details .body_txt .list_pagenation a {
    color: #444; }

.page_details .body_txt .column_wrap {
  border: 1px solid #eee;
  margin-bottom: 40px;
  padding-top: 20px;
  padding-right: 30px;
  padding-left: 30px; }
  .page_details .body_txt .column_wrap h3 {
    margin: 0 0 15px; }
  .page_details .body_txt .column_wrap p {
    font-size: 14px; }
    .page_details .body_txt .column_wrap p.subtitle {
      margin-top: 0; }

.page_details .body_txt .profile_wrap {
  margin: 40px 0;
  padding: 30px;
  background: #f8f9fa;
  overflow: hidden;
  border: none; }
  .page_details .body_txt .profile_wrap img {
    display: block;
    width: 150px;
    float: left;
    margin-right: 20px; }
  .page_details .body_txt .profile_wrap .name {
    padding: 0 0 10px;
    margin: 0 0 10px;
    -webkit-font-feature-settings: 'palt';
            font-feature-settings: 'palt';
    font-size: 14px;
    font-weight: bold;
    border-top: none;
    line-height: 1.6; }
    .page_details .body_txt .profile_wrap .name span {
      display: block;
      font-size: 16px;
      font-weight: 700; }
  .page_details .body_txt .profile_wrap p {
    margin: 0 !important;
    text-indent: 0 !important;
    font-size: 14px !important;
    line-height: 1.6 !important; }

.page_details .body_txt .cv_wrap {
  padding: 0 0 15px; }
  .page_details .body_txt .cv_wrap h4 {
    width: 100%;
    text-align: center;
    background-color: #2665b4;
    color: #fff;
    padding: 10px 0; }
  .page_details .body_txt .cv_wrap p {
    padding: 0 20px; }

.page_details .body_txt .btn {
  margin: 50px auto;
  text-align: center; }
  .page_details .body_txt .btn p {
    font-size: 14px;
    font-weight: 700; }

.page_details aside {
  margin-top: 30px; }
  .page_details aside .ccm-block-tags-wrapper {
    margin-bottom: 2em; }
    .page_details aside .ccm-block-tags-wrapper h5 {
      margin-bottom: 20px;
      font-size: 14px;
      color: #444;
      border-bottom: solid 1px #f0f0f0; }
    .page_details aside .ccm-block-tags-wrapper a {
      border: none;
      background-color: #f0f1f2;
      padding: 3px 10px;
      border-radius: 0px;
      font-size: 12px;
      margin-bottom: 2px;
      -webkit-transition: .5s;
      transition: .5s;
      text-decoration: none;
      display: inline-block; }
      .page_details aside .ccm-block-tags-wrapper a span {
        color: #888; }
      .page_details aside .ccm-block-tags-wrapper a:hover {
        opacity: .7;
        -webkit-transform: translateY(-3px);
                transform: translateY(-3px); }
  .page_details aside h3 {
    margin-bottom: 20px;
    font-size: 14px;
    color: #444;
    border-bottom: solid 1px #f0f0f0;
    font-weight: 700; }
  .page_details aside .entry_list > div ul.cate_date {
    margin-bottom: 2px; }
    .page_details aside .entry_list > div ul.cate_date li.date {
      font-family: 'Arial', 'YuGothic', 'Yu Gothic', Hiragino Sans, 'ヒラギノ角ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif;
      font-weight: 500;
      font-size: 12px;
      color: #999; }
      .page_details aside .entry_list > div ul.cate_date li.date:before {
        display: none; }
  .page_details aside ul.list_col {
    padding: 0; }
    .page_details aside ul.list_col > li.list_img_left {
      width: 100%;
      margin-bottom: 20px; }
      .page_details aside ul.list_col > li.list_img_left a {
        display: block;
        width: 100%;
        padding: 10px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, #888));
        background-image: linear-gradient(to right, transparent 50%, #888 50%);
        background-position: 0 0;
        background-size: 200% auto;
        -webkit-transition: .3s;
        transition: .3s; }
        .page_details aside ul.list_col > li.list_img_left a h2,
        .page_details aside ul.list_col > li.list_img_left a p,
        .page_details aside ul.list_col > li.list_img_left a time {
          -webkit-transition: .5s;
          transition: .5s; }
        .page_details aside ul.list_col > li.list_img_left a:hover {
          background-position: -100% 0;
          opacity: 1; }
          .page_details aside ul.list_col > li.list_img_left a:hover h2,
          .page_details aside ul.list_col > li.list_img_left a:hover p,
          .page_details aside ul.list_col > li.list_img_left a:hover time {
            color: #fff; }
      .page_details aside ul.list_col > li.list_img_left section > p img {
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); }
      .page_details aside ul.list_col > li.list_img_left section div.list_type01 h2 {
        margin: 0;
        font-family: 'Arial', 'YuGothic', 'Yu Gothic', Hiragino Sans, 'ヒラギノ角ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif;
        font-weight: 500;
        font-size: 13px;
        -webkit-font-feature-settings: 'pkna';
                font-feature-settings: 'pkna';
        line-height: 1.4; }
  .page_details aside .btn_base.btn_blue {
    font-weight: 700; }

.cv_area {
  margin-top: 50px;
  background-color: #2665b4;
  padding: 50px 0; }
  .cv_area h3 {
    color: #fff;
    text-align: center;
    font-size: 24px;
    margin-bottom: 1em;
    font-weight: 700; }
    .cv_area h3 br {
      display: none; }
  .cv_area p {
    text-align: center;
    color: #fff;
    font-size: 18px;
    margin-bottom: 2em;
    line-height: 2; }
  .cv_area a {
    width: 250px;
    margin: auto;
    text-align: center;
    padding: 15px 0;
    color: #2665b4;
    display: block;
    background-color: #fff;
    font-weight: 700;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    padding: 20px;
    border: 2px solid #f7f7f7;
    text-align: center;
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    -webkit-transition: .3s;
    transition: .3s; }
    .cv_area a:after {
      position: absolute;
      -webkit-transition: .3s;
      transition: .3s;
      content: '';
      width: 0;
      left: 50%;
      bottom: 0;
      height: 3px;
      background: #2665b4;
      height: 120%;
      left: -10%;
      -webkit-transform: skewX(15deg);
      transform: skewX(15deg);
      z-index: -1; }
    .cv_area a:hover {
      color: #fff;
      opacity: .99; }
      .cv_area a:hover:after {
        width: 120%;
        left: -10%; }

.f_mailmaga {
  margin: 50px 0 10px;
  background: #ebeff2; }
  .f_mailmaga .maxWbase > div {
    width: 50%; }
  .f_mailmaga .maxWbase > div:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    background-image: url(/ccl/common/images/bg_mm.jpg);
    background-size: cover; }
  .f_mailmaga.mailmaga01 .maxWbase > div:first-child {
    background-image: url(/ccl/common/images/bg_mm_pc.jpg); }
    .f_mailmaga .maxWbase > div:first-child h3 {
      color: #fff;
      font-size: 22px;
      font-weight: 700; }
    .f_mailmaga .maxWbase > div:first-child p {
      color: #fff;
      font-size: 18px; }
  .f_mailmaga .maxWbase > div:last-child {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 30px; }
    .f_mailmaga .maxWbase > div:last-child p {
      margin-bottom: 20px;
      font-size: 14px;
      line-height: 1.6; }
    .f_mailmaga .maxWbase > div:last-child a {
      width: 80%;
      text-align: center;
      font-weight: 700; }

footer {
  background-color: #fff; }
  footer .f_nav {
    border: none; }
    footer .f_nav .maxWbase {
      padding-bottom: 30px;
      border-bottom: 1px solid #f0f1f2; }
  footer .mrA {
    width: 25%;
    padding-right: 4%; }
  footer .maxW650px {
    width: 65%;
    padding-left: 5%;
    border-left: solid 1px #ccc;
    font-size: 13px; }
    footer .maxW650px small {
      display: block;
      margin-top: 10px;
      font-size: 11px; }

.ccldot_main .entry_wrap > div {
  padding: 15px 0 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.ccldot_main .entry_wrap h3 {
  padding: 0 0 1em;
  margin: 1em auto 2em;
  border: none;
  border-bottom: 1px solid #888;
  font-size: 18px;
  font-weight: 700;
  max-width: 100px;
  text-align: center; }

.ccldot_main .entry_wrap .search_form {
  position: relative; }

.ccldot_main .entry_wrap .searchBox {
  position: relative;
  width: 90%;
  max-width: 800px;
  margin: auto; }

.ccldot_main .entry_wrap input[type="text"]:focus {
  outline: 0; }

.ccldot_main .entry_wrap .search_txtbox {
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  display: block;
  border: 1px solid #ddd; }

.ccldot_main .entry_wrap .search_btn {
  position: absolute;
  right: 10px;
  top: 10px;
  bottom: 0;
  background: none;
  color: #666;
  border: none;
  font-size: 20px; }

.ccldot_main .entry_wrap .search_result div h3 {
  max-width: none;
  font-size: 14px;
  text-align: left;
  border-bottom: none;
  font-weight: 700px;
  margin: 0 auto; }

.ccldot_main .entry_wrap .search_result div div h3 {
  font-size: 16px;
  padding-bottom: 0; }

.search_result {
  width: 600px;
  padding-top: 30px; }
  .search_result .search_name {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 1em; }
    .search_result .search_name span {
      font-size: 14px; }
  .search_result .popular_post_inner .pp_items {
    width: 100%;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    border: 1px solid #f3f3f3;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 15px; }
    .search_result .popular_post_inner .pp_items .txt_wrap {
      width: 100%; }
    .search_result .popular_post_inner .pp_items .photo_wrap {
      border: 1px solid #eee;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
  .search_result .ccm-pagination-wrapper {
    margin-top: 20px; }
    .search_result .ccm-pagination-wrapper .list_pagenation {
      padding-bottom: 0; }

.ccm-pagination-wrapper {
  margin-top: 20px; }
  .ccm-pagination-wrapper a:hover {
    -webkit-transform: none;
            transform: none;
    -webkit-box-shadow: none;
            box-shadow: none; }

.slick-dots li button:before {
  color: #fff; }

.slick-dots li.slick-active button:before {
  color: #fff; }

  @media screen and (max-width: 1024px) {
    .content > article {
      width: 58.6vw; }
    .maxWbase {
      width: 97%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    header > div nav .hNav {
      width: 100%;
      font-size: 11px; }
    .series_wrap {
      padding: 20px 0 40px; }
      .series_wrap h2 {
        position: relative;
        padding-left: 5%;
        margin-bottom: 10px;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb; }
    .popular_post_wrap .popular_post_inner {
      display: block; }
      .popular_post_wrap .popular_post_inner > a {
        width: 95%;
        max-width: 720px;
        margin-left: auto;
        margin-right: auto; }
      .popular_post_wrap .popular_post_inner .pp_items .txt_wrap {
        width: calc(100% - 185px); }
    .category_inner {
      width: 96%; }
      .category_inner > a {
        width: 14.2%; }
        .category_inner > a img {
          width: 80%;
          margin: 0 auto 20px;
          display: block; }
        .category_inner > a p {
          width: 90%;
          margin: 0 auto;
          display: block;
          font-size: 12px;
          height: auto; } }

  @media screen and (max-width: 768px) {
    .new_entry > a {
      max-width: 500px;
      width: 49%; }
    .series_wrap ul li a div p.title {
      font-size: 20px; } }

@media screen and (max-width: 640px) {
    body header > div > div p, body footer > div > div p {
      font-size: 8px;
      -webkit-font-feature-settings: "palt";
              font-feature-settings: "palt"; }
    header img main img, main img main img, footer img main img,
    header svg main img, main svg main img, footer svg main img {
      width: 100%;
      height: auto;
      vertical-align: bottom; }
    header > div > div {
      padding-left: 15px;
      padding-right: 15px; }
    header {
      z-index: 60;
      width: 100%;
      background-color: #fff; }
    header .subMenu li:first-child, header .subMenu li:last-child {
      display: none; }
    header .subMenu li:nth-child(2) {
      margin-right: 50px;
      margin-top: 14px; }
      header .subMenu li:nth-child(2):before {
        width: 20px;
        height: 20px;
        display: block;
        background-size: contain; }
      header .subMenu li:nth-child(2) span {
        display: none; }
          .f_mailmaga.mailmaga01 .maxWbase > div:first-child {
    background-image: url(/ccl/common/images/bg_mm_sp.jpg); }
  footer > div {
    padding: 0 25px; }
    footer > div > div {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      footer > div > div > p, footer > div > div > nav {
        width: 100%; }
        footer > div > div > p svg, footer > div > div > nav svg {
          width: 50%; }
      footer > div > div nav ul {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        footer > div > div nav ul li {
          width: 100%; }
    footer .ccl_member {
      padding: 25px 15px;
      font-size: 13px; }
      footer .ccl_member p {
        font-weight: normal;
        line-height: 1.5; }
      footer .ccl_member svg {
        margin-left: 0;
        width: 100%;
        height: auto;
        left: 0; }
      footer .ccl_member > div ul {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        footer .ccl_member > div ul li {
          margin: 0 0 20px;
          width: 100%;
          font-size: 11px; }
          footer .ccl_member > div ul li:last-child {
            margin-bottom: 0; }
    footer .f_mailmaga > div {
      display: block;
      width: 100%; }
      footer .f_mailmaga > div:first-child {
        padding: 70px 0; }
        footer .f_mailmaga > div:first-child h3 {
          font-size: 24px; }
        footer .f_mailmaga > div:first-child p {
          font-size: 12px; }
      footer .f_mailmaga > div:last-child {
        padding: 20px;
        font-size: 13px;
        line-height: 1.5; }
    footer .f_nav div {
      padding: 0 15px; }
      footer .f_nav div nav {
        padding-top: 20px; }
    section.topNewcatColor00:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor01:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor02:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor03:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor04:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor05:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor06:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor07:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    section.topNewcatColor08:before {
      width: 300px;
      height: 300px;
      top: -10%;
      right: -30%; }
    .top_cate {
      padding: 20px 40px 0;
      margin-bottom: 0;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top_cate li {
        margin-bottom: 10px;
        width: 42%;
        font-size: 13px;
        -webkit-font-feature-settings: "palt";
                font-feature-settings: "palt"; }
        .top_cate li span {
          font-size: 10px; }
  nav.h_nav {
    display: none; }
    nav .fNav {
      font-size: 12px; }
      nav .fNav li {
        text-align: left;
        padding-left: 0; }
  header div label {
    display: block;
    cursor: pointer;
    background-color: #fff;
    position: absolute;
    right: 18px;
    top: 25px;
    width: 25px;
    height: 20px; }
    header div label:before, header div label:after {
      content: '';
      display: block;
      width: 100%;
      height: 7px;
      position: absolute;
      border-top: #000 solid 2px;
      border-bottom: #000 solid 2px; }
    header div label:after {
      border-bottom: none;
      height: 0;
      bottom: 0; }
    header div label.ico_close:before {
      height: 0px;
      top: 10px;
      border-bottom: none;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transition: .5s;
      transition: .5s; }
    header div label.ico_close:after {
      top: 10px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      -webkit-transition: .5s;
      transition: .5s; }
    input#mNav:checked ~ nav.h_nav {
      display: block; }
    .entry_new > div {
      padding: 40px 15px 30px; }
      .entry_new > div ul.cate_date li {
        margin-right: 1em;
        font-size: 9px; }
        .entry_new > div ul.cate_date li svg {
          width: 12px; }
          .entry_list > div ul.cate_date li:nth-child(2):before, .entry_list > div ul.cate_date li.date:before {
            width: 12px;
            height: 12px; }
      .entry_list > div {
        padding: 40px 15px 30px; }
      .list_type01 h1, .list_type01 h2 {
        font-size: 24px; }
      .list_type01 p.entry_series {
        font-size: 12px;
        line-height: 1.5; }
      .list_type01 ul {
        font-size: 10px; }
        .list_type01 ul.prof li.cate01, .list_type01 ul.prof li.cate02, .list_type01 ul.prof li.cate03, .list_type01 ul.prof li.cate04, .list_type01 ul.prof li.cate05, .list_type01 ul.prof li.member_photo {
          width: 40px;
          height: 40px; }
        .list_col > li .entry_list:before {
          margin-bottom: 25px;
          width: 6px;
          height: 5px; }
          .list_col > li .entry_list div.list_type01 h2 {
            font-size: 18px; }
        .list_col > li .entry_list div {
          padding: 20px 0 20px; }
            .list_col > li.list_img_left section div.list_type01 h2 {
              font-size: 15px; }
          .list_col > li.list_img_left section div {
            padding: 0 0 20px; }
          .list_col > li.list_img_left section > p {
            margin-right: 10px;
            height: 100px;
            width: 240px; }
    .list_col {
      padding-left: 15px;
      padding-right: 15px;
      padding-top: 0; }
      .list_col > li {
        width: 100%; }
    .list_col ul.prof li.cate01, .list_col ul.prof li.cate02, .list_col ul.prof li.cate03, .list_col ul.prof li.cate04, .list_col ul.prof li.cate05, .list_col ul.prof li.member_photo {
      width: 30px;
      height: 30px; }
        .list_col.list_col2 > li:nth-child(odd), .list_col.list_col2 > div:nth-child(odd) {
          margin-top: 0; }
    .list_col.list_col2 {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .list_col.list_col2 > li {
        width: 100%; }
        .list_col.list_col3 > li:nth-child(3n+1) {
          margin-top: 0; }
        .list_col.list_col3 > li:nth-child(3n+2) {
          margin-top: 0; }
    .list_col.list_col3 {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .list_col.list_col3 > li {
        width: 100%;
        margin-bottom: 0; }
      .list_col.list_col3.list_col {
        padding-top: 10px; }
    .member_list {
      padding-left: 15px;
      padding-right: 15px; }
      .member_list li {
        margin-bottom: 10px;
        width: 100%;
        font-size: 12px; }
        .member_list li span {
          width: 80px; }
        .member_list li p em {
          display: block;
          padding-top: 5px;
          font-weight: bold; }
    .ttl_t01 {
      margin-bottom: 30px;
      padding: 20px 0;
      font-size: 26px; }
      .ttl_t01 span {
        font-size: 12px; }
      .ttl_t01:before {
        width: 6px;
        height: 6px; }
    .ttl_t02 {
      margin: 0 15px; }
    .ttl_t03 {
      font-size: 24px;
      padding: 15px; }
    .ttl_t04 {
      font-size: 26px; }
      .ttl_t04 span {
        font-size: 12px; }
    .ttl_t05 {
      font-size: 18px; }
    .ttl01 {
      padding: 10px 0;
      font-size: 16px; }
    .btn_base {
      padding: 15px 0;
      max-width: 100%;
      font-size: 14px; }
    .link_function {
      right: 5px; }
      .link_function li {
        overflow: hidden;
        width: 42px; }
        .link_function li a:before {
          width: 30px;
          height: 30px; }
        .link_function li:nth-child(2) {
          display: none; }
    .page_details article div.details_ttl p {
      font-size: 14px; }
    .page_details article div.details_ttl h1 {
      font-size: 22px; }
    .page_details article div.details_ttl div {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .page_details article div.details_ttl div p:before {
            width: 12px;
            height: 12px; }
        .page_details article div.details_ttl div p {
          font-size: 12px; }
            .page_details article div.details_ttl div ul.details_ttl li a {
              padding: 3px 5px;
              font-size: 12px; }
        .page_details article div.details_ttl ul.prof li.catColor00 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor00:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor01 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor01:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor02 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor02:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor03 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor03:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor04 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor04:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor05 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor05:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor06 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor06:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor07 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor07:after {
          width: 32px;
          height: 32px; }
        .page_details article div.details_ttl ul.prof li.catColor08 img {
          width: 20px;
          height: 20px; }
        .page_details article div.details_ttl ul.prof li.catColor08:after {
          width: 32px;
          height: 32px; }
          .page_details article div.details_ttl ul.prof li.member_photo {
            padding-top: 6px;
            height: 30px; }
            .page_details article div.details_ttl ul.prof li.member_photo div p {
              width: 70%; }
              .page_details article div.details_ttl ul.prof li.member_photo div p.author_photo {
                margin-right: 1em;
                width: 30px;
                height: 30px; }
              .page_details article div.details_ttl ul.prof li.member_photo div p a, .page_details article div.details_ttl ul.prof li.member_photo div p span {
                margin-left: 0em;
                display: inline-block;
                font-weight: normal;
                font-size: 12px; }
      .page_details article div.details_ttl ul.prof {
        margin-bottom: 10px; }
        .page_details article div.details_ttl ul.prof li {
          padding: 0 6px 5px; }
      .page_details .body_txt div.flex_div {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .page_details .body_txt div.flex_div div {
          width: 100%;
          margin: 0 0 20px; }
      .page_details .body_txt p {
        font-size: 15px; }
      .page_details .body_txt figure figcaption {
        font-size: 12px; }
      .page_details .body_txt h2 {
        font-size: 16px; }
      .page_details .body_txt .waku01 > h3, .page_details .body_txt .waku01 > h4 {
        padding: 8px 20px; }
    .page_details .body_txt div.ccm-layout-column {
      width: 100% !important;
      float: none; }
      .page_details .body_txt div.ccm-layout-column div.ccm-layout-column-inner {
        margin: 0 0 20px !important; }
        .page_details .body_txt .profile_wrap img {
    float: none;
    margin: 0 auto 10px; }
    .page_details .body_txt .profile_wrap .name {
        text-align: center; }
    .page_details {
      padding-left: 15px;
      padding-right: 15px;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .page_details article, .page_details aside {
        width: 100%; }
    .waku01 {
      padding: 30px 15px 0; }
      .waku01 > h3, .waku01 > h4 {
        padding-top: 9px;
        font-size: 16px; }
        .waku01 > h3:after, .waku01 > h4:after {
          border: 22px solid #095697;
          border-right: 18px solid transparent; }
      .waku01 div h3, .waku01 div h4 {
        font-size: 18px;
        margin-bottom: 10px; }
      .flex_col2 div, .flex_col2 p, .flex_col2 li {
        width: 100%; }
    .modal #modal01:target {
      top: 10%;
      margin-left: -47%;
      max-width: 90%; }
      .modal #modal01:target img {
        width: 100%;
        height: 100%; }
    div .img_f div.img_left, div .img_f div.img_right {
      margin: 0 0 15px;
      float: none; }
    div .img_f div.img_right.sp_size_none{
    margin: 0 0 15px 10px;
    float: right; }
    div .img_f div.txC.sp_size_none{
    text-align: left; }
    div .img_f div.img_left.sp_size_none{
    margin: 0 10px 15px 0;
    float: left; }
    div .img_f div.w0 {
      width: 100%; }
    div .img_f div.w10 {
      width: 100%; }
    div .img_f div.w20 {
      width: 100%; }
    div .img_f div.w30 {
      width: 100%; }
    div .img_f div.w40 {
      width: 100%; }
    div .img_f div.w50 {
      width: 100%; }
    div .img_f div.w60 {
      width: 100%; }
    div .img_f div.w70 {
      width: 100%; }
    div .img_f div.w80 {
      width: 100%; }
    div .img_f div.w90 {
      width: 100%; }
    div .img_f div.w100 {
      width: 100%; }
  .bg_ccl:after {
    display: none; }
  .tag_keyword p {
    font-size: 14px;
    margin-bottom: 35px; }
  .tag_keyword ul {
    padding-left: 15px;
    padding-right: 15px; }
    .tag_keyword ul li a {
      font-size: 9px; }
    .list_keyword_menu {
      padding: 25px 0 35px;
      overflow-x: auto; }
      .list_keyword_menu ul {
        min-width: 600px;
        max-width: 1500px;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
        .list_keyword_menu ul li {
          margin: 0 10px; }
          .list_keyword_menu ul li a {
            display: block;
            -webkit-box-sizing: border-box;
                    box-sizing: border-box; }
    .bottom_con01 {
      padding: 20px 0; }
      .bottom_con01 div p {
        padding: 0 15px;
        font-size: 13px; }
      .bottom_con01 div ul {
        padding: 0 15px;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .bottom_con01 div ul li {
          margin-bottom: 10px;
          width: 100%; }
      .bottom_con02 div ul {
        padding: 10px 10px 0; }
        .bottom_con02 div ul li {
          margin-bottom: 10px;
          width: 48%;
          font-size: 12px; }
          .bottom_con02 div ul li a {
            padding: 15px 5px;
            font-size: 11px;
            text-align: center; }
            .bottom_con02 div ul li a:before {
              margin: 0 auto 5px;
              display: block;
              width: 23px;
              height: 21px; }
  .m0 {
    margin: 0px; }
  .mt0 {
    margin-top: 0px; }
  .mr0 {
    margin-right: 0px; }
  .mb0 {
    margin-bottom: 0px; }
  .ml0 {
    margin-left: 0px; }
  .p0 {
    padding: 0px; }
  .pt0 {
    padding-top: 0px; }
  .pr0 {
    padding-right: 0px; }
  .pb0 {
    padding-bottom: 0px; }
  .pl0 {
    padding-left: 0px; }
  .m5 {
    margin: 2.5px; }
  .mt5 {
    margin-top: 2.5px; }
  .mr5 {
    margin-right: 2.5px; }
  .mb5 {
    margin-bottom: 2.5px; }
  .ml5 {
    margin-left: 2.5px; }
  .p5 {
    padding: 2.5px; }
  .pt5 {
    padding-top: 2.5px; }
  .pr5 {
    padding-right: 2.5px; }
  .pb5 {
    padding-bottom: 2.5px; }
  .pl5 {
    padding-left: 2.5px; }
  .m10 {
    margin: 5px; }
  .mt10 {
    margin-top: 5px; }
  .mr10 {
    margin-right: 5px; }
  .mb10 {
    margin-bottom: 5px; }
  .ml10 {
    margin-left: 5px; }
  .p10 {
    padding: 5px; }
  .pt10 {
    padding-top: 5px; }
  .pr10 {
    padding-right: 5px; }
  .pb10 {
    padding-bottom: 5px; }
  .pl10 {
    padding-left: 5px; }
  .m15 {
    margin: 7.5px; }
  .mt15 {
    margin-top: 7.5px; }
  .mr15 {
    margin-right: 7.5px; }
  .mb15 {
    margin-bottom: 7.5px; }
  .ml15 {
    margin-left: 7.5px; }
  .p15 {
    padding: 7.5px; }
  .pt15 {
    padding-top: 7.5px; }
  .pr15 {
    padding-right: 7.5px; }
  .pb15 {
    padding-bottom: 7.5px; }
  .pl15 {
    padding-left: 7.5px; }
  .m20 {
    margin: 10px; }
  .mt20 {
    margin-top: 10px; }
  .mr20 {
    margin-right: 10px; }
  .mb20 {
    margin-bottom: 10px; }
  .ml20 {
    margin-left: 10px; }
  .p20 {
    padding: 10px; }
  .pt20 {
    padding-top: 10px; }
  .pr20 {
    padding-right: 10px; }
  .pb20 {
    padding-bottom: 10px; }
  .pl20 {
    padding-left: 10px; }
  .m25 {
    margin: 12.5px; }
  .mt25 {
    margin-top: 12.5px; }
  .mr25 {
    margin-right: 12.5px; }
  .mb25 {
    margin-bottom: 12.5px; }
  .ml25 {
    margin-left: 12.5px; }
  .p25 {
    padding: 12.5px; }
  .pt25 {
    padding-top: 12.5px; }
  .pr25 {
    padding-right: 12.5px; }
  .pb25 {
    padding-bottom: 12.5px; }
  .pl25 {
    padding-left: 12.5px; }
  .m30 {
    margin: 15px; }
  .mt30 {
    margin-top: 15px; }
  .mr30 {
    margin-right: 15px; }
  .mb30 {
    margin-bottom: 15px; }
  .ml30 {
    margin-left: 15px; }
  .p30 {
    padding: 15px; }
  .pt30 {
    padding-top: 15px; }
  .pr30 {
    padding-right: 15px; }
  .pb30 {
    padding-bottom: 15px; }
  .pl30 {
    padding-left: 15px; }
  .m35 {
    margin: 17.5px; }
  .mt35 {
    margin-top: 17.5px; }
  .mr35 {
    margin-right: 17.5px; }
  .mb35 {
    margin-bottom: 17.5px; }
  .ml35 {
    margin-left: 17.5px; }
  .p35 {
    padding: 17.5px; }
  .pt35 {
    padding-top: 17.5px; }
  .pr35 {
    padding-right: 17.5px; }
  .pb35 {
    padding-bottom: 17.5px; }
  .pl35 {
    padding-left: 17.5px; }
  .m40 {
    margin: 20px; }
  .mt40 {
    margin-top: 20px; }
  .mr40 {
    margin-right: 20px; }
  .mb40 {
    margin-bottom: 20px; }
  .ml40 {
    margin-left: 20px; }
  .p40 {
    padding: 20px; }
  .pt40 {
    padding-top: 20px; }
  .pr40 {
    padding-right: 20px; }
  .pb40 {
    padding-bottom: 20px; }
  .pl40 {
    padding-left: 20px; }
  .m45 {
    margin: 22.5px; }
  .mt45 {
    margin-top: 22.5px; }
  .mr45 {
    margin-right: 22.5px; }
  .mb45 {
    margin-bottom: 22.5px; }
  .ml45 {
    margin-left: 22.5px; }
  .p45 {
    padding: 22.5px; }
  .pt45 {
    padding-top: 22.5px; }
  .pr45 {
    padding-right: 22.5px; }
  .pb45 {
    padding-bottom: 22.5px; }
  .pl45 {
    padding-left: 22.5px; }
  .m50 {
    margin: 25px; }
  .mt50 {
    margin-top: 25px; }
  .mr50 {
    margin-right: 25px; }
  .mb50 {
    margin-bottom: 25px; }
  .ml50 {
    margin-left: 25px; }
  .p50 {
    padding: 25px; }
  .pt50 {
    padding-top: 25px; }
  .pr50 {
    padding-right: 25px; }
  .pb50 {
    padding-bottom: 25px; }
  .pl50 {
    padding-left: 25px; }
  .m55 {
    margin: 27.5px; }
  .mt55 {
    margin-top: 27.5px; }
  .mr55 {
    margin-right: 27.5px; }
  .mb55 {
    margin-bottom: 27.5px; }
  .ml55 {
    margin-left: 27.5px; }
  .p55 {
    padding: 27.5px; }
  .pt55 {
    padding-top: 27.5px; }
  .pr55 {
    padding-right: 27.5px; }
  .pb55 {
    padding-bottom: 27.5px; }
  .pl55 {
    padding-left: 27.5px; }
  .m60 {
    margin: 30px; }
  .mt60 {
    margin-top: 30px; }
  .mr60 {
    margin-right: 30px; }
  .mb60 {
    margin-bottom: 30px; }
  .ml60 {
    margin-left: 30px; }
  .p60 {
    padding: 30px; }
  .pt60 {
    padding-top: 30px; }
  .pr60 {
    padding-right: 30px; }
  .pb60 {
    padding-bottom: 30px; }
  .pl60 {
    padding-left: 30px; }
  .m65 {
    margin: 32.5px; }
  .mt65 {
    margin-top: 32.5px; }
  .mr65 {
    margin-right: 32.5px; }
  .mb65 {
    margin-bottom: 32.5px; }
  .ml65 {
    margin-left: 32.5px; }
  .p65 {
    padding: 32.5px; }
  .pt65 {
    padding-top: 32.5px; }
  .pr65 {
    padding-right: 32.5px; }
  .pb65 {
    padding-bottom: 32.5px; }
  .pl65 {
    padding-left: 32.5px; }
  .m70 {
    margin: 35px; }
  .mt70 {
    margin-top: 35px; }
  .mr70 {
    margin-right: 35px; }
  .mb70 {
    margin-bottom: 35px; }
  .ml70 {
    margin-left: 35px; }
  .p70 {
    padding: 35px; }
  .pt70 {
    padding-top: 35px; }
  .pr70 {
    padding-right: 35px; }
  .pb70 {
    padding-bottom: 35px; }
  .pl70 {
    padding-left: 35px; }
  .m75 {
    margin: 37.5px; }
  .mt75 {
    margin-top: 37.5px; }
  .mr75 {
    margin-right: 37.5px; }
  .mb75 {
    margin-bottom: 37.5px; }
  .ml75 {
    margin-left: 37.5px; }
  .p75 {
    padding: 37.5px; }
  .pt75 {
    padding-top: 37.5px; }
  .pr75 {
    padding-right: 37.5px; }
  .pb75 {
    padding-bottom: 37.5px; }
  .pl75 {
    padding-left: 37.5px; }
  .w0p {
    max-width: none; }
  .w5p {
    max-width: none; }
  .w10p {
    max-width: none; }
  .w15p {
    max-width: none; }
  .w20p {
    max-width: none; }
  .w25p {
    max-width: none; }
  .w30p {
    max-width: none; }
.w30p.sp_size_none {
    max-width: 50%; }
  .w35p {
    max-width: none; }
  .w40p {
    max-width: none; }
  .w45p {
    max-width: none; }
  .w50p {
    max-width: none; }
  .w55p {
    max-width: none; }
  .w60p {
    max-width: none; }
  .w65p {
    max-width: none; }
  .w70p {
    max-width: none; }
  .w75p {
    max-width: none; }
  .w80p {
    max-width: none; }
  .w85p {
    max-width: none; }
  .w90p {
    max-width: none; }
  .w95p {
    max-width: none; }
  .w100p {
    max-width: none; }
  .content > article {
    width: 100%; }
  header .maxWbase {
    width: 100%; }
  header .subMenu li:first-child {
    display: block;
    position: relative;
    padding: 0;
    margin-right: 40px;
    width: 40px;
    height: 60px; }
    header .subMenu li:first-child:before {
      display: block;
      position: absolute;
      width: 30px;
      height: 30px;
      background-size: contain;
      background-position: center center;
      top: 10px;
      left: 0; }
    header .subMenu li:first-child a {
      display: block;
      width: 100%;
      height: 100%; }
      header .subMenu li:first-child a span {
        display: none; }
  header > div nav .hNav {
    width: 100%;
    font-size: 10px; }
  header > div nav.h_nav ul.catIco {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    header > div nav.h_nav ul.catIco li {
      width: 100px; }
      header > div nav.h_nav ul.catIco li a {
        width: 100px;
        padding: 65px 0 10px; }
        header > div nav.h_nav ul.catIco li a:before {
          position: absolute;
          content: '';
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          background: center top no-repeat;
          background-size: 60px 60px; }
        header > div nav.h_nav ul.catIco li a:after {
          content: none; }
        header > div nav.h_nav ul.catIco li a.c-1:before {
          background-image: url(/ccl/common/images/ctgry-icon_01.svg); }
        header > div nav.h_nav ul.catIco li a.c-2:before {
          background-image: url(/ccl/common/images/ctgry-icon_02.svg); }
        header > div nav.h_nav ul.catIco li a.c-3:before {
          background-image: url(/ccl/common/images/ctgry-icon_03.svg); }
        header > div nav.h_nav ul.catIco li a.c-4:before {
          background-image: url(/ccl/common/images/ctgry-icon_04.svg); }
        header > div nav.h_nav ul.catIco li a.c-5:before {
          background-image: url(/ccl/common/images/ctgry-icon_05.svg); }
        header > div nav.h_nav ul.catIco li a.c-6:before {
          background-image: url(/ccl/common/images/ctgry-icon_06.svg); }
        header > div nav.h_nav ul.catIco li a.c-7:before {
          background-image: url(/ccl/common/images/ctgry-icon_07.svg); }
      header > div nav.h_nav ul.catIco li.inquiry {
        width: 100%; }
        header > div nav.h_nav ul.catIco li.inquiry a {
          width: 70%;
          margin: 10px auto 10px;
          font-size: 16px; }
          header > div nav.h_nav ul.catIco li.inquiry a:hover {
            color: #fff; }
  .topNew_entry_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 5%; }
    .topNew_entry_inner .photo_wrap {
      position: relative;
      width: 100%;
      height: 0;
      padding-top: 50%;
      overflow: hidden; }
      .topNew_entry_inner .photo_wrap img {
        top: -25%; }
    .topNew_entry_inner .txt_wrap {
      display: block;
      width: 100%;
      padding: 0; }
      .topNew_entry_inner .txt_wrap h1 {
        font-size: 18px;
        margin-bottom: 10px; }
      .topNew_entry_inner .txt_wrap .subtitle {
        margin-top: 10px; }
      .topNew_entry_inner .txt_wrap .profile .profile_name {
        width: calc(100% - 65px); }
  .new_entry {
    display: block; }
    .new_entry > a {
      max-width: 100%;
      width: 100%;
      padding: 5%; }
  .new_entry_items {
    position: relative; }
    .new_entry_items .photo_wrap {
      position: absolute;
      top: 6vw;
      left: 5%;
      width: 30%;
      padding-top: 30%; }
      .new_entry_items .photo_wrap img {
        width: auto;
        height: 100%;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); }
    .new_entry_items .category {
      padding-left: 37%; }
    .new_entry_items time {
      display: block;
      padding-left: 37%;
      text-align: left; }
    .new_entry_items h2 {
      padding-left: 37%;
      font-size: 15px;
      line-height: 1.4;
      height: auto;
      min-height: calc(27vw - 40px); }
    .new_entry_items .txt_wrap {
      min-height: 27vw; }
    .new_entry_items.ad .txt_wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .new_entry_items.ad .txt_wrap time {
        text-align: left;
        margin-bottom: 5px; }
      .new_entry_items.ad .txt_wrap h2 {
        min-height: 0;
        text-align: left; }
  .series_wrap ul li a div p.title {
    margin-bottom: 5px;
    font-size: 14px; }
  .series_wrap ul li a div p.nav {
    font-size: 11px; }
  .popular_post_wrap .popular_post_inner .pp_items .photo_wrap {
    width: 100%;
    height: 30vw;
    overflow: hidden; }
    .popular_post_wrap .popular_post_inner .pp_items .photo_wrap img {
      width: 100%;
      height: auto;
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%); }
  .popular_post_wrap .popular_post_inner .pp_items .txt_wrap {
    width: 100%;
    margin-left: 0; }
    .popular_post_wrap .popular_post_inner .pp_items .txt_wrap .profile .profile_name {
      width: calc(100% - 50px); }
  .category_wrap {
    padding-bottom: 10px; }
  .category_inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .category_inner > a {
      width: 33%;
      margin-bottom: 15px; }
      .category_inner > a img {
        margin: 0 auto 10px; }
      .category_inner > a p {
        font-size: 11px; }
  .cv_area {
    margin-top: 30px;
    padding: 30px 0; }
    .cv_area h3 {
      font-size: 18px; }
      .cv_area h3 br {
        display: inline; }
    .cv_area p {
      width: 90%;
      margin: 0 auto 30px;
      text-align: left;
      font-size: 14px;
      line-height: 1.6; }
    .cv_area a {
      width: 80%; }
  .f_mailmaga {
    margin: 30px 0 10px; }
    .f_mailmaga .maxWbase {
      width: 100%; }
      .f_mailmaga .maxWbase > div {
        width: 100%; }
      .f_mailmaga .maxWbase > div:first-child {
        height: 100px; }
        .f_mailmaga .maxWbase > div:first-child h3 {
          font-size: 16px; }
        .f_mailmaga .maxWbase > div:first-child p {
          font-size: 14px; }
      .f_mailmaga .maxWbase > div:last-child {
        padding: 5% 5% 30px; }
  footer .f_nav div {
    padding: 0; }
  footer .mrA {
    width: 60%;
    padding: 0;
    margin: 0 auto 40px; }
    footer .mrA a {
      display: block; }
      footer .mrA a .maxW240px {
        display: block;
        width: 100%;
        max-width: 100%; }
  footer .maxW650px {
    width: 95%;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
    border: none;
    font-size: 13px; }
  .search_result .popular_post_inner .pp_items {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 10px; }
    .search_result .popular_post_inner .pp_items .photo_wrap {
      border: none; } }
.flex-sb{
    display: flex;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.sp{
    display: none;
}
.pc{
    display: block;
}
@media screen and (max-width: 920px) {
  footer .f_copy div {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  footer .f_copy ul {
    margin-bottom: 20px;
    width: 100%;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media all and (-ms-high-contrast: none) {
      .link_function li a:hover {
        background-color: #fff; } }

@media screen and (min-width: 641px) {
  .content {
    padding-right: 30px;
    padding-left: 30px; }
  .content > aside {
    width: 27.4vw;
    max-width: 280px; } }

@media screen and (max-width: 641px) {
.list_col.relation_list > li.list_img_left section {
  flex-wrap: wrap;
}
.list_col.relation_list > li.list_img_left section > p{
    margin: 0 auto;
}
.list_col.relation_list > li.list_img_left section div{
    width: 100%;
}
.sp{
    display: block;
}
.pc{
    display: none;
}
}

/* モーダル */
.modal_wrap > input{
  display: none;
}
.modal_wrap > input + label{
  cursor: pointer;
  width: 100%;
  max-width: 600px;
  background-color: #fff;
  padding: 5px;
  display: block;
  position: relative;
}
.modal_wrap > input:checked + label{
  width: 92%;
  max-width: 800px;
  height: auto;
  transition: 1s;
  position: absolute;
  box-shadow: 1px 1px 5px #ccc;
}
.modal_wrap > label > i.fa-close{
  display: none;
  font-size: 24px;
}
.modal_wrap > label > i.fa-plus-square-o{
  font-size: 24px;
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 5px;
  box-sizing: content-box;
  background-color: #fff;
}
.modal_wrap > input:checked + label > i.fa-close{
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 5px;
  box-sizing: content-box;
  background-color: #fff;
}
.modal_wrap > input:checked + label > i.fa-plus-square-o{
  display: none;
}

/* フローティングバナー */
.float_bnr{
  position: fixed;
  bottom: 40px;
  width: 100%;
  text-align: center;
  z-index: 10;
}
.float_bnr a{
  border-radius: 30px;
  padding: 20px 25px;
  color: #fff;
  display: inline-block;
  background: linear-gradient(0.25turn, #549fde, #ff2f79);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
  font-weight: 700;
  opacity: 1;
  transition: .5s;
  text-decoration: none;
}
.float_bnr._img a{
  border-radius: 0;
  padding: 0px;
  background: none;
  box-shadow: none;
}
.float_bnr a:after{
  margin-left: .5rem;
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  transform: rotate(45deg);
  border-right: 3px solid #fff;
  border-top: 3px solid #fff;
}
.float_bnr._img a:after{
  display: none;
}
.float_bnr a:hover{
  transform: translateY(-5px);
  transition: .5s;
  opacity: 0.8;
}
.float_bnr.bnr_hide{
  visibility: hidden;
}
.float_bnr.bnr_hide a{
  opacity: 0;
  transition: .5s;
}
@media screen and (max-width: 740px) {
  .float_bnr{
    bottom: 0;
  }
  .float_bnr a{
    border-radius: 0;
    font-size: .9rem;
    width: 100%;
    box-sizing: border-box;
  }
}


.pagelist_title{
  font-weight: 700;
  font-size: 1.4rem;
  margin-bottom: .5rem;
}
.pagelist_title ~ p{
  font-size: 0.875rem;
}
.moreLink{
  text-align: center;
  margin-bottom: 5rem;
}
.moreLink a{
  color: #333;
  font-size: .9rem;
  background: #fff;
  padding: 1rem;
  font-weight: 700;
}
.moreLink a:before{
  content: "";
  display: inline-block;
  width: .5rem;
  height: .5rem;
  margin-right: .5rem;
  border-right: #333 solid 1px;
  border-top: #333 solid 1px;
  transform: rotate(45deg);
}

.nn_top_sectionbox{
  padding:  40px 10px;
  width: 100%;
  background-color: #e4f5f7;
  box-sizing: border-box;
}
.nn_top_divbox{
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 996px;
  width: 100%;
  gap: 20px 0;
}
.nn_top_abox{
  width: calc(50% - 10px);
  padding: 20px 20px 70px;
  background-color: #fff;
  box-sizing: border-box;
  text-decoration: none;
  position: relative;
  transition: .3s;
}
.nn_top_abox:hover{
  transition: .3s;
  transform: translate(0, -10px);
  opacity: 0.7;
  box-shadow: rgba(0,0,0,.25) 0 0px 8px;
}
.nn_top_ttl{
  padding: 30px 10px 0;
  margin-bottom: 1rem;
  font-weight: 700;
  font-size: 18px;
}
.nn_top_text{
  margin: 0 0 30px;
  padding: 0 10px;
  font-size: 14px;
}
.btn_blue{
  margin: 0 auto;
  padding: 10px 0;
  color: #fff;
  width: 240px;
  font-weight: 700;
  display: block;
  text-align: center;
  background-color: #2665b4;
  border-radius: 5px;
}
.btn_bottom{
  bottom: 20px;
  position: absolute;
  bottom: 30px;
  left: 50%;
  margin-left: -120px;
}

@media screen and (max-width: 740px) {
  .nn_top_sectionbox{
    padding-left: 10px;
    padding-right: 10px;
  }
  .nn_top_divbox{
    gap: 30px 0;
  }
  .nn_top_abox{
    padding-bottom: 20px;
    width: 100%;
  }
  .nn_top_ttl{
    padding-top: 20px;
  }
  .nn_top_text{
    margin: 0 0 20px;
  }
  .btn_blue{
    width: 100%;
    position: static;
    margin-left: auto;
  }
}

.fa-plus-square-o,.fa-close{
  display:block;
  width: 8px;
  height: 8px;
  border: solid 2px #333;
  border-radius: 3px;
  margin: 10px 5px;
}

.fa-plus-square-o::before,.fa-plus-square-o::after{
  content: '';
  display:block;
  width: 2px;
  height: 13px;
  position:absolute;
  top: 3px;
  left: 8px;
  background-color: #333;
}

.fa-plus-square-o::after{
  transform: rotate(90deg);
}

.fa-close:before,.fa-close:after{
  content: '';
  display:block;
  width: 2px;
  height: 13px;
  position:absolute;
  top: 3px;
  left: 8px;
  background-color: #333;
  transform: rotate(45deg);
}

.fa-close:after{
  transform: rotate(135deg);
}

  /* add style （汎用モジュール）-------------------------------------- */

  /* pdfリンク */
  .page_details .body_txt a.pdf[target="_blank"] {
    padding-right: 20px;
    background-image: url("https://consult.nikkeibp.co.jp/common/images/common/icon_pdf.png");
    background-repeat: no-repeat;
    background-position: right 2px center;
    background-size: auto 100%;
  }
  .page_details .body_txt p a.pdf[target="_blank"]:after {
    content: '';
  }

  /* ボタンにbox-sizing:border-box;追加 */
  .page_details .body_txt div.btn p a {
   box-sizing: border-box;
  }

  /* ボタンのpaddingをspで20pxにする */
  @media screen and (max-width: 640px) {
    .page_details .body_txt div.btn p a {
      padding: 10px 20px;
    }
  }

  /* 青いボタン */
  .page_details .body_txt div.btn.-blue p a {
    color:#ffffff;
    background:#2665B4;
  }


  /* キャプション */
  .page_details .body_txt p.cap {
    font-size: 13px;
    text-align: left;
    margin: 10px 0 0;
    line-height: 1.6;
  }

  /* 画像タイトル */
  .page_details .body_txt p.capTitle {
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    margin: 0 0 10px;
    line-height: 1.6;
  }


  /* 枠線１ */
  @media screen and (max-width: 640px) {
    .page_details .body_txt .column_wrap {
      padding-right: 20px;
      padding-left: 20px;
    }
  }

  /* 枠線３ */
  .page_details .body_txt .waku02 {
    margin-bottom: 40px;
    padding-top: 20px;
    padding-right: 30px;
    padding-left: 30px;
    border: #2665B4 solid 2px;
  }
  .page_details .body_txt .waku02 p {
    font-size: 14px;
  }
  @media screen and (max-width: 640px) {
    .page_details .body_txt .waku02 {
      padding-right: 20px;
      padding-left: 20px;
    }
  }

  /* 枠線４ */
  .page_details .body_txt .waku03 {
    margin-bottom: 40px;
    padding-top: 20px;
    padding-right: 30px;
    padding-left: 30px;
    border: #cecece double;
  }
  .page_details .body_txt .waku03 p {
    font-size: 14px;
  }
  @media screen and (max-width: 640px) {
    .page_details .body_txt .waku03 {
      padding-right: 20px;
      padding-left: 20px;
    }
  }

  /* リスト内の強調文字 */
  .page_details .body_txt ol strong,
  .page_details .body_txt ul strong  {
    color: #e2041b;
  }
  .page_details .body_txt ol span strong,
  .page_details .body_txt ul span strong  {
    font-weight: 500;
  }

  /* 序列リスト */
  .page_details .body_txt .num {
    list-style-type: decimal;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.5;
    margin-left: 0;
    margin-bottom: 30px;
    background-color: #f8f9fa;
    padding: 20px 20px 20px 40px;
  }
  .page_details .body_txt .num li {
    padding-left: 10px;
  }
  .page_details .body_txt .num li+li {
    margin-top: 15px;
  }

  /* テーブル01 */
  .page_details .body_txt .table01 {
    border-bottom: #e0e0e0 solid 1px!important;
    border-right: #e0e0e0 solid 1px!important;
  }
  .page_details .body_txt .table01 th {
    font-weight: nomal;
    background-color: #f5f5f5;
    width: 100px;
  }
  .page_details .body_txt .table01 td,
  .page_details .body_txt .table01 th {
    padding: 15px 10px!important;
    font-size: 14px;
    border-top: #e0e0e0 solid 1px!important;
    border-left: #e0e0e0 solid 1px!important;
    border-right: none!important;
    border-bottom: none!important;
  }

  /* テーブル02 */
  .page_details .body_txt .table02 {
    border-bottom: #e0e0e0 solid 1px!important;
    border-right: #e0e0e0 solid 1px!important;
  }
  .page_details .body_txt .table02 th {
    font-weight: nomal;
    background-color: #f5f5f5;
    width: 100px;
  }
  .page_details .body_txt .table02 td,
  .page_details .body_txt .table02 th {
    padding: 15px 10px!important;
    font-size: 14px;
    border-top: #e0e0e0 solid 1px!important;
    border-left: #e0e0e0 solid 1px!important;
    border-right: none!important;
    border-bottom: none!important;
  }
  @media screen and (max-width: 640px) {
    .page_details .body_txt .table02 {
      border-top: none!important;
    }
    .page_details .body_txt .table02 td,
    .page_details .body_txt .table02 th {
      display: block;
      width: 100%;
      box-sizing: border-box;
    }
  }




  /* add style （固有モジュール）-------------------------------------- */

  /* 用語解説 */
  .page_details .body_txt .glossaryBox {
    border: solid #606162 2px;
    margin-bottom: 40px;
    padding: 0;
    background: #fff;
  }
  .page_details .body_txt .glossaryBox dt {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    background: #606162;
    padding: 10px 20px;
    margin: 0;
  }
  .page_details .body_txt .glossaryBox dd {
    font-size: 16px;
    padding: 20px 20px 0;
  }
  .page_details .body_txt .glossaryBox hr {
    margin: 1.5rem 0;
  }




  /* add style （ヘルパークラス）-------------------------------------- */

  .page_details .body_txt .smallText {
    font-size: 14px!important;
  }

  .page_details .body_txt .normalText {
    font-size: 16px!important;
  }
  @media screen and (max-width: 640px) {
    .page_details .body_txt .normalText {
      font-size: 15px!important;
    }
  }

  .page_details .body_txt .-indent {
    padding-left: 1em;
    text-indent: -1em;;
  }

  img.-border {
    border: solid #e0e0e0 1px;
  }

  .u-m0 {margin: 0px!important;}
  .u-mt0 {margin-top: 0px!important;}
  .u-mr0 {margin-right: 0px!important;}
  .u-mb0 {margin-bottom: 0px!important;}
  .u-ml0 {margin-left: 0px!important;}
  .u-p0 {padding: 0px!important;}
  .u-pt0 {padding-top: 0px!important;}
  .u-pr0 {padding-right: 0px!important;}
  .u-pb0 {padding-bottom: 0px!important;}
  .u-pl0 {padding-left: 0px!important;}
  .u-m5 {margin: 5px!important;}
  .u-mt5 {margin-top: 5px!important;}
  .u-mr5 {margin-right: 5px!important;}
  .u-mb5 {margin-bottom: 5px!important;}
  .u-ml5 {margin-left: 5px!important;}
  .u-p5 {padding: 5px!important;}
  .u-pt5 {padding-top: 5px!important;}
  .u-pr5 {padding-right: 5px!important;}
  .u-pb5 {padding-bottom: 5px!important;}
  .u-pl5 {padding-left: 5px!important;}
  .u-m10 {margin: 10px!important;}
  .u-mt10 {margin-top: 10px!important;}
  .u-mr10 {margin-right: 10px!important;}
  .u-mb10 {margin-bottom: 10px!important;}
  .u-ml10 {margin-left: 10px!important;}
  .u-p10 {padding: 10px!important;}
  .u-pt10 {padding-top: 10px!important;}
  .u-pr10 {padding-right: 10px!important;}
  .u-pb10 {padding-bottom: 10px!important;}
  .u-pl10 {padding-left: 10px!important;}
  .u-m15 {margin: 15px!important;}
  .u-mt15 {margin-top: 15px!important;}
  .u-mr15 {margin-right: 15px!important;}
  .u-mb15 {margin-bottom: 15px!important;}
  .u-ml15 {margin-left: 15px!important;}
  .u-p15 {padding: 15px!important;}
  .u-pt15 {padding-top: 15px!important;}
  .u-pr15 {padding-right: 15px!important;}
  .u-pb15 {padding-bottom: 15px!important;}
  .u-pl15 {padding-left: 15px!important;}
  .u-m20 {margin: 20px!important;}
  .u-mt20 {margin-top: 20px!important;}
  .u-mr20 {margin-right: 20px!important;}
  .u-mb20 {margin-bottom: 20px!important;}
  .u-ml20 {margin-left: 20px!important;}
  .u-p20 {padding: 20px!important;}
  .u-pt20 {padding-top: 20px!important;}
  .u-pr20 {padding-right: 20px!important;}
  .u-pb20 {padding-bottom: 20px!important;}
  .u-pl20 {padding-left: 20px!important;}
  .u-m25 {margin: 25px!important;}
  .u-mt25 {margin-top: 25px!important;}
  .u-mr25 {margin-right: 25px!important;}
  .u-mb25 {margin-bottom: 25px!important;}
  .u-ml25 {margin-left: 25px!important;}
  .u-p25 {padding: 25px!important;}
  .u-pt25 {padding-top: 25px!important;}
  .u-pr25 {padding-right: 25px!important;}
  .u-pb25 {padding-bottom: 25px!important;}
  .u-pl25 {padding-left: 25px!important;}
  .u-m30 {margin: 30px!important;}
  .u-mt30 {margin-top: 30px!important;}
  .u-mr30 {margin-right: 30px!important;}
  .u-mb30 {margin-bottom: 30px!important;}
  .u-ml30 {margin-left: 30px!important;}
  .u-p30 {padding: 30px!important;}
  .u-pt30 {padding-top: 30px!important;}
  .u-pr30 {padding-right: 30px!important;}
  .u-pb30 {padding-bottom: 30px!important;}
  .u-pl30 {padding-left: 30px!important;}
  .u-m35 {margin: 35px!important;}
  .u-mt35 {margin-top: 35px!important;}
  .u-mr35 {margin-right: 35px!important;}
  .u-mb35 {margin-bottom: 35px!important;}
  .u-ml35 {margin-left: 35px!important;}
  .u-p35 {padding: 35px!important;}
  .u-pt35 {padding-top: 35px!important;}
  .u-pr35 {padding-right: 35px!important;}
  .u-pb35 {padding-bottom: 35px!important;}
  .u-pl35 {padding-left: 35px!important;}
  .u-m40 {margin: 40px!important;}
  .u-mt40 {margin-top: 40px!important;}
  .u-mr40 {margin-right: 40px!important;}
  .u-mb40 {margin-bottom: 40px!important;}
  .u-ml40 {margin-left: 40px!important;}
  .u-p40 {padding: 40px!important;}
  .u-pt40 {padding-top: 40px!important;}
  .u-pr40 {padding-right: 40px!important;}
  .u-pb40 {padding-bottom: 40px!important;}
  .u-pl40 {padding-left: 40px!important;}
  .u-m45 {margin: 45px!important;}
  .u-mt45 {margin-top: 45px!important;}
  .u-mr45 {margin-right: 45px!important;}
  .u-mb45 {margin-bottom: 45px!important;}
  .u-ml45 {margin-left: 45px!important;}
  .u-p45 {padding: 45px!important;}
  .u-pt45 {padding-top: 45px!important;}
  .u-pr45 {padding-right: 45px!important;}
  .u-pb45 {padding-bottom: 45px!important;}
  .u-pl45 {padding-left: 45px!important;}
  .u-m50 {margin: 50px!important;}
  .u-mt50 {margin-top: 50px!important;}
  .u-mr50 {margin-right: 50px!important;}
  .u-mb50 {margin-bottom: 50px!important;}
  .u-ml50 {margin-left: 50px!important;}
  .u-p50 {padding: 50px!important;}
  .u-pt50 {padding-top: 50px!important;}
  .u-pr50 {padding-right: 50px!important;}
  .u-pb50 {padding-bottom: 50px!important;}
  .u-pl50 {padding-left: 50px!important;}
  .u-m55 {margin: 55px!important;}
  .u-mt55 {margin-top: 55px!important;}
  .u-mr55 {margin-right: 55px!important;}
  .u-mb55 {margin-bottom: 55px!important;}
  .u-ml55 {margin-left: 55px!important;}
  .u-p55 {padding: 55px!important;}
  .u-pt55 {padding-top: 55px!important;}
  .u-pr55 {padding-right: 55px!important;}
  .u-pb55 {padding-bottom: 55px!important;}
  .u-pl55 {padding-left: 55px!important;}
  .u-m60 {margin: 60px!important;}
  .u-mt60 {margin-top: 60px!important;}
  .u-mr60 {margin-right: 60px!important;}
  .u-mb60 {margin-bottom: 60px!important;}
  .u-ml60 {margin-left: 60px!important;}
  .u-p60 {padding: 60px!important;}
  .u-pt60 {padding-top: 60px!important;}
  .u-pr60 {padding-right: 60px!important;}
  .u-pb60 {padding-bottom: 60px!important;}
  .u-pl60 {padding-left: 60px!important;}
  .u-m65 {margin: 65px!important;}
  .u-mt65 {margin-top: 65px!important;}
  .u-mr65 {margin-right: 65px!important;}
  .u-mb65 {margin-bottom: 65px!important;}
  .u-ml65 {margin-left: 65px!important;}
  .u-p65 {padding: 65px!important;}
  .u-pt65 {padding-top: 65px!important;}
  .u-pr65 {padding-right: 65px!important;}
  .u-pb65 {padding-bottom: 65px!important;}
  .u-pl65 {padding-left: 65px!important;}
  .u-m70 {margin: 70px!important;}
  .u-mt70 {margin-top: 70px!important;}
  .u-mr70 {margin-right: 70px!important;}
  .u-mb70 {margin-bottom: 70px!important;}
  .u-ml70 {margin-left: 70px!important;}
  .u-p70 {padding: 70px!important;}
  .u-pt70 {padding-top: 70px!important;}
  .u-pr70 {padding-right: 70px!important;}
  .u-pb70 {padding-bottom: 70px!important;}
  .u-pl70 {padding-left: 70px!important;}
  .u-m75 {margin: 75px!important;}
  .u-mt75 {margin-top: 75px!important;}
  .u-mr75 {margin-right: 75px!important;}
  .u-mb75 {margin-bottom: 75px!important;}
  .u-ml75 {margin-left: 75px!important;}
  .u-p75 {padding: 75px!important;}
  .u-pt75 {padding-top: 75px!important;}
  .u-pr75 {padding-right: 75px!important;}
  .u-pb75 {padding-bottom: 75px!important;}
  .u-pl75 {padding-left: 75px!important;}

  @media screen and (max-width: 640px) {
    .u-m0 {margin: 0px!important;}
    .u-mt0 {margin-top: 0px!important;}
    .u-mr0 {margin-right: 0px!important;}
    .u-mb0 {margin-bottom: 0px!important;}
    .u-ml0 {margin-left: 0px!important;}
    .u-p0 {padding: 0px!important;}
    .u-pt0 {padding-top: 0px!important;}
    .u-pr0 {padding-right: 0px!important;}
    .u-pb0 {padding-bottom: 0px!important;}
    .u-pl0 {padding-left: 0px!important;}
    .u-m5 {margin: 2.5px!important;}
    .u-mt5 {margin-top: 2.5px!important;}
    .u-mr5 {margin-right: 2.5px!important;}
    .u-mb5 {margin-bottom: 2.5px!important;}
    .u-ml5 {margin-left: 2.5px!important;}
    .u-p5 {padding: 2.5px!important;}
    .u-pt5 {padding-top: 2.5px!important;}
    .u-pr5 {padding-right: 2.5px!important;}
    .u-pb5 {padding-bottom: 2.5px!important;}
    .u-pl5 {padding-left: 2.5px!important;}
    .u-m10 {margin: 5px!important;}
    .u-mt10 {margin-top: 5px!important;}
    .u-mr10 {margin-right: 5px!important;}
    .u-mb10 {margin-bottom: 5px!important;}
    .u-ml10 {margin-left: 5px!important;}
    .u-p10 {padding: 5px!important;}
    .u-pt10 {padding-top: 5px!important;}
    .u-pr10 {padding-right: 5px!important;}
    .u-pb10 {padding-bottom: 5px!important;}
    .u-pl10 {padding-left: 5px!important;}
    .u-m15 {margin: 7.5px!important;}
    .u-mt15 {margin-top: 7.5px!important;}
    .u-mr15 {margin-right: 7.5px!important;}
    .u-mb15 {margin-bottom: 7.5px!important;}
    .u-ml15 {margin-left: 7.5px!important;}
    .u-p15 {padding: 7.5px!important;}
    .u-pt15 {padding-top: 7.5px!important;}
    .u-pr15 {padding-right: 7.5px!important;}
    .u-pb15 {padding-bottom: 7.5px!important;}
    .u-pl15 {padding-left: 7.5px!important;}
    .u-m20 {margin: 10px!important;}
    .u-mt20 {margin-top: 10px!important;}
    .u-mr20 {margin-right: 10px!important;}
    .u-mb20 {margin-bottom: 10px!important;}
    .u-ml20 {margin-left: 10px!important;}
    .u-p20 {padding: 10px!important;}
    .u-pt20 {padding-top: 10px!important;}
    .u-pr20 {padding-right: 10px!important;}
    .u-pb20 {padding-bottom: 10px!important;}
    .u-pl20 {padding-left: 10px!important;}
    .u-m25 {margin: 12.5px!important;}
    .u-mt25 {margin-top: 12.5px!important;}
    .u-mr25 {margin-right: 12.5px!important;}
    .u-mb25 {margin-bottom: 12.5px!important;}
    .u-ml25 {margin-left: 12.5px!important;}
    .u-p25 {padding: 12.5px!important;}
    .u-pt25 {padding-top: 12.5px!important;}
    .u-pr25 {padding-right: 12.5px!important;}
    .u-pb25 {padding-bottom: 12.5px!important;}
    .u-pl25 {padding-left: 12.5px!important;}
    .u-m30 {margin: 15px!important;}
    .u-mt30 {margin-top: 15px!important;}
    .u-mr30 {margin-right: 15px!important;}
    .u-mb30 {margin-bottom: 15px!important;}
    .u-ml30 {margin-left: 15px!important;}
    .u-p30 {padding: 15px!important;}
    .u-pt30 {padding-top: 15px!important;}
    .u-pr30 {padding-right: 15px!important;}
    .u-pb30 {padding-bottom: 15px!important;}
    .u-pl30 {padding-left: 15px!important;}
    .u-m35 {margin: 17.5px!important;}
    .u-mt35 {margin-top: 17.5px!important;}
    .u-mr35 {margin-right: 17.5px!important;}
    .u-mb35 {margin-bottom: 17.5px!important;}
    .u-ml35 {margin-left: 17.5px!important;}
    .u-p35 {padding: 17.5px!important;}
    .u-pt35 {padding-top: 17.5px!important;}
    .u-pr35 {padding-right: 17.5px!important;}
    .u-pb35 {padding-bottom: 17.5px!important;}
    .u-pl35 {padding-left: 17.5px!important;}
    .u-m40 {margin: 20px!important;}
    .u-mt40 {margin-top: 20px!important;}
    .u-mr40 {margin-right: 20px!important;}
    .u-mb40 {margin-bottom: 20px!important;}
    .u-ml40 {margin-left: 20px!important;}
    .u-p40 {padding: 20px!important;}
    .u-pt40 {padding-top: 20px!important;}
    .u-pr40 {padding-right: 20px!important;}
    .u-pb40 {padding-bottom: 20px!important;}
    .u-pl40 {padding-left: 20px!important;}
    .u-m45 {margin: 22.5px!important;}
    .u-mt45 {margin-top: 22.5px!important;}
    .u-mr45 {margin-right: 22.5px!important;}
    .u-mb45 {margin-bottom: 22.5px!important;}
    .u-ml45 {margin-left: 22.5px!important;}
    .u-p45 {padding: 22.5px!important;}
    .u-pt45 {padding-top: 22.5px!important;}
    .u-pr45 {padding-right: 22.5px!important;}
    .u-pb45 {padding-bottom: 22.5px!important;}
    .u-pl45 {padding-left: 22.5px!important;}
    .u-m50 {margin: 25px!important;}
    .u-mt50 {margin-top: 25px!important;}
    .u-mr50 {margin-right: 25px!important;}
    .u-mb50 {margin-bottom: 25px!important;}
    .u-ml50 {margin-left: 25px!important;}
    .u-p50 {padding: 25px!important;}
    .u-pt50 {padding-top: 25px!important;}
    .u-pr50 {padding-right: 25px!important;}
    .u-pb50 {padding-bottom: 25px!important;}
    .u-pl50 {padding-left: 25px!important;}
    .u-m55 {margin: 27.5px!important;}
    .u-mt55 {margin-top: 27.5px!important;}
    .u-mr55 {margin-right: 27.5px!important;}
    .u-mb55 {margin-bottom: 27.5px!important;}
    .u-ml55 {margin-left: 27.5px!important;}
    .u-p55 {padding: 27.5px!important;}
    .u-pt55 {padding-top: 27.5px!important;}
    .u-pr55 {padding-right: 27.5px!important;}
    .u-pb55 {padding-bottom: 27.5px!important;}
    .u-pl55 {padding-left: 27.5px!important;}
    .u-m60 {margin: 30px!important;}
    .u-mt60 {margin-top: 30px!important;}
    .u-mr60 {margin-right: 30px!important;}
    .u-mb60 {margin-bottom: 30px!important;}
    .u-ml60 {margin-left: 30px!important;}
    .u-p60 {padding: 30px!important;}
    .u-pt60 {padding-top: 30px!important;}
    .u-pr60 {padding-right: 30px!important;}
    .u-pb60 {padding-bottom: 30px!important;}
    .u-pl60 {padding-left: 30px!important;}
    .u-m65 {margin: 32.5px!important;}
    .u-mt65 {margin-top: 32.5px!important;}
    .u-mr65 {margin-right: 32.5px!important;}
    .u-mb65 {margin-bottom: 32.5px!important;}
    .u-ml65 {margin-left: 32.5px!important;}
    .u-p65 {padding: 32.5px!important;}
    .u-pt65 {padding-top: 32.5px!important;}
    .u-pr65 {padding-right: 32.5px!important;}
    .u-pb65 {padding-bottom: 32.5px!important;}
    .u-pl65 {padding-left: 32.5px!important;}
    .u-m70 {margin: 35px!important;}
    .u-mt70 {margin-top: 35px!important;}
    .u-mr70 {margin-right: 35px!important;}
    .u-mb70 {margin-bottom: 35px!important;}
    .u-ml70 {margin-left: 35px!important;}
    .u-p70 {padding: 35px!important;}
    .u-pt70 {padding-top: 35px!important;}
    .u-pr70 {padding-right: 35px!important;}
    .u-pb70 {padding-bottom: 35px!important;}
    .u-pl70 {padding-left: 35px!important;}
    .u-m75 {margin: 37.5px!important;}
    .u-mt75 {margin-top: 37.5px!important;}
    .u-mr75 {margin-right: 37.5px!important;}
    .u-mb75 {margin-bottom: 37.5px!important;}
    .u-ml75 {margin-left: 37.5px!important;}
    .u-p75 {padding: 37.5px!important;}
    .u-pt75 {padding-top: 37.5px!important;}
    .u-pr75 {padding-right: 37.5px!important;}
    .u-pb75 {padding-bottom: 37.5px!important;}
    .u-pl75 {padding-left: 37.5px!important;}
  }

  @media screen and (max-width: 640px) {
    .u-sp-w100p {
      width: 100%;
    }
  }


  /* -----------------------------------------------
  .p-system
----------------------------------------------- */
.p-system {
  padding-block: 65px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  background-color: #f8f9fa;
  font-family: "Noto Sans JP", sans-serif;
}
.p-system_item {
  text-align: center;
  width: 100%;
  position: relative;
  display: -ms-grid;
  display: grid;
  background-color: #fff;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  -ms-grid-row-span: 3;
  grid-row: span 3;
}
.p-system_item {
}
.p-system_item_link {
  padding: 4.375rem 1rem;
  color: #333;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  -ms-grid-row-span: 3;
  grid-row: span 3;
  text-decoration: none;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
  transition: box-shadow .3s;
}
@media (hover: hover) {
  .p-system_item_link:hover {
    text-decoration: none;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    transition: box-shadow .3s;
  }
  .p-system_item_link:hover .p-btn.-arrow01 {
    text-decoration: none;
    color: #016EB0;
    background-color: #fff;
  }
  .p-system_item_link:hover .p-btn.-arrow01::after {
    background: url(/assets/images/common/icon_arrow04.svg) no-repeat;
  }
}
.p-system_item::before {
  content: "";
  display: inline-block;
  width: 135px;
  height: 3px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #016EB0;
}
.p-system_item::after {
  content: "";
  display: inline-block;
  width: 25px;
  height: 3px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #D0A962;
}
.p-system_icon {
  height: 62px;
}
.p-system_icon > img{
  width: auto;
}
.p-system_title {
  margin-block: 1.25rem 2.8rem;
  font-size: 1.75rem;
  font-weight: 700;
}
.p-system_text {
  margin-inline: auto;
  max-width: 344px;
  text-align: left;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif !important;
}
.p-system_btn {
  margin-top: 1.5em;
}
.p-system_btn a, .p-system_btn span {
  margin-inline: auto;
}
@media screen and (max-width: 1180px) {
  .p-system {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .l-section + .l-section {
    margin-top: 0rem;
    padding-top: 0;
  }
  .p-system {
    display: block;
    padding-inline: 1.5rem;
    padding-block: 0;
    background-color: #fff;
  }
  .p-system_item {
    box-shadow: none;
  }
  .p-system_item + .p-system_item {
    box-shadow: none;
    border-top: 1px solid #EEE;
  }
  .p-system_item_link {
    padding: 3rem 0;
    box-shadow: none;
  }
  .p-system_title {
    margin-top: 0;
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.8rem;
  }
  .p-system_text {
    font-size: .9375rem;
    margin-inline: 1.2rem;
  }
  .p-system_icon {
    margin-right: 2rem;
    margin-bottom: -0.5rem;
  }
  .p-system_icon img {
    height: 38px;
    width: auto;
  }
  .p-system_logotitle {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

/* -----------------------------------------------
  .p-btn
----------------------------------------------- */
.p-btn {
  padding: .9375rem;
  display: block;
  font-size: .9375rem;
  font-weight: 500;
  width: 100%;
  text-align: center;
  max-width: 222px;
  background-color: #016EB0;
  border: solid 1px #016EB0;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif !important;
}
.p-btn_t01 {
  max-width: 252px;
  font-weight: 700;
}
.p-btn.-arrow01 {
  position: relative;
  transition: background-color .3s;
}
.p-btn.-arrow01::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
  width: 6px;
  height: 11px;
  margin-top: -0.5rem;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  background: url(/assets/images/common/icon_arrow03.svg) no-repeat;
  background-size: contain;
}
@media (hover: hover) {
  .p-btn.-arrow01:hover {
    text-decoration: none;
    color: #016EB0;
    background-color: #fff;
    transition: background-color .3s;
  }
  .p-btn.-arrow01:hover::after {
    background: url(/assets/images/common/icon_arrow04.svg) no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .p-btn {
    padding: .8rem;
    width: 240px;
  }
}


/* 追加（BPSOL_BPC_OPERATION-1888） */

/* add style （20240917）-------------------------------------- */

/* グレー枠 */
.page_details .body_txt .waku04 {
  margin-bottom: 40px;
  padding-top: 20px;
  padding-right: 30px;
  padding-left: 30px;
  border:3px solid #ECECEC;
}
.page_details .body_txt .waku04 p {
  font-size: 14px;
}
@media screen and (max-width: 640px) {
  .page_details .body_txt .waku04 {
    padding-right: 20px;
    padding-left: 20px;
  }
}

/* 誘導枠（3） */
.page_details .body_txt .waku04.-cta01 {
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
}

/* 目次 */
.page_details .body_txt ul.mokuji {
  background: transparent;
  padding: 0;
}
.page_details .body_txt .mokuji_item {
  display: flex;
  align-items: flex-start;
}
.page_details .body_txt .mokuji_item_num {
  font-size: 16px;
  font-weight: bold;
}
.page_details .body_txt .mokuji_item_text {
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}
.page_details .body_txt p.mokuji_item_text {
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}
@media screen and (max-width: 640px) {
  .page_details .body_txt .mokuji_item_num {
    font-size: 15px;
  }
  .page_details .body_txt p.mokuji_item_text {
    font-size: 15px;
  }
}

/* リボン付き囲み */
.decoBox {
  border: #2665B4 solid 2px;
  margin: 70px 0 50px;
}

.decoBox_inner {
  padding: 5px 30px;
  margin-top: -20px;
}

.decoBox_ribbon {
  --f: 10px; /* リボンの折り畳み部分 */
  --r: 18px; /* リボンの形 */
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
  display: inline-block;
  padding: 10px 20px;
  background: #095697;
  position: relative;
  top: -28px;
  left: calc(-1*var(--f));
  border-bottom: var(--f) solid #093A5F;
  border-right: var(--r) solid #095697;
  clip-path:
    polygon(0 0,0 calc(100% - var(--f)),var(--f) 100%,
    var(--f) calc(100% - var(--f)),100% calc(100% - var(--f)),
    calc(100% - var(--r)) calc(50% - var(--f)/2),100% 0);
}
.decoBox.-v02 .decoBox_ribbon {
  position: relative;
  top: 0;
  margin-top: 20px;
}
.decoBox.-v02 .decoBox_inner {
  margin-top: 5px;
}
@media screen and (max-width: 640px) {
  .decoBox_inner {
    padding: 0 25px 5px;
  }
  .decoBox_ribbon {
    font-size: 16px;
  }
  .decoBox_ribbon br.sp {
    display: inline;
  }
}

.page_details .body_txt .blockquote {
  background: #f8f9fa;
  padding: 20px 30px 1px;
  border-left: 10px solid #c9c9c9;
  font-style: italic;
}
.page_details .body_txt .blockquote p {
  font-size: 15px;
}
@media screen and (max-width: 640px) {
  .page_details .body_txt .blockquote {
    padding-inline: 20px;
  }
}

/* 太字 */
.page_details .body_txt .-bold {
  font-weight:bold;
}