@charset "utf-8";
/* 共通 ======================================================*/
html {
  /* 1rem = 10px */
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
}
body {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5;
  color: #444;
  position: relative;
  left: 0;
  overflow-x: hidden;
  z-index: 0;
}
.overlay {
    height: 3154px;
    width: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    cursor: pointer;
}
body, input, textarea, select {
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
input[type="text"], textarea {
  padding: 0 5px;
  border: 1px #BBB solid;
  border-radius: 3px;
}
textarea {
  resize: vertical;
  padding: 5px;
}
input[type="checkbox"], input[type="radio"] {
  vertical-align: middle;
  margin: 3px 4px 3px 0;
}
img {
  width: 100%;
  vertical-align: bottom; /* 画像下部の余白対策 */
}
a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}


.gmap {
position: relative;
padding-top: 75%;
height: 0;
overflow: hidden;
}
.gmap iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* ビルボード広告 */
.billbord {margin-bottom:1em;}

/* ページネーション */
.pagination {
  overflow: hidden;
  clear:both;
  text-align:center;
  margin-bottom:1em;
}
.pagination span {display:inline-block;vertical-align:middle;text-align:center;font-size:22px;margin-bottom:.3em;}
.pagination span.current {border:solid 1px #aaa;background:#fff;width:48px;height:48px;line-height:48px;color:#666;}
.pagination span a {display:block;text-decoration:none;width:48px;height:48px;line-height:48px;color:#fff;background:#aaa;border:solid 1px #aaa;}
.pagination span.next a {font-size:0;background-image:url(/common/wedge/images/v1/common/next.png);background-repeat:no-repeat;background-position:center;}
.pagination span.prev a {font-size:0;background-image:url(/common/wedge/images/v1/common/prev.png);background-repeat:no-repeat;background-position:center;}
.pagination span.next a span,
.pagination span.prev a span {display:block;text-indent:150%;overflow:hidden;}

.pagination.category {margin:.5em 1em;display:block;}
.pagination.category::after {content:"";display:block;clear:both;}
.pagination.category span {display:inline;}
.pagination.category span.next a {font-size:1em;width:auto;background-position:90%;padding:0 1.5em 0 .5em;float:right;}
.pagination.category span.prev a {font-size:1em;width:auto;background-position:10%;padding:0 .5em 0 1.5em;float:left;}

/* PRリスト */
.sp-header-banner,
.sp-footer-banner{
  text-align:center;
}
.sp-footer-banner{
  position:fixed;
  bottom:0;
  z-index:999;
  width:100%;
  background:#fff;
}
.sp-footer-banner-inner{
 width:100%;
 display:block;
 text-align:center;
}
.pr-list {
  position: relative;
  border-bottom: 1px #ccc solid;
  overflow: hidden;
}
.pr-list a:link,
.pr-list a:visited,
.pr-list a:active,
.pr-list a:hover {
  width: 95%;
  padding: 2.5%;
  text-decoration: none;
  color: #000;
}
.pr-list .content-img {
  float: left;
  position: relative;
  width: calc(142px + 1%);
  padding-top: 98px;
   background: #eee;
}
.pr-list .content-img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
.pr-list .content-title {
  position: static;
  float: right;
  width: calc(100% - 160px);
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
.pr-list span {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 35px;
  border-radius: 0;
  color: #fff;
  background: #898989;
  text-align: center;
}
.pr-list .title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  border-radius: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #000;
  background: none;
  text-align: left;
  line-height: 1.2;
}
.pr-list .provider {
  display: none;
}
.pr-list span {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 35px;
  border-radius: 0;
  color: #fff;
  background: #898989;
}
.visual-box {
border-top: 1px #ccc solid;
border-bottom: 1px #ccc solid;
position:relative;
}
.visual-box a {text-decoration:none;}
.visual-box::after {content:"";display:block;clear:both;}
.visual-box .content-img {
width:145px;
float:left;
}
.visual-box p.title {
color:#000;
font-weight:bold;
font-size:1.8rem;
position:absolute;
top:10px;
left:160px;
line-height:1.2;
width:calc(100% - 170px) !important;
}
.visual-box .pr {
  width: 30px;
  font-size: 12px;
  font-size: 1.2rem;
  background: #898989;
  color: #fff;
  text-align: center;
  position:absolute;
  right:10px;
  bottom:10px;
}
/* 記事一覧 */
.content-list:nth-child(n+2) {
  display: none;
}
.content-list:first-child ul li {
  position: relative;
  border-bottom: 1px #ccc solid;
  overflow: hidden;
}
.content-list:first-child ul .pr-list .title {
  background: none;
}
.content-list:first-child ul li .content-img {
  position: relative;
  float: left;
  width: 143px;
  height: 96px;
  /* background: #eee; */
  overflow:hidden;
}
.content-list:first-child ul li .content-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width:100%;
  width: auto;
  height: auto;
  margin: auto;
}

.content-list:first-child ul li a:link,
.content-list:first-child ul li a:active,
.content-list:first-child ul li a:visited,
.content-list:first-child ul li a:hover {
  width: 95%;
  padding: 2.5%;
  text-decoration: none;
  color: #000;
  display: block;
}
.content-list:first-child ul li .content-info {
  float: right;
  width: calc(100% - 150px);
}
.content-list:first-child ul li .content-info .content-title {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
}
.content-list:first-child ul li .content-info .sub-title {
  display: none;
}
.content-list:first-child ul li .content-info .date {
  display: none;
}
.content-list:first-child ul li .content-info .content-text {
  display: none;
}
.content-list:first-child ul li .content-info .publisher {
  position: absolute;
  bottom: 5px;
}
.content-list:first-child ul li .content-info .new {
  position: absolute;
  right: 5px;
  bottom: 10px;
  padding: 0 10px;
  border-radius: 20px;
  color: #fff;
  background: #1ca196;
}
/* 広告用 */
.content-list ul li.pr{padding-bottom:2.5%;}
.content-list ul li.pr .title {
  background-color:transparent;
  font-size:1.8rem;
  font-weight:bold;
  width:calc(100% - 170px) !important;
  position:absolute !important;
  top:10px;
  left:160px;
  line-height:1.2;
  color:#000;
}
/* 検索ボックス placeholder */
input:placeholder {
  color: #fff;
}
input::-webkit-input-placeholder {
  color: #fff;
}
input:-moz-placeholder {
  color: #fff;
}
/* 広告 */
.web-advertising {
  padding: 10px;
  margin-bottom: 15px;
  text-align:center;
}
.web-advertising img {width:auto;max-width:300px;}
.blank-ad {
  width:auto;
  margin:20px auto;
  max-width:300px;
}

.article-text-ad {
  background:#ededed;
  margin:1em;
  padding:.5em;
}
.article-text-ad ul li {
  font-size:.9em;
}
.article-text-ad ul li:first-child {
  margin-bottom:.5em;
}
.article-text-ad ul li div,
.article-text-ad ul li a {display:inline;color:#000;text-decoration:none;}

.billbord-video.index {margin-bottom:1em;}


/*トップ・人気記事ボタン*/
.redirect-btn {
  width: 93%;
  border: solid 1px #ccc;
  border-radius: 10px;
  padding: 15px 0;
  margin: 10px auto;
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  background: linear-gradient(#fff,#aaa);
}
.redirect-btn:link,
.redirect-btn:active,
.redirect-btn:visited,
.redirect-btn:hover {
  text-decoration: none;
  color: #000;
}
/* 著者名 */
.publisher {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: #b5b6b6;
  background: none;
}
/* header ======================================================*/
header {
  max-height: 91px;
}
.header-tab {
  display: none;
}
.header-content-wrapper {
  /*width: 95%;
  height: 62px;
  margin: 10px auto;*/
  margin:10px;
}
@media screen and (orientation:landscape) {
  .header-content-wrapper {
    height: auto;
  }
}
.header-content {
  /*overflow: hidden;*/
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

/* ヘッダーロゴ */

.header-content .logo {
  width: 65%;
  max-height: 91px;
}
@media screen and (orientation:landscape) {
  .header-content .logo {
    width: 60%;
    max-height: 91px;
  }
}
.header-content .logo img {
  max-height: 91px;
  margin-top: 5px;
  object-fit: contain;
}
/* ヘッダー・日付 */
.header-content .date {
  /*float: left;*/
  width: 20%;
  /*margin: 20px 0 0 1%;*/
  font-size: 4vw;
  text-align: center;
  display: block;
}
/* ヘッダーメニューボタン */
.header-content .menu-btn {
  width: 42px;
  border-radius: 10px;
  font-size: 0;
}
.header-content .menu-btn span {
  padding-top: 38px;
  background: url(/common/images/v5/smartphone/menu-open.png) center center no-repeat;
  background-size: 28px 22px;
  cursor: pointer;
  display: block;
}
/* ヘッダーメニュー */
 .header-content .menu {
  position: absolute;
  top: 48px;
  right: -10px;
  width: 70%;
  background: #656464;
  z-index: 2;
  display: none;
 }
@media screen and (orientation:landscape) {
  .header-content .menu {
    position: absolute;
    top: 90px;
    right: -10px;
    width: 70%;
    background: #656464;
    z-index: 1;
    display: none;
  }
}
/* iphone6 */
@media screen and (min-width: 375px) and (max-width: 413px) {
  .header-content .menu {top:48px;}
}
/* iphone6plus */
@media screen and (min-width: 414px) and (max-width: 500px) {
 .header-content .menu {top:48px;}
}
.header-content .menu li {
  width: 85%;
  border-bottom : 1px #777 solid;
  margin: auto;
  overflow: hidden;
}
/* 検索ボックス */
.header-content .menu li .input-box {
  width: calc(93% - 22px);
  height: 25px;
  padding-left: 22px;
  margin : 10px 0;
  border-radius: 15px;
  color: #fff;
  background: #888889 url(/common/wedge/images/v1/common/search.png) 5px center no-repeat;
  background-size: 14px;
}
/* 検索ボックス・プレースホルダー */
.header-content .menu li .input-box:placeholder {
  color: #b6b7b7;
}
.header-content .menu li .input-box::-webkit-input-placeholder {
  color: #b6b7b7;
}
.header-content .menu li .input-box:-moz-placeholder {
  padding-left: 20px;
  color: #b6b7b7;
}
.header-content .menu li a:link,
.header-content .menu li a:active,
.header-content .menu li a:visited,
.header-content .menu li a:hover {
  padding: 10px 0;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  text-decoration: none;
}
.header-content .menu li:nth-child(13),
.header-content .menu li:nth-child(14),
.header-content .menu li:nth-child(15) {
  background: url(/common/wedge/images/v1/common/double-arrow-next.png) 130px center no-repeat;
  background-size: 15px;
}
/* メニュー・SNSアイコン */
.header-content .menu li:last-child a {
  width: 60px;
  padding-top: 50px; /* sns-iconの成形 */
  border-radius: 50%;
  display: block;
}
/* ツイッター */
.header-content .menu li .x-icon {
  float: left;
  margin: 15px 0 15px 30px;
  background: #b4b5b5 url(/common/wedge/images/v1/common/icon-x-w.png) center center no-repeat;
  background-size: 35px;
}
.header-content .menu li .twitter-icon:hover {
  background: #33a1d2 url(/common/wedge/images/v1/common/twitter-sp.png) center center no-repeat;
  background-size: 40px;
}
/* フェイスブック */
.header-content .menu li .facebook-icon {
  float: right;
  margin: 15px 30px 15px 0;
  background: #b4b5b5 url(/common/wedge/images/v1/common/facebook-sp.png) center center no-repeat;
  background-size: 40px;
}
.header-content .menu li .facebook-icon:hover {
  background: #1a499d url(/common/wedge/images/v1/common/facebook-sp.png) center center no-repeat;
  background-size: 40px;
}
.header-content .sns-icons {
  display: none;
}
/* iphone5 */
@media screen and (max-width: 320px) {
  .header-content .menu li .twitter-icon {margin: 15px 0 15px 15px;}
  .header-content .menu li .facebook-icon {margin: 15px 15px 15px 0;}
}
/* top_main ======================================================*/
.main {
  width: 100%;
}
.top-nav-wrapper {
  clear: both;
}
.top-nav-wrapper {
  background: #1c2a55;
}
/* トップ・ナビゲーション */
.top-nav {
  width: 95%;
  margin: auto;
  font-size: 18px;
  font-size: 1.8rem;
}
.top-nav nav ul li {
  width: 26%;
  padding: 5px 0;
  text-align: center;
  display: inline-block;
}
.top-nav nav ul li a:link,
.top-nav nav ul li a:active,
.top-nav nav ul li a:visited,
.top-nav nav ul li a:hover {
  color: #fff;
  text-decoration: none;
}
.top-nav nav ul .active {
  background: #1a9f97;
  margin: -8px 0 -10px 0;
  padding: 8px 0 10px 0;
}
/* 新着記事 */
.new-topics {
  margin-bottom: 20px;
  overflow: hidden;
}
/* 新着記事先頭 */
.new-topics .content-list ul li:first-child {
  position: relative;
  height: auto;
  padding: 0;
}
.new-topics .content-list ul li:first-child a:link,
.new-topics .content-list ul li:first-child a:active,
.new-topics .content-list ul li:first-child a:visited,
.new-topics .content-list ul li:first-child a:hover {
  width: 100%;
  padding: 0;
  color: #fff;
  text-decoration: none;
}
.new-topics .content-list ul li:first-child .content-img {
  position: relative;
  width: 100%;
  height: 240px;
  background: #eee;
}
.new-topics .content-list ul li:first-child img {
  float: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  margin: auto;
}
.new-topics .content-list ul li:first-child .new {
  position: absolute;
  right: 5%;
  bottom: 5px;
  width: 50px;
  font-size: 12px;
  font-size: 1.2rem;
  border-radius: 10px;
  background: #15a490;
  color: #fff;
}
.new-topics .content-list ul li:first-child .title {
  float: none;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 96%;
  padding: 5px 2% 25px 2%;
  border-radius: 0;
  background: rgba(0, 0, 0, .6);
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}
.new-topics .content-list ul li:first-child .provider {
  position: absolute;
  left: 0;
  bottom: 3px;
  margin-left: 8px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #b5b6b6;
  background: none;
  text-align: center;
}
/* 新着記事一覧 */
.new-topics .content-list li {
  position: relative;
  border-bottom: solid 1px #ccc;
}
/* 記事画像 */
.new-topics .content-list ul li .content-img {
  position: relative;
  float: left;
  width: 142px;
  height: 95px;
  overflow:hidden;
}
.new-topics .content-list ul li .content-img.--movie {
  position:relative;
}
.new-topics .content-list ul li .content-img.--movie::before,
.new-topics .content-list ul li .content-img.--movie::after{
  content:"";
  position:absolute;
}
.new-topics .content-list ul li .content-img.--movie::before{
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.3);
  z-index:1;
  top:0;
  left:0;
}
.new-topics .content-list ul li .content-img.--movie::after{
  background-image: url('/common/images/v5/common/icon-play-new.png');
  background-size:30px;
  width:30px;
  height:30px;
  top:0; left:0; right:0; bottom:0;
  margin:auto;
  z-index:5;
}

.new-topics .content-list ul li .content-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width:100%;
  width: auto;
  height: auto;
  margin: auto;
}

/* 記事タイトル */
.new-topics .content-list ul li .title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  border-radius: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #000;
  background: none;
  text-align: left;
  line-height: 1.2;
}
.new-topics .content-list ul li .provider {
  position: absolute;
  bottom: 10px;
  left: 158px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #b5b6b6;
}
.new-topics .content-list ul li a .new {
  position:absolute;
  right:10px;
  bottom:10px;
  padding:0 10px;
  font-size: 1.2rem;
  border-radius: 10px;
  background: #15a490;
  color: #fff;
  text-align: center;
}
.content-list ul li .pr {
position:absolute;
bottom:10px;
right:10px;
font-size: 12px;
background-color:#15a490;
color:#fff;
text-align:center;
border-radius:10px;
padding:0 10px;
}
/* もっと見るボタン */
.new-topics .content-list ul li a:link,
.new-topics .content-list ul li a:active,
.new-topics .content-list ul li a:visited,
.new-topics .content-list ul li a:hover {
  width: 95%;
  height: 100%;
  display: block;
  overflow: hidden;
  color: #000;
  text-decoration: none;
}
.new-topics .more-load-btn:link,
.new-topics .more-load-btn:active,
.new-topics .more-load-btn:visited,
.new-topics .more-load-btn:hover {
  float: right;
  width: 100px;
  padding: 6px 4px 6px 18px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background: #888889 url(/common/wedge/images/v1/common/double-arrow-next.png) 6px 11px no-repeat;
  background-size: 13px;
}
.article-list {
  display: none;
}
.public-relations {
  display: none;
}
.send-page-button {
  display: none;
}
/* 特集記事タイトル */
.feature-content .title {
  overflow: hidden;
  background: #1e2a55;
}
.feature-content .title h2 {
  float: left;
  border-left: solid 10px #1ca092;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 5px;
}
.feature-content .title .more-load-btn {
  display : none;
}
.slide-controller {
  display: none;
}
.feature-content {
  overflow: hidden;
}
/* 特集記事・コンテンツ */
.feature-content .content-list {
  display: block;
}
/* 特集記事一覧 */
.feature-content .content-list ul li {
  overflow: hidden;
  border-bottom: solid 1px #ccc;
}
/* 特集記事先頭 */
.feature-content .content-list ul li:first-child {
  padding: 0;
  border: none;
}
.feature-content .content-list ul li:first-child .content-img {
  float: none;
  position: relative;
  width: 100%;
  height: 240px;
  overflow:hidden;

}
.feature-content .content-list ul li:first-child .title {
  float: none;
  width: 94%;
  padding: 5px 3%;
  font-size: 18px;
  font-size: 1.8rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #fff;
  background: #000;
  display: block;
}
/* 特集記事・画像 */
.feature-content .content-list ul li .content-img {
  position: relative;
  float: left;
  width: 142px;
  background: #eee;
  height: 95px;
  overflow:hidden;
}
.feature-content .content-list ul li .content-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
  margin: auto;
}
/* 特集記事タイトル */
.feature-content .content-list ul li .title {
  float: right;
  width: calc(100% - 150px);
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  background: none;
}
.feature-content .content-list ul li:first-child a {
  padding: 0;
}
.feature-content .content-list ul li a {
  padding: 10px;
  width: auto;
}
.feature-content .content-list ul li a:link,
.feature-content .content-list ul li a:active,
.feature-content .content-list ul li a:visited,
.feature-content .content-list ul li a:hover {
  color: #000;
  text-decoration: none;
}
.feature-content + .web-advertising {
  display: none;
}
.book-list-wrapper {
  display: none;
}
.text-advertising {
  display: none;
}
.feature-content .content-list .more-load-btn:link,
.feature-content .content-list .more-load-btn:active,
.feature-content .content-list .more-load-btn:visited,
.feature-content .content-list .more-load-btn:hover {
  float: right;
  width: 25%;
  padding: 6px 4px 6px 20px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  background: #888889 url(/common/wedge/images/v1/common/double-arrow-next.png) 13px 11px no-repeat;
  background-size: 13px;
  text-decoration: none;
}

/* article-main ======================================================*/

/* 記事ヘッダー・記事の名前 */
.article-header .article-name a {
  width: calc(100% - 20px);
  padding: 5px 10px;
  margin: 1px 0 10px 0;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  background: #1c2a55;
  text-decoration:none;
}
/* 記事情報 */
.article-info {
  padding: 10px;
  position: relative;
}
/* 記事情報・タイトル */
.article-info .title {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
}
/* 記事情報・サブタイトル */
.article-info .sub-title {
  font-size: 14px;
  font-size: 1.4rem;
  color: #898989;
}
/* 著者 */
.article-info .author {
  margin-bottom: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  position:relative;
}
.article-info .author a {
  display: inline;
  color: #1d3c99;
}
.article-info .author span {
  font-weight: normal;
}

/* 著者プロフィール詳細 */
.article-info .author-prof-detail {
  display: none;
  border: 1px #848484 solid;
  background: #fff;
  padding: 5px;
  z-index: 1;
  position: absolute;
  top: 28px;
  left: 0;
  width:100%;
  box-sizing:border-box;
}
.article-info .author-prof-detail .author-name {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
}
.article-info .author-prof-detail .author-name span {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
}
.article-info .author-prof-detail .author-affiliation {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
}
.article-info .author-prof-detail .author-history {
  font-size: 11px;
  font-size: 1.1rem;
  color: #848484;
  padding-top: 3px;
}

/* 記事・日付 */
.article-header .article-service {
  padding: 5px 10px;
  border-style: solid none;
  border-width: 1px;
  border-color: #808080;
  position: relative;
}
.article-header .article-service .date {
  float: right;
}
.article-header .article-service .fb-share-button {
  float: left;
}

/* selection pr */
.article-header .date .pr-badge {
 background: #888;
 color: #fff;
 padding: 0 2%;
 /*position: absolute;
 left: 15px;*/
 margin-right:.5em;
}
/* サマリー */
.summary {
  width: 90%;
  margin: 0 auto 10px auto;
}
.summary .more-load-btn:link,
.summary .more-load-btn:active,
.summary .more-load-btn:hover,
.summary .more-load-btn:visited {
    width: 100%;
    border: solid 1px #ccc;
    border-radius: 10px;
    padding: 15px 0;
    margin: 15px auto;
    font-size: 20px;
    font-size: 2rem;
    color: #000;
    text-align: center;
    background: linear-gradient(#fff,#aaa);
    cursor: pointer;
    text-decoration: none;
}
/* 記事本文 */
.article-body {
  width: 98%;
  margin: auto;
}
:not(.article-body p:first-child) {
//  display: none;
}
.article-body h4 {line-height:130%;}
/* 囲み記事 */
.article-body .boxed-article {
  margin: 0 1%;
}
/* 記事画像 */
.article-body .figure-center,
.article-body .figure,
.article-body .figure-right,
.article-body .figure-left {
  margin:1em auto;
  padding:0;
  float:none;
  text-align:center;
  max-width: 95%;
}
/* iphone5 */
@media screen and (max-width: 320px) {
.article-body .figure-center,
.article-body .figure,
.article-body .figure-right,
.article-body .figure-left {max-width:300px;}
}

/* iphone6 */
@media screen and (min-width: 375px) and (max-width: 413px) {
.article-body .figure-center,
.article-body .figure,
.article-body .figure-right,
.article-body .figure-left {max-width:360px;}
}
/* iphone6plus */
@media screen and (min-width: 414px) and (max-width: 500px) {
.article-body .figure-center,
.article-body .figure,
.article-body .figure-right,
.article-body .figure-left {max-width:380px;}
}
.article-body .figure-center img,
.article-body .figure img,
.article-body .figure-right img,
.article-body .figure-left img {width:100%;height:auto;}

.article-body .figure-center span,
.article-body .figure span,
.article-body .figure-right span,
.article-body .figure-left span {
  padding:5px;
  display:block;
  fong-size:.9em;
  text-align:left;
  background-color:#eee;
}
/* youtubeと動画 */
.article-body .movie,
.article-body .youtube {position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin-bottom:15px;}
.article-body .movie iframe,
.article-body .youtube iframe {position:absolute;top:0;left:0;width:100%;height:100%;}

/* 記事文章 */
.article-body p {
  margin: 0 2% 24px 2%;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}
.article-body h3 {
  margin: 0 2% 24px 2%;
  font-size: 18px;
  font-size: 1.8rem;
}
.article-body .figure-center span {
  font-size: 12px;
  font-size: 1.2rem;
}

.article-body em{
 font-style:italic;
}
/* 次の記事へ */
.next-page {
  margin: 0 3% 30px 3%;
  background: #bde0d5;
}
.next-page p {
  padding: 10px 2.5%;
  font-weight: bold;
  text-align: center;
}
.next-page a:link,
.next-page a:active,
.next-page a:visited,
.next-page a:hover {
  width: 95%;
  padding: 10px 2.5%;
  text-decoration: none;
  color: #000;
}
.next-page span {
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
}
.next-page span:last-child {
  font-weight: bold;
}
:not(.article-service pr-list) {
//  display: none;
}
/* 記事ページ 編集部おすすめの関連記事 */
.editor-recommend {margin:0 1em 2em;}
.editor-recommend .heading {background:#1e2a55;color:#fff;font-size:1.8rem;padding:.2em 0 .2em .7em;margin-bottom:1em;border-left:solid 10px #1ca092;}
.editor-recommend ul li {border-bottom:dotted 1px #ccc;padding:.2em 0 .2em 1em;position:relative;}
.editor-recommend ul li::before {content:"・";display:inline-block;position:absolute;top:5px;left:0;}
.editor-recommend ul li a {color:#444;text-decoration:none;display:block;}
.editor-recommend ul li.pr div,
.editor-recommend ul li.pr a,
.editor-recommend ul li.pr span {display:inline;}
/* 記事ページ・ページネーション */
.article-service .pagination {
  width: 90%;
  margin: 0 auto 25px auto;
  padding: 0 8%;
  overflow: hidden;
}
.article-service .pagination .current {
  width: 19%;
  background: #fff;
  color: #a9aaaa;
  border: solid 1px;
  padding: 11px 0;
  overflow: hidden;
}
.article-service .pagination span {
  width: 20%;
  margin: 0 1%;
  font-size: 28px;
  text-align: center;
  display: inline-block;
}
.article-service .pagination a:link,
.article-service .pagination a:active,
.article-service .pagination a:visited,
.article-service .pagination a:hover {
  padding: 12px 0;
  text-decoration: none;
  color: #fff;
  background: #a9aaaa;
  display: block;
}
.article-service .pagination .number:last-child a {
 padding: 33px 0;
 color:  #a9aaaa;
 background: #a9aaaa url(/common/wedge/images/v1/common/bright-arrow.png) center center no-repeat;
 background-size: 25%;
}
/* グレーのボックス */
.article-service .gray-box {
  width: 94%;
  padding-top: 250px;
  margin: 0 auto 20px auto;
  background: #a9aaaa;
}
.article-service .pr-list {
  border-width: 1px;
  border-color: #ccc;
  border-style: solid none;
}
/* 記事ページ・snsアイコン */
.article-service .sns-icons {
  width: 94%;
  margin: 20px auto;
}
/* ツイッターアイコン */
.article-service .sns-icons ul li {
  width: 30%;
  border-radius: 6px;
  margin: 0 3%;
  display: inline-block;
  background: #000 url(/common/wedge/images/v1/common/icon-x-w.png) center 10px no-repeat;
  background-size: 30px 31px;
}
/* フェイスブックアイコン */
.article-service .sns-icons ul li:first-child {
  margin: 0;
  background: #3b5998 url(/common/wedge/images/v1/common/facebook-sp.png) center 10px no-repeat;
  background-size: 35px;
}
/* ラインアイコン */
.article-service .sns-icons ul li:last-child {
  margin: 0;
  background: #00c300 url(/common/wedge/images/v1/common/line.png) center -10px no-repeat;
  background-size: contain;
}
.article-service .sns-icons ul li a:link,
.article-service .sns-icons ul li a:active,
.article-service .sns-icons ul li a:visited,
.article-service .sns-icons ul li a:hover {
  width: 100%;
  color: #fff;
  text-align: center;
  display: block;
  text-decoration: none;
  padding: 55px 0 5px 0;
}
/* バックナンバー */
.back-number {
  width: 93%;
  border: solid 1px #ccc;
  border-radius: 10px;
  margin: 0 auto 1.5em;
  text-align: center;
  background: linear-gradient(#fff,#aaa);
}
.back-number a:link,
.back-number a:active,
.back-number a:visited,
.back-number a:hover {
  padding: 15px 0;
  font-size: 20px;
  text-decoration: none;
  color: #000;
}
.article-pr {
  display: none;
}
/* 関連記事 */
.related-article {
  position: relative;
}
/* 関連記事・タイトル */
.related-article .title {
  overflow: hidden;
  background: #1e2a55;
}
.related-article .title span {
  float: left;
  border-left: solid 10px #1ca092;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
}
.related-article .recommended {
  position: absolute;
  bottom: 0;
  right: 2%;
}
.related-article .article-list {
  display: block;
  padding-bottom: 25px;
  margin-bottom: 30px;
}
/* 記事一覧 */
.related-article .article-list li {
  border-bottom: solid 1px #ccc;
  overflow: hidden;
}
.related-article .article-list a:link,
.related-article .article-list a:visited,
.related-article .article-list a:active,
.related-article .article-list a:hover {
  text-decoration: none;
  color: #000;
}
/* 記事画像 */
.related-article .article-list .content-list ul li .content-img {
  position: relative;
  float: left;
  width: 142px;
  padding-top: 95px;
  background: #eee;
}
.related-article .article-list .content-list ul li .content-img img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
/* 記事タイトル */
.related-article .article-list .content-list ul li .content-title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold;
}
.recommend .title {
  overflow: hidden;
  background: #1e2a55;
}
.recommend .title span {
  float: left;
  border-left: solid 10px #1ca092;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}
/* オススメ記事 */
.recommend {
  position: relative;
}
.recommend .title .recommended {
  position: absolute;
  bottom: 0;
  right: 2%;
}
.recommend .article-list {
  display: block;
  padding-bottom: 25px;
  margin-bottom: 20px;
}
/* オススメ記事リスト */
.recommend .article-list ul li {
  border-bottom: solid 1px #ccc;
  overflow: hidden;
}
.recommend .article-list ul li a:link,
.recommend .article-list ul li a:visited,
.recommend .article-list ul li a:active,
.recommend .article-list ul li a:hover {
  text-decoration: none;
  color: #000;
}
/* 記事画像 */
.recommend .article-list ul li .content-img {
  position: relative;
  float: left;
  width: 143px;
  padding-top: 96px;
  background: #eee;
}
.recommend .article-list ul li .content-img img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
/* 記事タイトル */
.recommend .article-list ul li .content-title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.recommend + .web-advertising {
  display: none;
}
.web-advertising + .new-article {
  display: none;
}
.new-article + .feature-content {
  display: none;
}
/* newtopiclist-main ======================================================*/
.main-top-space .web-advertising:first-child {
  display: none;
}
/* 新着記事リスト・タイトル */
.new-topic-list .title {
  overflow: hidden;
  background: #1e2a55;
}
.new-topic-list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}
.new-topic-list .title a {
  display: none;
}
.new-topic-list .content-list ul li .date {
  display: none;
}
/* genrelist-main ======================================================*/
/* ジャンルリスト・タイトル */
.genre-list .title {
  overflow: hidden;
  background: #1e2a55;
}
.genre-list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
}
.genre-list .content-list ul li .date {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 138px;
  padding-left: 5px;
  display: block;
  color: #fff;
  background: rgba(0,0,0,.5);
}
/* bbclist-main ======================================================*/

.bbc_list .title {
  overflow: hidden;
  background: #1e2a55;
}
.bbc_list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
}
.bbc_list .title span {
  display: none;
}
.bbc_list .description {
  padding: 10px;
}
.bbc_list .description .text {
  margin-top: 10px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}
.bbc_list .content-list ul li .content-img .date {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 138px;
  padding-left: 5px;
  display: block;
  color: #fff;
  background: rgba(0,0,0,.5);
}

/* columnlist-main ======================================================*/
/* コラムリスト・タイトル */
.column-list .title {
  overflow: hidden;
  background: #1e2a55;
}
.column-list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
}
.column-list .title span {
  display: none;
}
/* 記事概要 */
.column-list .description {
  padding: 10px;
}
.column-list .description p {
  margin-top: 10px;
  font-size: 16px;
  font-size: 1.6rem;
}
/* 記事概要・画像 */
.column-list .content-list ul li .content-img .date {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 138px;
  padding-left: 5px;
  display: block;
  color: #fff;
  background: rgba(0,0,0,.5);
}
/* tokushulist-main ======================================================*/
/* 特集リスト・タイトル */
.tokushu-list .title {
  background: #1e2a55;
  overflow: hidden;
  margin-bottom: 20px;
}
.tokushu-list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}
.tokushu-list .content-list ul li {
  padding: 0;
  margin-bottom:1em;
}
/* リスト広告 */
.tokushu-list .content-list ul .pr-list {
  position: relative;
  border-width: 1px;
  border-color: #ccc;
  border-style: solid none;
  margin-bottom: 20px;
  overflow: hidden;
}
.tokushu-list .content-list ul .pr-list .content-img {
  float: left;
  position: relative;
  width: 142px;
  padding-top: 95px;
  background: #eee;
}
.tokushu-list .content-list ul .pr-list .title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  border-radius: 0;
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: bold;
  color: #000;
  background: none;
  text-align: left;
  line-height: 1.2;
}
/* 特集リスト・記事画像 */
.tokushu-list .content-list ul li .content-img {
  position: relative;
  float: none;
  width: 100%;
  height: 0;
  padding-top: 66.5%;
}
.tokushu-list .content-list ul li .content-img .content-title {
  position: absolute;
  bottom: 0;
  width: 95%;
  height: 26px;
  padding: 2.5%;
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  background: rgba(0,0,0,.7);
}
/* 特集リスト・記事情報 */
.tokushu-list .content-list ul li .content-info {
  position: relative;
  float: none;
  width: 100%;
  margin: auto;
}
.tokushu-list .content-list ul li .content-info .more-load-btn {
  display: none;
}
.tokushu-list .content-list ul li .content-info .article-title ul li {
  border: none;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}
.tokushu-list .content-list ul li .content-info .article-title ul li a:link,
.tokushu-list .content-list ul li .content-info .article-title ul li a:active,
.tokushu-list .content-list ul li .content-info .article-title ul li a:visited,
.tokushu-list .content-list ul li .content-info .article-title ul li a:hover {
  width: auto;
  padding: 10px 5px 0 25px;
  background: url(/common/wedge/images/v1/common/sp-gray-arrow.png) 10px 16px no-repeat;
  background-size: 10px;
  display: block;
}
.tokushu-list .content-list ul li .content-info .article-title ul li:last-child {
  margin-bottom: 15px;
}

/* tokushulist-article-main ======================================================*/
/* 特集記事リスト・概要 */
.tokushu-article-list .description {
  padding: 10px;
}
/* 特集記事リスト・タイトル */
.tokushu-article-list .title {
  width: 95%;
  padding: 3px 2.5%;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  overflow: hidden;
  background: #1e2a55;
}
.tokushu-article-list .content-list ul li.pr .title {padding:0;}
/* 特集記事リスト・テキスト */
.tokushu-article-list .text {
  margin-top: 10px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}
.tokushu-article-list .content-list ul li .content-img .date {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 138px;
  padding-left: 5px;
  display: block;
  color: #fff;
  background: rgba(0,0,0,.5);
}
/* 特集記事リスト・リスト広告 */
.tokushu-article-list .content-list ul .pr-list .title {
  position: static;
  float: right;
  width: calc(100% - 150px);
  border-radius: 0;
  padding: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #000;
  background: none;
  text-align: left;
  line-height: 1.2;
}
/* searchlist-main ======================================================*/
/* 検索結果リスト・タイトル */
.search-list .title {
  overflow: hidden;
  background: #1e2a55;
}
.search-list .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
}
/* 検索結果リスト・検索ボックス */
.search-list .input-box {
  width: calc(90% - 25px);
  height: 25px;
  padding-left: 25px;
  margin: 10px 4%;
  border-radius: 15px;
  background: #c9c9cb url(/common/wedge/images/v1/common/search.png) 5px center no-repeat;
  background-size: 14px;
}
.search-list .content-list ul li .content-img .date {
  display: none;
}
/* ranking-main ======================================================*/
.main-top-space .new-article {
  display: none;
}
.main-top-space .feature-content {
  display: none;
}
/* ランキング・タイトル */
.ranking-body .title {
  background: #1e2a55;
  overflow: hidden;
}
.ranking-body .title h2 {
  float: left;
  padding: 3px 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}
.ranking-body .pr-list .title {
  background: none;
}
/* ランキング・タブ */
.ranking-body .rank-tab {
  border-bottom: 1px #625c5b solid;
  margin-top: 10px;
  text-align: center;
}
.ranking-body .rank-tab li {
  display: inline-block;
  position: relative;
  width: 19%;
  height: 0;
  padding-top: 3px;
  border-left: solid 2vw transparent; /*画面サイズによってborderのサイズを可変にしたいのでvwを使用*/
  border-right: solid 2vw transparent;
  border-bottom: solid 30px #a3a3a3;
  border-radius: 17px 17px 0 0;
  font-size: 8px;
  font-size: .8rem;
  color: #fff;
  cursor: pointer;
}
.ranking-body .rank-tab .active,
.ranking-body .rank-tab li:hover {
  border-bottom: solid 30px #14ad9b;
  color: #fff;
}
.ranking-body .rank-tab li .tab-text {
  margin: 5px 0 0 1%;
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
}
/* ランキング・タブコンテンツ */
.rank-tabcontent {
  clear: both;
  margin-bottom: 10px;
  margin: auto;
  display: none;
}
.rank-tabcontent.active {
  display: block;
}
..rank-tabcontent .content {
  margin-bottom: 10px;
}
/* ランキング・記事情報 */
.rank-tabcontent ul li .article-info {
  position: relative;
  border-bottom: 1px solid #ccc;
  overflow: hidden;
  padding: 0;
}
.rank-tabcontent .content ul li .article-info a:link,
.rank-tabcontent .content ul li .article-info a:visited,
.rank-tabcontent .content ul li .article-info a:active,
.rank-tabcontent .content ul li .article-info a:hover {
  width: 95%;
  padding: 10px;
  text-decoration: none;
  color: #000;
  display: block;
}
/* ランキング・ランク */
.rank-tabcontent .content ul li .article-info .rank {
  position: static;
  float: left;
  width: 30px;
  padding: 19px 0;
  margin: 5px 0 1px 0;
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  background: #9f9fa0;
  display: block;
  text-align: center;
  font-family: Garamond;
}

.rank-tabcontent .content:first-child ul li:nth-child(-n+3) .article-info .rank {
  background: #8e8478;
}
/* ランキング・記事画像 */
.rank-tabcontent .content ul li .article-info .content-img {
  position: relative;
  float: left;
  width: 100px;
  height: 67px;
  margin: 5px 0 0 8px;
  background: #eee;
  overflow:hidden;
  display:block;
}
.rank-tabcontent .content ul li .article-info .content-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
  margin: auto;
}
.rank-tabcontent .content ul li .article-info .content-img .date {
  position: absolute;
  bottom: 0;
  left: 0;
  right :0;
  padding-left: 5px;
  display: block;
  color: #fff;
  background: rgba(0,0,0,.5);
}
/* ランキング・記事タイトル */
.rank-tabcontent .content ul li .article-info .content-title {
  float: right;
  width: calc(100% - 161px);
  padding-top: 5px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
}
.rank-tabcontent .content ul li .article-info .sub-title {
  display: none;
}
.rank-tabcontent .content ul li .article-info .date {
  display: none;
}
/* ランキング・出版社 */
.rank-tabcontent .content ul li .article-info .publisher {
  position: absolute;
  bottom: 5px;
  left: 170px;
  padding: 0;
  text-align: left;
  background: none;
  font-size: 14px;
  font-size: 1.4rem;
  color: #b5b6b6;
  background: none;
}
.rank-tabcontent .content ul li .article-info span {
  float: none;
  position: absolute;
  bottom: 25px;
  right: 2%;
  padding-left: 18px;
  color: #000;
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  background: #fff url(/common/wedge/images/v1/common/good.png) no-repeat left center;
}
.rank-tabcontent .annotation {
  padding: 5px 10px;
  font-size: 16px;
  font-size: 1.6rem;
}
/* ランキング内広告 */
.rank-tabcontent .content ul li.prc {
padding:10px;
position:relative;
border-bottom:solid 1px #ccc;
}
.rank-tabcontent .content ul li.prc::after {
content:"";
display:block:
clear:both;
}
.rank-tabcontent .content ul li.prc a {color:#000;text-decoration:none;}
.rank-tabcontent .content ul li.prc .content-img {
width:145px;
float:left;
}
.rank-tabcontent .content ul li.prc .title {
background-color:transparent;
font-weight:bold;
font-size:1.8rem;
position:absolute;
top:10px;
left:160px;
width:calc(100% - 170px) !important;
line-height:1.2;
}
.rank-tabcontent .content ul li.prc .pr {
  width: 30px;
  font-size: 12px;
  font-size: 1.2rem;
  background: #898989;
  color: #fff;
  text-align: center;
  position:absolute;
  right:10px;
  bottom:10px;
}
/* selection ======================================================*/
.sidebar.selection {margin:1em 5%;}

.sidebar.selection .rectangle,
.sidebar.selection .textdata,
.sidebar.selection .inquiry,
.sidebar.selection .freespace {margin-bottom:1em;}

.sidebar.selection .inquiry a {display: inline;}
.sidebar.selection .inquiry .detail a {display: inline;word-break:break-all;}

.sidebar.selection .inquiry {border:solid 1px #8d837a;}
.sidebar.selection .inquiry .heading {color:#fff;background-color:#9e9b9b;padding:5px;font-weight:bold;}
.sidebar.selection .inquiry .detail {padding:10px;}
.sidebar.selection .inquiry .detail .company {font-weight:bold;font-size:16px;}

.sidebar.selection .rectangle{text-align:center;}
.sidebar.selection .rectangle img{width:auto;max-width:100%;}
.article-name.selection{background:#eee;padding:.3em .8em;font-weight:bold;}

/* footer ======================================================*/

footer {
  margin-top: 20px;
  padding-bottom:100px;
}
.footer-content {
  position: relative;
}
.corp-name {
  display: none;
}
/* フッター・メルマガ登録 */
.footer-mail-maga-box {
  float: left;
  width: 45%;
  padding: 0 2%;
  margin-left: 2%;
  border: solid 1px;
  border-radius: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  background: #bfbfbf;
  text-align: center;
  cursor: pointer;
  line-height:62px;
}
.footer-mail-maga-box:hover {
  background: #16a196;
}
.footer-mail-maga-box a:link,
.footer-mail-maga-box a:active,
.footer-mail-maga-box a:visited,
.footer-mail-maga-box a:hover {
  text-decoration: none;
  color: #fff;
}
/* フッター・SNSアイコン */
.footer-sns-icons {
  float: right;
  width: 45%;
  padding-right: 10px;
  margin-bottom: 10px;
  text-align: right;

}
.footer-sns-icons ul li {
  display: inline-block;
}
.footer-sns-icons ul li a {
  width: 65px;
  padding-top: 65px;
  border-radius: 50%;
  cursor: pointer;
  background-color:#b7b7b7;
  background-repeat:no-repeat;
  background-position:center;
}
/* フッター・ツイッター */
.footer-sns-icons ul .footer-twitter-icon a {
  background-image: url('/common/wedge/images/v1/common/icon-x-w.png');
  margin-right: 3%;
}
/* フッター・フェイスブック */
.footer-sns-icons ul .footer-fb-icon a {
  background-image: url('/common/wedge/images/v1/common/facebook-sp.png');
  background-size: 35px 40px;
}
.footer-sns-icons ul .footer-fb-icon:hover a {
  background-color: #1a499d;
}
.footer-sns-icons ul .footer-twitter-icon:hover a {
  background-color: #33a1d2;
}
/* フッター・ナビゲーション */
.footer-nav {
  width: 100%;
  padding-top: 5px;
  font-size: 13px;
  font-weight: bold;
  background: #ccc;
  text-align: center;
  clear: both;
}
.footer-nav ul li {
  width: 21%;
  border-right: solid 1px;
  display: inline-block;
}
.footer-nav ul li:last-child {
  width: 28%;
  border: none;
}
.footer-nav ul li a:link,
.footer-nav ul li a:active,
.footer-nav ul li a:visited,
.footer-nav ul li a:hover {
  color: #000;
  text-decoration: none;
}
/* コピーライト */
.copyrite {
  width: 100%;
  padding: 5px 0;
  font-size: 4vw;
  color: #fff;
  text-align: center;
  background: #1d2a54;
}
.footer-content .top-btn {
  position: fixed;
  bottom: 110px;
  right: 10px;
  color: #fff;
  display: none;
}
.footer-content .top-btn a {
  padding-top: 40px;
  width: 40px;
  border-radius: 4px;
  background: rgba(192,192,192,.9) url(/common/wedge/images/v1/common/sp-arrow.png) center center no-repeat;
  background-size: 14px 14px;
}
/* google理マーケティングタグリセット */
iframe[name="google_conversion_frame"] { position: absolute; top: 0; }


/* Wedge ひととき 共通 ======================================================*/
.sp-wedge-top .main,
.sp-hitotoki-top .main,
.sp-wedge-backnumber-detail .main,
.sp-hitotoki-backnumber-detail .main {
  font-size: 0;
}
/* header */
.header-content-wrapper.common {
  padding: 18px 7px 10px 15px;
  margin: 0;
}
.header-content-wrapper.common .header-content .logo {
  float: none;
  width: auto;
  max-height: none;
  display:flex;
  justify-content:space-between;
}
.header-content-wrapper.common .header-content .logo a {
  display: inline-block;
  width: auto;
  overflow: visible;
}
.header-content-wrapper.common .header-content .logo img {
  max-width: 128px;
  max-height: none;
  margin-top: 0;
}
.header-content-wrapper.common .header-content .logo .hitotoki-logo {
  max-width: 100px;
}
.header-content-wrapper.common .header-content .tel-logo {
  max-width: 150px !important;
  margin: 0 1em;
  float: right;
}
.header-content-wrapper.common .header-content .menu-btn span {
    background: url(/common/wedge/images/v1/common/sp-gray-arrow.png) center center no-repeat;
    background-size: 15px 15px;
    transform: scale(-1, 1);
}
.header-content-wrapper.common .header-content .menu .brackets-link a:after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: rotate(45deg);
}
.header-content-wrapper.common .header-content .menu .brackets-link a span:after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: rotate(45deg);
}
.header-content-wrapper.common .header-content .menu li:nth-child(13) {
  background: none;
}
/* sitenavi-menu */
.sitenavi-bar {
  background-color: #231816;
  width: 100%;
  height: 50px;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 0;
}
.sp-wedge-backnumber .sitenavi-bar,
.sp-hitotoki-backnumber .sitenavi-bar,
.sp-wedge-backnumber-detail .sitenavi-bar,
.sp-hitotoki-backnumber-detail .sitenavi-bar {
  margin-bottom: 15px;
}
.sitenavi-content {
  width: calc( 100% / 4 );
  height: 100%;
  font-weight: 400;
  display: block;
  float: left;
  box-sizing: border-box;
}
.sitenavi-content a {
  color: #fff;
  text-align: center;
  position: relative;
  font-size: 1.3rem;
  padding: 5px 0;
  box-sizing: border-box;
}
.sitenavi-content span {
  padding: 2px 0;
  display: block;
}
.sitenavi-content:first-child span {
  border-right: 1px solid #626262;
  padding: 11px 0;
  box-sizing: border-box;
}
.sitenavi-content.sitenavi-subscribe {
  font-weight: 700;
}
.sitenavi-content:last-child {
  border-left: 1px solid #231816;
}
/* footer */
.footer-nav.online ul li{
 width:auto;
 padding:0 7px;
}
.footer-nav.seles {
  padding: 5px;
  text-align:center;
  box-sizing:border-box;
}
.footer-nav.seles span{
  display:inline-block;
  margin:.2em 0;
  padding:0 .5em;
  border-right:solid 1px #000;
}
.footer-nav.seles span:first-child{padding-left:0;}
.footer-nav.seles span:nth-child(4),
.footer-nav.seles span:nth-child(6){border-style:none;}
.footer-nav.seles a{
  display:inline;
  color:#000;
}
/* footer-link */
.footer-link {
  padding: 30px 15px;
  font-size: 0;
}
.footer-link-icon {
  display: inline-block;
  width: calc((100% - 30px) / 2);
  margin-right: 30px;
}
.footer-link-icon:nth-child(2n) {
  margin-right: 0;
}
.footer-link-icon:nth-last-child(-n+2) {
  margin-top: 30px;
}
.footer-link-icon a {
  overflow: visible;
}
/* サブカラム */
#sub-column {
    padding-left: 4%;
    padding-right: 4%;
}
/* content */
.content-box {
  width: 100%;
  background: #eeeeee;
  margin-bottom: 30px;
  height: auto;
  overflow: hidden;
}
.content-area {
  width: 100%;
  padding: 30px 15px;
  box-sizing: border-box;
}
.content-box .content-title,
.inline .content-title {
  height: 36px;
  background: #231816;
  padding-left: 17px;
  position: relative;
  box-sizing: border-box;
}
.content-box .content-title p,
.inline .content-title p {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 36px;
  display: inline-block;
  color: #ffffff;
}
.content-box .content-title p span {
  font-size: 1.4rem;
  font-weight: 400;
  margin-left: 20px;
}
.content-box .content-title .title-backnumber {
  display: inline-block;
  line-height: 13px;
  vertical-align: middle;
  text-align: center;
}
@media screen and (max-width:320px) {
  .content-box .content-title p span {
    padding-left: 5px;
  }
}
.content-box .content-title:before,
.inline .content-title:before {
  content: "";
  display: inline-block;
  border-top: 18px solid #e3001c;
  border-left: 9px solid #e3001c;
  border-bottom: 18px solid transparent;
  border-right: 9px solid transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.content-box .content-title .index-link {
  width: 125px;
  height: 32px;
    font-size: 1.25rem;
    display: inline-block;
    padding-left: 0;
    position: absolute;
    bottom: 0;
    right: 0;
    margin: auto;
    cursor: pointer;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
}
.content-box .content-title .index-link::before{
 content:"";
 display:block;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 32px 20px;
 border-color: transparent transparent #ffffff transparent;
 position:absolute;
 top:0;
 left:-20px;
}
.content-box .content-title .index-link a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
}
.content-box .content-title .index-link p {
  color: #000;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 32px;
}
/* ポップアップ */
.inline {
  display: none;
  height: 100%;
}
#modal-notes {
  background-color: #fff;
}
.inline .content-detail strong,
.inline .notes-detail strong {
  font-weight: 700;
}
.inline .content-detail {
  height: calc(100% - 40px);
  overflow: auto;
  padding: 10px;
  box-sizing: border-box;
  background:#fff;
  -webkit-overflow-scrolling: touch;
}
.feature-frame {
  border: 2px solid #e3001c;
  padding: 36px 15px 18px;
  position: relative;
  display:none;
}
.feature-frame.hitotoki,
.feature-frame.wedge{display:block;}
.frame-title {
  position: absolute;
  top: 0;
  left: 0;
}
.feature-frame.hitotoki{
  margin-bottom:1em;
}
.frame-title p {
  background: #e3001c;
  width: 117px;
  line-height: 27px;
  text-align: center;
  position: relative;
  color:#fff;
}
.frame-title p:after {
  content: "";
  display: inline-block;
  border-top: 14px solid transparent;
  border-left: 5px solid transparent;
  border-bottom: 14px solid #ffffff;
  border-right: 5px solid #ffffff;
  position: absolute;
  top: 0;
  right: 0;
}
.frame-title p b {
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 1px;
}
.feature-frame h2{
 font-size:2.5rem;
 font-weight:bold;
}
.feature-frame .feature-subtitle{
 font-size:1.8rem;
 font-weight:bold;
 margin-bottom:5px;
}
.feature-frame .feature-summary{
 margin-top:1.5em;
}
.feature-frame .tokusyu-reading{
  font-size:14px;
  margin:25px 0;
}
.feature-frame p{
margin-bottom:1em;
}
.feature-frame .point{
  color:#e3001c;
  font-size:1.2rem;
  font-weight:bold;
  margin-bottom:0;
}
.feature-frame .element{
  font-size:1.8rem;
  font-weight:bold;
  margin-bottom:15px;
}
.feature-frame ul{
  margin:15px 0;
}
.feature-frame ul li{
  list-style:none;
  font-size:1.6rem;
  font-weight:bold;
  margin-bottom:10px;
}
.feature-frame ul li a{
  display:inline;
}
.feature-frame ul li::before{
  content:"●";
  color:#b7282c;
}
.feature-detail{
  border-bottom:solid 1px #e5e5e5;
  padding:10px 0;
}
.feature-detail dt{
  font-size:1.2rem;
  color:#666;
  font-weight:bold;
}
.feature-detail dd{
  font-size:1.5rem;
  font-weight:bold;
  padding:0 15px;
}
ul.feature-list{
  margin:15px 0;
}
ul.feature-list li{
  list-style:none;
  font-size:1.4rem;
  font-weight:bold;
}
ul.feature-list li::before{
  content:"●";
}
.content-detail .element{
font-size:1.6rem;
font-weight:bold;
}
/* 注意事項モーダル*/
.notes-title {
  color:  #231816;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  padding-top: 40px;
  background-image: url(/common/wedge/images/v1/wedge/modal-border-bottom.png);
  background-repeat: no-repeat;
  background-position: center bottom 5px;
  background-size: 100%;
}
.notes-detail-wrapper {
  height: calc(100% - 78px);
  padding: 20px;
  box-sizing: border-box;
}
.notes-detail {
  border: 1px solid #b3b3b3;
  height: calc(100% - 40px);
  overflow: auto;
  padding: 20px;
}
.kakunin-text p {
  font-size:1.44rem;
  color:#333;
  margin:0 0 15px;
}
.kakunin-text p strong {
  color:#333;
  font-size:110%;
}
.kakunin-text ul,
.kakunin-text dl {
  padding:0 0 0 20px;
  margin:0;
}
.kakunin-text a {
  display: inline;
}
.kakunin-text ul li {
  font-size:14px;
  color:#333;
  list-style-type:decimal;
  margin:0; padding:0;
  line-height:18px;
  margin-bottom: 15px;
}
.kakunin-text ul li:last-child,
.kakunin-text dl dd:last-child {
  margin-bottom: 0;
}
.kakunin-text dl dd {
  font-size:14px;
  color:#333;
  list-style-type:decimal;
  line-height:18px;
  margin-bottom: 15px;
}
.kakunin-text dl dd:first-child {
  margin-top: 15px;
}
/* fancybox */
.fancybox-skin {
  padding: 0 !important;
}
.fancybox-close-button {
  position: absolute;
  width: 22px;
  height: 22px;
  top: 10px;
  right: 10px;
  background-image: url(/common/wedge/images/v1/wedge/close-button.png);
  background-repeat: no-repeat;
  background-size: 22px !important;
  cursor: pointer;
  z-index: 2;
}
.fancybox-close-button.black-button {
  background-image: url(/common/wedge/images/v1/wedge/close-button-black.png);
}
.fancybox-inner {
  overflow: visible !important;
}
/* ボタン */
.btn {
  width: 100%;
  background: #ffffff;
  border: 1px solid #e3001c;
  border-radius: 10px;
  box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.25);
  margin-bottom: 15px;
  color:  #e3001c;
  font-size: 1.6rem;
  line-height: 52px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
}
.invert-color {
  background: #e3001c;
  color:  #ffffff !important;
}
.pdf-icon {
  background-image: url("/common/wedge/images/v1/wedge/top-button-pdf.png");
  background-repeat: no-repeat;
  background-position: right 10px center;
}
.btn.right-arrow {
  width: 108px;
  line-height: 24px;
  border-radius: 4px;
  font-size: 1.3rem;
  padding: 0;
  margin: 0;
}
.right-arrow {
  background: url(/common/wedge/images/v1/wedge/sub-btn-icon.png) no-repeat;
  background-position: right 7px center;
}
/* .more-link */
.more-link {
  text-align: right;
}
.more-link a {
  display: inline;
  color:  #231816 !important;
  font-size: 1.2rem;
  padding-left: 20px;
  background: url(/common/wedge/images/v1/wedge/more.png) no-repeat 0 center;
  background-size: 13px 13px;
}

/* TOPページ ======================================================*/
/* 最新号 */
.content-box.book-detail {
  margin-bottom: 0;
}
/* 中吊り広告 */
.content-box.advertisement {
  margin-bottom: 0;
}
.content-box.advertisement .content-title:before,
.inline .content-title:before {
  border-top-color: #004097;
  border-left-color: #004097;
}
/* バックナンバー */
.content-box.top-backnumber {
  margin-top: 30px;
  margin-bottom: 0;
}
.content-box .content-title.color-tag:before,
.sp-wedge-backnumber-detail .content-box.book-detail .content-title:before,
.sp-hitotoki-backnumber-detail .content-box.book-detail .content-title:before {
  background: url(/common/wedge/images/v1/wedge/back-number-color-tag.png) no-repeat;
  border: none;
  width: 100%;
  height: 100%;
}
.top-backnumber .content-area {
  padding: 15px 0 15px 15px;
}
.top-backnumber .top-backnumber-list {
  overflow-x: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.top-backnumber .book-list {
  width: calc((((100% - 60px) / 2.5) * 8) + (30px * 7) + 15px);
  font-size: 0;
  margin: 0 auto;
}
.top-backnumber .book-list .book-content {
  width: calc((100% - (30px * 7) - 15px) / 8);
  display: inline-block;
  margin-right: 30px;
  padding-right: 0;
  padding-left: 0;
  box-sizing: border-box;
  float: left;
}
.top-backnumber .book-list .book-content:last-child {
  margin-right: 15px;
}
.top-backnumber .book-list .book-content a {
  position: relative;
  width: 100%;
  color: #231816;
}
.top-backnumber .book-list .book-content .book-title {
  font-weight: 700;
  line-height: 1;
}
.top-backnumber .book-list .book-content .book-img {
  position: relative;
  overflow: hidden;
  width: auto;
  height: auto;
  box-sizing: border-box;
  margin: 3px 0;
}
.top-backnumber .book-list .book-content .book-img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  width: auto;
}
.top-backnumber .book-list .book-content .book-info {
  color:  #231816;
  width: auto;
  height: auto;
}
.top-backnumber .book-list .book-content .book-subtitle {
  line-height: 1.5;
  font-weight: 400;
}
.top-backnumber .more-link {
  padding-right: 16px;
}

/* バックナンバー ======================================================*/
/* list-book */
.list-book .content-area {
  content:'';
  background:#eee;
  padding: 15px 15px 30px;
  max-width: 100%;
}
/* page */
.page {
  position: relative;
  margin-bottom: 15px;
  line-height: 1;
}
.page ul li {
  display: inline-block;
}
.page ul li a {
  color: #231816;
}
.page .page-select {
  font-size: 0;
  font-weight: 400;
  text-align: center;
}
.page .page-number {
  margin-left: 4%;
  font-size: 1.3rem;
  vertical-align: middle;
  display: none;
}
.list-book .page:last-of-type .page-number {
  display: inline-block;
}
.page .page-number:nth-first-child {
  margin: 0;
}
.page  .page-number.current {
  color:#003e98;
}
.page .page-next {
  float: right;
  font-size: 1.2rem;
  line-height: 1.25;
}
.page .page-next a {
  padding-right: 2px;
  border-bottom: solid 1px;
}
.page .page-next :after,
.page .page-next span:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid #231816;
  border-right: 1px solid #231816;
  transform: rotate(45deg);
}
.page .page-back {
  float: left;
  font-size: 1.2rem;
  line-height: 1.25;
}
.page .page-back a {
  padding-left: 2px;
  border-bottom: solid 1px;
}
.page .page-back :before,
.page .page-back span:before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-left: 1px solid #231816;
  border-bottom: 1px solid #231816;
  transform: rotate(45deg);
}
.list-book .book-list {
  margin-bottom: 30px;
  font-size: 0;
  display: flex;
  flex-wrap: wrap;
}
/* book-content */
.list-book .book-content {
  background-color: #fff;
  width: calc((100% - 15px) / 2);
  display: inline-block;
  margin-right: 15px;
  margin-top: 15px;
  box-sizing: border-box;
  position:relative;
}
.list-book .book-content a {
  padding: 10px 0 50px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
.list-book .book-content:nth-child(2n) {
  margin-right: 0;
}
.list-book .book-content:nth-child(-n+2) {
  margin-top: 0;
}
.list-book .book-content .book-title {
  color:  #231816;
  font-size: 1.3rem;
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
  text-align: center;
  margin: 0 1em 5px;
}
.list-book .book-content .book-month {
  font-size: 1.8rem;
  margin-left: 0.5rem;
}
.list-book .book-content .book-img {
  position: relative;
  width: calc(100% - 60px);
  box-sizing: border-box;
  margin: 0 30px 10px;
}
.list-book .book-content .book-img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  box-shadow: 1px 3px 3px 0px rgba(0, 0, 0, 0.25);
}
.list-book .book-content .book-info {
  color:  #231816;
  margin: 0 18px 25px 18px;
  text-align: center;
  width: auto;
  height: auto;
  margin: 0 18px;
}
.list-book .book-content .book-info .book-subtitle {
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 400;
}
.list-book .book-content .btn.right-arrow {
  line-height: 2.8rem;
  font-weight:600;
  margin: 7px 15px 15px;
  width: calc( 100% - 30px );
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

/* 単体購入 ======================================================*/
.purchase {
  padding: 0 4%;
}
.purchase .page-title {
  color:  #231816;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  margin-top:1em;
  border-bottom: 1px solid #231816;
}
#tab-menu {
  font-size: 0;
  margin-top: 21px;
}
#tab-menu ul li {
  width: 50%;
  display: inline-block;
  line-height: 40px;
  text-align: center;
  vertical-align:bottom;
}
#tab-menu ul li.wide{
  width:80%;
}
#tab-menu.readers ul li{
 width:25%;
}
#tab-menu.readers ul li.wedge-hitotoki{
 width:50%;
 line-height:1.12;
}
#tab-menu.readers ul li span{
 font-size:11px;
 line-height:1;
}
#tab-menu .tab {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  background-color:  #eeeeee;
  color:  #808080;
  font-size: 1.8rem;
  position: relative;
}
#tab-menu .tab.current {
  background-color:  #231816;
  color:  #ffffff;
  font-weight: 700;
}
#tab-menu .tab:before {
  content: "";
  display: inline-block;
  border-top: 20px solid #ffffff;
  border-left: 10px solid #ffffff;
  border-bottom: 20px solid transparent;
  border-right: 10px solid transparent;
  position: absolute;
  top: 0;
  left: 0;
}
#tab-menu .tab.current:before {
  border-top-left-radius: 5px;
  border-top: 20px solid #e3001c;
  border-left: 10px solid #e3001c;
  border-bottom: 20px solid transparent;
  border-right: 10px solid transparent;
}
.page-title-tel {
  float: right;
  margin-top: 12px;
}
.purchase-box {
  padding: 30px 4%;
  border: 1px solid #808080;
}
.purchase .purchase-box .description {
  color: #231816;
  font-size: 1.5rem;
  line-height: 1.828;
}
.purchase .purchase-box .description span {
  color: #e3001c;
}

/*  送料 */
.purchase .purchase-box .souryou-title {
  color:  #231816;
  font-size: 1.5rem;
  font-weight: 700;
  margin-top:  20px;
}
.purchase-box table.souryou {
  margin-bottom: 8px;
}
table.souryou th,
table.souryou td {
  line-height: 25px;
  font-size: 1.3rem;
}
table.souryou th {
  color: #ffffff;
  font-weight: 700;
  border-top:solid 1px #666666;
  background-color: #666666;
  border-bottom:solid 1px #fff;
  width: 45px;
}
table.souryou td {
  border: solid 1px #666666;
  text-align: center;
  width: 56px;
  max-width:  calc(100% - 45px / 4) ;
  padding: 0 5px;
}
.souryou:nth-of-type(2) td:nth-child(4) {
  width: 70px;
}
@media screen and (max-width:320px) {
  table.souryou td {
    padding-left: 0;
    padding-right: 0;
  }
}
table.souryou tr.en th {
  border-bottom:solid 1px #666666;!important;
}
table.souryou tr.en td {
  text-align: right;
}
/*  購入テーブル */
.goods-list {
  display: none;
  margin-top: 30px;
}
.goods-list.selected {
  display:block;
}
.goods-list table {
  width: 100%;
}
.goods-list table th {
  font-size: 1.3rem;
  color: #ffffff;
  line-height: 26px;
  text-align: center;
  border-left: solid 1px #ffffff;
}
.goods-list table.goods-wedge th {
  background-color: #093c78;
  border-bottom: solid 1px #093c78;
}
.goods-list table.goods-hitotoki th {
  background-color: #b7282c;
  border-bottom: solid 1px #b7282c;
}
.goods-list table.goods-wedge th:first-child {
  border-left: solid 1px #093c78;
}
.goods-list table.goods-hitotoki th:first-child {
  border-left: solid 1px #b7282c;
}
.goods-list table.goods-wedge th:last-child {
  border-right: solid 1px #093c78;
}
.goods-list table.goods-hitotoki th:last-child {
  border-right: solid 1px #b7282c;
}
.goods-list table td {
  font-size: 1.3rem;
  line-height: 45px;
  text-align:center;
  border:solid 1px #666666;
  vertical-align: middle;
  min-width: 60px;
}
.goods-list table td.title {
  line-height: 1.3;
  text-align:left;
  padding: 7px 15px;
}
.goods-list table td.title a {
  color: #191919;
}
.goods-list table td span {
  font-weight: 700;
}
.goods-list table td input {
  width: 18px;
  height: 18px;
  border-color:  #cccccc;
  border-radius: unset;
  margin-right: 3px;
}
/* セット販売の項目 */
.hitotoki-subscription .purchase .set-sales.wedge{display:none;}
.wedge-subscription .purchase .set-sales.hitotoki{display:none;}
.purchase .set-sales {
    border-radius: 5px;
    border-width: 1px;
    border-color:  #231816;
    border-style: solid;
    margin: 30px auto 25px;
    position: relative;
}
.purchase .set-sales .badge{
  width:60px;
  height:60px;
  border-radius:60px;
  background:#e3001c;
  color:#fff;
  font-weight:bold;
  position:absolute;
  top:-20px;
  left:-10px;
  text-align:center;
  line-height:1;
}
.purchase .set-sales .badge span{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
width:100%;
display:block;
line-height:1.4;
font-size:12px;
}
.purchase .set-sales .title {
  font-size: 1.6rem;
  font-weight: bold;
  color:  #e3001c;
  display: inline-block;
  position: absolute;
    top: -14px;
    left: 55px;
    padding-left: 5px;
    z-index: 1;
    background-color: #ffffff;
}
.purchase .set-sales .inner{
   padding:25px 15px 15px;
}
.purchase .set-sales .set-check{
  text-align:center;
  margin-bottom:20px;
}
.purchase .set-sales .set-check strong{
    font-weight: bold;
    color: #e3001c;
    font-size: 1.4rem;
}
.purchase .set-sales ul li{
  font-size:13px;
  text-align:center;
}
.purchase .set-sales ul li.list-attention{
  position:relative;
  margin-top:1em;
  padding-left:1em;
  text-align:left;
}
.purchase .set-sales ul li.list-attention::before{
  content:"※";
  display:block;
  position:absolute;
  top:0;
  left:0;
}
.purchase .set-sales.hitotoki .badge{
  background:#b7282c;
}
.purchase .set-sales.hitotoki .title{
  color:#b7282c;
}
.purchase .set-sales.hitotoki .set-check strong{
  color:#b7282c;
}
/* お申込みに関する注意事項 */
.purchase .agree-box {
  border-radius: 5px;
  border-width: 1px;
  border-color:  #231816;
  border-style: solid;
  height: 60px;
  margin: 37px auto 30px;
  text-align: center;
}
.purchase .agree-box .title {
  font-size: 1.4rem;
  font-weight: 700;
  color:  #e3001c;
  display: inline-block;
  position: relative;
  top: -14px;
  z-index: 1;
  background-color: #ffffff;
  padding-left: 7px;
}
@media screen and (max-width: 320px) {
  .purchase .agree-box .title {
    padding-left: 0;
  }
}
.purchase .agree-box .checkbox-block {
  font-size: 1.4rem;
  text-align: center;
}
/* チェックボックス */
.checkbox-block input[type="checkbox"] {
  -webkit-appearance: none;
  width: 0px;
  height: 0px;
  display: inline-block;
  visibility: hidden;
}
.checkbox-block input + label {
  display: inline-block;
  position: relative;
  width: 22px;
  height: 22px;
  vertical-align: middle;
}
.agree-box input + label::before {
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border:1px solid #808080;;
}
.agree-box input:disabled + label::before {
  background: #eee;
}
.checkbox-block input:checked + label::after {
 content: '';
  position: absolute;
  top: 3px;
  left: 6px;
  display: inline-block;
  width: 0.4em;
  height: 0.7em;
  border-right: 2px solid #808080;
  border-bottom: 2px solid #808080;
  -webkit-transform :rotate(45deg);
  -moz-transform:rotate(45deg);
}
.checkbox-block form {
  display: inline-block;
}
.agree-box .checkbox-block a {
  display: inline-block;
  width: auto;
  color:  #004097;
  text-decoration: underline;
  vertical-align: middle;
}
/*  入力完了ボタン */
.purchase .mag-regist {
  width: 100%;
  height: 63px;
  font-size: 1.3rem;
  color: #000;
  background: #eee;
  border: none;
  border-radius: 5px;
  box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.25);
}
.purchase .mag-regist span {
  font-size: 1.9rem;
  font-weight: 700;
}
.purchase .mag-regist.active {
  background: #e3001c;
  color: #fff;
}
.purchase .mag-regist.hitotoki.active {
  background: #b7282c;
}

/* 注意書き */
.purchase .attention{
  margin:0 auto 25px;
  padding:10px;
  box-sizing:border-box;
  border:solid 1px #ccc;
  border-radius:4px;
  font-size:13px;
}

.purchase .attention .attention-point{
 font-weight:bold;
 color:#e3001c;
 margin-bottom:5px;
}

.purchase .attention p {
 line-height:1.8;
 margin-bottom:26px;
}

.purchase .attention .btn-external-site{
 display:block;
 text-align:center;
 border-radius:6px;
 background:#999;
 color:#fff;
 font-weight:bold;
 font-size:18px;
 padding:10px 0;
 width:100%;
}
.purchase .attention .btn-external-site:hover{
  background:#666;
  text-decoration:none;
}

.purchase .attention .btn-external-site span{
 display:block;
 font-size:11px;
 font-weight:normal;
}

.purchase .btn-store{
 display:block;
 width:100%;
 margin: 30px auto 60px;
 border-radius:6px;
 background: #e3001c;
 color:#fff;
 padding:15px 0;
 font-weight:bold;
 font-size:1.8rem;
 text-align:center;
 box-shadow: 0px 1px 0px 0px rgb(0 0 0 / 25%);
}
.purchase .btn-store.hitotoki-store-site{
 background: rgb(183, 40, 44);
}
.purchase .btn-store:hover{
 text-decoration:none;
 opacity:0.7;
}

.teiki-form.wedge,
.set-sales.wedge,
.teiki-form.hitotoki,
.set-sales.hitotoki{display:none;}

.teiki-form.wedge.selected,
.set-sales.wedge.selected,
.teiki-form.hitotoki.selected,
.set-sales.hitotoki.selected{display:block;}

/* 定期購読キャンペーンページ ======================================================*/
.campaign .purchase .password{
 margin:2em 0;
}
.campaign .purchase .password p.attention{
 font-size:1.3rem;
 margin-bottom:.5em;
 color:#e3001c;
  font-weight:bold;
}
.campaign .purchase p.note{
  margin:10px auto auto;
  text-align:left;
  position:relative;
  font-size:1.3rem;
  padding-left:15px;
}
.campaign .purchase p.note::before{
  content:"※";
  display:block;
  position:absolute;
  top:0;
  left:0;
}
.campaign .purchase .password form input{
  font-size:2rem;
  padding:.5em;
  border-radius:3px;
  border:solid 1px #231816;
  width:100%;
  box-sizing:border-box;
}

/* 定期購読 ======================================================*/
table.teiki-form {
  width: 100%;
  margin-top: 24px;
  display: none;
}
table.teiki-form.selected {
  display: table;
}
table.teiki-form th {
  background-color: #333333;
  color: #ffffff;
  font-size: 1.3rem;
  line-height: 40px;
  padding: 0 10px;
  border-bottom: solid 1px #ffffff;
}
table.teiki-form tr:last-child th {
  border-color: #333333;
}
table.teiki-form td {
  border: solid 1px #333;
  font-size: 1.2rem;
  vertical-align: middle;
  text-align: center;
}
table.teiki-form td span {
  font-weight: bold;
  color: #e3001c;
  font-size: 1.3rem;
}
table.teiki-form td span.badge{
  color:#fff;
  background:#e3001c;
  line-height:1;
  display:inline-block;
  padding:5px 10px;
  border-radius:4px;
  margin-right:2px;
}
table.teiki-form.hitotoki td span {
  color: #b7282c;
}
table.teiki-form td select {
  font-size: 1.1rem;
}
table.teiki-form input[type="text"] {
  width: 33px;
  height: 18px;
  border-color: #cccccc;
  border-radius: unset;
  margin-right: 3px;
}

/* 定期購読継続 ======================================================*/
.purchase-box.readers .description {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 19px;
}
.purchase-box.readers .content-title {
  font-size: 1.5rem;
  color: #231816;
  font-weight: 700;
}
.purchase-box.readers .purchase-content {
  display: none;
}
.purchase-box.readers .purchase-content.selected {
  display: block;
}
.purchase-box.readers .purchase-content p {
  font-size: 1.5rem;
  line-height: 1.483;
  margin-bottom: 20px;
}
.purchase-box.readers .purchase-content p span {
  color: #e3001c;
  font-weight: 700;
}
.purchase-box.readers .purchase-content.hitotoki p span {
  color: #b7282c;
}
.purchase-box.readers .readers-btn {
  line-height: 63px;
  text-align: center;
  display: none;
}
.purchase-box.readers .readers-btn.selected {
  display: block;
}
.purchase-box.readers .readers-btn a {
  color: #000;
}
.purchase-box.readers .readers-btn.active a {
  color: #fff;
}

/* -- ストアページ共通お知らせ -- */
.store-info-attention{border:solid 1px #ccc;padding:1em;box-sizing:border-box;margin:1em auto;}
.store-info-attention a{display:inline;}
.urgent-notice.article-body{margin: 0 auto 2em;box-sizing: border-box;border-radius: 4px;padding:1em;border:solid 1px #ccc;}


/* 記事下書籍情報 */
.article-end-magazine__detail{
  display:block;
}
.article-end-magazine__heading{
  text-align:center;
}
.article-end-magazine__cover{
  width:auto;
  margin:auto;
  text-align:center;
  max-width:60%;
}
.article-end-magazine__links ul li{
  text-align:left;
}
.article-end-magazine__text{
  margin:20px 15px;
}

/* 会員登録 */
.regist__heading{
 background:#1d2a54;
 color:#fff;
 padding:5px 10px;
 font-size:1.6rem;
}
.regist__btns{
 width:80%;
 margin: 2em auto;
}
.regist__btns > a{
  display:block;
  text-align:center;
  background:#333;
  color:#fff;
  text-decoration:none;
  line-height:1;
  padding:15px 0;
  border-radius:4px;
  font-weight:bold;
  margin-bottom:10px;
}
.regist__btns > a.current{background:#D45058;}
.regist__btns > a:hover{
 opacity:0.7;
}
.regist-section{
 width:80%;
 margin:40px auto;
}
.regist-section__ttl{
 color:#1d2a54;
 font-weight:bold;
 font-size:18px;
 margin-bottom:20px;
}
.regist-section p{
 margin-bottom:20px;
 line-height:1.8;
}
.regist-section p a{
 display:inline;
}
.regist-section ul{
 margin:10px auto 16px;
}
.regist-section ul li{
 margin-bottom:10px;
 position:relative;
 padding-left:10px;
}
.regist-section ul li:before{
 content:"";
 display:block;
 position:absolute;
 width:4px;
 height:4px;
 background:#444;
 top:8px;
 left:0;
}

.resit__attention{
  margin:40px auto;
  padding:40px;
  background:#f5f5f5;
  box-sizing:border-box;
}
.resit__attention p a{
 display:inline;
}

.resit__attention ul{
 margin:26px auto 16px;
}
.resit__attention ul li{
 margin-bottom:10px;
 position:relative;
 padding-left:10px;
}
.resit__attention ul li a{display:inline;}
.resit__attention ul li:before{
 content:"";
 display:block;
 position:absolute;
 width:4px;
 height:4px;
 background:#444;
 top:8px;
 left:0;
}