@charset "UTF-8";
/* ==========================================================

title : 接骨ネット
scope : 有料施設レポート

last modify : 2019/06/20 Chau #16536-追加要件／１施設複数記事対応

2019/06/10 Chau #15847 ロゴの変更、HTMLフォーマット、ボタンにホバーを追加
2019/05/29 Chau #15847 ボタンの無効化ステータス追加
2019/04/25 Chau #15847 接骨ネット／有料施設レポートCMS導入

========================================================== */
/*=================================================
common
==================================================*/
body {
  line-height: 1.6;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif;
}

@media screen and (max-width: 750px) {
  body {
    background: none;
    font-size: 15px;
  }
}

#container {
  text-align: left;
}

.content {
  margin: 0 auto;
  width: 100%;
}

@media screen and (max-width: 750px) {
  .content {
    letter-spacing: 0;
  }
}

.bdbN {
  border-bottom: none !important;
}

.pt0 {
  padding-top: 0 !important;
}

.txt_opn {
  display: inline-block;
}

.hide {   display: none !important; }

.w60p {
  width: 60% !important;
}

/* ---------------------------------------
 ページトップへ戻るスクロール
---------------------------------------- */
.header_btn,
#nav {
  display: none;
}

/*フッターの非表示*/
#container > footer {
  line-height: normal;
}

footer .copyright {
  display: none;
}

@media screen and (max-width: 750px) {
  footer .copyright {
    padding: 22.5px 15px;
  }
}

@media screen and (max-width: 750px) {
  #btn_pagetop {
    display: none !important;
  }
}

/*spページトップの非表示*/
@media screen and (min-width: 751px) {
  .btn_pagetop_sp {
    display: none !important;
  }
}

/*-------------------------------
レスポンシブ対応/暫定 要見直し検討
--------------------------------*/
@media screen and (max-width: 750px) {
  html {
    color: #333;
    font-size: 62.5%;
    height: 100%;
    overflow: auto;
  }
}

@media screen and (max-width: 750px) {
  body {
    max-width: 100%;
    min-width: 320px;
  }
}

@media screen and (max-width: 750px) {
  body.is-open {
    height: 100%;
    overflow: hidden;
  }
}

@media screen and (max-width: 750px) {
  img {
    height: auto;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  a.txt_opn {
    color: #0061b8;
  }
}

/*-------------------------------------------
  header
  -------------------------------------------*/
@media screen and (max-width: 750px) {
  #nav {
    display: block;
  }
}

@media screen and (max-width: 750px) {
  #header_new {
    left: 0;
    position: relative;
    top: 0;
    width: 100%;
    z-index: 103;
  }
}

@media screen and (max-width: 750px) {
  header#header_new.dtl.bc67 {
    background-color: #FFF;
    background-image: none;
    border-bottom: none;
    display: table;
    padding: 0;
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  #header_new.bc67 #ttl_area {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  #header_new.dtl.bc67 .header_cont {
    background: none;
    background-color: #fff;
    display: table-cell;
    height: auto;
    padding: 0 8px;
    vertical-align: middle;
    width: auto;
  }
}

@media screen and (max-width: 750px) {
  #header_new .header_btn {
    bottom: 0;
    display: table-cell;
    height: auto;
    margin: auto 0;
    padding: 0 8px;
    vertical-align: middle;
    width: 104px;
  }
}

@media screen and (max-width: 750px) {
  #header_new.dtl.bc67 .header_cont .logo_dtl {
    font-size: 0;
    position: static;
    width: 204px;
  }
}

@media screen and (max-width: 750px) {
  #header_new .sh_list_name_box,
  #header_new.bc67.dtl .header_cont .category_title_name,
  #header_new.dtl.bc67 .header_cont .btn_return_box_dtlillust {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  #header_new.dtl.bc67 .header_cont .logo_dtl img {
    height: auto;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  header .header_btn {
    width: 11em;
  }
}

@media screen and (max-width: 750px) {
  header .header_menu {
    text-align: right;
  }
}

@media screen and (max-width: 750px) {
  header .header_close {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  header .header_btn a {
    padding: 9px 22px 9px 8px;
  }
}

@media screen and (max-width: 750px) {
  header .header_btn a:after {
    background: url(../image/category_top/arrow_04.png) no-repeat center/50%;
    bottom: 0;
    content: "";
    display: block;
    height: 1em;
    margin: auto;
    position: absolute;
    right: .5em;
    top: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    width: 1em;
  }
}

@media screen and (max-width: 750px) {
  .navOp header .header_btn a:after {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
}

@media screen and (max-width: 750px) {
  .navOp #header_new,
  .score_pairOp #header_new,
  .navOp #header_new.dtl.bc67 {
    position: fixed;
  }
}

@media screen and (max-width: 750px) {
  .navOp header .header_menu {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .navOp header .header_close {
    display: block;
  }
}

/*-------------------------------------------
  nav
  -------------------------------------------*/
@media screen and (max-width: 750px) {
  .nav_wrap {
    background-color: #fce8f1;
    bottom: 0;
    left: 0;
    overflow: auto;
    position: fixed;
    right: 0;
    top: 71px;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: -webkit-transform ease .5s;
    transition: transform ease .5s;
    transition: transform ease .5s, -webkit-transform ease .5s;
    visibility: hidden;
    width: 100%;
    z-index: 0;
  }
}

@media screen and (max-width: 750px) {
  .navOp .nav_wrap {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    visibility: visible;
    z-index: 1000;
  }
}

@media screen and (max-width: 750px) {
  .navClose #nav {
    position: absolute;
    z-index: 5;
  }
}

@media screen and (max-width: 750px) {
  .navClose .nav_wrap {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  .navAnm .nav_wrap {
    visibility: visible;
    z-index: 102;
  }
}

@media screen and (max-width: 750px) {
  .nav_wrapInner {
    padding-bottom: 3em;
  }
}

@media screen and (max-width: 750px) {
  .nav_list {
    border-top: 1px solid #f9a5bf;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a {
    background-color: #fce8f1;
    border-bottom: 1px solid #f9a5bf;
    border-color: #facad8;
    display: block;
    font-size: 15px;
    padding: 16px 49px 16px 40px;
    position: relative;
    text-decoration: none;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a:before,
  .nav_list a:after {
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a:before {
    background: url(../image/category_top/ico_circle04.png) center 1.2em no-repeat;
    background-size: contain;
    left: 1em;
    width: .92em;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a:after {
    background: url(../image/category_top/arrow_04.png) center center no-repeat;
    background-size: auto 1.15em;
    background-size: auto 19px;
    right: 25px;
    width: 18px;
  }
}

@media screen and (max-width: 750px) {
  .nav_list .accordion a.accordion_btn:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
}

@media screen and (max-width: 750px) {
  .nav_list .accordion.op a.accordion_btn:after {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list li li a {
    padding-left: 56px;
    text-indent: -16px;
  }
}

#nav .nav_list li .official_tools_box {
  background-color: #fff6fb;
  border-bottom: 1px solid #f9a5bf;
  margin: 0 auto;
  padding-bottom: 20px;
  padding-top: 1em;
}

@media screen and (max-width: 750px) {
  #nav .nav_list li .sns_list li a {
    padding-left: 0;
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list li li #sns_link_box .sns_list + ul li a {
    padding-left: 15px;
    padding-right: 30px;
  }
}

@media screen and (max-width: 750px) {
  .accordion li a:after {
    background: url(../image/category_top/arrow_04.png) center center no-repeat;
    background-size: auto 1.15em;
    right: 1.54em;
    width: 1.15em;
  }
}

@media screen and (max-width: 750px) {
  .nav_list li li a:before {
    background-image: none;
    content: "・";
    display: inline;
    position: static;
  }
}

@media screen and (max-width: 750px) {
  .nav_list li li:last-child a {
    border-color: #f9a5bf;
  }
}

@media screen and (max-width: 750px) {
  .nav_list .home a {
    background-image: url(../image/category_top/nav_ico01.png);
    background-position: 12px center;
    background-repeat: no-repeat;
    background-size: 22px;
    padding-left: 43px;
  }
}

@media screen and (max-width: 750px) {
  .nav_list .home a:before {
    content: normal;
  }
}

@media screen and (max-width: 750px) {
  .nav_list .home a:after {
    content: normal;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a.blank {
    background-image: none;
  }
}

@media screen and (max-width: 750px) {
  .nav_list a.blank:after {
    background-image: url(../image/category_top/ico_blank03.png);
    background-size: auto 1em;
  }
}

/*柔道バナー*/
@media screen and (max-width: 750px) {
  .nav_bnrlist {
    border-bottom: 1px solid #f9a5bd;
    margin: 0 20px;
    padding: 20px 10px;
  }
}

@media screen and (max-width: 750px) {
  .nav_bnrlist li {
    font-size: 0;
    margin: 16px auto 0 auto;
  }
}

@media screen and (max-width: 750px) {
  .nav_bnrlist li:first-child {
    margin-top: 0;
  }
}

/*sns公式アカウント*/
@media screen and (max-width: 750px) {
  #sns_link_box {
    background-color: #fff6fb;
    border-bottom: 1px solid #f9a5bf;
    padding: 1em;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box dl {
    background: #fff;
    border: 1px solid #3088cf;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box dt {
    background-color: #3088cf;
    color: #fff;
    font-size: 1.9rem;
    font-weight: bold;
    line-height: 1;
    padding: .61em 0;
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box dt span {
    display: block;
    margin: 0 auto .5em auto;
    max-width: 229px;
    width: 42%;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box dd {
    margin: 0;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box ul {
    margin: 0 1em;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box li {
    border-top: 1px solid #3088cf;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box li a {
    background-color: #FFF;
    padding-left: 1em;
    padding-right: 2em;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box li a:after {
    background-image: url(../image/category_top/arrow_03.png);
    right: 0;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box li:last-child a {
    border-bottom: 0;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    width: 80%;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list:after {
    clear: both;
    content: " ";
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list a {
    background-color: transparent;
    border-bottom: none;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list a:after {
    background-image: none;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list a:before {
    content: "";
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list li {
    border: 0;
    margin: .5em;
    width: 27%;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list a {
    display: block;
    line-height: 1;
    padding: 0;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  #sns_link_box .sns_list img {
    margin: auto;
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list li li #sns_link_box .sns_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    padding: 15px 0 7.5px 0;
    text-align: center;
    width: 70%;
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list li li #sns_link_box .sns_list li {
    border: 0;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    padding: 5.7px 7.5px 15px 7.5px;
    width: calc(100% / 3);
  }
}

/*オフィシャルバナー*/
@media screen and (max-width: 750px) {
  #official_tools_box {
    background-color: #fff6fb;
    border-bottom: 1px solid #f9a5bf;
    margin: 0 auto;
    padding-bottom: 20px;
    padding-top: 10px;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box a {
    background-color: transparent;
    border: 0;
    padding: 0;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box a:after {
    background-image: none;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box a:before {
    content: normal;
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list #official_tools_box .bnr_list1 li a,
  #nav .nav_list #official_tools_box .bnr_list2 li a {
    display: block;
    margin: 10px auto 0;
    padding: 0;
    text-align: center;
    text-indent: 0;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box .bnr_list1 li + li a,
  #official_tools_box .bnr_list2 li + li a {
    margin-top: 1em;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box .bnr_list1 a {
    max-width: 500px;
    width: 78%;
  }
}

/*友達に教える*/
@media screen and (max-width: 750px) {
  #official_tools_box .sns_btn {
    margin: 0 auto;
    max-width: 560px;
    width: 87.5%;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box .sns_btn .box_title {
    background-color: #013f78;
    color: #FFF;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 15px;
    padding: .5em;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box .sns_btn_list {
    align-items: center;
    background: #fff;
    border: 2px solid #013f78;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: auto;
    padding: 15px 0;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  #official_tools_box .sns_btn_list p {
    margin: 0 5%;
    width: calc(100% / 6);
  }
}

@media screen and (max-width: 750px) {
  #nav .nav_list #official_tools_box .sns_btn_list p a {
    line-height: 0;
    padding: 0;
    text-indent: 0;
  }
}

/*--ボタン--*/
@media screen and (max-width: 750px) {
  .nav_close {
    margin-top: 15px;
  }
}

@media screen and (max-width: 750px) {
  .nav_close a {
    height: 1.5em;
    padding: .5em;
    padding-right: 1.54em;
  }
}

@media screen and (max-width: 750px) {
  .nav_close .btn_base {
    width: 30%;
  }
}

@media screen and (max-width: 750px) {
  .btn_base {
    border-collapse: separate;
    display: table;
    margin: 0 auto;
    position: relative;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .btn_base a,
  .btn_base > span {
    background: linear-gradient(to bottom, #fffefe, #f1dfe6);
    background-color: #f8edf2;
    border: 1px solid #e04377;
    border-radius: .3em;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    color: #f14a81;
    display: table-cell;
    font-size: 1.6rem;
    line-height: 1.6rem;
    padding: 0.5em 1em;
    position: relative;
    text-align: left;
    text-decoration: none;
    vertical-align: middle;
    width: 100%;
  }
  .btn_base.btn_icon_l a:after,
  .btn_base.btn_icon_r a:after,
  .btn_base.btn_icon_l span:after,
  .btn_base.btn_icon_r span:after,
  .btn_base.btn_icon_l.btn_disabled span:after,
  .btn_base.btn_icon_r.btn_disabled span:after,
  .btn_base.btn_icon_l.btn_noactive span:after,
  .btn_base.btn_icon_r.btn_noactive span:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .btn_base.btn_icon_r a:after,
  .btn_base.btn_icon_r span:after,
  .btn_base.btn_icon_r.btn_disabled span:after,
  .btn_base.btn_icon_r.btn_noactive span:after {
    right: 1em;
  }
  .btn_base.btn_next.btn_plus.btn_detail.btn_small.btn_icon_r a:after,
  .btn_base.btn_next a:after,
  .btn_base.btn_next.nolink span:after,
  .btn_base.btn_next.btn_disabled span:after,
  .btn_base.btn_next.btn_noactive span:after {
    width: 0.62em;
  }
  .btn_base.btn_next.btn_default a:after,
  .btn_base.btn_next.btn_more a:after,
  .btn_base.btn_next.btn_detail a:after,
  .btn_base.btn_next.btn_pink a:after,
  .btn_base.btn_next.btn_title a:after {
    background-image: url(../image/category_top/arrow_04.png);
  }
}

@media screen and (max-width: 750px) {
  .nav_close .btn_close a:after {
    background: url(../image/category_top/ico_close04.png) no-repeat center/cover;
    bottom: 0;
    content: "";
    display: block;
    height: 1.15em;
    margin: auto;
    position: absolute;
    right: .5em;
    top: 0;
    width: 1.15em;
  }
}

/*------------------------------------
   アコーディオン
  ------------------------------------*/
@media screen and (max-width: 750px) {
  .accordion .accordion_data {
    height: 0;
    transition: height ease-out .1s, visibility .1s linear;
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  .accordion.op .accordion_data {
    height: 100%;
    transition: height ease-out .5s, visibility .1s linear;
    visibility: visible;
  }
}

@media screen and (max-width: 750px) {
  .accordion .accordion_data a {
    line-height: 0;
    opacity: 0;
    padding: 0 3.08em 0 2.5em;
    transition: padding ease-out .5s, visibility .1s linear, line-height .1s linear, opacity ease-out .1s;
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  .accordion.op .accordion_data a {
    background-color: #fff6fb;
    line-height: 1.5;
    opacity: 1;
    padding: 16px 49px 16px 40px;
    transition: padding ease-out .5s, visibility .5s linear, line-height .1s linear, opacity ease-out .5s;
    visibility: visible;
  }
}

@media screen and (max-width: 750px) {
  .accordion #sns_link_box {
    opacity: 0;
    transition: visibility .1s linear, opacity ease-out .1s;
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  .accordion.op #sns_link_box {
    opacity: 1;
    transition: visibility .5s linear, opacity ease-out .5s;
    visibility: visible;
  }
}

@media screen and (max-width: 750px) {
  .accordion #official_tools_box {
    opacity: 0;
    transition: visibility .1s linear, opacity ease-out .1s;
    visibility: hidden;
  }
}

@media screen and (max-width: 750px) {
  .accordion.op #official_tools_box {
    opacity: 1;
    transition: visibility .5s linear, opacity ease-out .5s;
    visibility: visible;
  }
}

/*-------------------------------------
   footer
  -------------------------------------*/
@media screen and (max-width: 750px) {
  #container > footer {
    border-color: #fcd2de;
    border-top: none;
    font-size: 1.2rem;
    margin: 3em auto 0;
    margin-top: 45px;
    padding: 1.5em 1em 0;
    padding: 0;
  }
}

@media screen and (max-width: 750px) {
  #container > footer ul.foot_submenu,
  #container > footer p#manage {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  footer .copyright {
    display: block;
  }
}

@media screen and (max-width: 750px) {
  footer .copyright {
    margin-bottom: 1em;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 750px) {
  footer .copyright p {
    letter-spacing: 0;
    text-align: center;
  }
}

/*-----------------------------------
   pagetop_sp
  -----------------------------------*/
@media screen and (max-width: 750px) {
  .btn_pagetop_sp {
    background: linear-gradient(to bottom, #fff 0%, #e6f4fd 100%);
    border: 2.7px solid #0075d8;
    border-radius: 5.7px;
    bottom: 17.25px;
    box-shadow: 0 2.25px 5.7px 0 rgba(0, 30, 50, .6);
    height: 60px;
    margin: 0;
    padding: 0;
    position: fixed;
    right: 17.25px;
    width: 60px;
    z-index: 999;
  }
}

@media screen and (max-width: 750px) {
  .btn_pagetop_sp a {
    color: #0075d8;
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: -.75px;
    line-height: 1;
    margin: auto;
    position: relative;
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .btn_pagetop_sp a::before {
    background: url(../image/category_top/arrow_pagetop.png) no-repeat center top;
    background-size: 1.8em;
    content: "";
    display: block;
    height: 1.5em;
    margin: auto;
    margin-top: .86em;
    width: 4em;
  }
}

/*pc非表示*/
@media screen and (max-width: 750px) {
  #btn_pagetop {
    display: none;
  }
}

/*-----------------------------------
 有料施設レポート
-----------------------------------*/
@media screen and (min-width: 751px) {
  .hide_pc {
    display: none !important;
  }
}

@media screen and (max-width: 750px) {
  .hide_sp {
    display: none !important;
  }
}

@media screen and (max-width: 750px) {
  #sr ul, .breadcrumb {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .top_visual:after {
    display: none;
  }
}

.top_visual.type_b.sub {
  line-height: 1;
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub {
    background: #36b36c;
    border: 2px solid #017332;
  }
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub .inbox {
    background: none;
  }
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub {
    height: auto;
    margin: 15px 7px 15px 8px;
  }
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub .inbox {
    height: auto;
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .top_visual.type_b.sub .fa_name {
    font-weight: 600;
  }
}

@media screen and (min-width: 751px) {
  .top_visual.type_b.sub .fa_name .name {
    margin-top: 8px;
  }
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub .fa_name .type {
    background: #017332;
    border: none;
    color: #fff;
    font-weight: normal;
    height: 27px;
    letter-spacing: 0;
    line-height: 1.8;
  }
}

@media screen and (max-width: 750px) {
  .top_visual.type_b.sub .img_top_visual {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .title_block.title_h1 {
    background-color: #e5336e;
    color: #FFF;
    margin: 8px 0 15px;
    padding: 6px 16px 7px;
    text-align: center;
  }

  .title_block.title_h1 h1 {
    font-size: 22.95px;
    letter-spacing: 0;
  }
}

@media screen and (min-width: 751px) {
  .title_block.title_h1 {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  #container .top_visual.type_b .fa_name {
    box-sizing: border-box;
    display: block;
    letter-spacing: 0;
    padding: 14px 15px 18px;
    width: 100%;
  }

  #container .top_visual.type_b .fa_name .name {
    color: #fff;
    font-size: 22.95px;
    margin-top: 15px;
  }

  #container .top_visual.type_b .fa_name .ruby {
    color: #fff;
    font-size: 12.6px;
    letter-spacing: 0;
  }
}

/* ---------------------------------
 TOPグローバルメニュー
--------------------------------- */
@media screen and (min-width: 751px) {
  #top_menu_rwd,
  .nav_menu_rwd {
    background: #fff;
    background: linear-gradient(to bottom, #fff 35%, #e6eee4 100%);
    border: 1px solid #07582b;
    border-radius: 6px;
    border-top: 1px solid #07582b;
    box-shadow: 0 0 20px -6px rgba(93, 53, 39, .8);
    box-sizing: border-box;
    height: 62px;
    margin: 22px auto 0;
    padding: 0;
    width: 1000px;
  }
}

.under_menu_rwd {
  margin: 17px auto 35px;
}

@media screen and (max-width: 750px) {
  .under_menu_rwd {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd {
    border-radius: 5px;
    box-sizing: border-box;
    display: flex;
    flex-flow: wrap;
    height: 60px;
    margin: 0 auto;
    padding: 0;
    position: relative;
    text-align: center;
    width: 998px;
    z-index: 5;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd {
    display: flex;
    flex-wrap: wrap;
    margin-top: -1px;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li {
    background: url(../image/btn-nav-icon.png) no-repeat right 2px bottom 2px;
    border-left: 1px solid #dbebf4;
    border-right: 1px solid #046e37;
    box-sizing: border-box;
    display: flex;
    flex: 1;
    font-size: 16px;
    height: 60px;
    line-height: 58px;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd li {
    align-self: stretch;
    box-sizing: border-box;
    display: flex;
    flex: 1;
    letter-spacing: 0;
    min-width: 25%;
    padding: 1px 1px 0;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.breakline {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd li.breakline {
    flex-basis: 100%;
    height: 0;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd.ratio_p3 li:nth-last-child(1), .nav_gloval_rwd.ratio_p3 li:nth-last-child(2), .nav_gloval_rwd.ratio_p3 li:nth-last-child(3) {
    flex-basis: calc(100% / 3);
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd.ratio_p2 li:nth-last-child(1), .nav_gloval_rwd.ratio_p2 li:nth-last-child(2) {
    flex-basis: calc(100% / 2);
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd.ratio_p1 li:nth-last-child(1) {
    flex-basis: calc(100%);
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li:nth-child(1),
  .nav_gloval_rwd li:nth-child(1) a {
    border-left: none;
    border-radius: 5px 0 0 5px;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li:last-child,
  .nav_gloval_rwd li:last-child a {
    border-radius: 0 5px 5px 0;
    border-right: none;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.on {
    background: #009944;
    border-left-color: #009944;
    border-right: 1px solid #046e37;
    cursor: default;
    pointer-events: none;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.on a {
    color: #fff;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd li.on a {
    background: #f75586;
    box-shadow: none;
    color: #fff;
    cursor: default;
    pointer-events: none;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.on:last-child {
    border-right: none;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li:hover {
    background: #009944;
    border-left-color: #009944;
    color: #fff;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li:hover a {
    color: #fff;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.on:hover,
  .nav_gloval_rwd li.on:hover a {
    color: #fff;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li.on:hover {
    background: #009944;
    border-left-color: #009944;
    color: #f54f6b;
    opacity: 1;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li a {
    color: #000;
    display: block;
    font-weight: bold;
    height: 60px;
    padding: 0;
    text-align: center;
    vertical-align: middle;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .nav_gloval_rwd li a {
    align-self: stretch;
    background: linear-gradient(#ffebf1, #f9c4d4);
    border-collapse: separate;
    border-color: #f2658c;
    border-radius: 0;
    border-style: solid;
    border-width: 1px;
    box-shadow: rgba(255, 255, 255, .5) 1px 1px 1px 0 inset, rgba(249, 197, 212, .65) -1px -1px 1px 0 inset;
    box-sizing: border-box;
    color: #ed2f6b;
    display: flex;
    flex-basis: 100%;
    flex-direction: column;
    font-size: 12.6px;
    font-weight: 700;
    height: auto;
    justify-content: center;
    line-height: 19.8px;
    min-height: 55px;
    padding: 7.5px 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .nav_gloval_rwd li a span {
    display: inline-block;
    line-height: 16px;
    vertical-align: middle;
  } 
  .nav_gloval_rwd li a span > span {
    font-size: 12px;
  }
}

@media screen and (max-width: 750px) {
  .inner {
    margin: 16px 16px 0 16px;
  }
}

/* お気に入りに追加 */
@media screen and (min-width: 751px) {
  .btnbox_before {
    height: 73px;
    margin: 15px auto;
  }
}

@media screen and (max-width: 750px) {
  .top_btnbox {
    height: auto;
    margin: 15px auto;
    width: auto;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before {
    background: #fff;
    border: 1px solid #ce9a35;
    border-radius: 6px;
    box-sizing: border-box;
    height: 73px;
    left: 7px;
    letter-spacing: -.4em;
    padding: 10px 20px 0;
    text-align: left;
    top: 0;
    width: 670px;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .btn {
    display: inline-block;
    letter-spacing: normal;
    margin-top: 2px;
    width: 202px;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .btn img {
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .btn img:hover {
    cursor: pointer;
    opacity: .7;
  }
}

@media screen and (max-width: 750px) {
  .sp_btn0 {
    background: linear-gradient(#fffefe, #f1dfe6);
    background-color: #f8edf2;
    border: 1px solid #e04377;
    border-radius: 4.5px;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    color: #f14a81;
    display: inline-block;
    font-size: 16.05px;
    line-height: 19.8px;
    padding: 8px 36px 8px 16px;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
  }
}

.sp_btn0:visited {
  color: #f14a81;
}

@media screen and (max-width: 750px) {
  .sp_btn0:after {
    background-image: url(../image/ico-arrow04.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    right: 15px;
    top: 0;
    width: 9.3px;
  }
}

.sp_btn0.sp_btn_dis.sp_txt {
  align-items: center;
  background-color: #e6e6e6;
  border: 1px solid #BBB;
  border-radius: 5px;
  box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15);
  box-sizing: border-box;
  color: #666;
  cursor: default;
  display: flex;
  font-size: 16.05px;
  justify-content: center;
  line-height: 19.8px;
  margin: 0 auto;
  padding: 7.5px 34.65px 7.5px 15px;
  position: relative;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

.sp_btn0.sp_btn_dis.sp_txt:after {
  background-image: url(../image/ico-arrow02.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  display: block;
  margin: auto;
  opacity: .4;
  position: absolute;
  right: 15px;
  top: 0;
  width: 9.3px;
}

@media screen and (max-width: 750px) {
  .sp_btn0 img {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .sp_btn_dis {
    background: none;
    border: none;
    border-collapse: separate;
    box-shadow: none;
    display: table;
    margin: 0 auto;
    padding: 0;
    pointer-events: none;
    position: relative;
    width: 288.45px;
  }

  .sp_btn_dis:after {
    display: none;
  }

  .sp_btn_dis .sp_txt {
    background-color: #e6e6e6;
    border: 1px solid #BBB;
    border-radius: 5px;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    color: #666;
    cursor: default;
    display: table-cell;
    font-size: 16.05px;
    line-height: 19.8px;
    padding: 7.5px 15px;
    padding-right: 34.65px;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    width: 100%;
  }

  .sp_btn_dis .sp_txt:after {
    background-image: url(../image/ico-arrow02.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    margin: auto;
    opacity: .4;
    position: absolute;
    right: 15px;
    top: 0;
    width: 9.3px;
  }

  .sp_btn_dis .sp_btn0_inatv + .sp_txt {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .lead {
    display: inline-block;
    font-size: 17px;
    letter-spacing: .05em;
    line-height: 1.47;
    margin-left: 20px;
    vertical-align: top;
  }
}

@media screen and (max-width: 750px) {
  .top_btnbox .btn_entry_fav_before .lead {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .lead a {
    font-weight: bold;
  }
}

@media screen and (min-width: 751px) {
  .top_btnbox .btn_entry_fav_before .lead .txt_fav {
    color: #f53256;
    font-weight: bold;
  }
}

@media screen and (max-width: 750px) {
  #font_control {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  .main {
    margin: 0 auto;
    -webkit-transform: translateX(2px);
    transform: translateX(2px);
    width: 990px;
  }
}

@media screen and (min-width: 751px) {
  .main img {
    height: auto;
  }
}

@media screen and (max-width: 750px) {
  /**
   * for callcrayon
   */
  .callbox {}
  .callbox .inbox {
    padding: 1em;
  }
  .callbox .ttl_callbox {
    background-color: #009A44;
    border-radius: 5px 5px 0 0;
    height: 3.75em;
    /*colorbox height bug fix*/
  }
  .callbox .ttl_callbox img {
    width: 70%;
    margin: 0 auto;
  }
  .callbox .fa_name {}
  .callbox .fa_name .category {}
  .callbox .fa_name .name {
    margin: 0 auto 0.5em auto;
    padding: 0.25em 0.5em;
    font-weight: 700;
    /* font-size: 1.23rem; */
    background-color: #eee;
  }
  .callbox .type_free {}
  .callbox .inbox .telnumbox {
    text-align: center;
  }
  .callbox .inbox .telnumbox p {}
  .callbox .inbox .telnumbox p a {
    background-color: #fdfac7;
    color: #F60409;
    width: 80%;
    font-weight: 700;
    margin: 1em auto;
    padding: 1em;
    border-radius: 5px;
    display: block;
  }
  .callbox .inbox .telnumbox p a span {
    color: #333;
    padding-left: 1em;
    /* font-size: 1.38rem; */
  }
  .callbox .inbox .timelimit {
    font-weight: 700;
    text-align: center;
  }
  .callbox .inbox .timelimit p,
  .callbox .inbox div.type_timeup .telnumbox p {
  }
  .callbox .inbox .timelimit #limit_time,
  .callbox .type_timeup .telnumbox {
    color: #F60409;
    font-weight: 700;
  }
  .callbox .inbox .attention {
    margin: 1em auto;
  }
  .callbox .inbox .attention li {
    padding-left: 1em;
    text-indent: -1em;
  }
  .callbox .inbox .attention li::before {
    content: "※";
  }
  .callbox .inbox .msgbox {}
}

@media screen and (min-width: 751px) {
  .sec_box {
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 750px) {
  .sec_box {
    border: none;
    border-radius: 0;
    box-shadow: none;
    margin: 0;
    padding: 0;
    position: relative;
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box {
    background: none;
    border: none;
    box-shadow: none;
    padding-bottom: 0;
    width: 990px;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box:nth-child(1) {
    margin-top: -15px;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box .sec_header {
    background: none;
    border-bottom: none;
    padding: 16px 0 0;
    position: relative;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box .sec_header:before {
    background: url(../image/bg-section-t.jpg) no-repeat 0 0;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box .sec_header .ttl_main {
    border-bottom: 4px solid #009944;
    box-sizing: border-box;
    margin-left: 14px;
    padding: 13px 10px 9px 68px;
    position: relative;
    width: 959px;
    z-index: 2;
  }
}

@media screen and (min-width: 751px) {
  .js_tab_box.sec_box .sec_header ~ .sec_header {
    margin-top: 2px;
  }
}

@media screen and (min-width: 751px) {
  .sec_inbox {
    background: url(../image/bg-section-c.png) repeat-y 0 0;
    box-sizing: border-box;
    padding: 0 18px 0 14px;
    position: relative;
    width: 100%;
  }
  .sec_inbox.js_tab {
    padding-bottom: 59px;
    position: relative;
  }
  .js_tab_box .sec_inbox {
    padding-bottom: 59px;
  }
  .js_tab_box .sec_inbox:after {
    background: url(../image/bg-section-b.png) no-repeat left 0 bottom -4px;
    bottom: 0;
    content: "";
    display: block;
    height: 54px;
    left: 0;
    position: absolute;
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .sec_inbox.inbox01 {
    padding: 22px 102px 59px 98px;
  }
}

@media screen and (min-width: 751px) {
  .sec_inbox.inbox01 p:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  .sec_inbox {
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .sec_inbox p {
    margin-top: 22px;
  }
}

@media screen and (max-width: 750px) {
  .sec_inbox p {
    margin-top: 10px;
  }
}

@media screen and (max-width: 750px) {
  .sec_inbox p.label {
    margin-top: 0;
  }
}

@media screen and (min-width: 751px) {
  .sec_inbox p + p {
    margin-top: 26px;
  }
}

@media screen and (max-width: 750px) {
  .sec_inbox p + p {
    margin-top: 20px;
  }
}

@media screen and (max-width: 750px) {
  .ttl_main {
    background: none;
    font-size: 20.7px;
    line-height: 31.05px;
    padding: 0;
  }
}

@media screen and (max-width: 750px) {
  .ttl_main.report {
    background: none;
    padding: 0;
  }
}

@media screen and (max-width: 750px) {
  .sec_header {
    background: none;
    border-bottom: none;
    margin: 0;
    padding: 0;
  }
}

@media screen and (max-width: 750px) {
  .sec_header .ttl_main {
    padding-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .sec_header .ttl_main.sp_ttl_xl {
    font-size: 20.7px;
  }
}

@media screen and (max-width: 750px) {
  .sec_header .ttl_main.mbcom {
    background: none;
  }
}

@media screen and (max-width: 750px) {
  .sp_ttl_xl {
    border-bottom: 3px solid #e5336e;
    display: block;
    float: none;
    font-size: 20.7px;
    line-height: 31px;
    margin: 34.65px 0 0 0;
    padding: 0;
    text-align: left;
  }
}

@media screen and (max-width: 750px) {
  .sp_ttl_xl.ttl_main {
    float: none;
  }
}

@media screen and (min-width: 751px) {
  .leadbox {
    margin: 0 auto;
    padding-top: 49px;
    width: 780px;
  }
  .js_tab_data .leadbox {
    padding-top: 15px;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_top {
    align-items: center;
    display: flex;
    gap: 2rem;
    margin-bottom: 22px;
    position: relative;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_header {
    font-weight: 600;
    position: relative;
    width: 100%;
    z-index: 2;
  }
}

@media screen and (max-width: 750px) {
  .leadbox_header {
    background: #fae5ec;
    font-size: 15px;
    margin-top: 20px;
    padding: 8px;
    text-align: center;
  }
  .js_tab_data .leadbox_header {
    margin-top: 15px;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_header .label {
    background: #009944;
    color: #fff;
    display: inline-block;
    font-size: 100%;
    line-height: 32px;
    padding: 3px 12px 2px;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_header .name {
    background: #fffbbe;
    line-height: 1;
    margin-top: 0;
    padding: 12px 10px 8px;
  }
}

@media screen and (max-width: 750px) {
  .leadbox_header .name {
    line-height: 1.3;
    margin-top: 5px;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_header .txt_xl {
    font-size: 112.5%;
    line-height: 39px;
  }
}

@media screen and (max-width: 750px) {
  .leadbox_header .txt_xl {
    display: block;
    font-size: 14px;
    font-weight: 600;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_header .txt_lg {
    display: inline-block;
    font-size: 100%;
    font-weight: 600;
    line-height: 29px;
  }
}

@media screen and (max-width: 750px) {
  .leadbox_header .txt_lg {
    font-weight: 600;
  }
}

@media screen and (min-width: 751px) {
  .leadbox_img {
    font-size: 0;
  }
}

@media screen and (max-width: 750px) {
  .leadbox_img {
    margin-top: 15px;
  }
}

@media screen and (min-width: 750px) {
  .leadbox_title {
    max-width: 50%;
  }
}

p.leadbox_desc {
  color: #fb4d6c;
  font-weight: 600;
}

@media screen and (min-width: 751px) {
  p.leadbox_desc {
    font-size: 137.5%; 
    margin-top: 0;
  }
}

@media screen and (max-width: 750px) {
  p.leadbox_desc {
    color: #e5336e;
    font-size: 18px;
    line-height: 27px;
    margin-top: 0;
  }
}

@media screen and (min-width: 751px) {
  .sec_md {
    margin: 40px auto 0;
    position: relative;
    width: 880px;
    z-index: 3;
  }
}

@media screen and (max-width: 750px) {
  .sec_md {
    margin-top: 30px;
  }
}

@media screen and (min-width: 751px) {
  .ttl_md {
    background-color: #009944;
    border-radius: 15px 15px 0 0;
    color: #fff;
    font-size: 23px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 37px;
    padding: 10px 20px;
    position: relative;
  }
}

@media screen and (min-width: 751px) {
  .ttl_md:after {
    background: #fff;
    bottom: 3px;
    content: "";
    display: block;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .sp_ttl_md {
    border-left: 5px solid #e5336e;
    font-size: 18.45px;
    line-height: 27.675px;
    margin-bottom: 12px;
    padding-left: 11.25px;
  }
}

@media screen and (min-width: 751px) {
  .sec_sm {
    margin: 25px 45px 0;
  }
}

@media screen and (max-width: 750px) {
  .sec_sm {
    margin-top: 20px;
  }
}

.ttl_sm:before {
  position: absolute;
  left: 45px;
  content: "―";
  display: inline-block;
}

@media screen and (min-width: 751px) {
  .ttl_sm {
    color: #009944;
    font-size: 118.75%;
    font-weight: 600;
    line-height: 30px;
    padding-left: 24px;
  }
}

@media screen and (max-width: 750px) {
  .ttl_sm:before {
    left: 0;
  }
  .sp_ttl_sm {
    color: #e5336e;
    font-size: 100%;
    font-weight: 600;
    padding-left: 18px;
  }
}

.sec_md_img01 {
  font-size: 0;
}

.sec_md_img01 + .ttl_md {
  margin-top: 15px;
}

.img_l,
.img_left {
  float: left;
  font-size: 0;
  margin: 3px 25px 15px 0;
}

.img_r,
.img_right {
  float: right;
  font-size: 0;
  margin: 3px 0 15px 25px;
}

.cl_box:after {
  clear: both;
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  width: 0;
}

@media screen and (min-width: 751px) {
  .pc_txt_r {
    text-align: right;
  }
}

/* 通信・モバイル情報 */
@media screen and (min-width: 751px) {
  .mk_mail {
    text-align: center;
  }
}

.mbcombox .mbcombox_lst {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (max-width: 750px) {
  .mbcombox .mbcombox_lst {
    flex-direction: column;
  }
}

.mbcombox .mbcombox_lst .hide + .btn_inq {
  margin-left: 0;
}

@media screen and (max-width: 750px) {
  .sp_ttl_md + .mbcombox_lst {
    margin-top: -15px;
  }
}

@media screen and (max-width: 750px) {
  .mbcombox .btn_inq,
  .sp_btn {
    border-collapse: separate;
    display: table;
    margin: 0 auto;
    position: relative;
    width: 100%;
  }

  .mbcombox .btn_inq a,
  .sp_btn a {
    background: linear-gradient(#fffefe, #f1dfe6);
    background-color: #f8edf2;
    border: 1px solid #e04377;
    border-radius: 4.5px;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    color: #f14a81;
    display: table-cell;
    font-size: 16.05px;
    height: auto;
    line-height: 19.8px;
    padding: 8px 16px 8px 16px;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    width: 100%;
  }

  .mbcombox .btn_inq_next a:after,
  .mbcombox .sp_btn_next a:after {
    background-image: url(../image/ico-arrow04.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    right: 15px;
    top: 0;
    width: 9.3px;
  }

  .btm_info {
    box-sizing: border-box;
    width: calc(100% - 32px);
  }

  #sec_mbcom {
    max-width: 100%;
  }

  .mbcombox {
    border-bottom: none;
    height: auto;
    padding-bottom: 5px;
    width: 100%;
  }

  .mbcombox.inq .ttl_arrow {
    background: none;
    border: none;
    border-left: 5px solid #e5336e;
    border-radius: 0;
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    text-align: left;
    width: 100%;
  }

  .mbcombox.inq .ttl_arrow:after, .mbcombox.inq .ttl_arrow:before {
    display: none;
  }

  .mbcombox.inq .ttl_arrow span {
    line-height: 27.675px;
  }

  .mbcombox .btn_inq {
    margin: 15px auto 0 auto !important;
    width: 246.08px;
    float: none;
  }

  .mbcombox .btn_inq a img {
    display: none;
  }

  .mbcombox.qr {
    display: none;
  }

  .qr_code_lead {
    max-width: 100%;
  }

  .snsbox {
    border: none;
    box-shadow: none;
    float: none;
    height: auto;
    min-height: auto;
    width: 100%;
  }

  .snsbox .sec_header {
    background: none;
    color: #000;
    height: auto;
    line-height: 27.675px;
    text-align: left;
  }

  .snsbox .sns_btns {
    height: auto;
    margin-top: 0;
    width: 95%;
  }

  .snsbox .sns_btns .hide_pc {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .snsbox .sns_btns .hide_pc:after {
    clear: both;
    content: "";
    display: block;
  }

  .snsbox .sns_btns ul li {
    background: none;
    border: none;
    box-sizing: border-box;
    font-size: 0;
    height: auto;
    margin: 0;
    padding-top: 0;
    width: 32%;
  }

  .sp_att {
    font-size: 15px;
    line-height: 22.5px;
    margin-top: 12px;
  }

  .snsbox p.mk_mail {
    margin-top: 10px;
    padding-top: 0;
    text-align: center;
    width: 100%;
  }

  .snsbox p.mk_mail a {
    background: none;
    color: #0075d8;
    font-size: 15px;
    font-weight: normal;
    padding: 0;
  }

  .snsbox p.mk_mail a:hover {
    color: #0075d8;
  }

  .snsbox p.mk_mail a:before {
    background: url(../image/ico-mail01.png) transparent left top no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 1.1em;
    margin-right: .2em;
    vertical-align: middle;
    width: 1.4em;
  }
}

/* お気に入りに登録／閲覧 */
.favbox {
  text-align: center;
}

.favbox .lead .txt_fav {
  color: #fb5372;
  font-weight: bold;
}

.favbox .lead a {
  font-weight: 600;
}

@media screen and (min-width: 751px) {
  .favbox .btn_fav .btn_entry_fav {
    text-align: right;
  }
}

@media screen and (min-width: 751px) {
  .favbox .btn_fav .btn_entry_fav img {
    width: auto;
  }
  .favbox .btn_fav .btn_favlst a img:hover,
  .favbox .btn_fav .btn_entry_fav a img:hover {
    cursor: pointer;
    opacity: .7 !important;
  }
}

.favbox .btn_fav .btn_entry_fav img.btn_actived {
  width: 240px;
}

@media screen and (min-width: 751px) {
  .favbox .btn_fav .btn_favlst {
    text-align: left;
  }
}

@media screen and (min-width: 751px) {
  .favbox .btn_fav .btn_favlst img {
    width: auto;
  }
}

.txt_fav02 {
  text-align: left;
}

@media screen and (min-width: 751px) {
  .sp_txt {
    display: none !important;
  }
}

.favbox_after {
  background: url(../image/bg_favbox_02.png) no-repeat center center;
  box-sizing: border-box;
  clear: both;
  height: 204px;
  margin: 0 auto;
  padding: 45px 0 0;
  width: 880px;
}

@media screen and (min-width: 751px) {
  .favbox_after .btn_fav .btn_entry_fav {
    float: left;
  }
}

@media screen and (max-width: 750px) {
  .btn_entry_fav {
    text-align: center;
  }
}

@media screen and (max-width: 750px) {
  .btn_entry_fav img {
    display: none;
  }
}

.btn_entry_fav .sp_btn0 {
  width: 288.45px;
}

.btn_entry_fav .bf_login {
  display: none;
}

.btn_entry_fav .addFav .bf_login {
  display: inline-block;
}

.btn_entry_fav .addFav .sp_txt + .sp_txt {
  display: none;
}

.favbox_after .btn_fav .btn_favlst {
  float: right;
}

.favbox_after .btn_fav li {
  height: 48px;
  margin: 0 0 12px;
}

@media screen and (min-width: 751px) {
  .favbox_after .btn_fav li {
    text-align: right;
    width: 290px;
  }
}

@media screen and (min-width: 751px) {
  .favbox_after .btn_fav li.btn_favlst {
    text-align: left;
  }
}

.favbox_after .btn_fav {
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .favbox_after .btn_fav {
    width: 650px;
  }
}

@media screen and (max-width: 750px) {
  .favbox_after .btn_fav .btn_entry_fav img,
  .favbox_after .btn_fav .btn_favlst img {
    width: 100%;
  }
}

.favbox_after .btn_fav .btn_entry_fav a img:hover,
.favbox_after .btn_fav .btn_favlst a img:hover {
  cursor: pointer;
  opacity: .7 !important;
}

@media screen and (min-width: 751px) {
  .favbox_after .ttl_favlst {
    margin: 0 auto 10px auto;
    text-align: center;
    line-height: 1;
  }
}

@media screen and (max-width: 750px) {
  .favbox_after,
  .favbox {
    background: none;
    height: auto;
    max-width: 100%;
    padding: 0;
  }

  .favbox_after .btn_fav,
  .favbox .btn_fav {
    max-width: 100%;
  }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
  .favbox_after .btn_fav .sp_btn0,
  .favbox .btn_fav .sp_btn0 {
    margin: 0 auto;
    width: 288.45px;
  }
}

@media screen and (max-width: 750px) {
  .favbox_after .lead,
  .favbox .lead {
    font-size: 15px;
    line-height: 22.5px;
    margin-top: 30px;
    text-align: left;
  }

  .favbox_after .btn_fav li,
  .favbox .btn_fav li {
    float: none;
    height: auto;
    margin: 15px 0 0 0;
    width: auto;
  }

  .favbox_after .btn_fav li img,
  .favbox .btn_fav li img {
    display: none;
  }

  .favbox_after .btn_fav .btn_favlst,
  .favbox_after .btn_fav .btn_entry_fav,
  .favbox .btn_fav .btn_favlst,
  .favbox .btn_fav .btn_entry_fav {
    float: none;
    text-align: center;
  }

  .txt_fav02 {
    margin-top: 15px;
  }
}

@media screen and (max-width: 750px) {
  .date_calendar_weather {
    background: none;
    border: none;
    border: 2px solid #fcc7c7;
    border-radius: 0;
    box-shadow: none;
    box-sizing: border-box;
    float: none;
    height: auto;
    margin: 0;
    margin-top: 15px;
    padding: 15px;
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .date_calendar_weather .time {
    font-size: 15px;
    font-weight: normal;
    height: auto;
    line-height: 24px;
    width: auto;
  }
}

@media screen and (max-width: 750px) {
  .sp_bg_pink_5 {
    background-color: #fae5ec;
  }

  ul.newsticker {
    box-sizing: border-box;
    height: auto;
    left: auto !important;
    margin-top: 15px;
    padding: 15px;
    white-space: normal;
    width: 100% !important;
  }

  ul.newsticker li {
    background-color: transparent;
    color: #000;
    float: none;
    font-size: 15px;
    font-weight: normal;
    line-height: 24px;
  }
}

@media screen and (min-width: 751px) {
  .date_calendar_weather .information ul .weather a .pc_col_blu {
    color: #1825ce;
  }

  .date_calendar_weather .information ul .weather a .pc_col_blk {
    color: #000;
  }
}

@media screen and (max-width: 750px) {
  .date_calendar_weather .information ul li {
    padding: 0;
  }

  .date_calendar_weather .information ul li a {
    color: #0075d8;
    display: inline;
    font-size: 15px;
    font-weight: normal;
    padding: 0 15px;
  }

  .date_calendar_weather .information ul .calendar,
  .date_calendar_weather .information ul .weather {
    background: none;
    height: auto;
    margin: 0;
    position: static;
  }

  .date_calendar_weather .information ul .calendar {
    width: 47%;
  }

  .date_calendar_weather .information ul .weather a {
    color: #0075d8 !important;
  }

  .date_calendar_weather .tickercontainer {
    height: auto;
    overflow: auto;
    padding: 0;
    position: static;
    width: auto;
  }

  .date_calendar_weather .tickercontainer .mask {
    overflow: auto;
    position: static;
  }

  .date_calendar_weather .img {
    display: none;
  }

  .date_calendar_weather .information {
    margin-top: 15px;
  }

  .sp_list_text li {
    line-height: 22.5px;
  }

  .sp_list_text li a {
    background: url(../image/ico-arrow04.png) no-repeat right center;
    background-size: auto 12.75px;
    display: inline-block;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    position: relative;
    text-decoration: none;
  }

  .sp_list_text li a:before {
    background: #0075d8;
    content: "";
    display: block;
    height: 11.55px;
    left: 0;
    position: absolute;
    top: 5.1px;
    width: 11.55px;
  }
}

@media screen and (min-width: 751px) {
  .pc_gr_flex {
    display: flex;
    margin: 30px auto;
  }

  .pc_gr_flex .snsbox {
    height: auto;
    margin: 0 auto;
    padding-bottom: 65px;
  }

  .pc_gr_flex .date_calendar_weather {
    height: auto;
    margin: 0 auto;
    padding-bottom: 65px;
  }
}

/* footer */
@media screen and (max-width: 750px) {
  #container > footer {
    font-size: 10.35px;
    line-height: 15.525px;
  }
}

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

@media screen and (max-width: 750px) {
  .foot_nav li {
    background-color: #fbe8f0;
  }

  .foot_nav li a {
    border-bottom: 1px solid #f9a5be;
    color: #ff3e6f;
    display: block;
    font-size: 15px;
    letter-spacing: 0;
    line-height: 22.5px;
    padding: 15px 34.65px 15px 36.9px;
    position: relative;
    text-decoration: none;
  }

  .foot_nav li a:before {
    background: url(../image/ico-diamond02.png) center 1.24em no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    left: 15px;
    position: absolute;
    top: 0;
    width: 13.8px;
  }

  .foot_nav li a:after {
    background: url(../image/ico-arrow04.png) center center no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    position: absolute;
    right: 15px;
    top: 0;
    width: 9.3px;
  }
}

@media screen and (max-width: 750px) {
  #words {
    background: #fae5ec;
    border: none;
    clear: both;
    margin-top: 30px;
    max-width: 100%;
  }

  #words p {
    font-size: 15px;
    letter-spacing: 0;
  }

  #keyword_list {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .mod_usr_login {
    background-size: calc(100% - 10px) auto;
  }
}

.mod_usr_login,
.modal_login {
  display: none;
}

@media screen and (max-width: 750px) {
  .mod_usr_login,
  .modal_login {
    max-width: 370px;
    padding: 5% 4%;
    width: calc(100% - 40px);
  }
}

@media screen and (max-width: 750px) {
  .mordal_lead {
    text-align: left;
  }
}

@media screen and (max-width: 750px) {
  .mod_usr_login .inner {
    width: 100%;
  }
}

@media screen and (max-width: 750px) {
  .mod_usr_login .ttl img {
    width: 214px;
  }
}

@media screen and (max-width: 750px) {
  .mod_usr_login .id input {
    max-width: 100%;
  }
}

.mod_usr_login .pw_btn {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  .mod_usr_login .pw_btn input[type="password"] {
    margin-right: 10px;
    width: 100%;
  }
}

/**
 * お気に入り登録完了ポップアップ
 */
@media screen and (max-width: 750px) {
  .top_btnbox .btn_entry_fav {
    position: static;
  }
}

@media screen and (max-width: 750px) {
  #edit_alert {
    background-position: center 37.5px;
    border: 5px solid #f75586;
    bottom: 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, .6);
    box-sizing: border-box;
    height: 255px;
    left: 0 !important;
    margin: auto;
    padding-top: 171.5px;
    right: 0;
    top: 0;
    width: calc(90% + 10px) !important;
    width: 90%;
  }

  #edit_alert p {
    margin-top: 15px;
  }
}

.top_btnbox .btn_entry_fav img {
  height: auto;
  width: auto;
}

/**
 * tab
 */
@media screen and (min-width: 751px) {
  .list_tab + .leadbox {
    padding-top: 25px;
  }
}

@media screen and (max-width: 750px) {
  .list_tab + .leadbox {
    margin-top: 25px;
  }
}

.sec_list_tab {
  padding-bottom: 10px;
}

@media screen and (min-width: 751px) {
  .sec_list_tab {
    background: url(../image/bg-section-c.png) repeat-y 0 0;
    width: calc(100% - 4px);
  }
}

.sec_list_tab ~ .sec_header {
  display: none;
}

.sec_list_tab ~ .sec_header.js_atv {
  display: block;
}

.list_tab {
  border-spacing: 5px;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 790px;
}

@media screen and (min-width: 751px) {
  .list_tab {
    padding-top: 30px;
  }
}

@media screen and (max-width: 750px) {
  .list_tab {
    margin-top: 20px;
    max-width: 100%;
  }
}

.list_tab li {
  background: #fdfefd linear-gradient(to bottom, #fdfefd, #cfefd8);
  border: 1px solid #267336;
  border-radius: 3px;
  box-sizing: border-box;
  color: #267336;
  cursor: pointer;
  display: flex;
  flex-basis: calc(100% / 3);
  flex-direction: column;
  font-weight: 600;
  justify-content: center;
  line-height: 20px;
  margin: 0 5px;
  padding: 5px 5px 15px;
  position: relative;
  text-align: center;
  width: calc(100% / 3);
}

@media screen and (min-width: 751px) {
  .list_tab li:hover {
    opacity: .7;
  }
}

@media screen and (max-width: 750px) {
  .list_tab li {
    flex-basis: calc((100% / 3) - 10px);
    font-size: 14px;
    width: calc((100% / 3) - 10px);
    word-wrap: break-word;
  }
}

@media screen and (max-width: 360px) {
  .list_tab li {
    font-size: 12px;
  }
}

.list_tab li:after {
  background: url(../image/ico-tab.png) no-repeat 0 0/100% auto;
  bottom: 5px;
  content: "";
  display: block;
  height: 6px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 10px;
}

.list_tab li .block {
  display: block;
}

.list_tab li.js_atv {
  background: #118329 linear-gradient(to bottom, #118329, #3fa956);
  box-shadow: 0 3px 4px 1px rgba(0, 0, 0, .3), inset 1.7px 1px #fff;
  color: #fff;
  text-shadow: 0 2px 2px rgba(0, 88, 19, .8);
}

.list_tab li.js_atv:after {
  background-image: url(../image/ico-tab-atv.png);
}

.js_tab {
  display: none;
}

.js_tab.js_atv {
  display: block;
}

@media screen and (min-width: 751px) {
  .js_tab.js_atv {
    padding-bottom: 59px;
  }
}

.js_tab_list .js_atv {
  pointer-events: none;
}
