@charset "UTF-8";
/*--------------------------------------------------------------
  mixin
--------------------------------------------------------------*/
/*--------------------------------------------------------------
  sp用 mixin
--------------------------------------------------------------*/
/* =============================================================================
   リセット
   ========================================================================== */
html {
  color: #000;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

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

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

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

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

a:focus,
button:focus {
  outline: none;
}

#yui3-css-stamp.cssreset {
  display: none;
}

.sp_none {
  display: block !important;
}

.pc_none {
  display: none !important;
}

@media (max-width: 750px) {
  .sp_none {
    display: none !important;
  }
  .pc_none {
    display: block !important;
  }
}

/* =======================================================================
   クリアーフィックス
========================================================================== */
/* For modern browsers */
.cf:before, .cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
  zoom: 1;
}

/* =======================================================================
   WordPress用
========================================================================== */
.aligncenter,
div.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

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

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

.wp-caption {
  border: 1px solid #ddd;
  text-align: center;
  background-color: #f3f3f3;
  padding-top: 4px;
  margin: 10px;
  /* optional rounded corners for browsers that support it */
  -moz-border-radius: 3px;
  -khtml-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

.wp-caption img {
  margin: 0;
  padding: 0;
  border: 0 none;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  padding: 0 4px 5px;
  margin: 0;
}

/* =======================================================================
   common
========================================================================== */
body {
  overflow-x: hidden;
  font-family: "游ゴシック体", YuGothic, "游ゴシック","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","MS Pゴシック",sans-serif;
  text-align: justify;
}

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

body {
  background: url(../images/common/body_bg.png);
}

.body_inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

/* ----------------------------------------------
   header
---------------------------------------------- */
.scroll_inner {
  -ms-overflow-style: none;
  overflow-style: none;
}
.breadcrumb_list{
  -ms-overflow-style: none;
}
.breadcrumb_list::-webkit-scrollbar, .breadcrumb_list_wrap::-webkit-scrollbar{
  width: 0 !important
}
.breadcrumb_list{
  overflow: -moz-scrollbars-none;
}

@media (min-width: 1001px) {
  .header {
    position: relative;
    width: 300px;
    min-height: 100%;
    background-color: #fff;
    overflow: hidden;
  }
  .head_inner {
    width: 300px;
    height: 100%;
    /*position: fixed;*/
    background: #fff;
  }
  .scroll_inner {
    /*overflow-y: scroll;*/
    -ms-overflow-style: none;
  }
  .site_logo {
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .site_logo:hover {
    opacity: 0.8;
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .site_logo img {
    display: block;
  }
}

@media (max-width: 1000px) {
  .head_inner {
    display: none;
  }
}

/* ----------------------------------------------
   サイドカテゴリメニュー
---------------------------------------------- */
/*.cat_nav {
  padding-top: 20px;
}*/

.cat_nav a {
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.cat_nav > .cat-item {
  padding: 0 20px;
}

.cat_nav > .cat-item > a {
  font-size: 16px;
  color: #282828;
  font-weight: bold;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 55px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 25px;
  position: relative;
  border-top: solid 1px #cfcfcf;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item > a:after {
  content: "";
  width: 10px;
  height: 16.5px;
  display: block;
  background: url(../images/common/icon_arrow_right_red.png) no-repeat;
  background-size: cover;
  position: absolute;
  left: 5px;
}

.cat_nav .cat-item-basic-knowledge a {
  border: none;
}

.cat_nav .cat-item-recommended,
.cat_nav .cat-item-common-point,
.cat_nav .cat-item-electronic-money {
  margin: 30px 0 10px;
  background: #bce5f4;
  padding: 0 10px 10px;
}

.cat_nav .cat-item-recommended a,
.cat_nav .cat-item-common-point a,
.cat_nav .cat-item-electronic-money a {
  text-decoration: none;
  padding-left: 0;
  border: none;
}

.cat_nav .cat-item-recommended a:after,
.cat_nav .cat-item-common-point a:after,
.cat_nav .cat-item-electronic-money a:after {
  content: none;
}

.cat_nav .cat-item-recommended + .cat-item a,
.cat_nav .cat-item-common-point + .cat-item a,
.cat_nav .cat-item-electronic-money + .cat-item a {
  border: none;
}

.cat_nav .children {
  background: #fff;
}

.cat_nav .children .cat-item {
  margin: 0 15px;
}

.cat_nav .children .cat-item a {
  border: none;
  display: block;
  font-size: 16px;
  line-height: 1.3333;
  color: #323232;
  font-weight: bold;
  padding: 20px 0 20px 75px;
}

.cat_nav .children .cat-item + .cat-item {
  border-top: solid 1px #cfcfcf;
}

.cat_nav > .cat-item-recommended > a,
.cat_nav > .cat-item-common-point > a,
.cat_nav > .cat-item-electronic-money > a {
  font-size: 21px;
  color: #ffe869;
  line-height: 1.2;
  text-shadow: #414042 2px 0px,  #414042 -2px 0px, #414042 0px -2px, #414042 0px 2px, #414042 2px 2px , #414042 -2px 2px, #414042 2px -2px, #414042 -2px -2px, #414042 1px 2px,  #414042 -1px 2px, #414042 1px -2px, #414042 -1px -2px, #414042 2px 1px,  #414042 -2px 1px, #414042 2px -1px, #414042 -2px -1px;
}

.cat_nav > .cat-item-recommended > a {
  padding: 20px 10px 10px 80px;
}

.cat_nav > .cat-item-recommended > a {
  position: relative;
}

.cat_nav > .cat-item-recommended > a::before {
  content: "";
  width: 78px;
  height: 67px;
  background: url(../images/common/s_reccomend_neko.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  left: -8px;
  bottom: 0;
}

.cat_nav > .cat-item-recommended > a::after {
  content: "";
  width: 15px;
  height: 24.5px;
  background: url(../images/common/icon_arrow_right_white.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  left: auto;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item-recommended .children .cat-item span {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffea72));
  background: -webkit-linear-gradient(transparent 60%, #ffea72 60%);
  background: -o-linear-gradient(transparent 60%, #ffea72 60%);
  background: linear-gradient(transparent 60%, #ffea72 60%);
  white-space: nowrap;
}

.cat_nav > .cat-item-common-point > a {
  padding: 15px 0 15px 105px;
  position: relative;
}

.cat_nav > .cat-item-common-point > a::before {
  content: "";
  width: 94px;
  height: 98px;
  background: url(../images/common/s_point_icon.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  display: block;
  left: 0;
  top: -14px;
}

.cat_nav > .cat-item-common-point > a::after {
  content: "";
  width: 15px;
  height: 24.5px;
  background: url(../images/common/icon_arrow_right_white.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  left: auto;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item-electronic-money > a {
  padding: 15px 0 15px 105px;
  position: relative;
}

.cat_nav > .cat-item-electronic-money > a::before {
  content: "";
  width: 98px;
  height: 79px;
  background: url(../images/common/s_money_icon.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  display: block;
  left: -4px;
  bottom: -3px;
}

.cat_nav > .cat-item-electronic-money > a::after {
  content: "";
  width: 15px;
  height: 24.5px;
  background: url(../images/common/icon_arrow_right_white.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  left: auto;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.children .cat-item {
  position: relative;
}

.children .cat-item a:hover {
  color: #c52020;
}

.cat-item-issued-on-the-sameday {
  background: url(../images/common/s_reccomend_icon01.png) no-repeat 6.5px center;
  background-size: 47px auto;
}

.cat-item-high-reduction {
  background: url(../images/common/s_reccomend_icon02.png) no-repeat 7.5px center;
  background-size: 45px auto;
}

.cat-item-earn-miles {
  background: url(../images/common/s_reccomend_icon03.png) no-repeat 9px center;
  background-size: 42px auto;
}

.cat-item-for-students {
  background: url(../images/common/s_reccomend_icon04.png) no-repeat 12px center;
  background-size: 36px auto;
}

.cat-item-for-corporate-customers {
  background: url(../images/common/s_reccomend_icon05.png) no-repeat 8px center;
  background-size: 44px auto;
}

.cat-item-travel {
  background: url(../images/common/s_reccomend_icon06.png) no-repeat 1px center;
  background-size: 58px auto;
}

.cat-item-gold-card {
  background: url(../images/common/s_reccomend_icon07.png) no-repeat 4.5px center;
  background-size: 51px auto;
}

.cat-item-gasoline {
  background: url(../images/common/s_reccomend_icon08.png) no-repeat 5px center;
  background-size: 50px auto;
}

.cat-item-female-recommendation {
  background: url(../images/common/s_reccomend_icon09.png) no-repeat 15.5px center;
  background-size: 29px auto;
}

.cat-item-department-store {
  background: url(../images/common/s_reccomend_icon10.png) no-repeat 7px center;
  background-size: 46px auto;
}

.cat-item-convenience-store-deals {
  background: url(../images/common/s_reccomend_icon11.png) no-repeat 4px center;
  background-size: 52px auto;
}

.cat-item-super-creditcard {
  background: url(../images/common/s_reccomend_icon12.png) no-repeat 4px center;
  background-size: 52px auto;
}

.cat-item-platinum-card {
  background: url(../images/common/s_reccomend_icon13.png) no-repeat 4px center;
  background-size: 52px auto;
}

.cat-item-free-annual-fee {
  background: url(../images/common/s_reccomend_icon14.png) no-repeat 8.5px center;
  background-size: 43px auto;
}

.cat-item-tpoint {
  background: url(../images/common/t_point_icon.png) no-repeat 15px center;
  background-size: 30px auto;
}

.cat-item-ponta {
  background: url(../images/common/ponta_point_icon.png) no-repeat 3.5px center;
  background-size: 53px auto;
}

.cat-item-d-point {
  background: url(../images/common/d_point_icon.png) no-repeat 9.5px center;
  background-size: 41px auto;
}

.cat-item-rakuten-super-point {
  background: url(../images/common/rakuten_point_icon.png) no-repeat 10px center;
  background-size: 40px auto;
}

.cat-item-nanaco {
  background: url(../images/common/nanaco_icon.png) no-repeat 9.5px center;
  background-size: 41px auto;
}

.cat-item-waon {
  background: url(../images/common/waon_icon.png) no-repeat 10px center;
  background-size: 40px auto;
}

.cat-item-quicpay {
  background: url(../images/common/quicpay_icon.png) no-repeat 10px center;
  background-size: 40px auto;
}

.cat-item-id {
  background: url(../images/common/id_icon.png) no-repeat 10px center;
  background-size: 40px auto;
}

.cat-item-suica {
  background: url(../images/common/suica_icon.png) no-repeat 10px center;
  background-size: 40px auto;
}

.cat-item-edy {
  background: url(../images/common/rakuten_edy_icon.png) no-repeat 17px center;
  background-size: 26px auto;
}

.cat-item-transportation-electronic-money {
  background: url(../images/common/ts_money_icon.png) no-repeat 9.5px center;
  background-size: 41px auto;
}

.cat_nav > .cat-item .standard {
  white-space: nowrap;
}

.cat_nav > .cat-item .standard:hover {
  -webkit-transform: translateX(4px);
  -ms-transform: translateX(4px);
  transform: translateX(4px);
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
  color: #c52020;
}

.cat_nav > .cat-item .chara {
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.cat_nav > .cat-item .chara:hover {
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item .chara:hover::before {
  -webkit-animation: puyon 0.5s linear 0.1s 1;
  animation: puyon 0.5s linear 0.1s 1;
}

.cat_nav > .cat-item.cat-item-recommended a:hover {
  padding-left: 84px;
}

.cat_nav > .cat-item.cat-item-recommended a:hover::after {
  right: -4px;
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item.cat-item-common-point a:hover, .cat_nav > .cat-item.cat-item-electronic-money a:hover {
  padding-left: 109px;
}

.cat_nav > .cat-item.cat-item-common-point a:hover::after, .cat_nav > .cat-item.cat-item-electronic-money a:hover::after {
  right: -4px;
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item .children li:hover {
  -webkit-animation: bg_puyon 0.3s linear 0s 1;
  animation: bg_puyon 0.3s linear 0s 1;
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item .children li a {
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

.cat_nav > .cat-item .children li a:hover {
  padding-left: 79px;
  -webkit-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-out;
}

@-webkit-keyframes puyon {
  20% {
    -webkit-transform: translate(0%, -15%);
    transform: translate(0%, -15%);
  }
  60% {
    -webkit-transform: translate(0%, 2%);
    transform: translate(0%, 2%);
  }
  70% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
}

@keyframes puyon {
  20% {
    -webkit-transform: translate(0%, -15%);
    transform: translate(0%, -15%);
  }
  60% {
    -webkit-transform: translate(0%, 2%);
    transform: translate(0%, 2%);
  }
  70% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
}

@-webkit-keyframes bg_puyon {
  30% {
    background-position-y: 10%;
  }
  50% {
    background-position-y: 20%;
  }
}

@keyframes bg_puyon {
  30% {
    background-position-y: 10%;
  }
  50% {
    background-position-y: 20%;
  }
}

/* ----------------------------------------------
   サイド 検索ボックス
---------------------------------------------- */
.search_wrap {
  margin: 50px 15px 49px;
}

.search_wrap .search_title {
  width: 120px;
  margin-bottom: 5px;
}

.search_wrap .search_form {
  border: solid 3px #979797;
  position: relative;
}

.search_wrap .search_field {
  font-size: 16px;
  padding: 13px 15px;
  line-height: 1;
  display: inline-block;
  background: #fff;
  border: none;
  width: calc( 100% - 52px);
}

.search_wrap .search_submit {
  display: inline-block;
  background: #335279 url(../images/common/seach_icon.png) no-repeat center center;
  background-size: 30px 30px;
  height: 100%;
  width: 52px;
  position: absolute;
  right: 0px;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* ----------------------------------------------
   サイド sns ボタン
---------------------------------------------- */
.sns_share_list.side_sns {
  width: 209px;
  position: relative;
  padding-top: 42px;
}

.sns_share_list.side_sns::before {
  content: "";
  width: 251.5px;
  height: 25.5px;
  background: url(../images/common/side_title_share.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  top: 0;
}

.sns_share_list.side_sns .sns_share_list_item a {
  width: 57.5px;
  height: 57.5px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_tw {
  background-size: 18px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_tw:hover {
  background-size: 18px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_hatena {
  background-size: 15px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_hatena:hover {
  background-size: 15px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_fb {
  background-size: 8px;
}

.sns_share_list.side_sns .sns_share_list_item .btn_fb:hover {
  background-size: 8px;
}

.sns_share_list.side_sns .btn_comment {
  display: none;
}

/* =======================================================================
   main 共通
========================================================================== */
.main_content {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
  background: url(../images/common/header_bg.png) no-repeat left top;
  background-size: 1620px auto;
  overflow-x: hidden;
}

.main_content_inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.article_content {
  background: #fff;
}

@media (max-width: 750px) {
  .main_content {
    background: url(../images/common/sp_header_bg.png) no-repeat left 30px;
    background-size: 100% auto;
  }
}

@media (max-width: 1300px) and (min-width: 1001px) {
  .main_content_inner {
    padding: 0 30px;
  }
}

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

.page_top {
  width: 75.5px;
  height: auto;
  position: fixed;
  right: 1%;
  bottom: 10px;
  z-index: 999;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.page_top:hover {
  cursor: pointer;
  opacity: 0.8;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

@media (max-width: 1000px) {
  .page_top {
    display: none;
  }
}

/* =======================================================================
   パンくず
========================================================================== */
.breadcrumb_list_wrap {
  width: 100%;
  height: 30px;
  line-height: 30px;
  background: #fff;
  padding-left: 32.5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 10px;
}

.breadcrumb_list {
  overflow-x: scroll;
  white-space: nowrap;
  min-width: inherit;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.breadcrumb_list .breadcrumb_list_item,
.breadcrumb_list > span {
  font-size: 12px;
}

.breadcrumb_list .breadcrumb_list_item a,
.breadcrumb_list > span a {
  font-size: 12px;
  color: #0085bf;
  text-decoration: underline;
}

.breadcrumb_list .breadcrumb_list_item + .breadcrumb_list_item,
.breadcrumb_list .breadcrumb_list_item + span,
.breadcrumb_list > span + .breadcrumb_list_item,
.breadcrumb_list > span + span {
  padding-left: 17.5px;
  position: relative;
}

.breadcrumb_list .breadcrumb_list_item + .breadcrumb_list_item:before,
.breadcrumb_list .breadcrumb_list_item + span:before,
.breadcrumb_list > span + .breadcrumb_list_item:before,
.breadcrumb_list > span + span:before {
  content: ">";
  position: absolute;
  left: 5px;
}

@media (max-width: 750px) {
  .breadcrumb_list_wrap {
    padding-left: 3.33vw;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .breadcrumb_list_wrap {
    padding-left: 20px;
  }
}

/* =======================================================================
   top
========================================================================== */
.home .main_content,
.search .main_content {
  background: none;
}

.hero_image {
  height: 422.5px;
  background: #0285BF url(../images/top/hero_main_bg.png) no-repeat left top;
  background-size: 1620px auto;
  position: relative;
  z-index: 3;
}

.hero_image img {
  display: block;
  width: 100%;
}

.hero_image .hero_image_inner {
  height: 422.5px;
  max-width: 996px;
  margin: 0 auto;
  position: relative;
}

.hero_image .hero_main_logo {
  padding: 0vw 1.53vw 0vw 1.53vw;
  position: absolute;
  top: 27px;
}

.hero_image .hero_main_chara {
  width: 52.42vw;
  max-width: 681.5px;
  position: absolute;
  right: -15px;
  bottom: 0;
}

.hero_image .hero_main_chara .shine {
  width: 5.5vw;
  max-width: 71.5px;
  height: 5.5vw;
  max-height: 71.5px;
  position: absolute;
  background: url(../images/top/hikari.png) no-repeat left top;
  background-size: 100% 100%;
}

.hero_image .hero_main_chara .shine.shine01 {
  left: 0;
  top: 12.92vw;
  -webkit-animation: blink .6s linear infinite alternate;
  animation: blink .6s linear infinite alternate;
}

.hero_image .hero_main_chara .shine.shine02 {
  left: 14.3vw;
  top: 9.84vw;
  -webkit-animation: blink .6s linear infinite alternate;
  animation: blink .6s linear infinite alternate;
}

.hero_image .hero_main_chara .shine.shine03 {
  left: 30.23vw;
  top: 8.23vw;
  -webkit-animation: blink 1s linear infinite alternate;
  animation: blink 1s linear infinite alternate;
}

@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.hero_image .hero_main_nekomaru {
  width: 16.92vw;
  max-width: 220px;
  height: auto;
  position: absolute;
  bottom: -70px;
  left: 12px;
  z-index: 5;
  -webkit-animation: fuwafuwa01 1s ease-in-out infinite alternate;
  animation: fuwafuwa01 1s ease-in-out infinite alternate;
}

.hero_image .hero_main_nekomaru_inner {
  -webkit-animation: fuwafuwa02 1.2s ease-in-out infinite alternate;
  animation: fuwafuwa02 1.2s ease-in-out infinite alternate;
}

@-webkit-keyframes fuwafuwa01 {
  0% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fuwafuwa01 {
  0% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fuwafuwa02 {
  0% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
}

@keyframes fuwafuwa02 {
  0% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
}

.hero_image .hero_main_card {
  width: 294.5px;
  height: auto;
  position: absolute;
  left: 0;
  bottom: -370px;
}

.hero_image .pickup_label {
  width: 10.5421%;
  height: auto;
  margin: 0 auto;
  position: absolute;
  left: 30%;
  bottom: -52.5px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 5;
}

.hero_image .pickup_label img {
  width: 100%;
}

@media (max-width: 1000px) {
  .hero_image {
    height: 42.25vw;
    max-height: 422.5px;
  }
  .hero_image .hero_image_inner {
    height: 42.25vw;
    max-height: 422.5px;
  }
  .hero_image .hero_main_logo {
    top: 2.7vw;
  }
  .hero_image .hero_main_chara {
    width: 68.15vw;
    max-width: 681.5px;
  }
  .hero_image .hero_main_chara .shine {
    width: 7.14vw;
    max-width: 71.5px;
    height: 7.14vw;
    max-height: 71.5px;
  }
  .hero_image .hero_main_chara .shine.shine01 {
    left: 0;
    top: 16.8vw;
  }
  .hero_image .hero_main_chara .shine.shine02 {
    left: 18.6vw;
    top: 12.8vw;
  }
  .hero_image .hero_main_chara .shine.shine03 {
    left: 39.3vw;
    top: 10.7vw;
  }
  .hero_image .hero_main_nekomaru {
    width: 22vw;
    max-width: 220px;
  }
  .hero_image .hero_main_card {
    width: 29.45vw;
    max-width: 294.5px;
    bottom: -37vw;
  }
}

@media (max-width: 750px) {
  .hero_image {
    height: 76.4vw;
    max-height: 573px;
    background: #0285BF url(../images/top/sp_hero_main_bg.png) no-repeat left top;
    background-size: 100% auto;
  }
  .hero_image .hero_image_inner {
    height: 76.4vw;
    max-height: 573px;
  }
  .hero_image .hero_main_logo {
    width: 100%;
    padding: 0;
    top: 7.6vw;
    z-index: 2;
  }
  .hero_image .hero_main_chara {
    width: 76.4vw;
    max-width: 573px;
    right: 0;
  }
  .hero_image .hero_main_chara .shine {
    width: 9.53vw;
    max-width: 71.5px;
    height: 9.53vw;
    max-height: 71.5px;
  }
  .hero_image .hero_main_chara .shine.shine01 {
    left: 0vw;
    top: 20vw;
  }
  .hero_image .hero_main_chara .shine.shine02 {
    left: 23.06vw;
    top: 15.33vw;
  }
  .hero_image .hero_main_chara .shine.shine03 {
    left: 48vw;
    top: 12.66vw;
  }
  .hero_image .hero_main_nekomaru {
    width: 29.33vw;
    max-width: 220px;
    left: -5.34vw;
    bottom: -7.74vw;
  }
  .hero_image .pickup_label {
    width: 16.93vw;
    max-width: 127px;
    right: 13.6vw;
    bottom: -6.8vw;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    left: inherit;
  }
  .hero_image .hero_main_card {
    width: 22.66vw;
    max-width: 170px;
    bottom: -5.07vw;
  }
}

@media (min-width: 1301px) {
  .hero_image {
    height: 422.5px;
    background-size: 1620px auto;
  }
  .hero_image .hero_image_inner {
    height: 422.5px;
    max-width: 996px;
  }
  .hero_image .hero_main_logo {
    top: 27px;
    padding: 0;
  }
  .hero_image .hero_main_chara {
    width: 675.5px;
    right: -15px;
    bottom: 0;
  }
  .hero_image .hero_main_chara .shine {
    width: 71.5px;
    height: 71.5px;
  }
  .hero_image .hero_main_chara .shine.shine01 {
    left: 0;
    top: 168px;
  }
  .hero_image .hero_main_chara .shine.shine02 {
    left: 186px;
    top: 128px;
  }
  .hero_image .hero_main_chara .shine.shine03 {
    left: 393px;
    top: 107px;
  }
  .hero_image .hero_main_nekomaru {
    width: 234px;
    bottom: -72.5px;
    left: 26px;
  }
  .hero_image .hero_main_card {
    width: 294.5px;
    left: 0;
    bottom: -370px;
  }
}

.hero_slide_wrap {
  position: relative;
  background: #b4f2ff;
  padding: 30px 0 45px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

.hero_slide_wrap .hero_slide {
  max-width: 1500px;
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.hero_slide_wrap .hero_slide .slick-slide > div {
  margin: 0 5.036765%;
}

.slick-slide li a {
  background: #fff;
  border-radius: 15px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.slick-slide li a img {
  width: 100%;
  height: auto;
  border-radius: 15px;
  -webkit-box-shadow: 3px 3px 0 #9dd8e4;
  box-shadow: 3px 3px 0 #9dd8e4;
  border: solid 5px #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  transition: all 0.3s;
}

.slick-active a {
  position: relative;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.slick-active a:hover {
  top: 3px;
  left: 3px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.slick-active a:hover img {
  -webkit-box-shadow: 0px 0px 0 #9dd8e4;
  box-shadow: 0px 0px 0 #9dd8e4;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0.8;
}

.slick-slide:not(.slick-active) img {
  opacity: 0.5;
  display: block;
}

.slick-arrow {
  width: 42.5px;
  height: 42.5px;
  width: 3.26vw;
  max-width: 42.5px;
  height: 3.26vw;
  max-height: 42.5px;
  text-indent: -9999px;
  border: none;
  background: none;
  position: absolute;
  z-index: 99;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.slick-arrow:hover {
  cursor: pointer;
}

.slick-prev {
  background: url(../images/top/hero_pager_arrow01.png) no-repeat left top;
  background-size: 100% auto;
  left: 29%;
}

.slick-next {
  background: url(../images/top/hero_pager_arrow02.png) no-repeat left top;
  background-size: 100% auto;
  right: 29%;
}

.slick-dots {
  position: absolute;
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: -25px;
  list-style: none;
  text-align: center;
  bottom: 0;
}

.slick-dots li {
  position: relative;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  padding: 0;
  display: inline-block;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 7.5px;
  height: 7.5px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  background: #fff;
  border-radius: 50%;
}

.slick-dots li.slick-active button {
  width: 12px;
  height: 12px;
  background: #116b92;
}

@media (max-width: 1000px) {
  .slick-arrow {
    width: 4.25vw;
    max-width: 42.5px;
    height: 4.25vw;
    max-height: 42.5px;
  }
}

@media (max-width: 750px) {
  .slick-prev {
    width: 9.06vw;
    max-width: 68px;
    height: 9.06vw;
    max-height: 68px;
    background: url(../images/top/hero_pager_arrow01.png) no-repeat left top;
    background-size: 100% auto;
    left: 6vw;
  }
  .slick-next {
    width: 9.06vw;
    max-width: 68px;
    height: 9.06vw;
    max-height: 68px;
    background: url(../images/top/hero_pager_arrow02.png) no-repeat left top;
    background-size: 100% auto;
    right: 6vw;
  }
  .hero_slide_wrap {
    padding: 4vw 0vw 13.06vw 0vw;
  }
  .hero_slide_wrap .hero_slide .slick-slide > div {
    margin: 0 2.6vw;
  }
  .hero_slide_wrap .slick-slide li a {
    border-radius: 10px;
  }
  .hero_slide_wrap .slick-slide li a img {
    border-radius: 10px;
  }
  .slick-dots {
    margin-bottom: -6.94vw;
  }
  .slick-dots li {
    width: 4vw;
    max-width: 30px;
    height: 4vw;
    max-height: 30px;
    text-align: center;
  }
  .slick-dots li button {
    width: 2.66vw;
    max-width: 20px;
    height: 2.66vw;
    max-height: 20px;
  }
  .slick-dots li.slick-active button {
    width: 4vw;
    max-width: 30px;
    height: 4vw;
    max-height: 30px;
    position: relative;
    left: -0.66vw;
  }
}

.home.paged .hero_image .hero_main_card,
.search .hero_image .hero_main_card {
  display: none;
}

@media (min-width: 1301px) {
  .home.paged .hero_image .hero_main_nekomaru {
    bottom: -37px;
    left: 77.5px;
  }
  .slick-arrow {
    width: 42.5px;
    height: 42.5px;
  }
}

.home.paged .article {
  padding-bottom: 300px;
  background: #fff;
}

.archive.paged .main_content, .search .main_content {
  background: none;
}

.archive.paged .article, .search .article {
  padding-bottom: 200px;
  background: #fff;
}

.home.paged .pager ul.page-numbers {
  bottom: -105px;
}

/* ----------------------------------------------
   ページャー　PC
---------------------------------------------- */
.pager {
  position: relative;
}

.pager .screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
}

.pager .wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -60px;
}

.pager .wp-pagenavi a {
  text-decoration: none;
}

.pager .wp-pagenavi .page, .pager .wp-pagenavi .last, .pager .wp-pagenavi .current, .pager .wp-pagenavi .first {
  width: 60px;
  height: 60px;
  display: block;
  background: #0161a5;
  color: #fff;
  font-size: 23px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  margin-left: 20px;
}

.pager .wp-pagenavi .page.current, .pager .wp-pagenavi .page:hover, .pager .wp-pagenavi .last.current, .pager .wp-pagenavi .last:hover, .pager .wp-pagenavi .current.current, .pager .wp-pagenavi .current:hover, .pager .wp-pagenavi .first.current, .pager .wp-pagenavi .first:hover {
  color: #0161a5;
  background: #fff;
}

.pager .page_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -60px;
}

.pager .page_nav .page-numbers, .pager .page_nav .current {
  width: 60px;
  height: 60px;
  background: #0161a5;
  color: #fff;
  font-size: 23px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  margin-left: 20px;
}

.pager .page_nav .page-numbers.current, .pager .page_nav .page-numbers:hover, .pager .page_nav .current.current, .pager .page_nav .current:hover {
  color: #0161a5;
  background: #fff;
}

.pager .page_nav .page-numbers.dots, .pager .page_nav .current.dots {
  display: none;
}

.pager .page_nav a {
  text-decoration: none;
}

.home.paged .wp-pagenavi, .home.paged .page_nav {
  bottom: -7.7vw;
}

@media (min-width: 1301px) {
  .home.paged .wp-pagenavi, .home.paged .page_nav {
    bottom: -100px;
  }
}

/* ----------------------------------------------
   ページャー　sp
---------------------------------------------- */
.pager {
  position: relative;
}

.pager .pagenavi_sp {
  width: 54vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -15%);
  -ms-transform: translate(-50%, -15%);
  transform: translate(-50%, -15%);
}

.pager .pagenavi_sp_link a {
  background: #0161a5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 22.8vw;
  height: 11.2vw;
  text-decoration: none;
  color: #fff;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 11.2vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-weight: bold;
  position: relative;
}

.pager .pagenavi_sp_link a:before {
  content: "";
  width: 7px;
  height: 10.5px;
  position: absolute;
}

.pager .pagenavi_sp_next .pagenavi_sp_link a {
  padding-left: 5.33vw;
}

.pager .pagenavi_sp_next .pagenavi_sp_link a:before {
  background: url(../images/common/sp_pager_arrow_right.png);
  background-size: 100% auto;
  right: 2.66vw;
}

.pager .pagenavi_sp_prev .pagenavi_sp_link a:before {
  background: url(../images/common/sp_pager_arrow_left.png);
  background-size: 100% auto;
  left: 2.66vw;
}

/* =======================================================================
   トップページ記事部分
========================================================================== */
.purpose_card_wrap {
  background: url(../images/top/bg_purpose_card.png) repeat-y left top;
  background-size: 100% auto;
  margin: 5.38vw -11% 0;
  padding: 6.61vw 4.92vw 6.61vw 4.92vw;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.purpose_card_wrap:before {
  content: "";
  width: 59.57vw;
  max-width: 774.5px;
  height: 14.92vw;
  max-height: 194px;
  background: url(../images/top/purpose_bg_txt.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  top: 1.5vw;
  left: 6.92vw;
  z-index: 1;
}

.purpose_card_wrap .top_article_title {
  font-size: 30px;
  color: #000;
  font-weight: bold;
  margin-bottom: 52px;
  position: relative;
  z-index: 3;
  left: 2.11vw;
  font-family: ud shin maru go demibold,sans-serif;
}

.purpose_card_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 3;
}

.purpose_card_list .list_item {
  width: 31.0344%;
  margin-bottom: 2.03vw;
  -webkit-filter: drop-shadow(3px 3px 0 #83cdef);
  filter: drop-shadow(3px 3px 0 #83cdef);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  top: 0;
  left: 0;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  opacity: 1;
}

.purpose_card_list .list_item img {
  width: 100%;
}

.purpose_card_list .list_item:hover {
  -webkit-filter: drop-shadow(0 0 0 #83cdef);
  filter: drop-shadow(0 0 0 #83cdef);
  top: 3px;
  left: 3px;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  opacity: 0.8;
}

@media (min-width: 1301px) {
  .purpose_card_wrap {
    padding: 86px 64px 100px;
  }
  .purpose_card_wrap:before {
    width: 774.5px;
    height: 194px;
    top: 19.5px;
    left: 90px;
  }
  .purpose_card_wrap .top_article_title {
    left: 27.5px;
  }
  .purpose_card_list .list_item {
    width: 270px;
    height: auto;
    margin-bottom: 26.5px;
  }
}

@media (max-width: 1000px) {
  .purpose_card_list:before {
    width: 77.45vw;
    max-width: 774.5px;
    height: 19.4vw;
    max-height: 194px;
    top: 1.95vw;
    left: 9vw;
  }
}

@media (max-width: 750px) {
  .purpose_card_wrap:before {
    background: url(../images/top/sp_purpose_bg_txt.png) no-repeat left top;
    background-size: 100% auto;
    width: 100vw;
    max-width: 750px;
    height: 25.73vw;
    max-height: 193px;
    top: 2.26vw;
    left: 4%;
  }
  .purpose_card_wrap .top_article_title {
    font-size: 4.8vw;
    top: 2.66vw;
    left: 5.33vw;
    margin-bottom: 6.93vw;
  }
  .purpose_card_list {
    padding: 0vw 4.4vw 0vw 4.4vw;
  }
  .purpose_card_list .list_item {
    width: 43.33vw;
    max-width: 325px;
  }
  .purpose_card_list .list_item.last_item {
    left: 25%;
  }
}

.sns_share_list.top_bottom {
  margin-top: 150px;
  margin-bottom: 0;
  width: 285px;
  position: relative;
}

.sns_share_list.top_bottom:before {
  content: "";
  width: 341px;
  height: 34px;
  display: inline-block;
  position: absolute;
  top: -65px;
  background: url(../images/top/top_share_share_txt.png) no-repeat left top;
  background-size: 100% auto;
}

@media (max-width: 750px) {
  .sns_share_list.top_bottom {
    margin-top: 15vw;
    width: 33.33vw;
    max-width: 250px;
  }
  .sns_share_list.top_bottom::before {
    width: 45.46vw;
    max-width: 341px;
    top: -9.34vw;
  }
}

/* =======================================================================
   article
========================================================================== */
.article {
  margin-top: 90px;
}

.home .article {
  margin-top: 0;
}

.article_content {
  padding: 50px 9% 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}

@media (min-width: 1301px) {
  .article_content {
    padding: 50px 90px;
  }
}

@media (max-width: 750px) {
  .article {
    margin-top: 6.66vw;
  }
  .article_content {
    padding: 5.33vw 5.33vw 10vw 5.33vw;
  }
}

.article_header {
  position: relative;
}

.article_header .article_title {
  width: 80%;
  padding: 20px 6% 10px;
  border: solid 2px #130303;
  -webkit-box-shadow: 4px 4px 0 0 #e09617;
  box-shadow: 4px 4px 0 0 #e09617;
  border-radius: 15px;
  background: #fff;
  font-size: 38px;
  font-weight: bold;
  position: relative;
  line-height: 1.47;
  margin: 0 auto 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateX(-60px);
  -ms-transform: translateX(-60px);
  transform: translateX(-60px);
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.article_header .article_title::after {
  content: "";
  width: 61px;
  height: 45px;
  display: inline-block;
  background: url(../images/common/title_balloon_arrow.png) no-repeat left top;
  position: absolute;
  bottom: -45px;
  right: 14.594%;
}

.article_header .article_title .txt {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffed8b));
  background: -webkit-linear-gradient(transparent 60%, #ffed8b 60%);
  background: -o-linear-gradient(transparent 60%, #ffed8b 60%);
  background: linear-gradient(transparent 60%, #ffed8b 60%);
}

.article_header .article_title .ribon {
  width: auto;
  height: 66px;
  background: url(../images/article/title_ribon_body.png) repeat-x left top;
  background-size: auto 100%;
  display: block;
  font-size: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 1.92vw;
  padding-right: 1.15vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 50px;
  position: absolute;
  top: -40px;
  left: -19px;
}

.article_header .article_title .ribon::before {
  content: "";
  width: auto;
  height: 66px;
  width: 17px;
  background: url(../images/article/title_ribon_left.png) no-repeat left top;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.article_header .article_title .ribon::after {
  content: "";
  width: auto;
  height: 66px;
  width: 17px;
  background: url(../images/article/title_ribon_right.png) no-repeat left top;
  background-size: auto 100%;
  position: absolute;
  right: -17px;
  top: 0;
}

.article_header .post_thumb {
  width: 48%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  margin: 0% 0% 0% 11%;
  margin-bottom: 40px;
  z-index: 1;
}

.article_header .post_thumb:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  background: url(../images/common/border_bg.png);
  right: -10px;
  bottom: -10px;
  z-index: -1;
  border-radius: 20px;
  opacity: 0.4;
}

.article_header .post_thumb img {
  border-radius: 20px;
  border: solid 2px #020202;
  display: block;
  width: 100%;
}

@media (max-width: 750px) {
  .article_header .article_title {
    width: 92vw;
    max-width: 690px;
    padding: 4vw 4vw 4vw 4vw;
    font-size: 5.066vw;
    line-height: 1.47;
    margin: 0 auto;
    margin-bottom: 3.33vw;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    border-radius: 10px;
    border: solid 1px #130303;
    -webkit-box-shadow: 3px 3px 0 0 #e09617;
    box-shadow: 3px 3px 0 0 #e09617;
  }
  .article_header .article_title:after {
    width: 23px;
    height: 20.5px;
    background: url(../images/common/sp_title_balloon_arrow.png) no-repeat left top;
    background-size: 100% auto;
    bottom: -20.5px;
    right: 15%;
  }
  .article_header .article_title .ribon_wrap {
    position: absolute;
    left: 0;
    top: -5.5vw;
    height: 5.06vw;
  }
  .article_header .article_title .ribon {
    display: inline-block;
    width: auto;
    white-space: nowrap;
    height: 5.06vw;
    font-size: 2.5vw;
    padding: 0vw 2.66vw 0vw 2.66vw;
    padding-left: 1.06vw;
    line-height: 5.3vw;
    top: 0;
    left: 0;
    background: url(../images/article/sp_title_ribon_body.png) repeat-x left top;
    background-size: auto 100%;
    position: relative;
  }
  .article_header .article_title .ribon:before {
    content: "";
    height: 6.66vw;
    width: 1.73vw;
    background: url(../images/article/sp_title_ribon_left.png) no-repeat left top;
    background-size: 100% auto;
    position: absolute;
    left: -1.73vw;
    top: 0;
  }
  .article_header .article_title .ribon:after {
    content: "";
    height: 5.06vw;
    width: 1.73vw;
    background: url(../images/article/sp_title_ribon_right.png) no-repeat right top;
    background-size: 100% auto;
    position: absolute;
    right: -1.73vw;
    top: 0;
    z-index: 3;
  }
  .article_header .post_thumb {
    width: 67vw;
    max-width: 480px;
    margin-left: 6vw;
    margin-bottom: 8vw;
  }
  .article_header .post_thumb img {
    border-radius: 10px;
    border: solid 1px #020202;
  }
  .article_header .post_thumb:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    background: url(../images/common/sp_border_bg.png);
    background-size: 8px 8px;
    right: -4px;
    bottom: -3px;
    z-index: -1;
    border-radius: 10px;
    opacity: 0.4;
  }
}

@media (min-width: 1301px) {
  .article_header .post_thumb {
    width: 480px;
  }
  .article_header .article_title .ribon {
    height: 66px;
    font-size: 18px;
    padding-left: 26px;
    line-height: 50px;
    top: -40px;
    left: -19px;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .article_header {
    padding-left: 2vw;
  }
}

.cat_mother .cat_head_chara {
  width: 22.8vw;
  max-width: 296.5px;
  height: 40.07vw;
  max-height: 521px;
  background: url(../images/article/head_mother.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  bottom: 0;
  right: 15px;
  z-index: 1;
}

@media (max-width: 1000px) {
  .cat_mother .cat_head_chara {
    width: 29.65vw;
    max-width: 296.5px;
    height: 52.1vw;
    max-height: 521px;
  }
}

@media (max-width: 750px) {
  .cat_mother .cat_head_chara {
    width: 32.53vw;
    max-width: 244px;
    height: 68vw;
    max-height: 510px;
    right: -5vw;
    bottom: -15.5vw;
  }
}

@media (min-width: 1301px) {
  .cat_mother .cat_head_chara {
    width: 296.5px;
    height: 521px;
  }
}

.cat_daughter .cat_head_chara {
  width: 20.15vw;
  max-width: 262px;
  height: 40.07vw;
  max-height: 521px;
  background: url(../images/article/head_daughter.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  bottom: 0;
  right: 2.76vw;
  z-index: 1;
}

@media (max-width: 1000px) {
  .cat_daughter .cat_head_chara {
    width: 26.2vw;
    max-width: 262px;
    height: 52.1vw;
    max-height: 521px;
    right: 3.6vw;
  }
}

@media (max-width: 750px) {
  .cat_daughter .cat_head_chara {
    width: 32.53vw;
    max-width: 244px;
    height: 66.66vw;
    max-height: 500px;
    right: 1.06vw;
    bottom: -5.9vw;
  }
}

@media (min-width: 1301px) {
  .cat_daughter .cat_head_chara {
    width: 262px;
    height: 521px;
    right: 36px;
  }
}

.cat_father .cat_head_chara {
  width: 22.8vw;
  max-width: 296.5px;
  height: 40.07vw;
  max-height: 521px;
  background: url(../images/article/head_father.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  bottom: 0;
  right: 2vw;
  z-index: 1;
}

@media (max-width: 1000px) {
  .cat_father .cat_head_chara {
    width: 29.65vw;
    max-width: 296.5px;
    height: 52.1vw;
    max-height: 521px;
    right: 2.6vw;
  }
}

@media (max-width: 750px) {
  .cat_father .cat_head_chara {
    width: 32vw;
    max-width: 240px;
    height: 68vw;
    max-height: 510px;
    right: -3vw;
    bottom: -11vw;
  }
}

@media (min-width: 1301px) {
  .cat_father .cat_head_chara {
    width: 296.5px;
    height: 521px;
    right: 26px;
  }
}

.article_post_date {
  font-size: 12px;
  color: #676767;
  text-align: right;
}

/* ----------------------------------------------
   sns リスト
---------------------------------------------- */
.sns_share_list {
  width: 600px;
  margin: 0 auto 105px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.category .sns_share_list {
	margin: 0 auto 55px;
}

.sns_share_list_item + .sns_share_list_item {
  margin-left: 0.5vw;
}

.sns_share_list_item .btn_comment {
  opacity: 1;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sns_share_list_item .btn_comment:hover {
  opacity: 0.8;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sns_share_list_item .btn_tw, .sns_share_list_item .btn_hatena, .sns_share_list_item .btn_fb {
  width: 79px;
  height: 79px;
  display: block;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.sns_share_list_item .btn_tw {
  background: #2bbded url(../images/article/icon_twitter_off.png) no-repeat center center;
  background-size: 28px 23px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sns_share_list_item .btn_tw:hover {
  background: #fff url(../images/article/icon_twitter_on.png) no-repeat center center;
  background-size: 28px 23px;
  border: solid 1px #2bbded;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 1;
}

.sns_share_list_item .btn_hatena {
  background: #2881e4 url(../images/article/icon_hatena_off.png) no-repeat center center;
  background-size: 21px 25px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sns_share_list_item .btn_hatena:hover {
  background: #fff url(../images/article/icon_hatena_on.png) no-repeat center center;
  background-size: 21px 25px;
  border: solid 1px #2881e4;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 1;
}

.sns_share_list_item .btn_fb {
  background: #323a63 url(../images/article/icon_fb_off.png) no-repeat center center;
  background-size: 11px 27px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sns_share_list_item .btn_fb:hover {
  background: #fff url(../images/article/icon_fb_on.png) no-repeat center center;
  background-size: 11px 27px;
  border: solid 1px #323a63;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 1;
}

.sns_share_list_item .btn_comment {
  width: 280px;
  height: auto;
  position: relative;
}

.sns_share_list_item .btn_comment .circle {
  display: none;
}

.sns_share_list_item .btn_comment .rect {
  width: 280px;
}

.sns_share_list_item .comment_count {
  color: #fff;
  text-decoration: none;
  position: absolute;
  left: 40px;
  top: -38px;
  width: 30px;
  height: 20px;
  text-align: center;
}

@media (max-width: 750px) {
  .sns_share_list {
    width: 63.33vw;
    max-width: 475px;
    margin: 0 auto 4.666vw;
  }
  .sns_share_list.article_top {
    position: absolute;
    top: -12vw;
    left: 6vw;
  }
  .sns_share_list_item + .sns_share_list_item {
    margin-left: 2.66vw;
  }
  .sns_share_list_item .btn_tw, .sns_share_list_item .btn_hatena, .sns_share_list_item .btn_fb {
    width: 10.4vw;
    max-width: 78px;
    height: 10.4vw;
    max-height: 78px;
  }
  .sns_share_list_item .btn_tw {
    background-size: 3.73333vmin auto;
  }
  .sns_share_list_item .btn_tw:hover {
    background-size: 3.73333vmin auto;
  }
  .sns_share_list_item .btn_hatena {
    background-size: 3.2vmin auto;
  }
  .sns_share_list_item .btn_hatena:hover {
    background-size: 3.2vmin auto;
  }
  .sns_share_list_item .btn_fb {
    background-size: 1.86666vmin auto;
  }
  .sns_share_list_item .btn_fb:hover {
    background-size: 1.86666vmin auto;
  }
  .sns_share_list_item .btn_comment {
    width: 13.73vw;
    max-width: 103px;
    position: relative;
  }
  .sns_share_list.article_top .btn_comment .rect,
  .sns_share_list.cat_top .btn_comment .rect {
    display: none;
  }
  .sns_share_list.article_top .btn_comment .circle,
  .sns_share_list.cat_top .btn_comment .circle {
    display: block;
  }
  .sns_share_list.article_top .btn_comment .comment_count,
  .sns_share_list.cat_top .btn_comment .comment_count {
    display: block;
    top: -9.87vw;
    left: -0.8vw;
    font-size: 3vw;
    width: auto;
    height: auto;
  }
  .sns_share_list.article_top .sns_share_list_item + .sns_share_list_item,
  .sns_share_list.cat_top .sns_share_list_item + .sns_share_list_item {
    margin-left: 2.66vw;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_tw, .sns_share_list.article_top .sns_share_list_item .btn_hatena, .sns_share_list.article_top .sns_share_list_item .btn_fb,
  .sns_share_list.cat_top .sns_share_list_item .btn_tw,
  .sns_share_list.cat_top .sns_share_list_item .btn_hatena,
  .sns_share_list.cat_top .sns_share_list_item .btn_fb {
    width: 13.73vw;
    max-width: 103px;
    height: 13.73vw;
    max-height: 103px;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_tw,
  .sns_share_list.cat_top .sns_share_list_item .btn_tw {
    background-size: 5.0666vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_tw:hover,
  .sns_share_list.cat_top .sns_share_list_item .btn_tw:hover {
    background-size: 5.0666vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_hatena,
  .sns_share_list.cat_top .sns_share_list_item .btn_hatena {
    background-size: 4vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_hatena:hover,
  .sns_share_list.cat_top .sns_share_list_item .btn_hatena:hover {
    background-size: 4vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_fb,
  .sns_share_list.cat_top .sns_share_list_item .btn_fb {
    background-size: 2vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_fb:hover,
  .sns_share_list.cat_top .sns_share_list_item .btn_fb:hover {
    background-size: 2vw auto;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_comment,
  .sns_share_list.cat_top .sns_share_list_item .btn_comment {
    width: 13.73vw;
    max-width: 103px;
    position: relative;
  }
  .sns_share_list.article_top .sns_share_list_item .btn_comment .comment_count,
  .sns_share_list.cat_top .sns_share_list_item .btn_comment .comment_count {
    width: 5.33vw;
    height: 3.33vw;
    position: absolute;
    left: -2.67vw;
    top: -9.74vw;
  }
  .sns_share_list.post_bottom .sns_share_list_item .btn_tw, .sns_share_list.post_bottom .sns_share_list_item .btn_hatena, .sns_share_list.post_bottom .sns_share_list_item .btn_fb {
    width: 10.4vw;
    max-width: 78px;
  }
  .sns_share_list.post_bottom .sns_share_list_item .btn_comment .circle {
    display: none;
  }
  .sns_share_list.post_bottom .sns_share_list_item .btn_comment .rect {
    position: relative;
    top: 1.06vw;
    width: 37.33vw;
    height: 10.26vw;
  }
  .sns_share_list.post_bottom .sns_share_list_item .btn_comment .comment_count {
    display: block;
    top: -2.94vw;
    left: 6.66vw;
    font-size: 3vw;
    width: auto;
    height: auto;
  }
}

@media (min-width: 1301px) {
  .sns_share_list {
    width: 600px;
  }
  .sns_share_list .sns_share_list_item .comment_count {
    left: 40px;
    top: -38px;
    width: 30px;
    height: 20px;
  }
}

.category .sns_share_list:not(.side_sns) {
  width: 285px;
  position: relative;
}

@media (max-width: 750px) {
  .category .sns_share_list:not(.side_sns) {
    width: 26.66vw;
    max-width: 200px;
  }
  .category .sns_share_list:not(.side_sns).cat_top {
    top: -16.5vw;
    margin-left: 10.66vw;
    margin-bottom: -10.67vw;
  }
}

/* ----------------------------------------------
   記事スタイル
---------------------------------------------- */
.article_content a {
  color: #0085bf;
  text-decoration: underline;
}

.article_content a:hover {
  text-decoration: none;
}

.article_content p {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 30px;
}

.article_content p > img {
  display: block;
  margin: 0 auto;
}

.article_content h2:not(.matome_tit):not(.top_article_title) {
  width: 122%;
  position: relative;
  left: -11%;
  background: #335279;
  padding: 40px 11% 35px;
  color: #fff;
  font-weight: bold;
  font-size: 38px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 175px 0 50px;
  position: relative;
  line-height: 1.3;
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.article_content h2:not(.matome_tit):not(.top_article_title):before {
  content: "";
  height: 95px;
  width: 100%;
  display: block;
  position: absolute;
  background: url(../images/article/title_h2_deco01.png) no-repeat left top;
  background-size: auto 100%;
  left: -20px;
  top: -60px;
}

.article_content h2:not(.matome_tit):not(.top_article_title):after {
  content: "";
  height: 178px;
  width: 108.7%;
  display: block;
  position: absolute;
  background: url(../images/article/title_h2_deco02.png) no-repeat left top;
  left: -10px;
  bottom: -10px;
}

.article_content h3 {
  background: url(../images/article/title_h3_bg_bottom.png) no-repeat left bottom, url(../images/article/title_h3_bg_top.png) no-repeat left top, url(../images/article/title_h3_bg_body.png) repeat-y left top;
  background-size: 100% auto;
  font-size: 30px;
  color: #fff;
  font-weight: bold;
  padding: 15px 35px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 102%;
  margin: 75px -10px 20px;
  line-height: 1.3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.article_content h3::before {
  content: "";
  width: 78px;
  height: 78px;
  background: url(../images/article/title_h3_deco01.png) no-repeat left top;
  background-size: 100% auto;
  display: inline-block;
  position: absolute;
  left: -25px;
  top: -18px;
  z-index: -1;
}

.article_content h3::after {
  content: "";
  width: 91px;
  height: 91px;
  background: url(../images/article/title_h3_deco02.png) no-repeat right bottom;
  background-size: 100% auto;
  display: inline-block;
  position: absolute;
  right: -25px;
  bottom: -25px;
  z-index: -1;
}

.article_content h4, .article_content .tbl_title {
  padding-left: 25px;
  font-size: 26px;
  color: #333333;
  position: relative;
  margin-bottom: 30px;
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.article_content h4::before, .article_content .tbl_title::before {
  content: "";
  width: 8px;
  height: 43px;
  background: #c52020;
  height: 100%;
  background: #c52020;
  display: inline-block;
  position: absolute;
  left: 0;
  border-radius: 1.6vw;
}

.article_content .bgc-yellow {
  font-size: 20px;
  color: #000;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(20%, #fff768));
  background: -webkit-linear-gradient(transparent 50%, #fff768 20%);
  background: -o-linear-gradient(transparent 50%, #fff768 20%);
  background: linear-gradient(transparent 50%, #fff768 20%);
}

.article_content .waku {
  background: #ededed;
  padding: 20px 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 40px;
}

.article_content .waku > p:last-child {
  margin-bottom: 0;
}

.article_content .bgb-beige {
  background: #fff9d4;
  padding: 20px 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 40px;
}

.article_content .bgb-beige > p:last-child {
  margin-bottom: 0;
}

.article_content blockquote {
  background: #e2f7f4;
  padding: 35px 30px 20px;
  position: relative;
  margin-bottom: 40px;
}

.article_content blockquote:after {
  content: "";
  display: block;
  position: absolute;
  width: 38px;
  height: 33px;
  background: url(../images/article/icon_blockquote.png) no-repeat left top;
  background-size: cover;
  top: -16px;
  left: 12px;
}

.article_content blockquote > p:last-child {
  margin-bottom: 0;
}

.article_content .mokuji {
  position: relative;
  border: solid 2px #335279;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 90px 0 20px 0;
  margin: 40px 0;
}

.article_content .mokuji:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 60px;
  top: -8px;
  background: url(../images/article/mokuji_bg_top.png) no-repeat left top;
  background-size: cover;
}

.article_content .mokuji ul {
  padding-left: 40px;
}

.article_content .mokuji li {
  padding-left: 40px;
  background: url(../images/article/mokuji_list_type.png) no-repeat left 2px;
  background-size: 23px 23px;
  margin-bottom: 25px;
  font-size: 18px;
}

.article_content .mokuji a {
  color: #0161a5;
  text-decoration: none;
  font-weight: bold;
}

.article_content .mokuji a:hover {
  text-decoration: underline;
}

.article_content > ul:not(.sns_share_list):not(.check-box) {
  margin: 30px 0 50px;
  padding-left: 2.53vw;
}

.article_content > ul:not(.sns_share_list):not(.check-box) li {
  background: url(../images/article/ul_list_type.png) no-repeat left 5px;
  background-size: 13px 13px;
  padding-left: 25px;
  font-weight: bold;
  margin-bottom: 15px;
  font-size: 18px;
}

.article_content .checkbox_wrap {
  border: solid 4px #335279;
  border-radius: 6px;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  margin: 70px 0 40px;
}

.article_content .checkbox_wrap:before {
  content: "";
  width: 18.84vw;
  max-width: 245px;
  height: 3.69vw;
  max-height: 48px;
  background: url(../images/article/check_box_title.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  display: block;
  left: 0.38vw;
  top: -1.93vw;
  z-index: 2;
}

.article_content .checkbox_wrap:after {
  content: "";
  width: 8.84vw;
  max-width: 115px;
  height: 7.46vw;
  max-height: 97px;
  background: url(../images/article/check_box_neko.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  display: block;
  right: 0;
  bottom: -0.85vw;
}

.article_content ul.check-box {
  position: relative;
  padding-top: 50px;
  width: 99%;
  margin: 0.7% auto;
  border: solid 2px #335279;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.07vw 3.07vw 0.76vw 2.3vw;
}

.article_content ul.check-box li {
  font-size: 18px;
  font-weight: bold;
  background: url(../images/article/shohyou_card_list_type.png) no-repeat left top;
  background-size: 31px 31px;
  padding: 3px 0 17px 50px;
}

.article_content .morebox_link {
  background: #fdfbd9;
  border: solid 2px #335279;
  -webkit-box-shadow: 0 4px 0 #335279;
  box-shadow: 0 4px 0 #335279;
  position: relative;
  margin: 110px 0 50px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  top: 0;
}

.article_content .morebox_link .morebox_link_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  padding: 2.69vw 2.69vw 1.15vw 2.69vw;
  background: url(../images/article/morebox_arrow.png) no-repeat right 10px bottom 10px;
  background-size: 1.769vw 1.769vw;
}

.article_content .morebox_link .moretitle {
  width: 24.84vw;
  max-width: 323px;
  height: auto;
  position: absolute;
  top: -6vw;
  left: -1.54vw;
}

.article_content .morebox_link .morelink_l {
  width: 13.07vw;
  max-width: 170px;
  height: auto;
  background: #fff;
  border: solid 1px #335279;
  padding: 8px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 35px;
}

.article_content .morebox_link .morelink_l img {
  display: block;
}

.article_content .morebox_link a {
  color: #0085bf;
  font-size: 20px;
  line-height: 2;
}

.article_content .morebox_link:hover {
  top: 4px;
  -webkit-box-shadow: 0 0 0 #335279;
  box-shadow: 0 0 0 #335279;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}

.article_content .morebox_link:hover a {
  text-decoration: none;
}

.article_content .morebox_link:hover .morelink_l img {
  opacity: 0.8;
}

.article_content table {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 30px;
}

.article_content table tr > th {
  background: #448aa1;
  color: #fff;
  border: solid 2px #bebebe;
  padding: 10px 25px;
  line-height: 1.5;
  font-weight: bold;
}

.article_content table tr > td {
  border: solid 2px #bebebe;
  padding: 10px 25px;
  line-height: 1.5;
}

.article_content table tr th:first-child {
  white-space: nowrap;
}

.article_content table.typeTL th:first-child {
  background: #f1f0e6;
  color: #000000;
  font-size: 15px;
  vertical-align: top;
  white-space: nowrap;
}

.article_content table.typeTL tr:first-child th:first-child {
  background: #448aa1;
  color: #fff;
}

.article_content span.b {
  font-size: 20px;
  font-weight: bold;
}

.article_content span.red {
  color: #e60012;
  font-size: 20px;
  font-weight: bold;
}

@media (min-width: 1301px) {
  .article_content .waku {
    padding: 20px 30px;
  }
  .article_content .bgb-beige {
    padding: 20px 30px;
  }
  .article_content blockquote {
    padding: 35px 30px 20px;
  }
  .article_content blockquote:after {
    width: 38px;
    height: 33px;
    top: -16px;
    left: 12px;
  }
  .article_content .mokuji {
    padding: 90px 0 20px 0;
  }
  .article_content .mokuji:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 60px;
    top: -8px;
  }
  .article_content .mokuji ul {
    padding-left: 40px;
  }
  .article_content .mokuji li {
    padding-left: 40px;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) {
    padding-left: 33px;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) li {
    padding-left: 25px;
  }
  .article_content .checkbox_wrap:before {
    left: 5px;
    top: -25px;
  }
  .article_content .checkbox_wrap:after {
    bottom: -11px;
  }
  .article_content ul.check-box {
    padding: 40px 40px 10px 30px;
  }
  .article_content ul.check-box li {
    padding: 3px 0 17px 50px;
  }
  .article_content .morebox_link .morebox_link_inner {
    padding: 35px 35px 15px;
    background: url(../images/article/morebox_arrow.png) no-repeat right 10px bottom 10px;
    background-size: 23px 23px;
  }
  .article_content .morebox_link .moretitle {
    width: 323px;
    top: -78px;
    left: -20px;
  }
  .article_content .morebox_link .morelink_l {
    width: 170px;
    padding: 8px;
    margin-right: 35px;
  }
  .article_content table tr > th {
    padding: 10px 25px;
  }
  .article_content table tr > td {
    padding: 10px 25px;
  }
}

@media (max-width: 750px) {
  body:not(.home) .article_content {
    margin-top: 5vw;
  }
  body:not(.home) .article_content:before {
    content: "";
    width: 100%;
    position: absolute;
    height: 11vw;
    top: -11vw;
    left: 0;
    background: url(../images/article/bg_article_content.png) no-repeat left top;
    background-size: 100% auto;
  }
  .article_content {
    text-align: justify;
    font-weight: 300;
  }
  .article_content p {
    font-size: 4vw;
    margin-bottom: 30px;
    line-height: 1.5333;
    margin-bottom: 30px;
  }
  .article_content p.article_post_date {
    margin-bottom: 5.33vw;
  }
  .article_content h2:not(.matome_tit):not(.top_article_title) {
    width: calc( 100% + 10.67vw);
    left: -5.33vw;
    background: #335279;
    padding: 4.66vw 8.66vw 4.66vw 8.66vw;
    font-size: 5.3vw;
    margin: 19.33vw 0vw 5.33vw 0vw;
  }
  .article_content h2:not(.matome_tit):not(.top_article_title):before {
    width: 66.26vw;
    max-width: 497px;
    background: url(../images/article/sp_title_h2_deco01.png) no-repeat left top;
    background-size: 100% auto;
    left: 0;
    top: -7.87vw;
  }
  .article_content h2:not(.matome_tit):not(.top_article_title):after {
    width: 100%;
    background: url(../images/article/sp_title_h2_deco02.png) no-repeat left top;
    background-size: 100% auto;
    height: 13.06vw;
    max-height: 98px;
    bottom: -3.47vw;
    left: 0;
  }
  .article_content h3 {
    font-size: 4.8vw;
    width: 100%;
    padding: 3.6vw 6.66vw 3.6vw 6.66vw;
    margin: 11.06vw 0vw 4.93vw 0vw;
  }
  .article_content h3::before {
    width: 10.4vw;
    max-width: 78px;
    height: 10.4vw;
    max-height: 78px;
    top: -3.34vw;
    left: -2.4vw;
  }
  .article_content h3::after {
    width: 12.13vw;
    max-width: 91px;
    height: 12.13vw;
    max-height: 91px;
    bottom: -3.34vw;
    right: -3.34vw;
  }
  .article_content h4, .article_content .tbl_title {
    padding-left: 4vw;
    font-size: 4vw;
    font-weight: bold;
    line-height: 1.25;
    position: relative;
    margin: 8vw 0vw 3.73vw 0vw;
  }
  .article_content h4::before, .article_content .tbl_title::before {
    width: 1.6vw;
    max-width: 12px;
    height: 100%;
    background: #c52020;
    display: inline-block;
    position: absolute;
    left: 0;
    border-radius: 1.6vw;
  }
  .article_content .bgc-yellow {
    font-size: 14px;
  }
  .article_content .waku {
    padding: 6vw 6vw 6vw 6vw;
    margin-bottom: 5.33vw;
    font-size: 3.7333vw;
  }
  .article_content .waku p {
    font-size: 3.7333vw;
  }
  .article_content .bgb-beige {
    background: #fff9d4;
    padding: 6vw 6vw 6vw 6vw;
    margin-bottom: 5.33vw;
    font-size: 3.7333vw;
  }
  .article_content .bgb-beige p {
    font-size: 3.7333vw;
  }
  .article_content blockquote {
    background: #e2f7f4;
    padding: 6vw 6vw 6vw 6vw;
    margin-bottom: 5.33vw;
    font-size: 3.7333vw;
  }
  .article_content blockquote p {
    font-size: 3.7333vw;
  }
  .article_content .mokuji {
    padding: 13.86vw 0vw 2.66vw 0vw;
    margin: 5.06vw 0vw 5.06vw 0vw;
  }
  .article_content .mokuji:before {
    top: -3px;
    width: 100%;
    height: 9.33vw;
    max-height: 70px;
    background: url(../images/article/sp_mokuji_bg_top.png) no-repeat left top;
    background-size: 100% auto;
  }
  .article_content .mokuji ul {
    padding: 0vw 5.33vw 0vw 5.33vw;
  }
  .article_content .mokuji li {
    padding-left: 5.33vw;
    background: url(../images/article/mokuji_list_type.png) no-repeat left 0.3vw;
    background-size: 4.133vw 4.133vw;
    font-size: 3.466vw;
    margin-bottom: 0;
    padding-bottom: 3.33vw;
  }
  .article_content .mokuji li a {
    padding-bottom: 1vw;
  }
  .article_content .checkbox_wrap {
    margin: 12vw 0vw 8vw 0vw;
    border: solid 2px #335279;
  }
  .article_content .checkbox_wrap:before {
    content: "";
    width: 32.66vw;
    max-width: 245px;
    height: 6.4vw;
    max-height: 48px;
    left: 0.66vw;
    top: -3.34vw;
    z-index: 2;
  }
  .article_content .checkbox_wrap:after {
    content: "";
    width: 15.33vw;
    max-width: 115px;
    height: 12.93vw;
    max-height: 97px;
    bottom: -1.47vw;
  }
  .article_content ul.check-box {
    padding: 5.33vw 5.33vw 8vw 4vw;
    border: solid 1px #335279;
  }
  .article_content ul.check-box li {
    font-size: 18px;
    font-weight: bold;
    background: url(../images/article/shohyou_card_list_type.png) no-repeat left top;
    background-size: 31px 31px;
  }
  .article_content .morebox_link {
    margin: 18.66vw 0vw 10.53vw 0vw;
  }
  .article_content .morebox_link .morebox_link_inner {
    padding: 4.66vw 4.66vw 4.4vw 4.66vw;
    background: url(../images/article/sp_morebox_arrow.png) no-repeat right 10px bottom 10px;
    background-size: 4.933vw 4.933vw;
  }
  .article_content .morebox_link .moretitle {
    width: 49.46vw;
    max-width: 371px;
    top: -12.14vw;
    left: -2.67vw;
  }
  .article_content .morebox_link .morelink_l {
    width: 22.93vw;
    max-width: 172px;
    padding: 0.66vw 0.66vw 0.66vw 0.66vw;
    margin-right: 4.66vw;
  }
  .article_content .morebox_link .morelink_r {
    width: 48.8vw;
    max-width: 366px;
  }
  .article_content .morebox_link a {
    font-size: 4vw;
    line-height: 1.66;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) {
    margin: 30px 0 50px;
    padding-left: 5.06vw;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) li {
    background: url(../images/article/sp_ul_list_type.png) no-repeat left 0.5vw;
    background-size: 2.4vw 2.4vw;
    padding-left: 5.06vw;
    margin-bottom: 2vw;
  }
  .article_content span.b {
    font-size: 4vw;
    font-weight: 700;
  }
  .article_content span.red {
    font-size: 4vw;
  }
}

.single .sns_share_list.post_bottom::before {
  left: 0;
}

@media (max-width: 1000px) {
  .scroll {
    margin: 20px 0;
    overflow: auto;
  }
  .scroll table {
    width: 130%;
  }
}

/* ----------------------------------------------
   sp 記事文字サイズ
---------------------------------------------- */
@media (max-width: 375px) {
  .article_content p {
    font-size: 4vw;
    margin-bottom: 8vw;
  }
  .article_content .bgc-yellow {
    font-size: 4.2666vw;
  }
  .article_content .mokuji li {
    font-size: 3.4666vw;
    padding-left: 5.73vw;
    background-size: 3.866vmin 3.866vmin;
  }
  .article_content .mokuji li:last-child {
    padding-bottom: 5px;
  }
  .article_content ul.check-box li {
    font-size: 4vw;
    background-size: 4.133vw 4.133vw;
    background-position: 0 1vw;
    padding: 0vw 0vw 2.26vw 6vw;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) {
    margin: 9.33vw 0vw 9.33vw 0vw;
  }
  .article_content > ul:not(.sns_share_list):not(.check-box) li {
    background: url(../images/article/sp_ul_list_type.png) no-repeat left 1.5vw;
    background-size: 2.4vw 2.4vw;
    font-size: 4vw;
  }
  .article_content span.red {
    font-size: 4.2vw;
  }
  .article_content table tr > th {
    border: solid 1px #bebebe;
    padding: 2.66vw 3.33vw 2.66vw 3.33vw;
    font-size: 3.2vw;
  }
  .article_content table tr > td {
    border: solid 1px #bebebe;
    padding: 2.66vw 3.33vw 2.66vw 3.33vw;
    font-size: 3.2vw;
  }
}

.matome {
  background: url(../images/article/matome_bg_top.png) no-repeat center top, url(../images/article/matome_bg_bottom.png) no-repeat center bottom, url(../images/article/matome_bg_body.png) repeat-y center center;
  background-size: 100% auto, 100% auto, 100% auto;
  padding-top: 130px;
  padding-bottom: 115px;
  margin: 150px -11% 0;
  position: relative;
}

.matome:before {
  content: "";
  width: 30.07vw;
  max-width: 391px;
  height: 6.61vw;
  max-height: 86px;
  display: block;
  background: url(../images/article/matome_top.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 2;
}

.matome:after {
  content: "";
  width: 28.34vw;
  max-width: 368.5px;
  height: 9.15vw;
  max-height: 119px;
  background: url(../images/article/matome_chara02.png) no-repeat left top;
  background-size: 100% auto;
  display: block;
  position: absolute;
  top: 0;
  left: 41%;
  z-index: 4;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.matome .matome_tit {
  font-size: 36px;
  font-weight: bold;
  color: #fff;
  width: 55vw;
  max-width: 715px;
  margin: 0 auto 30px;
  line-height: 1.333;
  position: relative;
  z-index: 1;
  /*font-family: ud shin maru go demibold, sans-serif;*/
}

.matome .matome_tit:before {
  content: "";
  max-width: 973px;
  width: 74.84vw;
  max-width: 973px;
  height: 18.76vw;
  max-height: 244px;
  display: block;
  position: absolute;
  background: url(../images/article/matome_bg_txt.png) no-repeat left top;
  background-size: 100% auto;
  z-index: 1;
  left: 50%;
  top: -50px;
  -webkit-transform: translateX(-46.5%);
  -ms-transform: translateX(-46.5%);
  transform: translateX(-46.5%);
  z-index: -1;
}

.matome .matome_tit:after {
  content: "";
  background: url(../images/article/matome_title_deco.png) no-repeat left top;
  background-size: 100% auto;
  width: 175px;
  height: 175px;
  position: absolute;
  display: block;
  right: -220px;
  bottom: 50px;
}

.matome .matome_wrap {
  background: #fff;
  padding: 50px 0 30px;
  width: 75%;
  max-width: 750px;
  margin: 0 auto;
  -webkit-transform: translateX(-5%);
  -ms-transform: translateX(-5%);
  transform: translateX(-5%);
  position: relative;
  z-index: 5;
}

.matome .matome_txt {
  padding: 0 60px 0 90px;
  padding: 0vw 4.61vw 0vw 6.92vw;
  background: #fff url(../images/article/matome_txt_bg.png) repeat-y 23px 3px;
  line-height: 1.87;
}

.matome .matome_txt p {
  margin-bottom: 25px;
}

@media (max-width: 1300px) and (min-width: 751px) {
  .matome:after {
    top: -7.31vw;
    left: 44%;
  }
  .matome .matome_tit::before {
    width: calc(70vw - 60px);
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .matome .matome_wrap {
    -webkit-transform: translateX(-5%);
    -ms-transform: translateX(-5%);
    transform: translateX(-5%);
  }
  .matome .matome_tit {
    width: 71.5vw;
    max-width: 715px;
  }
  .matome .matome_tit::before {
    width: 98vw;
    height: 97.3vw;
    max-height: 973px;
  }
}

@media (max-width: 750px) {
  .matome {
    padding-top: 13.33vw;
    padding-bottom: 6vw;
    margin: 20vw -6% 0;
  }
  .matome:before {
    width: 44vw;
    max-width: 330px;
    height: 9.33vw;
    max-height: 70px;
  }
  .matome:after {
    width: 49.13vw;
    max-width: 368.5px;
    height: 15.86vw;
    max-height: 119px;
    top: -13.34vw;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .matome .matome_tit {
    padding: 0vw 8.8vw 0vw 8.8vw;
    margin-bottom: 2.66vw;
    z-index: 1;
    font-size: 5vw;
    width: 84vw;
  }
  .matome .matome_tit:before {
    content: "";
    width: 96vw;
    max-width: 720px;
    height: 24vw;
    max-height: 180px;
    background-size: 100% auto;
    left: 50%;
    top: -5.333vw;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: -1;
  }
  .matome .matome_tit:after {
    content: none;
  }
  .matome .matome_wrap {
    padding: 6.66vw 8vw 6.66vw 8vw;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    position: relative;
    z-index: 2;
  }
  .matome .matome_txt {
    background: #fff;
    width: 100%;
    padding: 0;
    font-size: 4vw;
  }
  .matome .matome_cat_chara {
    display: none;
  }
}

@media (max-width: 1300px) {
  .matome .matome_tit:before {
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@media (min-width: 1301px) {
  .matome:after {
    top: -95px;
    width: 368.5px;
    height: 119px;
    left: 41%;
  }
  .matome .matome_tit {
    -webkit-transform: translateX(-5%);
    -ms-transform: translateX(-5%);
    transform: translateX(-5%);
  }
  .matome .matome_tit:before {
    top: -50px;
  }
  .matome .matome_tit:after {
    width: 175px;
    height: 175px;
    right: -220px;
    bottom: 50px;
  }
  .matome .matome_txt {
    padding: 0 60px 0 90px;
  }
}

.matome_cat_chara {
  content: "";
  position: absolute;
  z-index: 2;
}

.cat_daughter .matome_cat_chara {
  width: 12.07vw;
  max-width: 157px;
  height: 43.46vw;
  max-height: 565px;
  background: url(../images/article/matome_chara_daughter.png) no-repeat left top;
  background-size: 100% auto;
  right: -1.74vw;
  bottom: -0.77vw;
}

.cat_mother .matome_cat_chara {
  width: 15.07vw;
  max-width: 196px;
  height: 44.15vw;
  max-height: 574px;
  background: url(../images/article/matome_chara_mother.png) no-repeat left top;
  background-size: 100% auto;
  right: -4.62vw;
  bottom: -0.77vw;
}

.cat_father .matome_cat_chara {
  width: 11.23vw;
  max-width: 146px;
  height: 45.76vw;
  max-height: 595px;
  background: url(../images/article/matome_chara_father.png) no-repeat left top;
  background-size: 100% auto;
  right: -2.97vw;
  bottom: -0.62vw;
}

@media (max-width: 1300px) and (min-width: 751px) {
  .cat_daughter .matome_cat_chara {
    width: 15.7vw;
    max-width: 157px;
    height: 56.49vw;
    max-height: 565px;
    background: url(../images/article/matome_chara_daughter.png) no-repeat left top;
    background-size: 100% auto;
    right: -2.25vw;
    bottom: -1vw;
  }
  .cat_mother .matome_cat_chara {
    width: 19.6vw;
    max-width: 196px;
    height: 57.4vw;
    max-height: 574px;
    background: url(../images/article/matome_chara_mother.png) no-repeat left top;
    background-size: 100% auto;
    right: -6vw;
    bottom: -1vw;
  }
  .cat_father .matome_cat_chara {
    width: 14.6vw;
    max-width: 146px;
    height: 59.5vw;
    max-height: 595px;
    background: url(../images/article/matome_chara_father.png) no-repeat left top;
    background-size: 100% auto;
    right: -3.85vw;
    bottom: -0.8vw;
  }
}

@media (min-width: 1301px) {
  .cat_daughter .matome_cat_chara {
    width: 157px;
    height: 565px;
    right: -22.5px;
    bottom: -10px;
  }
  .cat_mother .matome_cat_chara {
    width: 196px;
    height: 574px;
    right: -60px;
    bottom: -10px;
  }
  .cat_father .matome_cat_chara {
    width: 146px;
    height: 595px;
    right: -38.5px;
    bottom: -8px;
  }
}

.shohyou_card_wrap {
  border: solid 2px #335279;
  background: url(../images/article/shohyou_bg_top.png) no-repeat center top, url(../images/article/shohyou_bg_bottom.png) no-repeat center bottom, url(../images/article/shohyou_bg_body.png) repeat-y center center;
  background-size: 100% auto, 100% auto, 100% auto;
  padding-top: 0.9vw;
  margin: 0 -11% 50px;
}

.shohyou_card_inner {
  padding: 50px 8.89% 40px;
  position: relative;
  overflow: hidden;
}

.shohyou_card_light {
  width: 900px;
  height: 900px;
  background: url(../images/article/light_bg.png) no-repeat 0 0;
  background-size: 100% auto;
  position: absolute;
  left: 50%;
  top: -25%;
  margin-left: -450px;
  z-index: 0;
  -webkit-animation: spin 12s linear infinite;
  animation: spin 12s linear infinite;
}

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

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

.card_image_thumb {
  width: 290px;
  height: auto;
  margin: 0 auto 55px;
  position: relative;
  z-index: 1;
}

.recommend_wrap {
  border: solid 4px #335279;
  border-radius: 6px;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.recommend_wrap:before {
  content: "";
  display: block;
  width: 305px;
  height: 60px;
  background: url(../images/article/title_shohyou.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  top: -30px;
  left: -20px;
}

.recommend_wrap:after {
  content: "";
  display: block;
  width: 115px;
  height: 97px;
  background: url(../images/article/shohyou_neko.png) no-repeat left top;
  background-size: 100% auto;
  position: absolute;
  right: 0;
  bottom: 0;
}

.recommend_list {
  width: 99%;
  margin: 0.7% auto;
  border: solid 2px #335279;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 40px 10px;
  padding-left: 3.07vw;
  padding-right: 3.07vw;
}

.recommend_list_item {
  font-size: 18px;
  font-weight: bold;
  background: url(../images/article/shohyou_card_list_type.png) no-repeat left top;
  background-size: 31px 31px;
  padding: 3px 0 17px 50px;
}

@media (max-width: 1000px) {
  .shohyou_card_wrap {
    padding-top: 1.3vw;
  }
}

@media (max-width: 750px) {
  .shohyou_card_wrap {
    margin: 0 -6% 9vw;
    padding-top: 1.333vw;
  }
  .shohyou_card_inner {
    padding: 11.33vw 0vw 9.86vw 0vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .shohyou_card_light {
    width: 133.333vw;
    height: 133.333vw;
    background: url(../images/article/light_bg.png) no-repeat 0 0;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: -15%;
    margin-left: -66.6666vw;
    z-index: 0;
    -webkit-animation: spin 14s linear infinite;
    animation: spin 14s linear infinite;
  }
  .card_image_thumb {
    width: 54.93vw;
    max-width: 412px;
    margin-bottom: 11.33vw;
  }
  .recommend_wrap + .card_spec_wrap {
    margin-top: 20px;
  }
  .recommend_wrap {
    width: 92.13vw;
    max-width: 691px;
    left: 5.33vw;
    border: solid 2px #335279;
  }
  .recommend_wrap:before {
    background-size: 100% auto;
    width: 40.66vw;
    max-width: 305px;
    height: 8vw;
    max-height: 60px;
    top: -5.87vw;
    left: -2.67vw;
  }
  .recommend_wrap:after {
    width: 15.33vw;
    max-width: 115px;
    height: 12.93vw;
    max-height: 97px;
    background-size: 100% auto;
    bottom: -0.67vw;
    right: -1.2vw;
  }
  .recommend_list {
    width: 98.5%;
    padding: 5.33vw 4vw 7.46vw 4vw;
    border: solid 1px #335279;
  }
  .recommend_list_item {
    font-size: 4vw;
    background-size: 4.1333vw 4.1333vw;
    background-position: 0 0;
    padding: 0vw 0vw 2.66vw 7.06vw;
    line-height: 1.2;
  }
}

@media (min-width: 1301px) {
  .shohyou_card_wrap {
    padding-top: 13px;
  }
}

.official_site_btn_wrap {
  padding-top: 8.3vw;
  width: 102%;
  position: relative;
  margin-left: -1%;
}

.official_site_btn_wrap::before {
  content: "";
  width: 40.8vw;
  max-width: 530.5px;
  height: 4.11vw;
  max-height: 53.5px;
  background: url(../images/article/shohyou_btn_top_txt.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  top: 2.65vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.official_site_card {
  width: 14.857%;
  height: auto;
}

.official_site_txt {
  width: 62.0155%;
  font-size: 34px;
  font-weight: bold;
  color: #fff;
  margin-left: 30px;
  position: relative;
}

.official_site_btn {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: bounce 1s ease-in-out infinite;
  animation: bounce 1s ease-in-out infinite;
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  transform-origin: center bottom;
}

.official_site_btn a {
  background: url(../images/article/shohyou_btn_bg.png) no-repeat center top;
  background-size: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 63.07vw;
  max-width: 820px;
  height: 13.46vw;
  max-height: 175px;
  text-decoration: none;
  line-height: 1.2;
  margin: 0 auto;
}

.official_site_btn a:hover {
  opacity: 0.8;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@media (max-width: 1000px) {
  .official_site_btn a {
    width: 100%;
    height: 18vw;
  }
  .official_site_txt {
    font-size: 3.4vw;
  }
}

@media (max-width: 750px) {
  .official_site_btn_wrap {
    padding-top: 18vw;
    margin-bottom: 5.33vw;
  }
  .official_site_btn_wrap::before {
    background: url(../images/article/shohyou_btn_top_txt.png) no-repeat center top;
    background-size: 100%  auto;
    width: 70.8vw;
    max-width: 531px;
    height: 7.2vw;
    max-height: 54px;
    top: 8.26vw;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .official_site_btn a {
    width: 97.6vw;
    height: 25.6vw;
    background: url(../images/article/sp_shohyou_btn_bg.png) no-repeat center top;
    background-size: 100%  auto;
  }
  .official_site_txt {
    font-size: 4.2vw;
  }
}

@media (max-width: 375px) {
  .official_site_txt::before {
    top: -10vw;
  }
}

@media (min-width: 1301px) {
  .recommend_list {
    padding: 40px 40px 10px;
  }
  .official_site_btn {
    width: 820px;
  }
  .official_site_btn a {
    width: 820px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .official_site_txt::before {
    width: 531px;
    height: 54px;
    top: -130px;
    left: 50%;
    -webkit-transform: translateX(-63%);
    -ms-transform: translateX(-63%);
    transform: translateX(-63%);
  }
}

.card_spec_wrap {
  padding-top: 77px;
  position: relative;
  margin-top: 15px;
}

.card_spec_wrap::before {
  content: "";
  width: 215px;
  height: 76px;
  background: url(../images/article/shohyou_spec.png) no-repeat left top;
  position: absolute;
  background-size: 100% 100%;
  top: 0;
}

.card_specs_list {
  border-top: solid #fd5409 4px;
  border-left: solid #bebebe 2px;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.card_specs_list li {
  border-right: solid #bebebe 2px;
  border-bottom: solid #bebebe 2px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1.8vmin;
  font-weight: bold;
  width: 33.3333%;
  padding: 3.83% 0% 3.83% 11.76%;
}

.card_specs_list .card_spec1 {
  background: url(../images/article/card_icon/icon_spec1_on.png) no-repeat;
  background-size: 16.34% auto;
  background-size: 16.34615% auto;
  background-position: 8.94231% center;
}

.card_specs_list .card_spec2 {
  background: url(../images/article/card_icon/icon_spec2_on.png) no-repeat;
  background-size: 24.23077% auto;
  background-position: 5% center;
}

.card_specs_list .card_spec3 {
  background: url(../images/article/card_icon/icon_spec3_on.png) no-repeat;
  background-size: 23.46154% auto;
  background-position: 5.38462% center;
}

.card_specs_list .card_spec4 {
  background: url(../images/article/card_icon/icon_spec4_on.png) no-repeat;
  background-size: 25% auto;
  background-position: 4.61538% center;
}

.card_specs_list .card_spec5 {
  background: url(../images/article/card_icon/icon_spec5_on.png) no-repeat;
  background-size: 24.42308% auto;
  background-position: 4.90385% center;
}

.card_specs_list .card_spec6 {
  background: url(../images/article/card_icon/icon_spec6_on.png) no-repeat;
  background-size: 30.96154% auto;
  background-position: 1.63462% center;
}

.card_specs_list .card_spec7 {
  background: url(../images/article/card_icon/icon_spec7_on.png) no-repeat;
  background-size: 24.61538% auto;
  background-position: 4.80769% center;
}

.card_specs_list .card_spec8 {
  background: url(../images/article/card_icon/icon_spec8_on.png) no-repeat;
  background-size: 30.19231% auto;
  background-position: 2.01923% center;
}

.card_specs_list .card_spec9 {
  background: url(../images/article/card_icon/icon_spec9_on.png) no-repeat;
  background-size: 31.53846% auto;
  background-position: 1.34615% center;
}

.card_specs_list .card_spec10 {
  background: url(../images/article/card_icon/icon_spec10_on.png) no-repeat;
  background-size: 23.07692% auto;
  background-position: 5.57692% center;
}

.card_specs_list .card_spec11 {
  background: url(../images/article/card_icon/icon_spec11_on.png) no-repeat;
  background-size: 24.80769% auto;
  background-position: 4.71154% center;
}

.card_specs_list .card_spec12 {
  background: url(../images/article/card_icon/icon_spec12_on.png) no-repeat;
  background-size: 24.80769% auto;
  background-position: 4.71154% center;
}

.card_specs_list li.is_choice {
  color: #cdcdcd;
}

.card_specs_list .card_spec1.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec1_off.png) no-repeat;
  background-size: 16.34615% auto;
  background-position: 8.94231% center;
}

.card_specs_list .card_spec2.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec2_off.png) no-repeat;
  background-size: 24.23077% auto;
  background-position: 5% center;
}

.card_specs_list .card_spec3.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec3_off.png) no-repeat;
  background-size: 23.46154% auto;
  background-position: 5.38462% center;
}

.card_specs_list .card_spec4.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec4_off.png) no-repeat;
  background-size: 25% auto;
  background-position: 4.61538% center;
}

.card_specs_list .card_spec5.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec5_off.png) no-repeat;
  background-size: 24.42308% auto;
  background-position: 4.90385% center;
}

.card_specs_list .card_spec6.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec6_off.png) no-repeat;
  background-size: 30.96154% auto;
  background-position: 1.63462% center;
}

.card_specs_list .card_spec7.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec7_off.png) no-repeat;
  background-size: 24.61538% auto;
  background-position: 4.80769% center;
}

.card_specs_list .card_spec8.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec8_off.png) no-repeat;
  background-size: 30.19231% auto;
  background-position: 2.01923% center;
}

.card_specs_list .card_spec9.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec9_off.png) no-repeat;
  background-size: 16.92308% auto;
  background-position: 8.65385% center;
}

.card_specs_list .card_spec10.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec10_off.png) no-repeat;
  background-size: 23.07692% auto;
  background-position: 5.57692% center;
}

.card_specs_list .card_spec11.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec11_off.png) no-repeat;
  background-size: 24.80769% auto;
  background-position: 4.71154% center;
}

.card_specs_list .card_spec12.is_choice {
  background: #e7e7e7 url(../images/article/card_icon/icon_spec12_off.png) no-repeat;
  background-size: 24.80769% auto;
  background-position: 4.71154% center;
}

@media (max-width: 750px) {
  .card_spec_wrap {
    padding-top: 12.26vw;
    margin: 0vw 4vw 0vw 4vw;
  }
  .card_spec_wrap::before {
    left: 6vw;
    width: 34.53vw;
    max-width: 259px;
    height: 12.26vw;
    max-height: 92px;
  }
  .card_spec_wrap li {
    font-size: 3.2vmin;
    width: 33.3333%;
    height: 17.33vw;
    max-height: 130px;
    padding: 0;
    padding-bottom: 2.13vw;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .card_spec_wrap .card_spec1 {
    background-size: 18.69565% auto;
    background-position: center 28.75%;
  }
  .card_spec_wrap .card_spec2 {
    background-size: 27.3913% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec3 {
    background-size: 26.52174% auto;
    background-position: center 16.25%;
  }
  .card_spec_wrap .card_spec4 {
    background-size: 28.26087% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec5 {
    background-size: 27.6087% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec6 {
    background-size: 35% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec7 {
    background-size: 27.82609% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec8 {
    background-size: 34.13043% auto;
    background-position: center 16.25%;
  }
  .card_spec_wrap .card_spec9 {
    background-size: 35.65217% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec10 {
    background-size: 26.08696% auto;
    background-position: center 32.5%;
  }
  .card_spec_wrap .card_spec11 {
    background-size: 28.04348% auto;
    background-position: center 31.25%;
  }
  .card_spec_wrap .card_spec12 {
    background-size: 28.04348% auto;
    background-position: center 31.25%;
  }
  .card_spec_wrap .card_spec1.is_choice {
    background-size: 18.69565% auto;
    background-position: center 28.75%;
  }
  .card_spec_wrap .card_spec2.is_choice {
    background-size: 27.3913% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec3.is_choice {
    background-size: 26.52174% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec4.is_choice {
    background-size: 28.26087% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec5.is_choice {
    background-size: 27.6087% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec6.is_choice {
    background-size: 35% auto;
    background-position: center 15%;
  }
  .card_spec_wrap .card_spec7.is_choice {
    background-size: 27.82609% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec8.is_choice {
    background-size: 34.13043% auto;
    background-position: center 16.25%;
  }
  .card_spec_wrap .card_spec9.is_choice {
    background-size: 19.13043% auto;
    background-position: center 22.5%;
  }
  .card_spec_wrap .card_spec10.is_choice {
    background-size: 26.08696% auto;
    background-position: center 32.5%;
  }
  .card_spec_wrap .card_spec11.is_choice {
    background-size: 28.04348% auto;
    background-position: center 31.25%;
  }
  .card_spec_wrap .card_spec12.is_choice {
    background-size: 28.04348% auto;
    background-position: center 31.25%;
  }
}

@media (min-width: 1301px) {
  .card_specs_list li {
    padding: 30px 10px 30px 92px;
    font-size: 18px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .card_specs_list .card_spec1 {
    background: url(../images/article/card_icon/icon_spec1_on.png) no-repeat 23.25px center;
    background-size: 42.5px auto;
  }
  .card_specs_list .card_spec2 {
    background: url(../images/article/card_icon/icon_spec2_on.png) no-repeat 13px center;
    background-size: 63px auto;
  }
  .card_specs_list .card_spec3 {
    background: url(../images/article/card_icon/icon_spec3_on.png) no-repeat 14px center;
    background-size: 61px auto;
  }
  .card_specs_list .card_spec4 {
    background: url(../images/article/card_icon/icon_spec4_on.png) no-repeat 12px center;
    background-size: 65px auto;
  }
  .card_specs_list .card_spec5 {
    background: url(../images/article/card_icon/icon_spec5_on.png) no-repeat 12.75px center;
    background-size: 63.5px auto;
  }
  .card_specs_list .card_spec6 {
    background: url(../images/article/card_icon/icon_spec6_on.png) no-repeat 4.25px center;
    background-size: 80.5px auto;
  }
  .card_specs_list .card_spec7 {
    background: url(../images/article/card_icon/icon_spec7_on.png) no-repeat 12.5px center;
    background-size: 64px auto;
  }
  .card_specs_list .card_spec8 {
    background: url(../images/article/card_icon/icon_spec8_on.png) no-repeat 5.25px center;
    background-size: 78.5px auto;
  }
  .card_specs_list .card_spec9 {
    background: url(../images/article/card_icon/icon_spec9_on.png) no-repeat 3.5px center;
    background-size: 82px auto;
  }
  .card_specs_list .card_spec10 {
    background: url(../images/article/card_icon/icon_spec10_on.png) no-repeat 14.5px center;
    background-size: 60px auto;
  }
  .card_specs_list .card_spec11 {
    background: url(../images/article/card_icon/icon_spec11_on.png) no-repeat 12.25px center;
    background-size: 64.5px auto;
  }
  .card_specs_list .card_spec12 {
    background: url(../images/article/card_icon/icon_spec12_on.png) no-repeat 12.25px center;
    background-size: 64.5px auto;
  }
  .card_specs_list .card_spec1.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec1_off.png) no-repeat 23.25px center;
    background-size: 42.5px auto;
  }
  .card_specs_list .card_spec2.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec2_off.png) no-repeat 13px center;
    background-size: 63px auto;
  }
  .card_specs_list .card_spec3.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec3_off.png) no-repeat 14px center;
    background-size: 61px auto;
  }
  .card_specs_list .card_spec4.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec4_off.png) no-repeat 12px center;
    background-size: 65px auto;
  }
  .card_specs_list .card_spec5.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec5_off.png) no-repeat 12.75px center;
    background-size: 63.5px auto;
  }
  .card_specs_list .card_spec6.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec6_off.png) no-repeat 4.25px center;
    background-size: 80.5px auto;
  }
  .card_specs_list .card_spec7.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec7_off.png) no-repeat 12.5px center;
    background-size: 64px auto;
  }
  .card_specs_list .card_spec8.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec8_off.png) no-repeat 5.25px center;
    background-size: 78.5px auto;
  }
  .card_specs_list .card_spec9.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec9_off.png) no-repeat 22.5px center;
    background-size: 44px auto;
  }
  .card_specs_list .card_spec10.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec10_off.png) no-repeat 14.5px center;
    background-size: 60px auto;
  }
  .card_specs_list .card_spec11.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec11_off.png) no-repeat 12.25px center;
    background-size: 64.5px auto;
  }
  .card_specs_list .card_spec12.is_choice {
    background: #e7e7e7 url(../images/article/card_icon/icon_spec12_off.png) no-repeat 12.25px center;
    background-size: 64.5px auto;
  }
}

.bottom_utility {
  background: #fff;
  padding: 40px 0 300px;
}

.sns_share_list.post_bottom {
  position: relative;
  padding-top: 11.53vw;
  margin-bottom: 0;
}

.sns_share_list.post_bottom::before {
  content: "";
  width: 314px;
  height: 34px;
  background: url(../images/article/post_share_share_txt.png) no-repeat left top;
  position: absolute;
  background-size: 100% 100%;
  top: 6.15vw;
}

.sns_share_list.article_top {
  margin-bottom: 42px;
}

@media (max-width: 750px) {
  .sns_share_list.post_bottom {
    width: 80.66vw;
    max-width: 605px;
    padding-top: 14.13vw;
  }
  .sns_share_list.post_bottom::before {
    width: 45.33vw;
    max-width: 340px;
    height: 4.26vw;
    max-height: 32px;
  }
  .category .sns_share_list.post_bottom::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .bottom_utility {
    padding: 0 0 250px;
  }
}

@media (min-width: 1301px) {
  .sns_share_list.post_bottom::before {
    top: 80px;
  }
}

.related_article_wrap,
.new_article_wrap {
  background: #fff2d4;
  padding-top: 160px;
  padding-bottom: 30px;
  padding-left: 3.57vw;
  padding-right: 3.57vw;
  position: relative;
  margin-bottom: 150px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 5;
}

.related_article_wrap:before,
.new_article_wrap:before {
  content: "";
  width: 12.03vw;
  max-width: 156.5px;
  height: 14.8vw;
  max-height: 192.5px;
  background: url(../images/utility/related_chara.png) no-repeat left top;
  position: absolute;
  background-size: 100% auto;
  display: block;
  left: -1.35vw;
  top: -3.74vw;
}

.related_article_wrap:after {
  content: "";
  width: 48.38vw;
  max-width: 629px;
  height: 16.38vw;
  max-height: 213px;
  background: url(../images/utility/related_bg_txt.png) no-repeat left top;
  position: absolute;
  background-size: 100% auto;
  display: block;
  top: 0.76vw;
  left: 9.23vw;
  z-index: 1;
}

.new_article_wrap {
  padding-top: 13.84vw;
}

.new_article_wrap:after {
  content: "";
  width: 34.38vw;
  max-width: 447px;
  height: 16.15vw;
  max-height: 210px;
  background: url(../images/utility/newpost_bg_txt.png) no-repeat left top;
  position: absolute;
  background-size: 100% auto;
  display: block;
  top: 0.76vw;
  left: 9.23vw;
  z-index: 1;
}

.common_article_wrap {
  background: #fff2d4;
  padding: 5.76vw 3.57vw 5.76vw 3.57vw;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media (max-width: 750px) {
  .related_article_wrap,
  .common_article_wrap,
  .new_article_wrap {
    padding-top: 25.33vw;
    padding-bottom: 4vw;
    padding-left: 5.33vw;
    padding-right: 5.33vw;
    margin-bottom: 22.66vw;
  }
  .related_article_wrap:before,
  .common_article_wrap:before,
  .new_article_wrap:before {
    content: "";
    width: 20.93vw;
    max-width: 157px;
    height: 25.73vw;
    max-height: 193px;
    left: 1.46vw;
    top: -5.87vw;
    z-index: 99;
  }
  .related_article_wrap:after,
  .common_article_wrap:after,
  .new_article_wrap:after {
    content: "";
    width: 83.86vw;
    max-width: 629px;
    height: 28.39vw;
    max-height: 213px;
    top: 1.33vw;
    left: 15.46vw;
    z-index: 1;
  }
  .new_article_wrap {
    padding-top: 24vw;
  }
  .new_article_wrap:after {
    content: "";
    width: 66.66vw;
    max-width: 500px;
    left: 5.33vw;
  }
}

@media (min-width: 1301px) {
  .related_article_wrap,
  .new_article_wrap {
    padding: 160px 46.5px 30px;
    margin-bottom: 150px;
  }
  .related_article_wrap:before,
  .new_article_wrap:before {
    width: 156.5px;
    height: 192.5px;
    left: -17.5px;
    top: -48.5px;
    z-index: 2;
  }
  .related_article_wrap:after,
  .new_article_wrap:after {
    top: 10px;
    left: 115px;
    z-index: 1;
  }
  .common_article_wrap {
    padding: 75px 46.5px;
  }
  .new_article_wrap {
    padding-top: 180px;
  }
}

.new_article_title {
  font-size: 26px;
  font-weight: bold;
  /*font-family: ud shin maru go demibold, sans-serif;*/
  position: absolute;
  top: 5.38vw;
  left: 9.84vw;
  z-index: 2;
}

.related_article_title {
  font-size: 26px;
  font-weight: bold;
  /*font-family: ud shin maru go demibold, sans-serif;*/
  position: absolute;
  top: 6.46vw;
  left: 10.76vw;
  z-index: 2;
}

.related_article,
.common_article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  z-index: 3;
}

.related_article::after,
.common_article::after {
  content: "";
  display: block;
  width: 30%;
}

.related_article_item,
.common_article_item {
  width: 29.76%;
  background: #fff;
  -webkit-box-shadow: 5px 5px 0 rgba(234, 217, 179, 0.5);
  box-shadow: 5px 5px 0 rgba(234, 217, 179, 0.5);
  position: relative;
  margin-bottom: 50px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  top: 0;
  left: 0;
  -webkit-transform: translatez(0);
}

.related_article_item .item_meta,
.common_article_item .item_meta {
  position: relative;
  padding: 30px 0 25px;
  padding-right: 1.92vw;
  padding-left: 1.92vw;
}

.related_article_item .ribon,
.common_article_item .ribon {
  font-size: 1vw;
  color: #020202;
  text-decoration: none;
  font-weight: bold;
  line-height: 2.5vw;
  width: auto;
  height: 3.53vw;
  max-height: 46px;
  background: url(../images/utility/common_ribon_body.png) repeat-x left top;
  background-size: auto 100%;
  padding-left: 1.15vw;
  padding-right: 1.15vw;
  position: absolute;
  left: -0.85vw;
  top: -1.93vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.related_article_item .ribon::before,
.common_article_item .ribon::before {
  content: "";
  width: 0.92vw;
  max-width: 12px;
  height: 3.53vw;
  max-height: 46px;
  background: url(../images/utility/common_ribon_left.png) no-repeat left top;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.related_article_item .ribon::after,
.common_article_item .ribon::after {
  content: "";
  width: 0.92vw;
  max-width: 12px;
  height: 3.53vw;
  max-height: 46px;
  background: url(../images/utility/common_ribon_right.png) no-repeat left top;
  background-size: auto 100%;
  position: absolute;
  right: -0.8vw;
  top: 0;
}

.related_article_item .title,
.common_article_item .title {
  font-size: 16px;
  color: #0085bf;
  text-decoration: underline;
  line-height: 1.875;
}

.related_article_item .item_thumb img,
.common_article_item .item_thumb img {
  width: 100%;
  height: auto;
}

.related_article_item:hover,
.common_article_item:hover {
  top: 5px;
  left: 5px;
  -webkit-box-shadow: 0px 0px 0 rgba(234, 217, 179, 0.5);
  box-shadow: 0px 0px 0 rgba(234, 217, 179, 0.5);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.related_article_item:hover .item_thumb,
.common_article_item:hover .item_thumb {
  opacity: 0.8;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.related_article_item:hover .title,
.common_article_item:hover .title {
  text-decoration: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

@media (max-width: 750px) {
  .related_article_title {
    font-size: 5.0666vw;
    left: 22.13vw;
    top: 8.4vw;
  }
  .new_article_title {
    font-size: 5.0666vw;
    left: 22.13vw;
    top: 8.4vw;
  }
  .yarpp-related {
    margin: 0 !important;
  }
  .related_article_item,
  .common_article_item {
    width: 100%;
    position: relative;
    margin-bottom: 10.66vw;
  }
  .related_article_item .item_meta,
  .common_article_item .item_meta {
    position: static;
  }
  .related_article_item a,
  .common_article_item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .related_article_item .ribon,
  .common_article_item .ribon {
    font-size: 3.2vw;
    height: 7.46vw;
    max-height: 56px;
    line-height: 6vw;
    width: auto;
    display: inline-block;
    background: url(../images/article/sp_article_ribon_body.png) repeat-x left top;
    background-size: auto 100%;
    position: absolute;
    max-width: none;
    left: 0;
    top: -5.07vw;
    padding-right: 3.33vw;
  }
  .related_article_item .ribon::before,
  .common_article_item .ribon::before {
    content: "";
    width: 1.6vw;
    height: 7.46vw;
    max-height: 56px;
    background: url(../images/article/sp_article_ribon_left.png) no-repeat left top;
    background-size: auto 100%;
    position: absolute;
    left: -1.5vw;
  }
  .related_article_item .ribon::after,
  .common_article_item .ribon::after {
    content: "";
    width: 1.73vw;
    max-width: 13px;
    height: 7.46vw;
    max-height: 56px;
    background: url(../images/article/sp_article_ribon_right.png) no-repeat left top;
    background-size: auto 100%;
    position: absolute;
    right: -1.7vw;
  }
  .related_article_item .item_thumb,
  .common_article_item .item_thumb {
    width: 31.73vw;
    max-width: 238px;
    height: 21.33vw;
    max-height: 160px;
    overflow: hidden;
  }
  .related_article_item .item_thumb img,
  .common_article_item .item_thumb img {
    height: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .related_article_item .item_meta,
  .common_article_item .item_meta {
    width: 57.73vw;
    max-width: 433px;
    padding: 2.66vw 11.33vw 2.66vw 4vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url(../images/article/sp_morebox_arrow.png) no-repeat right 2.8vw center;
    background-size: 4.8vw 4.8vw;
  }
  .related_article_item .title,
  .common_article_item .title {
    font-size: 3.2vw;
    font-weight: normal;
    line-height: 1.6;
  }
}

@media (min-width: 1301px) {
  .related_article_title {
    top: 84px;
    left: 140px;
  }
  .related_article_item,
  .common_article_item {
    width: 270px;
  }
  .related_article_item .item_meta,
  .common_article_item .item_meta {
    padding: 30px 25px 25px;
  }
  .related_article_item .ribon,
  .common_article_item .ribon {
    font-size: 13px;
    height: 56px;
    line-height: 35px;
    left: -11px;
    top: -25px;
  }
  .related_article_item .ribon::after,
  .common_article_item .ribon::after {
    right: -12px;
  }
}

.related_article_item_link,
.common_article_item {
  display: block;
  text-decoration: none;
}

.popular_post_wrap {
  background: #ffe1e1;
  position: relative;
  padding: 13.84vw 4.46vw 3.84vw 4.46vw;
}

.popular_post_wrap:before {
  content: "";
  width: 10.76vw;
  max-width: 140px;
  height: 11.26vw;
  max-height: 146.5px;
  background: url(../images/utility/popular_chara.png) no-repeat left top;
  position: absolute;
  background-size: 100% auto;
  display: block;
  left: 0.5vw;
  top: 1.53vw;
}

.popular_post_wrap:after {
  content: "";
  width: 51.61vw;
  max-width: 671px;
  height: 16.69vw;
  max-height: 217px;
  background: url(../images/utility/popular_bg_txt.png) no-repeat left top;
  position: absolute;
  background-size: 100% auto;
  display: block;
  top: 0.76vw;
  left: 9.23vw;
  z-index: 1;
}

@media (max-width: 750px) {
  .popular_post_wrap {
    padding-top: 25.06vw;
  }
  .popular_post_wrap::before {
    width: 19.86vw;
    max-width: 149px;
    height: 23.06vw;
    max-height: 173px;
    left: 0;
    top: -3.74vw;
    z-index: 2;
  }
  .popular_post_wrap::after {
    width: 89.33vw;
    max-width: 670px;
    height: 28.53vw;
    max-height: 214px;
    left: 3.84vw;
  }
}

@media (min-width: 1301px) {
  .popular_post_wrap {
    padding: 180px 58px 50px;
  }
  .popular_post_wrap:before {
    width: 140px;
    height: 146.5px;
    left: 6.5px;
    top: 20px;
    z-index: 2;
  }
  .popular_post_wrap:after {
    top: 10px;
    left: 110px;
  }
}

.popular_post_title {
  font-size: 26px;
  font-weight: bold;
  position: absolute;
  font-family: ud shin maru go demibold,sans-serif;
  top: 6.53vw;
  left: 11.07vw;
  z-index: 2;
}

.popular_post_article {
  position: relative;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.popular_post_item {
  width: 48.19%;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 6px 6px 0 rgba(221, 172, 172, 0.4);
  box-shadow: 6px 6px 0 rgba(221, 172, 172, 0.4);
  margin-bottom: 25px;
  position: relative;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  top: 0;
  left: 0;
  -webkit-transform: translatez(0);
}

.popular_post_item::before {
  content: "";
  width: 37px;
  height: 37px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.popular_post_item > a {
  padding: 1vw 1.15vw 1vw 1.15vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #0085bf;
  font-size: 15px;
}

.popular_post_item .item_thumb {
  width: 9.84vw;
  max-width: 128px;
  overflow: hidden;
  margin-right: 1.53vw;
}

.popular_post_item .item_thumb img {
  width: 100%;
  height: auto;
  display: block;
}

.popular_post_item .title {
  width: 18.46vw;
  max-width: 240px;
}

.popular_post_item:hover {
  -webkit-box-shadow: 0px 0px 0 rgba(221, 172, 172, 0.4);
  box-shadow: 0px 0px 0 rgba(221, 172, 172, 0.4);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  top: 6px;
  left: 6px;
}

.popular_post_item:hover .item_thumb {
  opacity: 0.8;
  z-index: 1;
}

.popular_post_item:hover a {
  text-decoration: none;
}

@media (max-width: 1000px) and (min-width: 751px) {
  .popular_post_title {
    top: 8.5vw;
    left: 14.4vw;
    z-index: 2;
  }
  .popular_post_item > a {
    padding: 1.3vw 1.5vw 1.3vw 1.5vw;
  }
  .popular_post_item .item_thumb {
    width: 12.8vw;
    max-width: 128px;
    margin-right: 2vw;
  }
  .popular_post_item .title {
    width: 26vw;
  }
}

@media (max-width: 750px) {
  .popular_post_title {
    font-size: 5.066vw;
    left: 20.66vw;
    top: 8.66vw;
  }
  .popular_post_item {
    width: 100%;
    margin-bottom: 7.73vw;
  }
  .popular_post_item > a {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    font-size: 3.2vw;
  }
  .popular_post_item .item_thumb {
    width: 31.73vw;
    max-width: 238px;
    height: 21.33vw;
    max-height: 160px;
    margin: 0;
    overflow: hidden;
  }
  .popular_post_item .item_thumb img {
    width: auto;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .popular_post_item .title {
    width: 57.73vw;
    max-width: 433px;
    padding: 2.66vw 11.33vw 2.66vw 4vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url(../images/article/sp_morebox_arrow.png) no-repeat right 2.8vw center;
    background-size: 4.8vw 4.8vw;
  }
}

@media (min-width: 1301px) {
  .popular_post_title {
    top: 85px;
    left: 144px;
  }
  .popular_post_item {
    width: 32.76vw;
    max-width: 426px;
    width: 426px;
  }
  .popular_post_item > a {
    padding: 13px 15px;
  }
  .popular_post_item .item_thumb {
    margin-right: 20px;
  }
}

.post_count_1::before {
  width: 53px;
  height: 52px;
  background: url(../images/utility/no01.png) no-repeat left top;
  background-size: 100% auto;
  left: -16px;
  top: -7px;
  z-index: 3;
}

.post_count_2::before {
  width: 53px;
  height: 52px;
  background: url(../images/utility/no02.png) no-repeat left top;
  background-size: 100% auto;
  left: -16px;
  top: -7px;
  z-index: 3;
}

.post_count_3::before {
  width: 53px;
  height: 52px;
  background: url(../images/utility/no03.png) no-repeat left top;
  background-size: 100% auto;
  left: -16px;
  top: -7px;
  z-index: 3;
}

.post_count_4::before {
  background: url(../images/utility/no04.png) no-repeat left top;
  background-size: 100% auto;
  z-index: 3;
}

.post_count_5::before {
  background: url(../images/utility/no05.png) no-repeat left top;
  background-size: 100% auto;
  z-index: 3;
}

.post_count_6::before {
  background: url(../images/utility/no06.png) no-repeat left top;
  background-size: 100% auto;
  z-index: 3;
}

@media (max-width: 750px) {
  .popular_post_item:before {
    background-size: 100% auto;
  }
  .post_count_1::before,
  .post_count_2::before,
  .post_count_3::before {
    width: 11.2vw;
    max-width: 84px;
    height: 11.2vw;
    max-height: 84px;
    left: -3.34vw;
    top: -4vw;
  }
  .post_count_4::before,
  .post_count_5::before,
  .post_count_6::before {
    width: 7.86vw;
    max-width: 59px;
    height: 8vw;
    max-height: 60px;
    left: -1.87vw;
    top: -1.74vw;
  }
}

.popular_post_wrap + .comment_wrap {
  margin-top: 11.53vw;
}

.comment-respond {
  background: #f2ffd9;
  position: relative;
  padding-top: 15px;
}

.comment-respond:before {
  content: "";
  background: url(../images/article/comment_bg_txt.png) no-repeat left top;
  background-size: 100% auto;
  width: 57.07vw;
  max-width: 742px;
  height: 15.69vw;
  max-height: 204px;
  display: block;
  position: absolute;
  left: 7.69vw;
}

.comment-respond:after {
  content: "";
  background: url(../images/article/comment_icon.png) no-repeat left top;
  background-size: 100% auto;
  width: 9.15vw;
  max-width: 119px;
  height: 9.15vw;
  max-height: 119px;
  display: block;
  position: absolute;
  left: -2.08vw;
  top: 1.92vw;
}

@media (max-width: 750px) {
  .comment-respond {
    padding-top: 2vw;
  }
  .comment-respond:before {
    width: 98.66vw;
    max-width: 740px;
    height: 27.2vw;
    max-height: 204px;
    left: 1.06vw;
  }
  .comment-respond:after {
    content: "";
    width: 15.86vw;
    max-width: 119px;
    height: 15.86vw;
    max-height: 119px;
    left: 2vw;
    top: 3.33vw;
  }
}

@media (min-width: 1301px) {
  .popular_post_wrap + .comment_wrap {
    margin-top: 150px;
  }
  .comment-respond {
    padding-top: 15px;
  }
  .comment-respond:before {
    width: 742px;
    height: 204px;
    left: 100px;
  }
  .comment-respond:after {
    width: 119px;
    height: 119px;
    left: -27px;
    top: 25px;
  }
}

.comment-reply-title {
  font-size: 25px;
  font-weight: bold;
  position: absolute;
  top: 5.38vw;
  left: 8.84vw;
  position: relative;
  z-index: 5;
}

.comment-reply-title a {
  color: #000;
}

.comment-form {
  width: 70%;
  margin: 0 auto;
  margin-top: 120px;
  position: relative;
  z-index: 3;
  padding-top: 115px;
}

.comment-form textarea, .comment-form input {
  border: 2px solid #d7d7d7;
  padding: 15px;
}

.comment-form textarea {
  margin-bottom: 50px;
}

.form-submit {
  text-align: center;
  padding: 60px 0 70px;
}

.form-submit .submit {
  width: 338px;
  height: 65px;
  background: #335279;
  border-radius: 40px;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  -webkit-appearance: none;
  border: none;
}

.comment-form-comment,
.comment-form-avater,
.comment-form-author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.comment-form-comment .comment_form_label,
.comment-form-avater .comment_form_label,
.comment-form-author .comment_form_label {
  text-align: left;
  width: 155px;
}

.comment-form-comment textarea,
.comment-form-comment .avater_select_wrap,
.comment-form-comment .author,
.comment-form-avater textarea,
.comment-form-avater .avater_select_wrap,
.comment-form-avater .author,
.comment-form-author textarea,
.comment-form-author .avater_select_wrap,
.comment-form-author .author {
  width: 530px;
  display: inline-block;
}

.comment-form-comment .avater_select,
.comment-form-avater .avater_select,
.comment-form-author .avater_select {
  display: inline-block;
  position: relative;
  padding-top: 70px;
}

.comment-form-comment .avater_select [class^='avater_img'],
.comment-form-avater .avater_select [class^='avater_img'],
.comment-form-author .avater_select [class^='avater_img'] {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.comment-form-comment .avater_select .avater_img01,
.comment-form-avater .avater_select .avater_img01,
.comment-form-author .avater_select .avater_img01 {
  width: 74px;
}

.comment-form-comment .avater_select .avater_img02,
.comment-form-avater .avater_select .avater_img02,
.comment-form-author .avater_select .avater_img02 {
  width: 86px;
}

.comment-form-comment .avater_select .avater_img03,
.comment-form-avater .avater_select .avater_img03,
.comment-form-author .avater_select .avater_img03 {
  width: 75px;
}

.comment-form-comment .avater_select .avater_img04,
.comment-form-avater .avater_select .avater_img04,
.comment-form-author .avater_select .avater_img04 {
  width: 70px;
}

.comment-form-avater {
  position: absolute;
  top: 0;
}

.comment-form-comment {
  margin-top: 30px;
}

.comment_form_label {
  font-size: 20px;
  font-weight: bold;
}

@media (max-width: 750px) {
  .comment-reply-title {
    font-size: 5.0666vw;
    font-weight: bold;
    position: absolute;
    top: 7.2vw;
    left: 21.2vw;
  }
  .comment-form {
    width: 92vw;
    max-width: 690px;
    margin-top: 21.33vw;
    padding-top: 16vw;
  }
  .comment-form textarea, .comment-form input {
    padding: 4vw;
  }
  .comment-form-comment textarea,
  .comment-form-author .author {
    width: 58.66vw;
    max-width: 440px;
  }
  .comment-form-comment .comment_form_label,
  .comment-form-avater .comment_form_label,
  .comment-form-author .comment_form_label {
    width: 22vw;
    max-width: 165px;
    font-size: 3vw;
  }
  .comment-form-avater .avater_select {
    padding-top: 10.66vw;
  }
  .comment-form-avater .avater_select_wrap {
    width: 73.33vw;
    max-width: 550px;
  }
  .comment-form-avater .avater_select .avater_img01 {
    width: 12vw;
    max-width: 90px;
  }
  .comment-form-avater .avater_select .avater_img02 {
    width: 12vw;
    max-width: 90px;
  }
  .comment-form-avater .avater_select .avater_img03 {
    width: 12vw;
    max-width: 90px;
  }
  .comment-form-avater .avater_select .avater_img04 {
    width: 12vw;
    max-width: 90px;
  }
  .popular_post_wrap + .comment_wrap {
    margin-top: 22.66vw;
  }
}

@media (min-width: 1301px) {
  .comment-reply-title {
    font-size: 25px;
    top: 70px;
    left: 115px;
  }
  .comment-form {
    width: 700px;
    margin-top: 120px;
    padding-top: 115px;
  }
  .comment-form textarea, .comment-form input {
    padding: 15px;
  }
  .comment-form textarea {
    margin-bottom: 50px;
  }
  .form-submit {
    padding: 60px 0 70px;
  }
  .form-submit .submit {
    width: 338px;
    height: 65px;
    font-size: 22px;
  }
  .comment-form-comment .comment_form_label,
  .comment-form-avater .comment_form_label,
  .comment-form-author .comment_form_label {
    width: 155px;
  }
  .comment-form-comment textarea,
  .comment-form-comment .avater_select_wrap,
  .comment-form-comment .author,
  .comment-form-avater textarea,
  .comment-form-avater .avater_select_wrap,
  .comment-form-avater .author,
  .comment-form-author textarea,
  .comment-form-author .avater_select_wrap,
  .comment-form-author .author {
    width: 530px;
  }
  .comment-form-comment .avater_select,
  .comment-form-avater .avater_select,
  .comment-form-author .avater_select {
    padding-top: 70px;
  }
  .comment-form-comment .avater_select .avater_img01,
  .comment-form-avater .avater_select .avater_img01,
  .comment-form-author .avater_select .avater_img01 {
    width: 74px;
  }
  .comment-form-comment .avater_select .avater_img02,
  .comment-form-avater .avater_select .avater_img02,
  .comment-form-author .avater_select .avater_img02 {
    width: 86px;
  }
  .comment-form-comment .avater_select .avater_img03,
  .comment-form-avater .avater_select .avater_img03,
  .comment-form-author .avater_select .avater_img03 {
    width: 75px;
  }
  .comment-form-comment .avater_select .avater_img04,
  .comment-form-avater .avater_select .avater_img04,
  .comment-form-author .avater_select .avater_img04 {
    width: 70px;
  }
  .comment-form-avater {
    top: 0;
  }
  .comment-form-comment {
    margin-top: 30px;
  }
  .comment_form_label {
    font-size: 20px;
  }
}

.avater_select_wrap input[type=radio] {
  display: none;
}

.avater_select_wrap .radio {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  margin: 0 20px 8px 0;
  padding: 8px 0 0 55px;
  vertical-align: middle;
  cursor: pointer;
}

.avater_select_wrap .radio:after {
  -webkit-transition: border-color 0.2s linear;
  -o-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -10px;
  width: 30px;
  height: 30px;
  border: 2px solid #d7d7d7;
  border-radius: 50%;
  content: '';
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.avater_select_wrap .radio:before {
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 20px;
  display: block;
  margin-top: -6px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fd55a8;
  content: '';
  opacity: 0;
  z-index: 3;
}

.avater_select_wrap input[type=radio]:checked + .radio:before {
  opacity: 1;
}

@media (max-width: 750px) {
  .avater_select_wrap .radio {
    margin: 0vw 1.33vw 1.06vw 0vw;
    padding: 0vw 0vw 0vw 6.66vw;
    font-size: 3.2vw;
  }
  .avater_select_wrap .radio:after {
    left: 0;
    margin-top: -10px;
    width: 18px;
    height: 18px;
  }
  .avater_select_wrap .radio:before {
    top: 50%;
    left: 4px;
    display: block;
    margin-top: -6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #fd55a8;
    content: '';
    opacity: 0;
    z-index: 3;
  }
  .form-submit {
    padding: 8vw 0vw 7.06vw 0vw;
  }
  .form-submit .submit {
    width: 45.06vw;
    max-width: 338px;
    height: 10.66vw;
    max-height: 80px;
    font-size: 3.466vmin;
    line-height: 1;
    padding: 0;
  }
}

.comment_list {
  width: 82%;
  margin: 0 auto;
  padding-top: 90px;
}

.comment_list .comment + .comment {
  margin-top: 80px;
}

.comment_list .comment .children {
  margin-top: 80px;
  padding-left: 6.15vw;
}

.comment_list .comment-body {
  position: relative;
}

.comment_list .comment_txt_wrap {
  background: #ebfcff;
  font-size: 16px;
  line-height: 1.875;
  border-radius: 15px;
  border: solid 1px #323232;
  -webkit-box-shadow: 3px 3px 0 #c1dbe0;
  box-shadow: 3px 3px 0 #c1dbe0;
  padding: 25px;
  position: relative;
}

.comment_list .comment_txt_wrap:before {
  content: "";
  width: 16px;
  height: 15px;
  background: url(../images/article/comment_balloon_arrow.png) no-repeat left center;
  background-size: 100% 100%;
  display: block;
  position: absolute;
  top: -15px;
  left: 50px;
}

.comment_list .comment-author {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 30px;
  padding-left: 105px;
  position: relative;
}

.comment_list .comment-author:before {
  content: "";
  width: 74px;
  height: 63px;
  background: url(../images/article/comment_chara01.png) no-repeat left top;
  background-size: 100% 100%;
  position: absolute;
  left: 18px;
  bottom: 17px;
}

.comment_list .comment-author.avaterB:before {
  width: 86px;
  height: 65px;
  background: url(../images/article/comment_chara02.png) no-repeat left top;
  background-size: 100% 100%;
}

.comment_list .comment-author.avaterC:before {
  width: 75px;
  height: 64px;
  background: url(../images/article/comment_chara03.png) no-repeat left top;
  background-size: 100% 100%;
}

.comment_list .comment-author.avaterD:before {
  width: 70px;
  height: 58px;
  background: url(../images/article/comment_chara04.png) no-repeat left top;
  background-size: 100% 100%;
}

.comment_list .reply a {
  position: absolute;
  right: 15px;
  bottom: -35px;
  width: 126px;
  height: 55px;
  color: #fff;
  display: block;
  background: #335279 url(../images/article/reply_arrow.png) no-repeat 18px center;
  background-size: 25px 19px;
  border-radius: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-decoration: none;
  font-weight: bold;
  font-size: 18px;
  text-indent: 1.5em;
  line-height: 1;
}

@media (max-width: 750px) {
  .comment_list {
    width: 89.33vw;
    max-width: 670px;
    padding-top: 7.33vw;
  }
  .comment_list .comment + .comment {
    margin-top: 10vw;
  }
  .comment_list .comment .children {
    margin-top: 10vw;
    padding-left: 7.33vw;
  }
  .comment_list .comment_txt_wrap {
    font-size: 3.2vw;
    line-height: 1.666;
    border-radius: 10px;
    border: solid 1px #323232;
    -webkit-box-shadow: 2px 2px 0 #c1dbe0;
    box-shadow: 2px 2px 0 #c1dbe0;
    padding: 3.33vw 4vw 4.66vw 4vw;
  }
  .comment_list .comment_txt_wrap:before {
    width: 3.06vw;
    max-width: 23px;
    height: 2.66vw;
    max-height: 20px;
    top: -2.6vw;
    left: 5.86vw;
  }
  .comment_list .comment-author {
    font-size: 3.2vw;
    padding-bottom: 5.33vw;
    padding-left: 14.4vw;
    position: relative;
  }
  .comment_list .comment-author:before {
    content: "";
    width: 12.4vw;
    max-width: 93px;
    height: 10.53vw;
    max-height: 79px;
    left: 1.2vw;
    bottom: 3.73vw;
  }
  .comment_list .comment-author.avaterB:before {
    width: 14.4vw;
    max-width: 108px;
    height: 10.8vw;
    max-height: 81px;
  }
  .comment_list .comment-author.avaterC:before {
    width: 12.4vw;
    max-width: 93px;
    height: 10.66vw;
    max-height: 80px;
  }
  .comment_list .comment-author.avaterD:before {
    width: 11.73vw;
    max-width: 88px;
    height: 9.73vw;
    max-height: 73px;
  }
  .comment_list .reply a {
    width: 20.13vw;
    max-width: 151px;
    height: 8.8vw;
    max-height: 66px;
    right: 2vw;
    bottom: -4.67vw;
    background: #335279 url(../images/article/reply_arrow.png) no-repeat 2.9vw center;
    background-size: 4.1333vw 3.1666vw;
    font-size: 3.2vw;
  }
}

@media (min-width: 1301px) {
  .comment_list {
    width: 820px;
    padding-top: 90px;
  }
  .comment_list .comment + .comment {
    margin-top: 80px;
  }
  .comment_list .comment .children {
    margin-top: 80px;
    padding-left: 80px;
  }
  .comment_list .comment_txt_wrap {
    padding: 25px;
  }
  .comment_list .comment_txt_wrap:before {
    content: "";
    width: 16px;
    height: 15px;
    top: -15px;
    left: 50px;
  }
  .comment_list .comment-author {
    font-size: 20px;
    padding-bottom: 30px;
    padding-left: 105px;
  }
  .comment_list .comment-author:before {
    content: "";
    width: 74px;
    height: 63px;
    left: 18px;
    bottom: 17px;
  }
  .comment_list .comment-author.avaterB:before {
    width: 86px;
    height: 65px;
  }
  .comment_list .comment-author.avaterC:before {
    width: 75px;
    height: 64px;
  }
  .comment_list .comment-author.avaterD:before {
    width: 70px;
    height: 58px;
  }
  .comment_list .reply a {
    right: 15px;
    bottom: -35px;
    width: 126px;
    height: 55px;
    background: #335279 url(../images/article/reply_arrow.png) no-repeat 18px center;
    background-size: 25px 19px;
    font-size: 18px;
    text-indent: 1.5em;
    line-height: 1;
  }
}

/* ----------------------------------------------
   コメント
---------------------------------------------- */
.article_content .comment {
  width: 100%;
  position: relative;
  margin: 6.15vw 0vw 6.15vw 0vw;
}

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

.article_content .comment > div {
  width: 82.92%;
  padding: 1.69vw 2.3vw 1.69vw 2.3vw;
  line-height: 1.875;
  border-radius: 15px;
  border: solid 1px #323232;
  position: relative;
  min-height: 7vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-style: italic;
}

div[class^='comment_teacher_'] {
  background: #ebfcff;
  -webkit-box-shadow: 3px 3px 0 #c1dbe0;
  box-shadow: 3px 3px 0 #c1dbe0;
  position: relative;
  float: right;
  width: 81% !important;
}

div[class^='comment_teacher_']::after {
  content: "";
  width: 1.7vw;
  max-width: 21px;
  height: 1.34vw;
  max-height: 17.5px;
  background: url(../images/comment/com_neko_balloon.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -1.65vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.comment_teacher_basic::before {
  content: "";
  width: 10.84vw;
  max-width: 141px;
  height: 9.65vw;
  max-height: 125.5px;
  background: url(../images/comment/com_teacher_basic.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -24.5%;
  top: -1vw;
}

.comment_teacher_smile::before {
  content: "";
  width: 9.07vw;
  max-width: 118px;
  height: 9.3vw;
  max-height: 121px;
  background: url(../images/comment/com_teacher_smile.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -24.5%;
  top: -1vw;
}

.comment_teacher_angry::before {
  content: "";
  width: 9.15vw;
  max-width: 119px;
  height: 9.34vw;
  max-height: 121.5px;
  background: url(../images/comment/com_teacher_angry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -24.5%;
  top: -1vw;
}

.comment_teacher_cry::before {
  content: "";
  width: 8.61vw;
  max-width: 112px;
  height: 8.65vw;
  max-height: 112.5px;
  background: url(../images/comment/com_teacher_cry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -24.5%;
  top: -1vw;
}

.comment_teacher_surprised::before {
  content: "";
  width: 10.53vw;
  max-width: 137px;
  height: 9.42vw;
  max-height: 122.5px;
  background: url(../images/comment/com_teacher_surprised.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -24.5%;
  top: -1vw;
}

div[class^='comment_daughter'] {
  background: #fffddb;
  -webkit-box-shadow: 3px 3px 0 #f4f0b3;
  box-shadow: 3px 3px 0 #f4f0b3;
  position: relative;
}

div[class^='comment_daughter']::after {
  content: "";
  width: 1.84vw;
  max-width: 24px;
  height: 1.57vw;
  max-height: 20.5px;
  background: url(../images/comment/com_daughter_balloon.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -1.84vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.comment_daughter_basic::before {
  content: "";
  width: 8.42vw;
  max-width: 109.5px;
  height: 12.07vw;
  max-height: 157px;
  background: url(../images/comment/com_daughter_basic.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_daughter_smile::before {
  content: "";
  width: 8.61vw;
  max-width: 112px;
  height: 12.07vw;
  max-height: 157px;
  background: url(../images/comment/com_daughter_smile.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_daughter_angry::before {
  content: "";
  width: 8.84vw;
  max-width: 115px;
  height: 11.92vw;
  max-height: 155px;
  background: url(../images/comment/com_daughter_angry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_daughter_cry::before {
  content: "";
  width: 8.38vw;
  max-width: 109px;
  height: 11.88vw;
  max-height: 154.5px;
  background: url(../images/comment/com_daughter_cry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_daughter_surprised::before {
  content: "";
  width: 8.84vw;
  max-width: 115px;
  height: 12.11vw;
  max-height: 157.5px;
  background: url(../images/comment/com_daughter_surprised.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_daughter_doubt::before {
  content: "";
  width: 8.38vw;
  max-width: 109px;
  height: 11.88vw;
  max-height: 154.5px;
  background: url(../images/comment/com_daughter_doubt.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

div[class^='comment_father'] {
  background: #f5ffdb;
  -webkit-box-shadow: 3px 3px 0 #d2e3a5;
  box-shadow: 3px 3px 0 #d2e3a5;
  position: relative;
}

div[class^='comment_father']::after {
  content: "";
  width: 1.84vw;
  max-width: 24px;
  height: 1.57vw;
  max-height: 20.5px;
  background: url(../images/comment/com_father_balloon.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -1.84vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.comment_father_basic::before {
  content: "";
  width: 9.73vw;
  max-width: 126.5px;
  height: 11.3vw;
  max-height: 147px;
  background: url(../images/comment/com_father_basic.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_father_smile::before {
  content: "";
  width: 9.23vw;
  max-width: 120px;
  height: 11.42vw;
  max-height: 148.5px;
  background: url(../images/comment/com_father_smile.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_father_surprised::before {
  content: "";
  width: 10.5vw;
  max-width: 136.5px;
  height: 11.61vw;
  max-height: 151px;
  background: url(../images/comment/com_father_surprised.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_father_cry::before {
  content: "";
  width: 9.23vw;
  max-width: 120px;
  height: 11.19vw;
  max-height: 145.5px;
  background: url(../images/comment/com_father_cry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_father_angry::before {
  content: "";
  width: 9.23vw;
  max-width: 120px;
  height: 11.19vw;
  max-height: 145.5px;
  background: url(../images/comment/com_father_angry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_father_doubt::before {
  content: "";
  width: 9.23vw;
  max-width: 120px;
  height: 11.19vw;
  max-height: 145.5px;
  background: url(../images/comment/com_father_doubt.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

div[class^='comment_mother'] {
  background: #ffe6eb;
  -webkit-box-shadow: 3px 3px 0 #efb1be;
  box-shadow: 3px 3px 0 #efb1be;
  position: relative;
}

div[class^='comment_mother']::after {
  content: "";
  width: 1.84vw;
  max-width: 24px;
  height: 1.57vw;
  max-height: 20.5px;
  background: url(../images/comment/com_mother_balloon.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -1.84vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.comment_mother_basic::before {
  content: "";
  width: 10.38vw;
  max-width: 135px;
  height: 11.92vw;
  max-height: 155px;
  background: url(../images/comment/com_mother_basic.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_mother_smile::before {
  content: "";
  width: 8.69vw;
  max-width: 113px;
  height: 11.84vw;
  max-height: 154px;
  background: url(../images/comment/com_mother_smile.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_mother_surprised::before {
  content: "";
  width: 8.5vw;
  max-width: 110.5px;
  height: 12vw;
  max-height: 156px;
  background: url(../images/comment/com_mother_surprised.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_mother_cry::before {
  content: "";
  width: 8.8vw;
  max-width: 114.5px;
  height: 11.57vw;
  max-height: 150.5px;
  background: url(../images/comment/com_mother_cry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_mother_angry::before {
  content: "";
  width: 8.3vw;
  max-width: 108px;
  height: 12vw;
  max-height: 156px;
  background: url(../images/comment/com_mother_angry.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

.comment_mother_doubt::before {
  content: "";
  width: 8.5vw;
  max-width: 110.5px;
  height: 11.3vw;
  max-height: 147px;
  background: url(../images/comment/com_mother_doubt.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  right: -21%;
  top: -1vw;
}

@media (max-width: 1000px) and (min-width: 751px) {
  .article_content .comment {
    margin: 8vw 0vw 8vw 0vw;
  }
  .article_content .comment > div {
    padding: 2.2vw 3vw 2.2vw 3vw;
  }
  div[class^='comment_teacher_']::after {
    width: 2.1vw;
    max-width: 21px;
    height: 1.75vw;
    max-height: 17.5px;
    left: -2.1vw;
  }
  .comment_teacher_basic::before {
    width: 14.09vw;
    max-width: 141px;
    height: 12.55vw;
    max-height: 125.5px;
  }
  .comment_teacher_smile::before {
    width: 11.8vw;
    max-width: 118px;
    height: 12.1vw;
    max-height: 121px;
  }
  .comment_teacher_angry::before {
    width: 11.9vw;
    max-width: 119px;
    height: 12.15vw;
    max-height: 121.5px;
  }
  .comment_teacher_cry::before {
    width: 11.2vw;
    max-width: 112px;
    height: 11.25vw;
    max-height: 112.5px;
  }
  .comment_teacher_surprised::before {
    width: 13.7vw;
    max-width: 137px;
    height: 12.25vw;
    max-height: 122.5px;
  }
  div[class^='comment_daughter']::after {
    width: 2.4vw;
    max-width: 24px;
    height: 2.05vw;
    max-height: 20.5px;
    right: -2.4vw;
  }
  .comment_daughter_basic::before {
    width: 10.95vw;
    max-width: 109.5px;
    height: 15.7vw;
    max-height: 157px;
  }
  .comment_daughter_smile::before {
    width: 11.2vw;
    max-width: 112px;
    height: 15.7vw;
    max-height: 157px;
  }
  .comment_daughter_angry::before {
    width: 11.5vw;
    max-width: 115px;
    height: 15.5vw;
    max-height: 155px;
  }
  .comment_daughter_cry::before {
    width: 10.9vw;
    max-width: 109px;
    height: 15.45vw;
    max-height: 154.5px;
  }
  .comment_daughter_surprised::before {
    width: 11.5vw;
    max-width: 115px;
    height: 15.75vw;
    max-height: 157.5px;
  }
  .comment_daughter_doubt::before {
    width: 10.9vw;
    max-width: 109px;
    height: 15.45vw;
    max-height: 154.5px;
  }
  div[class^='comment_father']::after {
    width: 2.4vw;
    max-width: 24px;
    height: 2.05vw;
    max-height: 20.5px;
    right: -2.4vw;
  }
  .comment_father_basic::before {
    width: 12.65vw;
    max-width: 126.5px;
    height: 14.7vw;
    max-height: 147px;
  }
  .comment_father_smile::before {
    width: 12vw;
    max-width: 120px;
    height: 14.85vw;
    max-height: 148.5px;
  }
  .comment_father_surprised::before {
    width: 13.65vw;
    max-width: 136.5px;
    height: 15.1vw;
    max-height: 151px;
  }
  .comment_father_cry::before {
    width: 12vw;
    max-width: 120px;
    height: 14.55vw;
    max-height: 145.5px;
  }
  .comment_father_angry::before {
    width: 12vw;
    max-width: 120px;
    height: 14.55vw;
    max-height: 145.5px;
  }
  .comment_father_doubt::before {
    width: 12vw;
    max-width: 120px;
    height: 14.55vw;
    max-height: 145.5px;
  }
  div[class^='comment_mother']::after {
    width: 2.4vw;
    max-width: 24px;
    height: 2.05vw;
    max-height: 20.5px;
    right: -2.4vw;
  }
  .comment_mother_basic::before {
    width: 13.5vw;
    max-width: 135px;
    height: 15.5vw;
    max-height: 155px;
  }
  .comment_mother_smile::before {
    width: 11.3vw;
    max-width: 113px;
    height: 15.4vw;
    max-height: 154px;
  }
  .comment_mother_surprised::before {
    width: 11.05vw;
    max-width: 110.5px;
    height: 15.6vw;
    max-height: 156px;
  }
  .comment_mother_cry::before {
    width: 11.45vw;
    max-width: 114.5px;
    height: 15.05vw;
    max-height: 150.5px;
  }
  .comment_mother_angry::before {
    width: 10.8vw;
    max-width: 108px;
    height: 15.6vw;
    max-height: 156px;
  }
  .comment_mother_doubt::before {
    width: 11.05vw;
    max-width: 110.5px;
    height: 14.7vw;
    max-height: 147px;
  }
}

.article_content .comment {
  width: 100%;
  position: relative;
  margin: 6.15vw 0vw 6.15vw 0vw;
}

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

.article_content .comment > div {
  width: 82.92%;
  padding: 1.69vw 2.3vw 1.69vw 2.3vw;
  line-height: 1.875;
  border-radius: 15px;
  border: solid 1px #323232;
  position: relative;
  min-height: 7vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media (max-width: 750px) {
  .article_content .comment {
    margin: 10.66vw 0vw 10.66vw 0vw;
  }
  .article_content .comment > div {
    width: 70vw;
    max-width: 525px;
    padding: 4vw 4vw 4vw 4vw;
    border-radius: 8px;
    line-height: 1.6;
    font-style: normal;
  }
  .article_content .comment > div[class^='comment_teacher_'] {
    width: 69.33vw;
    max-width: 520px;
  }
}

@media (max-width: 375px) {
  .article_content .comment > div {
    font-size: 3.4666vw;
  }
}

@media (max-width: 750px) {
  div[class^='comment_teacher_'] {
    -webkit-box-shadow: 2px 2px 0 #c1dbe0;
    box-shadow: 2px 2px 0 #c1dbe0;
  }
  div[class^='comment_teacher_']::after {
    width: 3.33vw;
    max-width: 25px;
    height: 2.53vw;
    max-height: 19px;
    left: -3.2vw;
    top: 25%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .comment_teacher_basic::before {
    width: 18.8vw;
    max-width: 141px;
    height: 17.33vw;
    max-height: 130px;
    background: url(../images/comment/sp_com_teacher_basic.png) no-repeat left top;
    background-size: 100% 100%;
    left: -20vw;
    top: -3vw;
  }
  .comment_teacher_smile::before {
    width: 15.73vw;
    max-width: 118px;
    height: 16.66vw;
    max-height: 125px;
    background: url(../images/comment/sp_com_teacher_smile.png) no-repeat left top;
    background-size: 100% 100%;
    left: -20vw;
    top: -3vw;
  }
  .comment_teacher_angry::before {
    width: 15.86vw;
    max-width: 119px;
    height: 16.8vw;
    max-height: 126px;
    background: url(../images/comment/sp_com_teacher_angry.png) no-repeat left top;
    background-size: 100% 100%;
    left: -20vw;
    top: -3vw;
  }
  .comment_teacher_cry::before {
    width: 14.93vw;
    max-width: 112px;
    height: 15.6vw;
    max-height: 117px;
    background: url(../images/comment/sp_com_teacher_cry.png) no-repeat left top;
    background-size: 100% 100%;
    left: -20vw;
    top: -3vw;
  }
  .comment_teacher_surprised::before {
    width: 18.26vw;
    max-width: 137px;
    height: 17.06vw;
    max-height: 128px;
    background: url(../images/comment/sp_com_teacher_surprised.png) no-repeat left top;
    background-size: 100% 100%;
    left: -20vw;
    top: -3vw;
  }
}

@media (max-width: 750px) {
  div[class^='comment_daughter'] {
    -webkit-box-shadow: 2px 2px 0 #f4f0b3;
    box-shadow: 2px 2px 0 #f4f0b3;
  }
  div[class^='comment_daughter']::after {
    width: 3.33vw;
    max-width: 25px;
    height: 2.93vw;
    max-height: 22px;
    right: -3.33vw;
    top: 25%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  div[class^='comment_daughter']::before {
    right: -19vw;
    top: -3vw;
  }
  .comment_daughter_basic::before {
    width: 14.4vw;
    max-width: 108px;
    height: 21.33vw;
    max-height: 160px;
    background: url(../images/comment/sp_com_daughter_basic.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_daughter_smile::before {
    width: 14.93vw;
    max-width: 112px;
    height: 21.33vw;
    max-height: 160px;
    background: url(../images/comment/sp_com_daughter_smile.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_daughter_angry::before {
    width: 14.8vw;
    max-width: 111px;
    height: 21.33vw;
    max-height: 160px;
    background: url(../images/comment/sp_com_daughter_angry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_daughter_cry::before {
    width: 14.8vw;
    max-width: 111px;
    height: 21.33vw;
    max-height: 160px;
    background: url(../images/comment/sp_com_daughter_cry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_daughter_surprised::before {
    width: 15.33vw;
    max-width: 115px;
    height: 21.33vw;
    max-height: 160px;
    background: url(../images/comment/sp_com_daughter_surprised.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_daughter_doubt::before {
    width: 14.53vw;
    max-width: 109px;
    height: 21.06vw;
    max-height: 158px;
    background: url(../images/comment/sp_com_daughter_doubt.png) no-repeat left top;
    background-size: 100% 100%;
  }
}

@media (max-width: 750px) {
  div[class^='comment_father'] {
    -webkit-box-shadow: 2px 2px 0 #d2e3a5;
    box-shadow: 2px 2px 0 #d2e3a5;
  }
  div[class^='comment_father']::after {
    width: 3.33vw;
    max-width: 25px;
    height: 2.93vw;
    max-height: 22px;
    right: -3.33vw;
    top: 25%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  div[class^='comment_father']::before {
    right: -19vw;
    top: -3vw;
  }
  .comment_father_basic::before {
    width: 16.66vw;
    max-width: 125px;
    height: 20.13vw;
    max-height: 151px;
    background: url(../images/comment/sp_com_father_basic.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_father_smile::before {
    width: 16vw;
    max-width: 120px;
    height: 20.26vw;
    max-height: 152px;
    background: url(../images/comment/sp_com_father_smile.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_father_surprised::before {
    width: 18.26vw;
    max-width: 137px;
    height: 20.66vw;
    max-height: 155px;
    background: url(../images/comment/sp_com_father_surprised.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_father_cry::before {
    width: 16vw;
    max-width: 120px;
    height: 19.86vw;
    max-height: 149px;
    background: url(../images/comment/sp_com_father_cry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_father_angry::before {
    width: 15.6vw;
    max-width: 117px;
    height: 19.86vw;
    max-height: 149px;
    background: url(../images/comment/sp_com_father_angry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_father_doubt::before {
    width: 16vw;
    max-width: 120px;
    height: 19.6vw;
    max-height: 147px;
    background: url(../images/comment/sp_com_father_doubt.png) no-repeat left top;
    background-size: 100% 100%;
  }
}

@media (max-width: 750px) {
  div[class^='comment_mother'] {
    -webkit-box-shadow: 2px 2px 0 #efb1be;
    box-shadow: 2px 2px 0 #efb1be;
  }
  div[class^='comment_mother']::after {
    width: 3.33vw;
    max-width: 25px;
    height: 2.93vw;
    max-height: 22px;
    right: -3.33vw;
    top: 25%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  div[class^='comment_mother']::before {
    right: -19vw;
    top: -3vw;
  }
  .comment_mother_basic::before {
    width: 16vw;
    max-width: 120px;
    height: 21.46vw;
    max-height: 161px;
    background: url(../images/comment/sp_com_mother_basic.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_mother_smile::before {
    width: 14.93vw;
    max-width: 112px;
    height: 21.6vw;
    max-height: 162px;
    background: url(../images/comment/sp_com_mother_smile.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_mother_surprised::before {
    width: 14.8vw;
    max-width: 111px;
    height: 21.86vw;
    max-height: 164px;
    background: url(../images/comment/sp_com_mother_surprised.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_mother_cry::before {
    width: 15.33vw;
    max-width: 115px;
    height: 21.06vw;
    max-height: 158px;
    background: url(../images/comment/sp_com_mother_cry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_mother_angry::before {
    width: 14.4vw;
    max-width: 108px;
    height: 21.86vw;
    max-height: 164px;
    background: url(../images/comment/sp_com_mother_angry.png) no-repeat left top;
    background-size: 100% 100%;
  }
  .comment_mother_doubt::before {
    width: 14.8vw;
    max-width: 111px;
    height: 20.66vw;
    max-height: 155px;
    background: url(../images/comment/sp_com_mother_doubt.png) no-repeat left top;
    background-size: 100% 100%;
  }
}

@media (min-width: 1301px) {
  .article_content .comment {
    margin: 80px 0;
  }
  .article_content .comment > div {
    width: 82.92%;
    padding: 22px 30px 22px 30px;
    min-height: 80px;
  }
  .article_content div[class^='comment_teacher_']::after {
    content: "";
    left: -21px;
    width: 21px;
  }
  .article_content div[class^='comment_teacher_']::before {
    left: -142px;
    top: -20px;
  }
  .article_content div[class^='comment_daughter']::after {
    right: -24px;
    width: 24px;
  }
  .article_content div[class^='comment_daughter']::before {
    right: -140px;
    top: -20px;
  }
  .article_content div[class^='comment_father']::after {
    right: -24px;
    width: 24px;
  }
  .article_content div[class^='comment_father']::before {
    right: -140px;
    top: -20px;
  }
  .article_content div[class^='comment_mother']::after {
    right: -24px;
    width: 24px;
  }
  .article_content div[class^='comment_mother']::before {
    right: -140px;
    top: -20px;
  }
}

/* =======================================================================
    フッター
========================================================================== */
.footer {
  background: url(../images/common/footer_bg.png) no-repeat;
  background-size: 1620.5px auto;
  height: 422px;
  margin-top: -200px;
  position: relative;
  z-index: 3;
}

.footer .footer_chara_wrap {
  position: relative;
  height: 231px;
  width: 355px;
  margin: 0 auto 5px;
  top: -23px;
}

.footer .footer_chara {
  width: 355px;
  height: 231px;
  background: url(../images/common/footer_chara_ani.png) no-repeat;
  background-size: 100% auto;
  -webkit-animation: footer_chara_ani 4s step-end infinite;
  animation: footer_chara_ani 4s step-end infinite;
  position: absolute;
}

.footer .copy {
  text-align: center;
  line-height: 1;
}

.footer a {
  text-decoration: none;
  color: #000;
}

.footer a:hover {
  opacity: 0.7;
}

.footer_sns_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding-top: 30px;
  margin-bottom: 25px;
}

.footer_sns_list:before {
  content: "";
  width: 216px;
  height: 14px;
  background: url(../images/common/footer_title_share.png) no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
}

.footer_sns_list .sns_share_list_item a {
  width: 67.5px;
  height: 67.5px;
}

.footer_sns_list .sns_share_list_item + .sns_share_list_item {
  margin-left: 20px;
}

.footer_sns_list img {
  display: block;
}

.footer_sns_list .li_comment {
  display: none;
}

@media (max-width: 750px) {
  .footer {
    background: url(../images/common/sp_footer_bg.png) no-repeat;
    background-size: 100% auto;
    height: 92vw;
  }
  .footer .footer_chara_wrap {
    width: 61.73vw;
    max-width: 463px;
    height: 41.3vw;
    max-height: 310px;
    top: -32px;
  }
  .footer .footer_chara {
    width: 61.73vw;
    max-width: 463px;
    height: 41.3vw;
    max-height: 310px;
    background: url(../images/common/sp_footer_chara_ani01.png) no-repeat;
    background-size: 100% auto;
    -webkit-animation: sp_footer_chara_ani 3s step-end infinite;
    animation: sp_footer_chara_ani 3s step-end infinite;
    /* animation: none;
    background-position: 0 0;
    background-position: 0 20%;
    background-position: 0 40%;
    background-position: 0 60%;
    background-position: 0 80%;
    background-position: 0 100%; */
  }
  .footer .copy {
    font-size: 2.9333vw;
    padding-bottom: 4.66vw;
  }
  .footer .footer_sns_list {
    width: 37.33vw;
    max-width: 280px;
    margin: 0 auto;
    margin-bottom: 8vw;
    padding-top: 6vw;
  }
  .footer .footer_sns_list::before {
    width: 50.4vw;
    max-width: 378px;
    height: 3.2vw;
    max-height: 24px;
  }
  .footer .footer_sns_list a {
    width: 10.53vw;
    max-width: 79px;
    height: 10.53vw;
    max-height: 79px;
  }
  .footer .footer_sns_list .sns_share_list_item.li_comment {
    display: none;
  }
  .footer .footer_sns_list .sns_share_list_item + .sns_share_list_item {
    margin-left: 3.2vw;
  }
}

@media (max-width: 414px) {
  .footer .footer_chara_wrap {
    width: 233px;
    height: 156px;
    top: -31px;
  }
  .footer .footer_chara {
    width: 233px;
    height: 156px;
  }
}

@-webkit-keyframes footer_chara_ani {
  0% {
    background-position: 0 0;
  }
  16% {
    background-position: 0 -231px;
  }
  32% {
    background-position: 0 -462px;
  }
  48% {
    background-position: 0 -693px;
  }
  64% {
    background-position: 0 -924px;
  }
  80% {
    background-position: 0 -1155px;
  }
  100% {
    background-position: 0 0;
  }
}

@keyframes footer_chara_ani {
  0% {
    background-position: 0 0;
  }
  16% {
    background-position: 0 -231px;
  }
  32% {
    background-position: 0 -462px;
  }
  48% {
    background-position: 0 -693px;
  }
  64% {
    background-position: 0 -924px;
  }
  80% {
    background-position: 0 -1155px;
  }
  100% {
    background-position: 0 0;
  }
}

@-webkit-keyframes sp_footer_chara_ani {
  0% {
    background-position: 0 0;
  }
  16% {
    background-position: 0 20%;
  }
  32% {
    background-position: 0 40%;
  }
  48% {
    background-position: 0 60%;
  }
  64% {
    background-position: 0 80%;
  }
  80% {
    background-position: 0 100%;
  }
  100% {
    background-position: 0 0;
  }
}

@keyframes sp_footer_chara_ani {
  0% {
    background-position: 0 0;
  }
  16% {
    background-position: 0 20%;
  }
  32% {
    background-position: 0 40%;
  }
  48% {
    background-position: 0 60%;
  }
  64% {
    background-position: 0 80%;
  }
  80% {
    background-position: 0 100%;
  }
  100% {
    background-position: 0 0;
  }
}

/* =======================================================================
    カテゴリ
========================================================================== */
/* ----------------------------------------------
   2ページ目
---------------------------------------------- */
.paged.category .wp-pagenavi, .paged.category .page_nav {
  bottom: -7.7vw;
}

@media (min-width: 1301px) {
  .paged.category .article {
    position: relative;
    z-index: 1;
    margin-top: 0;
    padding-bottom: 300px;
  }
}

/* =======================================================================
   検索結果
========================================================================== */
.search .article {
  margin-top: 0;
  padding-bottom: 300px;
}

.search .results_txt {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 53px;
}

.search .results_txt span {
  font-size: 45px;
}

.search .pager .wp-pagenavi, .search .pager .page_nav {
  bottom: -7.7vw;
}

@media (min-width: 1301px) {
  .search .pager .wp-pagenavi, .search .pager .page_nav {
    bottom: -100px;
  }
}

/* =======================================================================
   スマホ用メニュー
========================================================================== */
@media (min-width: 1001px) {
  .sp_menu_wrap {
    display: none;
  }
  .sp_menu_bottom {
    display: none;
  }
  .sp_menu_content_wrap {
    display: none;
  }
}

/* ----------------------------------------------
   メニューバー上
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_wrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    position: absolute;
    bottom: 11.5vw;
    left: 0;
    z-index: 999;
  }
  .sp_menu_wrap img {
    display: block;
  }
  .sp_logo {
    width: 21.33vw;
  }
  .sp_logo img {
    width: 100%;
    height: auto;
  }
  .sp_menu {
    width: 78.66vw;
    height: 14.66vw;
  }
  .sp_menu_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
  }
  .sp_menu_item {
    border-top: solid #cdcdcd 1px;
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #0085bf;
    font-weight: bold;
    background-position: center center;
    padding-top: 9.33vw;
    font-size: 2.9333vw;
  }
  .sp_menu_item + .sp_menu_item {
    border-left: solid #cdcdcd 1px;
  }
  .sp_menu_item.menu01 {
    background: #fff url(../images/common/sp_icom_btn01.png) no-repeat center 3.333vw;
    background-size: 4.8vw auto;
  }
  .sp_menu_item.menu02 {
    background: #fff url(../images/common/sp_icom_btn02.png) no-repeat center 2vw;
    background-size: 6.4vw auto;
  }
  .sp_menu_item.menu03 {
    background: #fff url(../images/common/sp_icom_btn03.png) no-repeat center 1.466vw;
    background-size: 8.1vw auto;
  }
  .sp_menu_item.menu04 {
    background: #fff url(../images/common/sp_icom_btn04.png) no-repeat center 2.533vw;
    background-size: 7.7333vw auto;
  }
  .sp_menu_item.is_current {
    background: #0085bf url(../images/common/sp_icon_close_white.png) no-repeat center 3.3vw;
    background-size: 3.866vw auto;
    color: #fff;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_logo {
    width: 80px;
    height: 60px;
  }
  .sp_menu {
    height: 54.5px;
  }
  .sp_menu_list {
    overflow: hidden;
  }
  .sp_menu_item {
    padding-top: 33px;
    font-size: 11px;
  }
  .sp_menu_wrap .sp_menu {
    width: calc(100% - 80px);
  }
  .sp_menu_item.menu01 {
    background-size: 18px 13px;
    background-position: center 13px;
  }
  .sp_menu_item.menu02 {
    background-size: 24px auto;
    background-position: center 7px;
  }
  .sp_menu_item.menu03 {
    background-size: 31px auto;
    background-position: center 5.5px;
  }
  .sp_menu_item.menu04 {
    background-size: 29px auto;
    background-position: center 8.5px;
  }
  .sp_menu_wrap {
    bottom: 44px;
  }
}

/* ----------------------------------------------
   メニューバー下
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_pagetop {
    width: 11.7vw;
    height: 11.7vw;
    background: #414141;
    position: relative;
  }
  .sp_menu_pagetop::before {
    content: '';
    width: 3.2vw;
    height: 2.1333vw;
    background: url(../images/common/sp_icon_arrow.png) no-repeat left top;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 1000px) {
  .sp_menu_bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    z-index: 999;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .sp_menu_bottom .search_form_wrap {
    width: 88.3vw;
    background: #b1c3ca;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .sp_menu_bottom .search_form {
    width: 80.4vw;
    height: 8.8vw;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .sp_menu_bottom .search_field {
    width: 100%;
    height: 8.8vw;
    display: inline-block;
    background: #fff;
    border: none;
    border-radius: 4px 0 0 4px;
    padding: 1.1vw 1.6vw 1.1vw 1.6vw;
    font-size: 16px;
    -webkit-transform: scale(0.75);
    -ms-transform: scale(0.75);
    transform: scale(0.75);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
  }
  .sp_menu_bottom .search_submit {
    width: 8.8vw;
    height: 8.8vw;
    background: #335279;
    border: none;
    border-radius: 0 4px 4px 0;
    position: relative;
    padding: 2.9333vw 4.4vw;
    font-size: 12px;
  }
  .sp_menu_bottom .search_submit::before {
    content: '';
    width: 4.8vw;
    height: 4.8vw;
    background: url(../images/common/sp_icon_seach.png) no-repeat left top;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_menu_bottom {
    height: 44px;
  }
  .sp_menu_bottom .search_form_wrap {
    width: calc(100% - 44px);
  }
  .sp_menu_bottom .sp_menu_pagetop {
    width: 44px;
    height: 44px;
    left: 0;
    bottom: 0;
  }
  .sp_menu_bottom .sp_menu_pagetop::before {
    width: 12px;
    height: 8.5px;
  }
  .sp_menu_bottom .search_form {
    width: calc(100% - 32px);
    height: 33.5px;
  }
  .sp_menu_bottom .search_field {
    width: 100%;
    height: 100%;
  }
  .sp_menu_bottom .search_submit {
    width: 33px;
    height: 34px;
    padding: 0;
  }
  .sp_menu_bottom .search_submit::before {
    width: 18.5px;
    height: 18.5px;
  }
  .sp_menu_item.is_current {
    background-size: 14.5px auto;
    background-position: center 13px;
  }
}

/* ----------------------------------------------
   メニュー表示 / 非表示
---------------------------------------------- */
#bottom_active {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
  -webkit-transform: translateY(53vw);
  -ms-transform: translateY(53vw);
  transform: translateY(53vw);
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  opacity: 0;
}

#bottom_active .sp_menu_wrap {
  -webkit-transform: translateY(11.7333vw);
  -ms-transform: translateY(11.7333vw);
  transform: translateY(11.7333vw);
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}

#bottom_active .sp_menu_bottom {
  -webkit-transform: translateY(11.7333vw);
  -ms-transform: translateY(11.7333vw);
  transform: translateY(11.7333vw);
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}

@media (max-width: 1000px) and (min-width: 751px) {
  .footer {
    padding-bottom: 44px;
  }
  #bottom_active {
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
  }
  #bottom_active .sp_menu_wrap {
    -webkit-transform: translateY(44px);
    -ms-transform: translateY(44px);
    transform: translateY(44px);
  }
  #bottom_active .sp_menu_bottom {
    -webkit-transform: translateY(44px);
    -ms-transform: translateY(44px);
    transform: translateY(44px);
  }
}

#bottom_active.menuin {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  opacity: 1;
}

#bottom_active.menuin .sp_menu_wrap {
  -webkit-transform: translateY(11.7333vw);
  -ms-transform: translateY(11.7333vw);
  transform: translateY(11.7333vw);
}

#bottom_active.menuin.is_current .sp_menu_wrap {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

#bottom_active.menuin.is_current .sp_menu_bottom {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

@media (max-width: 1000px) and (min-width: 751px) {
  #bottom_active.menuin .sp_menu_wrap {
    -webkit-transform: translateY(44px);
    -ms-transform: translateY(44px);
    transform: translateY(44px);
  }
}

#bottom_active.menuin.pagebottom .sp_menu_wrap {
  -webkit-transform: translateY(11.7333vw);
  -ms-transform: translateY(11.7333vw);
  transform: translateY(11.7333vw);
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}

#bottom_active.menuin.pagebottom .sp_menu_bottom {
  -webkit-transform: translateY(11.7333vw);
  -ms-transform: translateY(11.7333vw);
  transform: translateY(11.7333vw);
}

@media (max-width: 1000px) and (min-width: 751px) {
  #bottom_active.menuin.pagebottom .sp_menu_wrap {
    -webkit-transform: translateY(44px);
    -ms-transform: translateY(44px);
    transform: translateY(44px);
  }
  #bottom_active.menuin.pagebottom .sp_menu_bottom {
    -webkit-transform: translateY(44px);
    -ms-transform: translateY(44px);
    transform: translateY(44px);
  }
}

.is_menu_visible {
  overflow: hidden;
}

.is_menu_visible #bottom_active {
  -webkit-transform: translateY(0) !important;
  -ms-transform: translateY(0) !important;
  transform: translateY(0) !important;
  opacity: 1;
}

.is_menu_visible #bottom_active .sp_menu_wrap {
  -webkit-transform: translateY(0) !important;
  -ms-transform: translateY(0) !important;
  transform: translateY(0) !important;
}

.is_menu_visible #bottom_active .sp_menu_bottom {
  -webkit-transform: translateY(0) !important;
  -ms-transform: translateY(0) !important;
  transform: translateY(0) !important;
}

#bottom_active.menuin.show_keybord {
  -webkit-transform: translateY(-11.7333vw);
  -ms-transform: translateY(-11.7333vw);
  transform: translateY(-11.7333vw);
}

@media (max-width: 1000px) and (min-width: 751px) {
  #bottom_active.menuin.show_keybord {
    -webkit-transform: translateY(-44px);
    -ms-transform: translateY(-44px);
    transform: translateY(-44px);
  }
}

/* ----------------------------------------------
   メニューコンテンツ
---------------------------------------------- */
@media (max-width: 1000px) {
  .is_menu_visible .sp_menu_content_wrap {
    display: block !important;
  }
  .sp_menu_content_wrap {
    display: none;
    position: fixed;
    top: 100%;
    height: 100%;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
  }
  .sp_menu_content_wrap a {
    display: block;
    text-decoration: none;
    font-size: 4.266vw;
    font-weight: bold;
    color: #323232;
    font-family: ud shin maru go bold, sans-serif;
  }
  .sp_menu_content_wrap .children {
    margin-bottom: 5.33vw;
    background: #fff;
  }
  .sp_menu_content_wrap .children .sp_menu_content_item {
    position: relative;
  }
  .sp_menu_content_wrap .children .sp_menu_content_item span {
    display: inline-block;
    font-size: 4.8vw;
    font-weight: bold;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffea72));
    background: -webkit-linear-gradient(transparent 60%, #ffea72 60%);
    background: -o-linear-gradient(transparent 60%, #ffea72 60%);
    background: linear-gradient(transparent 60%, #ffea72 60%);
  }
  .sp_menu_content_wrap .children .sp_menu_content_item + .sp_menu_content_item a {
    border-top: solid 1px #cfcfcf;
  }
  .sp_menu_content_wrap .children a {
    border: none;
    display: block;
    font-size: 4.8vw;
    line-height: 1.3333;
    color: #323232;
    font-weight: bold;
    padding: 5.33vw 0vw 5.33vw 20vw;
    margin: 0vw 10vw 0vw 10vw;
    position: relative;
  }
  .sp_menu_content_wrap .children a::after {
    content: "";
    width: 3.06vw;
    max-width: 23px;
    height: 5.06vw;
    max-height: 38px;
    background: url(../images/common/sp_icon_arrow_blue.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .sp_menu_close {
    width: 74.13vw;
    max-width: 556px;
    height: 10.66vw;
    max-height: 80px;
    margin: 0 auto;
    padding-bottom: 26.66vw;
  }
  [class^="sp_menu_content0"] {
    position: absolute;
    width: 100%;
    height: 90%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  [class^="sp_menu_content0"] {
    height: 93%;
  }
}

/* ----------------------------------------------
   メニューコンテンツ 1
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_content01 {
    display: none;
    background: #fff;
  }
  .sp_menu_content01 .sp_menu_content {
    width: 69.59vw;
    max-width: 522px;
    padding: 10.53vw 0vw 6.66vw 0vw;
    margin: 0 auto;
  }
  .sp_menu_content01 .sp_menu_content_item a {
    height: 16vw;
    max-height: 120px;
    padding-left: 6.66vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
  }
  .sp_menu_content01 .sp_menu_content_item a:before {
    content: "";
    width: 2.66vw;
    max-width: 20px;
    height: 4.4vw;
    max-height: 33px;
    display: block;
    background: url(../images/common/icon_arrow_right_red.png) no-repeat;
    background-size: cover;
    position: absolute;
    left: 1.33vw;
  }
  .sp_menu_content01 .sp_menu_content_item + .sp_menu_content_item {
    border-top: solid 1px #cfcfcf;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_menu_content_wrap a {
    font-size: 16px;
  }
  .sp_menu_content01 .sp_menu_content {
    width: 335px;
  }
  .sp_menu_content01 .sp_menu_content_item a {
    height: 60px;
    padding-left: 26.5px;
  }
  .sp_menu_content01 .sp_menu_content_item a::before {
    width: 10px;
    height: 16.5px;
  }
  .sp_menu_close {
    width: 278px;
    height: 40px;
    padding-bottom: 150px;
  }
}

/* ----------------------------------------------
   メニューコンテンツ 2
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_content02 {
    display: none;
    padding-top: 12.66vw;
    background: #bce5f4;
  }
  .sp_menu_content02 .sp_menu_content {
    width: 89.33vw;
    max-width: 670px;
    margin: 0 auto;
  }
  .sp_menu_content02 .cat-item-recommended > a {
    font-size: 5.6vw;
    color: #ffe869;
    font-weight: bold;
    line-height: 1.285;
    position: relative;
    top: -1.34vw;
    padding-left: 28.66vw;
    text-shadow: #414042 2px 0px,  #414042 -2px 0px, #414042 0px -2px, #414042 0px 2px, #414042 2px 2px , #414042 -2px 2px, #414042 2px -2px, #414042 -2px -2px, #414042 1px 2px,  #414042 -1px 2px, #414042 1px -2px, #414042 -1px -2px, #414042 2px 1px,  #414042 -2px 1px, #414042 2px -1px, #414042 -2px -1px;
  }
  .sp_menu_content02 .cat-item-recommended > a::before {
    content: "";
    width: 20.8vw;
    height: 17.86vw;
    background: url(../images/common/s_reccomend_neko.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    left: 4.93vw;
    bottom: -1.34vw;
  }
  .sp_menu_content02 .cat-item-recommended > a::after {
    content: "";
    width: 7.73vw;
    max-width: 58px;
    height: 7.73vw;
    max-height: 58px;
    background: url(../images/common/sp_icon_arrow_yellow.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.86vw;
  }
  .sp_menu_content02 .sp_menu_close_wrap {
    background: #bce5f4;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_menu_content02 {
    padding-top: 50px;
  }
  .sp_menu_content02 .sp_menu_content {
    width: 335px;
  }
  .sp_menu_content02 .cat-item-recommended > a {
    font-size: 21px;
    top: -1.34vw;
    padding-left: 107.5px;
  }
  .sp_menu_content02 .cat-item-recommended > a::before {
    content: "";
    width: 78px;
    height: 67px;
    position: absolute;
    left: 18.5px;
  }
  .sp_menu_content02 .cat-item-recommended > a::after {
    content: "";
    width: 29px;
    height: 29px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 7px;
  }
  .sp_menu_content_wrap .children a {
    font-size: 16px;
    padding: 20px 0vw 20px 64px;
    margin: 0 37px;
  }
  .sp_menu_content_wrap .children a::after {
    width: 11.5px;
    height: 19px;
  }
  .sp_menu_content_wrap .children .sp_menu_content_item span {
    font-size: 18px;
  }
}

/* ----------------------------------------------
   メニューコンテンツ 2 アイコン
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_content02 .cat-item-issued-on-the-sameday {
    background-size: 14.02985% auto;
    background-position: 11.9403% center;
  }
  .sp_menu_content02 .cat-item-high-reduction {
    background-size: 13.43284% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-earn-miles {
    background-size: 12.53731% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-for-students {
    background-size: 10.74627% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-for-corporate-customers {
    background-size: 13.13433% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-travel {
    background-size: 17.31343% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-gold-card {
    background-size: 15.22388% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-gasoline {
    background-size: 14.92537% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-female-recommendation {
    background-size: 8.65672% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-department-store {
    background-size: 13.73134% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-convenience-store-deals {
    background-size: 15.52239% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-super-creditcard {
    background-size: 15.52239% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-platinum-card {
    background-size: 15.52239% auto;
    background-position: 11.19403% center;
  }
  .sp_menu_content02 .cat-item-free-annual-fee {
    background-size: 12.83582% auto;
    background-position: 11.19403% center;
  }
}

/* ----------------------------------------------
   メニューコンテンツ　アイコン3
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_content03 {
    display: none;
    background: #bce5f4;
    padding-top: 20vw;
  }
  .sp_menu_content03 .sp_menu_content {
    width: 89.33vw;
    max-width: 670px;
    margin: 0 auto;
  }
  .sp_menu_content03 .cat-item-common-point > a {
    font-size: 5.6vw;
    color: #ffe869;
    font-weight: bold;
    line-height: 1.285;
    position: relative;
    top: -6.4vw;
    padding-left: 33.33vw;
    text-shadow: #414042 2px 0px,  #414042 -2px 0px, #414042 0px -2px, #414042 0px 2px, #414042 2px 2px , #414042 -2px 2px, #414042 2px -2px, #414042 -2px -2px, #414042 1px 2px,  #414042 -1px 2px, #414042 1px -2px, #414042 -1px -2px, #414042 2px 1px,  #414042 -2px 1px, #414042 2px -1px, #414042 -2px -1px;
  }
  .sp_menu_content03 .cat-item-common-point > a::before {
    content: "";
    width: 25.06vw;
    max-width: 188px;
    height: 26.13vw;
    max-height: 196px;
    background: url(../images/common/s_point_icon.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    left: 7.86vw;
    bottom: -6.4vw;
  }
  .sp_menu_content03 .cat-item-common-point > a::after {
    content: "";
    width: 7.73vw;
    max-width: 58px;
    height: 7.73vw;
    max-height: 58px;
    background: url(../images/common/sp_icon_arrow_yellow.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.86vw;
  }
  .sp_menu_content03 .children a {
    padding: 5.33vw 0vw 5.33vw 15vw;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_menu_content03 {
    padding-top: 100px;
  }
  .sp_menu_content03 .sp_menu_content {
    width: 335px;
  }
  .sp_menu_content03 .cat-item-common-point > a {
    font-size: 21px;
    padding-top: -24px;
    padding-left: 125px;
    top: -24px;
  }
  .sp_menu_content03 .cat-item-common-point > a::before {
    width: 94px;
    height: 98px;
    left: 29.5px;
    bottom: -24px;
  }
  .sp_menu_content03 .cat-item-common-point > a::after {
    width: 29px;
    height: 29px;
    right: 7px;
    top: 50%;
  }
  .sp_menu_content03 .children {
    padding: 10px 0;
  }
  .sp_menu_content03 .children a {
    padding: 22px 0 22px 64px;
    margin: 0 37px;
  }
}

@media (max-width: 1000px) {
  .sp_menu_content03 .cat-item-tpoint {
    background-size: 8.95522% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content03 .cat-item-ponta {
    background-size: 15.8209% auto;
    background-position: 10.44776% center;
  }
  .sp_menu_content03 .cat-item-d-point {
    background-size: 12.23881% auto;
    background-position: 11.9403% center;
  }
  .sp_menu_content03 .cat-item-rakuten-super-point {
    background-size: 11.9403% auto;
    background-position: 12.68657% center;
  }
}

/* ----------------------------------------------
   メニューコンテンツ　アイコン4
---------------------------------------------- */
@media (max-width: 1000px) {
  .sp_menu_content04 {
    display: none;
    background: #bce5f4;
    padding-top: 20vw;
  }
  .sp_menu_content04 .sp_menu_content {
    width: 89.33vw;
    max-width: 670px;
    margin: 0 auto;
  }
  .sp_menu_content04 .sp_menu_close {
    padding-bottom: 33.33vw;
  }
  .sp_menu_content04 .cat-item-electronic-money > a {
    font-size: 5.6vw;
    color: #ffe869;
    font-weight: bold;
    line-height: 1.285;
    position: relative;
    top: -6.4vw;
    padding-left: 34.66vw;
    text-shadow: #414042 2px 0px,  #414042 -2px 0px, #414042 0px -2px, #414042 0px 2px, #414042 2px 2px , #414042 -2px 2px, #414042 2px -2px, #414042 -2px -2px, #414042 1px 2px,  #414042 -1px 2px, #414042 1px -2px, #414042 -1px -2px, #414042 2px 1px,  #414042 -2px 1px, #414042 2px -1px, #414042 -2px -1px;
  }
  .sp_menu_content04 .cat-item-electronic-money > a::before {
    content: "";
    width: 26.13vw;
    max-width: 196px;
    height: 21.06vw;
    max-height: 158px;
    background: url(../images/common/s_money_icon.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    left: 6.66vw;
    bottom: -7.34vw;
  }
  .sp_menu_content04 .cat-item-electronic-money > a::after {
    content: "";
    width: 7.73vw;
    max-width: 58px;
    height: 7.73vw;
    max-height: 58px;
    background: url(../images/common/sp_icon_arrow_yellow.png) no-repeat left top;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 1.86vw;
  }
}

@media (max-width: 1000px) and (min-width: 751px) {
  .sp_menu_content04 {
    padding-top: 100px;
  }
  .sp_menu_content04 .sp_menu_content {
    width: 335px;
  }
  .sp_menu_content04 .cat-item-electronic-money > a {
    font-size: 21px;
    top: -24px;
    padding-left: 130px;
  }
  .sp_menu_content04 .cat-item-electronic-money > a::before {
    width: 98px;
    height: 79px;
    left: 25px;
    bottom: -27.5px;
  }
  .sp_menu_content04 .cat-item-electronic-money > a::after {
    width: 29px;
    height: 29px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 7px;
  }
}

@media (max-width: 1000px) {
  .sp_menu_content04 .cat-item-nanaco {
    background-size: 12.23881% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-waon {
    background-size: 11.9403% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-quicpay {
    background-size: 11.9403% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-id {
    background-size: 11.9403% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-suica {
    background-size: 11.9403% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-edy {
    background-size: 7.76119% auto;
    background-position: 14.92537% center;
  }
  .sp_menu_content04 .cat-item-transportation-electronic-money {
    background-size: 12.23881% auto;
    background-position: 14.92537% center;
  }
}

/* ----------------------------------------------
  固定ページ & 404
---------------------------------------------- */
body.page .article, body.error404 .article {
  margin-top: 0;
  padding-bottom: 250px;
  background: #fff;
}

body.page .main_content, body.error404 .main_content {
  background: none;
}

body.page .content_txt_in, body.error404 .content_txt_in {
  padding: 50px 0 100px;
}

body.page .page_title, body.error404 .page_title {
  font-size: 40px;
  margin-bottom: 30px;
  text-align: center;
}

body.page dt, body.page dd, body.error404 dt, body.error404 dd {
  margin-bottom: 10px;
}

body.company .article_content{
  z-index: unset;
}
body.company .content_txt_in{
  position: relative;
  z-index: 999;
}

@media (max-width: 750px) {
  body.page .page_txt_in, body.error404 .page_txt_in {
    padding-top: 6.66vw;
    padding-bottom: 13.33vw;
  }
  body.page .page_title, body.error404 .page_title {
    font-size: 30px;
    margin-bottom: 6.66vw;
  }
  body.page .article_content, body.error404 .article_content {
    margin-top: 0;
  }
  body.page .article_content:before, body.error404 .article_content:before {
    display: none;
  }
  body.page .article, body.error404 .article {
    padding-bottom: 50vw;
  }
}

/*.hero_slide_wrap, .hero_image .pickup_label {
  display: none !important;
}*/

.article_space_top {
  background: #fff;
  height: 50px;
}

@media (max-width: 750px) {
  .article_space_top {
    height: 30px;
  }
}

/* =======================================================================
  バナー サイド&記事下
========================================================================== */
.ad_bnr {
  overflow: hidden;
  position: relative;
  width: 270px;
}

.ad_bnr a {
  display: block;
}

.ad_bnr a:hover {
  opacity: 0.8;
}

.ad_bnr img {
  display: block;
}

.reflection {
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 2s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 2s ease-in-out infinite;
  -moz-transform: rotate(45deg);
  -moz-animation: reflection 2s ease-in-out infinite;
  -ms-transform: rotate(45deg);
  -ms-animation: reflection 2s ease-in-out infinite;
  -o-transform: rotate(45deg);
  -o-animation: reflection 2s ease-in-out infinite;
}

@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: .5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: .5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.side_bnr {
  margin: 35px auto 0;
  width: 270px;
}

@media (min-width: 751px) {
  .post_bottom_bnr {
    display: none;
  }
}

.post_bottom_bnr {
  width: 88vw;
  max-width: 330px;
  margin: 35px auto 0;
}

.post_bottom_bnr .ad_bnr {
  width: 88vw;
  max-width: 330px;
  -webkit-transform: translateX(1vw);
  -ms-transform: translateX(1vw);
  transform: translateX(1vw);
}

.post_bottom_bnr .ad_bnr img {
  width: 100%;
  height: auto;
}

.comment_neko_wrap {
  width: 85.01784%;
  margin-left: 15%;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: 72.5px solid transparent;
  border-bottom: 20px solid transparent;
  border-right: none;
  border-left: none;
  -webkit-border-image: url(../images/comment/comment_border_nekomaru.png) 145 0 40 0/70px 0 20px 0 round;
  -o-border-image: url(../images/comment/comment_border_nekomaru.png) 145 0 40 0/70px 0 20px 0 round;
  border-image: url(../images/comment/comment_border_nekomaru.png) fill 145 0 40 0/70px 0 20px 0 round;
  padding: 0 30px 0 50px;
  min-height: 100px;
  position: relative;
}

.comment_neko_wrap:before {
  content: "";
  width: 10.84vw;
  max-width: 141px;
  height: 9.65vw;
  max-height: 125.5px;
  background: url(../images/comment/com_teacher_basic.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -17.5%;
  top: -5vw;
}

.comment_neko {
  margin-top: -50px;
  position: absolute;
  width: 100%;
}

@media (max-width: 750px) {
  .comment_neko_wrap {
    width: 85.01784%;
    margin-left: 15%;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 72.5px solid transparent;
    border-bottom: 20px solid transparent;
    border-right: none;
    border-left: none;
    -webkit-border-image: url(../images/comment/comment_border_nekomaru.png) 145 0 40 0/70px 0 20px 0 round;
    -o-border-image: url(../images/comment/comment_border_nekomaru.png) 145 0 40 0/70px 0 20px 0 round;
    border-image: url(../images/comment/comment_border_nekomaru.png) fill 145 0 40 0/70px 0 20px 0 round;
    padding: 0 30px 0 50px;
    min-height: 100px;
    position: relative;
  }
}

/* ad 20190509 */
.card_detail {
  margin: 0 0 60px;
}
.card_detail_img {
  margin: 0;
  width: 40%;
  float: left;
}
.card_detail img {
  display: block;
  width: 100%;
  vertical-align: bottom;
}
.card_detail_btn {
  width: 55%;
  float: right;
}
.card_detail_btn_official {
  position: relative;
  overflow: hidden;
  margin: 0 0 20px;
}
.card_detail_btn_official p {
  margin: 0;
}
.card_detail_btn_more,
.card_detail_btn_official {
  width: 100%;
}
.card_detail_btn_more a,
.card_detail_btn_official a {
  display: block;
}
.card_detail_btn_more a:hover,
.card_detail_btn_official a:hover {
  opacity: .75;
}
@media (max-width: 750px) {
  .card_detail {
    /* margin: 0 -2vw 40px; */
    margin: 0 -2vw 20px;
  }
  .card_detail_img {
    width: 35%;
  }
  .card_detail_btn {
    width: 62%;
  }
  .card_detail_btn_official {
    margin: 0 0 10px;
  }
  .article_content table {
    table-layout: fixed;
  }
  .article_content table tr th:first-child {
    white-space: inherit;
    word-break: break-all;
  }
}

/* 20190523 table */
@media (max-width: 750px) {
  .article_content table.spec_info tr th {
    width: 4.5em;
  }
}

/* 20190524 診断バナー */
.shindan_bnr_wrap {display: none;}
@media (max-width: 750px) {
	.shindan_bnr_wrap {
		position: fixed;
		 top: 10px;
    /*bottom: 13%;*/
		right: 10px;
		z-index: 999999;
		display: none;
		border: 3px solid #006cbf;
		font-size: 3.473vw;
		width: 60vw;
		background: #fff;
		box-shadow:0px 0px 6px 3px rgba(0,0,0,0.2);
	}
	.shindan_bnr_wrap a {
		text-decoration: none;
	}
	.shindan_bnr {
		display: block
	}
	.shindanbnr_tit {
		color:#fff;
		background: #006cbf;
		padding: 1.5vw;
	}
	.shindanbnr_text {
		color: #323232;
		padding: 2vw 2.5vw 0;
		line-height: 1.5em;
	}
	.shindan_bnr_wrap button {
		display: inline-block;
		text-decoration: none;
		padding: 2.6vw 10vw 2.6vw 2vw;
		font-weight: 600;
		border: 1px solid #ccc;
		color: #0063f0;
		background-color: #fff;
		font-size: 3.5vw;
		background: #e7fbff;
		position: relative;
	}
	.button:before {
		content: "";
		top: 4vw;
		right: 5vw;
		width: 14px;
		height: 14px;
		background: url(../images/common/banner-arrow.png) no-repeat left top;
		position: absolute;
		background-size: 100% 100%;
		z-index: 9999;}
	.button {
		margin: 10px auto;
		text-align: center;
		position: relative;
	}
	.shindan_bnr_wrap .close_btn {
		position: absolute;
		width: 19px;
		height: 19px;
		background: url(../images/common/ico_close.png);
		background-size: 100% 100%;
		top: 1.5vw;
		right: 2vw;
		z-index: 99999;
		display: block;
		box-sizing: border-box;
	}
	.shindan_bnr_wrap .close_btn:hover {
		cursor: pointer
	}
}

/* 20190605 slider */
.post_bottom_diagnosis {
  margin: -50px 0 0;
  background: #b5f2ff;
  /*background: #fff;
  padding: 70px 0 0;*/
  padding: 50px 0 45px;
}
.post_bottom_diagnosis_slider {
  /*margin: 0 0 90px;*/
  margin: 0 0 50px;
}
.post_bottom_diagnosis_slider .slick-dots {
  margin-bottom: -30px;
}
.post_bottom_diagnosis_slider .slick-dots li {
  width: 10px;
  height: 10px;
  margin: 0 10px;
}
.post_bottom_diagnosis_slider .slick-dots li button {
  width: 10px;
  height: 10px;
  padding: 5px;
  background: #fff;
}
.post_bottom_diagnosis_slider .slick-dots li.slick-active button {
  width: 10px;
  height: 10px;
  background: #116b92;
}
.post_bottom_diagnosis_slider .slick-arrow {
  width: 57px;
  height: 57px;
  max-width: 57px;
  max-height: 57px;
}
.post_bottom_diagnosis_slider .slick-arrow:hover {
  cursor: pointer;
}
.post_bottom_diagnosis_slider .slick-prev {
  background: url(../images/slider/slider-prev.png) no-repeat left top;
  background-size: 100% auto;
  left: calc(23% - 28px);
}
.post_bottom_diagnosis_slider .slick-next {
  background: url(../images/slider/slider-next.png) no-repeat left top;
  background-size: 100% auto;
  right: calc(23% - 28px);
}
.post_bottom_diagnosis_more {
  text-align: center;
}
.post_bottom_diagnosis_more_ttl {
  display: inline-block;
  margin: 0 0 15px;
}
.post_bottom_diagnosis_more_btn {
  display: inline-block;
  overflow: hidden;
  position: relative;
}
.post_bottom_diagnosis_more_btn:hover {
  opacity: .75;
}
.post_bottom_diagnosis_more_btn .reflection {
  display: block;
}
.post_bottom_diagnosis+ .article_content {
  padding: 0 90px 50px;
}
@media (max-width: 1000px) {
  body:not(.home) .post_bottom_diagnosis+ .article_content {
    margin-top: 0;
    padding: 0 5.33vw 10vw 5.33vw;
  }
  body:not(.home) .post_bottom_diagnosis+ .article_content:before {
    content: "";
    width: 100%;
    position: absolute;
    height: 0;
    top: 0;
    left: 0;
    background: none;
  }
  .post_bottom_diagnosis {
    margin: 0;
    background: #b5f2ff;
    padding: 0 0 40px;
  }
  .post_bottom_diagnosis_slider {
    margin: 0 0 60px;
  }
  .post_bottom_diagnosis_slider .slick-dots li {
    width: 12px;
    height: 12px;
  }
  .post_bottom_diagnosis_slider .slick-dots li button {
    width: 12px;
    height: 12px;
  }
  .post_bottom_diagnosis_slider .slick-dots li.slick-active button {
    width: 12px;
    height: 12px;
    left: 0;
  }
  .post_bottom_diagnosis_slider .slick-arrow {
    width: 45px;
    height: 45px;
    max-width: 45px;
    max-height: 45px;
  }
  .post_bottom_diagnosis_slider .slick-prev {
    background-size: 100% auto;
    left: calc(8% - 22px);
  }
  .post_bottom_diagnosis_slider .slick-next {
    background-size: 100% auto;
    right: calc(8% - 22px);
  }
  .post_bottom_diagnosis_more {
    text-align: center;
    margin: 0 15px;
  }
  .post_bottom_diagnosis_more_ttl {
    margin: 0 0 6px;
  }
}

/* 20200330 banner */
.home_banner_area {
    width: 50%;
    margin: 80px auto 0;
}

@media (max-width: 750px) {
  .home_banner_area {
      width: 90%;
      margin: 50px auto 0;
  }
}
/* ----------------------------------------------
   記事内 PayPayボタン
---------------------------------------------- */
.ad_paypay_bnr{
  max-width: 720px;
  margin: 50px auto 0;
  overflow: hidden;
  position: relative;
}
.ad_paypay_bnr a{
  transition: opacity 0.3s;
}
.ad_paypay_bnr a:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}
@media (max-width: 750px){
  .ad_paypay_bnr{
    margin: 30px auto 0;
  }
}

.paypay_btn_a{
  overflow: hidden;
  position: relative;
  width: 49%;
  display: block;
}
.paypay_btn p{
  margin: 0;
}
.paypay_btn img{
  width: 100%;
}
.paypay_btn img:hover{
  opacity: 0.7;
}
.paypay_btn_left{
	margin-right: 2%;
	float: left;
}

@media (max-width: 750px) {
	.paypay_btn{
    width: 80%;
    margin: 0px auto;
  }

  .paypay_btn_a{
    width: 100%;
  }

  .paypay_btn_left{
    margin-right: 0%;
    margin-bottom: 10px;
  }
}

.btn_neomoba_rakuten .official_site_btn{
	width: 80%;
	display: block;
    margin: 0 auto;
}
.btn_neomoba_rakuten .official_site_btn:hover{
  opacity: 0.7;
}
@media (max-width: 750px) {
	.btn_neomoba_rakuten .official_site_btn{
		width: 100%;
	}
}

/* ----------------------------------------------
   記事内 被リンク取材 専門家 (top+comment+bottom)
---------------------------------------------- */

.expert_name{
  border-top: 2px solid #000;
  border-bottom: 1px solid #000;
  padding: 20px 0;
  margin-bottom: 30px;
}

.expert_name img{
  width: 100px;
  height: auto;
  float: left;
  border-radius: 50%;
}

.expert_name p{
  margin: 0 0 0 120px;
}

@media (max-width: 750px) {
  .expert_name p{
    margin: 5px 0 5px 120px;
  }
}

.font14px{
  font-size: 14px;
}

div[class^='comment_expert'] {
  background: #f4f4ff;
  -webkit-box-shadow: 3px 3px 0 #d0d0f2;
  box-shadow: 3px 3px 0 #d0d0f2;
  position: relative;
  float: right;
  width: 81% !important;
}

div[class^='comment_expert']::after {
  content: "";
  width: 1.7vw;
  max-width: 21px;
  height: 1.34vw;
  max-height: 17.5px;
  background: url(../images/comment/com_expert_balloon.png) no-repeat left top;
  background-size: 100% 100%;
  display: inline-block;
  position: absolute;
  left: -1.65vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.comment_expert_img {
  width: 9.65vw;
  max-width: 120px;
  height: 9.65vw;
  max-height: 120px;
  display: inline-block;
  position: absolute;
  left: 0;
  top: -1vw;
  border: 2px solid #d0d0f2;
  border-radius: 50%;
}

@media (max-width: 1000px) and (min-width: 751px) {
  div[class^='comment_expert']::after {
    width: 2.1vw;
    max-width: 21px;
    height: 1.75vw;
    max-height: 17.5px;
    left: -2.1vw;
  }
  .comment_expert_img {
    width: 12vw;
    max-width: 120px;
    height: 12vw;
    max-height: 120px;
  }
}

@media (max-width: 750px) {
  .article_content .comment > div[class^='comment_expert'] {
    width: 69.33vw;
    max-width: 520px;
  }
  div[class^='comment_expert'] {
    -webkit-box-shadow: 2px 2px 0 #d0d0f2;
    box-shadow: 2px 2px 0 #d0d0f2;
  }
  div[class^='comment_expert']::after {
    width: 3.33vw;
    max-width: 25px;
    height: 2.53vw;
    max-height: 19px;
    left: -3.2vw;
    top: 25%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .comment_expert_img {
    width: 14.67vw;
    max-width: 110px;
    height: 14.67vw;
    max-height: 110px;
    top: -3vw;
    border: 1px solid #d0d0f2;
  }
}

@media (min-width: 1301px) {
  .article_content div[class^='comment_expert']::after {
    content: "";
    left: -21px;
    width: 21px;
  }
  .comment_expert_img {
    top: -20px;
  }
}

.expert_bottom h3{
  background: none;
  width: 100%;
  background-color: #e1e6eb;
  color: #335279;
    font-weight: bold;
    /*font-family: ud shin maru go demibold, sans-serif;*/
    margin-bottom: 5px;
}

@media (min-width: 751px){
  .expert_bottom h3{
    margin: 100px 0 5px;
    padding: 22px 28px;
  }
}

.expert_bottom h3::before,.expert_bottom h3::after{
  background: none;
}

.expert_bottom .expert_name{
  border-top: none;
  margin-bottom: 15px;
  padding: 15px 0;
}

.expert_bottom .expert_name p{
  margin-bottom: 20px;
  margin-top: 15px;
}
