@charset "UTF-8";
/* CSS Document */
/* Reset */
* {
  zoom: 1;
}
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
address,
ul,
ol,
li,
dl,
dt,
dd,
table,
caption,
th,
td,
img,
form {
  margin: 0;
  padding: 0;
  border: none;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  text-align: left;
  list-style-type: none;
}
textarea {
  font-size: 100%;
}
hr {
  display: none;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

/* hover */
a {
  color: #003399;
  text-decoration: underline;
}
a:hover {
  color: #ff0000;
  text-decoration: underline;
}
/* Common */
html,
body {
  height: 100%;
}
body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 13px;
  line-height: 18px;
  color: #000;
  background: #f4f4f4;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body.non {
	font-family:'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 14px;
  line-height: 18px;
  background-color: #f4f4f4;
  background-image: none;
  color: #000;
}
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.clearfix {
  display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/* End hide from IE-mac */
.clearfix + * {
  clear: both;
}

.left {
  float: left;
}
.right {
  float: right;
}
sup {
  font-size: 60%;
  vertical-align: top;
  line-height: 1;
}
sub {
  font-size: 60%;
  vertical-align: baseline;
  line-height: 1;
  position: relative;
}

.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
.text-center {
  text-align: center !important;
}

.d-inline-block {
  display: inline-block !important;
}

.mt10 {
  margin-top: 10px;
}
.mt20 {
  margin-top: 20px;
}
.mb6 {
  margin-bottom: 6px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb15 {
  margin-bottom: 15px;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb25 {
  margin-bottom: 25px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb1em {
  margin-bottom: 1em;
}
.mb2em {
  margin-bottom: 2em;
}
.mr10 {
  margin-right: 10px;
}
.pl10 {
  padding-left: 10px;
}
.pl15 {
  padding-left: 15px;
}
.pl20 {
  padding-left: 20px;
}

.red {
  color: #cc0000;
}
.iconGray {
  font-size: 9px;
  color: #fff;
  background-color: #666;
  padding: 2px 5px;
  margin-left: 6px;
  font-weight: normal;
  white-space: nowrap;
}

/* 5/16 com */
.iconGray2 {
  font-size: 9px;
  color: #fff;
  background-color: #666;
  padding: 2px 5px;
  margin-right: 6px;
  font-weight: normal;
  text-decoration: none;
}

#cont .wrap.clearfix #mainCont #columnRecommend .subColumn.right .starBox.clearfix a .iconArea_ss.clearfix .iconGray {
  text-decoration: none;
}

#cont
  .wrap.clearfix
  #mainCont
  #columnRecommend
  .subColumn.right
  .starBox.clearfix
  a:hover
  .iconArea_ss.clearfix
  .iconGray {
  text-decoration: none;
}

/* 5/16 com */

img.iconStar {
  padding: 2px 2px 2px 6px;
  vertical-align: top;
}

.alpha:hover,
.over:hover,
.yoyakuBtn img:hover {
  filter: alpha(opacity=70); /* IE */
  opacity: 0.7; /* Firefox,Opera,Safari */
  -moz-opacity: 0.7; /* Firefox 0.9より前 */
}

/* base */

/* old head(2019.01.18) */
#head {
  width: 100%;
}
#head .logo {
  float: left;
  margin-top: 5px;
}
#head .date {
  float: left;
  margin-top: 37px;
  padding-left: 24px;
}
#head .ttl {
  padding-left: 24px;
  float: left;
}
#head .ttl .date {
  margin-top: 22px;
  padding-left: 0;
  margin-bottom: 4px;
}
#head .ttl h1 {
  font-weight: bold;
  font-size: 14px;
  border-top-width: 1px;
  border-top-style: dotted;
  border-top-color: #555253;
  padding-top: 4px;
  margin-top: 4px;
}

#head .ttl p.cate {
  font-weight: bold;
  font-size: 14px;
  border-top-width: 1px;
  border-top-style: dotted;
  border-top-color: #555253;
  padding-top: 4px;
  margin-top: 4px;
}

#head #magazineBloc {
  float: right;
  width: 115px;
  height: 91px;
  background-image: url(../img/common/bg_magazine.png);
  background-repeat: no-repeat;
  padding-top: 9px;
  padding-left: 10px;
}
#head #utility {
  float: right;
}
#head #utility p {
  float: right;
  margin-bottom: 8px;
  padding-left: 6px;
}

/* new head(2019.01.18) */
#head_v2 {
  width: 100%;
  padding-top: 5px;
  margin-bottom: 10px;
}
#head_v2 .logoBox {
  float: left;
  width: 210px;
}
#head_v2 h1.logo {
  margin: 0;
  padding: 0;
}
#head_v2 a {
  color: #000;
  text-decoration: none;
  border: 0;
}
#head_v2 .searchBox {
  float: left;
  width: 360px;
  height: 82px;
  line-height: 82px;
  padding: 0 0 0 40px;
}
#head_v2 input[type="text"] {
  width: 250px;
  padding: 6px;
  outline: none;
  border: 1px solid #999;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
#head_v2 .searchButton {
  padding: 4px 8px;
  outline: none;
  border: 1px solid #999;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  cursor: pointer;
}

#head_v2 .head_loginBox {
  float: right;
  height: initial;
  padding: 30px 0 0 0;
  font-size: 13px;
}
#head_v2 #free_provisional {
  width: 300px;
  line-height: 120%;
}
#head_v2 #free_provisional p.info {
  font-size: 10px;
}
#head_v2 .head_loginBox p.info {
  display: inline;
}
#head_v2 ul.loginBox___login {
  margin: 0;
  padding: 0;
}
#head_v2 ul.loginBox___login li {
  float: left;
  list-style-type: none;
  margin-left: 5px;
}
#head_v2 ul.loginBox___login li:after {
  content: " | ";
}
#head_v2 ul.loginBox___login li:last-child:after {
  content: "";
}
#head_v2 .head_loginBox a:hover {
  color: #ff0000;
  text-decoration: underline;
}
#head_v2 ul.global_navi {
  margin: 0;
  padding: 0;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN",
    "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-size: 15px;
}
#head_v2 ul.global_navi li {
  float: left;
  list-style-type: none;
  width: 16.5%;
  text-align: center;
  height: 45px;
  line-height: 45px;
  border-left: 1px solid #ddd;
}
#head_v2 ul.global_navi li:last-child {
  border-right: 1px solid #ddd;
}
#head_v2 ul.global_navi a {
  display: block;
  width: 100%;
  height: 44px;
  margin-top: 1px;
}
#head_v2 ul.global_navi a:hover {
  background: #fff;
}
@media screen and (max-width: 767px) {
  html,
  body {
    height: initial;
  }
  #head_v2 .logoBox,
  #head_v2 .logoBox img {
    width: 120px;
    height: 50px;
  }
  #head_v2 ul.global_navi,
  #head_v2 .searchBox {
    display: none;
  }
}

/**
 * Container
 */

.l-main {
  margin-top: 22px;
}

.wrap {
  width: 950px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
#cont {
  margin: 0 auto 64px;
}
#cont #side {
  width: 300px;
  float: right;
}

#cont #mainCont {
  width: 620px;
  float: left;
}

.bnrBtm {
  width: 728px;
  margin-left: auto;
  margin-right: auto;
}

#foot {
  background-image: url(../img/common/bg_foot.jpg);
  background-repeat: repeat-x;
  background-position: 0px 0px;
  background-color: #110a0d;
  padding: 0 0 10px 0;
}

#foot .fNav {
  float: left;
  padding-top: 25px;
  width: 200px;
}
#foot .fNav li {
  padding-right: 25px;
  padding-left: 15px;
}
#foot .toTop {
  text-align: right;
  float: right;
}
#foot address {
  text-align: right;
}

#log_box {
  width: 300px;
  height: 54px;
  position: relative;
  background-image: url(../img/side/bg_log_box.jpg);
  background-repeat: no-repeat;
  display: block;
}

#log_box .name_b {
  position: absolute;
  top: 20px;
  left: 55px;
  font-weight: bold;
}

#log_box .name {
  font-size: 20px;
  margin: 0 10px 0 0;
}

/*　sus_map　*/
.mainmap {
  position: relative;
}
.todoufuken1 {
  position: absolute;
  top: 20px;
  left: 438px;
}
.todoufuken2 {
  position: absolute;
  top: 148px;
  left: 437px;
}
.todoufuken3 {
  position: absolute;
  top: 180px;
  left: 505px;
}
.todoufuken4 {
  position: absolute;
  top: 210px;
  left: 505px;
}
.todoufuken5 {
  position: absolute;
  top: 180px;
  left: 437px;
}
.todoufuken6 {
  position: absolute;
  top: 210px;
  left: 437px;
}
.todoufuken7 {
  position: absolute;
  top: 238px;
  left: 471px;
}
.todoufuken8 {
  position: absolute;
  top: 268px;
  left: 537px;
}
.todoufuken9 {
  position: absolute;
  top: 268px;
  left: 471px;
}
.todoufuken10 {
  position: absolute;
  top: 268px;
  left: 504px;
}
.todoufuken11 {
  position: absolute;
  top: 337px;
  left: 471px;
}
.todoufuken12 {
  position: absolute;
  top: 366px;
  left: 537px;
}
.todoufuken13 {
  position: absolute;
  top: 395px;
  left: 504px;
}
.todoufuken14 {
  position: absolute;
  top: 395px;
  left: 471px;
}
.todoufuken15 {
  position: absolute;
  top: 238px;
  left: 437px;
}
.todoufuken16 {
  position: absolute;
  top: 286px;
  left: 404px;
}
.todoufuken17 {
  position: absolute;
  top: 275px;
  left: 339px;
}
.todoufuken18 {
  position: absolute;
  top: 308px;
  left: 339px;
}
.todoufuken19 {
  position: absolute;
  top: 366px;
  left: 471px;
}
.todoufuken20 {
  position: absolute;
  top: 337px;
  left: 437px;
}
.todoufuken21 {
  position: absolute;
  top: 337px;
  left: 404px;
}
.todoufuken22 {
  position: absolute;
  top: 395px;
  left: 437px;
}
.todoufuken23 {
  position: absolute;
  top: 395px;
  left: 405px;
}
.todoufuken24 {
  position: absolute;
  top: 434px;
  left: 372px;
}
.todoufuken25 {
  position: absolute;
  top: 337px;
  left: 372px;
}
.todoufuken26 {
  position: absolute;
  top: 337px;
  left: 340px;
}
.todoufuken27 {
  position: absolute;
  top: 394px;
  left: 340px;
}
.todoufuken28 {
  position: absolute;
  top: 337px;
  left: 306px;
}
.todoufuken29 {
  position: absolute;
  top: 381px;
  left: 372px;
}
.todoufuken30 {
  position: absolute;
  top: 455px;
  left: 340px;
}
.todoufuken31 {
  position: absolute;
  top: 337px;
  left: 273px;
}
.todoufuken32 {
  position: absolute;
  top: 337px;
  left: 242px;
}
.todoufuken33 {
  position: absolute;
  top: 389px;
  left: 273px;
}
.todoufuken34 {
  position: absolute;
  top: 389px;
  left: 242px;
}
.todoufuken35 {
  position: absolute;
  top: 338px;
  left: 208px;
}
.todoufuken36 {
  position: absolute;
  top: 483px;
  left: 267px;
}
.todoufuken37 {
  position: absolute;
  top: 450px;
  left: 267px;
}
.todoufuken38 {
  position: absolute;
  top: 450px;
  left: 214px;
}
.todoufuken39 {
  position: absolute;
  top: 483px;
  left: 214px;
}
.todoufuken40 {
  position: absolute;
  top: 366px;
  left: 126px;
}
.todoufuken41 {
  position: absolute;
  top: 366px;
  left: 88px;
}
.todoufuken42 {
  position: absolute;
  top: 411px;
  left: 88px;
}
.todoufuken43 {
  position: absolute;
  top: 426px;
  left: 126px;
}
.todoufuken44 {
  position: absolute;
  top: 366px;
  left: 157px;
}
.todoufuken45 {
  position: absolute;
  top: 426px;
  left: 157px;
}
.todoufuken46 {
  position: absolute;
  top: 484px;
  left: 125px;
}
.todoufuken47 {
  position: absolute;
  top: 485px;
  left: 80px;
}

/*　sus_map　*/

/* guide_css */

#guide table tr td {
  padding: 0 10px 0 5px;
  height: 110px;
}
#guide .info_title {
  text-decoration: underline;
  font-size: 180%;
}
#guide .newloginBox {
  background-image: url(../img/info/newlogin.png);
  background-position: center bottom;
  text-align: center;
  background-repeat: no-repeat;
  padding: 90px 0 20px 0;
  width: 633px;
}
#guide .newloginBox .inner .left p {
  text-align: center;
}

#guide .center p {
  text-align: center;
}

/* faq_css */

.faq_menu {
  margin: 32px 0 12px;
  border-bottom: 1px solid #ccc;
  padding: 0 0 5px 3px;
  font-size: 18px!important;
  font-weight: bold;
  line-height: 1.4;
}

/* ad_css */
.ad_b {
  margin: 20px 0 50px 0;
}

/* 5/16 */
#mainCont .mb20 li {
  margin: 0 5px 10px 0;
}

/* 5/23 */
#info_box h2 {
  background-image: url(../img/contents/bg_h2.gif);
  background-repeat: no-repeat;
  background-position: 0px 0px;
  height: 22px;
  padding-top: 3px;
  padding-left: 30px;
  font-weight: bold;
  font-size: 12px;
}

#info_box p {
  margin: 15px 0 30px 0;
}

/* 5/25 */
#cont .wrap.clearfix #mainCont #info_box h3 {
  font-size: 14px;
  font-weight: bold;
  border-left: #c00 5px solid;
  padding: 0 0 0 10px;
}

/* 6/12 */

table {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin: 0 0 20px 0;
}
table.non {
  border-top: 0px;
  border-left: 0px;
  margin: 0 0 20px 0;
}
tr {
}
td {
  padding: 10px;
  font-size: 14px;
  line-height: 18px;
  margin: 0px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
th {
  padding: 10px;
  font-size: 14px;
  line-height: 18px;
  margin: 0px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.dictionary .content.mb20 h3 {
  font-size: 14px;
  font-weight: bold;
  margin: 10px 0;
  padding: 0 0 0 10px;
  border-left: #900 5px solid;
  background-color: #fff;
}

/* 6/12 */
#cont table.tb_ln_on {
  width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  background-color: #fff;
}
#cont table.tb_ln_on tr {
}
#cont table.tb_ln_on td {
  padding: 0px;
  font-size: 12px;
  line-height: 16px;
  margin: 0px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
#cont table.tb_ln_on td.btn {
  background-color: #c7a539;
}
#cont table.tb_ln_on td.btn:hover {
  background-color: #ffff89;
}
#cont table.tb_ln_on th {
  padding: 0px;
  font-size: 12px;
  line-height: 16px;
  margin: 0px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background-color: #eee;
  text-align: center;
  font-weight: bold;
}

#cont table.tb_ln_of {
  width: 100%;
  border: none;
}
#cont table.tb_ln_of tr {
  border: none;
}
#cont table.tb_ln_of td {
  padding: 0px;
  font-size: 12px;
  line-height: 16px;
  margin: 0px;
  border: none;
}
#cont table.tb_ln_of th {
  padding: 0px;
  font-size: 12px;
  line-height: 16px;
  margin: 0px;
  border: none;
}

/*///////////////////////////////////////ランキング///////////////////////////////////*/

#ranking table {
  margin-bottom: 10px;
  border: none;
}
#ranking td {
  font-size: 12px;
  display: block;
  float: left;
  box-sizing: border-box;
  border: none;
  padding: 0 3px 5px 0px;
}
#ranking tr {
  overflow: hidden;
}
.ranking_title,
.magazine_title,
.event_title,
.codb_title,
.kyujin_title {
  height: 36px;
  line-height: 36px;
  background: #fdfdfd;
  text-align: center;
  font-weight: bold;
  color: #c00;
  border-top: 3px solid #c00;
  border-bottom: 1px solid #ccc;
}
.ranking_title_font {
  font-weight: bold;
  margin: 0px 0 0 40px;
  color: #fff;
  font-size: 12px;
}
.ranking_text {
  width: 202px;
  line-height: 16px;
  padding-right: 10px;
  margin-bottom: 5px;
}
.ranking_pr {
  border-bottom: 1px solid #aaa;
  padding-bottom: 3px;
  overflow: hidden;
}
.ranking_pr_label {
  display: block;
  width: 36px;
  height: 32px;
  float: left;
  padding-left: 2px;
}
.ranking_pr_text {
  display: block;
  margin: 5px 0 0 0;
  overflow: hidden;
}
.ranking_pr_font {
  margin: 6px 0px 0px 0px;
  padding: 0px;
}
.ranking_table {
  margin-top: 5px;
}
.ranking_1,
.ranking_2,
.ranking_3,
.ranking_4,
.ranking_5 {
  width: 36px;
  height: 32px;
  float: left;
}
.ranking_1 {
  background-image: url(../img/info/rank/ranking_1.png);
  background-repeat: no-repeat;
}
.ranking_2 {
  background-image: url(../img/info/rank/ranking_2.png);
  background-repeat: no-repeat;
}
.ranking_3 {
  background-image: url(../img/info/rank/ranking_3.png);
  background-repeat: no-repeat;
}
.ranking_4 {
  background-image: url(../img/info/rank/ranking_4.png);
  background-repeat: no-repeat;
}
.ranking_5 {
  background-image: url(../img/info/rank/ranking_5.png);
  background-repeat: no-repeat;
}
.ranking_result {
  background-repeat: no-repeat;
  font-weight: bold;
  font-size: 14px;
  align: center;
  width: 58px;
  height: 30px;
}
.ranking_number {
  background-image: url(../img/info/rank/ranking_result.png);
  background-repeat: no-repeat;
  padding: 7px 11px 10px 0px;
  text-align: right;
  display: block;
}

/*///////////////////////////////////////注目求人情報///////////////////////////////////*/

ul.sidebar_kyujin_list {
  padding: 0;
  margin: 0 0 10px 0;
}
ul.sidebar_kyujin_list li {
  list-style-type: none;
  border-bottom: 1px dotted #aaa;
  padding: 10px 5px;
  font-size: 12px;
}

#kyujin {
  margin-top: 20px;
}

#kyujin table {
  margin-bottom: 10px;
  border: none;
  border-bottom: 1px solid #562800;
  border-right: 1px solid #562800;
  border-collapse: collapse;
  width: 100%;
}
#kyujin td {
  font-size: 12px;
  border: none;
  padding: 0px 3px 5px 0px;
  border-bottom: solid 1px #eee;
  border-left: solid 1px #562800;
  display: inline-block;
}
#kyujin table tr #last {
  border-bottom: none;
}
.kyujin_title_font {
  background-image: url(../img/info/kyujin/kyujin_title.png);
  background-repeat: no-repeat;
  height: 36px;
  padding-left: 45px;
  margin-bottom: 3px;
  font-weight: bold;
  margin: 0px;
  color: #fff;
  line-height: 35px;
}
#kyujin table tr .kyujin_text {
  background-image: url(../img/info/kyujin/kyujin_1.png);
  background-repeat: no-repeat;
  background-position: 13px 7px;
  line-height: 18px;
  padding: 6px 13px 8px 32px;
}
.kyujin_result {
  background-repeat: no-repeat;
  font-weight: bold;
  font-size: 14px;
  align: center;
  width: 58px;
  height: 30px;
}
.kyujin_number {
  background-image: url(../img/info/kyujin/kyujin_result.png);
  background-repeat: no-repeat;
  padding: 7px 18px 10px 0px;
  text-align: right;
  display: block;
}
#side #kyujin table tr .kyujin_text span {
  font-weight: bold;
  padding: 2px 0px;
  float: right;
  width: 65px;
  display: block;
  text-align: center;
  margin-top: 3px;
}
#kyujin .keitai_blue {
  background-color: #acd;
  color: #024;
  margin: 0 0 0 0.5em;
}
#kyujin .keitai_green {
  background-color: #ada;
  color: #040;
  margin: 0 0 0 0.5em;
}

/*///////////////////////////////////////補助金検索ページ///////////////////////////////////*/
#subsidy_list table#customer-search-result tr td {
  font-size: 97%;
  line-height: 12px;
  padding: 5px;
}

/*///////////////////////////////////////引用ボックス///////////////////////////////////*/

div.reffer {
  padding: 0px 30px 0px 30px;
  margin-top: 0px;
  margin-left: 4px;
  background-color: #f7f8e6;
  font-weight: bold;
  color: #000;
  width: 531px;
}

#cont .wrap.clearfix #mainCont #weekly_base .box_base.clearfix .cl_box a .sl_tit {
  position: relative;
}

#cont .wrap.clearfix #mainCont #weekly_base .box_base.clearfix .cl_box a .sl_tit .ic_open {
  position: absolute;
  top: 0px;
  right: 0px;
}

/*///////////////////////////////////////補助金申請ページ///////////////////////////////////*/
.hojyo-p {
  font-size: 13px;
  line-height: 1.4;
  padding: 10px;
  margin-bottom: 15px;
}

.hojyo-p2 {
  font-size: 17px;
  line-height: 1.7;
  padding: 10px;
}

.hojyo-btn {
  width: 431px;
  display: block;
  margin: 30px auto;
}

/*///////////////////////////////////////ebook検索ページ///////////////////////////////////*/
#link_search {
  background: url(/img/contents/icon_arrow02.png) no-repeat 0px 2px;
  padding-left: 10px;
}

#search_bs #search form {
  margin-bottom: 25px;
  padding: 15px;
  background: #f0f0f0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#search_bs #search form .text_box_form {
  height: 20px;
}
#search_bs #search form .terms {
  margin-top: 10px;
}
#search_bs #search form .terms .tit_box {
  padding-bottom: 3px;
  border-bottom: 1px solid #ccc;
}
#search_bs #search form .terms .period {
  margin-top: 10px;
}
#search_bs #search form .terms .period h2 {
  display: inline;
}
#search_bs #search .result {
  margin-bottom: 25px;
  padding-bottom: 5px;
  border-bottom: 1px solid #ccc;
}
#search_bs #search .result h2 {
  margin-bottom: 5px;
}
#search_bs #search .result span {
  font-weight: bold;
}
#search_bs #search .search_box {
  margin-bottom: 25px;
}
#search_bs #search .search_box .text_box h3 {
  font-size: 16px;
  margin-bottom: 5px;
}
#search_bs #search .search_box .text_box h3 a {
  color: #0000cc;
  text-decoration: underline;
}
#search_bs #search .page_n {
  margin: auto;
  text-align: center;
  font-size: 16px;
}
#search_bs #search .page_n span + a,
#search_bs #search .page_n a + a,
#search_bs #search .page_n a + span {
  margin-left: 10px;
}
#search_bs #search .page_n span {
  color: #999;
}

.outline-ctg {
  font-size: 16px;
  line-height: 25px;
  margin: 10px 0 30px 0;
}

.section-ctg .subtit-ctg {
  font-size: 20px;
  font-weight: bold;
  line-height: 50px;
  height: 50px;
  padding-left: 30px;
  color: #333;
}

.section-ctg .list-article-ctg {
  margin-bottom: 30px;
}
.section-ctg .list-article-ctg li {
  border-bottom: 1px solid #ddd;
}
.section-ctg .list-article-ctg li a {
  position: relative;
  display: block;
  clear: both;
  padding: 15px 0;
  text-decoration: none;
  *zoom: 1;
}
.section-ctg .list-article-ctg li a:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  overflow: hidden;
  visibility: hidden;
}
.section-ctg .list-article-ctg li a:hover {
  background: #f9f9f9;
}
.section-ctg .list-article-ctg li a .ctg,
.section-ctg .list-article-ctg li a .ctg-premium {
  font-size: 11px;
  line-height: 2em;
  display: inline-block;
  position: absolute;
  top: -2px;
  left: -3px;
  width: 123px;
  text-align: center;
  color: #fff;
  margin-right: 10px;
  z-index: 1;
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.2);
}
.section-ctg .list-article-ctg li a .ctg:before,
.section-ctg .list-article-ctg li a .ctg-premium:before {
  content: "";
  display: block;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  position: absolute;
  top: 21px;
  left: 1px;
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.section-ctg .list-article-ctg li a .ctg-premium {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RkOTIwOCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2U1YWEwYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==");
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #dd9208), color-stop(100%, #e5aa0a));
  background-image: -moz-linear-gradient(#dd9208, #e5aa0a);
  background-image: -webkit-linear-gradient(#dd9208, #e5aa0a);
  background-image: linear-gradient(#dd9208, #e5aa0a);
  border: 1px solid #dd9208;
}
.section-ctg .list-article-ctg li a .ctg-premium i {
  display: inline-block;
  margin-right: 2px;
}
.section-ctg .list-article-ctg li a .ctg-premium:before {
  border-right: 3px solid #875700;
}
.section-ctg .list-article-ctg li a .box-thumb-ctg {
  position: relative;
  float: left;
  overflow: hidden;
  width: 90px;
  height: 90px;
  margin-right: 15px;
  border: 1px solid #ddd;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.section-ctg .list-article-ctg li a .box-thumb-ctg .thumb-ctg {
  position: absolute;
}
.section-ctg .list-article-ctg li a .box-thumb-ctg img {
  width: 88px;
  height: 88px;
}
.section-ctg .list-article-ctg li a .box-tit-ctg {
  position: absolute;
  top: 50%;
  left: 105px;
  float: left;
  width: 530px;
  vertical-align: middle;
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.section-ctg .list-article-ctg li a .box-tit-ctg .meta-ctg {
  margin-bottom: 10px;
  color: #666;
}
.section-ctg .list-article-ctg li a .box-tit-ctg .tit-ctg {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5em;
  color: #333;
}
.section-ctg .list-pr-ctg {
  margin-bottom: 30px;
  padding-left: 30px;
}
.section-ctg .list-pr-ctg li {
  margin-bottom: 10px;
}
.section-ctg .list-pr-ctg li a {
  font-size: 14px;
  line-height: 20px;
  padding-left: 16px;
  text-indent: -8px;
  background: url(/img/common/pin.png) no-repeat 0 7px;
}

.list-link-ctg li {
  display: inline-block;
  background: url(../img/contents/icon_arrow_big.png) 0 4px no-repeat;
  margin-right: 20px;
  padding-left: 12px;
}

.hidden {
  display: none;
}

#top-description-db {
  height: 224px;
  background: url(../images/bg-top-db-description.jpg) 0 0 no-repeat;
  position: relative;
  margin-bottom: 30px;
}
#top-description-db p {
  position: absolute;
  color: #fff;
  left: 25px;
  bottom: 20px;
  width: 360px;
}

.usage {
  overflow: hidden;
  *zoom: 1;
}
.usage .item-usage-lt,
.usage .item-usage-rt {
  width: 300px;
  float: left;
}
.usage .item-usage-rt {
  margin-left: 34px;
}

.tit-usage {
  font-size: 150%;
  font-weight: bold;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
.tit-usage i {
  font-size: 125%;
}

.step-usage li img {
  display: block;
  margin-bottom: 20px;
}
.step-usage li p {
  font-size: 120%;
  margin-bottom: 5px;
  vertical-align: middle;
  font-weight: bold;
}
.step-usage li p span {
  display: inline-block;
  font-size: 70%;
  background: #d5d5d5;
  padding: 3px 8px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

.box-btn {
  display: table;
  width: 100%;
}
.box-btn .item-btn {
  display: table-cell;
  text-align: center;
  width: 50%;
}

.subtit {
  padding: 5px 0 5px 10px;
  border-left: 3px solid #c4000f;
  border-bottom: 1px dotted #cccccc;
  font-weight: bold;
  margin-bottom: 20px;
}

.btn-lg {
  display: block;
  width: 270px;
  margin: auto;
  background: #63b943;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  padding: 15px 0;
  color: #fff;
  text-decoration: none;
  font-size: 120%;
  font-weight: bold;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-box-shadow: rgba(51, 51, 51, 0.2) 2px 2px 5px, rgba(0, 128, 0, 0.5) -3px -3px 5px 0px inset,
    rgba(255, 255, 255, 0.5) 3px 3px 5px 0px inset;
  -webkit-box-shadow: rgba(51, 51, 51, 0.2) 2px 2px 5px, rgba(0, 128, 0, 0.5) -3px -3px 5px 0px inset,
    rgba(255, 255, 255, 0.5) 3px 3px 5px 0px inset;
  box-shadow: rgba(51, 51, 51, 0.2) 2px 2px 5px, rgba(0, 128, 0, 0.5) -3px -3px 5px 0px inset,
    rgba(255, 255, 255, 0.5) 3px 3px 5px 0px inset;
  text-align: center;
}
.btn-lg:hover {
  text-decoration: none;
  color: #fff;
  -moz-box-shadow: rgba(0, 128, 0, 0.7) 0 0 7px 0px inset;
  -webkit-box-shadow: rgba(0, 128, 0, 0.7) 0 0 7px 0px inset;
  box-shadow: rgba(0, 128, 0, 0.7) 0 0 7px 0px inset;
  background: #4fae2c;
  cursor: pointer;
}

/*会員登録内容変更(完了ページ)*/
.annai-left {
  float: left;
}
.annai-right {
  margin-left: 165px;
}
.annai-right p {
  font-size: 13px;
}

.btn-annai {
  box-shadow: inset 0px 0px 2px 0px #a4e271;
  background-color: #89c403;
  border-radius: 4px;
  border: 1px solid #74b807;
  display: inline-block;
  cursor: pointer;
  font-size: 14px;
  font-weight: bold;
  padding: 9px 23px;
  text-decoration: none;
  text-shadow: 0px 1px 0px #528009;
}
.btn-annai:hover {
  background-color: #77a809;
}
.btn-annai:active,
.btn-annai:visited,
.btn-annai:link {
  position: relative;
  top: 1px;
}

/*出典*/
.source {
  color: #7a7a7a;
  margin-bottom: 30px;
}

.source p {
  text-indent: 0 !important;
  line-height: 1.5em;
  font-size: 80%;
  margin-bottom: 0px !important;
}

.source li {
  text-indent: 0;
  line-height: 1.5em;
  list-style-type: disc;
  margin-left: 20px;
  font-size: 80%;
}

/*///////////////////////////////////////環境ビジネス最新号///////////////////////////////////*/
#side a {
  text-decoration: none;
}

/*///////////////////////////////////////環境ビジネス最新号///////////////////////////////////*/
#sidebar_magazine {
  margin-top: 20px;
  margin-bottom: 20px;
}
#sidebar_magazine span.title {
  background-image: url(../img/sidebar_magazine_title.png);
  background-repeat: no-repeat;
  height: 35px;
  padding-left: 45px;
  margin-bottom: 0px;
  font-weight: bold;
  color: #fff;
  line-height: 35px;
  display: block;
}
#sidebar_magazine span.title a {
  float: right;
  color: #fff;
  margin-right: 2px;
}
#sidebar_magazine span.title a:hover {
  color: #fff;
}
.sidebar_magazin_body {
  padding: 10px 0;
  margin-bottom: 10px;
  border-bottom: 1px solid #ccc;
}
.sidebar_title {
  padding-top: 10px;
  padding-bottom: 20px;
}
#sidebar_magazine .sidebar_cover {
  width: 140px;
  float: left;
  padding-left: 10px;
  padding-right: 5px;
  padding-bottom: 10px;
}
#sidebar_magazine ul.sidebar_magazin_buttn {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
ul.sidebar_magazin_buttn li {
  text-align: center;
  margin: 5px 0 2px 0;
  padding: 0;
}

/*///////////////////////////////////////環境ビジネスイベント（サイドバー）///////////////////////////////////*/
#sidebar_event {
  margin-top: 20px;
  margin-bottom: 20px;
}
#sidebar_event span.title {
  background-image: url(../img/sidebar_event_title.png);
  background-repeat: no-repeat;
  height: 35px;
  padding-left: 45px;
  margin-bottom: 0px;
  font-weight: bold;
  color: #fff;
  line-height: 35px;
  display: block;
}
#sidebar_event span.title a {
  float: right;
  color: #fff;
  margin-right: 2px;
}
.sidebar_event_body {
  padding-top: 10px;
}
#sidebar_event .sidebar_event_date {
  color: #000;
  font-size: 0.9em;
}
ul.sidebar_event_list {
  padding: 0;
  margin: 0 0 10px 0;
}
ul.sidebar_event_list li {
  list-style-type: none;
  border-bottom: 1px dotted #aaa;
  padding: 10px 5px;
  font-size: 12px;
}
ul.sidebar_event_list li p {
  float: left;
  width: 180px;
  margin: 0;
  padding: 0;
}
ul.sidebar_event_list li img {
  float: right;
  width: 90px;
}

/*///////////////////////////////////////サイドバー　注目の企業・製品///////////////////////////////////*/
ul.sidebar_codb_list {
  padding: 0;
  margin: 0 0 10px 0;
}
ul.sidebar_codb_list li {
  list-style-type: none;
  border-bottom: 1px dotted #aaa;
  padding: 10px 5px;
  font-size: 12px;
}
ul.sidebar_codb_list li p {
  float: left;
  width: 180px;
  margin: 0;
  padding: 0;
}
ul.sidebar_codb_list li img {
  float: right;
  width: 80px;
  height: 60px;
}

/*///////////////////////////////////////サイドバー環境用語集///////////////////////////////////*/
#sidebar_dictionary {
  margin-top: 20px;
  margin-bottom: 20px;
}

/*////////////////////////////////////サイドバーログインフォーム////////////////////////////////*/
input {
  resize: none;
}
.entry-wrap {
  display: block;
  overflow: hidden;
  text-align: center;
}
.entry-title {
  clear: both;
  font-size: 16px;
}
.entry-lay {
  margin: 10px 0;
}
.form-wrap {
  display: block;
  margin: 10px auto;
}
.entry-module-mini {
  border-radius: 3px;
  padding: 10px;
}
.entry-skin {
  background: #f5f3f3;
  border: 1px solid #d6d3d3;
  border-radiuus: 0 3px 3px 0;
}
.entry-skin:first-child {
  border-right: none;
}
.form-module {
  height: 24px;
  font-size: 12px;
  letter-spacing: 0.79px;
  padding: 2px 0 0 6px;
}
.form-skin {
  border: 1px solid #e1e1e1;
  box-shadow: inset 1px 1px 1px 0px rgba(0, 0, 0, 0.5);
  border-radius: 3px;
}
.form-skin-top {
  border: 1px solid #e1e1e1;
  border-bottom: none;
  box-shadow: inset 1px 1px 1px 0px rgba(0, 0, 0, 0.5);
  border-radius: 3px 3px 0 0;
}
.form-skin-bottom {
  border: 1px solid #e1e1e1;
  border-top: none;
  box-shadow: inset 1px 1px 1px 0px rgba(0, 0, 0, 0.5);
  border-radius: 0 0 3px 3px;
}
.entry-float-module {
  width: 421px;
  border-radius: 3px 0 0 3px;
  padding: 10px 5px 2px 10px;
}
.entry-float {
  float: left;
}
.login-float-module {
  width: 122px;
  height: 122px;
  padding: 10px;
}
.form-middle {
  width: 270px;
}
.form-mini {
  width: 200px;
}
.form-lay-center {
  display: block;
  margin: auto;
}
.float-in-module {
  width: 210px;
}
.entry-tos {
  font-size: 10.5px;
  line-height: 1.4em;
}
.mem_box a {
  text-decoration: none;
}

/* ==========================================================================
   Layouts
   ========================================================================== */

/**
 * Header
 */
.l-header {
  border-top: 10px solid #5dcbdb;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
  min-width: 950px;
  background: #fff;
  margin-bottom: 22px;
  margin-top: 0;
}

.l-header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 32px 0 20px;
  width: 950px;
}

.l-header__utility {
  display: flex;
  align-items: center;
}

.l-header__search {
  border-radius: 4px;
  border: 1px solid #ddd;
}

.l-header__searchInput {
  box-shadow: none;
  box-sizing: border-box;
  border: none;
  border-radius: 2px;
  padding: 6px 8px;
  width: 228px;
  background: #fff;
  font-size: 14px;
}

.l-header__searchBtn {
  box-shadow: none;
  border: none;
  border-radius: 0;
  padding: 6px 4px 4px;
  background: transparent;
  vertical-align: top;
}

.l-header__login {
  margin-left: 26px;
}

.l-header__loginItems {
  display: flex;
  justify-content: flex-end;
}

.l-header__loginItems > li {
  position: relative;
  margin: 0;
  line-height: 1;
  font-size: 12px;
  color: #000;
  font-weight: bold;
}

.l-header__loginItems a {
  text-decoration: none;
  color: currentColor;
}

.l-header__loginItems a:hover,
.l-header__loginItems a:focus {
  text-decoration: underline;
}

.l-header__loginItems > li + li {
  margin-left: 14px;
  padding-left: 15px;
}

.l-header__loginItems > li + li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 1px;
  height: 1.1em;
  background: currentColor;
}

.l-header__info {
  border: 1px solid #ff685c;
  border-radius: 2px;
  margin-top: 6px;
  padding: 4px 6px 5px;
  font-size: 12px;
  font-weight: bold;
  color: #ff685c;
}

/**
 * Footer
 */

.l-footer {
  border-bottom: 10px solid #5dcbdb;
  min-width: 950px;
  background: #fff;
}

.l-footer__inner {
  margin: 0 auto;
  padding: 28px 0 22px;
  width: 950px;
}

.l-footer__columns {
  display: flex;
  flex-wrap: wrap;
}

.l-footer__column {
  box-sizing: border-box;
  border-left: 2px solid currentColor;
  padding: 2px 0 12px 18px;
  width: 220px;
}

.l-footer__column--foundation {
  width: 290px;
}

.l-footer__links a {
  display: inline-block;
  line-height: 1;
  font-weight: bold;
  text-decoration: none;
  color: currentColor;
}

.l-footer__links a:hover,
.l-footer__links a:focus {
  text-decoration: underline;
}

.l-footer__links > li {
  padding: 5px 0 4px;
  font-size: 14px;
}

.l-footer__column--foundation .l-footer__links > li {
  padding: 5px 0;
  font-size: 12px;
}

.l-footer__links-title {
  background-color: #e7e7e7;
  padding: 3px 5px;
  margin-right: 3px;
  border-radius: 2px;
}

.l-footer__copyright small {
  font-size: 12px;
}

.l-footer__social {
  display: inline-block;
  margin-right: 15px;
}

.l-footer__social img {
  width: 24px;
}

.l-footer__corporateLogo {
  margin: 30px 0;
  width: 100%;
}

.l-footer__corporateLogo__list {
  align-items: center;
  display: flex;
  justify-content: center;
  max-width: 950px;
}

.l-footer__corporateLogo__item {
  margin-right: 50px;
  width: 100%;
}

.l-footer__corporateLogo__item:last-child {
  margin-right: 0;
  width: 75%;
}

/* ==========================================================================
   Components
   ========================================================================== */

/**
 * Heading Lv2
 */

.c-hdg-lv2 {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  margin-bottom: 26px;
  border-radius: 5px;
  padding: 16px 18px;
  width: 100%;
  background: #fff;
}

.c-hdg-lv2__title {
  font-size: 16px;
  font-weight: bold;
  color: #5dcbdb;
}

/**
 * Heading Lv3
 */

.c-hdg-lv3 {
  position: relative;
  margin-bottom: 14px;
  padding: 8px 12px 7px 15px;
  background: #f4f4f4;
}

.c-hdg-lv3::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 3px;
  height: 100%;
  background: #5dcbdb;
}

.c-hdg-lv3__title {
  font-size: 15px;
  font-weight: bold;
}

/**
 * Heading Lv4
 */

.c-hdg-lv4 {
  margin-bottom: 14px;
  border-bottom: 1px solid #5dcbdb;
  padding: 0 0 5px 3px;
  font-size: 14px;
  font-weight: bold;
}

/**
 * Artile Heading
 */

.c-hdg-article {
  margin-bottom: 9px;
  border-bottom: 3px solid #000;
  padding: 0 0 5px;
}

.c-hdg-article__title {
  margin-bottom: 33px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.64px;
}

.c-hdg-article__meta {
  margin: 0 !important;
}

.c-hdg-article__meta::after {
  display: table;
  content: "";
  clear: both;
}

.c-hdg-article__meta li {
  font-size: 14px;
}

.c-hdg-article__meta a {
  color: currentColor;
}

.c-hdg-article__columnist {
  float: left;
}

.c-hdg-article__published {
  float: right;
}

.c-hdg-article__ruby {
  font-size: 15px;
  font-weight: normal;
}

/**
 * Aside Heading
 */

.c-hdg-aside {
  margin-bottom: 12px;
  font-size: 13px;
}

/**
 * Text
 */

.c-text {
  margin-bottom: 14px;
  font-size: 14px;
  line-height: 1.4;
}

.u-display-sp {
  display: none;
}

/**
 * Strong
 */

.c-text-strong {
  font-weight: bold;
}

.c-text-strong.-caution {
  color: #c00;
}

/**
 * Tag
 */

.c-tag {
  display: inline-block;
  border-radius: 2px;
  padding: 3px 8px 4px;
  background: #5dcbdb;
  font-size: 12px;
  font-style: normal;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
}

.c-tag.-premium {
  background: #b29658;
}

.c-tag.-tieup {
  background: #3e3e3e;
}

/**
 * List
 */

.c-list {
  margin: 0 0 14px 15px;
  font-size: 14px;
  line-height: 1.4;
}

.c-list li {
  position: relative;
}

.c-list li + li {
  margin-top: 8px;
}

.c-list li::before {
  position: absolute;
  left: 0;
}

.c-list > li {
  padding-left: 15px;
}

.c-list > li::before {
  top: 0.4em;
  content: "";
  border-radius: 50%;
  width: 5px;
  height: 5px;
  background: #5dcbdb;
}

/**
 * SNS Button list
 */

.c-list-Btns{
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
}

.c-list-Btns {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}

.c-list-snsBtns {
  display: flex;
  margin-right: 10px;
}

.c-list-snsBtns.-right {
  justify-content: flex-end;
}

.c-list-snsBtns.-right > li {
  height: max-content;
}

.c-list-snsBtns.-right li:not(:last-child) {
  margin-right: 13px;
}

.c-sns__share-popup-area {
  width: max-content;
  height: max-content;
  position: relative;
}

#c-sns__share-popup {
  width: 200px;
  line-height: 100px;
  background: #fff;
  color: #000;
  padding: 20px;
  box-sizing: border-box;
  display: none;
  position: absolute;
  transform: translate(-86%, 3%);
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
#c-sns__share-popup .c-sns__share-list-item-print #btn_print:hover {
  background: #666;
}

#c-sns__share-popup-bottom {
  width: 200px;
  line-height: 100px;
  background: #fff;
  color: #000;
  padding: 20px;
  box-sizing: border-box;
  display: none;
  position: absolute;
  transform: translate(-86%, 3%);
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
#c-sns__share-popup-bottom .c-sns__share-list-item-print #btn_print:hover {
  background: #555;
}

.c-sns__share-label {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 30px;
}

.c-sns__share-label span:hover {
  cursor: pointer;
}

#c-sns__checkbox[type='checkbox'] {
  display: none;
}

#c-sns__checkbox[type='checkbox']:checked ~ #c-sns__share-popup {
  display: block;
  transition: 0.2s;
  z-index: 150;
}

.c-sns__checkbox:checked ~ .c-sns__checkbox-window-close {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  cursor: default;
}

#c-sns__checkbox-bottom[type='checkbox'] {
  display: none;
}

#c-sns__checkbox-bottom[type='checkbox']:checked ~ #c-sns__share-popup-bottom {
  display: block;
  transition: 0.2s;
  z-index: 150;
}

.c-sns__checkbox-bottom:checked ~ .c-sns__checkbox-bottom-window-close {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  cursor: default;
}

.c-sns__share-list-item a {
  text-decoration: none;
  color: #333;
  display: flex;
  cursor: pointer;
}

.c-sns__share-list-item-link {
  padding: 8px 16px;
  border: solid 1px #e5e5e5;
  background-color: #f5f5f5;
  justify-content: center;
  margin: 0;
}
.c-sns__share-list-item-link a {
  color: #000;
  text-decoration: none;
}
.c-sns__share-list-item-link a:hover {
  cursor: pointer;
}

.c-sns__share-list-item-link-bottom {
  padding: 8px 16px;
  border: solid 1px #e5e5e5;
  background-color: #f5f5f5;
  justify-content: center;
  margin-bottom: 0 0 16px 0;
}

.c-sns__share-list-item-link-bottom a {
  color: #000;
  text-decoration: none;
}

#copy-link-bottom{
  border: none;
  background-color: #f5f5f5;
}

.c-sns__share-list-item-link-bottom a:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
  cursor: pointer;
}

.c-sns__share-list-item a:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
  cursor: pointer;
}

.c-sns__share-list-img {
  height: 15px;
}

.c-sns__share-list-item-bottom {
  border-bottom: 1px solid #ccc;
  padding-bottom: 20px;
}

.c-sns__share-list-item-wrap {
  display: flex;
  align-items: flex-start;
}
.c-sns__share-list-item-wrap img {
  width: 16px;
}

.c-sns__share-list-item-wrap:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
}

.c-sns__share-list-text {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 8px;
  font-size: 14px;
}

.c-sns__share-list-item-link__copy-link,
.c-sns__share-list-item-link-bottom__copy-link {
  background: none;
  border: none;
  padding: 0;
  color: #333;
  letter-spacing: 0.1em;
  font-size: 14px;
  cursor: pointer;
}

.c-sns__share-list-item,
.c-sns__share-list-item-print {
  margin-bottom: 16px;
  display: flex;
}


.c-sns__share-list-item-print #btn_print {
  color: #fff;
  font-size: 12px;
  background: #000;
  width: 100%;
  padding: 8px;
  justify-content: center;
  border-radius: 4px;
}

@media screen and (max-width: 768px) {
  .c-sns__share-list-item-print {
    margin-bottom: 0px;
    display: none;
  }
}
.c-sns__share-img{
  width: 20px;
  padding: 4px;
}
.c-sns__share-list-print-img {
  width: 14px;
  justify-content: center;
}

.c-list-snsBtns #btn_print:hover,
.c-list-snsBtns #btn_print:focus {
  background: #555;
}

/**
 * Link
 */

.c-link {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  font-size: 13px;
}

.c-link:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  border-width: 4px 5px;
  border-style: solid;
  border-color: transparent transparent transparent #777;
  transform: translateY(-50%);
}

.c-sec-article__contentInner .c-link {
  font-size: 16px;
}

/**
 * Topic Path
 */

.c-link-topicPath {
  margin-bottom: 16px;
  font-size: 12px;
}

.c-link-topicPath a {
  text-decoration: none;
  color: currentColor;
}

.c-link-topicPath a:hover,
.c-link-topicPath a:focus {
  text-decoration: underline;
}

/**
 * Login Links
 */

.c-link-login {
  display: flex;
  justify-content: center;
  margin: 20px 0 50px;
}

.c-link-login > li {
  width: 260px;
}

.c-link-login > li + li {
  margin-left: 20px;
}

.c-link-login-caution {
  margin: -30px 0 40px;
}

@media screen and (max-width: 950px) {
  .c-link-login-caution {
    text-align: center;
  }
}

@media screen and (max-width: 480px) {
  .c-link-login-caution {
    text-align: left;
  }
}

/**
 * Tag Links
 */

.c-link-tags {
  display: flex;
  flex-wrap: wrap;
  margin: -8px 0 0 -22px;
}

.c-link-tags > li {
  margin: 8px 0 0 22px;
}

.c-link-tags a {
  display: inline-block;
  font-size: 12px;
  text-decoration: none;
  color: currentColor;
}

.c-link-tags a::before {
  content: "#";
}

.c-link-tags a:hover,
.c-link-tags a:focus {
  text-decoration: underline;
}

/**
 * Link List
 */

.c-link-list {
  font-size: 15px;
}

.c-link-list li {
  font-size: 16px;
}

.c-link-list li + li {
  margin-top: 10px;
}

.c-link-list li.-no-style a {
  padding-left: 0;
}

.c-link-list li.-no-style a:before {
  display: none;
}

.c-link-list a,
.c-link-list span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 14px;
  text-decoration: none;
  color: currentColor;
}

.c-link-list a:before,
.c-link-list span:before {
  position: absolute;
  top: 11px;
  left: 0;
  content: "";
  border-width: 4px 5px;
  border-style: solid;
  border-color: transparent transparent transparent #777;
  transform: translateY(-62%);
}

.c-link-list a {
  color: #039;
  text-decoration: underline;
}

.c-link-list a:hover,
.c-link-list a:focus {
  text-decoration: none;
}

/**
 * Article Links
 */

.c-link-articles {
  margin-bottom: 28px;
}

.c-link-articles > li {
  border-bottom: 1px solid #e0e0e0;
}

.c-link-articles > li:first-child a {
  padding-top: 0;
}

/**
 * Article Link
 */

.c-link-article a {
  display: flex;
  flex-direction: row-reverse;
  padding: 14px 2px 15px;
  text-decoration: none;
  color: currentColor;
}

.c-link-article__img {
  min-width: 180px;
  width: 180px;
  height: 95px;
  transition: opacity 0.3s ease;
}

.c-link-article__img img {
  width: 180px;
  height: 95px;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

.c-link-article a:hover .c-link-article__img,
.c-link-article a:focus .c-link-article__img {
  opacity: 0.8;
}

.c-link-article__content {
  flex-grow: 2;
  margin-left: 14px;
  width: calc(100% - 90px);
}

.c-link-article__title {
  margin-bottom: 6px;
  display: block;
  font-size: 15px;
  line-height: 1.6;
  font-weight: bold;
}

.c-link-article__metas li{
  margin: 3px 8px 0 0;
  display: inline-block;
}

.c-link-article__published,
.c-link-article__columnist {
  font-size: 13px;
  color: #777;
}

.c-link-article a:hover .c-link-article__title,
.c-link-article a:focus .c-link-article__title {
  text-decoration: underline;
}

/**
 * Back Number Block
 */

.c-link-backNumbers {
  display: flex;
  flex-wrap: wrap;
  margin: -32px 0 0 -25px;
}

.c-link-backNumbers > .c-link-backNumberItem {
  margin: 32px 0 0 25px;
  width: 136px;
}

/**
 * Back Number Item
 */

.c-link-backNumberItem > a {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding-bottom: 21px;
  height: 100%;
  color: currentColor;
  text-decoration: none;
}

.c-link-backNumberItem > a:hover .c-link-backNumberItem__title,
.c-link-backNumberItem > a:focus .c-link-backNumberItem__title {
  text-decoration: underline;
}

.c-link-backNumberItem__thumbnail {
  margin-bottom: 7px;
}

.c-link-backNumberItem__thumbnail img {
  box-sizing: border-box;
  border: 1px solid #707070;
  width: 136px;
  height: 180px;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

.c-link-backNumberItem__number,
.c-link-backNumberItem__title {
  display: block;
}

.c-link-backNumberItem__number {
  margin-bottom: 5px;
  font-size: 13px;
}

.c-link-backNumberItem__title {
  font-size: 14px;
  font-weight: bold;
  color: #039;
  line-height: 1.6;
}

.c-link-backNumberItem__read {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  padding-left: 18px;
  font-weight: bold;
  font-size: 13px;
}

.c-link-backNumberItem__read:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  width: 14px;
  height: 14px;
  background: url("/assets/img/common/icon_arrow_r.svg") left top no-repeat;
  background-size: 14px auto;
  transform: translateY(-50%);
}

/**
 * Pager
 */

.c-link-pager {
  display: flex;
  justify-content: center;
  margin: 42px 0 32px;
}

.c-link-pager li {
  margin: 0;
}

.c-link-pager li + li {
  margin-left: 6px;
}

.c-link-pager a,
.c-link-pager span {
  display: inline-block;
  box-sizing: border-box;
  padding: 8px 4px;
  min-width: 30px;
  font-size: 15px;
  line-height: 1;
  text-align: center;
}

.c-link-pager .-prev a,
.c-link-pager .-next a,
.c-link-pager .-prev span,
.c-link-pager .-next span {
  padding: 1px 7px 6px;
  font-size: 24px;
}

.c-link-pager a {
  border: 1px solid #5dcbdb;
  color: #5dcbdb;
  transition: background 0.3s ease;
  text-decoration: none;
}

.c-link-pager a:hover,
.c-link-pager a:focus {
  background: #eafcff;
}

.c-link-pager span {
  border: 1px solid #e4e4e4;
  color: #e4e4e4;
}

.c-link-pager span[aria-current="page"] {
  border: 1px solid #5dcbdb;
  background: #5dcbdb;
  font-weight: bold;
  color: #fff;
}

.c-link-pager .-omission span {
  position: relative;
  top: -3px;
  border: none;
  min-width: 0;
  color: #484848;
}

/**
 * Page Navigation
 */

.c-link-pageNav {
  display: flex;
  flex-wrap: wrap;
  margin: -8px 0 0 -24px;
}

.c-link-pageNav > li {
  margin: 8px 0 0 24px;
}

.c-link-pageNav a {
  position: relative;
  display: inline-block;
  padding-left: 16px;
  font-size: 13px;
  text-decoration: none;
  color: currentColor;
}

.c-link-pageNav a:before {
  position: absolute;
  top: 40%;
  left: 0;
  content: "";
  border-width: 5px 4px;
  border-style: solid;
  border-color: #777 transparent transparent;
}

.c-link-pageNav a:hover,
.c-link-pageNav a:focus {
  text-decoration: underline;
}

/**
 * Author Links
 */

.c-link-authors {
  display: flex;
  flex-wrap: wrap;
  margin: -18px 0 32px -24px;
}

.c-link-authors > li {
  margin: 18px 0 0 24px;
  width: 258px;
}

/**
 * Author Link
 */

.c-link-author > a {
  position: relative;
  display: block;
  padding: 0 0 0 40px;
  min-height: 60px;
  text-decoration: none;
  color: currentColor;
}

.c-link-author > a:hover .c-link-author__name,
.c-link-author > a:focus .c-link-author__name {
  text-decoration: underline;
}

.c-link-author > a:hover .c-link-author__img,
.c-link-author > a:focus .c-link-author__img {
  opacity: 0.8;
}

.c-link-author__img {
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.3s ease;
}

.c-link-author__name {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
}

.c-link-author__position {
  font-size: 12px;
  font-style: normal;
  color: #636363;
}

/**
 * Tab Link
 */

.c-link-tabs {
  display: flex;
}

.c-link-tabs li {
  margin-bottom: 0;
}

.c-link-tabs li + li {
  margin-left: 2px;
}

.c-link-tabs a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 10px 16px 11px;
  min-width: 88px;
  background: #fff;
  font-size: 14px;
  text-decoration: none;
  text-align: center;
  color: currentColor;
}

.c-link-tabs a:hover:before,
.c-link-tabs a:focus:before {
  opacity: 0.3;
}

.c-link-tabs + .c-box-container {
  margin-top: 0;
}

.c-link-tabs a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 3px;
  background: #5dcbdb;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.c-link-tabs .is-selected a {
  font-weight: bold;
}

.c-link-tabs .is-selected a:before {
  opacity: 1;
}

/**
 * Button
 */

.c-btn {
  display: inline-block;
  box-sizing: border-box;
  border: none;
  box-shadow: none;
  border-radius: 3px;
  padding: 12px 12px 10px;
  width: 100%;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  color: #000;
  cursor: pointer;
  outline: none;
  transition: background 0.1s ease;
  -webkit-appearance: none;
}

.c-btn:hover,
.c-btn:focus {
  text-decoration: none;
}

.c-btn:disabled {
  background: #c9c9c9 !important;
  cursor: default;
}

.c-btn.-primary {
  background: #f9ff58;
  color: #000;
}

.c-btn.-primary:hover,
.c-btn.-primary:focus {
  background: #fcffb6;
}

.c-btn.-secondary {
  background: #3e3e3e;
  color: #fff;
}

.c-btn.-secondary:hover,
.c-btn.-secondary:focus {
  background: #636363;
}

.c-btn.-weak {
  background: #bababa;
  color: #fff;
}

.c-btn.-weak:hover,
.c-btn.-weak:focus {
  background: #a0a0a0;
}

.c-btn.-amazon {
  background: #ffce00;
  color: #000;
}

.c-btn.-amazon:hover,
.c-btn.-amazon:focus {
  background: #ffe888;
}

.c-btn.-regular {
  background: #5dcbdb;
  color: #fff;
}

.c-btn.-regular:hover,
.c-btn.-regular:focus {
  background: #7de2f1;
}

.c-btn.-premium {
  background: #b29658;
  color: #fff;
}

.c-btn.-premium:hover,
.c-btn.-premium:focus {
  background: #d4b87b;
}

.c-btn.-small {
  padding: 9px 4px 7px;
  width: auto;
  min-width: 120px;
  font-size: 11px;
  text-align: center;
}

.c-btn.-outline {
  background: transparent;
  padding: 10px 10px 8px;
}

.c-btn.-outline.-primary {
  border: 2px solid #ff776c;
  color: #ff776c;
}

.c-btn.-outline.-primary:hover,
.c-btn.-outline.-primary:focus {
  background: #fff4f3;
}

.c-btn.-outline.-secondary {
  border: 2px solid #3e3e3e;
  color: #3e3e3e;
}

.c-btn.-outline.-secondary:hover,
.c-btn.-outline.-secondary:focus {
  background: #f0f0f0;
}

.c-btn.-outline.-weak {
  border: 2px solid #bababa;
  color: #bababa;
}

.c-btn.-weak.-outline:hover,
.c-btn.-weak.-outline:focus {
  background: #f0f0f0;
}

/**
 * News Box
 */

.c-box-news {
  border-radius: 3px;
  padding: 22px 15px 20px;
  background: #fff;
  position: relative;
}

.c-box-news__header {
  position: relative;
  display: flex;
  margin-bottom: 14px;
  width: 100%;
}

.c-box-news__title {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #5dcbdb;
}

.c-box-news__date {
  display: inline-block;
  padding-left: 28px;
  font-size: 12px;
}

.c-box-news__indexLink {
  position: absolute;
  top: 22px;
  right: 15px;
}

.c-box-news__links > li {
  position: relative;
  padding-left: 16px;
  font-size: 14px;
  white-space: normal;
}

.c-box-news__links > li + li {
  margin-top: 8px;
}

.c-box-news__links > li:before {
  position: absolute;
  top: 0.6em;
  left: 0;
  content: "";
  background: url(/assets/img/common/icon_arrow_r.svg);
  background-size: 100% auto;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
}

.c-box-news__links a {
  text-decoration: none;
  color: currentColor;
}

.c-box-news__links a:hover,
.c-box-news__links a:focus {
  text-decoration: underline;
}

/**
 * Related Box
 */

.c-box-related {
  margin-top: 32px;
}

.c-box-related__title {
  border-bottom: 1px solid #d1d1d1;
  padding: 0 3px 5px;
  font-size: 20px;
  font-weight: bold;
}

.c-box-related__content {
  padding: 18px 3px 0;
}

.c-box-related .c-btn {
  padding: 5px 4px;
  min-width: 90px;
}

/**
 * Register Box
 */

.c-box-register {
  border-radius: 3px;
  padding: 18px 21px 20px;
  background: #e3e3e3;
}

.c-box-register__title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  color: #777;
}

.c-box-register__inputs {
  margin-bottom: 8px;
}

.c-box-register__inputs > li + li {
  margin-top: 10px;
}

.c-box-register__note {
  margin-bottom: 8px;
  font-size: 10px;
  line-height: 1.3;
}

.c-box-register__submit {
  margin-bottom: 10px;
}

/**
 * Container Box
 */

.c-box-container {
  margin-top: 10px;
  padding: 18px 40px 20px;
  background: #fff;
}

.c-box-container--article {
  margin-top: 10px;
  line-height: 1.6;
}

/**
 * Link Box
 */

.c-box-link {
  margin-top: 10px;
  padding: 18px 40px 20px;
  background: #fff;
  margin-top: 10px;
  line-height: 1.6;
}

.c-box-link__title {
  border-bottom: 1px solid #d1d1d1;
  padding: 0 3px 5px;
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
}

/**
 * Author Box
 */

.c-box-author {
  display: table;
  padding: 15px;
  background: #f4f4f4;
  direction: rtl;
}

.c-box-author__content,
.c-box-author__img {
  display: table-cell;
  vertical-align: top;
}

.c-box-author__content {
  box-sizing: border-box;
  padding-left: 14px;
  width: 100%;
  direction: ltr;
}

.c-box-author__img {
  white-space: nowrap;
}

.c-box-author__img img {
  max-width: none;
}

.c-box-author__header {
  margin-bottom: 12px;
  border-bottom: 2px solid #b29658;
  padding-bottom: 6px;
}

.c-box-author__name {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
}

.c-box-author__position {
  display: block;
  margin-top: 4px;
  font-size: 13px;
  font-style: normal;
}

.c-box-author__profile {
  font-size: 13px;
  line-height: 1.5;
}

/**
 * プロフィールボックス
 */

.c-box-profile {
  border: 1px solid #ccc;
  padding: 25px;
  margin-top: 32px;
}

.c-box-profile__title {
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.64px;
  font-weight: bold;
}

.c-box-profile__content {
  display: table;
  width: 100%;
  direction: rtl;
}

.c-box-profile__text,
.c-box-profile__img {
  display: table-cell;
  vertical-align: top;
  direction: ltr;
}

.c-box-profile__text {
  box-sizing: border-box;
  padding-left: 20px;
  width: 100%;
}

.c-box-profile__img img {
  max-width: none;
  width: 125px;
}

.c-box-profile__name {
  font-size: 14px;
  line-height: 1.8;
  font-weight: bold;
}

.c-box-profile__position {
  display: inline-block;
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.8;
  font-style: normal;
}

.c-box-profile__description {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.8;
}

/**
 * Monthly
 */

.c-box-monthly {
  margin-bottom: 65px;
  padding: 20px 15px 40px;
  background: #fff;
}

.c-box-monthly__header {
  position: relative;
  box-sizing: border-box;
  border-radius: 4px;
  padding: 35px 30px 35px 210px;
  min-height: 236px;
  background: #5dcbdb;
  text-align: center;
}

.c-box-monthly__img {
  position: absolute;
  top: 30px;
  left: 30px;
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.6);
}

.c-box-monthly__img img {
  width: 168px;
}

.c-box-monthly__title {
  margin: 10px 0 5px 18px;
  font-size: 18px;
  font-weight: bold;
}

.c-box-monthly__content {
  margin-top: 30px;
}

.c-box-monthly__items {
  display: flex;
  flex-wrap: wrap;
  margin: -30px 0 0 -20px;
}

.c-box-monthly__items > .c-box-monthlyItem {
  margin: 30px 0 0 20px;
  width: 180px;
}

.c-box-monthly__link {
  margin-top: 32px;
  text-align: right;
}

.c-box-monthly__lead {
  min-height: 183px;
}

/**
 * Monthly readMore
 */
.c-box-monthly__readMore {
  width: 100%;
  margin: 32px auto 30px;
  text-align: center;
}
.c-box-monthly__readMore .readMore_button {
  position: relative;
  display: inline-block;
  padding-top: 48px;
  cursor: pointer;
}
.c-box-monthly__readMore .readMore_button:hover {
  opacity: .7;
}
.c-box-monthly__readMore .readMore_button::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 40px;
  height: 40px;
  background: url('../img/common/icon_readmore.svg') no-repeat center top;
  background-size: 100%;
}
.c-box-monthly__readMore .readMore_button button {
  appearance: none;
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}

/**
 * Monthly Item
 */

.c-box-monthlyItem a {
  position: relative;
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  padding-bottom: 11px;
  height: 100%;
  color: #000;
  text-decoration: none;
}

.c-box-monthlyItem .icon_key {
  position: absolute;
  left: 0px;
  top: 0px;
  display: block;
  width: 32px;
  height: 32px;
  background-color: #fff;
}

.c-box-monthlyItem .icon_key .fa-lock {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.c-box-monthlyItem .icon_key .fas {
  margin-right: initial;
  margin-left: initial;
}

.c-box-monthlyItem a:hover .c-box-monthlyItem__title,
.c-box-monthlyItem a:focus .c-box-monthlyItem__title {
  text-decoration: underline;
}

.c-box-monthlyItem.related_more_article {
  display: none;
}

.c-box-monthlyItem__thumbnail {
  margin-bottom: 12px;
}

.c-box-monthlyItem__thumbnail img{
  width: 180px;
  height: 95px;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

.c-box-monthlyItem__title {
  display: inline-block;
  margin-bottom: 6px;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.6;
}

.c-box-monthlyItem__columnist {
  display: inline-block;
  margin-top: auto;
  font-size: 12px;
}

/**
 * Normal Section
 */

.c-sec {
  padding: 18px 40px 20px;
  background: #fff;
}

/**
 * Article section
 */

.c-sec-article {
  position: relative;
  border-top: 5px solid #5dcbdb;
  background: #fff;
  padding: 60px 40px 38px;
  word-break: break-all;
}

.c-sec-article#premium {
  border-color: #b29658;
}

.c-sec-article__container > *:last-child {
  margin-bottom: 0 !important;
}

.c-sec-article__tag {
  position: absolute;
  top: 8px;
  left: 42px;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  line-height: 1;
  color: #5dcbdb;
}

#premium .c-sec-article__tag {
  color: #b29658;
}

.c-sec-article__content {
  margin-top: 40px;
  letter-spacing: 0.64px;
  line-height: 1.8;
}

.c-sec-article__contentInner > *:first-child {
  margin-top: 0;
}

.c-sec-article__contentInner h2 {
  margin: 32px 0 30px;
  font-size: 24px;
  font-weight: bold;
}

.c-sec-article__contentInner h3 {
  margin: 30px 0 20px;
  font-size: 20px;
  font-weight: bold;
}

.c-sec-article__contentInner h4 {
  margin: 16px 0 8px;
  font-size: 15px;
  font-weight: bold;
}

.c-sec-article__contentInner p {
  margin-bottom: 20px;
  font-size: 16px;
  word-break: break-all;
}

.c-sec-article__contentInner table {
  font-size: 16px;
  margin: 30px 0;
  border: 1px solid #ccc;
  border-collapse: collapse;
  width: 100%;
}

.c-sec-article__contentInner table th,
.c-sec-article__contentInner table td {
  padding: 10px;
  border: 1px solid #ccc;
  line-height: 1.8;
}

.c-sec-article__contentInner table th {
  background: #eee;
  font-weight: bold;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  padding: 10px;
}

.c-sec-article__contentInner table td {
  padding: 15px;
  margin: 0px;
  font-size: 16px;
}

.c-sec-article__contentInner .ib {
  padding: 0px;
  text-align: center;
}

.c-sec-article__contentInner .ib p.cap {
  font-size: 90%;
  line-height: 1.4em;
  clear: both;
  text-indent: 0px;
  text-align: center;
}

.c-sec-article__contentInner .ib img {
  margin: 0px auto 5px auto;
  padding: 0px;
  float: none;
}

.c-sec-article__contentInner .readmore p {
  text-align: center;
}

.c-sec-article__contentInner .pager {
  margin: 40px 0;
  text-align: center;
  font-size: 0px;
}

.c-sec-article__contentInner .pager > span,
.c-sec-article__contentInner .pager > a {
  display: inline-block;
  margin-left: 6px;
  border: 1px solid #5dcbdb;
  padding: 6px 7px 5px;
  font-size: 15px;
  text-decoration: none;
}

.c-sec-article__contentInner .pager > span {
  background: #5dcbdb;
  font-weight: bold;
  color: #fff;
}

.c-sec-article__contentInner .pager > a {
  color: #5dcbdb;
  transition: background 0.3s ease;
}

.c-sec-article__contentInner .pager > a:hover,
.c-sec-article__contentInner .pager > a:focus {
  background: #eafcff;
}

.c-sec-article__contentInner .pager > *:first-child {
  margin-left: 0;
}

.c-sec-article__contentInner hr {
  display: block;
  border-style: solid;
  border-width: 1px 0 0;
  border-color: #ccc;
  margin: 45px auto;
  width: 88%;
}

.c-sec-article__contentInner .img_box_right {
  float: right;
  padding: 0 0 15px 40px;
  width: 250px;
  text-align: right;
}

.c-sec-article__contentInner .img_box_right img {
  margin-bottom: 10px;
}

.c-sec-article__contentInner .img_box_right p.cap {
  font-size: 12px;
  line-height: 16px;
  clear: both;
  text-indent: 0px;
  padding-left: 15px;
}

.c-sec-article__contentInner .ib p.cap {
  font-size: 12px;
  line-height: 16px;
  clear: both;
  text-indent: 0px;
  text-align: center;
}

.c-sec-article__contentInner .img_box_left {
  float: left;
  padding-right: 15px;
  padding-bottom: 10px;
  width: 265px;
  text-align: left;
}

.c-sec-article__contentInner .img_box_left p.cap {
  font-size: 12px;
  line-height: 16px;
  clear: both;
  text-indent: 0px;
  padding-right: 15px;
}

.c-sec-article__contentInner .img_box_left img {
  padding-right: 15px;
  padding-bottom: 10px;
}

.c-sec-article__contentInner .article_lead {
  padding: 25px;
  border: solid 1px #000000;
  display: flex;
}
.c-sec-article__contentInner .article_lead img {
  margin-right: 16px;
  width: 100px;
  height: 100px;
  object-fit: cover;
}

.c-sec-article__contentInner .article_profile_name {
  font-size: 14px;
  display: block;
  text-align: center;
  margin: 0 0 5px;
}

.c-sec-article__contentInner .image_caption {
  font-size: 13px;
  color: #444;
  margin-bottom: 0;
}

.c-sec-article__contentInner .image_provision {
  font-size: 13px;
  color: #777;
  text-align: right;
  margin-bottom: 0;
}

.c-sec-article__contentInner .article_image_large img {
  margin-bottom: 10px;
}

.c-sec-article__contentInner .article_image_small:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.c-sec-article__contentInner .article_list_large,
.c-sec-article__contentInner .article_list_number {
  margin: 30px 0 30px 20px;
}

.c-sec-article__contentInner .article_list_small {
  margin: 15px 0 30px 20px;
}

.c-sec-article__contentInner li {
  position: relative;
  padding-left: 25px;
  line-height: 1.8;
}

.c-sec-article__contentInner .article_list_large li,
.c-sec-article__contentInner .article_list_number li {
  font-size: 16px;
}

.c-sec-article__contentInner .article_list_small li {
  font-size: 14px;
}

.c-sec-article__contentInner li::before {
  position: absolute;
  left: 0;
}

.c-sec-article__contentInner .article_list_large > li::before,
.c-sec-article__contentInner .article_list_small > li::before {
  left: 4px;
  content: "";
  border-radius: 50%;
  width: 6px;
  height: 6px;
  background: #5dcbdb;
}

.c-sec-article__contentInner .article_list_large > li::before {
  top: 10px;
}

.c-sec-article__contentInner .article_list_small > li::before {
  top: 8px;
}

.c-sec-article__contentInner .article_list_large > li + li,
.c-sec-article__contentInner .article_list_small > li + li {
  margin-top: 7px;
}

.c-sec-article__contentInner .article_list_number {
  counter-reset: number;
}

.c-sec-article__contentInner .article_list_number > li {
  counter-increment: number;
}

.c-sec-article__contentInner .article_list_number > li::before {
  top: 0;
  content: counter(number) ".";
  border-radius: 50%;
}

.c-sec-article__contentInner .article_list_number > li + li {
  margin-top: 10px;
}

.c-sec-article__contentInner .article_question {
  color: #023172;
  font-weight: bold;
  margin: 30px 0;
}

.c-sec-article__contentInner .article_case {
  padding: 25px;
  border: solid 1px #5dcbdb;
  margin-bottom: 15px;
}

.c-sec-article__contentInner .article_case_title {
  font-weight: bold;
  margin-bottom: 0;
}

.c-sec-article__contentInner .article_case p:last-child {
  margin-bottom: 0;
}

.c-sec-article__contentInner .article_caption {
  color: #444;
}

.c-sec-article__contentInner .article_source {
  margin-bottom: 15px;
}

.c-sec-article__contentInner .article_image_large {
  text-align: center;
  margin-bottom: 20px;
}

.c-sec-article__contentInner .article_image_small {
  margin-bottom: 30px;
}

.c-sec-article__contentInner .article_image_small:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.c-sec-article__contentInner .article_image_small > p:last-child {
  margin-bottom: 0;
}

.c-sec-article__contentInner .article_image_large_cap {
  margin-bottom: 30px;
}

.c-sec-article__contentInner .article_image_large_cap img {
  margin-bottom: 10px;
}

.c-sec-article__contentInner .article_image_small_cap {
  margin-bottom: 30px;
}

.c-sec-article__contentInner .article_image_small_cap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.c-sec-article__contentInner .article_image_small_cap > p:last-child {
  margin-bottom: 0;
}

.c-sec-article__contentInner .article_talk {
  margin-bottom: 40px;
}

.c-sec-article__contentInner .article_note {
  font-size: 13px;
  color: #444;
  margin: -20px 0 40px;
}

.c-sec-article__contentInner sup {
  font-size: 13px;
}

.js-content {
  margin: 0 auto;
}
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}
.modal__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
  background: #fff;
  padding: 40px 10px 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  max-width: 90%;
  max-height: 90%;
  text-align: center;
}
.c-sec-article__contentInner .modal__content img {
  max-height: calc(100vh - 80px);
}
.js-modal-open {
  cursor: pointer;
}
.js-modal-close {
  text-decoration: none;
}
.js-modal-close:hover {
  text-decoration: none;
}
.js-modal-close:after {
  font-family: "Font Awesome 5 Free";
  content: "\f00d";
  font-size: 2rem;
  font-weight: 900;
  position: absolute;
  top: 0;
  right: 12px;
  color: #111;
}

/**
 * Aside section
 */

.c-sec-aside {
  border-top: 3px solid #000;
  padding: 6px 0 3px;
}

/**
 * Input
 */

.c-form-input {
  box-shadow: none;
  box-sizing: border-box;
  border-radius: 3px;
  border: none;
  padding: 6px 13px 5px;
  width: 100%;
  background: #fff;
  font-size: 12px;
  vertical-align: top;
  -webkit-appearance: none;
  appearance: none;
}

.c-form-input::placeholder,
.c-form-input:-ms-input-placeholder,
.c-form-input::-ms-input-placeholder {
  color: #e3e3e3;
}

.c-form-input.-border {
  border: 1px solid #e1e1e1;
}

/**
 * Textarea
 */

.c-form-textarea {
  border-radius: 3px;
  box-sizing: border-box;
  border: none;
  padding: 6px 13px 5px;
  width: 100%;
  height: 200px;
  background: #fff;
  font-size: 12px;
  line-height: 1.6;
  vertical-align: top;
}

.c-form-textarea.-border {
  border: 1px solid #e1e1e1;
}

/**
 * Form Layout
 */

.c-form-layout {
  margin: 0;
  border: none;
}

.c-form-layout tr + tr th {
  padding-top: 19px;
  border-top: 1px solid #e0e0e0;
}

.c-form-layout tr + tr td {
  padding-top: 14px;
  border-top: 1px solid #e0e0e0;
}
@media screen and (max-width: 600px) {
  .c-form-layout tr + tr td {
    border-top: none;
  }
}

.c-form-layout th,
.c-form-layout td {
  border: none;
  padding-bottom: 14px;
  background: transparent;
  vertical-align: top;
}

.c-form-layout th {
  padding-top: 13px;
  padding-right: 12px;
  padding-left: 3px;
  font-weight: bold;
}
@media screen and (max-width: 600px) {
  .c-form-layout th {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.c-form-layout td {
  padding-left: 12px;
  padding-right: 12px;
}
@media screen and (max-width: 600px) {
  .c-form-layout td {
    padding: 10px 0;
  }
}

.c-form-layout__child + .c-form-layout__child {
  margin-top: 18px;
}

.c-form-layout__note {
  margin-top: 6px;
  font-size: 12px;
}

.c-form-layout__label {
  display: block;
  margin: 0 6px 0 0;
  white-space: nowrap;
}

.c-form-layout__item {
  display: flex;
  align-items: center;
}

.c-form-layout__item.-vertical {
  display: block;
}

.c-form-layout__item.-vertical .c-form-input {
  width: 100%;
}

.c-form-layout__item.-vertical .c-form-layout__label {
  margin: 0 0 4px;
}

.c-form-layout__item + .c-form-layout__item {
  margin-top: 12px;
}

.c-form-layout .attention {
  margin-bottom: 6px;
  font-size: 13px;
  color: #c00;
}

/**
 * Magazine Box
 */

.c-side-magazine {
  border-radius: 3px;
  padding: 18px 21px 20px;
  background: #fff;
}

.c-side-magazine__header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 18px;
  width: 100%;
}

.c-side-magazine__title {
  font-size: 14px;
  font-weight: bold;
}

.c-side-magazine__content {
  position: relative;
}

.c-side-magazine__link {
  display: table;
  width: 100%;
}

.c-side-magazine__label,
.c-side-magazine__img {
  display: table-cell;
  vertical-align: top;
}

a .c-side-magazine__label {
  color: #4e66b3;
}

.c-side-magazine__label {
  font-size: 12px;
  line-height: 1.6;
}

.c-side-magazine__img {
  width: 120px;
  height: 160px;
}

.c-side-magazine__img img {
  width: 120px;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
}

.c-side-magazine__btns {
  position: absolute;
  bottom: 0;
  left: 0;
}

.c-side-magazine__btns li {
  margin-bottom: 0;
}

.c-side-magazine__btns li + li {
  margin-top: 13px;
}


/**
 * Subscribe box
 */
.c-side-subscribe {
  margin-top: 20px;
  margin-bottom: 20px;
}
.c-side-subscribe__title {
  background: #5dcbdb;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 21px;
}
.c-side-subscribe__contents {
  background: #fff;
  padding: 20px;
}
.c-side-subscribe__benefits {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.05em;
  background: #5CCBDA;
  border: 2px solid #E6E5E5;
  color: #fff;
  padding: 6px 10px;
  display: inline-block;
}
.c-side-subscribe__subtitle {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.c-side-subscribe__notice {
  font-size: 12px;
  text-align: center;
  margin: 20px 0 10px;
  letter-spacing: 0.05em;
}
.c-side-subscribe__subtitle-name {
  font-size: 18px;
  font-weight: bold;
  margin-left: 10px;
}
.c-side-subscribe__detail {
  display: table;
  margin: 20px;
}
.c-side-subscribe__detail-magazine {
  display: table-cell;
  width: 30%;
}
.c-side-subscribe__detail-plus {
  display: table-cell;
  width: 2.5rem;
  vertical-align: middle;
  font-size: 25px;
  font-weight: bold;
  color: #5CCBDA;
  text-align: center;
  padding-top: 20px;
}
.c-side-subscribe__detail-online {
  display: table-cell;
  width: calc(70% - 2.5rem);
}
.c-side-subscribe__detail-title {
  font-size: 14px;
  color: #707070;
  font-weight: bold;
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
.c-side-subscribe__detail-online .c-side-subscribe__detail-title {
  margin-left: 15px;
}
.c-side-subscribe__magazine,
.c-side-subscribe__mockup {
  text-align: center;
}
.c-side-subscribe__magazine img {
  box-shadow: -2px 1px 6px 0 rgba(0, 0, 0, 0.4);
  height: 75px;
}
.c-side-subscribe__mockup img {
  height: 75px;
}
.c-side-subscribe__notice .underline {
  font-size: 14px;
  font-weight: bold;
  margin: 0 2px;
  border-bottom: 3px solid #ADE5EC;
}
/**
 * Member box
 */

.c-side-member {
  border-color: #000;
  border-style: solid;
  border-width: 4px 0 0;
  padding: 16px 20px 18px;
  background: #fff;
}
@media screen and (max-width: 950px) {
 .c-side-member {
  width: 260px;
  margin: 0 auto;
}
}
@media screen and (max-width: 480px) {
  .c-side-member {
  display: none;
 }
 }

.c-side-member.-temporary {
  border-color: #bababa;
}

.c-side-member.-premium {
  border-color: #b29658;
}

.c-side-member__header {
  position: relative;
  margin-bottom: 6px;
  padding-left: 65px;
  min-height: 56px;
}

.c-side-member__header::before {
  position: absolute;
  left: 0;
  top: 50%;
  content: "";
  width: 56px;
  height: 56px;
  background: url("/assets/img/common/icon_person.svg");
  background-size: 100% auto;
  transform: translateY(-50%);
}

.c-side-member.-temporary .c-side-member__header::before {
  background: url("/assets/img/common/icon_person_inactive.svg");
}

.c-side-member__title {
  font-size: 16px;
  font-weight: bold;
}

.c-side-member.-temporary .c-side-member__title {
  color: #ff685c;
}

.c-side-member__message {
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.3;
}

.c-side-member__btns {
  display: flex;
}

.c-side-member__btns > li + li {
  margin-left: 15px;
}

.c-side-member__btns .c-btn {
  padding: 8px 18px 7px;
}

.c-side-member__btns .c-btn.-outline {
  padding: 6px 16px 5px;
}

/**
 * SNS Link
 */
.c-side-sns {
  margin: 30px 0 20px;
}
.c-side-sns__link {
  display: inline-block;
  margin-right: 20px;
  width: 42px;
  height: 42px;
}


/**
 * Event box
 */
.c-side-event__title {
  background: #5dcbdb;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 20px;
}
.c-side-event__articles {
  background: #fff;
  padding: 5px 20px;
}
.c-side-event__article + .c-side-event__article {
  border-top: 1px solid #ccc;
}
.c-side-event__article a {
  display: flex;
  flex-direction: row-reverse;
  padding: 14px 2px 15px;
  text-decoration: none;
  color: currentColor;
}
.c-side-event__article-title {
  display: block;
  font-size: 14px;
  line-height: 1.5;
}
.c-side-event__article-img {
  border: 1px solid #e0e0e0;
  min-width: 90px;
  width: 90px;
  height: 90px;
}
.c-side-event__article-content {
  flex-grow: 2;
  margin-left: 14px;
  width: calc(100% - 90px);
}
.c-side-event__article-img {
  border: 1px solid #e0e0e0;
  min-width: 90px;
  width: 90px;
  height: 65px;
}
.c-side-event__article-img img {
  width: 90px;
  height: 65px;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}
.c-side-event__article a:hover .c-side-event__article-img,
.c-side-event__article a:focus .c-side-event__article-img {
  opacity: 0.8;
}
.c-side-event__article a:hover .c-side-event__article-title,
.c-side-event__article a:focus .c-side-event__article-title {
  text-decoration: underline;
}

/**
 * banner box
 */
.c-side-banner {
  margin-bottom: 15px;
}

/* ==========================================================================
   Projects
   ========================================================================== */

/* Top
   ----------------------------------------------------------------- */

/**
 * News Block
 */

.p-top-news {
  display: flex;
  margin-bottom: 30px;
  white-space: nowrap;
}

.p-top-news__column.c-box-news {
  box-sizing: border-box;
  margin-left: 10px;
  width: 100%;
}

/**
 * Tags
 */

.p-top-tags {
  border-radius: 3px;
  padding: 22px 15px 20px;
  background: #fff;
}

.p-top-tags__list > li + li {
  margin-top: 12px;
}

.p-top-tags__list a {
  font-size: 14px;
  text-decoration: none;
  color: currentColor;
}

.p-top-tags__list a:hover,
.p-top-tags__list a:focus {
  text-decoration: underline;
}

/* Authors
   ----------------------------------------------------------------- */

/**
 * section
 */

.p-authors-sec {
  margin-top: 32px;
}

/* Login
   ----------------------------------------------------------------- */

.c-sec.p-login #undercolumn_login {
  max-width: 540px;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  .c-sec.p-login #undercolumn_login {
    width: auto;
    margin: 0 15px;
  }
}

/**
 * section
 */

.c-sec.p-login {
  padding: 18px 0;
}
@media screen and (max-width: 480px) {
  .c-sec.p-login {
    padding: 18px 10px;
  }
}

.p-login__sec {
  width: 540px;
  margin: 52px auto 0 auto;
}
@media screen and (max-width: 600px) {
  .p-login__sec {
    width: 100%;
  }
}

.p-login__message {
  margin-bottom: 14px;
  line-height: 1.6;
}

.p-login__form {
  margin-bottom: 14px;
  padding: 10px 12px 5px;
  background: #f4f4f4;
}

.p-login__btn {
  margin-bottom: 24px;
  text-align: center;
}

.p-login__btn .c-btn {
  max-width: 240px;
}

/* Terms & policy
   ----------------------------------------------------------------- */

.p-terms__content > *:last-child {
  margin-bottom: 0 !important;
}

.p-terms__content h2 {
  margin: 32px 0 12px;
  border-bottom: 1px solid #ccc;
  padding: 0 0 5px 3px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
}

.p-terms__content h3 {
  margin: 22px 0 10px;
  font-size: 15px;
  font-weight: bold;
}

.p-terms__content h4 {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: bold;
}

.p-terms__content p {
  margin-bottom: 12px;
  font-size: 13px;
  line-height: 1.7;
}

.p-terms__content ul,
.p-terms__content ol {
  margin: 0 0 12px 14px;
}

.p-terms__content ol {
  counter-reset: number;
}

.p-terms__content ul li,
.p-terms__content ol li {
  position: relative;
  font-size: 13px;
  line-height: 1.7;
}

.p-terms__content ul li {
  padding-left: 16px;
}

.p-terms__content ol li {
  padding-left: 18px;
  counter-increment: number;
}

.p-terms__content ul li:before {
  position: absolute;
  top: 0.6em;
  left: 0;
  content: "";
  border-radius: 50%;
  width: 5px;
  height: 5px;
  background: #5dcbdb;
}

.p-terms__content ol li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: counter(number) ".";
}

.p-terms__content ul li + li,
.p-terms__content ol li + li {
  margin-top: 6px;
}

.p-terms__content table {
  border-collapse: collapse;
}

.p-terms__content table th,
.p-terms__content table td {
  padding: 8px 12px 7px;
  font-size: 13px;
}

.p-terms__content table th {
  font-weight: bold;
}

/* News
   ----------------------------------------------------------------- */

.p-news__empty {
  padding: 24px 0 38px;
  font-size: 14px;
}

/* Authors
   ----------------------------------------------------------------- */

/**
 * Nav
 */

.p-authors-nav {
  padding: 14px 30px;
  background: #fff;
}

/* Contact
   ----------------------------------------------------------------- */

.p-contact > *:last-child {
  margin-bottom: 0 !important;
}

.p-contact__message {
  margin-bottom: 18px;
  font-size: 14px;
  line-height: 1.6;
}

/* Search
   ----------------------------------------------------------------- */

/**
 * Search Form
 */

.p-search-form {
  padding: 18px 40px 20px;
  background: #fff;
}

.p-search-form .c-form-input {
  padding: 6px 12px;
  border: 1px solid #ddd;
  font-size: 12px;
  line-height: 1.4;
}

.p-search-form__items {
  margin-bottom: 18px;
}

.p-search-form__items > li {
  margin-bottom: 0;
}

.p-search-form__items > li + li {
  margin-top: 14px;
}

.p-search-form__label {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 14px;
}

.p-search-form__items .-term {
  display: flex;
}

.p-search-form__mark {
  position: relative;
  top: 7px;
  display: inline-block;
  margin: 0 8px;
  vertical-align: middle;
}

.p-search-form__btn {
  text-align: right;
}

/**
 * Counter
 */

.p-search-form {
  margin-bottom: 28px;
}

.p-search-counter {
  margin-bottom: 7px;
  padding-left: 2px;
  font-weight: bold;
}

/* Mypage
   ----------------------------------------------------------------- */

/**
 * Mypage Lead
 */

.p-mypage-lead {
  margin-bottom: 22px;
  font-size: 14px;
}

/**
 * Mypage Message
 */

.p-mypage-message {
  margin-bottom: 10px;
}

.p-mypage-message-success {
  background: #dde3d1;
  padding: 5px;
  margin-bottom: 10px;
  font-weight: bold;
}

/**
 * Mypage Link
 */

.p-mypage-link {
  margin-bottom: 14px;
}

.p-mypage-link .c-link {
  font-size: 14px;
}

/**
 * Mypage Nav
 */

.p-mypage-nav > li {
  display: flex;
}
@media screen and (max-width: 480px) {
  .p-mypage-nav > li {
    display: block;
  }
}

.p-mypage-nav__link {
  white-space: nowrap;
}
@media screen and (max-width: 480px) {
  .p-mypage-nav__link {
    margin-bottom: 10px;
  }
}

.p-mypage-nav__link {
  min-width: 124px;
}

.p-mypage-nav__description {
  margin-left: 18px;
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (max-width: 480px) {
  .p-mypage-nav__description {
    margin-left: 0;
  }
}

.p-mypage-nav__description p + p {
  margin-top: 12px;
}

/**
 * Mypage Form
 */

.p-mypage-form .c-form-input {
  padding: 6px 12px;
  border: 1px solid #ddd;
  font-size: 12px;
  line-height: 1.4;
}

.p-mypage-form__table {
  margin-bottom: 14px;
}
@media screen and (max-width: 600px) {
  .p-mypage-form__table th,
  .p-mypage-form__table td {
    display: block;
    text-align: left;
  }
}

.p-mypage-form__btn {
  text-align: center;
}

.p-mypage-form__btn .c-btn {
  width: 180px;
}

.p-mypage-social-account__table {
  margin-bottom: 14px;
  width: 100%;
}

.p-mypage-social-account__table th,
.p-mypage-social-account__table td {
  vertical-align: middle;
}

@media screen and (max-width: 600px) {
  .p-mypage-social-account__table th,
  .p-mypage-social-account__table td {
    display: block;
    text-align: left;
  }
}

/**
 * Nav
 */

.p-mypage-nav {
  display: flex;
  flex-wrap: wrap;
  margin: -12px 0 20px -20px;
}

.p-mypage-nav li {
  margin: 12px 0 0 20px;
}

/* Refusal
   ----------------------------------------------------------------- */

/**
 * Message
 */

.p-refusal-message {
  margin-bottom: 14px;
}

.p-refusal-message strong {
  color: #c00;
}

/**
 * Box 退会手続き
 */

.p-refusal-box {
  border: 1px solid #d0d0d0;
  padding: 13px 14px;
}

.p-refusal-box__message {
  margin-bottom: 16px;
}

.p-refusal-box__btns {
  display: flex;
  justify-content: center;
}

.p-refusal-box__btns > li {
  width: 220px;
}

.p-refusal-box__btns > li + li {
  margin-left: 12px;
}

@media screen and (max-width: 480px) {
  .p-refusal-box__btns {
    display: block;
    justify-content: initial;
  }
  .p-refusal-box__btns > li {
    width: 220px;
    margin: 0 auto;
  }
  .p-refusal-box__btns > li + li {
    margin: 10px auto 0 auto;
  }
}

.p-refusal-box__btns .c-btn {
  min-width: 134px;
  max-width: 240px;
  line-height: 1.3;
}

/* Entry
   ----------------------------------------------------------------- */

/**
 * Entry Form
 */
.p-entry-form {
  width: 540px;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  .p-entry-form {
    width: 100%;
  }
}

.p-entry-form .c-form-input {
  padding: 6px 12px;
  border: 1px solid #ddd;
  font-size: 12px;
  line-height: 1.4;
}

.p-entry-form__table {
  margin-bottom: 14px;
  width: 100%;
}
@media screen and (max-width: 600px) {
  .p-entry-form__table {
    width: 100%;
  }
  .p-entry-form__table th,
  .p-entry-form__table td {
    display: block;
    text-align: left;
  }
}

.p-entry-form__btn {
  text-align: center;
}

.p-entry-form__btn .c-btn {
  width: 240px;
}

/**
 * Entry Complete Box
 */

.p-entry-complete__btn {
  margin-top: 32px;
  text-align: center;
}

.p-entry-complete__btn .c-btn {
  width: 220px;
}

/* Shopping
   ----------------------------------------------------------------- */

/**
 * Shopping Form
 */

.p-shopping-form .c-form-input {
  padding: 6px 12px;
  border: 1px solid #ddd;
  font-size: 12px;
  line-height: 1.4;
}

.p-shopping-form__table {
  margin-bottom: 14px;
}

.p-shopping-form__btn {
  text-align: center;
}
@media screen and (max-width: 480px) {
  .p-shopping-form__btn {
    float: none;
  }
  .p-shopping-form__btn a.c-btn.-primary.-small {
    display: block;
    width: 155px;
    margin: 10px auto;
  }
}

.p-shopping-form__btn .c-btn {
  width: 155px;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .p-shopping-form__btn .c-btn.-small {
    padding: 9px 4px 7px;
  }
}
@media screen and (max-width: 480px) {
  .p-shopping-form__btn .c-btn {
    width: 120px;
  }
}

.p-shopping-form__btn .c-btn .-small {
  width: 155px;
  display: inline-block;
}

/**
   * src/public/assets/packages/default/cssより移動
   */

.attention {
  color: #f00;
}

/**
   * 追加
   */
.infomation {
  margin-bottom: 15px;
}

.infomation-list {
  position: relative;
  padding-left: 12px;
}
.infomation-list::before {
    position: absolute;
    top: 0.6em;
    left: 0;
    content: "";
    border-radius: 50%;
    width: 5px;
    height: 5px;
    background: #5dcbdb;
}

#google_image_div {
  display: none;
}

.login_area {
  width: 540px;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  .login_area {
    width: auto;
  }
}

@media screen and (max-width: 767px) {
  .l-main-top-banner {
    display: none;
    opacity: 0;
  }
}

/**
   * 購入履歴一覧 table
   */

.c-table-lv1 {
  margin: 15px auto 20px auto;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}
.c-table-lv1 th {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #333;
  background-color: #f0f0f0;
  font-weight: normal;
  font-weight: bold;
}
.c-table-lv1 td {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.c-table-lv1 td textarea#reason {
  width: 98%;
  height: 150px;
  -webkit-appearance: none;
}
@media screen and (max-width: 480px) {
  .c-table-lv1.u-table-width {
    width: auto;
  }
  .c-table-lv1 th {
    padding: 4px;
    font-size: 10px;
  }
  .c-table-lv1 td {
    padding: 4px;
    font-size: 11px;
  }
  .c-table-lv1 td.alignC.u-fontsize-small {
    font-size: 10px;
  }
  .u-tdwidth-10 {
    width: 10%;
  }
  .u-tdwidth-20 {
    width: 20%;
  }
}

/* 購入履歴一覧/詳細
---------------------- ------------------------- */
.mycondition_area {
  margin: 0 auto 20px 0;
  padding: 10px;
  border: solid 1px #ccc;
  width: 97%;
  background: #f9f9f9;
}

.mycondition_area .p-shopping-form__btn {
  float: right;
}
@media screen and (max-width: 480px) {
  .mycondition_area .p-shopping-form__btn {
    float: none;
  }
}

.mycondition_area p {
  float: left;
  font-size: 11px;
}
@media screen and (max-width: 480px) {
  .mycondition_area p {
    float: none;
    font-size: 14px;
    line-height: 160%;
  }
}

.mycondition_area .btn {
  width: 160px;
  margin-top: 15px;
  float: right;
}

.add_address {
  margin-bottom: 20px;
}

.mycondition_area .st {
  font-weight: bold;
}

/* 下層コンテンツ */
#undercolumn {
  width: 100%;
  margin: 0 0 20px 0;
}

/* ==============================================
▼MYページ contents.cssより移動
=============================================== */
/* 共通設定
----------------------------------------------- */
div#mypagecolumn {
  width: 100%;
}

div#mynavi_area {
  width: 100%;
}

div#mycontents_area {
  width: 100%;
}
div#mynavi_area .mynavi_list {
  margin-bottom: 20px;
  width: 100%;
}
div#mynavi_area .mynavi_list li {
  margin: 0 15px 5px 0;
  padding-left: 15px;
  float: left;
  background: url('../img/icon/ico_arrow_01.gif') no-repeat left ;
  font-size: 120%;
}

div#mynavi_area div.point_announce {
  margin-bottom: 30px;
  padding: 10px;
  border: solid 1px #ffcc62;
  background-color: #fffaf0;
}
div#mynavi_area div.point_announce p {
  padding-left: 20px;
  background: url('../img/icon/ico_point.gif') no-repeat left ;
}

div#mycontents_area p.inforamtion {
  margin-bottom: 20px;
}

div#mypagecolumn h4 {
  margin: 10px auto;
  border-bottom: 1px solid #999;
  text-align: left;
  font-size: 120%;
}


/* 購入履歴一覧/詳細
----------------------------------------------- */
div#mycontents_area div.mycondition_area {
  margin: 0 auto 20px 0;
  padding: 10px;
  border: solid 1px #ccc;
  width: 97%;
  background: #f9f9f9;
}
div#mycontents_area div.mycondition_area p {
  float: left;
}
div#mycontents_area div.mycondition_area .btn {
  width: 160px;
  margin-top: 15px;
  float: right;
}
.add_address {
  margin-bottom: 20px;
}


/* 会員登録内容変更/退会
----------------------------------------------- */
div#mycontents_area .message_area {
  margin: 30px auto;
  padding: 30px;
  border: 1px solid #ccc;
  text-align: center;
}

div#mycontents_area .message_area p {
  margin-bottom: 20px;
}

/* ==============================================
▼会員登録
=============================================== */
div#undercolumn_entry {
  width: 100%;
}

div#undercolumn_entry .kiyaku_text {
  margin: 20px auto;
  padding: 10px;
  border: solid 1px #ccc;
  width: 94%;
  background: #fff;
}


/* ==============================================
▼ログイン
=============================================== */
div#undercolumn_login {
  margin: 0 auto;
  width: 100%;
}

div#undercolumn_login .login_area {
  margin-bottom: 30px;
}

div#undercolumn_login .login_area .inputbox {
  margin: 15px auto 15px auto;
  padding: 15px 20px 10px 20px;
  background: #f0f0f0;
}

div#undercolumn_login .login_area .inputbox .btn_area {
  margin-top: 0;
}

div#undercolumn_login .login_area_border {
  float: left;
  width: 4px;
  height: 16px;
  margin-top: 8px;
  margin-right: 10px;
  background-color: #af3435;
}

div#undercolumn_login .usage_manual {
  width: 99%;
  height: 100px;
}


/* ==============================================
▼エラー
=============================================== */
div#undercolumn_error .message_area {
  width: 80%;
  margin: 30px auto;
  padding: 30px;
  border: 1px solid #ccc;
  text-align: center;
}

div#undercolumn_error .message_area .error {
  padding: 120px 0;
}


/* ==============================================
▼商品一覧
=============================================== */
/* ページ送り
----------------------------------------------- */
.pagenumber_area {
  padding-bottom: 10px;
  background: url("../img/background/line_dot_01.gif") repeat-x bottom ;
}
.pagecond_area {
  margin-bottom: 20px;
  padding: 10px;
}
.pagenumber_area {
  margin: 20px 0;
}
.pagecond_area {
  border: 1px solid #ccc;
}
.pagenumber_area .navi {
  width: 100%;
  text-align: left;
}
.pagenumber_area .navi li {
  display: inline;
}
.pagenumber_area .change {
  float: right;
  text-align: right;
  white-space: nowrap;
}


/* レイアウト
----------------------------------------------- */
div.list_area {
  padding: 0 0 30px 0;
  width: 100%;
  overflow: auto;
}

div.listphoto {
  float: left;
}

/* メインカラム用 1カラム時*/
#one_maincolumn div.listrightbloc {
  float: right;
  width: 74%;
}

/* メインカラム用 2カラム時*/
#two_maincolumn_right div.listrightbloc,
#two_maincolumn_left div.listrightbloc {
  float: right;
  width: 80%;
}

/* メインカラム用 3カラム時*/
#three_maincolumn div.listrightbloc {
  float: right;
  width: 74%;
}


/* 商品情報 各種設定
----------------------------------------------- */
/* 商品ステータス */
div.listrightbloc ul.status_icon {
  margin-bottom: 10px;
  width: 100%;
}
div.listrightbloc ul.status_icon li {
  margin-right: 5px;
  float: left;
}

/* 商品名 */
div.listrightbloc h3 {
  font-weight: bold;
  font-size: 120%;
}

/* コメント */
div.listrightbloc .listcomment {
  margin: 0 0 10px 0;
  text-align: left;
}

/* 商品詳細を見る */
div.listrightbloc .detail_btn {
  margin-bottom: 20px;
}

/* 価格 */
div.listrightbloc .pricebox {
  margin: 0 0 10px 0;
}

/* 買い物かご */
div.listrightbloc .cart_area {
  padding: 10px;
  border: 1px solid #cef0f4;
  background-color: #ecf5ff;
  width: 94%;
}

/* 規格 */
div.listrightbloc .classlist {
  margin-bottom: 10px;
  padding-bottom: 10px;
  background: url("../img/background/line_dot_02.gif") repeat-x bottom ;
}
div.listrightbloc dl {
  width: 100%;
}
div.listrightbloc dt {
  display: inline-block;
  vertical-align: top;
}
div.listrightbloc dd {
  padding-bottom: 10px;
  display: inline-block;
}
div.listrightbloc dd p.attention {
  margin-top: 5px;
}

/* カゴに入れる */
div.listrightbloc .cartin {
  margin: 0;
  float :right;
}
div.listrightbloc .cartin .quantity {
  padding: 3px 10px 0 0;
  width: 150px;
  float :left;
  text-align: right;
}
div.listrightbloc .cartin .quantity .box {
  width: 70px;
}
div.listrightbloc .cartin_btn {
  width: 160px;
  float :left;
}


/* ==============================================
▼商品詳細
=============================================== */
/* レイアウト

  tplファイルのマークアップが同じ項目
  *1カラム時 [one_maincolumn]
  *2カラム時 [two_maincolumn_left]
             [two_maincolumn_right]
  *3カラム時 [three_maincolumn]

----------------------------------------------- */
#detailarea,
.sub_area {
  margin-bottom: 20px;
  width: 100%;
}

/* レイアウト
----------------------------------------------- */
/* 1カラム用 */
#one_maincolumn div#detailphotobloc {
  width: 37%;
  float: left;
}
#one_maincolumn #detailrightbloc {
  width: 63%;
  float: right;
}
#one_maincolumn div.subtext {
  margin-bottom: 20px;
  float: left;
  width: 69%;
}
#one_maincolumn div.subphotoimg {
  float: right;
  width: 25%;
  text-align: right;
}
#one_maincolumn p.subtext {
  margin-bottom: 20px;
}

/* 2カラム用 */
#two_maincolumn_left div#detailphotobloc,
#two_maincolumn_right div#detailphotobloc {
  float: left;
  width: 37%;
}
#two_maincolumn_left #detailrightbloc,
#two_maincolumn_right #detailrightbloc {
  float: right;
  width: 63%;
}
#two_maincolumn_left div.subtext,
#two_maincolumn_right div.subtext {
  margin-bottom: 20px;
  float: left;
  width: 73%;
}
#two_maincolumn_left p.subtext,
#two_maincolumn_right p.subtext {
  margin-bottom: 20px;
}
#two_maincolumn_left div.subphotoimg,
#two_maincolumn_right div.subphotoimg {
  float: right;
  width: 25%;
  text-align: right;
}

/* 3カラム用 */
#three_maincolumn div#detailphotobloc {
  float: left;
  width: 49%;
}
#three_maincolumn #detailrightbloc {
  float: right;
  width: 50%;
}
#three_maincolumn div.subtext {
  margin-bottom: 20px;
  float: left;
  width: 63%;
}
#three_maincolumn p.subtext {
  margin-bottom: 20px;
}
#three_maincolumn div.subphotoimg {
  float: right;
  width: 35%;
  text-align: right;
}

/* 商品情報 各種設定
----------------------------------------------- */
#detailrightbloc h2 {
  margin: 0 0 10px 0;
  padding: 0 0 15px 0;
  color: #666;
  background: url("../img/background/line_dot_01.gif") repeat-x bottom ;
  font-weight: bold;
  font-size: 160%;
}
#detailrightbloc .point,
#detailrightbloc .relative_cat {
  margin: 0 0 10px 0;
  padding: 0 0 10px 0;
  background: url("../img/background/line_dot_01.gif") repeat-x bottom ;
}
#detailrightbloc .main_comment {
  margin-bottom: 20px;
}

/* 商品コード */
#detailrightbloc .product_code dt,
#detailrightbloc .product_code dd {
  display: inline;
}

/* 商品ステータス */
#detailrightbloc ul.status_icon {
  margin-bottom: 10px;
  width: 100%;
}
#detailrightbloc ul.status_icon li {
  margin-right: 5px;
  margin-bottom: 3px;
  float: left;
}

/* 通常価格 */
#detailrightbloc .normal_price dt,
#detailrightbloc .normal_price dd {
  display: inline;
}

/* 販売価格 */
#detailrightbloc .sale_price dt,
#detailrightbloc .sale_price dd {
  display: inline;
}

/* ポイント */
#detailrightbloc .point dt,
#detailrightbloc .point dd {
  display: inline;
}

/* 規格 */
#detailrightbloc div.classlist {
  margin-bottom: 10px;
  padding-bottom: 10px;
  width: 100%;
  background: url("../img/background/line_dot_02.gif") repeat-x bottom ;
}
#detailrightbloc .classlist {
  margin-bottom: 5px;
}
#detailrightbloc ul {
  margin-bottom: 10px;
  width: 100%;
}
#detailrightbloc ul li {
  vertical-align: top;
  float: left;
}

/* メーカー */
#detailrightbloc .maker dt,
#detailrightbloc .maker dd {
  display: inline;
}

/* メーカーURL */
#detailrightbloc .comment1 dt,
#detailrightbloc .comment1 dd {
  display: inline;
}

/* 関連カテゴリ */
#detailrightbloc .relative_cat dd {
  margin-left: 1em;
}

/* 買い物かご */
#detailrightbloc .cart_area {
  padding: 10px;
  background-color: #ecf5ff;
  border: 1px solid #cef0f4;
}
#detailrightbloc .quantity dt,
#detailrightbloc .quantity dd {
  display: inline;
}
#detailrightbloc .cartin {
  text-align: center;
}
#detailrightbloc .cartin_btn {
  text-align: center;
}
#detailrightbloc .favorite_btn {
  text-align: center;
  margin-top: 10px;
}


/* お客様の声
----------------------------------------------- */
div#customervoice_area {
  clear: both;
  padding: 35px 0 0 0;
}

div#customervoice_area h2 {
  margin-bottom: 20px;
  padding: 6px 0 8px 10px;
  border-top: solid 1px #f90;
  background: url('../img/background/bg_tit_sub_01.jpg') repeat-x left bottom;
}

div#customervoice_area .review_bloc {
  margin-bottom: 20px;
  padding: 10px;
  background-color: #f6f6f6;
}

div#customervoice_area .review_bloc p {
  padding-top: 3px;
  margin-right: 10px;
  float: left;
}

div#customervoice_area review_bloc .review_btn {
  float: right;
  width: 160px;
}

div#customervoice_area ul li {
  padding-bottom: 15px;
  margin-bottom: 15px;
  background: url("../img/background/line_dot_01.gif") repeat-x bottom ;
}

div#customervoice_area .voicetitle {
  margin-bottom: 5px;
  color: #333;
  font-weight: bold;
}

div#customervoice_area .voicedate {
  margin-bottom: 10px;
}


/* 関連商品（商品部分はbloc.cssのおすすめ商品と共通）
----------------------------------------------- */
div#whobought_area {
  clear: both;
  padding: 35px 0 0 0;
}

div#whobought_area h2 {
  border-top: solid 1px #f90;
  background: url('../img/background/bg_tit_sub_01.jpg') repeat-x left bottom;
  padding: 5px 0 8px 10px;
  font-size: 14px;
}


/* ***********************************************
▼カートの中
/*********************************************** */
/* 現在のカゴの中
----------------------------------------------- */
div#undercolumn_cart .point_announce {
  padding: 20px;
  margin-bottom: 20px;
  border: solid 1px #ffcc62;
  background: #fffaf0;
  font-size: 120%;
  text-align: center;
  line-height: 140%;
}
div#undercolumn_cart .totalmoney_area {
  margin-bottom: 20px;
}

div#undercolumn_cart p {
  margin: 10px 5px;
}

div#undercolumn ul#quantity_level li {
  padding: 3px;
  display: inline;
}

div#undercolumn .empty {
  text-align: left;
}

div.form_area {
  margin-bottom: 30px;
}


/* お客様情報入力
----------------------------------------------- */
div#undercolumn_customer {
}

.flow_area {
  text-align: center;
  margin-bottom: 20px;
}

.flow_area_center {
  display: inline-block
}

.flow_card {
  float: left;
  background-color: #ededed;
  border-style: solid;
  border-width: 2px;
  border-color: #cacaca;
  width: 105px;
  padding: 10px 0px 10px 0px;
  text-align: center;
}

.flow_card_select {
  float: left;
  background-color: #5dcbdb;
  border-style: solid;
  border-width: 2px;
  border-color: #5dcbdb;
  width: 105px;
  padding: 10px 0px 10px 0px;
  text-align: center;
  color: #fff;
}

.flow_card_arrow {
  float: left;
  width: 30px;
  text-align: center;
  color: #5dcbdb;
  margin-top: 15px;
}

@media screen and (max-width: 480px) {
  .flow_area {
    margin-bottom: 10px;
    padding-top: 15px;
  }
  .flow_card,.flow_card_select {
    font-size: 11px;
    width: 69px;
  }

  .flow_card_arrow {
    width: 20px;
  }

  .flow_card_arrow .icon.is-small i {
    font-size: 10px;
  }
}

div#undercolumn_customer th em {
  color: #000;
  font-weight: bold;
}

.complete_area {
  margin: 20px 0;
}

.complete_area p {
  line-height: 160%;
}


/* お支払い方法・お届け時間等の指定
----------------------------------------------- */
div#undercolumn_shopping h3.c-hdg-lv3__title {
  margin-bottom: 10px;
}

div#undercolumn_shopping .pay_area {
  margin: 0 auto 30px;
  width: 100%;
}

div#undercolumn_shopping .pay_area02 {
  margin: 40px auto 30px auto;
}

div#undercolumn_shopping .pay_area02 .txtarea {
  margin: 5px 0 0 0;
  padding: 2px;
  border: 1px solid #ccc;
  width: 99%;
  height: 150px;
}

div#undercolumn_shopping .pay_area02 .select-msg {
  margin-bottom: 10px;
}

div#undercolumn_shopping .pay_area02 .required, div#undercolumn_shopping .pay_area02 .not_required {
  float: none;
}

div#undercolumn_shopping .pay_area_border {
  float: left;
  width: 4px;
  height: 16px;
  margin-top: 8px;
  margin-right: 10px;
  background-color: #5dcbdb;
}

div#undercolumn_shopping .point_area {
  margin: 40px auto 0 auto;
}

div#undercolumn_shopping .point_area .point_announce {
  padding: 20px;
  border: 1px solid #ccc;
}

div#undercolumn_shopping .point_area p {
  margin-bottom: 20px;
}

div#undercolumn_shopping .point_area .point_announce li {
  margin-bottom: 5px;
}

div#undercolumn_shopping select {
  border: 1px solid #CCC;
}


/* お届け先の指定
----------------------------------------------- */
#address_area {
  margin-bottom: 10px;
  width: 100%;
}

#address_area .information {
  width: 65%;
  float: left;
}

#undercolumn_shopping .information {
  margin-bottom: 15px;
}

#address_area .add_multiple {
  padding: 15px 10px;
  border: 1px solid #ffcc62;
  float: right;
  width: 30%;
  color: #555;
  background: #fffaf0;
  text-align: center;
  font-weight: bold;
}

#address_area .add_multiple p {
  margin-bottom: 10px;
}

#address_area p.addbtn {
  font-weight: bold;
  font-size: 10px;
}


/* ==============================================
▼検索結果
=============================================== */
p.condition_area {
  margin: 0 auto;
  padding: 5px;
  border: solid 1px #333;
  width: 566px;
}


/* 行揃え common.cssより移動
----------------------------------------------- */
.alignC {
  text-align: center;
}
.alignR {
  text-align: right;
}
.alignL {
  text-align: left;
}
.pricetd em {
  font-weight: bold;
}
#undercolumn_shopping input[type='text'] ,
#undercolumn_shopping input[type='email'] ,
#undercolumn_shopping input[type='password'] ,
#undercolumn_shopping.select {
    box-shadow: none;
    box-sizing: border-box;
    border-radius: 3px;
    border: 1px solid #e0e0e0;
    padding: 6px 13px 5px;
    width: 100%;
    background: #fff;
    font-size: 12px;
}

@media screen and (min-width: 769px) {
  .l-header__content {
    display: none;
    opacity: 0;
  }
  .is-pc {
    display: none!important;
    opacity: 0;
  }
}
@media screen and (max-width: 950px) {
  .l-header {
    min-width: auto;
    padding: 0 15px;
    margin-top: 0;
  }
  .l-header__logo {
    width: 230px;
  }
  .l-header__inner {
    width: 100%;
    padding: 20px 0;
  }

  .l-main-top-banner {
    display: none;
    opacity: 0;
  }

  #cont #mainCont {
    width: 100%;
    float: none;
  }
  #cont {
    padding: 0 15px;
    margin: 0 auto 22px;
  }
  #cont #side {
    width: 100%;
    float: none;
    margin-top: 20px;
  }
  .c-side-member {
    display: none;
    opacity: 0;
  }
  .c-box-register {
    display: none;
    opacity: 0;
  }
  .c-side-magazine,
  .c-side-event,
  .c-side-subscribe {
    width: 300px;
    margin: 20px auto;
    box-sizing: border-box;
  }
  .c-side-sns {
    width: 300px;
    margin: 20px auto;
    text-align: center;
  }
  .c-side-sns__link {
    margin-right: 25px;
  }
  .c-side-sns__link:last-child {
    margin-right: 0;
  }
  .c-side-banner {
    display: block;
    margin: 15px auto;
    text-align: center;
  }
  .c-box-monthly__header {
    max-width: 600px;
    margin: 0 auto;
    padding: 35px 30px 50px 210px;
  }
  .c-box-monthly__header img {
    max-width: 300px;
  }
  .c-box-monthly__title {
    margin: 10px 0 10px 15px;
  }
  .c-box-monthly__lead {
    text-align: left;
    min-height: 150px;
  }
  .c-box-monthly__items > .c-box-monthlyItem {
    width: calc(100%/4 - 20px);
  }
  .wrap {
    width: 100%;
  }
  .c-box-container {
    padding: 15px;
  }
  .c-box-container--article {
    padding: 18px 40px 20px;
  }
  .c-link-backNumbers > .c-link-backNumberItem {
    width: calc(100% /4 - 25px);
  }
  .p-search-form {
    padding: 18px 18px 20px;
  }
  .l-footer {
    min-width: auto;
    padding: 45px 15px 15px;
  }
  .l-footer__inner {
    width: 100%;
    padding: 0;
  }
  .l-footer__column {
    width: calc(100% / 3);
  }
  .l-footer__column--foundation {
    display: none;
  }
  /**
   * Nav
   */
  .p-authors-nav {
    padding: 14px 18px;
  }
}

@media screen and (max-width: 768px) {
  body.non {
    background-color: #f4f4f4;
  }
  .wrap {
    width: 100%;
  }

  #cont {
    margin-top: 56px;
    padding-top: 10px;
  }

  #cont #mainCont {
    margin-bottom: 35px;
    width: 100%;
  }
  #foot .toTop {
    margin-bottom: 10px;
  }

  /* ==========================================================================
     Layout
     ========================================================================== */
  .l-header__utility {
    display: none;
    opacity: 0;
  }
  .l-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    border-top: 5px solid #5dcbdb;
    padding: 13px 15px 12px;
    width: 100%;
    background: #fff;
  }
  .l-header__inner {
    padding: 0;
  }
  .l-header__logo {
    width: 170px;
  }

  /*ハンバーガーMENU*/
  .is-modal {
    overflow: hidden;
  }

  .l-header__menu-trigger,
  .l-header__menu-trigger span {
    display: block;
    transition: all 0.3s;
    box-sizing: border-box;
    border: none;
  }

  .l-header__menu-trigger {
    position: relative;
    width: 32px;
    height: 24px;
    cursor: pointer;
    background-color: #fff;
    outline: none;
    padding: 0;
  }

  .l-header__menu-trigger:focus {
    outline: none;
  }

  .l-header__menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #111;
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: opacity .5s ease,left .5s ease,-webkit-transform .5s ease;
    transition: opacity .5s ease,left .5s ease,-webkit-transform .5s ease;
    transition: transform .5s ease,opacity .5s ease,left .5s ease;
    transition: transform .5s ease,opacity .5s ease,left .5s ease,-webkit-transform .5s ease;
    pointer-events: none;
  }

  .l-header__menu-trigger span:nth-of-type(1) {
    top: 0;
  }

  .l-header__menu-trigger span:nth-of-type(2) {
    top: 11px;
  }

  .l-header__menu-trigger span:nth-of-type(3) {
    top: 22px;
  }

  .l-header__menu-trigger.active span {
    left: 2px;
  }

  .l-header__menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .l-header__menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }

  .l-header__menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  .l-header__nav {
    display: none;
    width: 100%;
    height: calc(100% - 54px);
    padding: 0;
    position: fixed;
    top: 54px;
    left: 0;
    background: rgba(255, 255, 255, 0.8);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 0 0 rgba(0, 0, 0, .04);
    z-index: 998;
    box-sizing: border-box;
  }

  .l-header__nav-inner {
    height: 100%;
    overflow: auto;
    width: auto;
    display: block;
  }

  .l-header__navItems {
    overflow: auto;
    background: #fff;
  }

  .l-header__navItem {
    font-size: 16px;
    line-height: 1.6;
    padding: 10px 0;
  }

  .l-header__navItem:not(:last-child) {
    border-bottom: solid 1px #f1f1f1;
  }

  .l-header__navItem a:hover {
    color: unset;
    text-decoration: none;
  }

  .l-header__navItems--mypage {
    border-top: solid 2px #9f9f9f;
  }

  .l-header__navItems--mypage a {
    margin-left: 10px;
    display: block;
  }

  .l-header__navItems--sns {
    border-top: solid 2px #9f9f9f;
    border-bottom: 3px solid #5dcbdb;
  }

  .nav-link,
  .nav-link-icon {
    text-decoration: none;
    color: currentColor;
    margin-left: 18px;
  }

  .nav-link {
    position: relative;
    display: block;
    padding-left: 17px;
  }

  .nav-link:before {
    position: absolute;
    top: 49%;
    left: 0;
    content: '';
    border-width: 6px 7px;
    border-style: solid;
    border-color: transparent transparent transparent #5DCBDA;
    transform: translateY(-50%);
  }

  .l-header__navItem a.nav-link-mypage {
    margin-left: 10px;
  }

  .l-header__navItem .fa {
    margin: 0 8px 0 1px;
    width: 1em;
  }

  .l-header__navItem-indent {
    display: none;
    padding-left: 20px;
    margin-top: 5px;
  }

  .l-header__navItem-indent li {
    font-size: 16px;
    line-height: 1.6;
    padding: 5px 0 0;
    display: inline-block;
    width: 120px;
  }

  .l-header__navItem-indent li:last-child {
    border-bottom: none;
    padding: 5px 0 0 0;
  }


  .l-header__navItem-icon {
    cursor: pointer;
    position: relative;
    padding-left: 35px;
  }

  .l-header__navItem-sns {
    display: inline-block;
    width: 30px;
    margin: 12px 3px 12px 10px;
  }

  .icon__mark {
    display: block;
    position: relative;
  }

  .icon__mark::before,
  .icon__mark::after {
    content: '';
    display: block;
    width: 13px;
    height: 3px;
    border-radius: 5px;
    background: #5DCBDA;
    position: absolute;
    left: -21px;
    top: calc(50% + 11px);
    transform: translateY(-50%);
    transition: .5s;
  }

  .icon__mark::after {
    background: #5DCBDA;
    transform: translateY(-50%) rotate(90deg);
    transition: .5s;
  }

  .l-header__navItem-icon.is-open > .icon__mark::after {
    transform: rotate(180deg);
    transition: .5s;
  }
  .l-header__navItem-icon.is-open > .icon__mark::before {
    opacity: 0;
    transition: .5s;
  }

  .l-footer__links {
    border-top: 1px solid #5dcbdb;
    padding: 9px 0;
  }
  .l-footer__links a {
    display: block;
    padding: 11px 0 10px;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    color: currentColor;
  }
  .l-footer__links a:hover {
    text-decoration: none;
  }
  .l-footer__column {
    width: 100%;
    border: none;
    padding: 0;
  }
  .l-footer__corporateLogo {
    margin: 10px 0;
  }
  .l-footer__corporateLogo__item {
    margin-right: 20px;
  }
  .l-footer__corporateLogo__item:last-child {
    margin-right: 0;
  }


  /* ==========================================================================
     Components
     ========================================================================== */

  /**
   * Heading Lv3
   */

  .c-hdg-lv3 {
    position: relative;
    margin-bottom: 14px;
    padding: 8px 12px 7px 15px;
    background: #f4f4f4;
  }

  .c-hdg-lv3:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 3px;
    height: 100%;
    background: #5dcbdb;
  }

  .c-hdg-lv3__title {
    font-size: 15px;
    font-weight: bold;
  }

  /**
   * Heading
   */

  .c-hdg-article {
    margin-bottom: 8px;
    border-bottom: 2px solid #000;
    padding-bottom: 2px;
  }

  .c-hdg-article__title {
    margin-bottom: 18px;
    font-size: 20px;
    line-height: 1.6;
    font-weight: bold;
    letter-spacing: 0.64px;
  }

  .c-hdg-article__meta {
    font-size: 12px;
  }

  .c-hdg-article__meta:after {
    display: table;
    content: "";
    clear: both;
  }

  .c-hdg-article__meta li {
    font-size: 12px;
  }

  .c-hdg-article__meta a {
    color: currentColor;
  }

  .c-hdg-article__columnist {
    float: left;
  }

  .c-hdg-article__published {
    float: right;
  }

  .c-hdg-article__ruby {
    font-size: 12px;
    font-weight: normal;
  }

  /**
   * Aside Heading
   */

  .c-hdg-aside {
    margin-bottom: 12px;
    font-size: 13px;
  }

  /**
   * Button
   */

  .c-btn {
    display: block;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
    /*padding: 21px 12px 20px;*/
    width: 100%;
    background: #3e3e3e;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: #fff;
    line-height: inherit;
  }

  .c-btn:hover,
  .c-btn:focus {
    text-decoration: none;
    color: #fff;
  }

  .c-btn.-small {
    padding: 8px 16px 7px;
  }

  .c-btn.-primary {
    background: #f9ff58;
    color: #000;
    margin: 0 auto;
  }

  .c-btn.-primary:hover,
  .c-btn.-primary:focus {
    color: #000;
  }

  .c-btn.-secondary {
    background: #3e3e3e;
    color: #fff;
    margin: 0 auto;
  }

  .c-btn.-secondary:hover,
  .c-btn.-secondary:focus {
    color: #fff;
  }

  /*.c-btn.-weak {
    background: #bababa;
    color: #fff;
  }*/

  .c-btn.-weak:hover,
  .c-btn.-weak:focus {
    color: #fff;
  }

  .c-btn.-amazon {
    background: #ffce00;
    color: #000;
  }

  .c-btn.-amazon:hover,
  .c-btn.-amazon:focus {
    color: #000;
  }

  .c-btn.-regular {
    background: #5dcbdb;
    color: #fff;
  }

  .c-btn.-regular:hover,
  .c-btn.-regular:focus {
    color: #fff;
	}

  /**
   * Tag
   */

  .c-tag {
    display: inline-block;
    border-radius: 2px;
    padding: 3px 8px 4px;
    background: #5dcbdb;
    font-size: 12px;
    font-style: normal;
    line-height: 1;
    color: #fff;
  }

  .c-tag.-premium {
    background: #b29658;
  }

  .c-tag.-tieup {
    background: #3e3e3e;
  }

  /**
   * Link
   */

  .c-link {
    position: relative;
    display: inline-block;
    padding-left: 12px;
    font-size: 14px;
  }

  .c-link:before {
    position: absolute;
    top: 50%;
    left: 0;
    content: "";
    border-width: 4px 5px;
    border-style: solid;
    border-color: transparent transparent transparent #777;
    transform: translateY(-50%);
  }

  /**
   * Topic Path
   */

  .c-link-topicPath {
    padding: 0 15px 0px 0;
    font-size: 11px;
    margin-bottom: 10px;
  }

  .c-link-topicPath a {
    text-decoration: none;
    color: currentColor;
  }

  /**
   * Login Links
   */

  .c-link-login {
    margin: 20px 0 70px;
    display: block;
  }

  .c-link-login > li {
    margin: 0 auto;
    width: 250px;
  }

  .c-link-login > li + li {
    margin: 20px auto 0;
  }

  .c-link-login .c-btn {
    padding: 13px 10px 12px;
    line-height: 1.2;
  }

  /**
   * Link List
   */

  .c-link-list {
    font-size: 15px;
  }

  .c-link-list li {
    font-size: 16px;
    line-height: 1.6;
  }

  .c-link-list li.-no-style a {
    padding-left: 0;
  }

  .c-link-list li.-no-style a:before {
    display: none;
  }

  .c-link-list a,
  .c-link-list span {
    position: relative;
    display: block;
    padding: 6px 0 5px 14px;
    text-decoration: none;
    color: currentColor;
  }

  .c-link-list a {
    text-decoration: underline;
  }

  .c-link-list a:before,
  .c-link-list span:before {
    position: absolute;
    top: 18px;
    left: 0;
    content: "";
    border-width: 4px 5px;
    border-style: solid;
    border-color: transparent transparent transparent #777;
    transform: translateY(-62%);
  }

  /**
   * Article Links
   */

  .c-link-articles {
    margin-bottom: 28px;
  }

  .c-link-articles > li {
    border-bottom: 1px solid #e0e0e0;
  }

  .c-link-articles > li:first-child a {
    padding-top: 0;
  }

  /**
   * Article Link
   */

  .c-link-article a {
    display: flex;
    flex-direction: row-reverse;
    padding: 14px 2px 15px;
    text-decoration: none;
    color: currentColor;
  }

  .c-link-article__img {
    min-width: 80px;
    width: 80px;
    height: 60px;
    transition: opacity 0.3s ease;
  }

  .c-link-article__img img {
    width: 80px;
    height: 60px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /*IE対策*/
  }

  .c-link-article__content {
    flex-grow: 2;
    margin-left: 14px;
    width: calc(100% - 70px);
  }

  .c-link-article__title {
    margin-bottom: 6px;
    display: block;
    font-size: 14px;
    line-height: 1.4;
    font-weight: bold;
  }

  .c-link-article__metas {
    margin: -4px 0 0 0;
  }

  .c-link-article__metas li {
    margin: 3px 5px 0 0;
  }

  .c-link-article__metas .-full {
    width: 100%;
  }

  .c-link-article__published,
  .c-link-article__columnist {
    font-size: 12px;
    color: #777;
  }

  /**
   * Pager
   */

  .c-link-pager {
    position: relative;
    display: flex;
    padding-bottom: 48px;
    margin: 42px 0 32px -2.86%;
  }

  .c-link-pager li {
    margin: 0 0 0 2.78%;
    width: 8.3%;
  }

  .c-link-pager a,
  .c-link-pager span {
    display: inline-block;
    box-sizing: border-box;
    padding: 8px 0;
    width: 100%;
    font-size: 15px;
    line-height: 1;
    text-align: center;
  }

  .c-link-pager .-prev,
  .c-link-pager .-next {
    position: absolute;
    bottom: 0;
    width: 48%;
  }

  .c-link-pager .-prev a,
  .c-link-pager .-next a,
  .c-link-pager .-prev span,
  .c-link-pager .-next span {
    width: 100%;
  }

  .c-link-pager .-prev {
    left: 0;
  }

  .c-link-pager .-next {
    right: 0;
  }

  .c-link-pager .-prev a,
  .c-link-pager .-next a,
  .c-link-pager .-prev span,
  .c-link-pager .-next span {
    padding: 1px 7px 6px;
    font-size: 24px;
  }

  .c-link-pager a {
    border: 1px solid #5dcbdb;
    color: #5dcbdb;
    transition: background 0.3s ease;
    text-decoration: none;
  }

  .c-link-pager a:hover,
  .c-link-pager a:focus {
    background: #eafcff;
  }

  .c-link-pager span {
    border: 1px solid #e4e4e4;
    color: #e4e4e4;
  }

  .c-link-pager span[aria-current="page"] {
    border: 1px solid #5dcbdb;
    background: #5dcbdb;
    font-weight: bold;
    color: #fff;
  }

  .c-link-pager .-omission span {
    border: none;
    min-width: 0;
    color: #484848;
  }

   /**
   * SNS button
   */

  .c-list-snsBtns.-right > li {
    width: 30px;
    height: 30px;
  }

  /**
   * Tag Links
   */

  .c-link-tags {
    display: flex;
    flex-wrap: wrap;
    margin: -8px 0 0 -22px;
  }

  .c-link-tags > li {
    margin: 8px 0 0 22px;
  }

  .c-link-tags a {
    display: inline-block;
    font-size: 12px;
    text-decoration: none;
    color: currentColor;
  }

  .c-link-tags a:before {
    content: "#";
  }

  .c-link-tags a:hover,
  .c-link-tags a:focus {
    text-decoration: underline;
  }

  /**
   * Tab Link
   */

  .c-link-tabs {
    display: flex;
  }

  .c-link-tabs li {
    margin-bottom: 0;
  }

  .c-link-tabs li + li {
    margin-left: 2px;
  }

  .c-link-tabs a {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    padding: 10px 16px 11px;
    min-width: 88px;
    background: #fff;
    font-size: 14px;
    text-decoration: none;
    text-align: center;
    color: currentColor;
  }

  .c-link-tabs a:hover:before,
  .c-link-tabs a:focus:before {
    opacity: 0.3;
  }

  .c-link-tabs + .c-box-container {
    margin-top: 0;
  }

  .c-link-tabs a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 3px;
    background: #5dcbdb;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .c-link-tabs .is-selected a {
    font-weight: bold;
  }

  .c-link-tabs .is-selected a:before {
    opacity: 1;
  }

  /**
  * Container Box
  */

  .c-box-container {
    margin-top: 10px;
    padding: 22px 30px 20px;
    background: #fff;
  }

  /**
   * Article
   */

  .c-article {
    margin-bottom: 70px;
  }
  /**
  * Link Box
  */
  .c-box-link {
    margin-top: 10px;
    padding: 22px 30px 10px;
  }

  .c-box-link__title {
    border-bottom: 1px solid #d1d1d1;
    padding: 0 3px 5px;
    font-size: 17px;
    font-weight: bold;
    line-height: 1.6;
  }

  /**
   * Author Box
   */

  .c-box-author {
    padding-top: 12px;
  }

  .c-box-author__header {
    position: relative;
    margin-bottom: 16px;
    border-bottom: 2px solid #b29658;
    padding: 0 0 12px 116px;
    min-height: 107px;
  }

  .c-box-author__name {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.5;
  }

  .c-box-author__position {
    display: block;
    margin-top: 4px;
    font-style: normal;
  }

  .c-box-author__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 107px;
    height: 107px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /*IE対策*/
  }

  .c-box-author__profile {
    font-size: 14px;
    line-height: 1.7;
  }

  /**
   * プロフィールボックス
   */

  .c-box-profile {
    border: 1px solid #ccc;
    padding: 14px 14px 16px;
  }

  .c-box-profile__title {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: bold;
  }

  .c-box-profile__content {
    display: flex;
    flex-direction: column-reverse;
  }

  .c-box-profile__img {
    margin-bottom: 12px;
    text-align: center;
  }

  .c-box-profile__img img {
    width: 125px;
  }

  .c-box-profile__name {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }

  .c-box-profile__position {
    display: inline-block;
    margin-top: 5px;
    font-size: 14px;
    font-style: normal;
  }

  .c-box-profile__description {
    margin: 12px 0 0;
    font-size: 14px;
    line-height: 1.6;
  }

  /**
   * Monthly
   */

  .c-box-monthly {
    padding: 35px 30px 40px;
    background: #fff;
  }

  .c-box-monthly__header {
    background-size: 100% auto;
  }

  .c-box-monthly__links {
    margin-bottom: 19px;
  }

  /**
   * Monthly Item
   */

  .c-box-monthlyItem {
    margin: 0;
    border-bottom: 1px solid #ccc;
  }

  .c-box-monthlyItem a {
    display: flex;
    box-sizing: border-box;
    padding: 18px 0 13px;
    width: 100%;
    text-decoration: none;
    color: currentColor;
  }

  .c-box-monthlyItem__header {
    flex-grow: 2;
  }

  .c-box-monthlyItem__thumbnail {
    padding-left: 12px;
    min-width: 180px;
  }

  .c-box-monthlyItem__thumbnail img{
    width: 180px;
    height: 95px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /*IE対策*/
  }

  .c-box-monthlyItem__title {
    margin-bottom: 8px;
    font-size: 15px;
    line-height: 1.7;
  }

  .c-box-monthlyItem__columnist {
    display: block;
    font-size: 12px;
    font-style: normal;
  }

  .c-box-monthly__items > .c-box-monthlyItem {
    width: calc(100%/3 - 20px);
  }

  /**
   * News
   */

  .c-box-news__indexLink {
    position: absolute;
  }

  /**
   * Related Box
   */

  .c-box-related__title {
    border-bottom: 1px solid #d1d1d1;
    padding: 0 3px 5px;
    font-size: 17px;
    font-weight: bold;
    line-height: 1.6;
  }

  .c-box-related__content {
    padding: 12px 3px 0;
  }

  .c-box-related .c-btn.related_more {
    padding: 5px 4px;
    min-width: 90px;
    color: #fff;
    min-width: 250px;
  }
  .c-box-related .c-btn.related_more:hover {
    opacity: .8;
    background: #3e3e3e;
  }
  /**
   * Section
   */

  .c-sec {
    padding: 12px 30px 38px;
    background: #fff;
  }

  /**
   * Article Section
   */

  .c-sec-article {
    padding: 12px 30px 38px;
    background: #fff;
    position: relative;
    border-top: 3px solid #5dcbdb;
  }

  .c-sec-article__container {
    position: relative;
    padding-top: 45px;
  }

  .c-sec-article__tag {
    position: absolute;
    top: 4px;
    left: 1px;
    font-weight: bold;
    font-style: normal;
    color: #5dcbdb;
  }

  .c-sec-article__content {
    letter-spacing: 0.64px;
    line-height: 1.6;
  }

  .c-sec-article__contentInner > h2 {
    margin: 30px 0 18px;
    font-size: 19px;
    font-weight: bold;
  }

  .c-sec-article__contentInner > h3 {
    margin: 23px 0;
    font-size: 17px;
    font-weight: bold;
  }

  .c-sec-article__contentInner > h4 {
    margin: 16px 0 8px;
    font-size: 14px;
    font-weight: bold;
  }

  .c-sec-article__contentInner p {
    margin-bottom: 26px;
    font-size: 16px;
  }

  .c-sec-article__contentInner table {
    font-size: 16px;
    margin: 1em 0 2em 0;
    border: 1px solid #ccc;
    border-collapse: collapse;
  }

  .c-sec-article__contentInner table th,
  .c-sec-article__contentInner table td {
    padding: 15px;
    border: 1px solid #ccc;
    font-size: 16px;
    line-height: 1.6;
  }

  .c-sec-article__contentInner table th {
    background: #eee;
    font-weight: bold;
  }

  .c-sec-article__contentInner .ib {
    margin-bottom: 15px;
    padding: 0px;
    text-align: center;
  }

  .c-sec-article__contentInner .ib p.cap {
    font-size: 90%;
    line-height: 1.4em;
    clear: both;
    text-indent: 0px;
    text-align: center;
  }

  .c-sec-article__contentInner .content .ib img {
    margin: 0px auto 5px auto;
    padding: 0px;
    float: none;
  }

  .c-sec-article__contentInner .pager {
    margin: 40px 0;
    text-align: center;
    font-size: 0px;
  }

  .c-sec-article__contentInner .pager > span,
  .c-sec-article__contentInner .pager > a {
    display: inline-block;
    margin-left: 6px;
    border: 1px solid #5dcbdb;
    padding: 6px 7px 5px;
    font-size: 15px;
    text-decoration: none;
  }

  .c-sec-article__contentInner .pager > span {
    background: #5dcbdb;
    font-weight: bold;
    color: #fff;
  }

  .c-sec-article__contentInner .pager > a {
    color: #5dcbdb;
    transition: background 0.3s ease;
  }

  .c-sec-article__contentInner .pager > a:hover,
  .c-sec-article__contentInner .pager > a:focus {
    background: #eafcff;
  }

  .c-sec-article__contentInner .pager > *:first-child {
    margin-left: 0;
  }

  .c-sec-article__content .readmore p {
    text-align: center;
  }

  #premium .c-sec-article__tag {
    color: #b29658;
  }

  .c-sec-article__contentInner .article_lead {
    padding: 12px;
    border: solid 1px #000000;
  }

  .c-sec-article__contentInner .article_profile_name {
    font-size: 13px;
    font-weight: bold;
    display: block;
    text-align: center;
    margin: 15px 0 5px;
    color: #444;
  }

  .c-sec-article__contentInner img + .image_caption {
    margin-top: 15px;
  }

  .c-sec-article__contentInner .image_caption {
    font-size: 13px;
    color: #444;
    margin-bottom: 5px;
  }

  .c-sec-article__contentInner .image_caption {
    font-size: 13px;
    color: #444;
    margin-bottom: 5px;
  }

  .c-sec-article__contentInner .image_caption.sp-none {
    display: none;
  }

  .c-sec-article__contentInner .image_provision {
    font-size: 13px;
    color: #777;
    margin-bottom: 5px;
  }

  .c-sec-article__contentInner .article_list_large,
  .c-sec-article__contentInner .article_list_number {
    margin: 30px 0 30px 0;
  }

  .c-sec-article__contentInner .article_list_small {
    margin: 15px 0 30px 0;
  }

  .c-sec-article__contentInner li {
    position: relative;
    padding-left: 25px;
    line-height: 1.6;
  }

  .c-sec-article__contentInner .article_list_large li,
  .c-sec-article__contentInner .article_list_number li {
    font-size: 16px;
  }

  .c-sec-article__contentInner .article_list_small li {
    font-size: 16px;
  }

  .c-sec-article__contentInner li::before {
    position: absolute;
    left: 0;
  }

  .c-sec-article__contentInner .article_list_large > li::before,
  .c-sec-article__contentInner .article_list_small > li::before {
    top: 7px;
    left: 0;
    content: "";
    border-radius: 50%;
    width: 9px;
    height: 9px;
    background: #5dcbdb;
  }

  .c-sec-article__contentInner .article_list_large > li + li,
  .c-sec-article__contentInner .article_list_small > li + li {
    margin-top: 10px;
  }

  .c-sec-article__contentInner .article_list_number {
    counter-reset: number;
  }

  .c-sec-article__contentInner .article_list_number > li {
    counter-increment: number;
  }

  .c-sec-article__contentInner .article_list_number > li::before {
    top: 0;
    content: counter(number) ".";
    border-radius: 50%;
  }

  .c-sec-article__contentInner .article_list_number > li + li {
    margin-top: 15px;
  }

  .c-sec-article__contentInner .article_image_large_cap {
    margin-bottom: 30px;
  }

  .c-sec-article__contentInner .article_image_large_cap img {
    display: block;
    margin: 0 auto 15px;
  }

  .c-sec-article__contentInner .article_talk {
    margin-bottom: 25px;
  }

  .c-sec-article__contentInner .article_note {
    font-size: 13px;
    color: #444;
  }

  .c-sec-article__contentInner .article_image_small > p:last-child {
    margin-bottom: 0;
  }

  .c-sec-article__contentInner .article_question {
    color: #023172;
    font-weight: bold;
    margin: 0 0 30px 0;
  }

  .c-sec-article__contentInner .article_case {
    padding: 20px 15px;
    border: solid 1px #5dcbdb;
    margin-bottom: 15px;
  }

  .c-sec-article__contentInner .article_case_title {
    font-weight: bold;
    margin-bottom: 0;
  }

  .c-sec-article__contentInner .article_case p:last-child {
    margin-bottom: 0;
  }

  .c-sec-article__contentInner .article_caption {
    font-size: 14px;
    color: #444;
  }

  .c-sec-article__contentInner .article_image_large {
    text-align: center;
    margin-bottom: 30px;
  }

  .c-sec-article__contentInner sup {
    font-size: 13px;
  }

  .js-modal-open {
    pointer-events: none;
    display: block;
  }

  .modal {
    display: none;
  }

  /**
   * Aside Section
   */

  .c-sec-aside {
    border-top: 2px solid #000;
    padding-top: 6px;
  }

  /* ==========================================================================
     Projects
     ========================================================================== */

  /**
   * News
   */



  .p-top-news {
    padding-top: 15px;
  }

  .p-top-news__header {
    position: relative;
    border-top: 1px solid #000;
    border-bottom: 1px solid #ddd;
    padding: 12px 60px 10px 0;
  }

  .p-top-news__title {
    font-size: 18px;
    font-weight: bold;
    color: #5dcbdb;
  }

  .p-top-news__updated {
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 12px;
    line-height: 1;
    transform: translateY(-50%);
  }

  .p-top-news__links > li {
    border-bottom: 1px solid #ddd;
    font-size: 16px;
  }

  .p-top-news__links a {
    position: relative;
    display: block;
    padding: 12px 20px 11px 0;
    text-decoration: none;
    color: currentColor;
  }

  .p-top-news__links a:after {
    position: absolute;
    top: 50%;
    right: 0;
    content: "";
    width: 16px;
    height: 16px;
    background: url("/assets/img/common/icon_arrow_r.svg");
    background-size: 100% auto;
    transform: translateY(-50%);
  }

  .p-top-news__btn {
    margin-top: 15px;
  }

  /**
   * Ads
   */

  .p-top-ads {
    padding: 40px 0 25px;
  }

  /* Authors
     ----------------------------------------------------------------- */

  /**
   * section
   */

  .p-authors-sec {
    margin-top: 22px;
  }

  /* ==========================================================================
     Utility
     ========================================================================== */

  /**
   * Text Align
   */

  .text-left {
    text-align: left !important;
  }

  .text-center {
    text-align: center !important;
  }

  .text-right {
    text-align: right !important;
  }

  .u-display-sp {
    display: inline-block;
  }

  /* Search
     ----------------------------------------------------------------- */

  /**
   * Header
   */

  .p-search-header {
    margin: 0 0 24px;
    border-bottom: 2px solid #5dcbdb;
    padding: 15px 30px 14px;
    background: #fff;
  }

  .p-search-header__title {
    font-size: 18px;
    font-weight: bold;
  }

  /**
   * Search Form
   */

  .p-search-form {
    padding: 18px 30px 20px;
    background: #fff;
  }

  .p-search-form .c-form-input {
    padding: 6px 12px;
    border: 1px solid #ddd;
    width: 100%;
    font-size: 16px;
    line-height: 1.4;
  }

  .p-search-form__items {
    margin-bottom: 18px;
  }

  .p-search-form__items > li {
    margin-bottom: 0;
  }

  .p-search-form__items > li + li {
    margin-top: 14px;
  }

  .p-search-form__label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 14px;
  }

  .p-search-form__items .-term {
    display: flex;
  }

  .p-search-form__mark {
    position: relative;
    top: 9px;
    display: inline-block;
    margin: 0 8px;
    vertical-align: middle;
  }

  .p-search-form__btn {
    text-align: right;
  }

  /**
   * Counter
   */

  .p-search-form {
    margin-bottom: 28px;
  }

  .p-search-counter {
    margin-bottom: 7px;
    padding-left: 2px;
    font-weight: bold;
  }
}

@media screen and (max-width: 620px) {

  /**
   * Link
   */
  .c-link-list li + li {
    margin-top: 5px;
  }
  .c-link-list.p-mypage-nav li + li {
    margin-top: 12px;
  }

  /**
   * News
   */
  .p-top-tags {
    display: none;
    opacity: 0;
  }
  .p-top-news__column.c-box-news {
    padding: 15px;
  }
  .c-box-news {
    background: unset;
    margin: 0 15px;
  }
  .c-box-news__header {
    position: relative;
    border-top: 1px solid #000;
    border-bottom: 1px solid #ddd;
    padding: 12px 60px 10px 0;
    margin-bottom: 0;
    width: auto;
  }
  .c-box-news__title {
    font-size: 18px;
    font-weight: bold;
    color: #5dcbdb;
  }
  .c-box-news__date {
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 12px;
    line-height: 1;
    transform: translateY(-50%);
  }
  .c-box-news__links > li {
    border-bottom: 1px solid #ddd;
    font-size: 16px;
    padding-left: 0;
  }
  .c-box-news__links > li:before {
    content: none;
  }
  .c-box-news__links > li + li {
    margin-top: 0;
  }
  .c-box-news__links a {
    position: relative;
    display: block;
    padding: 12px 20px 11px 0;
    text-decoration: none;
    color: currentColor;
  }
  .c-box-news__links a:after {
    position: absolute;
    top: 50%;
    right: 0;
    content: '';
    width: 16px;
    height: 16px;
    background: url('/assets/img/common/icon_arrow_r.svg');
    background-size: 100% auto;
    transform: translateY(-50%);
  }
  .c-box-news__indexLink {
    margin-top: 15px;
    display: block;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
    padding: 21px 12px 20px;
    width: 100%;
    background: #3e3e3e;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: #fff;
    position: relative;
    top: 0;
    right: 0;
  }
  .c-box-news__indexLink:hover {
    color: #fff;
  }
  .c-link.c-box-news__indexLink:before {
    content: none;
  }
  .c-box-monthly__lead {
    min-height: 100px;
  }

  /**
   * Back Number Block
   */

  .p-top-backNumber .c-link-backNumbers,
  .p-top-backNumber .c-hdg-lv2__title {
    display: none;
  }
  .p-top-backNumber .c-hdg-lv2 {
    border-bottom: 0;
    border-radius: 0;
    padding: 4px 0 40px;
  }
  .p-top-backNumber .c-link:hover {
    color: #fff;
  }
  .p-top-backNumber .c-link {
    margin: 0 30px 0;
    display: block;
    border-radius: 2px;
    border: none;
    box-sizing: border-box;
    padding: 21px 12px 20px;
    width: 100%;
    background: #3e3e3e;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: #fff;
    position: relative;
    top: 0;
    right: 0;
  }
  .p-top-backNumber .c-link:before {
    content: none;
  }
  .c-box-monthly__link.p-top-backNumber .c-link {
    margin: 15px 0 0 0;
  }

  /**
   * Monthly
   */

  .c-box-monthly {
    padding: 35px 30px 20px;
    margin-bottom: 0;
    background: #fff;
  }

  .c-box-monthly__title {
    margin: 0 0 12px 0;
    font-size: 15px;
    font-weight: bold;
  }

  .c-box-monthly__img {
    display: none;
    opacity: 0;
  }
  .c-box-monthly__header {
    border-top: 1px solid #000;
    border-radius: 0;
    background-color: transparent;
    min-height: initial;
    padding: 10px 0 0 0;
  }
  .c-box-monthly__title {
    text-align: left;
  }

  .c-box-monthlyItem a {
    display: flex;
    box-sizing: border-box;
    padding: 18px 0 13px;
    width: 100%;
    text-decoration: none;
    color: currentColor;
    flex-direction: row-reverse;
    border-bottom: 0;
  }

  .c-box-monthlyItem .icon_key {
    right: 0px;
    left: initial;
    top: initial;
    bottom: 0px;
    width: 25px;
    height: 25px;
  }

  .c-box-monthlyItem__header {
    flex-grow: 2;
  }
  .c-box-monthlyItem__title {
    margin-bottom: 8px;
    font-size: 15px;
    line-height: 1.7;
  }

  .c-box-monthlyItem__columnist {
    display: block;
    font-size: 12px;
    font-style: normal;
  }

  .c-box-monthlyItem__thumbnail{
    padding-left: 12px;
    min-width: 80px;
  }

  .c-box-monthlyItem__thumbnail img{
    width: 80px;
    height: 60px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /*IE対策*/
  }
  .c-box-monthly__items{
    margin: 0;
  }
  .c-box-monthly__items > .c-box-monthlyItem {
    width: 100%;
    margin: 0;
  }
  .c-box-monthly__content {
    margin: 0;
  }
  .c-box-monthly__header img {
    max-width: 100%;
  }

  /**
  * Nav
  */
  .p-authors-nav {
    padding: 0 15px 15px;
  }

  /**
  * Author Link
  */
  .c-link-author > a {
    padding: 0 0 0 20px;
  }

  .c-link-backNumbers > .c-link-backNumberItem {
    width: calc(100% /2 - 25px);
  }

  /**
  * Article
  */
  .c-sec-article__contentInner .img_box_right {
    float: none;
    text-align: center;
    padding: 0;
    margin-bottom: 20px;
  }

  .c-sec-article__contentInner .img_box_right img {
    width: 80% !important;
  }

  .c-sec-article__contentInner .article_image_small_cap {
    display: flex;
    flex-direction: column;
  }

  .c-sec-article__contentInner .article_image_small_cap .img_box_right {
    order: 2;
  }

  .c-sec-article__contentInner .article_image_small_cap p {
    order: 3;
  }

  .c-sec-article__contentInner .article_image_small_cap .article_image_small_lead {
    order: 1;
  }

  .c-sec-article__contentInner .img_box_right {
    width: 100%;
  }

  .c-sec-article__contentInner .article_image_small {
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
  }

  .c-sec-article__contentInner .article_image_small p {
    order: 3;
  }

  .c-sec-article__contentInner .article_image_small .article_image_small_lead {
    order: 1;
  }

  .c-sec-article__contentInner .article_image_small .img_box_right {
    order: 2;
  }
}

/**
 * .c-box-container
 */

@media screen and (max-width: 600px) {
  .c-box-container {
    padding: 22px 18px 20px;
  }
  .c-box-container--article {
    padding: 22px 30px 20px;
  }
}
@media screen and (max-width: 480px) {
  .c-box-container {
    margin: 0;
    padding: 0;
  }
  .c-box-container--article {
    margin-top: 10px;
    padding: 22px 30px 20px;
  }
}

@media screen and (max-width: 480px) {
  .l-main {
    margin-top: 0;
  }
  #cont {
    padding: 0;
  }
  #cont #mainCont {
    margin-bottom: 35px;
    width: 100%;
  }
  .p-subpage {
    padding: 0 15px 38px;
    background: #fff;
    box-sizing: border-box;
  }
  .p-subpage.--box {
    padding-bottom: 0;
  }
  .wrap {
    width: 100%;
  }
  .c-link-topicPath {
    padding: 8px 15px 7px;
    font-size: 11px;
    margin-bottom: 0;
  }
  .p-terms {
    padding: 0 30px 38px;
    background: #fff;
  }
  .c-hdg-lv2 {
    display: block;
    box-sizing: border-box;
    margin-bottom: 20px;
    border-bottom: 2px solid #5dcbdb;
    border-radius: 0;
    padding: 12px 2px;
  }

  .p-top-backNumber .c-link {
    max-width: 100%;
    width: auto;
  }
  .p-search-form {
    padding: 18px 0 20px;
  }
  .p-search-content {
    padding: 15px;
  }

  .c-box-related .c-btn.related_more {
    width: 100%;
  }

  .l-footer {
    border-bottom: 5px solid #5dcbdb;
  }
  .l-footer__copyright small {
    font-size: 10px;
  }
  .l-footer__social {
    margin-right: 25px;
  }
  .l-footer__social img {
    width: 30px;
  }
  .l-footer__corporateLogo__list {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .l-footer__corporateLogo__item {
    margin-bottom: 20px;
    width: calc((100% - 50px)/2);
  }
  .l-footer__corporateLogo__item:nth-child(odd) {
    margin-right: 50px;
  }
  .l-footer__corporateLogo__item:nth-child(even) {
    margin-right: 0;
  }
  .l-footer__corporateLogo__item:last-child {
    width: 50%;
  }
  .l-footer__corporateLogo__item:last-child img {
    width: 70%;
  }
}



/* ==========================================================================
		ログインページ
		========================================================================== */
.p-login {
	background-color: #fff;
}
.p-login .c-hdg-lv2 {
	padding: 16px 18px 16px 0;
	border-bottom: solid 2px #333;
	border-radius: 0;
}
.p-login .c-hdg-lv2__title {
	font-size: 24px;
	font-weight: bold;
	color: #333;
}
@media screen and (max-width: 768px) {
	.p-login {
		padding: 0 12px 38px;
	}
	.p-login .c-hdg-lv2 {
		padding: 10px 18px 10px 0;
		border-bottom: solid 1px #333;
	}
	.p-login .c-hdg-lv2__title {
		font-size: 16px;
	}
}
.p-login .c-box-container {
	background-color: #f2f2f2;
	border: solid 1px #ccc;
}
.p-login-layout {
	display: flex;
	justify-content: center;
	box-sizing: border-box;
}
.p-login-layout__form {
	width: 547px;
}
.p-login-layout__form_input {
	max-width: 290px;
	margin: 12px auto 0;
}
.p-login-layout__form_input:first-child {
	margin-top: 0;
}
.p-entry-form .p-login-layout__form_input  .c-form-input {
	font-size: 14px;
}
.p-login-layout__form_memory {
	margin-top: 15px;
	font-size: 14px;
	text-align: center;
}
.p-login-layout__form .p-login__btn {
	margin-top: 15px;
}
.p-login-layout__form .p-login__btn .c-btn {
	background-color: #75ccd9;
	border-radius: 50px;
	font-size: 16px;
	letter-spacing: 0.05em;
}
.p-login-layout__form .p-login__btn .c-btn:hover,
.p-login-layout__form .p-login__btn .c-btn:focus {
	opacity: .6;
}
.p-login-layout__linklist {
	display: flex;
	justify-content: center;
	margin-top: 24px;
}
.p-login-layout__linklist li + li {
	margin-top: 0;
	margin-left: 1em;
}
.p-login-layout__linklist a {
	position: relative;
	display: block;
	padding: 0 0 0 10px;
	font-size: 12px;
	color: #333;
}
.p-login-layout__linklist a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #75ccd9;
}
.p-login-layout__linklist .repletion_text {
	display: none;
}
@media screen and (max-width: 768px) {
	.p-login-layout {
		display: block;
		padding: 8px 20px 20px;
	}
	.p-login-layout__form {
		width: 100%;
	}
	.p-login-layout__form_input {
		max-width: 100%;
		width: 100%;
	}
	.p-login-layout__linklist {
		display: block;
	}
	.p-login-layout__linklist li + li {
		margin-top: 16px;
		margin-left: 0;
	}
	.p-login-layout__linklist .repletion_text {
		display: inline;
		padding: 0;
	}
	.p-login-layout__linklist .repletion_text::before {
		content: unset;
	}
}



.p-login-layout__sns {
	width: 364px;
	border-left: solid 1px #ccc;
	text-align: center;
}
.p-login-layout__sns .c-hdg-lv4 {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.p-login-layout__sns .p-login__btn {
	margin-top: 80px;
}
.p-login-layout__sns .p-login__btn .c-btn {
	max-width: 170px;
	margin-top: 20px;
	border-radius: 6px;
	font-size: 16px;
	font-weight: 500;
	text-align: center;
}
.p-login-layout__sns .p-login__btn .c-btn:first-child {
	margin-top: 0;
}
.c-btn.-sns_facebook {
	background: #1877f2 url('../img/common/icon_facebook_white.svg') no-repeat 10px center;
	background-size: 25px;
	color: #fff;
}
.c-btn.-sns_twitter {
	background: #1da1f2 url('../img/common/icon_twitter_white.svg') no-repeat 10px center;
	background-size: 24px;
	color: #fff;
}
.c-btn.-sns_facebook:hover,
.c-btn.-sns_facebook:focus,
.c-btn.-sns_twitter:hover,
.c-btn.-sns_twitter:focus {
	opacity: .6;
}
@media screen and (max-width: 768px) {
	.p-login-layout__sns {
		width: 100%;
		margin-top: 30px;
		padding-top: 26px;
		border-top: solid 1px #ccc;
		border-left: none;
		text-align: center;
	}
	.p-login-layout__sns .p-login__btn {
		display: flex;
		justify-content: space-between;
		margin-top: 20px;
	}
	.p-login-layout__sns .p-login__btn .c-btn {
		margin-top: 0;
		width: 47%;
	}
}
.p-login__sec.p-login-new_entry {
	width: 100%;
	margin-top: 24px;
	padding-top: 34px;
	padding-bottom: 40px;
	border-top: solid 2px #333;
	text-align: center;
}
.p-login-new_entry .c-hdg-lv4 {
	border: none;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.c-btn.-new_entry {
	max-width: 304px;
	margin: 0 auto;
	padding: 16px 0;
	background: #75ccd9 url('../img/common/icon_new_entry.svg') no-repeat 96% center;
	background-size: 8px 16px;
	border-radius: 0;
	box-shadow: 2px 2px 0px -1px rgba(230, 230, 230, 1);
	font-size: 16px;
	line-height: 1;
	text-align: center;
	color: #fff;
}
.c-btn.-new_entry:hover,
.c-btn.-new_entry:focus {
	opacity: .6;
}
.p-login-new_entry .repletion_text {
	font-size: 16px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.p-login-new_entry .c-hdg-lv4 {
		font-size: 16px;
	}
	.p-login-new_entry .p-login__btn {
		margin-bottom: 10px;
	}
	.p-login-new_entry .repletion_text {
		font-size: 12px;
	}
}
