@charset "UTF-8";

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: 700;
}

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

td,
th {
  padding: 0;
}

/* reset */

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

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

fieldset,
img,
input {
  border: 0;
}

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

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  text-align: left;
}

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

abbr,
acronym {
  border: 0;
}

a,
img {
  vertical-align: top;
  display: inline-block;
}

/******************************
共通
******************************/

html {
  font-size: 62.5%;
}

body {
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 500;
  word-break: break-all;
  /* color: #323232; */
  color: #000;
}

body.narrow {
  width: 100%;
  margin: 0 auto;
}

body.menuOpen {
  overflow: hidden;
}

a,
input {
  outline: none;
  color: #323232;
  text-decoration: none;
}

a {
  transition: all 0.3s ease;
}

a,
a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

a:hover,
a:hover img {
  opacity: 0.7;
}

/******************************
ヘッダー
******************************/

.header {
  width: 100vw;
  height: 60px;
  /* border-bottom: 5px solid #eee; */
  background: #000;
}

header.header {
  background: #000;
}

header a:hover,
header a:hover img {
  opacity: 1;
}

.headerTop {
  display: none;
  width: 100%;
}

.headerTop>div {
  display: table-cell;
  vertical-align: middle;
}

/*ロゴ要素*/

.headerLogo {
  width: 30%;
  margin: 0 auto;
  padding-top: 22px;
  text-align: center;
}

.headerLogo img {
  width: 100%;
  height: auto;
}

/*ログイン要素*/

.headerLogin {
  width: 30px;
  height: 30px;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 3px;
}

.headerLogin img {
  width: 100%;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 50%;
}

.headerLogin img:hover {
  background: #eee;
}

/*スマホ時gnav （現状なし）*/
/* header .navBtn {
    width: 16px;
    height: 15px;
    margin: auto 0;
    border-top: 1px solid #fff;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
}
header .navBtn:before {
    content: "";
    width: 16px;
    margin: auto 0;
    border-top: 1px solid #fff;
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
}
header .navBtn:after {
    content: "";
    width: 16px;
    margin: auto 0;
    border-top: 1px solid #fff;
    display: block;
    position: absolute;
    top: 6px;
    right: 0;
}
header .gNavBox {
    width: 100%;
    padding-bottom: 25px;
    background: rgba(0,0,0,0.85);
    position: absolute;
    top: 60px;
    left: 0;
    z-index: 1;
}
header .gNavBox .searchBox {
    padding: 15px;
}
header .gNavBox input {
    width: 88%;
    font-size: 16px;
    color: #fff;
    background: none;
}
header .gNavBox .submitBtn {
    border: 0;
    width: 10%;
    max-width: 31px;
    background: url(../images/common/ico_search.png) center no-repeat;
    background-size: 50%;
    vertical-align: middle;
}
header .gNavBox ul.gNav {
    border-bottom: 1px solid #fff;
    overflow: hidden;
}
header .gNavBox ul.gNav li {
    width: 50%;
    border-top: 1px solid #fff;
    float: left;
}
header .gNavBox ul.gNav li:nth-child(odd) {
    border-right: 1px solid #fff;
}
header .gNavBox ul.fNav {
    margin-top: 37px;
    font-size: 0;
    text-align: center;
}
header .gNavBox ul.fNav li {
    padding: 0 25px 12px;
    font-size: 12px;
    display: inline-block;
}
header .gNavBox ul.fNav a {
    color: #fff;
    text-decoration: none;
} */

/*サイドナビゲーション*/

.sideNav {
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.85);
  position: fixed;
  top: -150%;
  left: 0;
  z-index: 9999999997;
  width: 100vw;
  height: 100vh;
  color: #323232;
  font-size: 1.2rem;
  transition: all 0.4s ease;
}

.menuOpen .sideNav {
  top: 0;
}

.sideNavHead {
  display: none;
}

.sideNav .sideNavCloseBtn {
  float: right;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  position: relative;
  font-size: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  top: 3px;
  right: 0px;
}

.sideNav .sideNavCloseBtn:hover {
  background: rgba(255, 255, 255, 0.2);
}

.sideNav .sideNavCloseBtn:before,
.sideNav .sideNavCloseBtn:after {
  content: "";
  width: 22px;
  height: 1px;
  background: #323232;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.sideNav .sideNavCloseBtn:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.sideNav .sideNavCloseBtn:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.sideNav .logo {
  text-align: left;
  line-height: 48px;
}

.sideNav .logo img {
  width: 130px;
  height: auto;
  vertical-align: middle;
  position: relative;
}

.sideNav a {
  color: #fff;
}

.sideNav .box {}

.sideNavIn {
  padding-top: 60px;
  box-sizing: border-box;
  overflow: auto;
  max-height: 100%;
}

.sideNav .tit {
  width: 100%;
  margin-bottom: 8px;
  padding-bottom: 5px;
  line-height: 26px;
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  border-bottom: solid 1px #ccc;
}

.sideNav .imgLink a {
  display: block;
  padding-top: 48.3%;
  margin-top: 15px;
  background: #f7f7f7;
  position: relative;
  border: solid 1px #eee;
}

.sideNav .imgLink .txt {
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size: 1.3rem;
  padding: 8px 10px 6px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}

.sideNav .box .list {
  /*border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;*/
  overflow: hidden;
  font-family: "Times", "Times New Roman", sans-serif;
}

.sideNav .box .list>li {
  display: block;
  box-sizing: border-box;
  /*padding: 8px 5px;*/
  padding: 8px 5px;
  margin: 0 15px;
  letter-spacing: 0.1em;
  border-bottom: solid 1px #fff;
}

/*.sideNav .box .list li:nth-child(odd) {
  border-right: 1px solid #fff;
}*/

.sideNav .box .list>li>a {
  background: url(../img/common/ico_header_nav.png) right center no-repeat;
  background-size: 16px auto;
}

.sideNav .box .list>li>a,
.sideNav .box .list>li>span {
  width: 100%;
  /*font-size: 20px;*/
  font-size: 16px;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  position: relative;
  box-sizing: border-box;
}

.sideNav .box .list a:before {
  /*content: '';
  width: 10px;
  height: 10px;
  margin: auto 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  */
}

.sideNav .box .list .inList {
  overflow: hidden;
}

.sideNav .box .list .inList li {
  box-sizing: border-box;
  float: left;
  width: 50%;
  /*padding: 5px 15px 5px 15px;*/
  padding: 3px 15px 3px 15px;
  position: relative;
}

.sideNav .box .list .inList li a {}

.sideNav .box .list .inList li a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  vertical-align: middle;
  left: 5px;
  box-sizing: border-box;
  width: 4px;
  height: 4px;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
  transform: rotate(0);
}

.sideNavIn .box:last-child .list {
  border: none;
  /*margin: 15px 15px 0;*/
  margin: 7px 15px 0;
  font-size: 0;
  /*text-align: center;*/
  overflow: hidden;
}

.sideNavIn .box:last-child .list li {
  width: auto;
  border: none;
  float: none;
  padding: 3px 5px;
  font-size: 12px;
  /*display: inline-block;*/
  float: left;
  width: 50%;
  box-sizing: border-box;
  margin: 0;
}

.sideNavIn .box:last-child .list li a {
  padding: 0;
  font-size: 12px;
  color: #fff;
  text-decoration: none;
  position: static;
  background: none;
}

.sideNavIn .box:last-child .list li a:before {
  display: none;
}

.sideNav .magazine {
  width: 100%;
  display: table;
  margin-top: 15px;
}

.sideNav .magazine .img {
  width: 132px;
  height: 174px;
  background: #eee;
  display: table-cell;
  vertical-align: middle;
}

.sideNav .magazine .txt {
  padding-left: 20px;
  display: table-cell;
  vertical-align: middle;
}

.sideNav .magazine li {
  width: 100%;
}

.sideNav .magazine li a {
  padding-top: 0;
  padding-bottom: 2px;
}

.sideNavInSearch {
  padding: 10px 15px 5px;
}

.sideNavInSearch form {
  position: relative;
  background: #f5f5f5;
}

.sideNavInSearch form button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 15px;
  height: 15px;
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0px;
  margin: auto 0px;
  font-size: 15px;
  line-height: 15px;
  color: #717171;
}

.sideNavInSearch input {
  width: 88%;
  font-size: 16px;
  background: none;
  padding: 10px;
  font-family: "Times", "Times New Roman", sans-serif;
}

/******************************
マイページヘッダー
******************************/

.fixNav {
  width: 100vw;
  position: fixed;
  top: 0;
  height: 60px;
  background: #fff;
  z-index: 9999999998;
  border-bottom: 5px solid #eee;
}

.fixNav ul {
  width: 100vw;
  height: 60px;
}

.fixNav li:last-child {
  width: 16px;
  height: 15px;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 23px;
}

.fixNav li .sideNavBtn {
  width: 16px;
  height: 15px;
  border-top: 1px solid #000;
  display: block;
  cursor: pointer;
}

.fixNav li .sideNavBtn:last-child:before {
  content: "";
  width: 16px;
  margin: auto 0;
  border-top: 1px solid #000;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
}

.fixNav li .sideNavBtn:last-child:after {
  content: "";
  width: 16px;
  margin: auto 0;
  border-top: 1px solid #000;
  display: block;
  position: absolute;
  top: 7px;
  right: 0;
}

.fixNav li .sideNavBtn img {
  display: none;
}

.fixNav .sns {
  cursor: pointer;
  position: relative;
}

.fixNav .sns {
  width: 100%;
  padding: 0;
  font-size: 0;
  background: #fff;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
  position: absolute;
  bottom: 90%;
  left: 0;
}

.fixNav .sns li {
  width: 33.333%;
  padding: 10px 0;
}

.fixNav .sns li+li {
  border-left: 1px solid #999;
}

.fixNav .menuOpen+.sns {
  opacity: 1;
  visibility: visible;
  bottom: 100%;
}

/******************************
コンテンツ共通要素
******************************/

.cont {
  min-height: 50vh;
  margin: 0 15px;
}

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

.preview .cont {
  border: solid 3px #ff0;
  padding: 10px 7px;
  margin: 0 5px;
}

/* 見出し */
.contTitHead {
  margin-bottom: 30px;
}

.contTit {
  font-family: "Times", "Times New Roman", sans-serif;
  position: relative;
  padding-left: 25px;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
}

.contTit::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 14px;
  height: 6px;
  background: #c30901;
}

.contTit::after {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../img/common/underline.png);
  background-repeat: repeat;
}

.contTit span {
  margin-left: 12px;
  font-size: 1rem;
  letter-spacing: 0.08em;
  color: #999;
  font-weight: normal;
  text-align: center;
  vertical-align: 4px;
  display: none;
}

/* .contTit .red {
  color: #E35C4B;
} */

/* .contTitHead.jp {
  border-top: solid 1px #ddd;
  padding-top: 15px;
  margin-bottom: 25px;
} */

/* .contTitHead.jp .contTit {
  font-size: 2rem;
} */

.contLead {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  line-height: 1.55;
}

/* ページタイトル */
.pg-title {
  font-family: "Times", "Times New Roman", sans-serif;
  position: relative;
  margin-bottom: 25px;
  padding-top: 15px;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}

.pg-title::after {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../img/common/underline.png);
  background-repeat: repeat;
}

.pg-title .small {
  display: block;
  margin-top: 5px;
  padding-left: 10px;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  color: #999;
  font-weight: normal;
  display: inline-block;
  display: none;
}

.pageTit {
  font-family: "Times", "Times New Roman", sans-serif;
  position: relative;
  margin-bottom: 25px;
  padding-top: 15px;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}

.pageTit::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../img/common/underline.png);
  background-repeat: repeat;
}

.content .pageTit .subtit {
  display: inline-block;
  margin-left: 12px;
  font-size: 1rem;
  letter-spacing: 0.1em;
  color: #999;
  font-weight: normal;
  vertical-align: 4px;
  display: none;
}

/* 詳細バー */
.contBtn a {
  width: 100%;
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  background: #000;
  padding: 15px 30px 13px 15px;
  border-radius: 2px;
  transition: all 0.3s ease;
  position: relative;
  box-sizing: border-box;
  line-height: 1.5;
}

.contBtn a:before {
  content: url(../img/common/arrow_current.png);
  position: absolute;
  top: 50%;
  right: 13px;
  line-height: 30px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all 0.3s ease;
}

.contBtn a:hover {
  background: #666;
}

.contBtn a:hover:before {
  /*right: 30px;*/
  /*opacity: 1;*/
}

.contTxt {
  font-size: 1.3rem;
  line-height: 2.15;
  color: #444;
}

.contTxt .lead {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.65;
  display: block;
  margin-bottom: 20px;
}

.faqBoxColWrap {
  width: 100%;
  overflow: hidden;
  display: table;
  padding-top: 10px;
}

.faqBoxCol {
  width: 94%;
}

.faqBox {
  margin-bottom: 35px;
}

.faqBox .lead {
  margin-bottom: 16px;
}

.faqBox li {
  line-height: 1.3;
  margin-bottom: 10px;
}

.faqBox li a {
  display: inline-block;
  position: relative;
  padding-left: 20px;
}

.faqBox li a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

.addHead {
  text-align: center;
  margin: 15px auto;
}

.addHead div {
  max-width: 100% !important;
}

.addHead img {
  width: 100% !important;
}

.addHead iframe {
  /*width: 100%;*/
  /*height: auto;*/
}

.addSide {
  text-align: center;
  margin: 15px;
}

.addSide div {
  max-width: 100% !important;
}

.addSide img {
  width: 100% !important;
}

/******************************
左コンテンツ
******************************/

.contLeft.contSingle {
  position: relative;
}

.contLeft .cateBox+.cateBox {
  margin-top: 50px;
}

.notesBox {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
}

.notesBox p {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.7;
  color: #ea93be;
  display: inline-block;
  margin-top: 50%;
}

/*
ページ 共通
*/

.contLeft .common1-box .t-title,
.contLeft .common1-box .t-title2 {
  position: relative;
  margin-bottom: 32px;
  padding: 0 0 0 25px;
  font-size: 1.6rem;
  font-weight: normal;
}

.contLeft .common1-box .t-title::before,
.contLeft .common1-box .t-title2::before {
  content: "";
  position: absolute;
  top: calc(50% - 3px);
  left: 0;
  width: 14px;
  height: 6px;
  background: #c30901;
}

.contLeft .common1-box .t-title::after,
.contLeft .common1-box .t-title2::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../img/common/underline.png);
  background-repeat: repeat;
}

.contLeft .common1-box .text1,
.contLeft .common1-box .text2,
.contLeft .common1-box .text3,
.contLeft .common1-box .text4,
.contLeft .common1-box .text5 {
  font-size: 1.3rem;
  line-height: 1.6;
}

.contLeft .common1-box .text5.t-r {
  text-align: right;
}

.contLeft .common1-box .mb5 {
  margin-bottom: 5px;
}

.contLeft .common1-box .mb15 {
  margin-bottom: 15px;
}

.contLeft .common1-box .mb20 {
  margin-bottom: 20px;
}

.contLeft .common1-box .mb25 {
  margin-bottom: 20px;
}

.contLeft .common1-box .mb35 {
  margin-bottom: 25px;
}

.contLeft .common1-box .t-list2 li {
  font-size: 1.2rem;
  margin-bottom: 8px;
  text-indent: -1em;
  padding-left: 1em;
}

.contLeft .common1-table {
  width: 100%;
  margin-bottom: 25px;
}

.contLeft .common1-table th,
.contLeft .common1-table td {
  padding: 0.3em 0 0.4em;
  font-size: 1rem;
  text-align: center;
  border: 1px solid #eee;
}

.contLeft .common1-table th {
  background: #f7f7f7;
}

.contLeft .t-list1 li {
  font-size: 1.2rem;
  text-indent: -1em;
  padding-left: 1em;
}

/******************************
右コンテンツ
******************************/

.contRight {
  margin-top: 40px;
}

.contRight .contTitHead {
  /* padding-top: 0;
  padding-bottom: 5px;
  margin-bottom: 20px; */
}

.contRight .contTit {
  font-size: 2rem;
}

/* .contRight .contTit::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 14px;
  height: 6px;
  background: #c30901;
}

.contRight .contTit::after {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../img/common/underline.png);
  background-repeat: repeat;
} */

.contRight .contTit span {
  margin-top: 5px;
  margin-left: 0;
  font-size: 1rem;
  letter-spacing: 0.08em;
  color: #999;
  font-weight: normal;
  text-align: center;
}

.contRight .addSide {
  margin: 30px 0px 30px;
}

.contRight .addSide>div {
  margin: 0 auto;
}

.contRight .addSide img {
  width: 100%;
  height: auto;
}

/******************************
フッター
******************************/

footer {
  margin-top: 30px;
  padding: 0;
  background: #000;
  color: #fff;
}

.footerTop {
  padding: 20px 15px 0;
}

.footerTopIn {
  width: 100%;
}

.footerLogo {
  margin: 0 auto 20px;
  text-align: center;
}

.footerLogo img {
  width: 130px;
  height: auto;
}

.footerSns {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.footerSns ul {
  display: inline-block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  letter-spacing: -0.4em;
}

.footerSns ul li {
  letter-spacing: normal;
  display: inline-block;
  margin-left: 20px;
  font-size: 2rem;
}

.footerSns ul li:first-child {
  margin-left: 0;
}

.footerSns ul li a {
  transition: all 0.2s ease-out;
}

.footerSns ul li a:hover {
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
}

.footerSns ul li a i {
  color: #fff;
}

.footerSns ul li.twitterIcon {
  width: 14px;
  height: 14px;
}

.footerSns ul li.twitterIcon a {
  display: flex;
}

.footerSns ul li.twitterIcon img {
  width: 100%;
  margin: auto 0;
}

.footerBottom {
  max-width: 1200px;
  width: 96%;
  display: table;
  margin: 0 auto;
  padding: 16px 0;
  background: #000;
}

.footerLink {
  letter-spacing: -0.4em;
  text-align: center;
}

.footerLink ul li {
  display: inline-block;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  line-height: 1;
}

.footerLink ul li+li {
  margin-left: 7px;
  padding-left: 7px;
  border-left: solid 1px #fff;
}

.footerLink ul li a {
  color: #fff;
}

.footerCopy {
  font-size: 1rem;
  text-align: center;
  color: #fff;
  margin-top: 8px;
}

.itnl {
  width: 100%;
  height: 40px;
  background: #fafafa;
}

.itnl ul {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  background: #fafafa;
}

.itnl ul li {
  position: relative;
  width: 25%;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-align: center;
}

.itnl ul li:not(:last-of-type)::after {
  content: "/";
  position: absolute;
  right: 0;
  font-size: 1.4rem;
  font-weight: bold;
}

.itnl ul li img {
  width: 20px;
}

/******************************
パンくず
******************************/

.pankuzu {
  background: #f7f7f7;
  font-size: 1.2rem;
}

.pankuzu ul {
  max-width: 1200px;
  width: 96%;
  margin: 0 auto;
  padding: 9px 0 10px;
  letter-spacing: -0.4em;
  white-space: nowrap;
  text-overflow: clip;
  text-overflow: ellipsis;
  text-overflow: "…";
  overflow: hidden;
}

.pankuzu li {
  display: inline-block;
  letter-spacing: normal;
  position: relative;
}

.pankuzu li+li {
  padding-left: 15px;
  margin-left: 10px;
}

.pankuzu li+li:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  border-top: 1px solid #323232;
  border-right: 1px solid #323232;
  transition: all 0.2s ease;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}

.pankuzu li a {
  color: #444;
}

/******************************
左コンテンツ一覧
******************************/

.articlesList {
  font-size: 0;
}

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

.articlesList li {
  width: calc(50% - 5px);
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
}

.articlesList li a>* {
  width: 100%;
}

.articlesList li:nth-of-type(2n) {
  margin-left: 10px;
}

.articlesList li:nth-of-type(odd) {
  clear: left;
}

.articlesList a {
  text-decoration: none;
  position: relative;
  display: block;
}

.articlesList .sponsor {
  position: absolute;
  top: 0;
  right: 0;
  text-align: right;
}

.articlesList .sponsor img {
  width: 60%;
  height: auto;
}

.articlesList .img {
  width: 100%;
  padding-top: 57.75%;
  position: relative;
  background: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.articlesList .cate {
  font-family: "Times", "Times New Roman", sans-serif;
  display: inline-block;
  padding: 4px 10px 3px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  background: rgba(195, 9, 1, 0.85);
  text-align: center;
  box-sizing: border-box;
}

.articlesList .img .cate {
  position: absolute;
  left: 0;
  bottom: 0;
}

.articlesList .txtBox {
  position: relative;
}

.articlesList .txtBox .cate {
  position: absolute;
  top: -21px;
}

.articlesList .data {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1rem;
  color: #000;
  padding: 8px 0 5px;
}

.articlesList .tit {
  font-size: 1.3rem;
  line-height: 1.3;
  color: #444;
  font-weight: bold;
}

.articlesList .txt {
  display: none;
}

.articlesList.col2-3 li:nth-of-type(1) {
  width: 100%;
}

.articlesList.col2-3 li:nth-of-type(n + 3) {
  width: 31.75%;
  margin-left: 2.35%;
}

.articlesList.col2-3 li:nth-of-type(3n) {
  margin-left: 0;
}

.articlesList.col2-3 li:nth-of-type(n + 3) .data {
  font-size: 1rem;
  margin: 5px 0 2px;
}

.articlesList.col2-3 li:nth-of-type(n + 3) .tit {
  font-size: 1.4rem;
}

.articlesList.col2-3 li:nth-of-type(n + 3) .txt {
  display: none;
}

.articlesList.col3 li {
  width: 31.75%;
  margin-left: 2.35%;
}

.articlesList.col3 li:nth-of-type(1),
.articlesList.col3 li:nth-of-type(3n)+li {
  margin-left: 0;
}

.articlesList.col3 li .data {
  font-size: 1rem;
  margin: 5px 0 2px;
}

.articlesList.col3 li .tit {
  font-size: 1.4rem;
}

.articlesList.col3 li .txt {
  display: none;
}

.articlesList.col1-2 li:nth-of-type(1) {
  width: 100%;
}

.articlesList.col1-2 li:nth-child(even) {
  margin-left: 0;
  margin-right: 10px;
}

.articlesList.col3-4 li {
  width: 31.75%;
  margin-left: 2.35%;
  margin-bottom: 20px;
}

.articlesList.col3-4 li:nth-of-type(1) {
  margin-left: 0;
}

.articlesList.col3-4 li .data {
  font-size: 1rem;
  margin: 5px 0 2px;
}

.articlesList.col3-4 li .tit {
  font-size: 1.4rem;
}

.articlesList.col3-4 li .txt {
  display: none;
}

.articlesList.col3-4 li:nth-of-type(n + 4) {
  width: calc(25% - 15px);
  margin-left: 20px;
  margin-bottom: 20px;
}

.articlesList.col3-4 li:nth-of-type(4) {
  margin-left: 0;
}

.articlesList.col3-4 li:nth-of-type(n + 4) .tit {
  font-size: 1.3rem;
}

/******************************
ページャー
******************************/

.articlesListPager {
  padding-top: 20px;
}

.articlesListPager ul {
  text-align: center;
  letter-spacing: -0.4em;
}

.articlesListPager li {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: middle;
}

.articlesListPager li+li {
  margin-left: 5px;
}

.articlesListPager a {
  display: block;
  min-width: 30px;
  color: #696969;
  font-family: "Times", "Times New Roman", serif;
  font-size: 1.1rem;
  line-height: 30px;
  text-decoration: none;
  background: #eee;
  transition: all 0.3s ease;
}

.articlesListPager li.active a,
.articlesListPager a:hover {
  background: #000;
  color: #fff;
}

.articlesListPager li.prev a,
.articlesListPager li.next a {
  position: relative;
  color: #fff;
  background: none !important;
}

.articlesListPager li.prev a i,
.articlesListPager li.next a i {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-width: 6px 8px;
  border-style: solid;
  transition: all 0.3s ease;
}

.articlesListPager li.prev a i {
  right: 12px;
  border-color: transparent #000 transparent transparent;
}

.articlesListPager li.next a i {
  left: 12px;
  border-color: transparent transparent transparent #000;
}

.articlesListPager li.prev a:hover i,
.articlesListPager li.next a:hover i {
  opacity: 0.7;
}

.articlesListPager li.prev a i:nth-child(2) {
  right: 20px;
}

.articlesListPager li.next a i:nth-child(2) {
  left: 20px;
}

/******************************
詳細ページ
******************************/

/*記事タイトル*/

.articleDetailHead {
  margin-bottom: 10px;
}

.articleDetailHead .meta {
  margin-bottom: 5px;
  padding-left: 2px;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.articleDetailHead .meta .date {
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  color: #999;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

.articleDetailHead .meta .sponsor {
  width: 100px;
}

.articleDetailHead .sponsor img {
  max-width: 100%;
  vertical-align: middle;
}

.articleDetailHead .tit {
  color: #323232;
  font-size: 2rem;
  line-height: 1.4;
  letter-spacing: 0.1em;
}

.articleDetailHead .bottom {
  width: 100%;
  text-align: left;
  color: #999;
  padding-top: 10px;
}

.articleDetailHead .author {
  letter-spacing: -0.4em;
}

.articleDetailHead .author>div {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: normal;
}

.articleDetailHead .authorImg a {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #eeeeee;
  background-size: cover;
  margin-right: 10px;
}

.articleDetailHead .authorTxt {
  line-height: 1;
}

.articleDetailHead .authorTxt .name a {
  font-size: 1.3rem;
  color: #323232;
}

.articleDetailHead .authorTxt .follow_button a {
  width: 124px;
  height: 22px;
  background: #000;
  color: #fff;
  font-size: 1rem;
  text-align: center;
  line-height: 22px;
}

.articleDetailHead .authorTxt .btn.follow_button_done a {
  width: 124px;
  height: 22px;
  background: #888;
  color: #fff;
  font-size: 1rem;
  text-align: center;
  line-height: 22px;
}

.articleDetailHead .authorTxt .btn.follow_button_done a:hover {
  opacity: 1;
}

.articleDetailHead .sns {
  text-align: center;
  padding-top: 10px;
}

.articleDetailHead .sns ul {
  /* letter-spacing: -0.4em; */
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  padding-bottom: 10px;
  background: #eee;
}

.articleDetailHead .sns li a {
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  display: block;
  width: auto;
  line-height: 30px;
  text-align: center;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.1rem;
  color: #fff;
  transition: all 0.3s ease;
}

.articleDetailHead .sns li a::before {
  content: "";
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-size: 1.5rem;
}

.articleDetailHead .sns .archive_button_done a,
.articleDetailHead .sns .archive_button a {
  background: #d5010f;
}

.articleDetailHead .sns .archive_button_done a::before,
.articleDetailHead .sns .archive_button a::before {
  content: "\f019";
  font-weight: 900;
}

.articleDetailHead .sns .fb a {
  background: #143e85;
}

.articleDetailHead .sns .fb a::before {
  content: "\f39e";
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
}

.articleDetailHead .sns .li a {
  background: #00b900;
}

.articleDetailHead .sns .li a::before {
  content: "\f3c0";
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
}

/* 新しくつくった記事SNSアイコンフィールド */
.articleDetailHead .articleSns li.tw {
  background-color: #000;
}

.articleDetailHead .articleSns li.tw a {
  display: flex;
  height: 100%;
}

.articleDetailHead .articleSns li.tw a img {
  width: 14px;
  height: 14px;
  display: block;
  margin: auto;
}

.articleDetailHead .sns li.tw {
  background-color: #000;
}

.articleDetailHead .sns li.tw a {
  display: flex;
  height: 100%;
}

.articleDetailHead .sns li.tw a img {
  width: 14px;
  height: 14px;
  display: block;
  margin: auto;
}

/* マージンキャンセル */
.articleDetailHead .articleSns li a:before {
  margin: 0;
}

.articleDetailHead .sns li.archive_button_done a::before,
.articleDetailHead .sns li.archive_button a::before {
  margin: 0 10px 0 0;
}


/* 記事SNS */
.articleDetailSns {
  margin-top: 20px;
}

.articleDetailSns ul {
  width: 100%;
  display: inline-block;
  letter-spacing: -0.4em;
}

.articleDetailSns ul:before {
  content: "SHARE";
  display: inline-block;
  font-family: "Lato", sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.15em;
  vertical-align: middle;
  width: 20%;
}

.articleDetailSns li {
  letter-spacing: normal;
  width: 25.5%;
  margin-left: 1%;
  display: inline-block;
  vertical-align: middle;
}

.articleDetailSns li a {
  text-decoration: none;
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 15px;
  background: #eee;
}

/*記事メイン画像*/

.articleDetailImg .img {
  position: relative;
}

.articleDetailImg img {
  width: 100% !important;
  height: auto;
}

/*記事メイン画像の矢印*/

.articleDetailImg .brk {
  width: 20px;
  height: 80px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -10px;
  right: auto;
  margin: auto 0;
  background-color: #323232;
  display: flex;
  justify-content: center;
  align-items: center;
}

.articleDetailImg .brk img {
  display: none;
}

.articleDetailImg .brk:after {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  bottom: 0;
  left: 7px;
  right: auto;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

.articleDetailImg .brk.b-next {
  left: auto;
  right: -10px;
}

.articleDetailImg .brk.b-next:after {
  left: auto;
  right: 7px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}

.articleDetailImg .num {
  width: 70px;
  background: #323232;
  color: #fff;
  position: absolute;
  bottom: -7px;
  right: 10px;
  text-align: center;
  font-size: 10px;
  padding: 1px 0;
  border-radius: 3px;
  letter-spacing: 0.3em;
}

.articleDetailImg .meta {
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  margin: 10px 0;
}

/*画像一覧*/

.articleDetailImgList {
  margin: 15px -1.65%;
  font-size: 0;
}

.articleDetailImgList li a {
  display: block;
}

.articleDetailImgList li {
  width: 25%;
  padding: 1% 1%;
  display: inline-block;
  box-sizing: border-box;
}

.articleDetailImgList li .img {
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
}

/*記事詳細*/

.articleDetailTxt {
  font-size: 1.55rem;
  line-height: 1.6;
  color: #000;
  margin-top: 25px;
}

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

.articleDetailTxt a {
  color: #c20900;
}

.articleDetailTxt .contBtn a {
  color: #fff;
}

.articleDetailTxt .articlesListPager a {
  color: #696969;
}

.articleDetailTxt .articlesListPager a {
  color: #696969;
}

.articleDetailTxt .articlesListPager li.active a,
.articleDetailTxt .articlesListPager a:hover {
  color: #fff;
}

.article_detail .kizi-honbun h2 {
  margin: 2.6rem 0 1.8rem;
  padding: 5px 0 5px 15px;
  border-left: 3px solid #c30901;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  color: #000;
  word-break: break-all;
}

.article_detail .kizi-honbun h3 {
  margin: 2rem 0 1.4rem;
  padding: 5px 0 5px 0;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.333;
  letter-spacing: 0;
  color: #000;
  word-break: break-all;
}

.articleDetailTxt .kizi-honbun p {
  margin-bottom: 0px;
}

.articleDetailTxt .kizi-honbun strong {
  line-height: 1.6;
  display: inline-block;
}

.articleDetailTxt .kizi-honbun img {
  max-width: 100%;
  height: auto;
}

.articleDetailTxt .kizi-honbun span.caption {
  width: 100%;
  display: inline-block;
  text-align: left;
  font-size: 1.1rem;
}

.articleDetailTxt .add {
  margin: 0 25px 25px 0;
  float: left;
}

.articleDetailTxt .lead {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.09em;
  line-height: 1.65;
  display: block;
  margin-bottom: 20px;
}

.articleDetailTxt+.contBtn,
.articleDetailTxt .contBtn {
  margin-top: 30px;
}

/*記事本文内*/

.article_detail {
  font-size: 16px;
  line-height: 1.7;
}

.article_detail iframe {
  width: 100%;
}

.article_detail .js-iframe-size iframe {
  height: auto;
  display: block;
  margin: 0 auto;
}

/*iframeというクラスの親要素にiframeが表示される場合*/
.articleDetailImg .iframe {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}

.articleDetailImg .iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*記事翻訳者*/

.articleDetailTranslator {
  font-size: 1.4rem;
  color: #999;
  margin-top: 25px;
}

/*記事下部広告*/

.articleDetailAdd {
  text-align: center;
  letter-spacing: -0.4em;
  margin: 25px 0 40px;
}

.articleDetailAdd .add {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 10px;
}

.articleDetailAdd .add div {
  max-width: 100% !important;
}

.articleDetailAdd .add img {
  width: 100%;
  height: auto;
}

.articleDetailAdd .add iframe {
  width: 100% !important;
}

/*記事タグ*/

.articleDetailTag {
  margin-top: 25px;
  font-size: 1.2rem;
}

.articleDetailTag ul {
  display: inline-block;
  letter-spacing: -0.4em;
}

.articleDetailTag li {
  display: inline-block;
  letter-spacing: normal;
}

.articleDetailTag li+li {
  margin-left: 5px;
}

.articleDetailTag li a {
  color: #be1e1e !important;
  text-decoration: none;
  transition: all 0.3s ease;
}

.articleDetailTag li a:hover {
  text-decoration: underline;
}

/*記事下部一覧*/

.articleDetailList {
  margin-top: 45px;
}

.articleDetailList section+section {
  margin-top: 30px;
}

.articleDetailList .contTit {
  text-align: left;
}

.articleDetailList .contTit span {
  display: inline-block;
  margin-top: 0;
  text-align: left;
  margin-left: 12px;
  font-size: 1rem;
  letter-spacing: 0.08em;
  color: #999;
  font-weight: normal;
  vertical-align: 4px;
}

/*ローディング*/

.loading {
  text-align: center;
  padding: 10px 0;
}

.loadingTxt {
  font-size: 1.4rem;
  color: #959595;
  margin-top: 20px;
}

.loading img {
  -webkit-animation: rotate-anime 2s linear infinite;
  animation: rotate-anime 2s linear infinite;
}

@-webkit-keyframes rotate-anime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotate-anime {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.loading+section {
  margin-top: 50px;
}

/******************************
写真一覧ページ
******************************/

/*記事画像*/

.articleGalleryImg .img {
  padding-top: 48.8%;
  background: #eee;
}

.articleGalleryImg img {
  width: 100%;
  height: auto;
}

.articleGalleryImg .meta {
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  margin: 10px 0;
  text-align: left;
}

.articleGalleryImg .by {
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
  text-align: left;
}

/*前の画像 / 次の画像*/

.articleGalleryBtn {
  overflow: hidden;
}

.articleGalleryBtn .prev,
.articleGalleryBtn .next {
  width: 48%;
  max-width: 190px;
}

.articleGalleryList+.articleGalleryBtn .prev,
.articleGalleryList+.articleGalleryBtn .next {
  width: 48%;
  min-width: 160px;
}

.articleGalleryBtn .prev {
  float: left;
}

.articleGalleryBtn .next {
  float: right;
}

.articleGalleryBtn .prev a,
.articleGalleryBtn .next a {
  width: 100%;
  font-size: 1.2rem;
  line-height: 47px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: #000;
  position: relative;
  transition: all 0.3s ease;
}

.articleGalleryBtn .prev a {
  float: left;
}

.articleGalleryBtn .next a {
  float: right;
}

.articleGalleryBtn .prev a:before,
.articleGalleryBtn .next a:before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: auto 0px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.articleGalleryBtn .prev a:before {
  left: 10px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.articleGalleryBtn .next a:before {
  right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.articleGalleryList+.articleGalleryBtn .next a:before {
  right: 15px;
}

.articleGalleryImg+.articleGalleryBtn .prev a,
.articleGalleryImg+.articleGalleryBtn .next a {
  background: #eee;
  color: #000;
}

.articleGalleryImg+.articleGalleryBtn .prev a:before,
.articleGalleryImg+.articleGalleryBtn .next a:before {
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

.articleGalleryImg+.articleGalleryBtn .prev a:hover,
.articleGalleryImg+.articleGalleryBtn .next a:hover {
  background: #323232;
  color: #fff;
}

.articleGalleryImg+.articleGalleryBtn .next a:hover:before,
.articleGalleryImg+.articleGalleryBtn .next a:hover:before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

/*画像一覧*/

.articleGalleryList {
  margin: 15px -1.65%;
  font-size: 0;
}

.articleGalleryList li a {
  display: block;
}

.articleGalleryList li a.active {
  opacity: 0.5;
  border: solid 3px #bbb;
}

.articleGalleryList li {
  width: 14%;
  padding: 0.5%;
  display: inline-block;
  box-sizing: border-box;
}

.articleGalleryList li .img {
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
}

/******************************
著者詳細
******************************/

/*著者詳細*/

.autherDetail {
  margin-bottom: 20px;
}

.autherDetail .imgWrap .img {
  width: 170px;
  padding-top: 170px;
  margin: 0 auto;
  border-radius: 50%;
  background: #eee;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.autherDetail .txtWrap {
  margin-top: 20px;
  text-align: center;
}

.autherDetail .txtWrap .lead {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.09em;
}

.autherDetail .txtWrap .tit {
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: 0.09em;
}

.autherDetail .txtWrap .txt {
  font-size: 1.2rem;
  line-height: 30px;
}

.autherDetail .txtWrap .follow_button {
  display: inline-block;
  margin: 15px 0 0 20px;
  text-align: center;
}

.autherDetail .txtWrap .follow_button a {
  position: relative;
  display: block;
  width: 104px;
  height: 24px;
  margin: 0 auto;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  line-height: 24px;
  background: #000;
  transition: all 0.3s ease;
}

.autherDetail .txtWrap .follow_button a::before {
  content: "+";
  position: absolute;
  top: 0;
  left: -20px;
  height: 24px;
  padding: 0 4px 0 6px;
  color: #000;
  font-size: 1.6rem;
  line-height: 20px;
  background: #fff;
  border: 1px solid #000;
  box-sizing: border-box;
}

.autherDetail .txtWrap .follow_button_done {
  display: inline-block;
  margin: 15px 0 0 20px;
  text-align: center;
}

.autherDetail .txtWrap .follow_button_done a {
  position: relative;
  display: block;
  width: 104px;
  height: 24px;
  margin: 0 auto;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  line-height: 24px;
  background: #888;
  transition: all 0.4s ease;
}

.autherDetail .txtWrap .follow_button_done a::before {
  content: "-";
  position: absolute;
  top: 0;
  left: -20px;
  width: 24px;
  height: 24px;
  color: #888;
  font-size: 15px;
  text-align: center;
  line-height: 20px;
  background: #fff;
  border: 1px solid #888;
  box-sizing: border-box;
}

.autherDetail .txtWrap .follow_button_done a:hover {
  opacity: 1;
}

.login_button {
  display: inline-block;
  background-color: #000;
  color: #fff;
  line-height: 22px;
  font-size: 1rem;
  width: 100px;
  height: 22px;
  text-align: center;
}

.memberRegistration {
  position: relative;
  margin-top: 30px;
}

.memberRegistration .memberRegistrationTitle {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.5rem;
  cursor: pointer;
  position: absolute;
  top: 35px;
  left: 0;
  border-bottom: 1px solid;
}

.memberRegistration .memberRegistrationTitle span {
  font-size: 2.5rem;
  white-space: nowrap;
  text-indent: 2.5em;
}

.memberRegistration .memberRegistrationInput {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.5rem;
  cursor: pointer;
  position: absolute;
  top: 45px;
  left: 40px;
}

.memberRegistration .authFormInputId .authFormInputPass {
  width: 100%;
  padding: 10px 220px 10px 10px;
  font-size: 1.2rem;
  letter-spacing: .06em;
  border: none;
  background: #F1F1F1;
  box-sizing: border-box;
}

.memberRegistration .memberRegistrationId {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.5rem;
  cursor: pointer;
  position: absolute;
  top: 45px;
  left: 30px;
  width: 300px;
  height: 45px;
  max-width: 90%;
}

.memberRegistration .memberRegistrationPass {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.5rem;
  cursor: pointer;
  position: absolute;
  top: 100px;
  left: 30px;
  width: 300px;
  height: 45px;
  padding-top: 5px;
  max-width: 90%;
}

.memberRegistration .authFormSubmit {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.5rem;
  cursor: pointer;
  position: absolute;
  top: 195px;
  left: 75px;
  border: none;
  background: #000;
  box-sizing: border-box;
  transition: all 0.4s ease;
  text-align: left;
}

.memberRegistration .memberRegistrationGift {
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.0rem;
  cursor: pointer;
  position: absolute;
  top: 215px;
  left: 15px;
  border: none;
  box-sizing: border-box;
  transition: all 0.4s ease;
}

.memberRegistration .authFormInputText {
  /*margin-top: 20px;*/
  /*width: 100%;*/
  width: 365px;
  height: 45px;
  padding: 5px 0px 0px 0px;
  font-size: 1.2rem;
  letter-spacing: .06em;
  border: none;
  background: #F1F1F1;
  box-sizing: border-box;
}

@media screen and (max-width:341px) {
  .memberRegistration .memberRegistrationTitle span {
    text-indent: 0.5em;
  }

  .memberRegistration .memberRegistrationTitle {
    top: 10px;
  }

  .memberRegistration .memberRegistrationGift {
    top: 190px;
  }

  .memberRegistration .authFormSubmit {
    top: 190px;
    left: 50px;
  }
}

@media screen and (max-width:281px) {
  .memberRegistration .memberRegistrationTitle span {
    font-size: 2rem;
  }

  .memberRegistration .memberRegistrationTitle {
    top: 10px;
  }

  .memberRegistration .memberRegistrationGift {
    top: 155px;
    white-space: nowrap;
  }

  .memberRegistration .authFormSubmit {
    top: 155px;
    left: 45px;
  }

  .memberRegistration .memberRegistrationId {
    top: 30px;
  }

  .memberRegistration .memberRegistrationPass {
    top: 75px;
  }

  .memberRegistration .authFormInputText {
    height: 10px;
  }
}

.tagList ul {
  overflow: hidden;
}

.tagList li {
  display: inline-block;
  margin: 0 5% 3% 0;
}

.tagList li a {
  font-size: 1.4rem;
  color: #0086cb;
}

.tagMenu {
  padding-bottom: 20px;
}

.tagMenu ul {
  letter-spacing: -0.4em;
}

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

.tagMenu li {
  box-sizing: border-box;
  font-size: 1.3rem;
  width: 50%;
  letter-spacing: normal;
  text-align: center;
  float: left;
  position: relative;
}

.tagMenu li a,
.tagMenu li span {
  display: block;
  border-bottom: solid 1px #ccc;
  border-left: solid 1px #ccc;
  text-decoration: none;
  padding: 5px 10px;
}

.tagMenu li:nth-child(even) a,
.tagMenu li:nth-child(even) span {
  border-right: solid 1px #ccc;
}

.tagMenu li:nth-child(-n + 2) a,
.tagMenu li:nth-child(-n + 2) span {
  border-top: solid 1px #ccc;
}

.tagMenu .inlist span {
  padding-right: 20px;
}

.tagMenu .inlist:after {
  position: absolute;
  content: "";
  display: block;
  top: -5px;
  bottom: 0;
  right: 10px;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transition: all 0.3s ease;
}

.tagMenu .inlistBox {
  opacity: 0;
  width: 100%;
  padding: 15px 10px 15px;
  background: #dfdfdf;
  position: absolute;
  top: 100%;
  transition: all 0.3s ease;
  z-index: -1;
  box-sizing: border-box;
}

.tagMenu li.menuOpen .inlistBox {
  opacity: 1;
  z-index: 1;
}

.tagMenu .inlistBox li {
  width: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  margin-left: 0;
  display: block;
  float: none;
  padding-bottom: 0;
  text-align: left;
}

.tagMenu .inlistBox li a {
  border: none;
}

.tagMenu .inlistBox li+li {
  margin-top: 5px;
}

.tagMenu .inlistBox li a:hover {
  text-decoration: underline;
}

.tagMenu .inlistBox li:before {
  content: normal;
}

/*雑誌*/

.pg-title.magazine-detail {
  margin-bottom: 30px;
}

/* .magazinesDetail {
  width: 100%;
  padding: 0 0 50px;
  display: table;
  box-sizing: border-box;
}

.magazinesDetail .imgWrap {
  display: table-cell;
  width: 410px;
  border: 1px solid #ccc;
  vertical-align: top;
}

.magazinesDetail .imgWrap .img {
  width: 100%;
  padding-top: 130%;
  background: #eee;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.magazinesDetail .txtWrap {
  padding: 35px 0 0 30px;
  display: table-cell;
  vertical-align: top;
} */
.magazinesDetail {
  margin: 0 -15px 40px;
}

.magazinesDetail .imgWrap {
  padding: 20px 15px;
  border: 1px solid #ddd;
}

.magazinesDetail .txtWrap .issue {
  font-size: 1.6rem;
  font-weight: 600;
  /* position: relative; */
}

/******************************
バックナンバー
******************************/

/*バックナンバー一覧*/

.magazinesBacknumberList {
  margin: 0 -1.65%;
  font-size: 0;
}

.magazinesBacknumberList li {
  width: 50%;
  padding: 0 1.65% 20px;
  display: inline-block;
  box-sizing: border-box;
}

.magazinesBacknumberList li a {
  display: block;
  text-decoration: none;
}

.magazinesBacknumberList li .img {
  padding-top: 132%;
  background-color: #eee;
  background-size: cover;
}

.magazinesBacknumberList li .txt {
  margin-top: 5px;
  font-size: 1.2rem;
  letter-spacing: 0.09em;
  text-align: center;
  color: #444;
}

.magazinesBacknumberList li .contBtn a {
  margin-top: 5px;
  font-size: 1rem;
  letter-spacing: 0.09em;
  padding: 5px 0;
  border-radius: 5px;
}

.magazinesBacknumberList li .contBtn a:hover::before {
  width: 5px;
  height: 5px;
  right: 15px;
  opacity: 1;
}

/******************************
誌面目次
******************************/

/*雑誌*/

.magazinesDetail {
  margin: 0 -15px 40px;
  /*background: #000;*/
}

.magazinesDetail .imgWrap {
  padding: 20px 15px;
}

.magazinesDetail .imgWrap .img {
  width: 100%;
  padding-top: 130%;
  background-color: #eee;
  background-size: cover;
}

.magazinesDetail .txtWrap {
  padding: 0 15px 20px;
}

.magazinesDetail .txtWrap .mazazine {
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  padding-left: 60px;
  position: relative;
}

.magazinesDetail .txtWrap .mazazine:before {
  content: "最新号";
  width: 50px;
  margin-right: 15px;
  font-size: 12px;
  line-height: 35px;
  letter-spacing: 0.1em;
  text-align: center;
  background: #ef1144;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.magazinesDetail .txtWrap .tit {
  margin-top: 10px;
  font-size: 2rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.magazinesDetail .txtWrap .txt {
  margin-top: 13px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.magazinesDetail .btnWrap {
  width: 100%;
  margin-top: 20px;
  overflow: hidden;
}

.magazinesDetail .btnWrap .btnS {
  width: 48.78%;
  float: left;
  margin-bottom: 10px;
}

.magazinesDetail .btnWrap .btnS:nth-child(even) {
  float: right;
}

.magazinesDetail .txtWrap .btnS a {
  display: block;
  width: 100%;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 38px;
  text-align: center;
  text-decoration: none;
  border: 1px solid #ddd;
  box-sizing: border-box;
}

/*.magazinesDetail .txtWrap .btnS:nth-child(1) a {
  color: #ea8c11;
  border: 1px solid #ea8c11;
}

.magazinesDetail .txtWrap .btnS:nth-child(2) a {
  color: #069b55;
  border: 1px solid #069b55;
}*/

.magazinesDetail .contBtn {
  margin-top: 15px;
}

.magazinesDetail .contBtn a {
  display: block;
  position: relative;
  width: 100%;
  height: 35px;
  padding: 0;
  color: #fff;
  font-size: 1.2rem;
  line-height: 35px;
  text-align: center;
  background: #000;
  text-decoration: none;
}

.magazinesDetail .contBtn a::before {
  content: url(../img/top/arrow_current.png);
  position: absolute;
  top: -3px;
  right: 13px;
  line-height: 40px;
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.magazinesDetailList dl {
  width: 100%;
  margin-bottom: 28px;
}

.magazinesDetailList dl dt {
  height: 200px;
  margin-bottom: 18px;
  overflow: hidden;
  position: relative;
}

.magazinesDetailList dl dt img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.magazinesDetailList dl dd {
  padding-left: 10px;
}

.magazinesDetailList dl dd h5 {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}

.magazinesDetailList dl dd strong {
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}

.magazinesDetailList dl dd p {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

/*目次*/

.magazinesDetailList {
  margin-top: 20px;
  overflow: hidden;
}

/*.magazinesDetailList .left,
.magazinesDetailList .right {
  width: 100%;
}

.magazinesDetailList li {
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.06em;
}

.magazinesDetailList li + li {
  margin-top: 15px;
}

.magazinesDetailList li span {
  padding-right: 1em;
  font-size: 13px;
  color: #BBB;
}

.magazinesDetailList .contBtn {
  width: 100%;
  margin: 0 auto;
  padding-top: 40px;
  clear: both;
}

.magazinesDetailList .contBtn a {
  padding: 15px 0;
  font-size: 1.4rem;
  border-radius: 5px;
}*/

.magazinesDetailList .list {
  line-height: 1.4;
}

.magazinesDetailList .list li {
  width: 100%;
  display: table;
}

.magazinesDetailList .list li p {
  font-size: 1.4rem;
  display: table-cell;
}

.magazinesDetailList .list li span {
  margin-top: 8px;
  font-size: 1.2rem;
  display: block;
}

.magazinesDetailList .list li .no {
  width: 20%;
  padding-right: 30px;
  color: #999;
}

.magazinesDetailList .list li .tit {
  font-weight: bold;
}

.magazinesDetailList .list .sizeL {
  display: block;
}

.magazinesDetailList .list .sizeM+.sizeL {
  margin-top: 25px;
}

.magazinesDetailList .list .sizeL .no {
  font-size: 1.6rem;
  display: block;
}

.magazinesDetailList .list .sizeL .tit {
  font-size: 1.8rem;
  display: block;
}

.magazinesDetailList .list .sizeM {
  margin-top: 25px;
  font-size: 1.4rem;
}

.magazinesDetailList .list .sizeL+.sizeM {
  margin-top: 20px;
}

.magazinesDetailList .list .sizeS {
  margin-top: 15px;
}

.magazinesDetailList .list .sizeM+.sizeS {
  margin-top: 25px;
}

.magazinesDetailList .list .sizeS .no,
.magazinesDetailList .list .sizeS .tit {
  font-size: 1.2rem;
}

.magazinesDetailList .list .special {
  margin: 15px 0 40px;
}

.magazinesDetailList .list .cover {
  margin-bottom: 20px;
  padding: 2px 0 4px 8px;
  border-left: 3px solid #333;
  display: block;
}

.magazinesDetailList .list .cover .tit {
  font-size: 1.5rem;
  display: block;
}

.magazinesDetailList .list .cover .txt {
  margin-top: 5px;
  font-size: 1.2rem;
  font-weight: bold;
  display: block;
}

.magazinesDetailList .list .img {
  width: 100%;
}

.magazinesDetailList .contBtn a {
  width: 100%;
  margin: 25px auto 0;
  padding: 0;
  font-size: 1.2rem;
  line-height: 51px;
  text-align: center;
  color: #fff;
  background: #ef1144;
  display: block;
  text-decoration: none;
}

/*お知らせ詳細*/

.newsDetail {
  padding-bottom: 40px;
  font-size: 1.4rem;
  line-height: 2.15;
  color: #444;
}

.newsDetail img {
  max-width: 100%;
}

/******************************
お知らせ
******************************/

/*お知らせ一覧*/

.newsList li {
  border-bottom: solid 1px #ddd;
  padding: 10px 0;
}

.newsList li:first-child {
  /*margin-top: -20px;*/
}

.newsList li a {
  text-decoration: none;
}

.newsList li .date {
  font-size: 1rem;
  letter-spacing: 0.1em;
  color: #999;
}

.newsList li .tit {
  font-size: 1.4rem;
  font-weight: 600;
}

/******************************
TOPページ
******************************/

/*メイン一覧（タイプ1）*/

.topMainSection {
  padding-bottom: 0px;
  margin-bottom: -10px;
}

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

.topMainSection .cate {
  font-family: "Times", "Times New Roman", sans-serif;
  display: inline-block;
  padding: 4px 10px 3px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  /* background: #ef1144; */
  background: rgba(195, 9, 1, 0.85);
  text-align: center;
  box-sizing: border-box;
}

.topMainSection .data {
  display: none !important;
}

.topMainSection .tit {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.1;
  letter-spacing: 0.1em;
  color: #444;
  margin-bottom: 5px;
}

.topMainSection .txt {
  font-size: 1.2rem;
  line-height: 1.65;
  color: #444;
  margin-top: 10px;
  display: none;
}

.topMainSection li:nth-of-type(1) {
  width: 100%;
  position: relative;
  margin-bottom: 15px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.topMainSection li:nth-of-type(1) a {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 200px;
}

.topMainSection li:nth-of-type(1) .meta {
  margin-top: auto;
}

.topMainSection li:nth-of-type(1) .cate {
  padding: 6px 15px;
  font-size: 1.4rem;
  position: static;
}

.topMainSection li:nth-of-type(1) .txtBox {
  box-sizing: border-box;
  position: static;
  width: 100%;
  padding: 15px;
  /* background: rgba(0,0,0,.3); */
}

.topMainSection li:nth-of-type(1) .tit {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.45;
  color: #fff;
}

.topMainSection li:nth-of-type(n + 2) {
  width: 50%;
  float: left;
  margin-bottom: 10px;
  position: relative;
}

.topMainSection li:nth-of-type(n + 2) a {
  width: 100%;
}

.topMainSection li:nth-of-type(n + 2) .img {
  padding-top: 49%;
  background: #eee;
  position: relative;
  background-position: center;
  background-size: cover;
  position: relative;
}

.topMainSection li:nth-of-type(n + 2) .tit {
  margin: 12px 15px;
  font-size: 1.4rem;
  line-height: 1.3;
}

.topMainSection li:nth-of-type(n + 2) .cate {
  position: absolute;
  left: 0;
  bottom: 0;
}

/*メイン一覧（共通）*/

.topSection li:first-of-type .img,
.topSection li:first-of-type .tit {
  margin: 0 auto 12px;
  width: calc(100vw - 30px) !important;
}

/*メイン一覧（タイプ2）*/

.topMainSectionType2 {
  margin-bottom: 40px;
}

.topMainSectionType2 li {
  margin-bottom: 10px;
}

.topMainSectionType2 a {
  text-decoration: none;
  display: table;
  position: relative;
  width: 100%;
}

.topMainSectionType2 a>div {
  display: table-cell;
  vertical-align: middle;
}

.topMainSectionType2 .img {
  width: 41.38%;
  height: 0;
  padding-top: 21vw;
  background: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}

.topMainSectionType2 .txtBox {
  padding-left: 10px;
}

.topMainSectionType2 .data {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1rem;
  color: #aaa;
  margin-bottom: 3px;
}

.topMainSectionType2 .cate {
  font-family: "Times", "Times New Roman", sans-serif;
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 4px 10px 3px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  /* background: #ef1144; */
  background: rgba(195, 9, 1, 0.85);
  text-align: center;
  box-sizing: border-box;
}

.topMainSectionType2 .tit {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  line-height: 1.3;
  color: #444;
  font-weight: normal;
}

.topMainSectionType2 li:nth-of-type(1) {
  margin-bottom: 10px;
}

.topMainSectionType2 li:nth-of-type(1) a {
  display: block;
}

.topMainSectionType2 li:nth-of-type(1) .img {
  display: block;
  width: 100%;
  padding-top: 57.75%;
  margin-bottom: 0;
  position: relative;
}

.topMainSectionType2 li:nth-of-type(1) .tit {
  margin-top: 10px;
}

.topMainSectionType2 li:nth-of-type(1) .cate {
  width: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  margin-bottom: 0;
}

.topMainSectionType2 .sponsor {
  position: absolute;
  top: 0;
  right: 0;
  text-align: right;
}

.topMainSectionType2 .sponsor img {
  width: 70%;
  height: auto;
}

/*一覧*/

.topSection+.topSection {
  margin-top: 30px;
}

.topSection .contBtn {
  margin-top: 10px;
}

.topSection .articlesList .data {
  display: none;
}

.topSection .articlesList .tit {
  margin-top: 10px;
}

.topSection .more-button {
  display: block;
  position: relative;
  margin: 40px auto;
  height: 40px;
  width: 100%;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
  line-height: 40px;
  letter-spacing: 0.1em;
  text-decoration: none;
  background: #000;
  transition: all 0.3s ease;
}

.topSection .more-button:before {
  content: url(../img/common/arrow_current.png);
  position: absolute;
  top: -3px;
  right: 15px;
  line-height: 40px;
}

/******************************
LISTS
******************************/
.listsBox {
  margin: 30px 0 25px;
  padding-top: 8px;
  /* border: 1px solid #E5E5E5; */
}

.listsBox .contTitHead {
  margin-bottom: 20px;
}

.listsBox .contTit {
  padding-left: 0;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-align: center;
}

.listsBox .contTit::before {
  content: none;
}

.listsBox .contTit::after {
  content: none;
}

.listsBox ul {
  padding-top: 8px;
  font-size: 16px;
  letter-spacing: 0.1em;
}

.listsBox ul li {
  padding: 10px 10px 13px;
  /* border-top: 1px solid #E5E5E5; */
}

.listsBox ul a {
  display: block;
  font-size: 1.4rem;
  text-decoration: none;
}

.listsBox ul a .date {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.2rem;
}

.listsBox ul .img {
  max-height: 150px;
  overflow: hidden;
}

.listsBox ul .tit {
  margin-top: 12px;
  font-size: 1.6rem;
}

/******************************
CoverStory
******************************/
.coverRtories {
  margin: 30px 0 25px;
  padding-top: 8px;
  /* border: 1px solid #E5E5E5; */
}

.coverRtories .contTitHead {
  margin-bottom: 20px;
}

.coverRtories .contTit {
  padding-left: 0;
  font-size: 1.6rem;
  text-align: center;
}

.coverRtories .contTit::before {
  content: none;
}

.coverRtories .contTit::after {
  content: none;
}

.coverRtoriesList {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  padding-bottom: 14px;
}

.coverRtoriesList a {
  display: block;
  padding: 15px 15px 0;
  font-weight: bold;
  font-size: 1.4rem;
  box-sizing: border-box;
}

.coverRtoriesList p {
  padding: 0 15px;
  font-size: 1.3rem;
}

.coverRtoriesList .img {
  width: 100%;
  padding: 0;
}

.coverRtoriesList .img img {
  width: 100%;
  height: auto;
}

/******************************
PR記事一覧用
******************************/

.prSection .articlesList .img,
.sidePrSection .sideArticlesList .img {
  background-color: #e7f2fd;
}

.prSection .articlesList .tit,
.sidePrSection .sideArticlesList .tit {
  color: #8da2ea;
}

.prSection .articlesList .prTxt,
.sidePrSection .sideArticlesList .prTxt {
  text-align: right;
  color: #999;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  margin-top: 10px;
}

.prSection .articlesList .prTxt {
  margin-top: -30px;
}

/******************************
記事広告一覧用
******************************/

.addSec .articlesList .img,
.sideAddSec .sideArticlesList .img {
  background-color: #fde7fc;
}

.addSec .articlesList .tit,
.sideAddSec .sideArticlesList .tit {
  /*color: #EA93BE;*/
  color: #323232;
}

/******************************
閲覧制限
******************************/

.noViewWrap {
  position: relative;
  height: 250px;
}

.noViewWrap:before {
  content: "";
  background: -moz-linear-gradient(top,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.88) 20%,
      rgba(255, 255, 255, 1) 60%,
      rgba(255, 255, 255, 1) 100%);
  background: -webkit-linear-gradient(top,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.88) 20%,
      rgba(255, 255, 255, 1) 60%,
      rgba(255, 255, 255, 1) 100%);
  background: linear-gradient(to bottom,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.88) 20%,
      rgba(255, 255, 255, 1) 60%,
      rgba(255, 255, 255, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 400px;
}

.noView {
  border: solid 4px #eeeeee;
  background-color: #eeeeee;
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.1em;
  padding: 0 10px;
  padding-top: 7px;
  position: absolute;
  bottom: 10px;
  left: 10px;
  width: calc(100% - 20px);
  height: auto;
  z-index: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.noViewTit {
  font-size: 1.3rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 5px;
}

.noView div {
  margin-top: 10px;
  margin-bottom: 30px;
  margin: 10px 10px 20px;
  border-radius: 7px;
  border: 1px solid #fff;
  background: #fff;
}

.noViewTxt {
  line-height: 2;
  color: #000;
  margin-bottom: 15px;
  padding-top: 20px;
  padding-left: 3px;
  padding-right: 3px;
}

.noView a {
  position: relative;
  color: #5fb6dc;
}

.noViewBtn {
  margin-bottom: 15px;
}

.noViewBtn a {
  position: relative;
  width: 75%;
  height: 35px;
  margin: 0 auto;
  color: #fff;
  font-size: 1.1rem;
  font-weight: bold;
  text-align: center;
  line-height: 35px;
  background: #008cc8;
}

.noViewLink {
  padding-bottom: 20px;
}

.noViewLink a::after {
  position: absolute;
  top: 6px;
  right: calc(50% - 59px);
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #5fb6dc;
  border-right: 1px solid #5fb6dc;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/******************************
閲覧制限
******************************/

.nextViewWrap {
  position: relative;
  height: 100px;
  overflow: hidden;
  margin-bottom: 20px;
}

.nextViewWrap:before {
  content: "";
  background: linear-gradient(to bottom,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.5) 20%,
      rgba(255, 255, 255, 0.75) 60%,
      white 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 64px;
}

/******************************
グッバイバナー
******************************/

.byeBanWrap {
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}

.byeBan {
  width: 80%;
  margin: 50vh auto 0;
  padding: 40px 0 20px;
  background: #fff;
  text-align: center;
  position: relative;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.byeBanClose {
  position: absolute;
  top: -45px;
  right: 0;
  font-size: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
}

.byeBanClose:hover {
  opacity: 0.5;
}

.byeBanClose:before,
.byeBanClose:after {
  content: "";
  display: block;
  background: #fff;
  width: 36px;
  height: 3px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.byeBanClose:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.byeBanClose:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.byeBanTit {
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #909090;
  margin-bottom: 15px;
}

.byeBanTxt {
  width: 80%;
  font-size: 1.3rem;
  line-height: 1.6;
  color: #909090;
  margin: 0 auto 10px;
  text-align: left;
}

.byeBan a {
  color: #8da2ea;
}

.byeBanBtn {
  margin: 30px 0 20px;
}

.byeBanBtn a {
  width: 80%;
  padding: 12px 0;
  margin: 0 auto;
  background: #e7f2fd;
  border: solid 1px #79adff;
  -webkit-text-decoration: none;
  text-decoration: none;
}

/*右コンテンツ一覧*/

.sideArticlesList {
  margin-bottom: 40px;
}

.sideArticlesList li {
  position: relative;
  margin-top: 20px;
}

/* サイドバー .mostViewed */
.mostViewed .sideArticlesList li {
  position: relative;
  margin: 20px 0 0;
}

.sideArticlesList a {
  display: table;
  text-decoration: none;
  width: 100%;
}

.sideArticlesList a>div {
  display: table-cell;
  vertical-align: middle;
}

.sideArticlesList .img {
  width: 80px;
  padding-top: 80px;
  position: relative;
  background: #eee;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.sideArticlesList .txtBox {
  padding-left: 10px;
  padding-bottom: 5px;
}

.sideArticlesList .data {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.2rem;
  color: #aaa;
  margin-bottom: 3px;
}

.sideArticlesList .tit {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  line-height: 1.25;
  color: #444;
}

.sideArticlesList.col2-1 li:nth-of-type(-n + 2) {
  width: calc(50% - 5px);
  margin-bottom: 10px;
  float: left;
  display: block;
}

.sideArticlesList.col2-1 li:nth-of-type(2) {
  margin-left: 10px;
}

.sideArticlesList.col2-1 li:nth-of-type(3) {
  clear: both;
}

.sideArticlesList.col2-1 li:nth-of-type(-n + 2) a>div {
  display: block;
}

.sideArticlesList.col2-1 li:nth-of-type(-n + 2) .img {
  width: 100%;
  padding-top: 49%;
}

.sideArticlesList.col2-1 li:nth-of-type(-n + 2) .txtBox {
  padding-left: 0;
}

.sideArticlesList.col2-1 li:nth-of-type(-n + 2) .data {
  margin: 8px 0px 5px;
}

/*右コンテンツ目次*/

.sideMokuziList ul {
  border: solid 1px #eee;
  margin-top: 30px;
}

.sideMokuziList li {
  margin-top: 0;
}

.sideMokuziList li+li {
  border-top: solid 1px #eee;
}

.sideMokuziList li a {
  display: block;
  padding: 10px 20px;
  font-size: 1.3rem;
}

.sideMokuziList li.current a {
  color: #fff;
  background: #000;
}

.sideMokuziListTit {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-top: 30px;
}

.sideMokuziListTit+ul {
  margin-top: 10px;
}

/*右コンテンツランキング*/
.mostViewed .sideArticlesList .img:before {
  content: "";
  width: 30px;
  height: 30px;
  background: #000;
  position: absolute;
  bottom: 0;
  right: 0;
}

.mostViewed .sideArticlesList .img:after {
  width: 30px;
  line-height: 30px;
  font-family: "Times", "Times New Roman", sans-serif;
  color: #fff;
  font-size: 16px;
  text-align: center;
  position: absolute;
  bottom: 0;
  right: 0;
}

.mostViewed .sideArticlesList li:nth-child(1) .img:after {
  content: "1";
}

.mostViewed .sideArticlesList li:nth-child(2) .img:after {
  content: "2";
}

.mostViewed .sideArticlesList li:nth-child(3) .img:after {
  content: "3";
}

.mostViewed .sideArticlesList li:nth-child(4) .img:after {
  content: "4";
}

.mostViewed .sideArticlesList li:nth-child(5) .img:after {
  content: "5";
}

/******************************
About Octaneページ
******************************/

.pg-hd.aboutus .pnav {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.pg-hd.aboutus .pnav li {
  display: inline-block;
  font-size: 1.3rem;
  padding: 6px 10px;
}

.pg-hd.aboutus .pnav li span {
  color: #c30901;
}

.pg-cont.aboutus h2 {
  margin-bottom: 25px;
  padding: 18px 0;
  font-size: 2rem;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #eee;
}

.pg-cont.aboutus .t-img {
  margin-bottom: 15px;
}

.pg-cont.aboutus .t-img img {
  width: 100%;
  height: auto;
}

/******************************
会社概要ページ
******************************/

.pg-cont .common1-box .logo {
  width: 100%;
  padding: 40px 0;
  text-align: center;
}

.pg-cont .common1-box .logo img {
  width: 100%;
}

.pg-cont .common1-box.company .text1 {
  margin-bottom: 35px;
}

.pg-cont .common1-box.company .text1.en {
  font-family: "Times", "Times New Roman", sans-serif;
}

.company-table {
  width: 100%;
  margin: 50px auto 0;
}

.company-table table {
  width: 100%;
}

.company-table table .en {
  display: block;
  font-style: italic;
  font-size: 80%;
}

.company-table table .list-en {
  margin-top: 15px;
  font-size: 80%;
}

.company-table th,
.company-table td {
  padding: 10px 8px;
  color: #323232;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #eee;
}

.company-table th {
  width: 24%;
  background: #f7f7f7;
}

.company-table td {
  width: 76%;
}

/* .companyTable td iframe {
    width: calc(100vw - 30px) !important;
} */

/******************************
個人情報保護方針ページ
******************************/
.privacyBox dl {
  margin-bottom: 25px;
}

.privacyBox h2 {
  margin-bottom: 25px;
}

.privacyBox>p {
  margin-bottom: 15px;
  font-size: 1.2rem;
}

.privacyBox dl dt {
  display: block;
  margin-bottom: 15px;
  font-size: 1.3rem;
  font-weight: bold;
}

.privacyBox dl dd {
  display: block;
  margin-bottom: 15px;
  font-size: 1.2rem;
}

.privacyBox dl dd p {
  margin-bottom: 15px;
}

.privacyBox dl dd li {
  margin-bottom: 5px;
  font-size: 1.2rem;
  text-indent: -1em;
  padding-left: 1em;
}

.privacyBox .privacySubList dd {
  padding-left: 1em;
}

.privacyBox .privacyFooter {
  text-align: right;
}

/******************************
情報のご提供ページ
******************************/
.publicityBox p {
  font-size: 1.2rem;
}

.publicityBox>p:last-of-type {
  margin-bottom: 20px;
}

.publicityBox .contact p {
  font-size: 1.3rem;
  font-weight: bold;
}

/******************************
広告掲載についてページ
******************************/
.btn1 {
  margin-bottom: 25px;
  padding: 5px;
  border: 1px solid #999;
  border-radius: 4px;
}

.btn1:hover {
  background: #eee;
  text-decoration: none;
}

.common1-box.advertisement {
  padding-top: 10px;
}

.advertisement-table .common1-table {
  margin-bottom: 10px;
}

.advertisement-table small {
  font-size: 70%;
  line-height: 1.3;
}

.advertisement-contact {
  text-align: center;
}

.advertisement-dl-btn {
  margin-bottom: 25px;
}

.advertisement-dl-btn a {
  display: inline-block;
  background: #e3e3e3;
  color: #323232;
  font-size: 14px;
  padding: 15px 20px;
  letter-spacing: 0.05em;
  margin: 0 5px;
}

.advertisement-contact-name {
  font-size: 13px;
  line-height: 1.7;
  margin-bottom: 10px;
}

.advertisement-contact-tel {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 20px;
}

.advertisement-contact-btn a {
  border: solid 1px #c30901;
  display: inline-block;
  background: #c30901;
  color: #fff;
  font-size: 16px;
  padding: 18px 20px;
  letter-spacing: 0.05em;
}

.advertisement-contact-btn a:hover {
  background: #fff;
  color: #c30901;
}

/******************************
閲覧制限ウォール
******************************/
.auth-contents {
  position: relative;
  overflow-y: hidden;
}

.articleDetailTxt {
  position: relative;
}

.CurrentMagazines li {
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

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

.CurrentMagazines li .img {
  padding-top: 152px;
  background-position: center;
  background-repeat: no-repeat;
  width: 120px;
  background-size: contain;
  border: 1px solid #eee;
  float: left;
  margin-right: 10px;
}

.CurrentMagazines li p {
  padding-top: 50px;
  font-weight: bold;
  margin-bottom: 5px;
}

.CurrentMagazines li a {
  display: table;
  color: #fff;
  font-size: 13px;
  text-indent: 1em;
  padding: 6px 30px 2px 0;
  min-width: 180px;
  text-align: center;
  background: url(../img/common/ico_header_nav.png) right 10px center no-repeat #000;
  background-size: 12px auto;
  margin-bottom: 15px;
}

.sub_categories {
  margin-bottom: 20px;
  background: #eee;
  padding: 10px 20px 6px;
}

.sub_categories li {
  display: inline;
  margin-right: 15px;
}

.sub_categories li a {
  text-decoration: underline;
}

.static-page {
  margin-bottom: 70px;
}

/* 雑誌詳細 */
.magazinesDetailList a:not(.contBtn > a) {
  text-decoration: underline !important;
}

.magazinesDetailList a:not(.contBtn > a):hover {
  text-decoration: none !important;
}

/* アンケート詳細 */
.presentsBox .txtWrap a {
  text-decoration: underline !important;
}

.presentsBox .txtWrap a:hover {
  text-decoration: none !important;
}