@charset "UTF-8";
/* ------------------------------------------------- *
 *        ＠リセットCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
* {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Lucida Grande", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

ul {
  padding: 0;
  margin: 0; }

li {
  list-style: none;
  color: #373737; }

h1 {
  padding: 0;
  margin: 0; }

h1, h2, h3, h4, h5 {
  font-size: 20px;
  padding: 0;
  margin: 0;
  color: #373737; }
  @media only screen and (max-width: 767px) {
    h1, h2, h3, h4, h5 {
      font-size: 18px; } }

p {
  line-height: 1.9;
  font-size: 16px;
  padding: 0;
  margin: 0;
  color: #373737; }
  @media only screen and (max-width: 767px) {
    p {
      font-size: 14px; } }

a {
  color: #11b8c1;
  text-decoration: none; }

hr {
  margin: 64px 0; }
  @media only screen and (max-width: 767px) {
    hr {
      margin: 40px 0; } }

dd {
  margin: 0; }

img {
  display: block;
  max-width: 100%;
  height: auto; }

table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0px;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-word;
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD;
  background: #FFF;
  color: #373737; }

th, td {
  padding: 15px;
  border-right: 1px solid #DDD;
  border-bottom: 1px solid #DDD;
  color: #373737; }
  @media only screen and (max-width: 767px) {
    th, td {
      padding: 10px; } }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

.clearfix:before {
  　　　　content: "";
  display: block;
  clear: both; }

.clearfix {
  display: block; }

/* ------------------------------------------------- *
 *        ＠レイアウトCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
body {
  background: #fff5f8;
  margin: 0; }

#wrap {
  max-width: 1070px;
  margin: 0 auto;
  overflow: hidden;
  padding-top: 32px; }
  @media only screen and (max-width: 992px) {
    #wrap {
      margin: 0 16px; } }
  @media only screen and (max-width: 767px) {
    #wrap {
      padding: 0;
      margin: 0; } }

.article {
  background: #fff;
  padding: 32px 32px 0; }

#main {
  width: 70%;
  float: left;
  margin-bottom: 32px; }
  @media only screen and (max-width: 992px) {
    #main {
      float: none;
      width: 100%; } }
  @media only screen and (max-width: 767px) {
    #main {
      width: 100%;
      float: none;
      padding: 16px 16px 0; } }

#main-m {
  max-width: 700px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    #main-m {
      padding: 0 16px; } }

#main-w {
  width: 100%; }
  @media only screen and (max-width: 767px) {
    #main-w {
      padding: 0 16px; } }

.inner {
  max-width: 1070px;
  margin: 0 auto; }

/* ------------------------------------------------- *
 *        ＠マルチクラスCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
/* ============ レイアウト関係 ============ */
.img-w {
  width: 100%;
  height: auto; }

/*　余白 */
.mb-16 {
  margin-bottom: 16px; }

.mb-32 {
  margin-bottom: 32px; }

.mb-48 {
  margin-bottom: 48px; }

/* ============ テキスト関係 ============ */
.txt-red {
  color: #ff3469;
  font-weight: 700; }

.txt-green {
  color: #01913a;
  font-weight: 700; }

.txt-blue {
  color: #2366d9;
  font-weight: 700; }

.txt-yellow {
  color: #f4cb0a;
  font-weight: 700; }

.txt-big {
  font-size: 20px; }
  @media only screen and (max-width: 767px) {
    .txt-big {
      font-size: 18px; } }

.txt-marker {
  background-image: linear-gradient(transparent 50%, #efff04 50%); }

.txt-marker-yellow {
  background-image: linear-gradient(transparent 50%, #ffef9d 50%); }

.txt-marker-pink {
  background-image: linear-gradient(transparent 50%, #ffddeb 50%); }

.txt-right {
  text-align: right; }

.txt-big {
  font-size: 26px; }
  @media only screen and (max-width: 767px) {
    .txt-big {
      font-size: 24px; } }

/* ============ タイトル関係 ============ */
.section-title {
  color: #373737; }
  .section-title h1 {
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 20px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .section-title h1 {
        margin-bottom: 16px; } }
  .section-title h2 {
    border-bottom: 3px solid #f64f72;
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 20px;
    padding-bottom: 8px; }
    @media only screen and (max-width: 767px) {
      .section-title h2 {
        text-align: center; } }
  .section-title .description {
    font-size: 14px;
    margin-bottom: 32px; }
    @media only screen and (max-width: 767px) {
      .section-title .description {
        line-height: 2; } }
    .section-title .description span {
      border-bottom: 2px dotted #CCC;
      padding-bottom: 5px; }
      @media only screen and (max-width: 767px) {
        .section-title .description span {
          padding-bottom: 3px; } }

/* ============ Bootstrap ============ */
.visible-xs, .visible-sm, .visible-md, .visible-lg {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; } }
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; } }
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; } }
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; } }
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }
/* ------------------------------------------------- *
 *        ＠モジュールCSS（単体で使いまわす部分）
 * ------------------------------------------------- */
/* ============ UI関係 ============ */
/*　パンくずリスト */
#pan {
  color: #888;
  font-size: 10px;
  padding: 8px 0; }
  @media only screen and (max-width: 767px) {
    #pan {
      padding: 4px 0;
      height: 30px;
      margin-top: 60px; } }
  @media only screen and (max-width: 767px) {
    #pan .breadcrumbs {
      overflow-y: hidden;
      overflow-x: scroll;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-overflow-scrolling: touch;
      overflow-scrolling: touch;
      padding: 2px 4px; } }
  #pan .breadcrumbs > span {
    padding: 0 5px; }
    @media only screen and (max-width: 767px) {
      #pan .breadcrumbs > span {
        flex: 0 0 auto;
        padding: 0 4px; } }
    @media only screen and (max-width: 767px) {
      #pan .breadcrumbs > span a {
        text-decoration: underline; } }

/* ページネーション */
.pagination-area .navigation {
  width: 100%;
  text-align: center;
  padding: 16px 0; }
.pagination-area .nav-links a {
  display: inline-block;
  padding: 8px 12px;
  color: #f64f72;
  font-weight: bold; }
.pagination-area .nav-links .page-numbers {
  padding: 8px 14px;
  margin: 0 10px; }
  @media only screen and (max-width: 767px) {
    .pagination-area .nav-links .page-numbers {
      margin: 0 6px;
      padding: 4px 10px; } }
.pagination-area .nav-links .current {
  background: #f64f72;
  border-radius: 50%;
  color: #FFF;
  font-weight: bold;
  padding: 6px 11px; }
.pagination-area .nav-links .next, .pagination-area .nav-links .prev {
  border: none;
  font-size: 26px; }

/* ============ ボタン関係 ============ */
/* ページTOPへ戻るボタン */
#page-top {
  position: fixed;
  bottom: 32px;
  right: 16px;
  display: none; }
  #page-top a {
    display: block;
    padding: 32px;
    background: #fff url(../img/icon/icon-pagetop.png) no-repeat center;
    border-radius: 50%; }
    @media only screen and (max-width: 767px) {
      #page-top a {
        padding: 20px;
        background-size: 15px;
        opacity: 0.95; } }

/*　もっと見るボタン */
.btn-more {
  text-align: center;
  border-radius: 4px; }
  .btn-more a {
    display: block;
    padding: 15px 0;
    margin: 0 auto;
    max-width: 400px;
    border: 2px solid #333;
    color: #333;
    font-size: 16px;
    font-weight: 700; }

/* SNSボタン */
.social-box {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 32px 0; }
  .social-box .item {
    width: 32%; }
    .social-box .item a {
      display: block;
      text-align: center;
      text-decoration: none !important;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 5px;
      padding: 15px;
      color: #FFF; }
      @media only screen and (max-width: 767px) {
        .social-box .item a {
          padding: 8px; } }
      .social-box .item a:hover {
        opacity: 0.9; }
      .social-box .item a span {
        font-size: 18px; }
        @media only screen and (max-width: 767px) {
          .social-box .item a span {
            font-size: 12px; } }
    .social-box .item img {
      width: 28px;
      margin-right: 8px; }
      @media only screen and (max-width: 767px) {
        .social-box .item img {
          width: 18px; } }
  .social-box .face a {
    background: #3b5998;
    box-shadow: 0 4px 0 #1e315c; }
  .social-box .twi a {
    background: #00acee;
    box-shadow: 0 4px 0 #1689e0; }
  .social-box .hatena a {
    background: #008fde;
    box-shadow: 0 4px 0 #005e92; }

/* SNSボタン(記事トップ用) */
.social-box-top {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  margin: 32px 0; }
  .social-box-top .item {
    width: 9%;
    margin-left: 1%; }
    @media only screen and (max-width: 767px) {
      .social-box-top .item {
        width: 32%; } }
    .social-box-top .item a {
      display: block;
      text-align: center;
      text-decoration: none !important;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 5px;
      padding: 5%;
      color: #FFF; }
      @media only screen and (max-width: 767px) {
        .social-box-top .item a {
          padding: 5px; } }
      .social-box-top .item a:hover {
        opacity: 0.9; }
      .social-box-top .item a span {
        font-size: 17px;
        line-height: 1; }
        @media only screen and (max-width: 767px) {
          .social-box-top .item a span {
            font-size: 12px; } }
    .social-box-top .item img {
      width: 30%;
      padding: 2%; }
      @media only screen and (max-width: 767px) {
        .social-box-top .item img {
          width: 18px;
          padding: 0; } }
  .social-box-top .face a {
    background: #3b5998;
    box-shadow: 0 4px 0 #1e315c; }
    @media only screen and (max-width: 767px) {
      .social-box-top .face a img {
        width: 12%; } }
  .social-box-top .twi a {
    background: #00acee;
    box-shadow: 0 4px 0 #1689e0; }
    .social-box-top .twi a img {
      width: 35%; }
      @media only screen and (max-width: 767px) {
        .social-box-top .twi a img {
          width: 15%; } }
  .social-box-top .hatena a {
    background: #008fde;
    box-shadow: 0 4px 0 #005e92; }

/* ============ 専門家BOX ============ */
.articlebox-experts {
  padding-bottom: 64px;
  margin-bottom: 32px;
  border-bottom: 1px solid #373737; }
  @media only screen and (max-width: 767px) {
    .articlebox-experts {
      padding-bottom: 48px;
      margin-bottom: 48px; } }
  .articlebox-experts .box {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 16px; }
    .articlebox-experts .box::after {
      content: "";
      display: block;
      width: 32.7%; }
    .articlebox-experts .box .item {
      width: 32.7%;
      border: 1px solid #DDD;
      padding: 8px;
      margin-bottom: 8px; }
      @media only screen and (max-width: 767px) {
        .articlebox-experts .box .item {
          width: 49%; } }
      .articlebox-experts .box .item a {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        color: #373737; }
        .articlebox-experts .box .item a img {
          width: 30%;
          float: left;
          border-radius: 50%; }
        .articlebox-experts .box .item a .txt {
          padding-left: 8px;
          font-size: 18px;
          font-weight: 700; }
          @media only screen and (max-width: 767px) {
            .articlebox-experts .box .item a .txt {
              font-size: 16px; } }
          .articlebox-experts .box .item a .txt span {
            display: block;
            font-weight: normal;
            font-size: 12px; }
            @media only screen and (max-width: 767px) {
              .articlebox-experts .box .item a .txt span {
                font-size: 10px; } }
  .articlebox-experts .link-area {
    text-align: right; }
    .articlebox-experts .link-area a {
      color: #373737;
      font-size: 14px;
      padding: 0 16px 10px 8px;
      background: url(../img/icon/icon-arrow-long.png) no-repeat bottom right; }

/* ============ 専門家カード ============ */
.articlebox-supervision {
  border: 1px solid #DDD;
  padding: 24px;
  overflow: hidden;
  margin-bottom: 32px; }
  .articlebox-supervision .img {
    width: 25%;
    float: left; }
    @media only screen and (max-width: 767px) {
      .articlebox-supervision .img {
        padding-right: 8px; } }
    .articlebox-supervision .img img {
      width: 100%;
      height: auto;
      border-radius: 50%; }
  .articlebox-supervision .txt-area {
    width: 75%;
    float: left;
    padding-left: 24px; }
    @media only screen and (max-width: 767px) {
      .articlebox-supervision .txt-area {
        width: 100%;
        float: none;
        padding: 0; } }
    .articlebox-supervision .txt-area .name {
      font-weight: 700;
      float: left;
      margin-right: 16px;
      font-size: 20px; }
      @media only screen and (max-width: 767px) {
        .articlebox-supervision .txt-area .name {
          float: none;
          margin: 0; } }
      .articlebox-supervision .txt-area .name a {
        text-decoration: underline; }
    .articlebox-supervision .txt-area .job {
      float: left;
      font-size: 14px;
      padding-top: 4px; }
      @media only screen and (max-width: 767px) {
        .articlebox-supervision .txt-area .job {
          float: none; } }
    .articlebox-supervision .txt-area .txt {
      clear: both;
      font-size: 16px;
      padding-top: 8px; }
      .articlebox-supervision .txt-area .txt p {
        font-size: 14px !important;
        line-height: 1.9 !important;
        margin: 0 !important; }
        @media only screen and (max-width: 767px) {
          .articlebox-supervision .txt-area .txt p {
            font-size: 12px !important; } }

.articlebox-supervision-small {
  padding: 32px 24px 24px 24px;
  background: #f2f2f2;
  margin-bottom: 32px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .articlebox-supervision-small {
      padding: 20px 16px 16px 16px;
      margin: 32px 0; } }
  .articlebox-supervision-small:before {
    content: 'この記事の監修者';
    display: inline-block;
    width: 180px;
    padding: 6px;
    background: #f64f72;
    color: #FFF;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    position: absolute;
    top: -11px;
    left: 16px; }
    @media only screen and (max-width: 767px) {
      .articlebox-supervision-small:before {
        width: 120px;
        font-size: 12px; } }
  .articlebox-supervision-small .in {
    overflow: hidden; }
  .articlebox-supervision-small .img {
    width: 20%;
    float: left; }
    @media only screen and (max-width: 767px) {
      .articlebox-supervision-small .img {
        width: 25%;
        padding-right: 8px; } }
    .articlebox-supervision-small .img img {
      width: 100%;
      height: auto;
      border-radius: 50%; }
  .articlebox-supervision-small .txt-area {
    width: 80%;
    float: left;
    padding-left: 24px; }
    @media only screen and (max-width: 767px) {
      .articlebox-supervision-small .txt-area {
        width: 75%;
        padding: 0; } }
    .articlebox-supervision-small .txt-area .name {
      font-weight: 700;
      float: left;
      margin-right: 16px;
      font-size: 20px;
      margin-bottom: 8px; }
      @media only screen and (max-width: 767px) {
        .articlebox-supervision-small .txt-area .name {
          margin-right: 8px;
          margin-bottom: 4px;
          font-size: 16px; } }
    .articlebox-supervision-small .txt-area .job {
      float: left;
      font-size: 14px;
      padding-top: 4px; }
      @media only screen and (max-width: 767px) {
        .articlebox-supervision-small .txt-area .job {
          font-size: 12px; } }
    .articlebox-supervision-small .txt-area .txt {
      clear: both;
      font-size: 16px;
      padding-top: 8px;
      border-top: 1px solid #d5d5d5; }
      @media only screen and (max-width: 767px) {
        .articlebox-supervision-small .txt-area .txt {
          font-size: 11px !important;
          width: 100%; } }
      .articlebox-supervision-small .txt-area .txt p {
        line-height: 1.9 !important;
        margin: 0 !important; }

/* ============ 関連記事BOX ============ */
/* 1カラムver */
.articlebox-kanren-col1 {
  padding-bottom: 64px;
  margin-bottom: 40px; }
  @media only screen and (max-width: 767px) {
    .articlebox-kanren-col1 {
      padding-bottom: 48px;
      margin-bottom: 48px; } }
  .articlebox-kanren-col1 .box .item {
    margin-bottom: 16px;
    overflow: hidden;
    border-bottom: 1px solid #ededed;
    padding-bottom: 16px; }
    .articlebox-kanren-col1 .box .item:last-child {
      border-bottom: 0;
      padding-bottom: 0; }
    .articlebox-kanren-col1 .box .item a {
      font-size: 14px;
      font-weight: 700;
      display: block; }
      .articlebox-kanren-col1 .box .item a:hover {
        opacity: 0.9; }
      .articlebox-kanren-col1 .box .item a img {
        width: 27%;
        float: left;
        border-radius: 4px; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col1 .box .item a img {
            width: 40%; } }
      .articlebox-kanren-col1 .box .item a .item-txt {
        float: right;
        width: 70%; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col1 .box .item a .item-txt {
            width: 58%; } }
      .articlebox-kanren-col1 .box .item a .tag-cate {
        background: #f64f72;
        border-radius: 20px;
        color: #fff;
        font-weight: bold;
        line-height: 1;
        padding: 8px;
        display: inline-block;
        float: left;
        margin-left: .5rem; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col1 .box .item a .tag-cate {
            font-size: 12px;
            padding: 6px; } }
      .articlebox-kanren-col1 .box .item a .time {
        color: #f64f72;
        font-size: 16px;
        font-weight: 700;
        font-weight: normal;
        line-height: 2;
        float: left; }
        .articlebox-kanren-col1 .box .item a .time time {
          margin-left: 2%; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col1 .box .item a .time {
            font-size: 14px; } }
      .articlebox-kanren-col1 .box .item a .title {
        color: #373737;
        margin-top: 16px;
        font-size: 18px;
        margin-top: 10px; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col1 .box .item a .title {
            font-size: 15px;
            margin-top: 6px; } }

/* 3カラムver */
.articlebox-kanren-col3 {
  padding-bottom: 64px; }
  @media only screen and (max-width: 767px) {
    .articlebox-kanren-col3 {
      padding-bottom: 48px;
      margin-bottom: 48px; } }
  .articlebox-kanren-col3 .box {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -1.5% 16px -1.5%; }
    @media only screen and (max-width: 767px) {
      .articlebox-kanren-col3 .box {
        margin-bottom: 32px;
        border-top: 1px dotted #DDD; } }
    .articlebox-kanren-col3 .box .item {
      width: 30.3%;
      margin: 1.5% 1.5% 3% 1.5%; }
      @media only screen and (max-width: 767px) {
        .articlebox-kanren-col3 .box .item {
          width: 100%;
          border-bottom: 1px dotted #DDD;
          margin: 0;
          padding: 16px 0; } }
      .articlebox-kanren-col3 .box .item a {
        display: block;
        color: #373737;
        font-size: 14px;
        font-weight: 700; }
        @media only screen and (max-width: 767px) {
          .articlebox-kanren-col3 .box .item a {
            overflow: hidden; } }
        .articlebox-kanren-col3 .box .item a:hover {
          opacity: 0.9; }
        .articlebox-kanren-col3 .box .item a img {
          margin-bottom: 12px;
          border-radius: 4px;
          width: 100%; }
          @media only screen and (max-width: 767px) {
            .articlebox-kanren-col3 .box .item a img {
              width: 40%;
              float: left;
              margin-bottom: 0; } }
        .articlebox-kanren-col3 .box .item a .date {
          font-size: 8px;
          color: #848484; }
          @media only screen and (max-width: 767px) {
            .articlebox-kanren-col3 .box .item a .date {
              width: 60%;
              float: left;
              padding-left: 10px; } }
        .articlebox-kanren-col3 .box .item a .title {
          color: #373737;
          font-size: 18px;
          font-weight: bold;
          margin-top: 10px;
          margin-bottom: 8px; }
          @media only screen and (max-width: 767px) {
            .articlebox-kanren-col3 .box .item a .title {
              font-size: 15px;
              width: 60%;
              float: left;
              padding-left: 0;
              margin-top: 6px;
              margin-bottom: 0; } }
        .articlebox-kanren-col3 .box .item a .tag-cate {
          background: #f64f72;
          border-radius: 20px;
          color: #fff;
          font-size: 14px;
          font-weight: bold;
          line-height: 1.5;
          padding: 3px 10px;
          display: inline-block;
          float: left;
          margin-left: 0.5rem; }
        .articlebox-kanren-col3 .box .item a .time {
          color: #7c7c7c;
          font-size: 12px;
          line-height: 2; }
          .articlebox-kanren-col3 .box .item a .time time {
            margin-left: 2%; }
      .articlebox-kanren-col3 .box .item.item-0, .articlebox-kanren-col3 .box .item.item-1, .articlebox-kanren-col3 .box .item.item-2, .articlebox-kanren-col3 .box .item.item-3, .articlebox-kanren-col3 .box .item.item-4, .articlebox-kanren-col3 .box .item.item-5 {
        position: relative; }
        .articlebox-kanren-col3 .box .item.item-0:before, .articlebox-kanren-col3 .box .item.item-1:before, .articlebox-kanren-col3 .box .item.item-2:before, .articlebox-kanren-col3 .box .item.item-3:before, .articlebox-kanren-col3 .box .item.item-4:before, .articlebox-kanren-col3 .box .item.item-5:before {
          content: "";
          padding: 25px;
          background: url(../img/icon/icon-new.png) no-repeat;
          background-size: contain;
          z-index: 10;
          position: absolute;
          top: 0;
          left: 0; }
          @media only screen and (max-width: 767px) {
            .articlebox-kanren-col3 .box .item.item-0:before, .articlebox-kanren-col3 .box .item.item-1:before, .articlebox-kanren-col3 .box .item.item-2:before, .articlebox-kanren-col3 .box .item.item-3:before, .articlebox-kanren-col3 .box .item.item-4:before, .articlebox-kanren-col3 .box .item.item-5:before {
              padding: 15px;
              top: 8px; } }

/* インタビュー記事1つ表示 */
.articlebox-interview-col1 {
  text-align: center;
  padding-bottom: 64px;
  margin-bottom: 40px;
  border-bottom: 1px solid #373737; }
  @media only screen and (max-width: 767px) {
    .articlebox-interview-col1 {
      padding-bottom: 48px;
      margin-bottom: 48px; } }
  .articlebox-interview-col1 .box {
    margin-top: 32px; }
    .articlebox-interview-col1 .box a {
      color: #373737;
      font-weight: 700; }
      .articlebox-interview-col1 .box a img {
        margin: 0 auto 16px;
        border-radius: 4px; }

/* ============ 相談ボタンエリア ============ */
.articlebox-cv-btn {
  margin-bottom: 64px; }
  @media only screen and (max-width: 767px) {
    .articlebox-cv-btn {
      margin-bottom: 32px; } }
  .articlebox-cv-btn a {
    text-align: center;
    border: none;
    padding: 24px;
    width: 60%;
    display: block;
    background: #303030 url(../img/icon/icon-arrow-wahite-waku.png) no-repeat right center;
    background-position: 96%;
    font-size: 18px;
    color: #FFF;
    text-decoration: none;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      .articlebox-cv-btn a {
        width: 80%; } }

/* ============ 記事内装飾コンポーネント ============ */
/* ブログカード */
.blog-card {
  margin: 64px 0;
  border: 1px solid #ddd;
  border-radius: 5px;
  background: #FFF;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  position: relative; }
  @media only screen and (max-width: 767px) {
    .blog-card {
      margin-bottom: 40px; } }
  .blog-card:hover {
    background: #f4feff; }
  .blog-card .blog-card-kanren {
    position: absolute;
    left: 3%;
    top: -8%;
    background: #11b8c1;
    color: #fff;
    padding: 5px;
    line-height: 1;
    font-size: 14px; }
    @media only screen and (max-width: 767px) {
      .blog-card .blog-card-kanren {
        top: -10%;
        font-size: 12px; } }
  .blog-card a {
    position: relative;
    overflow: hidden;
    display: block;
    text-decoration: none !important;
    padding: 20px;
    color: #222; }
    @media only screen and (max-width: 767px) {
      .blog-card a {
        overflow: hidden;
        padding: 16px 16px 8px 16px; } }
  .blog-card .blog-card-thumbnail {
    width: 25%;
    float: left; }
    .blog-card .blog-card-thumbnail img {
      width: 100%;
      height: auto; }
  .blog-card .blog-card-content {
    width: 75%;
    float: right;
    padding-left: 16px;
    text-decoration: none; }
    .blog-card .blog-card-content .blog-card-title-midashi {
      margin-bottom: 10px; }
      @media only screen and (max-width: 992px) {
        .blog-card .blog-card-content .blog-card-title-midashi {
          margin-bottom: 5px; } }
      @media only screen and (max-width: 767px) {
        .blog-card .blog-card-content .blog-card-title-midashi {
          position: absolute;
          top: -10px;
          left: 16px; } }
      .blog-card .blog-card-content .blog-card-title-midashi span {
        padding: 4px 8px;
        background: #5090d9;
        color: #FFF; }
        @media only screen and (max-width: 992px) {
          .blog-card .blog-card-content .blog-card-title-midashi span {
            font-size: 12px; } }
    .blog-card .blog-card-content .blog-card-cat {
      float: left;
      font-size: 12px; }
      @media only screen and (max-width: 767px) {
        .blog-card .blog-card-content .blog-card-cat {
          font-size: 10px; } }
    .blog-card .blog-card-content .blog-card-day {
      float: right;
      font-size: 12px; }
      @media only screen and (max-width: 767px) {
        .blog-card .blog-card-content .blog-card-day {
          font-size: 10px; } }
    .blog-card .blog-card-content .blog-card-title {
      clear: both;
      padding: 8px 0;
      text-decoration: underline;
      text-align: left;
      color: #303030;
      font-size: 18px;
      font-weight: 700; }
      @media only screen and (max-width: 992px) {
        .blog-card .blog-card-content .blog-card-title {
          font-size: 15px; } }
      @media only screen and (max-width: 767px) {
        .blog-card .blog-card-content .blog-card-title {
          font-size: 14px;
          padding: 4px 0 0 0; } }
    .blog-card .blog-card-content .blog-card-excerpt {
      color: #222;
      font-size: 14px; }
    .blog-card .blog-card-content .more {
      position: absolute;
      right: 20px;
      bottom: 20px;
      text-align: right; }
      @media only screen and (max-width: 992px) {
        .blog-card .blog-card-content .more {
          position: static; } }
      .blog-card .blog-card-content .more span {
        font-size: 14px; }
        @media only screen and (max-width: 992px) {
          .blog-card .blog-card-content .more span {
            font-size: 12px; } }

/* テキスト枠 */
.txt-waku {
  background: #f1f1f1;
  padding: 24px;
  margin-bottom: 64px;
  line-height: 2.1;
  color: #373737; }

/* 転職のTANAKA引き継ぎの吹き出し */
.balloon {
  margin-bottom: 2.4em;
  position: relative;
  margin-left: 4%;
  margin-right: 4%; }
  .balloon:before, .balloon:after {
    clear: both;
    content: "";
    display: block; }
  .balloon .balloon-img {
    width: 100px;
    height: 100px; }
    .balloon .balloon-img img {
      width: 100%;
      height: 100%;
      margin: 0; }
  .balloon p {
    margin-bottom: 0 !important; }
    .balloon p:last-child {
      margin-bottom: 0 !important; }

@media only screen and (max-width: 767px) {
  .balloon {
    margin-bottom: 1.4em;
    margin-left: 0;
    margin-right: 0; } }
@media only screen and (max-width: 767px) {
  .balloon .balloon-img {
    width: 65px;
    height: 65px; } }
@media only screen and (max-width: 767px) {
  .balloon p {
    font-size: 13px !important; } }
.balloon-img-left {
  float: left;
  margin-right: 20px; }

.balloon-img-right {
  float: right;
  margin-left: 20px; }

.balloon-txt-right {
  position: relative;
  padding: 20px;
  border: 2px solid;
  border-radius: 10px;
  max-width: -webkit-calc(100% - 140px);
  max-width: calc(100% - 140px);
  display: inline-block;
  border-color: #aaa; }

.balloon-txt-left {
  position: relative;
  padding: 20px;
  border: 2px solid;
  border-radius: 10px;
  max-width: -webkit-calc(100% - 140px);
  max-width: calc(100% - 140px);
  display: inline-block;
  border-color: #aaa; }
  .balloon-txt-left p {
    margin: 0 !important; }

@media only screen and (max-width: 767px) {
  .balloon-txt-right, .balloon-txt-left {
    max-width: -webkit-calc(100% - 85px);
    max-width: calc(100% - 85px);
    padding: 16px; } }
.balloon-txt-right {
  float: left; }
  .balloon-txt-right p {
    margin: 0 !important; }
  .balloon-txt-right:before {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-right: 10px solid #aaa;
    top: 15px;
    left: -21px; }
  .balloon-txt-right:after {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-right: 10px solid #fff;
    top: 15px;
    left: -19px; }

.balloon-txt-left {
  float: right; }
  .balloon-txt-left:before {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-left: 10px solid #aaa;
    top: 15px;
    right: -21px; }
  .balloon-txt-left:after {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-left: 10px solid #fff;
    top: 15px;
    right: -19px; }

/* 先生・男子生徒・女子生徒の吹き出し */
.balloon-chara-t .balloon-txt-right {
  border-color: #FF8D3F;
  background: #fff; }
  .balloon-chara-t .balloon-txt-right:before {
    border-right: 10px solid #FF8D3F; }

.balloon-chara-d .balloon-txt-left {
  border-color: #04A9F4;
  background: #fff; }
  .balloon-chara-d .balloon-txt-left:before {
    border-left: 10px solid #04A9F4; }

.balloon-chara-g .balloon-txt-left {
  border-color: #F18D9E;
  background: #fff; }
  .balloon-chara-g .balloon-txt-left:before {
    border-left: 10px solid #F18D9E; }

/* スタッフ・女の子・ミエルの吹き出し */
.balloon-chara-staff .balloon-txt-right {
  border-color: #0071EA;
  background: #fff; }
  .balloon-chara-staff .balloon-txt-right:before {
    border-right: 10px solid #0071EA; }

.balloon-chara-girl .balloon-txt-left {
  border-color: #FF8CA5;
  background: #fff; }
  .balloon-chara-girl .balloon-txt-left:before {
    border-left: 10px solid #FF8CA5; }

.balloon-chara-miel .balloon-txt-right {
  border-color: #FFBB00;
  background: #fff; }
  .balloon-chara-miel .balloon-txt-right:before {
    border-right: 10px solid #FFBB00; }

/* 転職のTANAKA引継ぎ */
.balloon-tanaka .balloon-txt-right {
  border-color: #f45765;
  background: #fff; }
  .balloon-tanaka .balloon-txt-right:before {
    border-right: 10px solid #f45765; }

.balloon-hiromi .balloon-txt-left {
  border-color: #28a7e1;
  background: #fff; }
  .balloon-hiromi .balloon-txt-left:before {
    border-left: 10px solid #28a7e1; }

.balloon-saki .balloon-txt-left {
  border-color: #ffd866;
  background: #fff; }
  .balloon-saki .balloon-txt-left:before {
    border-left: 10px solid #ffd866; }

.balloon-negita .balloon-txt-left {
  border-color: #144e57;
  background: #fff; }
  .balloon-negita .balloon-txt-left:before {
    border-left: 10px solid #144e57; }

.balloon-oniduka .balloon-txt-left {
  border-color: #414141;
  background: #fff; }
  .balloon-oniduka .balloon-txt-left:before {
    border-left: 10px solid #414141; }
.balloon-oniduka .balloon-txt-right {
  border-color: #414141;
  background: #c2c2c2; }
  .balloon-oniduka .balloon-txt-right:before {
    border-right: 10px solid #414141; }

/* 動くマーカー */
.marker-animation {
  background-image: -webkit-linear-gradient(left, transparent 50%, #fffa99 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #fffa99 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #fffa99 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #fffa99 50%);
  background-image: linear-gradient(left, transparent 50%, #fffa99 50%);
  background-repeat: repeat-x;
  background-size: 200% .8em;
  background-position: 0 .5em;
  transition: all 4s linear;
  font-weight: bold; }
  .marker-animation.active {
    background-position: -100% .5em; }

.marker-yellow {
  background-image: -webkit-linear-gradient(left, transparent 50%, #efff04 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #efff04 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #efff04 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #efff04 50%);
  background-image: linear-gradient(left, transparent 50%, #efff04 50%); }

.marker-red {
  background-image: -webkit-linear-gradient(left, transparent 50%, #facac8 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #facac8 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #facac8 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #facac8 50%);
  background-image: linear-gradient(left, transparent 50%, #facac8 50%); }

.marker-green {
  background-image: -webkit-linear-gradient(left, transparent 50%, #c8fad4 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #c8fad4 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #c8fad4 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #c8fad4 50%);
  background-image: linear-gradient(left, transparent 50%, #c8fad4 50%); }

.marker-bule {
  background-image: -webkit-linear-gradient(left, transparent 50%, #c8f5fa 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #c8f5fa 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #c8f5fa 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #c8f5fa 50%);
  background-image: linear-gradient(left, transparent 50%, #c8f5fa 50%); }

.marker-purple {
  background-image: -webkit-linear-gradient(left, transparent 50%, #ebc8fa 50%);
  background-image: -moz-linear-gradient(left, transparent 50%, #ebc8fa 50%);
  background-image: -ms-linear-gradient(left, transparent 50%, #ebc8fa 50%);
  background-image: -o-linear-gradient(left, transparent 50%, #ebc8fa 50%);
  background-image: linear-gradient(left, transparent 50%, #ebc8fa 50%); }

/* 口コミボックス */
.kuti-rating-box {
  font-weight: bold;
  margin-bottom: 15px;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .kuti-rating-box {
      margin-bottom: 10px; } }
  @media only screen and (max-width: 767px) {
    .kuti-rating-box .rating-star {
      font-size: 12px;
      margin-right: 10px; } }
  .kuti-rating-box .rating-star .star {
    height: 21px;
    padding-left: 108px; }
    @media only screen and (max-width: 767px) {
      .kuti-rating-box .rating-star .star {
        padding-left: 87px; } }
  .kuti-rating-box .rating-count {
    padding-left: 15px;
    font-weight: normal;
    font-size: 14px; }
    @media only screen and (max-width: 767px) {
      .kuti-rating-box .rating-count {
        padding-left: 0;
        font-size: 12px; } }
    .kuti-rating-box .rating-count i {
      color: #cececd;
      padding-right: 8px; }

.kutikomi-box {
  margin-bottom: 64px; }
  @media only screen and (max-width: 767px) {
    .kutikomi-box {
      padding: 5px 5px 1px 5px;
      margin-right: 0;
      margin-left: 0; } }
  .kutikomi-box .item {
    background: #FFF;
    padding: 17px 20px 20px 20px;
    border: 1px solid #DDD;
    overflow: hidden;
    margin-bottom: 15px; }
    @media only screen and (max-width: 767px) {
      .kutikomi-box .item {
        padding: 15px;
        margin-bottom: 5px; } }
    .kutikomi-box .item .title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 10px; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item .title {
          font-size: 14px;
          margin-bottom: 5px; } }
    .kutikomi-box .item .item-head {
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 8px; }
    .kutikomi-box .item .head {
      height: 21px;
      width: 50%;
      padding-left: 108px;
      font-size: 14px; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item .head {
          width: 40%;
          font-size: 12px;
          padding-left: 86px;
          height: 16px; } }
    .kutikomi-box .item .zokusei {
      width: 50%;
      text-align: right;
      font-size: 14px; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item .zokusei {
          width: 60%;
          font-size: 10px; } }
    .kutikomi-box .item p {
      margin-bottom: 0 !important;
      font-size: 13px !important;
      margin-top: 0 !important; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item p {
          font-size: 11px !important; } }

.star_05 {
  background: url("../img/icon/rate-0.5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_05 {
      background-size: 80px; } }

.star_10 {
  background: url("../img/icon/rate-1.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_10 {
      background-size: 80px; } }

.star_15 {
  background: url("../img/icon/rate-1.5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_15 {
      background-size: 80px; } }

.star_20 {
  background: url("../img/icon/rate-2.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_20 {
      background-size: 80px; } }

.star_25 {
  background: url("../img/icon/rate-2.5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_25 {
      background-size: 80px; } }

.star_30 {
  background: url("../img/icon/rate-3.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_30 {
      background-size: 80px; } }

.star_35 {
  background: url("../img/icon/rate-3.5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_35 {
      background-size: 80px; } }

.star_40 {
  background: url("../img/icon/rate-4.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_40 {
      background-size: 80px; } }

.star_45 {
  background: url("../img/icon/rate-4.5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_45 {
      background-size: 80px; } }

.star_50 {
  background: url("../img/icon/rate-5.png") left center/120px no-repeat;
  background-size: 100px; }
  @media only screen and (max-width: 767px) {
    .star_50 {
      background-size: 80px; } }

/* ============ その他 ============ */
/* TOPの目次 */
.box-col-3-mokuzi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 16px 16px 1px 16px;
  background: #EFEFEF; }
  @media only screen and (max-width: 767px) {
    .box-col-3-mokuzi {
      padding: 0;
      background: none; } }
  .box-col-3-mokuzi .item {
    position: relative;
    margin-bottom: 16px;
    width: 49%;
    background: #FFF;
    border: 3px solid #DDD; }
    @media only screen and (max-width: 767px) {
      .box-col-3-mokuzi .item {
        margin-bottom: 8px;
        border: 2px solid #DDD;
        border-bottom: 3px solid #CCC; } }
    .box-col-3-mokuzi .item img {
      margin-bottom: 8px; }
    .box-col-3-mokuzi .item a {
      position: relative;
      display: block;
      padding: 16px 16px 32px 16px;
      text-align: center;
      font-size: 18px;
      text-decoration: none !important;
      color: #222; }
      @media only screen and (max-width: 767px) {
        .box-col-3-mokuzi .item a {
          padding: 8px; } }
      .box-col-3-mokuzi .item a:hover {
        opacity: 0.9; }
      .box-col-3-mokuzi .item a:before {
        content: "";
        position: absolute;
        bottom: -10px;
        left: 50%;
        transform: translate(-50%, -50%);
        border: 10px solid transparent;
        border-top: 10px solid #222; }
        @media only screen and (max-width: 767px) {
          .box-col-3-mokuzi .item a:before {
            display: none; } }
    .box-col-3-mokuzi .item .title {
      font-weight: 700;
      font-size: 18px; }
      @media only screen and (max-width: 767px) {
        .box-col-3-mokuzi .item .title {
          font-size: 10px; } }
    .box-col-3-mokuzi .item .txt {
      font-size: 16px; }
      @media only screen and (max-width: 767px) {
        .box-col-3-mokuzi .item .txt {
          font-size: 9px; } }

/* ------------------------------------------------- *
 *        ＠TOP
 * ------------------------------------------------- */
.mv-contents {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 330px;
  margin: 0 auto;
  background: url(../img/bg/bg-top.png);
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 767px) {
    .mv-contents {
      background: url(../img/bg/bg-top-sp.png) left top no-repeat;
      background-size: 100%;
      height: 250px; } }
  .mv-contents .mv-top {
    margin: 0 auto 50px; }
    @media only screen and (max-width: 767px) {
      .mv-contents .mv-top {
        margin: 40px auto 0; } }
    .mv-contents .mv-top img {
      width: 260px;
      height: auto;
      margin: 0 auto 4%; }
    .mv-contents .mv-top span {
      font-size: 30px; }
      @media only screen and (max-width: 767px) {
        .mv-contents .mv-top span {
          font-size: 17px; } }

.first-read-block {
  background: #fff;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .first-read-block {
      position: relative; } }
  .first-read-block .first-read-inner-out {
    width: calc(100% - 20px);
    max-width: 1120px;
    height: 100%;
    margin: 0 auto;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    left: 50%; }
  .first-read-block span {
    color: #fff;
    display: block;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 8px; }
    @media only screen and (max-width: 767px) {
      .first-read-block span {
        position: absolute;
        top: -3%;
        left: 34%;
        text-align: center;
        font-size: 22px; }
        .first-read-block span:before {
          content: '';
          display: inline-block;
          width: 10px;
          height: 20px;
          background-image: url(../img/icon/icon-arrow-v-left.png);
          background-size: contain;
          vertical-align: middle;
          margin-right: 10px; }
        .first-read-block span:after {
          content: '';
          display: inline-block;
          width: 10px;
          height: 20px;
          background-image: url(../img/icon/icon-arrow-v-right.png);
          background-size: contain;
          vertical-align: middle;
          margin-left: 10px; } }
  .first-read-block .first-read-inner {
    background: #fff;
    box-shadow: 0 2px 5px #ccc; }
    @media only screen and (max-width: 767px) {
      .first-read-block .first-read-inner {
        padding: 16px; } }
    .first-read-block .first-read-inner .title-pickup {
      color: #f64f72;
      font-size: 22px;
      font-weight: 700;
      padding: 10px 0 0 1.5%; }

.articlebox-col3 .title, .articlebox-col1 .title {
  color: #373737;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 8px; }
.articlebox-col3 .tag-cate, .articlebox-col1 .tag-cate {
  background: #f64f72;
  border-radius: 20px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  padding: 6px;
  display: inline-block;
  float: left;
  margin-left: 0.5rem; }
.articlebox-col3 .time, .articlebox-col1 .time {
  color: #f64f72;
  font-size: 16px;
  line-height: 2;
  float: left; }
  .articlebox-col3 .time time, .articlebox-col1 .time time {
    margin-left: 2%; }

.articlebox-col3 .box {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0 0 1.5%; }
  .articlebox-col3 .box .item {
    width: 31.8%;
    margin: 1.5% 1.5% 1.5% 0; }
    .articlebox-col3 .box .item .cate-time {
      margin-bottom: 5px; }
    .articlebox-col3 .box .item a {
      display: block;
      color: #373737;
      font-size: 14px;
      font-weight: 700; }
      .articlebox-col3 .box .item a img {
        margin-bottom: 12px;
        border-radius: 4px;
        width: 100%; }
    .articlebox-col3 .box .item .tag-cate a {
      color: #fff; }

.articlebox-col1 .item {
  margin-bottom: 32px; }
  .articlebox-col1 .item img {
    border-radius: 8px;
    margin-bottom: 16px;
    width: 100%; }

main.main-top {
  padding: 0 !important; }
  main.main-top .section-title h2 {
    border-bottom: 0;
    margin-bottom: 32px;
    padding-bottom: 0;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      main.main-top .section-title h2 {
        margin: 32px 0; } }
  main.main-top .articlebox-kanren-col1 {
    background: #fff;
    padding: 32px; }
    @media only screen and (max-width: 767px) {
      main.main-top .articlebox-kanren-col1 {
        padding: 16px; } }

/* テーブル変更のタブボタン */
.tab-wrap .btn-tab {
  display: flex;
  justify-content: left;
  border-bottom: 5px solid #f64f72; }
  .tab-wrap .btn-tab .active {
    background: #f64f72;
    color: #fff;
    transition: all 0.2s ease-out; }
    .tab-wrap .btn-tab .active::before {
      border-bottom: solid 3px #FFF;
      border-right: solid 3px #fff; }
.tab-wrap .tab-btn {
  border-radius: 6px 6px 0 0;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease-out;
  background: #e5e5e5;
  font-size: 16px;
  font-weight: bold;
  margin-right: 0.5rem;
  padding: 15px;
  width: 24.5%; }
  @media only screen and (max-width: 767px) {
    .tab-wrap .tab-btn {
      font-size: 14px;
      width: 25%;
      padding: 16px 4px; } }
.tab-wrap .tab-contents {
  display: none; }
  .tab-wrap .tab-contents.active {
    display: block; }

.mainvisual-top {
  height: auto;
  position: relative;
  margin-bottom: 40px;
  background-size: cover;
  width: 80%;
  margin-left: auto;
  margin-right: auto; }
  @media only screen and (max-width: 767px) {
    .mainvisual-top {
      height: auto;
      width: 100%;
      margin-bottom: 20px; } }
  .mainvisual-top .txt-area {
    position: relative;
    top: 22vh;
    text-align: center;
    width: 40%;
    font-weight: bold;
    z-index: 1000;
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
    background-color: rgba(111, 108, 109, 0.4);
    color: #FFF;
    padding: 1.5rem 0;
    margin-left: auto;
    margin-right: auto; }
    @media only screen and (max-width: 767px) {
      .mainvisual-top .txt-area {
        top: 13vh;
        width: 100%;
        left: 0; } }
    .mainvisual-top .txt-area .txt-main {
      font-size: 48px;
      line-height: 1.2;
      margin-bottom: 16px; }
      @media only screen and (max-width: 767px) {
        .mainvisual-top .txt-area .txt-main {
          font-size: 20px; } }
    .mainvisual-top .txt-area .txt-sub {
      font-size: 19px; }
      @media only screen and (max-width: 767px) {
        .mainvisual-top .txt-area .txt-sub {
          font-size: 14px; } }

/* ------------------------------------------------- *
*        ＠header
* ------------------------------------------------- */
#header-pc {
  background: #fff;
  border-top: 5px solid #f64f72; }
  @media only screen and (max-width: 767px) {
    #header-pc {
      padding: 8px; } }
  #header-pc .inner {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center; }
  @media only screen and (max-width: 767px) {
    #header-pc .h-logo {
      margin: 0 auto; } }
  #header-pc .h-logo img {
    width: 130px; }
  #header-pc .nav {
    display: flex; }
  #header-pc .h-search {
    padding: 11px 33px 11px 16px;
    position: relative; }
  #header-pc .form {
    border: 2px solid #f64f72;
    border-radius: 17px 0 0 17px;
    font-size: 15px;
    padding: 3px 10px; }
  #header-pc #searchsubmit {
    background: #f64f72;
    border: none;
    border-radius: 0 17px 17px 0;
    cursor: pointer;
    height: 33px;
    position: absolute;
    width: 36px; }
    #header-pc #searchsubmit img {
      width: 20px; }
  #header-pc .h-cat ul li {
    display: inline-block; }
    #header-pc .h-cat ul li a {
      display: block;
      font-size: 16px;
      padding: 16px;
      font-weight: 700;
      color: #f64f72; }
      @media only screen and (max-width: 992px) {
        #header-pc .h-cat ul li a {
          font-size: 14px; } }
      #header-pc .h-cat ul li a:hover {
        color: #fff;
        background: #f64f72; }

.header-top {
  border-top: 5px solid #f64f72;
  position: absolute;
  z-index: 10000;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 60px; }
  .header-top .inner {
    padding: 0 2%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .header-top .inner .h-logo {
      display: flex;
      align-items: center; }
    .header-top .inner img {
      width: 100px;
      height: auto; }
  .header-top .h-cat ul li {
    display: inline-block; }
    .header-top .h-cat ul li a {
      display: block;
      font-size: 16px;
      padding: 16px;
      font-weight: 700;
      color: #fff; }
      @media only screen and (max-width: 992px) {
        .header-top .h-cat ul li a {
          font-size: 14px; } }
      .header-top .h-cat ul li a:hover {
        color: #fff;
        background: #f64f72; }

#header-sp {
  background: #fff;
  border-top: 5px solid #f64f72;
  padding: 16px;
  position: fixed;
  display: block;
  height: 60px;
  top: 0;
  width: 100%;
  z-index: 9999; }
  #header-sp .h-inner {
    display: flex; }
  #header-sp .h-logo img {
    width: 120px; }
  #header-sp .h-search {
    margin-left: auto;
    margin-right: 50px;
    margin-top: -3px;
    padding: 0 29px 0 16px;
    position: relative; }
  #header-sp .form {
    border: 2px solid #f64f72;
    border-radius: 15px 0 0 15px;
    font-size: 13px;
    padding: 3px 5px;
    width: 140px; }
  #header-sp #searchsubmit {
    background: #f64f72;
    border: none;
    border-radius: 0 15px 15px 0;
    cursor: pointer;
    height: 31px;
    position: absolute;
    width: 29px; }

/* ハンバーガーメニュー */
.drawer {
  position: absolute;
  top: 16px;
  right: 16px;
  color: #fff; }

.drawer-hidden {
  display: none; }

.drawer-open {
  display: flex;
  height: 20px;
  width: 20px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100;
  cursor: pointer;
  margin: auto;
  left: -6px; }

.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
  content: "";
  display: block;
  height: 2px;
  width: 20px;
  border-radius: 3px;
  background: #f64f72;
  transition: 0.5s;
  position: absolute; }

.drawer-open span:before {
  bottom: 7px; }

.drawer-open span:after {
  top: 7px; }

.drawer-open.clicked span {
  background: rgba(255, 255, 255, 0); }

.drawer-open.clicked span::before {
  bottom: 0;
  transform: rotate(45deg); }

.drawer-open.clicked span::after {
  top: 0;
  transform: rotate(-45deg); }

/* 横スライドメニュー*/
.drawer-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 61px;
  /*ヘッダーの高さ*/
  left: 100%;
  /*向き変更*/
  background: rgba(246, 79, 114, 0.85);
  transition: 0.5s;
  margin-left: 70px;
  /*向き変更・背景見せる場合マージン入れる*/
  padding-right: 70px;
  /*向き変更・背景見せる場合マージン入れる*/
  padding-bottom: 60px;
  overflow: scroll;
  z-index: 9999; }
  .drawer-content ul li.cat-item {
    position: relative; }
    .drawer-content ul li.cat-item a {
      border-bottom: 1px dotted #fff;
      color: #fff;
      display: block;
      font-size: 18px;
      font-weight: bold;
      padding: 24px 16px;
      position: relative; }
      .drawer-content ul li.cat-item a:after {
        content: '';
        width: 12px;
        height: 12px;
        background-image: url(../img/icon/arrow-down-white.png);
        background-size: contain;
        position: absolute;
        top: 43%;
        right: 5%; }
    .drawer-content ul li.cat-item .children {
      background: #f64f72; }
      .drawer-content ul li.cat-item .children li a {
        font-size: 16px;
        padding: 16px 16px 16px 40px; }
        .drawer-content ul li.cat-item .children li a:after {
          background: none; }
        .drawer-content ul li.cat-item .children li a:before {
          content: '';
          width: 12px;
          height: 12px;
          background-image: url(../img/icon/arrow-right-white.png);
          background-size: contain;
          position: absolute;
          top: 40%;
          left: 5%; }

.drawer-content.clicked {
  left: 0;
  /*向き変更*/ }

.drawer-content-bg.clicked {
  left: 0; }

/* ------------------------------------------------- *
*        ＠sidebar
* ------------------------------------------------- */
#sidebar ul.side-cate-box {
  background: #fff;
  border: 2px solid #f64f72;
  border-radius: 12px;
  font-weight: 700; }
  #sidebar ul.side-cate-box > li {
    padding: 1rem;
    border-bottom: 2px solid #f64f72; }
    #sidebar ul.side-cate-box > li a {
      color: #373737;
      display: block; }
    #sidebar ul.side-cate-box > li:last-of-type {
      border-bottom: none; }
  #sidebar ul.side-cate-box .children .cat-item .children {
    display: none;
    margin-top: 0;
    margin-left: .5rem; }
#sidebar li.cat-item {
  font-size: 1.1rem; }
#sidebar ul.children {
  margin-top: .5rem; }
  #sidebar ul.children li.cat-item {
    line-height: 2.3; }
    #sidebar ul.children li.cat-item a {
      color: #373737;
      display: inline-block;
      font-size: 0.9rem; }
      #sidebar ul.children li.cat-item a:before {
        content: '';
        /*何も入れない*/
        display: inline-block;
        width: 8px;
        /*画像の幅*/
        height: 10px;
        /*画像の高さ*/
        background-image: url(../img/icon/icon-right.png);
        background-size: contain;
        vertical-align: middle;
        margin-right: 0.5rem; }
    #sidebar ul.children li.cat-item.accordion {
      background: url(../img/icon/icon-plus.png) 98% 13px no-repeat;
      background-size: 20px; }
    #sidebar ul.children li.cat-item.accordion.active {
      background: url(../img/icon/icon-minus.png) 98% 13px no-repeat;
      background-size: 20px; }

aside {
  float: right;
  width: 26%;
  padding-left: 15px;
  margin-bottom: 40px;
  /* タイトル　*/
  /* おすすめ記事　*/
  /* ランキング記事　*/
  /* カテゴリ一覧 */ }
  @media only screen and (max-width: 992px) {
    aside {
      float: none;
      width: 100%; } }
  @media only screen and (max-width: 767px) {
    aside {
      float: none;
      width: 100%;
      padding: 0 16px; } }
  aside .side-title {
    padding: 8px 0;
    line-height: 1.2;
    font-size: 20px;
    border-bottom: 4px solid #f64f72;
    font-weight: bold;
    margin-bottom: 16px; }
  aside .side-column-osusume {
    margin-bottom: 32px; }
    aside .side-column-osusume .item {
      border-bottom: 1px solid #EEE; }
      aside .side-column-osusume .item a {
        color: #373737;
        padding: 16px 0;
        display: block;
        overflow: hidden;
        font-size: 13px; }
        aside .side-column-osusume .item a:hover {
          opacity: 0.9; }
        aside .side-column-osusume .item a img {
          width: 40%;
          float: left;
          border-radius: 4px; }
        aside .side-column-osusume .item a .txt {
          width: 60%;
          float: right;
          padding-left: 8px; }
          aside .side-column-osusume .item a .txt .tit {
            font-weight: 700;
            margin-bottom: 8px; }
          aside .side-column-osusume .item a .txt .label {
            text-align: right;
            font-size: 12px; }
    aside .side-column-osusume .item01 a {
      padding: 24px 0 16px 0; }
      aside .side-column-osusume .item01 a img {
        width: 100%;
        float: none;
        margin-bottom: 16px; }
      aside .side-column-osusume .item01 a .txt {
        width: 100%;
        float: none; }
  aside .side-column-rank {
    margin-bottom: 32px; }
    aside .side-column-rank #popular-post ul li {
      padding-bottom: 16px;
      line-height: 1.4; }
      aside .side-column-rank #popular-post ul li:hover {
        opacity: 0.9; }
      aside .side-column-rank #popular-post ul li .wpp-thumbnail {
        width: 100%;
        margin-right: 8px;
        margin-bottom: 8px;
        border-radius: 4px;
        height: auto;
        object-fit: cover; }
      aside .side-column-rank #popular-post ul li .wpp-post-title {
        font-size: 15px;
        font-weight: 700;
        color: #373737;
        margin-top: 0.8rem; }
      aside .side-column-rank #popular-post ul li .wpp-meta {
        font-size: 12px;
        text-align: right;
        font-weight: normal;
        margin-top: 0.5rem; }
        aside .side-column-rank #popular-post ul li .wpp-meta .tag-cate {
          float: left;
          color: #fff;
          background: #f64f72;
          padding: 0.2rem 0.8rem;
          border-radius: 20px;
          font-weight: bold; }
        aside .side-column-rank #popular-post ul li .wpp-meta .time {
          float: right; }
  aside .side-cat-list {
    margin-bottom: 32px; }
    aside .side-cat-list ul li {
      padding: 16px 0;
      border-bottom: 1px solid #EEE; }
      aside .side-cat-list ul li a {
        font-size: 16px;
        color: #373737;
        text-decoration: underline; }

.s-search {
  margin-bottom: 48px; }
  .s-search form {
    position: relative;
    max-width: 100%; }
  .s-search input {
    height: 40px;
    min-width: 250px;
    width: 100%;
    padding: 0 10px;
    border-radius: 2px;
    outline: 0;
    background: #f2f2f2;
    border-bottom: 1px solid #a8a8a8;
    border-right: 1px solid #a8a8a8; }
  .s-search button {
    height: 40px;
    position: absolute;
    right: 10px;
    top: 0;
    background: none;
    color: #666;
    border: none;
    font-size: 20px; }
    .s-search button img {
      width: 25px; }

/* ------------------------------------------------- *
*        ＠footer
* ------------------------------------------------- */
footer {
  clear: both;
  background: #f64f72;
  padding: 48px 0 32px;
  text-align: center; }
  footer .footer-top {
    padding: 80px 0 0 0; }
    @media only screen and (max-width: 767px) {
      footer .footer-top {
        padding: 48px 16px 0 16px; } }
  footer .f-logo img {
    margin: 0 auto 32px;
    width: 180px; }
    @media only screen and (max-width: 767px) {
      footer .f-logo img {
        margin-bottom: 32px; } }
  footer .f-logo .f-catch {
    margin-bottom: 32px;
    font-size: 34px;
    line-height: 1.7;
    font-weight: 700;
    color: #FFF;
    font-family: "游ゴシック体", YuGothic; }
    @media only screen and (max-width: 767px) {
      footer .f-logo .f-catch {
        font-size: 18px;
        margin-bottom: 16px; } }
  footer .f-logo .f-txt {
    font-size: 18px;
    color: #FFF;
    line-height: 2.1;
    margin-bottom: 80px; }
    @media only screen and (max-width: 767px) {
      footer .f-logo .f-txt {
        font-size: 14px;
        margin-bottom: 48px; } }
  footer .f-logo .f-sns {
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      footer .f-logo .f-sns {
        margin-bottom: 48px; } }
    footer .f-logo .f-sns ul li {
      display: inline-block; }
      footer .f-logo .f-sns ul li a {
        display: block; }
        footer .f-logo .f-sns ul li a img {
          width: 40px;
          margin: 0 24px; }
          @media only screen and (max-width: 767px) {
            footer .f-logo .f-sns ul li a img {
              width: 30px;
              margin: 0 16px; } }
  footer .footer-bottom {
    padding: 24px 0; }
    @media only screen and (max-width: 767px) {
      footer .footer-bottom {
        padding: 0;
        margin-bottom: 48px; } }
    footer .footer-bottom ul {
      margin-bottom: 16px; }
      @media only screen and (max-width: 767px) {
        footer .footer-bottom ul {
          margin-bottom: 0; } }
      footer .footer-bottom ul li {
        display: inline-block;
        background-size: 18px; }
        @media only screen and (max-width: 767px) {
          footer .footer-bottom ul li {
            border-bottom: 1px solid #fff;
            font-size: 14px;
            display: block;
            text-align: left;
            position: relative; } }
        @media only screen and (max-width: 767px) {
          footer .footer-bottom ul li:after {
            content: "";
            bottom: 45%;
            right: 5%;
            width: 5px;
            height: 5px;
            position: absolute;
            border-top: 1px solid #fff;
            border-right: 1px solid #fff;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg); } }
        footer .footer-bottom ul li a {
          padding: 0 24px;
          color: #fff; }
          @media only screen and (max-width: 767px) {
            footer .footer-bottom ul li a {
              padding: 16px;
              display: block; } }
          footer .footer-bottom ul li a:hover {
            text-decoration: underline; }
  footer .logo img {
    margin: 0 auto; }
  footer .copy {
    padding: .5rem; }
    footer .copy small {
      color: #fff;
      font-size: 12px; }
      @media only screen and (max-width: 767px) {
        footer .copy small {
          margin-top: 32px;
          display: block;
          font-size: 10px; } }
  footer .sns__container {
    padding: 3rem 1rem 1rem; }
    @media only screen and (max-width: 767px) {
      footer .sns__container {
        padding: 0 1rem 2rem; } }
    footer .sns__container i.fab {
      color: #fff;
      font-size: 30px; }

/* ------------------------------------------------- *
*        ＠Single（投稿ページ）
* ------------------------------------------------- */
/* ============ 通常コラム記事 ============ */
#single-column {
  margin-bottom: 64px;
  background: #FFF;
  /* 目次 */
  /* ============ 記事下CTA/おすすめエージェント ============ */
  /* ============ おすすめエージェントBOX ============ */
  /*/ CVボタン */
  /*BOXタイプ（記事内で使用） */
  /* テーブル(小) */
  /* テーブル(横スクロール) */
  /* ポイント */
  /* 枠 */
  /* 枠ドット */
  /* 枠ドット_ブルー */
  /* メモ */
  /*横スクロール用テーブルレイアウト */
  /* インタビュー */ }
  @media only screen and (max-width: 767px) {
    #single-column {
      margin-bottom: 32px; } }
  #single-column img {
    max-width: 100%;
    height: auto; }
  #single-column h1 {
    font-size: 30px;
    line-height: 1.5;
    border-bottom: 4px solid #f64f72;
    padding-bottom: 1rem; }
    @media only screen and (max-width: 767px) {
      #single-column h1 {
        font-size: 22px; } }
    #single-column h1 small {
      color: #888;
      font-size: 18px;
      font-weight: normal;
      letter-spacing: 1px;
      margin-left: 5px; }
      @media only screen and (max-width: 767px) {
        #single-column h1 small {
          font-size: 15px; } }
  #single-column h2 {
    padding: 16px 0;
    margin-bottom: 64px;
    font-size: 24px;
    line-height: 1.3;
    border-bottom: solid 3px #c4c4c4;
    position: relative; }
    @media only screen and (max-width: 767px) {
      #single-column h2 {
        font-size: 18px;
        margin-bottom: 32px; } }
    #single-column h2:after {
      position: absolute;
      content: " ";
      display: block;
      border-bottom: solid 3px #f64f72;
      bottom: -3px;
      width: 14%; }
  #single-column h3 {
    margin-bottom: 48px;
    padding-left: 16px;
    font-size: 24px;
    border-left: 6px solid #f64f72; }
    @media only screen and (max-width: 767px) {
      #single-column h3 {
        font-size: 18px;
        margin-bottom: 30px; } }
  #single-column h4 {
    font-size: 20px;
    margin-bottom: 16px; }
  #single-column p {
    margin: 16px 0 64px;
    font-size: 18px;
    line-height: 2.1; }
    @media only screen and (max-width: 767px) {
      #single-column p {
        font-size: 16px;
        margin: 16px 0 40px 0; } }
  #single-column ul {
    padding-left: 24px;
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #single-column ul {
        padding-left: 0;
        margin-bottom: 40px; } }
    #single-column ul li {
      font-size: 18px;
      margin-bottom: 16px;
      padding-left: 24px;
      position: relative;
      line-height: 2.1; }
      @media only screen and (max-width: 767px) {
        #single-column ul li {
          font-size: 15px; } }
      #single-column ul li:before {
        content: "";
        width: 10px;
        height: 10px;
        display: block;
        border-radius: 50%;
        background: #8f8f8f;
        position: absolute;
        left: 0;
        top: 8px; }
  #single-column ol {
    padding: 24px;
    margin-bottom: 64px;
    background: #f1f1f1; }
    @media only screen and (max-width: 767px) {
      #single-column ol {
        margin-bottom: 40px; } }
    #single-column ol li {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 16px;
      counter-increment: number;
      line-height: 2.1; }
      @media only screen and (max-width: 767px) {
        #single-column ol li {
          font-size: 15px; } }
      #single-column ol li:before {
        content: counter(number) ".";
        margin-right: 5px;
        color: #f64f72; }
      #single-column ol li:last-child {
        margin-bottom: 0; }
    #single-column ol.flow li {
      margin-bottom: 8px; }
      #single-column ol.flow li:after {
        content: '';
        display: block;
        width: 16px;
        height: 16px;
        background-image: url(../img/icon/icon-arrow-bottom2.png);
        background-size: contain;
        vertical-align: middle;
        margin-left: 10%;
        margin-top: 8px; }
      #single-column ol.flow li:last-child {
        margin-bottom: 0; }
        #single-column ol.flow li:last-child:after {
          background: none;
          margin-top: 0; }
  #single-column dl {
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #single-column dl {
        margin-bottom: 40px; } }
    #single-column dl dt {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 16px; }
      @media only screen and (max-width: 767px) {
        #single-column dl dt {
          font-size: 16px; } }
    #single-column dl dd {
      background: #f1f1f1;
      padding: 24px;
      margin-bottom: 32px;
      line-height: 2.1; }
      @media only screen and (max-width: 767px) {
        #single-column dl dd {
          font-size: 14px; } }
  #single-column table {
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #single-column table {
        margin-bottom: 40px; } }
    #single-column table th {
      background: #f1f1f1; }
      @media only screen and (max-width: 767px) {
        #single-column table th {
          font-size: 14px; } }
    @media only screen and (max-width: 767px) {
      #single-column table td {
        font-size: 14px; } }
  #single-column a {
    text-decoration: underline; }
  #single-column blockquote {
    padding: 24px 40px 24px 40px;
    background: #f3f3f3;
    position: relative;
    margin: 0 0 64px 24px; }
    @media only screen and (max-width: 767px) {
      #single-column blockquote {
        margin: 0 0 40px 15px;
        padding: 16px 16px 16px 24px; } }
    #single-column blockquote:before {
      content: "";
      width: 50px;
      height: 50px;
      background: url(../img/icon/icon-blockquote.png) no-repeat;
      background-size: contain;
      position: absolute;
      left: -24px;
      top: 30%; }
      @media only screen and (max-width: 767px) {
        #single-column blockquote:before {
          width: 30px;
          height: 30px;
          left: -15px; } }
    #single-column blockquote p {
      margin: 0; }
      @media only screen and (max-width: 767px) {
        #single-column blockquote p {
          font-size: 14px; } }
    #single-column blockquote cite {
      display: block;
      text-align: right; }
  #single-column hr {
    margin: 64px 0; }
    @media only screen and (max-width: 767px) {
      #single-column hr {
        margin: 40px 0; } }
  #single-column .cate-time {
    margin-top: 16px;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      #single-column .cate-time {
        margin-bottom: 24px; } }
  #single-column .tag-cate {
    background: #f64f72;
    border-radius: 20px;
    color: #fff;
    float: left;
    font-weight: bold;
    line-height: 1;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      #single-column .tag-cate {
        font-size: 14px; } }
  #single-column .time {
    font-size: 14px;
    float: right; }
    @media only screen and (max-width: 767px) {
      #single-column .time {
        color: #888;
        margin-bottom: 8px; } }
  #single-column .main-visual {
    margin: 24px 0 5px 0; }
    @media only screen and (max-width: 767px) {
      #single-column .main-visual {
        margin: 16px 0 5px; } }
    #single-column .main-visual img {
      border-radius: 8px;
      width: 100%;
      height: auto; }
  #single-column .text-pr {
    font-size: 13px;
    color: #888;
    margin: 0 0 32px;
    text-align: right; }
    @media only screen and (max-width: 767px) {
      #single-column .text-pr {
        font-size: 12px; } }
  #single-column .tag-list {
    text-align: right; }
    #single-column .tag-list a {
      color: #373737; }
  #single-column #toc_container {
    background: #f7f7f7;
    margin-bottom: 64px;
    padding: 20px;
    width: 100%;
    border: none;
    border-radius: 16px; }
    @media only screen and (max-width: 767px) {
      #single-column #toc_container {
        margin-bottom: 32px;
        padding: 15px 10px; } }
    #single-column #toc_container p.toc_title {
      font-size: 20px;
      text-align: left;
      line-height: 1.2rem; }
      @media only screen and (max-width: 767px) {
        #single-column #toc_container p.toc_title {
          font-size: 18px; } }
    #single-column #toc_container .toc_list {
      margin-top: 24px !important;
      padding: 0 0 0 1%; }
      #single-column #toc_container .toc_list li {
        list-style-type: none;
        margin-top: 16px;
        padding-left: 0; }
        @media only screen and (max-width: 767px) {
          #single-column #toc_container .toc_list li {
            line-height: 1.6rem;
            padding-left: 0; } }
        #single-column #toc_container .toc_list li:before {
          display: none; }
        #single-column #toc_container .toc_list li a {
          color: #f64f72; }
          @media only screen and (max-width: 767px) {
            #single-column #toc_container .toc_list li a {
              font-size: 14px; } }
        #single-column #toc_container .toc_list li .toc_number {
          background: #373737;
          color: #FFF;
          font-size: 14px;
          padding: 5px 10px;
          border-radius: 50%;
          margin-right: 16px; }
          @media only screen and (max-width: 767px) {
            #single-column #toc_container .toc_list li .toc_number {
              font-size: 11px;
              padding: 3px 6px;
              margin-right: 0; } }
  #single-column .cta .cta-h {
    background: #11b8c1;
    color: #fff;
    padding: 24px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    border-radius: 5px 5px 0 0; }
    @media only screen and (max-width: 767px) {
      #single-column .cta .cta-h {
        padding: 4%;
        font-size: 16px; } }
  #single-column .cta .cta-box {
    background: #f1f1f1;
    padding: 24px;
    border-radius: 5px; }
    @media only screen and (max-width: 767px) {
      #single-column .cta .cta-box {
        padding: 4%; } }
    #single-column .cta .cta-box .btn-cv .text {
      text-align: center;
      display: block;
      font-size: 18px;
      font-weight: bold;
      color: #737373; }
      @media only screen and (max-width: 767px) {
        #single-column .cta .cta-box .btn-cv .text {
          font-size: 15px; } }
    #single-column .cta .cta-box .btn-cv a {
      width: 90%;
      background: #fe7612 url(../img/icon/icon-arrow-wahite-waku.png) no-repeat right center;
      background-position: 96%;
      border-bottom: 3px solid #bb5204; }
    #single-column .cta .cta-box section {
      padding-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        #single-column .cta .cta-box section {
          padding-bottom: 4%; } }
      #single-column .cta .cta-box section img {
        border: 2px solid #fff; }
  #single-column .osusume-agent-box {
    padding: 24px;
    border: 1px solid #000;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      #single-column .osusume-agent-box {
        padding: 0; } }
    #single-column .osusume-agent-box .osusume-agent-box-title {
      text-align: center;
      font-weight: bold;
      font-size: 18px; }
      @media only screen and (max-width: 767px) {
        #single-column .osusume-agent-box .osusume-agent-box-title {
          padding-top: 5%; } }
    #single-column .osusume-agent-box ol {
      background: none;
      margin-bottom: 0; }
      #single-column .osusume-agent-box ol li {
        font-size: 14px;
        font-weight: normal; }
        #single-column .osusume-agent-box ol li span {
          padding-left: 8%; }
          @media only screen and (max-width: 767px) {
            #single-column .osusume-agent-box ol li span {
              padding-left: 0; } }
      #single-column .osusume-agent-box ol li:before {
        background: #373737;
        color: #FFF;
        font-size: 14px;
        padding: 6px 10px;
        border-radius: 50%;
        margin-right: 16px;
        content: counter(number); }
  #single-column .btn-cv {
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #single-column .btn-cv {
        margin-bottom: 40px; } }
    #single-column .btn-cv a {
      text-align: center;
      margin: 0 auto;
      padding: 24px 50px 24px 24px;
      width: 70%;
      display: block;
      background: #f64f72 url(../img/icon/icon-arrow-wahite-waku.png) no-repeat right center;
      background-position: 96%;
      font-size: 18px;
      color: #FFF;
      text-decoration: none; }
      @media only screen and (max-width: 767px) {
        #single-column .btn-cv a {
          font-size: 14px;
          width: 100%; } }
  #single-column table .btn-cv {
    margin-bottom: 0; }
    #single-column table .btn-cv a {
      width: 100%;
      font-size: 16px;
      background-size: 12px;
      background-position: 94%; }
      @media only screen and (max-width: 767px) {
        #single-column table .btn-cv a {
          font-size: 12px;
          padding: 10px 20px 10px 10px;
          background-size: 8px; } }
  #single-column .cv_box {
    border: 1px solid #222;
    padding: 32px;
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #single-column .cv_box {
        padding: 16px;
        margin-bottom: 40px; } }
    #single-column .cv_box .name {
      margin-bottom: 16px;
      font-size: 18px;
      font-weight: 700; }
    #single-column .cv_box .cv_box_card {
      overflow: hidden; }
      #single-column .cv_box .cv_box_card .card {
        width: 30%;
        float: left; }
        @media only screen and (max-width: 767px) {
          #single-column .cv_box .cv_box_card .card {
            width: 100%;
            float: none; } }
        @media only screen and (max-width: 767px) {
          #single-column .cv_box .cv_box_card .card img {
            width: 60%;
            margin: 0 auto 16px; } }
      #single-column .cv_box .cv_box_card p, #single-column .cv_box .cv_box_card ul {
        width: 70%;
        float: left;
        padding-left: 20px;
        margin: 0; }
        @media only screen and (max-width: 767px) {
          #single-column .cv_box .cv_box_card p, #single-column .cv_box .cv_box_card ul {
            width: 100%;
            float: none;
            padding-left: 0;
            font-size: 14px; } }
    #single-column .cv_box .cv-link {
      text-align: right; }
  #single-column table.small-table th {
    font-size: 12px;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      #single-column table.small-table th {
        font-size: 10px; } }
  #single-column table.small-table td {
    font-size: 12px;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      #single-column table.small-table td {
        font-size: 10px; } }
  #single-column .scroll-table {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    display: block;
    white-space: nowrap;
    margin-bottom: 32px; }
    @media only screen and (max-width: 767px) {
      #single-column .scroll-table:before {
        content: "※このテーブルは横スクロールできます ↓";
        font-size: 14px;
        margin-bottom: 8px;
        display: block; } }
    #single-column .scroll-table table {
      width: auto;
      border-collapse: collapse;
      border: solid 1px #ddd;
      margin: 0; }
      #single-column .scroll-table table th {
        width: 100px;
        font-size: 12px;
        padding: 8px; }
        @media only screen and (max-width: 767px) {
          #single-column .scroll-table table th {
            font-size: 10px;
            width: 80px; } }
      #single-column .scroll-table table td {
        width: 170px;
        white-space: normal;
        font-size: 12px;
        padding: 8px; }
        @media only screen and (max-width: 767px) {
          #single-column .scroll-table table td {
            font-size: 10px;
            width: 120px; } }
  #single-column .point {
    border: 1px solid #222;
    padding: 26px 24px 24px 24px;
    margin-bottom: 64px;
    position: relative;
    font-size: 18px;
    line-height: 2.1;
    color: #373737; }
    @media only screen and (max-width: 767px) {
      #single-column .point {
        margin-bottom: 40px;
        font-size: 15px; } }
    #single-column .point:before {
      content: 'POINT';
      display: inline-block;
      width: 140px;
      padding: 6px 0;
      background: #222;
      color: #FFF;
      font-size: 16px;
      line-height: 1;
      text-align: center;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%, -50%); }
    #single-column .point p, #single-column .point ul, #single-column .point ol, #single-column .point dl {
      margin: 0; }
  #single-column .waku {
    padding: 5%;
    border: 2px solid #DDD;
    font-size: 18px;
    line-height: 2.1;
    margin-bottom: 48px; }
    @media only screen and (max-width: 767px) {
      #single-column .waku {
        font-size: 16px; } }
  #single-column .waku-dot {
    padding: 5%;
    border: 3px dotted #cacaca;
    background: #f5f5f5;
    font-size: 18px;
    line-height: 2.1;
    margin-bottom: 48px; }
    @media only screen and (max-width: 767px) {
      #single-column .waku-dot {
        font-size: 16px; } }
  #single-column .waku-dot-b {
    padding: 5%;
    border: 3px dotted #15b9c2;
    font-size: 18px;
    line-height: 2.1;
    margin-bottom: 48px; }
    @media only screen and (max-width: 767px) {
      #single-column .waku-dot-b {
        font-size: 16px; } }
    #single-column .waku-dot-b span {
      font-weight: bold;
      color: #15b9c2; }
  #single-column .memo {
    border: 1px solid #222;
    padding: 26px 24px 24px 24px;
    margin-bottom: 64px;
    position: relative;
    font-size: 18px;
    line-height: 2.1;
    color: #373737; }
    @media only screen and (max-width: 767px) {
      #single-column .memo {
        margin-bottom: 40px;
        font-size: 15px; } }
    #single-column .memo:before {
      content: 'MEMO';
      display: inline-block;
      width: 120px;
      padding: 6px;
      background-color: #FFF;
      background-image: url(../img/icon/icon-memo-left.png), url(../img/icon/icon-memo-right.png);
      background-repeat: no-repeat;
      background-position: 8%,92%;
      color: #373737;
      font-size: 16px;
      line-height: 1;
      text-align: center;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%, -50%); }
    #single-column .memo p, #single-column .memo ul, #single-column .memo ol, #single-column .memo dl {
      margin: 0; }
  #single-column .table-big-caption {
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 14px;
    padding: 2px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      #single-column .table-big-caption {
        width: 100%; } }
  @media only screen and (max-width: 767px) {
    #single-column .table-big {
      overflow-x: auto;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      display: block;
      white-space: nowrap; } }
  @media only screen and (max-width: 767px) {
    #single-column .table-big table {
      width: auto; } }
  #single-column .table-big table th {
    font-size: 14px;
    padding: 10px; }
    @media only screen and (max-width: 767px) {
      #single-column .table-big table th {
        font-size: 10px; } }
  #single-column .table-big table td {
    font-size: 14px;
    padding: 10px; }
    @media only screen and (max-width: 767px) {
      #single-column .table-big table td {
        font-size: 10px; } }
  #single-column .q {
    margin-bottom: 32px;
    font-size: 18px;
    line-height: 2.1;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      #single-column .q {
        font-size: 16px;
        margin-bottom: 16px; } }
    #single-column .q:before {
      content: "ー"; }
  #single-column .a {
    margin-bottom: 64px;
    font-size: 18px;
    line-height: 2.1; }
    @media only screen and (max-width: 767px) {
      #single-column .a {
        font-size: 16px;
        margin-bottom: 48px; } }
  #single-column .interview-postscript {
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 32px; }
    @media only screen and (max-width: 767px) {
      #single-column .interview-postscript {
        font-size: 16px; } }
    #single-column .interview-postscript:before, #single-column .interview-postscript:after {
      border-top: 1px solid;
      content: "";
      flex-grow: 1;
      width: 5em; }
    #single-column .interview-postscript:before {
      margin-right: 1rem; }
    #single-column .interview-postscript:after {
      margin-left: 1rem; }
  #single-column .btn-column {
    background: #f64f72;
    border-radius: 4px;
    margin: 2rem auto 3rem auto;
    position: relative;
    text-align: center;
    width: 60%;
    -webkit-box-shadow: 0 -4px 0 rgba(0, 0, 0, 0.3) inset;
    box-shadow: 0 -4px 0 rgba(0, 0, 0, 0.3) inset;
    text-shadow: 2px 2px 2px #c13250; }
    @media only screen and (max-width: 767px) {
      #single-column .btn-column {
        width: 80%; } }
    #single-column .btn-column a {
      color: #FFF;
      display: block;
      font-size: 1.2rem;
      line-height: 1.2;
      padding: 1.2rem 1.4rem;
      font-weight: bold;
      text-decoration: none !important; }

/* ============ 執筆者box ============ */
#single-column {
  /*タブのスタイル*/
  /*ラジオボタンを全て消す*/
  /*タブ切り替えの中身のスタイル*/
  /*選択されているタブのコンテンツのみを表示*/
  /*選択されているタブのスタイルを変える*/ }
  #single-column .tab_content {
    border: 1px solid #ddd;
    border-radius: 0 0 8px 8px;
    padding: 1.5rem; }
    @media only screen and (max-width: 767px) {
      #single-column .tab_content {
        padding: 1rem; } }
    #single-column .tab_content h2 {
      border: none;
      font-size: 18px;
      margin: auto;
      padding: 0 0 1rem; }
      #single-column .tab_content h2::after {
        display: none; }
    #single-column .tab_content ul {
      margin-bottom: 0;
      padding-left: 0; }
      #single-column .tab_content ul li {
        list-style: none;
        font-size: 16px;
        margin-bottom: 0;
        padding-left: 0; }
        #single-column .tab_content ul li::before {
          display: none; }
        #single-column .tab_content ul li span {
          color: #8f8f8f;
          font-size: 15px; }
    #single-column .tab_content .all_content {
      font-size: 16px;
      margin: auto;
      text-align: right; }
  #single-column .saboxplugin-wrap {
    border: none; }
    #single-column .saboxplugin-wrap a {
      color: #373737;
      font-weight: bold;
      pointer-events: none;
      text-decoration: none; }
    #single-column .saboxplugin-wrap .saboxplugin-authorname {
      margin: 0; }
    #single-column .saboxplugin-wrap .saboxplugin-gravatar {
      padding: 0 20px 0 0; }
      @media only screen and (max-width: 767px) {
        #single-column .saboxplugin-wrap .saboxplugin-gravatar {
          float: left;
          padding: 0 0.8rem 0 0; } }
      #single-column .saboxplugin-wrap .saboxplugin-gravatar img {
        border-radius: 50%;
        width: 100px; }
    #single-column .saboxplugin-wrap .saboxplugin-desc p {
      margin: 16px; }
  #single-column .tab_item {
    width: calc(100%/2);
    height: 45px;
    border-bottom: 3px solid #f64f72;
    background-color: #e9e9e9;
    line-height: 47px;
    font-size: 16px;
    text-align: center;
    color: #565656;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease; }
    @media only screen and (max-width: 767px) {
      #single-column .tab_item {
        height: 38px;
        line-height: 37px;
        font-size: 15px; } }
  #single-column .tab_item:hover {
    opacity: 0.75; }
  #single-column input[name="tab_item"] {
    display: none; }
  #single-column .tab_content {
    display: none;
    clear: both;
    overflow: hidden; }
  #single-column #all:checked ~ #all_content,
  #single-column #programming:checked ~ #programming_content,
  #single-column #design:checked ~ #design_content {
    display: block; }
  #single-column .tabs input:checked + .tab_item {
    background-color: #f64f72;
    color: #fff; }

/* ------------------------------------------------- *
*        ＠Category（カテゴリーページ）
* ------------------------------------------------- */
/* ============ 記事カテゴリー ============ */
#cat-column {
  /*　子カテゴリリスト */ }
  #cat-column .cat-description {
    margin-bottom: 32px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      #cat-column .cat-description {
        text-align: left; } }
  #cat-column .child-cat-list {
    margin: 0 -4px 40px -4px;
    overflow: hidden; }
    #cat-column .child-cat-list li {
      float: left;
      margin: 4px; }
      #cat-column .child-cat-list li a {
        font-size: 14px;
        padding: 8px 12px;
        display: block;
        color: #373737;
        background: #EFEFEF;
        border: 1px solid #EFEFEF; }
        @media only screen and (max-width: 767px) {
          #cat-column .child-cat-list li a {
            padding: 4px 8px;
            font-size: 10px; } }
        #cat-column .child-cat-list li a:hover {
          color: #f64f72;
          border: 1px solid #f64f72;
          background: #FFF; }

/* ------------------------------------------------- *
*        ＠Taxonomy（タクソノミーページ）
* ------------------------------------------------- */
/* ============ ★ ============ */
/* ------------------------------------------------- *
*        ＠Arcive（アーカイブーページ）
* ------------------------------------------------- */
/* ============ ★ ============ */
/* ------------------------------------------------- *
*        ＠Tag（タグページ）
* ------------------------------------------------- */
/* ------------------------------------------------- *
*        ＠Page（固定ページ）
* ------------------------------------------------- */
/* ============ 固定ページ（標準） ============ */
#page-content h2 {
  padding: 16px 0;
  margin-bottom: 64px;
  font-size: 28px;
  line-height: 1.3;
  border-top: 2px solid #222;
  border-bottom: 2px solid #222; }
#page-content h3 {
  margin-bottom: 48px;
  padding-left: 16px;
  font-size: 24px;
  border-left: 5px solid #373737; }
#page-content p {
  margin: 16px 0 48px;
  font-size: 18px;
  line-height: 2.1; }
  @media only screen and (max-width: 767px) {
    #page-content p {
      font-size: 16px; } }
#page-content a {
  text-decoration: underline; }
#page-content table {
  margin-bottom: 64px; }
  #page-content table th {
    background: #f1f1f1; }

/* ============ Sitemapページ ============ */
#page-sitemap {
  padding: 0 0 96px 0; }
  #page-sitemap h2 {
    padding: 16px 0;
    margin: 32px 0 16px 0;
    font-size: 28px;
    line-height: 1.3;
    border-top: 2px solid #222;
    border-bottom: 2px solid #222; }
    @media only screen and (max-width: 767px) {
      #page-sitemap h2 {
        font-size: 18px;
        margin: 32px 0 8px 0; } }
    #page-sitemap h2 a {
      color: #373737; }
  #page-sitemap ul li {
    margin-bottom: 8px; }
    @media only screen and (max-width: 767px) {
      #page-sitemap ul li {
        line-height: 1.1;
        margin-bottom: 0;
        border-bottom: 1px dotted #DDD; } }
    #page-sitemap ul li a {
      color: #373737;
      text-decoration: underline; }
      @media only screen and (max-width: 767px) {
        #page-sitemap ul li a {
          font-size: 12px;
          display: block;
          text-decoration: none;
          padding: 10px 0; } }

/* ============ コンタクトページ ============ */
#page-contact {
  padding: 0 0 96px 0; }
  @media only screen and (max-width: 767px) {
    #page-contact {
      padding: 0 0 32px 0; } }
  #page-contact .page-description {
    padding: 32px 0; }
    @media only screen and (max-width: 767px) {
      #page-contact .page-description {
        padding: 0; } }
    @media only screen and (max-width: 767px) {
      #page-contact .page-description p {
        font-size: 12px; } }
  #page-contact .contact-form {
    margin-top: 64px; }
    @media only screen and (max-width: 767px) {
      #page-contact .contact-form {
        margin-top: 32px; } }
    #page-contact .contact-form dl dt {
      width: 180px;
      float: left;
      clear: both;
      font-weight: bold; }
      @media only screen and (max-width: 767px) {
        #page-contact .contact-form dl dt {
          width: 100%;
          margin-bottom: 4px; } }
      #page-contact .contact-form dl dt .required:after {
        content: "＊";
        font-size: 12px;
        color: #da0e69;
        padding-left: 8px; }
    #page-contact .contact-form dl dd {
      padding: 0 0 0 200px;
      margin-bottom: 32px; }
      @media only screen and (max-width: 767px) {
        #page-contact .contact-form dl dd {
          padding: 0;
          margin-bottom: 16px; } }
    #page-contact .contact-form dl input[type="text"], #page-contact .contact-form dl input[type="email"], #page-contact .contact-form dl textarea, #page-contact .contact-form dl select {
      width: 100%;
      padding: 8px; }
    #page-contact .contact-form dl textarea[name="your-subject"] {
      height: 90px; }
    #page-contact .contact-form .submit {
      margin: 64px 0; }
      @media only screen and (max-width: 767px) {
        #page-contact .contact-form .submit {
          margin: 32px 0; } }
      #page-contact .contact-form .submit input[type="submit"] {
        text-align: center;
        border: none;
        padding: 24px;
        width: 60%;
        display: block;
        background: #303030 url(../img/icon/icon-arrow-wahite-waku.png) no-repeat right center;
        background-position: 96%;
        font-size: 18px;
        color: #FFF;
        text-decoration: none;
        margin: 0 auto; }
        @media only screen and (max-width: 767px) {
          #page-contact .contact-form .submit input[type="submit"] {
            width: 80%; } }
  #page-contact .caution {
    border: 1px solid #DDD;
    padding: 32px 32px 16px 32px;
    margin-bottom: 64px; }
    #page-contact .caution p {
      line-height: 1.6;
      font-size: 14px;
      margin-bottom: 16px; }

/* ============ コンセプトページ ============ */
#page-concept {
  text-align: center;
  background: linear-gradient(to bottom, #edf3f6, #FFF); }
  #page-concept #main-w {
    padding: 64px 0 1px 0;
    background: url(../img/bg/bg-concept.png) no-repeat right top; }
    @media only screen and (max-width: 767px) {
      #page-concept #main-w {
        padding: 64px 16px 0 16px; } }
  #page-concept .midashi {
    font-family: "游ゴシック体", YuGothic;
    font-size: 30px;
    margin-bottom: 64px; }
    @media only screen and (max-width: 767px) {
      #page-concept .midashi {
        font-size: 20px;
        margin-bottom: 32px; } }
    #page-concept .midashi span {
      padding-bottom: 10px;
      border-bottom: 2px solid #222; }
  #page-concept h1 {
    line-height: 1.5;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      #page-concept h1 {
        font-size: 18px;
        margin-bottom: 64px; } }
  #page-concept .item-section {
    margin-bottom: 120px; }
    #page-concept .item-section h2 {
      font-size: 24px;
      margin-bottom: 48px;
      font-family: "Yu Mincho", "YuMincho"; }
      @media only screen and (max-width: 767px) {
        #page-concept .item-section h2 {
          font-size: 20px;
          margin-bottom: 32px; } }
    #page-concept .item-section p {
      font-size: 18px;
      line-height: 2.1; }
      @media only screen and (max-width: 767px) {
        #page-concept .item-section p {
          font-size: 16px; } }

/* ============ 404ページ ============ */
#page-404 {
  text-align: center;
  margin: 120px 0 160px 0; }
  @media only screen and (max-width: 767px) {
    #page-404 {
      margin: 84px 0 100px 0; } }
  #page-404 .title {
    font-size: 24px;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      #page-404 .title {
        font-size: 18px;
        margin-bottom: 16px; } }
  #page-404 .sub-txt a {
    text-decoration: underline; }

/* ============ reページ ============ */
#page-re {
  position: relative;
  height: 100vh; }
  #page-re .page-re-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      #page-re .page-re-content {
        width: 90%; } }
    #page-re .page-re-content h1 {
      margin-bottom: 16px; }
    #page-re .page-re-content a {
      text-decoration: underline;
      margin-bottom: 16px;
      display: block; }
    #page-re .page-re-content img {
      display: inline; }
    #page-re .page-re-content .title {
      font-size: 24px;
      font-weight: bold;
      margin: 0% 0 12px 0; }
      @media only screen and (max-width: 767px) {
        #page-re .page-re-content .title {
          margin: -30% 0 8% 0; } }
    #page-re .page-re-content .loading {
      margin: 0 auto; }

/* ------------------------------------------------- *
*        ＠その他
* ------------------------------------------------- */
/* ============ WP_login画面 ============ */
.wp-login {
  background: url(../img/bg/bg-login.jpg) no-repeat;
  background-size: cover; }

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