@charset "UTF-8";
/* -------------------------------------------------------
CSS基本設定
---------------------------------------------------------- */
html {
  font-size: 62.5%;
  /* 1rem = 10px */
  width: 100%;
}

body {
  margin: 0;
  padding: 0;
  list-style-type: none;
  font-family: Hiragino Sans,"ヒラギノ角ゴシック",Arial, Roboto, “Droid Sans”, “游ゴシック”, YuGothic, “ヒラギノ角ゴ ProN W3″, “Hiragino Kaku Gothic ProN”, “メイリオ”, Meiryo, sans-serif;
  width: 100%;
  overflow: auto;
  position: relative;
  color: #262626;
  font-weight: 300;
  background-color: #fff;
  line-height: 1.6;
}

/*▼ タブレット端末用：余白設定 ▼*/
@media only screen and (max-width: 1000px) {
  body {
    min-width: 1020px;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
}

/*▼ リンクの色等を指定 ▼*/
a {
  color: #262626;
  text-decoration: none;
}

a img {
  border: none;
}

a:hover .thumb img {
  opacity: 0.7;
}

/*▼ reset ▼*/
* {
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-padding-start: 0;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
}

input[type="button"], input[type="submit"], input[type="text"] {
  border-radius: 0;
  -webkit-appearance: none;
}

p {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
  text-align: justify;
  font-size: 1.6rem;
}

img {
  border: 0px;
  vertical-align: bottom;
}

ul, li {
  list-style: none;
}

/*▼ PC非表示設定 ▼*/
.sp-only {
  display: none;
}

/*▼ floatをクリアするためのCSS ▼*/
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

/*▼ 中央揃え ▼*/
.inner {
  margin: 0 auto;
  width: 1000px;
}

/*▼ 見出し(円アイコン左表示) ▼*/
.sub-heading {
  font-size: 1.4rem;
  font-weight: 600;
  background-image: url("/common/soon/images/v1/common/sub-heading-icon.png");
  background-position: left;
  background-repeat: no-repeat;
  padding: 3px 0 0 25px;
  margin-bottom: 10px;
}

.sub-heading span {
  font-weight: 300;
}

/*▼ ボタン(もっと見る) ▼*/
.more-btn {
  margin-top: 20px;
}

.more-btn a {
  margin: 0 auto;
  text-align: center;
  border: 1px solid #4aa453;
  border-radius: 6px;
  color: #4aa453;
  display: block;
  width: 250px;
  height: 42px;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  background-color: #fff;
}

.more-btn a:hover {
  color: #fff;
  background-color: #4aa453;
}

.more-btn a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

.more-btn a:hover span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
}

/*▼ ページの先頭へ戻る ▼*/
.page-top {
  margin: 60px auto 0;
  width: 1000px;
  text-align: right;
}

.page-top a {
  font-size: 1.2rem;
  background-color: #f2f5f3;
  display: inline-block;
  padding: 1rem 2rem;
  cursor: pointer;
}

.page-top a:hover {
  font-weight: bold;
}

/*▼ サムネイル画像トリミング ▼*/
.headline-list li a .thumb img,
#pr-section ul li a .thumb img,
.movie-list ul li .thumb img,
.feature-list a li .thumb img,
ul.article-category-list li a .thumb img,
#related-article ul li a .thumb img,
#sub-column .pickup ul li a .thumb img,
ul.small-block-list li .thumb img,
#original-feature-list ul li a .thumb img,
#sub-column #feature-list ul li a .thumb img,
ul.feature-related-list li a .thumb img {
  -o-object-fit: cover;
       object-fit: cover;
  font-family: 'object-fit: cover;';
  /* IE対応 */
  width: 100%;
  height: 100%;
}

/*▼ 有料記事タイトル用アイコン ▼*/
.title.smart {
    display: inline-block;
}

.title.smart:after {
    content: "";
    background-image: url(/common/soon/images/v1/common/icon-smart.png);
    background-size: 0.8em;
    background-repeat: no-repeat;
    background-position: bottom right;
    width: 1em;
    height: 1em;
    display: inline-block;
    padding: 0 0 0 0.3em;
}

/* -------------------------------------------------------
header
---------------------------------------------------------- */
header {
  margin: 0 auto;
  width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 20px;
}

.date-section {
  font-size: 1.4rem;
  width: calc(100% / 5);
}

.key-section {
  width:20%;
  text-align:center;
}
.key-section img{
  width:30px;
  margin:0 2px
}

.date-section .date {
  margin-bottom: 5px;
}

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

.weather .weather-text {
  float: left;
  margin-right: 20px;
  padding-top:4px;
}

.weather .weather-text .hot {
  color: #ff0f0f;
}

.weather .weather-text .cold {
  color: #0033cc;
}

.weather .weather-i {
  float: left;
}
.weather .weather-i img{
  width: 50px;
  height: 50px;
}

.logo {
  text-align: center;
  width: calc(100% / 5);
}

.logo a {
  display: block;
}

.logo img {
  width: 160px;
  height: 72px;
}

.login-section {
  text-align: right;
  width: calc(100% / 5 * 2);
}

.login-section .subscript-btn:after {
  content: " ";
  display: block;
  clear: both;
}

.login-section .subscript-btn li.gakuwari {
  float: right;
  min-width: 80px;
}

.login-section .subscript-btn li.gakuwari a {
  border-radius: 0 6px 6px 0;

}

.login-section .subscript-btn li.web {
  float: right;
    padding-right: 1px;
  min-width: 110px;
}

.login-section .subscript-btn li.web a {

}

.login-section .subscript-btn li.koudoku {
  float: right;
  padding-right: 1px;
  min-width: 110px;
}

.login-section .subscript-btn li.koudoku a {
  border-radius: 6px 0 0 6px;

}

.login-section .subscript-btn li a {
  background-color: #2a6330;
  color: #fff;
  padding: 10px 15px;
  font-size: 14px;
  display: block;
  text-align: left;
}

.login-section .subscript-btn li a:hover {
  background-color: #4aa453;
}

.login-section .subscript-btn li a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

.login-section .primary-navi {
  margin-top: 10px;
}

.login-section .primary-navi li {
  display: inline;
  padding-left: 15px;
}

.login-section .primary-navi li a {
  font-size: 1.2rem;
}

.login-section .primary-navi li a:hover {
  text-decoration: underline;
}

/*▼ グローバルナビ ▼*/
nav {
  background-image: url("/common/soon/images/v1/common/line.png");
  background-position: bottom;
  background-repeat: repeat-x;
  margin-top: 15px;
  position:sticky;
  top:0;
  background-color:rgba(255,255,255,0.95);
  z-index:30;
}

#global-navi {
  margin: 0 auto;
  max-width: 1200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#global-navi li a {
  width: calc(1000px / 11);
  display: block;
  padding-top: 20px;
  min-height: 75px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 600;
  border-bottom: 12px solid #dae3de;
  color: #333;
}

#global-navi li a:hover {
  border-bottom: 12px solid #4aa453;
  color: #4aa453;
}

#global-navi li.home a {
  width: calc((1000px / 11) / 2);
  background-image: url("/common/soon/images/v1/common/gnavi-home.svg");
  background-position: top 22px left 50%;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  padding: 43px 0 0 0;
  font-size: 1rem;
}

#global-navi li.home.current a {
  background-image: url("/common/soon/images/v1/common/gnavi-home_green.svg");
}

#global-navi li.movie a {
  width: calc((1000px / 11) / 2);
  background-image: url("/common/soon/images/v1/common/gnavi-movie.svg");
  background-position: top 20px left 50%;
  background-repeat: no-repeat;
  background-size: 25px 25px;
  padding: 43px 0 0 0;
  font-size: 1rem;
}

#global-navi li.current a {
  border-bottom: 12px solid #2a6330;
  color: #4aa453;
}

/*▼ トピックス ▼*/
.topics-section {
  margin: 0 auto;
  width: 1200px;
  margin-top: 10px;
}

.topics-section:after {
  content: " ";
  display: block;
  clear: both;
}

.topics-section ul {
  overflow: hidden;
}

.topics-section ul li {
  display: inline;
  font-size: 1.4rem;
}

.topics-section ul li a {
  text-decoration: underline;
}

.topics-section ul li a:hover {
  text-decoration: none;
  color: #4aa453;
}

.topics-section ul li:not(:first-child) {
  margin-left: 1.4rem;
}

.topics-section-title {
  float: left;
  display: block;
  background-color: #4aa453;
  color: #fff;
  font-size: 1.2rem;
  font-weight: normal;
  padding: 1px 0 0 0;
  min-width: 111px;
  text-align: center;
  margin-right: 1rem;
}

.top-banner {
  margin-top: 20px;
}

/* -------------------------------------------------------
contents
---------------------------------------------------------- */
#contents {
  margin: 20px auto 0 auto;
  width: 1000px;
}

#contents:after {
  content: " ";
  display: block;
  clear: both;
}

#main-column {
  float: left;
  width: 670px;
  margin-right: 30px;
}

/* シングルコラム構成 */
.single-column #main-column {
  width:100%;
  margin-right:0px;
}

#sub-column {
  float: right;
  width: 300px;
}

#sub-column img {
  max-width: 100%;
}

/*▼ TOPニュースタブ ▼*/
#headline-news-tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
  overflow: hidden;
}

#headline-news-tab li {
  min-width: calc(100% / 4);
  max-height: 27px;
}

#headline-news-tab li:not(.current):not(:last-child) a {
  border-right: 1px solid #fff;
}

#headline-news-tab li.current {
  background-image: url("/common/soon/images/v1/common/tab-select-icon.svg");
  background-position: bottom;
  background-repeat: no-repeat;
  padding: 0 0 15px 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  background-size: 10px 10px;
}

#headline-news-tab li.current a {
  background-color: #fff;
  border-bottom: none;
  border-top: 1px solid #aaa;
  border-left: 1px solid #aaa;
  border-right: 1px solid #aaa;
  color: #43944b;
}

#headline-news-tab li a {
  border-bottom: 1px solid #aaa;
  background-color: #f2f2f2;
  text-align: center;
  padding: 5px 0;
  display: block;
  font-weight: 600;
  font-size: 1.3rem;
}

#headline-news-tab li a:hover {
  background-color: #fff;
  color: #4aa453;
}
/* タブの中身 */
#news-tab-list > li{
  display:none;
}
#news-tab-list > li.current{
  display:block;
}

#news-tab-list .headline-more-link {
  margin-top: 10px;
}

#news-tab-list .headline-more-link a {
  display: block;
  text-align: center;
  color: #fff;
  width: 80%;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 1rem 2rem 1rem 1rem;
  background-image: url(/common/soon/images/v1/common/more-btn-icon_white.svg);
  background-position: right 4% top 50%;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  margin:0 auto;
  background-color: #4b4b4b;
}

#news-tab-list .headline-more-link a:hover {
  background-color: #396;
}

/*▼ TOPニュースリスト ▼*/
.headline-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 10px 0 0 0;
  -ms-flex-line-pack: start;
      align-content: flex-start;
}

.headline-list li:not(:first-child) {
  width: 325px;
  margin-top: 20px;
}

.headline-list li:nth-child(even) {
  margin-right: 20px;
}

.headline-list li a {
  width: 100%;
  display: block;
}

.headline-list li a .thumb {
  width: 120px;
  height: 120px;
  margin-right: 10px;
  float:left;
  position:relative;
}

.headline-list li a .text {
  overflow: hidden;
}



.headline-list li a .title {
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight:bold;
}

.headline-list li a .summary {
  font-size: 1.3rem;
  margin-top:1rem;
  color: #808080;
}

.headline-list li a:hover .title {
  text-decoration: underline;
}

.headline-list li a .date {
  font-size: 1.2rem;
  color: #808080;
  padding: 1rem 0 0 0;
}

.headline-list li.first-article {
  width: 100%;
}

.headline-list li.first-article a .text:before {
  margin-top: -5px;
  /* line-height分の上余白を相殺 */
}

.headline-list li.first-article a .thumb {
  width: 250px;
  height: 250px;
  margin-right: 20px;
  float:left;
  position:relative;
}

.headline-list li.first-article a .thumb img {
  width: 250px;
  height: 250px;
}

.headline-list li.first-article a .title {
  font-size: 2.4rem;
  font-weight: bold;
}

.headline-list li.first-article a .summary {
  font-size: 1.6rem;
}

/*▼ 速報 ▼*/
.newsletter {
  margin-top: 10px;
  width: 670px;
}

#sub-column .newsletter {
  margin-top: 20px;
  width: 300px;
}

.newsletter-heading {
  background-color: #4aa453;
  padding: 10px 10px;
  color: #fff;
}

.newsletter-heading:after {
  content: " ";
  display: block;
  clear: both;
}

.newsletter-heading .newsletter-title {
  float: left;
  font-size: 1.6rem;
  font-weight: 600;
}

.newsletter-heading .newsletter-link {
  float: right;
  font-size: 1.2rem;
  padding: 5px 5px 0 0;
}

.newsletter-heading .newsletter-link a {
  color: #fff;
  background-image: url("/common/soon/images/v1/common/icon-link-small.png");
  background-position: right;
  background-repeat: no-repeat;
  padding-right: 10px;
}

.newsletter ul {
  border: 1px solid #8fc995;
}

.newsletter ul li:not(:first-child) {
  border-top: 1px dotted #b2b2b2;
}

.newsletter ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 10px;
  font-size: 1.4rem;
  line-height: 1.4;
}

.newsletter ul li a:hover {
  background-color: #f7faf8;
}

.newsletter ul li a .title {
  width: 85%;
}

.newsletter ul li a .date {
  text-align: right;
  width: 15%;
  font-size: 1.2rem;
}

#sub-column .newsletter ul li a {
  display: block;
}

#sub-column .newsletter ul li a .title {
  width: 220px;font-size:14px;display:inline-block
}

#sub-column .newsletter ul li a .date {
padding:2px 0;width:40px;text-align:center;color:#396;font-weight:bold;display:inline-block;margin:0 10px 0 0;vertical-align:top;border:1px solid #396
}

/*▼ 検索エリア ▼*/
.search form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
}

.search-input {
  width: 85%;
  height: 27px;
  background-image: url("/common/soon/images/v1/common/search-icon.svg");
  background-position: left;
  background-repeat: no-repeat;
  padding: 3px 0 0 23px;
  background-size: 20px 20px;
  border: 1px solid #dae3de;
}

.search-button {
  width: 15%;
  background-color: #ddd;
  color: #fff;
  border: none;
  font-size: 1.2rem;
  height: 27px;
}

#main-column .search-outer {
  background-color: #f7faf8;
  width: 100%;
  padding: 20px 20px 20px 20px;
  margin-bottom: 30px;
}

#main-column .search-outer .section-ttl-box {
  padding-bottom: 3px;
  margin-bottom: 15px;
  border-bottom: 2px solid #bfbfbf;
  display: block;
}
#main-column .search-outer .section-ttl-box__ttl{
  font-size: 2.4rem;
  color: #88002c;
  display: inline;
}
#main-column .search-outer .author-box{
  display:flex;
  flex-direction:row;
  align-items: flex-start;
}
#main-column .search-outer .author-image-icon{
  max-width:none;
  width:160px;
  margin-right:20px;
}
#main-column .search-outer .author-profile-name.--kanji{
  font-size: 2.4rem;
}
#main-column .search-outer .author-profile-name.--hiragana{
  margin-left: 20px;
  font-size: 1.6rem;
}
#main-column .search-outer .author-profile-title{
  font-size: 1.4rem;
}
#main-column .search-outer .author-profile-title__author-affiliation{
  margin-right: 20px;
}

#main-column .search form {
  margin-bottom: 0;
}

/*▼ ランキング ▼*/
.ranking {
  margin-top: 30px;
  border-bottom: 1px solid #b2b2b2;
}

.ranking-tab {
  overflow: hidden;
  border-top: 1px solid #b2b2b2;
  border-bottom: 1px solid #b2b2b2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ranking-tab li {
  width: 50%;
  padding: 3px 0;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 600;
  color: #999999;
  background-color: #f2f2f2;
  cursor: pointer;
}

.ranking-tab li.current {
  color: #43944b;
  background-color: #fff;
}

.ranking .tab-list li:not(:first-child) {
  border-top: 1px dotted #b2b2b2;
}

.ranking .tab-list li a {
  padding: 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.ranking .tab-list li a:hover {
  background-color: #f7faf8;
}

.ranking .tab-list li a .rank {
  font-size: 2.4rem;
  font-weight: 600;
  color: #43944b;
  margin-right: 10px;
  width: 5%;
}

.ranking .tab-list li a .rank_row {
  font-size: 2.4rem;
  color: #808080;
  margin-right: 10px;
}

.ranking .tab-list li a .title {
  font-size: 1.4rem;
  width: 95%;
  font-weight:bold;
}

.ranking .ranking-list .tab-list {
  display: none;
}

.ranking .ranking-list .tab-list.current {
  display: block;
}

.ranking .hide {
  display: none;
}

/*▼ pickup（右カラム） ▼*/
#sub-column .pickup {
  margin-top: 30px;
}

#sub-column .pickup ul li:not(:first-child) {
  padding-top: 15px;
}

#sub-column .pickup ul li a {
  display: block;
}

#sub-column .pickup ul li a:after {
  content: " ";
  display: block;
  clear: both;
}

#sub-column .pickup ul li a .text .title {
  font-size: 1.3rem;
  font-weight: 600;
}

#sub-column .pickup ul li a .text .copy {
  padding-top: 5px;
  font-size: 1.2rem;
  line-height: 1.5rem;
}

#sub-column .pickup ul li a .text .copy small {
  color: #999999;
  text-align: right;
}

#sub-column .pickup ul li a:hover .title {
  text-decoration: underline;
}

#sub-column .pickup ul li a .thumb {
  float: left;
  width: 50px;
  height: 50px;
  margin-right: 10px;
}

/*▼ weather-live ▼*/
.weather-live {
  margin-top: 30px;
}

.weather-live table {
  width: 100%;
  table-layout: fixed;
  border: 1px solid #f2f2f2;
  border-spacing: 0;
  font-size: 14px;
}

.weather-live table th {
  background-color: #f2f2f2;
  border-top: 1px solid #fff;
  padding: 5px 0;
  text-align: center;
}

.weather-live table th.area {
  background-color: #d9d9d9;
  border-top: none;
}

.weather-live table td {
  padding: 5px 0;
  text-align: center;
}

.weather-live table td span {
  font-size: 0.8rem;
}

/*▼ pr-section ▼*/
#pr-section {
  margin: 60px auto 0 auto;
  width: 95%;
  position: relative;
}

#pr-section .next {
  position: absolute;
  background-position: left;
  top: 80px;
  left: 0px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-left64_gray.svg");
}

#pr-section .prev {
  position: absolute;
  background-position: right;
  top: 80px;
  right: 0px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-right64_gray.svg");
}

#pr-section ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 40px;
}

#pr-section ul li {
  width: calc(840px / 5);
}

#pr-section ul li:not(:first-child) {
/*以下はbxsliderとバッティングするためコメントアウト(2018.02.28 N.I.)
  margin-left: 20px;
*/
}

#pr-section ul li a {
  /* bxslider対応(2018.02.28 N.I.) */
  display: block;
  width:168px;
  margin:auto;
}

#pr-section ul li a .thumb {
  width: calc(840px / 5);
  height: calc(840px / 5);
}

#pr-section ul li a .title {
  font-size: 1.2rem;
  margin-top: 10px;
  color: #4c4c4c;
}

#pr-section ul li a:hover .title {
  text-decoration: underline;
}

#pr-section ul li a .date {
  text-align: right;
  padding: 0 8px 8px 8px;
  font-size: 1.2rem;
  color: #808080;
}
/* pr-sectionのbxslider対応 */
#pr-section .bx-wrapper{
margin:auto;
padding:0px;
border:none;
box-shadow:0 0 0 #fff;
}
#pr-section .bx-next,
#pr-section .bx-prev,
.order-box .next .bx-next,
.order-box .prev .bx-prev{
  position:absolute;
  top:0px;
  left:0px;
  width:100%;
  height:100%;
}

/* bxslider親要素の高さ指定を解除 */
.bx-viewport {
  height: auto !important;
}

/*▼ company ▼*/
#company-section {
  margin: 60px auto 0 auto;
}

#company-section:after {
  content: " ";
  display: block;
  clear: both;
}

#company-section-title {
  font-size: 2.4rem;
  font-weight: 600;
}

.company-info {
  float: left;
  width: 870px;
  margin-right: 30px;
}

.company-info-list {
  background-color: #f7faf8;
  padding: 15px 20px 20px 20px;
  font-size: 1.3rem;
}

.company-info-list li {
  margin-top: 5px;
}

.company-info-list li a {
  background-image: url("/common/soon/images/v1/common/icon-link-small_gray.png");
  background-position: top left;
  background-repeat: no-repeat;
  padding: 0 0 3px 15px;
  display: block;
}

.company-info-list li a:hover {
  text-decoration: underline;
}

.company-sns {
  float: right;
  width: 300px;
}

.sns-heading:after {
  content: " ";
  display: block;
  clear: both;
}

.sns-heading .sub-heading {
  float: left;
}

.sns-heading .sns-heading-link {
  float: right;
  font-size: 1.3rem;
  margin-top: 5px;
}

.sns-heading-link a {
  background-image: url("/common/soon/images/v1/common/icon-link-small_gray.png");
  background-position: top right;
  background-repeat: no-repeat;
  padding: 3px 15px 0 0;
}

.sns-heading-link a:hover {
  text-decoration: underline;
}

.sns-link:after {
  content: " ";
  display: block;
  clear: both;
}

.sns-link p {
  float: left;
  font-size: 1.4rem;
  padding-top: 1rem;
}

.sns-link .twi {
  float: right;
  margin-left: 5px;
}

.sns-link .fb {
  float: right;
}

.sns-icon span a {
  display: block;
  width: 40px;
  height: 40px;
  background-color: #999999;
  padding: 8px 0;
  border-radius: 4px;
}

.sns-icon span a img {
  display: block;
  margin: 0 auto;
  height: 100%;
}

/*▼ movie-section ▼*/
#movie-section,
#webphoto-section {
  background-color: #f2f2f2;
  padding: 30px 0;
  margin-top: 40px;
}

#movie-section_inner {
  margin: 0 auto;
  width: 95%;
}

#movie-section-title {
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
}

.movie-list {
  position: relative;
}

.movie-list .next {
  position: absolute;
  background-position: left;
  top: 80px;
  left: 0px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-left64.svg");
}

.movie-list .prev {
  position: absolute;
  background-position: right;
  top: 80px;
  right: 0px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-right64.svg");
}

.movie-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
/* 以下はbxsliderとバッティングするためコメントアウト(2018.02.28 N.I.)
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
*/
  margin-top: 10px;
  padding: 0 40px;
}

.movie-list ul a {
  display: block;
  /* 以下はbxsliderとバッティングするためコメントアウト(2018.02.28 N.I.)
  width: calc(860px / 4);
  */
  /* 以下,bxslider用に追記 */
  width:196px;
  margin:auto;
}

.movie-list ul li a:hover .title {
  text-decoration: underline;
}

.movie-list ul a:not(:first-child) {
/* 以下はbxsliderとバッティングするためコメントアウト(2018.02.28 N.I.)
  margin-left: 20px;
*/
}

.movie-list ul li {
/* 以下はbxsliderとバッティングするためコメントアウト(2018.02.28 N.I.)
  width: calc(860px / 4);
*/
}

.movie-list ul li .thumb {
  width:196px;
  height: 150px;
}

.movie-list ul li .text {
  margin-top: 10px;
}

.movie-list ul li .title {
  font-size: 1.4rem;
}

.movie-list ul li .date {
  text-align: right;
  padding-top: 5px;
  font-size: 1.2rem;
  color: #808080;
}

/* movie-sectionのbxslider対応 */
.movie-list .bx-wrapper{
margin:auto;
padding:0px;
border:none;
box-shadow:0 0 0 #fff;
}

.movie-list .bx-wrapper{
  background-color:transparent;
}
.movie-list .bx-next,
.movie-list .bx-prev{
  position:absolute;
  top:0px;
  left:0px;
  width:100%;
  height:100%;
}

/*▼ feature-section ▼*/
#feature-section {
  margin: 40px auto 0 auto;
  width: 1000px;
}

#feature-section-title {
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
}

.feature-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 10px;
}

.feature-list a {
  display: block;
  width: calc(920px / 5);
  border: 8px solid #f2f2f2;
  background-color: #fff;
  margin-bottom: 20px;
  position: relative;
/*  padding-bottom: 30px; */
}

.feature-list a:not(:nth-child(5n)) {
  margin-right:20px;
}

.feature-list a li .thumb {
  width: 168px;
  height: 168px;
}

.feature-list a li .text {
  padding: 8px;
}

.feature-list a li .title {
  font-size: 1.6rem;
}

.feature-list a li .date {
  text-align: right;
  font-size: 1.2rem;
  color: #808080;
  position: absolute;
  bottom: 8px;
  right: 8px;
}

/*▼ breadcrumb ▼*/
#breadcrumb {
  min-height: 30px;
  margin-bottom: 20px;
  font-size: 1.2rem;
  color: #4c4c4c;
}

#breadcrumb a {
  font-weight: 600;
  color: #4c4c4c;
}

#breadcrumb a:hover {
  color: #4aa453;
}

#breadcrumb a:not(:first-child):before,
#breadcrumb span.lowermost:before {
  content: "/";
  display: inline-block;
  padding: 0 0.7rem;
  font-size: 1.4rem;
  font-weight: normal;
  color: #666;
}

/*▼ カテゴリページ▼*/
#article-category {
  width: 100%;
}

#article-category .heading,
h1.heading {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 2px solid #bfbfbf;
  margin-bottom: 30px;
}

#article-category h1.heading.small{
  font-size: 1.2rem;
}

ul.article-category-list li {
  border-bottom: 1px solid #d9d9d9;
  width: 670px;
}

ul.article-category-list li:not(:first-child) {
  padding-top: 20px;
}

ul.article-category-list li a {
  padding-bottom: 20px;
  display:block;
  width: 100%;
}

ul.article-category-list li a:after {
    content:" ";
    display:block;
    clear:both;
}

ul.article-category-list li a:hover .title {
  text-decoration: underline;
}

ul.article-category-list li a .thumb {
  width: 160px;
  height: 160px;
  margin-left: 20px;
  float:right;
  position:relative;
}


ul.article-category-list li a .text {
  /* width: 490px; */
  overflow: hidden;
}


ul.article-category-list li a .text:before {
  content: "";
  display: block;
  /* line-height分の上余白を相殺　*/
  margin-top: -4.4px;
}

ul.article-category-list li a .text .title {
  font-size: 1.8rem;
  font-weight: 600;
  color: #333;
}

ul.article-category-list li a .text .sub-title {
  padding-top: 15px;
  font-size: 1.4rem;
  color: #808080;
}

ul.article-category-list li a .text .date {
  padding-top: 10px;
  font-size: 1.2rem;
  color: #808080;
}
ul.article-category-list li a .text .link {
    background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
    background-position: top left;
    background-repeat: no-repeat;
    padding: 0 0 3px 10px;
    display: block;
    font-size: 1.2rem;
    margin-top: 1rem;
    color: #4aa453;
}

.no-result {
    font-size: 1.6rem;
    margin-bottom: 3em;
}

/*▼ 記事ページ▼ */
#signage {
  margin-bottom: 10px;
}

#signage h1 {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
}

#signage h2 {
  font-size: 2rem;
  font-weight: normal;
  color:#666;
}

#signage .pubdate {
  border-left: 3px solid #4aa453;
  padding: 0 0 0 8px;
  font-size: 1.2rem;
  line-height: 1;
  color: #808080;
  margin-top: 15px;
}

ul.tags {
  margin-top: 10px;
}

ul.tags li {
  display: inline-block;
}

ul.tags li:not(:first-child) {
  margin-left: 5px;
}

ul.tags li a {
  display: block;
  background-color: #f2f2f2;
  border: 1px solid #e5e5e5;
  text-align: center;
  padding: 5px 10px;
  font-size: 1.2rem;
}

ul.tags li a:hover {
  background-color: #4aa453;
  color: #fff;
}

/*▼ 記事ページ 投稿された画像の指定▼*/
.article-body .caption {
  font-size: 1.2rem;
  line-height: 1.5;
  margin: 0;
  color: #666;
}

.article-body a {
  color: #4aa453;
  text-decoration: underline;
}

.article-body a:hover {
  text-decoration: none;
}

.article-body ul li:before {
  content: "●";
  padding-right: 1rem;
}

.article-body ul.pstudio-item li:before,
.article-body ul.order-item li:before,
.article-body ul#spride-archive li:before,
body.hsbp .article-body ul li:before {
    display: none;
}

.article-body ol {
  counter-reset: section;
}

.article-body ol li:before {
  padding-right: 0.6rem;
  counter-increment: section;
  /* section カウンタのこのインスタンスのみ増加 */
  content: counters(section, "-") " ";
  /* "." で区切られた section カウンタのインスタンスの値を付加 */
}

.article-body ol ol {
  padding: 1rem 0 0 0;
  font-size: 1.5rem;
}

.article-body ol ol li:before {
  padding-left: 2rem;
}

.article-body .figure-left {
  margin: 0 20px 10px 0;
  float: left;
}

.article-body .figure-right {
  margin: 0 0 10px 20px;
  float: right;
}

.article-body .figure-center {
  margin: 0 auto;
}

.combo .image-area, .combo .figure-center {
  width: 100% !important;
}

.article-body .images-2cols .image-area {
  width: 49%;
  float: left;
}

.article-body .images-2cols .image-area:first-child {
  clear: both;
}

.article-body .images-2cols .image-area:nth-child(even) {
  margin-left: 2%;
}

.article-body .images-3cols {
  list-style: none;
  padding: 0;
}

.article-body .images-3cols .image-area {
  width: 210px;
  float: left;
}

.article-body .images-3cols .image-area:first-child {
  clear: both;
}

.article-body .images-3cols .image-area:nth-child(n+2) {
  margin-left: 15px;
}

.article-body .images-3cols .image-area img {
  width: 100%;
}

.article-body .images-2cols .image-area img {
  width: 100%;
}

.article-body .image-area .figure-left img {
  width: 100%;
}

.article-body .image-area .figure-right img {
  width: 100%;
}

.article-body .image-area .figure-center img {
  width: 100%;
}

.article-body .main-image {
  width: 100%;
}

/*▲ 記事ページ 投稿された画像の指定ここまで▲*/
/*▼ 記事ページ 画像のデフォルト表示※レクタングルとセットのもの▼*/
.article-body .img-rectangle {
  float: left;
  width: 300px;
  margin: 0 20px 10px 0;
}

.article-body .img-rectangle.no-image {
  float: right;
  margin: 10px 0px 10px 10px;
}

.article-body .article-photo-slide {
  margin-bottom: 20px;
  position:relative;
}

.article-body .img-rectangle .article-photo-slide .slide-area .slide .photo {
  height: 200px;
  background-color: #e6e6e6;
  position: relative;
}

.article-body .img-rectangle .article-photo-slide .slide-area .slide:nth-child(n+2) {
  /*margin-top: 20px;*/
}

.article-body .img-rectangle .article-photo-slide .slide-area .slide .photo img {
  position: absolute;
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.article-body .img-rectangle .article-photo-slide .slide-area .slide .photo .expand {
  position: absolute;
  right: 0;
  bottom: 0px;
  display: block;
  font-size: 1.2rem;
  background-color: #8fc995;
  padding: 2px 10px 2px 27px;
  border-radius: 4px;
  background-image: url("/common/soon/images/v1/common/rupe-white.svg");
  background-repeat: no-repeat;
  background-position: 6px 3px;
  background-size: 16px;
}

.article-body .img-rectangle .article-photo-slide .slide-area .slide .photo .expand span {
  color: #fff;
}

.article-body .expand a {
  text-decoration: none;
}



.article-body .img-rectangle .article-photo-slide .slide-area .slide .summary p {
  font-size: 1.2rem;
  line-height: 1.5;
  margin: 0;
  color: #666;
  margin-top: 0.5rem;
}

.article-body .slide-wrapper .bx-wrapper{
  margin:0px 0px 0px 0px;
  border:none;
  box-shadow:0 0 0 #fff;
}

.article-body .slide-wrapper #slide-next{
  position: absolute;
  top: 80px;
  right: -10px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  text-indent: -100em;
  background: url(/common/soon/images/v1/common/arrow-gray-right.svg) no-repeat left top;
  background-size: 30px;
  z-index:10;
}
.article-body .slide-wrapper #slide-prev{
  position: absolute;
  top: 80px;
  left: -10px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  text-indent: -100em;
  background: url(/common/soon/images/v1/common/arrow-gray-left.svg) no-repeat left top;
  background-size: 30px;
  z-index:10;
}

.article-body .slide-wrapper #slide-next a,
.article-body .slide-wrapper #slide-prev a{
  display: block;
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.article-photo-slide .thumbnail{
  margin-top:0px;
  height:auto;
  background-color:#f2f2f2;
  text-align:center;
}
.article-photo-slide .thumbnail span{
  width:50px;
  height:50px;
  overflow:hidden;
  display:inline-block;
  margin:2px;
  text-align:center;
}
.article-photo-slide .thumbnail span a{
  opacity:0.6;
}
.article-photo-slide .thumbnail span a.active{
  opacity:1;
}
.article-photo-slide .thumbnail span:last-child{
  margin-right:0;
}
.article-photo-slide .thumbnail span a{
  height:50px;
  display:block;
  position: relative;
}
.article-photo-slide .thumbnail span img{
  display:block;
  bottom: 0;
  left: 0;
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  position: absolute;
  right: 0;
  top: 0;
  
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  width: 100%;
  height: 100%;
}


.article-body .img-rectangle .rectangle {
  margin: 0px 0px 20px 0px;
  width: 300px;
}

.article-body .img-rectangle .rectangle img {
  width: 100%;
}


.article-sns {
  clear: both;
  padding-bottom: 10px;
  border-bottom: 2px solid #bfbfbf;
  margin-bottom: 30px;
}

.article-sns .fb_iframe_widget > span {
  vertical-align: baseline !important;
}

.article-sns .hb-button {
  float: right;
  margin-left: 1rem;
}

.article-sns .hb-button iframe {
  width: 20px !important;
  height: 20px !important;
}

.article-sns .line-it-button {
  float: right;
  margin-left: 1rem;
}

.article-sns .fb-share-button {
  float: right;
  margin-left: 1rem;
}

.article-sns .tw-share-button {
  float: right;
}

/*▲ 記事ページ 画像のデフォルト表示※レクタングルとセットのものここまで▲*/
/*▼ 記事ページ 投稿された動画▼*/
.article-body .youtube, .article-body .video {
  width: 560px;
  margin: 0 auto 20px;
}

.article-body .video {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.article-body .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.article-body .videofull {
  width: 100%;
  margin: 0 auto 20px;
}

.article-body .videofull {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.article-body .videofull iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.article-body .videofull-v {
max-width: 360px;
    margin: 20px auto;
    height: 640px;
    position: relative;
}

.article-body .videofull-v iframe {
position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*▲ 記事ページ 投稿された動画▲*/
/*▼ 記事ページ 共通パーツ▼*/
/*▼ 記事ページ もっと読む▼*/
a.more-c {
  background-color: #4aa453;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.05rem;
  padding: 3px 1rem;
  display: inline-block;
  margin: 1rem 0;
}

a.more-c:hover {
  opacity: 0.6;
  text-decoration: none;
}

/*▼ 記事ページ 次ページ誘導見出し▼*/
.article-body .next-page-info {
  margin: 60px auto 0;
  font-size: 1.6rem;
  font-weight: 300;
  clear: both;
  text-align: center;
}

.article-body .next-page-info a {
  display: inline-block;
  text-decoration: none;
  padding: 1rem 0;
  border-bottom: 1px solid #aaa;
  border-top: 1px solid #aaa;
  width: 60%;
}

.article-body .next-page-info a:before {
  content: " ";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12.1px;
  border-color: transparent transparent transparent #4aa453;
  padding-right: 0.8rem;
}

/*▼ 記事ページ内テーブル ▼*/
.article-body table {
  width: 100%;
  border-top: 1px solid #f2f2f2;
  border-left: 1px solid #f2f2f2;
  border-spacing: 0;
  font-size: 14px;
}

.article-body table th {
  background-color: #f2f2f2;
  border-right: 1px solid #f2f2f2;
  border-bottom: 1px solid #fff;
  padding: 8px;
}

.article-body table th:not(:last-child){
  border-right: 1px solid #fff;
}

.article-body table td {
  padding: 12px;
  border-bottom: 1px solid #f2f2f2;
  border-right: 1px solid #f2f2f2;
}

/*▼ 記事ページ内PDF ▼*/
.article-body .pdf{
  float:none;
  line-height: 180%;
}
.article-body .pdf a{
  display:block;
  margin:20px 0;
}
.article-body .pdf .image{
  display:block;
  float:right;
  width:40px;
  margin:0px 0px 0px 10px;
}
.article-body .pdf .title{
  display:block;
  float:right;
  max-width : -webkit-calc(100% - 74px) ;
  max-width : calc(100% - 74px) ;
  margin-top:2%;

}

/* 記事下広告 */
.article-body .ad-under-body{
  clear:both;
  width:300px;
  margin:20px auto;
}


/*▼ ページネーション▼*/
.pagination {
  vertical-align: baseline;
  text-align: center;
  clear: both;
  margin: 40px 0;
}

.pagination span {
  display: inline-block;
  border: 1px solid #f2f2f2;
  font-size: 2rem;
  width: 4rem;
  height: 4rem;
  text-align: center;
  color: #4aa453;
  vertical-align: middle;
  margin-left: 8px;
  line-height: 2;
}

.pagination a {
  display: inline-block;
}

.pagination .current {
  background-color: #4aa453;
  color: #fff;
}

.pagination a .next {
  width: auto;
  color: #333;
  font-size: 1.5rem;
  padding-top: 0.6rem;
  border: none;
  margin-left: 2rem;
}

.pagination a .next:after {
  content: "";
  display: inline-block;
  border: 1px solid #aaaaaa;
  width: 10px;
  height: 10px;
  border-top: medium none;
  border-left: medium none;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-left: 1rem;
}

.pagination a .prev {
  width: auto;
  color: #333;
  font-size: 1.5rem;
  padding-top: 0.6rem;
  border: none;
  margin-right: 2rem;
}

.pagination a .prev:before {
  content: "";
  display: inline-block;
  border: 1px solid #aaaaaa;
  width: 10px;
  height: 10px;
  border-top: medium none;
  border-left: medium none;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  margin-right: 1rem;
}

.article-body {
  font-size: 1.6rem;
}

.article-body p {
  line-height: 1.9;
  font-size:110%;
}

.article-body h2 {
  font-size: 2.2rem;
  line-height: 1.4;
  font-weight: 700;
}

.article-body h3 {
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 600;
  margin-right:auto;
  margin-left:auto;
}

.article-body h4 {
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 600;
  position: relative;
}


.article-body h4:before {
  content: '';
  position: absolute;
  bottom: -0.7rem;
  display: inline-block;
  width: 80px;
  height: 2px;
  background-color: #ccc;
}

.article-body p {
  margin-bottom: 2.5rem;
}

.article-body h2:not(:first-child),
.article-body h3:not(:first-child),
.article-body h4:not(:first-child),
.article-body h5:not(:first-child),
.article-body h6:not(:first-child) {
  margin-top: 3.5rem;
}

.article-body .images-2cols,
.article-body .images-3cols,
.article-body .figure-center,
.article-body h2,
.article-body h3,
.article-body h5,
.article-body h6,
.article-body ul,
.article-body ol,
.article-body table  {
  margin-bottom: 1.5rem;
}

.article-body h4 {
  margin-bottom: 2rem;
}

.article-body .login-wrapper {
  margin: 40px 0 0 0;
}

.article-body .login-wrapper p {
  text-align: center;
  font-size: 1.4rem;
}

.article-body .login-wrapper .entry,
.article-body .login-wrapper .login {
  margin-top: 10px;
}

.article-body .login-wrapper .entry a {
  margin: 0 auto;
  text-align: center;
  border: 1px solid #4aa453;
  border-radius: 6px;
  color: #fff;
  display: block;
  width: 350px;
  height: 42px;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  background-color: #4aa453;
}

.article-body .login-wrapper .login a {
  margin: 0 auto;
  text-align: center;
  border: 1px solid #4aa453;
  border-radius: 6px;
  color: #4aa453;
  display: block;
  width: 350px;
  height: 42px;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  background-color: #fff;
}

.article-body .login-wrapper .entry a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

.article-body .login-wrapper .login a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

#related-article {
  margin-top: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
}

#related-article ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#related-article ul li {
  width: 155px;
  padding-bottom: 20px;
}

#related-article ul li:not(:nth-child(4n)) {
  margin-right: 16.6px;
}

#related-article ul li a {
  display: block;
}

#related-article ul li a .thumb {
  width: 155px;
  height: 155px;
  background-color: #ccc;
}

#related-article ul li a .title {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 10px;
}

#related-article ul li a:hover .title {
  text-decoration: underline;
}

#related-article ul li a .date {
  text-align: right;
  padding: 5px 0 0 0;
  font-size: 1.2rem;
  color: #808080;
}

#article-headline {
  margin-top: 10px;
}

#article-headline .sub-heading {
  margin-bottom: 20px;
}

.article-body .related-news-simple-container:before{content:"【関連ニュース】";font-size:1.1rem;font-weight:bold}
.article-body .related-news-simple-container a{font-weight:bold;border-top:1px solid #ccc;border-bottom:1px solid #ccc;padding:10px 20px;background:#fafafa;display:table;}

/* -------------------------------------------------------
フッター
---------------------------------------------------------- */
footer {
}

#footer-menu {
  background-color: #f2f5f3;
  padding: 30px 0;
}

#footer-menu-inner {
  margin: 0 auto;
  width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#footer-menu-inner .company-logo {
  width: 100%;
  margin-bottom: 30px;
}

#footer-menu-inner ul {
  width: calc(920px / 4);
  margin-right: 20px;
}

#footer-menu-inner ul li {
  padding-bottom: 0.7rem;
}

#footer-menu-inner ul li a {
  font-size: 1.4rem;
  color: #3b3d3c;
  line-height: 1.4;
}
#footer-menu-inner ul li a:hover {
  text-decoration: underline;
}


#footer-menu-inner ul li.cat_title {
  font-size: 1.8rem;
  position: relative;
  display: inline-block;
  margin-bottom: 0.5em;
  margin-top: 1em;
}

#footer-menu-inner ul li.cat_title a{
  font-size: 1.8rem;
  position: relative;
  display: inline-block;
}

#footer-menu-inner ul li.cat_title a:before {
  content: '';
  position: absolute;
  left: 15%;
  bottom: -5px;
  /*線の上下位置*/
  display: inline-block;
  width: 20px;
  /*線の長さ*/
  height: 1px;
  /*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  /*位置調整*/
  background-color: #b8bfbb;
  /*線の色*/
}

#area47news {
  margin: 40px auto 0 auto;
  font-size: 1.3rem;
  width: 1000px;
}

#area47news .area47news-title {
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 20px;
}

#copy {
  margin-top: 40px;
  background-color: #3c8543;
  color: #edf5f1;
  padding: 10px 0 30px 0;
}

#copy p {
  margin: 0 auto;
  width: 1000px;
  text-align: center;
  line-height: 2;
 font-size: 1.2rem;
}

/* ▼お天気ページ（サンプル）▼ */
#main-column .weather{
margin-bottom:10rem;
}

.weather h1 {
font-size: 2.4rem;
line-height: 1.4;
font-weight: 700;
padding-bottom: 10px;
}

.weather-nav ul {
border-top: 1px solid #8fc995;
border-bottom: 1px solid #8fc995;
padding: 1em 1em 0.5em 1em;
}

.weather-nav ul li {
display:inline-block;
padding-bottom: 0.5em;
}

.weather-nav ul li a {
font-size: 1.4rem;
padding-left: 1.2em;
position: relative;
margin-right: 1.5em;
}

.weather-nav ul li a:before {
content: "";
display: inline-block;
position: absolute;
top: 30%;
left: 0.3em;
width: 5px;
height: 5px;
border-top: 1px solid #4aa453;
border-right: 1px solid #4aa453;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.weather .heading {
margin-bottom:2rem;
border-bottom: 1px solid #ccc;
padding-bottom: 0.6em;
line-height: 1;
}

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

span.weekly-link {
float:right;
font-size:1.2rem;
}

span.weekly-link a {
font-size: 1.2rem;
background-color: #666;
color: #fff;
padding: 0.5em 1em;
}

.weekly-heading {
margin:60px 0 0 0;
}

#area0-weather,
#area1--weather,
#area2--weather,
#area3--weather,
#area4--weather,
#area5--weather,
#area6--weather{
padding-top:50px;
}
.weather .today{
float:left;
width:48%;
}
.weather .tomorrow{
float:right;
width:48%;
}
.weather .today .heading,.weather .tomorrow .heading{
text-align:center;
border:none;
margin-bottom:1rem;
}
.weather .heading span{
font-size:2rem;
}
.weather .today .heading span,.weather .tomorrow .heading span{
border:none;
padding:0 0 4px;
border-bottom:1px dashed #909090;
font-size:2rem;
font-weight:300;
display:inline;
color: #4aa453;
}
.weather .weekly{
clear:both;
padding-top:50px;
}

.weather .weekly.first {
padding-top:30px;
}

.weather .weather-icon{
width:25%;
margin:0 auto 10px;
}
.weather .weather-icon img{
width:100%;
display:block;
}
.weather .temp{
font-size:1.4rem;
text-align:center;
margin-bottom:10px;
}
.weather .temp span{
padding:0 6px;
}
.weather .hot{
color:#ffae95;
}
.weather .cold{
color:#2361ad;
}
.weather .rain{
font-size:1.2rem;
width:100%;
border:1px solid #efefef;
}
.weather .rain .time{
background:#f8f8f8;
border:1px solid #efefef;
}
.weather .rain th{
text-align:center;
vertical-align:middle;
font-weight:300;
}
.weather .rain td{
text-align:center;
vertical-align:middle;
font-weight:200;
}
.weather .weekly table{
width:99.5%;
margin:0 auto;
border-collapse: separate;
border-spacing: 2px;
border:1px solid #efefef;
}
.weather .weekly table td{
text-align:center;
vertical-align:middle;
font-size:1.2rem;
}
.weather .weekly table tr td:first-child{
text-align:left;
width:17%;
font-weight:300;
background-color:#f8f8f8;
font-size:1.4rem;
}
.weather .weekly table tr:first-child td{
background-color:#f8f8f8;
}
.weather .weekly table td img{
width:45px;
}
.weather .alart .heading{
margin-bottom:1rem;
}
/* ▲お天気ページ▲ */

/* ▼ フォトギャラリー ▼ */
.gallery-heading {
  padding-bottom: 10px;
  border-bottom: 2px solid #bfbfbf;
  margin-bottom: 30px;
}

.gallery-heading .pubdate {
  color: #808080;
  text-align: right;
  font-size: 1.2rem;
  margin-top: 15px;
}

.gallery-heading h1 {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
}

.gallery-heading h1 span.sub {
  display:block;
  border-left: 1rem solid #4aa453;
  padding: 0 0 0 0.5rem;
  font-size: 1.2rem;
  line-height: 1;
  margin-bottom: 15px;
}

.gallery-heading-category {
  position: relative;
  margin-top: 40px;
}

.gallery-heading-category .sub-heading {
  width: 85%;
}

.gallery-heading-category .more {
  position: absolute;
  bottom: 0;
  right: 0;
  text-align: right;
  font-size: 1.3rem;
  width: 15%;
  text-decoration: underline;
}

#main-photo-area{
position:relative;
clear:both;
margin:20px auto;
padding:0px;
font-size:1.3rem;
line-height:1.4em;
overflow:hidden;
}
#main-photo{
position:relative;
margin:0px auto;
height:450px;
}
#main-photo .photo{
position:relative;
width:100%;
height:100%;
margin:auto;
background-color:transparent;
margin-bottom:10px;
display:none;
}
#main-photo .photo.current{
display:block;
}
#main-photo .photo .photo-frame{
display:block;
position:relative;
background-color:#fff;
}
#main-photo .photo.current .photo-frame{
background-color:#fff;
cursor:pointer;
}
#main-photo .photo img{
max-width: 100%;
max-height: 100%;
margin: auto;
display: block;
}
#main-photo .photo .caption{
display:none;
}
#main-photo .photo.current .caption{
display:block;
width:100%;
margin-top:10px;
}
#main-photo .photo.current .caption .text{
font-size:1.6rem;
line-height:1.6;
}
#main-photo .photo .link{
display:block;
text-align:right;
font-weight: 600;
font-size:1.3rem;
text-decoration:underline;
}
#main-photo-area .next{
position: absolute;
top: 170px;
right: 0px;
width: 30px;
height: 30px;
cursor: pointer;
text-indent: -100em;
background: url(/common/soon/images/v1/common/carousel-right64_gray.svg) no-repeat left top;
background-size: 30px;
}
#main-photo-area .prev{
position: absolute;
top: 170px;
left: 0px;
width: 30px;
height: 30px;
cursor: pointer;
text-indent: -100em;
background: url(/common/soon/images/v1/common/carousel-left64_gray.svg) no-repeat left top;
background-size: 30px;
}

ul.small-block-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul.small-block-list li {
  width: 155px;
  margin-bottom: 40px;
}

ul.small-block-list li{
  margin-right: 16.6px;
}

ul.small-block-list li .thumb {
  width: 155px;
  height: 155px;
  background-color: #ccc;
}

ul.small-block-list li .caption,
ul.small-block-list li .title {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 10px;
}

ul.small-block-list li .link {
  width: 100%;
  margin-top: 10px;
}

ul.small-block-list li .link a {
  margin: 0 auto;
  border: 1px solid #4aa453;
  border-radius: 6px;
  color: #4aa453;
  display: block;
  width: 100%;
  height: 42px;
  font-size: 1.3rem;
  padding: 10px;
  background-color: #fff;
}

ul.small-block-list li .link a:hover {
  color: #fff;
  background-color: #4aa453;
}

ul.small-block-list li .link a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

ul.small-block-list li .link a:hover span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
}

/* ▲ フォトギャラリー ▲ */

/* ▼ 静的ページ ▼ */
.static{
  margin-bottom: 30px;
}
.static h1 {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 20px;
}

.static h2 {
  font-size: 2.0rem;
  line-height: 1.4;
  font-weight: 700;
  border-top: 2px solid #666;
  border-bottom: 2px solid #666;
  padding: 15px 20px;
  width: 100%;
}

.static h3 {
}

.static h3:before {
    content: "";
    display: inline;
    height: 25px;
    background-color: #fff;
    padding-right: 0.6rem;
    width: 4px;
    border-left: 4px solid #4aa453;
}

.static h4:before {
  display: none;
}
/* ▲ 静的ページ ▲ */

/* ▼特設サイト（共通部分）▼ */
#site-navi_outer {
  background-color: #fff;
  border-bottom: 5px solid #dae3de;
}

#site-navi {
  display: table;
  width: 1000px;
  margin: 0 auto;
  padding: 10px 0 5px 0;
}

#site-navi .logo {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}

#site-navi .logo img {
  width: 210px;
  height: 26px;
}

#site-navi .primary-navi {
  text-align: right;
  display: table-cell;
  vertical-align: middle;
}

#site-navi .primary-navi li {
  display: inline-block;
  margin-left: 10px;
}

#site-navi .primary-navi li a {
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top left;
  background-repeat: no-repeat;
  padding: 0 0 3px 10px;
  display: block;
  font-size: 1.2rem;
}

#original-feature-header {
  padding: 0 0 30px 0;
}

#original-feature-header h1 {
  text-align: center;
}

#original-feature-header h1 img {
  width: 210px;
  display: inline;
}

#original-feature-header .copy {
  font-size: 1.2rem;
  display: block;
  padding-top: 0.5rem;
}

#original-feature-menu {
  width: 1000px;
  margin: 0 auto 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #f1f1f1;
  /* ▲サイトごとに要変更。▲ */
}

#original-feature-menu li {
  width: calc(100% /6);
  /* ▲サイトごとに要変更。▲ */
  padding: 10px 0;
  text-align: center;
  font-size: 1.4rem;
//  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
  /* ▲サイトごとに変更可。▲ */
  font-weight: 600;
}

#original-feature-menu li:not(:first-child) {
  border-left: 2px solid #fff;
}

#original-feature-pickup {
  margin-bottom: 30px;
}

#original-feature-pickup img {
  max-width: 100%;
  display: block;
}

#original-feature-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#original-feature-list ul li {
  width: 210px;
  background-color: #fff;
  margin-bottom: 40px;
}

#original-feature-list ul li:not(:nth-child(3n)) {
  margin-right: 20px;
}

#original-feature-list ul li a {
  display: block;
}

#original-feature-list ul li a .thumb {
  width: 210px;
  height: 210px;
  background-color: #f1f1f1;
}

#original-feature-list ul li a .text {
  padding: 1rem 1.5rem;
}

#original-feature-list ul li a .title {
  font-size: 1.6rem;
  margin-top: 10px;
}

#original-feature-list ul li a:hover .title {
  text-decoration: underline;
}

#original-feature-list ul li a .date {
  text-align: right;
  padding: 5px 0 0 0;
  font-size: 1.2rem;
  color: #808080;
}

.original-feature-bnr-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 670px;
  margin-bottom: 40px;
}

.original-feature-bnr-list ul li {
  width: 210px;
  margin-bottom: 20px;
}

.original-feature-bnr-list ul li:not(:nth-child(3n)) {
  margin-right: 20px;
}

.original-feature-bnr-list ul li img {
  width: 210px;
}

.original-feature-contents .department {
  font-weight: 600;
  font-size: 1.6rem;
}

.original-feature-contents .add {
  font-size: 1.4rem;
}

.department-list {
  display: table;
  width: 670px;
  margin-top: 20px;
}

.department-list li {
  display: table-cell;
  width: 50%;
  font-size: 1.4rem;
  border-left: 5px solid #ccc;
  padding-left: 15px;
}

/* ▲特設サイト（共通部分）▲ */
/* ▼ASPO用▼ */
.aspo #original-feature-menu {
  background-color: #fff0f5;
}

.aspo #original-feature-menu li {
  width: calc(100% /3);
  /* サイトごとに要変更。 */
}

.aspo .subtitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #f25f71;
  font-size: 1.6rem;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
  font-weight: 600;
  margin-bottom: 20px;
}

.aspo .subtitle:before,
.aspo .subtitle:after {
  content: '';
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 2px;
  background: #f25f71;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
}

.aspo .subtitle:before {
  margin-right: 20px;
}

.aspo .subtitle:after {
  margin-left: 20px;
}

.aspo #original-feature-list ul li {
  background-color: #fff0f5;
}

.feature-about {
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: bottom;
  background-repeat: repeat-x;
  padding-bottom: 30px;
}

.feature-about .text {
  font-size: 1.4rem;
  line-height: 1.8;
}

ul#aspo-paper {
  margin-bottom: 30px;
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: bottom;
  background-repeat: repeat-x;
  padding: 30px 0 10px 0;
}

#aspo-paper li {
  clear: both;
  margin-bottom: 20px;
}

#aspo-paper li:after {
  content: " ";
  display: block;
  clear: both;
}

#aspo-paper li .thumb {
  float: right;
  margin: 0 0 10px 10px;
  width: 40%;
}

#aspo-paper li .thumb img {
  width: 100%;
}

#aspo-paper li .copy {
  font-size: 1.3rem;
  margin-top: 1rem;
}

#aspo-paper .pink-title a {
  color: #f25f71;
  font-size: 1.4rem;
  font-weight: 600;
}

#aspo-paper .pink-title a span {
  display: inline-block;
  color: #fff;
  background-color: #f25f71;
  padding: 1px 8px;
  margin-left: 1rem;
  font-size: 1.2rem;
  font-weight: normal;
}

#aspo-paper .blue-title a {
  color: #5eb0f2;
  font-size: 1.4rem;
  font-weight: 600;
}

#aspo-paper .blue-title a span {
  display: inline-block;
  color: #fff;
  background-color: #5eb0f2;
  padding: 1px 8px;
  margin-left: 1rem;
  font-size: 1.2rem;
  font-weight: normal;
}

.ad-info .thumb {
  text-align: center;
}

.ad-info .thumb img {
  width: 100px;
}

.ad-info .btn {
  margin-top: 20px;
}

.ad-info .btn a {
  margin: 0 auto;
  text-align: center;
  border: 1px solid #f25f71;
  border-radius: 6px;
  display: block;
  width: 250px;
  height: 42px;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  color: #fff;
  background-color: #f25f71;
}

.ad-info .btn a:hover {
  background-color: rgba(242, 95, 113, 0.5);
}

.ad-info .btn a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

/* ▼しもつけ21フォーラム用▼ */
.forum .forum-logo img {
  width: 500px;
}

.forum #original-feature-menu {
  background-color: #004ea3;
}

.forum #original-feature-menu li {
  color: #ffffff;
  width: calc(100% /5);
  /* サイトごとに要変更。 */
}

.forum #original-feature-menu li a {
  color: #ffffff;
}

.forum .subtitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #004ea3;
  font-size: 1.6rem;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
  font-weight: 600;
  margin-bottom: 20px;
}

.forum .subtitle:before,
.forum .subtitle:after {
  content: '';
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 2px;
  background: #004ea3;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
}

.forum .subtitle:before {
  margin-right: 20px;
}

.forum .subtitle:after {
  margin-left: 20px;
}

.forum #original-feature-list ul li {
  background-color: #f5f0ff;
}

.forum #archive-menu table {
  width: 640px;
  margin: 20px auto;
  table-layout: fixed;
  font-size: 14px;
}

.forum #archive-menu table tr {
  background-color: #004ea3;
  border: 1px solid #fff;
  padding: 5px 0;
  text-align: center;
}

.forum #archive-menu table td {
  padding: 5px 0;
  border: 1px solid #fff;
  text-align: center;
}

.forum #archive-menu table td a {
  color: #fff;
}

.forum #archive-menu table td span {
  font-size: 0.8rem;
}

.forum #forum-info {
  width: 300px;
  padding: 20px;
  background-color: #f5f0ff;
}

.forum .forum-footer {
  width: 1000px;
  margin: 20px auto;
}

.forum .forum-footer .forum-about {
  background-color: #004ea3;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  width: 600px;
  height: 200px;
  padding: 20px;
  float: left;
}

.forum .forum-footer .forum-contact {
  background-color: #004ea3;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 300;
  width: 400px;
  height: 200px;
  padding: 20px;
  float: left;
}

.forum .forum-footer .forum-clear {
  clear: left;
}

.forum #next-forum {
  margin-bottom: 20px;
}

.forum #forum-member a {
  font-size: 1.4rem;
  font-weight: 600;
  color: #004ea3;
}

.forum #forum-syuzai a {
  font-size: 1.4rem;
  font-weight: 600;
  color: #ffffff;
}

/* ▼採用案内ページ用▼ */
.recruit .recruit-logo {
padding:10px
}

.recruit #original-feature-menu {
  background-color: #004ea3;
  z-index:10;
}

.recruit #original-feature-menu li {
  color: #ffffff;
  width: calc(100% /5);
  position: relative;
  z-index:10;
}

.recruit #original-feature-menu li a {
  color: #ffffff;
}

.recruit #original-feature-menu li ul{
  position: absolute;
  visibility: hidden;
  top: 42px;
  width: 100%;
  background: rgba(0,143,67,0.8);
  z-index:10;
}

.recruit #original-feature-menu li:hover ul{
  top: 42px;
  visibility: visible;
}

.recruit #original-feature-menu li ul li{
  border-left: none;
  width: 100%;
}

.recruit #original-feature-list ul li {
  width: 170px;
  margin-right: 20px;
}

.recruit #original-feature-list ul li .thumb a {
  width: 170px;
  height: 170px;
}

.recruit #original-feature-list ul li .thumb a img {
  width: 170px;
  height: 170px;
}

.recruit .recruit-title {
  font-size: 3rem;
  font-weight: 800;
  border-bottom: 3px solid #004ea3;
  margin-bottom: 30px;
}

.recruit #member-title {
  font-size: 3.0rem;
  font-weight: 700;
  border: none;
  text-align: center;
  width: 100%;
}

.recruit #member-name {
  text-align: right;
}

.recruit #footer-menu {
  background-color: #004ea3;
}

.recruit #footer-menu-inner {
  width: 1100px;
  margin-bottom: 50px;
}

.recruit #footer-menu-inner ul {
  width: calc(920px / 5);
}

.recruit #footer-menu-inner ul li a {
  color: #fff;
  text-decoration: underline;
  font-size: 1.6rem;
}

.recruit #footer-menu-inner ul li.cat_title {
   color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.recruit #footer-menu-inner ul li:not(.cat_title) {
  margin-left: 1rem;
}

.recruit #recruit-contact {
  width: 520px;
  margin: 0 auto;
  color: #fff;
  text-align: center;
}

.recruit #recruit-contact p {
  text-align: center;
}

.recruit #recruit-box {
  max-width: 520px;
  margin: 0 auto 10px auto;
  padding: 5px;
  text-align: center;
  border: 1px solid #6695c8;
  font-size:1.6rem;
}

#recruit-add {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 10px;
}

#recruit-add a {
  color:#fff;
  text-decoration: underline;
}

#recruit-tel {
  width: 48%;
  margin-right: 4%;
}

#recruit-tel:before {
  content: url(/common/soon/images/v1/common/recruit-tel.png);
  display: block;
  opacity: 0.4;
}

#recruit-mail {
  width: 48%;
}

#recruit-mail:before {
  content: url(/common/soon/images/v1/common/recruit-mail.png);
  display: block;
  opacity: 0.4;
}


.recruit .recruit-note {
  margin: 10px 0px;
  padding: 10px;
  background-color: #faeaeb;
}

.recruit table, th, td {
  font-size: 1.6rem;
}

.recruit .indent {
  width: 80%;
  margin: 0 auto;
}

.recruit #copy {
  background-color: #004ea3;
}

.recruit #copy p {
  border-top: 2px solid #6695c8;
  padding-top: 20px;
}

/* ▼企業ページ用スキン▼ */
.company #original-feature-header h1 img{
width:320px;
}
.company  #original-feature-menu li{
background-color:#8fc995;
}
.company  #original-feature-menu li:hover{
background-color:#2a6330;
color:#fff;
}
.company  #original-feature-menu li:hover a{
color:#fff;
}

/* ▲企業ページ用スキン▲ */


/* WEB写真館 */
form.pstudio {
  margin-bottom: 40px;
}

.pstudio-item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 30px;
}

ul.order-item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0;
    overflow: hidden;
}

.pstudio-item li {
  width: 126px;
  margin-bottom: 20px;
}

.order-item li {
  width: 126px;
}

.pstudio-item li:not(:nth-child(5n)) {
  margin-right: 10px;
}

.pstudio-item li .thumb,
.order-box li .thumb {
  position:relative;
  width: 126px;
  height: 95px;
  background-color: #efefef;
  margin: auto;
}

.pstudio-item li .thumb img,
.order-item li .thumb img{
  position: absolute;
  display: block;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom:0;
  display: block;
}

.pstudio-item .order {
  font-size:1.3rem;
  text-align: center;
  margin-top: 0.5rem;
}

.pstudio-item .order label{
  cursor:pointer;
}

.pstudio-item .order input[type="checkbox"]{
  margin-right:10px;
}

.order-btn {
  text-align: center;
  width: 100%;
  margin:40px 0;
}

.order-btn input {
  text-align: center;
  width: 130px;
  background-color: #666666;
  color: #fff;
  border: none;
  height: 30px;
  margin:0 10px;
  cursor:pointer;
}

.order-box {
  background-color: #f1f1f1;
  padding:20px 50px;
  position:relative;
 }
 
.order-box .bx-wrapper {
  margin: auto;
}

.order-box .next {
  position: absolute;
  background-position: left;
  bottom: 70px;
  left: 10px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-left64_gray.svg");
}

.order-box .prev {
  position: absolute;
  background-position: right;
  bottom: 70px;
  right: 10px;
  background-repeat: no-repeat;
  padding: 15px;
  background-size: 30px 30px;
  background-image: url("/common/soon/images/v1/common/carousel-right64_gray.svg");
}
 
.pstudio-subtitle {
  font-size: 2.2rem;
  line-height: 1.4;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.order-box-title {
  font-size: 2.2rem;
  line-height: 1.4;
  font-weight: 600;
  margin-bottom: 1rem;
}

.pstudio .attention {
  color: #ff0000;
}

.pstudio-regist a {
    background-color: #f2852c;
    color: #fff;
    width: 310px;
    min-height: 44px;
    padding: 1rem;
    text-decoration: none;
    display: block;
    font-size: 1.5rem;
    text-align: center;
    -webkit-box-shadow: 0 2px 0px #ccc;
    box-shadow: 0 2px 0px #ccc;
    margin:0 auto;
}

/* ▼トップインタビュー▼ */
#top-interview-list {
  width: 100%;
  margin: 50px 0 30px 0;
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: top;
  background-repeat: repeat-x;
  padding: 30px 0 0 0;
}

#top-interview-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#top-interview-list ul li {
  width: 184px;
  background-color: #fff;
  margin-bottom: 40px;
}

#top-interview-list ul li:not(:nth-child(5n)) {
  margin-right: 20px;
}

#top-interview-list ul li a {
  display: block;
}

#top-interview-list ul li a .thumb {
  width: 184px;
  height: 120px;
  background-color: #f1f1f1;
  position: relative;
}

#top-interview-list ul li a .thumb img {
  position: absolute;
  display: block;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
  right: 0;
}

#top-interview-list ul li a .text {
  padding: 1rem;
}

#top-interview-list ul li a .title {
  font-size: 1.4rem;
  font-weight: 600;
}

#top-interview-list ul li a .link {
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top left;
  background-repeat: no-repeat;
  padding: 0 0 3px 10px;
  display: block;
  font-size: 1.2rem;
  margin-top:0.5rem;
  color:#4aa453;
  text-decoration: underline;
}

/* 特集カンバン */
.spdef-signage{
margin-bottom:1.5rem;
}

.spdef-signage .info-title{
font-size:1.6rem;
font-weight:700;
line-height:1.6;
margin-top:1rem;
padding-left:1rem;
}

.spdef-signage .info-summary{
font-size:1.6rem;
line-height:1.6;
margin-top:1rem;
padding-left:1rem;
margin-bottom:1.5rem;
}

/* 特集テーマトップ */

.feature-heading {
  margin: 0px 5px;
  font-size: 1.6rem;
  font-weight: 700;
}

.feature-heading .feature-link {
  float: right;
  font-size: 1.5rem;
}

/* 高校野球特集(hsbp)トップ */
body.hsbp .spdef-signage {
  margin-bottom: 3rem;
}

body.hsbp .feature-heading {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1;
  margin: 0 0 30px 0;
}

.tournament-wrapper,
.hsbp-team-wrapper,
.hsbp-body-wrapper {
  margin-bottom: 60px;
}

.tournament-heading {
  clear:both;
  background-color: #666;
  padding: 1rem 1.5rem;
  color: #fff;
  font-size: 1.8rem;
}

.tournament-heading:after {
  content:" ";
  display:block;
  clear:both;
}

.tournament-heading span {
  background-color: #262626;
  font-size: 1.4rem;
  display: inline-block;
  padding: 2px 12px;
  margin-left:1rem;
  float: right;
}

.tournament-block ul {
  border-top: 1px solid #262626;
  border-bottom: 1px solid #262626;
  padding: 0.5em 0em 0 0em;
  margin-top: 1px;
}

.tournament-block ul li {
  display:inline-block;
  padding-bottom: 0.5em;
}

.tournament-block ul li:before,
ul.hsbp-schedule li:before,
ul.hsbp-columns li:before,
ul.hsbp-team li:before {content: none;}

.tournament-block ul li a {
  font-size: 1.4rem;
  padding-left: 1.2em;
  position: relative;
  margin-right: 0.5em;
  text-decoration: none;
}

.tournament-block ul li a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 30%;
  left: 0.3em;
  width: 5px;
  height: 5px;
  border-top: 1px solid #4aa453;
  border-right: 1px solid #4aa453;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.tournament-block h3 {
  padding-top:1em;
}

.hsbp-heading {
    padding-bottom: 10px;
    border-bottom: 2px solid #bfbfbf;
    margin-bottom: 30px;
}

.hsbp-heading h1 {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
}

.hsbp-heading h1 span.sub {
  display:block;
  border-left: 1rem solid #262626;
  padding: 0 0 0 0.5rem;
  font-size: 1.2rem;
  line-height: 1;
  margin-bottom: 15px;
}
ul.hsbp-schedule {
  margin-left:2rem;
}

ul.hsbp-schedule li {
  display:inline-block;
  font-size:1.5rem;
  padding-top:0.1em;
  padding-right: 2em;
}

ul.hsbp-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul.hsbp-columns li {
  display:block;
  font-size:1.5rem;
  padding-top:0.5em;
  padding-left: 1em;
  width: 50%;
}

ul.hsbp-team {
  margin-left:2rem;
}

ul.hsbp-team li {
  padding-right:2em;
  font-size:1.5rem;
  padding-top:0.5em;
}

body.hsbp table.team td {text-align: center;}
body.hsbp table.team td a {text-decoration: none;}
body.hsbp table.team td a:hover {text-decoration: underline;}
body.hsbp table.team td .team-sn a {
  font-size: 1.2rem;
  text-decoration: none;
  position: relative;
  background-color: #4aa453;
  border: 1px solid #4aa453;
  color: #fff;
  border-radius: 16px;
  padding: 0.2em 0.8em;
}

body.hsbp table.team td .team-sn a:hover {
   color: #4aa453;
   background-color: #fff;
}

ul.team-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
  border-left: 1px solid #f2f2f2;
}

ul.team-list li {
  width: calc(100% / 6);
  padding: 12px;
  color: #4aa453;
  font-size: 1.6rem;
  font-weight: bold;
  border-top: 1px solid #f2f2f2;
  border-bottom: 1px solid #f2f2f2;
  border-right: 1px solid #f2f2f2;
}

ul.team-list li:nth-child(n + 7) {
  border-top: none;
}

ul.team-list li:before {
  content: none;
}

ul.team-list li a {
  text-decoration: none;
}

.team-sn a {
  font-size: 1.2rem;
  text-decoration: none;
  position: relative;
  background-color: #4aa453;
  border: 1px solid #4aa453;
  font-weight: normal;
  color: #fff;
  border-radius: 16px;
  padding: 0.2em 0.8em;
}

.team-sn a:hover {
   color: #4aa453;
   background-color: #fff;
}

body.hsbp h2.past {
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: top;
  background-repeat: repeat-x;
  padding-top: 30px;
}

body.hsbp .more-link { margin-bottom:20px;}
body.hsbp .more-link a {
  text-align: right;
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 1rem 0 1rem 1rem;
  text-decoration: underline;
}

body.hsbp .more-link a:after {
  content: ">>";
  font-weight: normal;
  display: inline-block;
  padding: 0 0 0 0.5rem;
  font-size: 1.2rem;
  opacity: 0.9;
  text-decoration: none;
}

body.hsbp .more-link a:hover {
  text-decoration: none;
}

.hsbp-tab-list {
  display: none;
}

.hsbp-tab-list.current {
 display: block;
}

.hsbp-tab {
  overflow: hidden;
  border-top: 1px solid #b2b2b2;
  border-bottom: 1px solid #b2b2b2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.hsbp-tab li {
  width: 50%;
  padding: 8px 0;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 600;
  color: #999999;
  background-color: #f2f2f2;
  cursor: pointer;
}
.hsbp-tab li.current {
  color: #43944b;
  background-color: #fff;
}

/* 特集トップ */
.feature-unit .feature-article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.feature-unit .feature-article li {
  width: 325px;
  margin-bottom: 40px;
}

.feature-unit .feature-article li:not(:nth-child(2n)) {
    margin-right: 20px;
}

.feature-unit .feature-article li .thumb {
  width: 100%;
  height: 58px;
}

.feature-unit .feature-article li .thumb img {
  display: block;
  margin: auto;
  width: 100%;
  height: 100%;
}

.feature-article li h2 {
  font-size: 1.8rem;
  font-weight: normal;
  margin-top: 0.5rem;
}

.feature-article li h2 a:hover {
  text-decoration: underline;
}

/* ▼SPRIDE[スプライド]▼ */
.spride #contents {
  margin: 0 auto;
  width: 1000px;
  background-color: #fff;
}

.spride-inner {
  padding: 20px 20px 0 20px;
}

.spride #breadcrumb {
  padding: 20px;
}

#spride-header {
  width: 100%;
  margin-bottom: 30px;
}

#spride-header h1 {
  width: 840px;
  margin: 0 auto;
}

#spride-header h1 img {
  max-width: 100%;
  display: block;
}

.spride-about {
  padding: 40px 80px;
  margin-top: 30px;
}

.spride-about p {
  margin-bottom: 2rem;
  line-height: 1.9;
}

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

.spride .latest h2 {
  display: inline-block;
}

.spride .latest .image {
  float: left;
  width: 300px;
  margin-right: 20px;
}

.spride .latest .image a {
  display: block;
}

.spride .latest .image a img {
  box-shadow: 0 0 5px #ccc;
}

.spride .latest .text {
  width : calc(100% - 320px) ;
  float: right;
}

.spride .latest .date {
  font-weight: 600;
}

.spride .latest .btn {
  margin-top: 20px;
}

.spride .latest .btn a {
  text-align: center;
  border: 1px solid #666464;
  display: inline-block;
  min-width: 320px;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  color: #fff;
  background-color: #666464;
  text-decoration: none;
}

.spride .latest .btn a:hover {
  background-color: #262626;
}

.spride .latest .btn a span {
  background-image: url("/common/soon/images/v1/common/more-btn-icon_white.svg");
  background-position: right;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

ul#spride-archive {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul#spride-archive li {
  width: 130px;
  background-color: #fff;
  margin-bottom: 30px;
}

ul#spride-archive li:not(:nth-child(7n)) {
  margin-right: 15px;
}

ul#spride-archive li {
  display: block;
  list-style: none;
}

ul#spride-archive li .image {
  width: 130px;
  height: 150px;
  position: relative;
  border: 1px solid #f1f1f1;
}

ul#spride-archive li .image img {
  position: absolute;
  display: block;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom:0;
  padding:5px 0;
}

ul#spride-archive li .text {
  background-color: #f1f1f1;
  padding:1rem 1.5rem;
}

ul#spride-archive li .text p {
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
  margin-bottom:0;
}

/* 斜め区切り線 */
.spride-point_wrap {
  padding: 0;
}

.spride-point_wrap p {
  color: #fff;
  line-height: 1.8;
}

.spride-point_wrap.blue {
  background-color: #155183;
}

.spride-point_wrap.gold {
  background-color: #957f47;
}

.spride-point_wrap:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 1000px 0 0;
}

.spride-point_wrap.last:after {
  display: none;
}

.spride-point_wrap.last {
  padding-bottom:50px;
}

.spride-point_wrap.blue:after {
  border-color: #155183 #957f47 transparent transparent;
}

.spride-point_wrap.gold:after {
  border-color: #957f47 #155183 transparent transparent;
}

.spride-point_wrap.reverse:after {
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg);
}

.spride-point_wrap .point-title {
  padding-top:30px;
}

.spride-point_wrap .point-title:after {
  content: " ";
  display: block;
  clear: both;
}

.spride-point_wrap .number {
  padding: 1.5rem 2rem;
  margin-left:0;
  border: 1px solid #f1f1f1;
  display: inline-block;
  position: relative;
  width: 90px;
  height: 70px;
  font-size: 2rem;
  float: left;
}

.spride-point_wrap .number:before {
  content: "point";
  font-size: 1.2rem;
  padding-right: 0.5rem;
}

.spride-point_wrap .number:after {
  border: 1px solid #f1f1f1;
  content: "";
  width: 90px;
  height: 70px;
  display: inline-block;
  position: absolute;
  left: 5px;
  top: 5px;
}

.spride-point_wrap .text {
  float: left;
  padding: 1.5rem 2rem 2rem 2rem;
  margin-left: 30px;
  width: 820px;
}

.spride-point_wrap .title {
  font-size: 2.2rem;
  padding-bottom: 3rem;
  font-weight: bold;
}

.spride .add-box {
  margin: 60px auto;
  width: 70%;
}

/*▼ 会社案内 ▼*/
#sub-column .company-menu {
  margin: 20px 0 40px 0;
  width: 300px;
}

#sub-column .company-menu .company-heading {
  background-color: #666;
  padding: 1rem 1.5rem;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
}

#sub-column .company-menu ul {
}

#sub-column .company-menu ul li {
  border-top: 1px solid #fff;
}

#sub-column .company-menu ul li a {
  padding: 1rem 2.5rem 1rem 1.5rem;
  display: block;
  width: 100%;
  background-color: #f9f9f9;
  font-size: 1.4rem;
  line-height: 1.4;
  position: relative;
}

#sub-column .company-menu ul li a:hover {
  background-color: #d9d9d9;
}

#sub-column .company-menu ul li a:after {
  content: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  padding: 0 10px 3px 0;
  display: inline-block;
  position: absolute;
  right: 0;
  top: 1rem;
}

/*▼ 特集A ▼*/
body.special {
  background-color: #f1f1f1;
}

body.special footer {
  margin-top: 0;
  background-color: #fff;
}

#wrapper.special-type-a #contents {
  margin: 0 auto;
  padding: 20px;
  width: 1040px;
  background-color: #fff;
  box-shadow: 0 0 5px #ccc;
}

#wrapper.special-type-a {
  background-color: #f1f1f1;
}

.special-signage {
  width: 670px;
  margin:0 auto 20px auto;
  #margin-bottom: 20px;
}

.special-signage img {
  max-width: 100%;
}

.special-navi {
  background-color: #fff;
  border-bottom: 1px dotted #262626;
  border-top: 1px dotted #262626;
  padding: 0.5rem 1rem;
  margin-bottom: 20px;
}

.special-navi a {
  font-size: 1.3rem;
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top left;
  background-repeat: no-repeat;
  padding: 0 2rem 0 10px;
  display: inline-block;
  color: #4aa453;
}

.special-navi a:before {
}

.feature-summary {
  width: 300px;
  min-height:100px;
  background: #fff;
  background-image: linear-gradient(135deg, #f2a96d 80px, transparent 0);
}

.feature-summary_bottom {
  padding:0 0 3rem 0;
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: bottom;
  background-repeat: repeat-x;
}

.feature-summary p {
  line-height: 1.8;
  font-size: 1.3rem;
}

.feature-summary p:not(:first-child) {
  margin-top: 1rem;
}

.feature-summary .feature-title {
  font-size: 1.6rem;
  font-weight: 600;
  padding: 1rem 0 2rem 2.5rem;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
}

.feature-summary .feature-title small {
  font-size: 1.1rem;
  font-weight: normal;
  display: block;
  color: #4d4d4d;
  font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
}

.feature-summary .feature-text {
  padding:0 0 0 2.5rem;
}

#sub-column .more-btn a {
  width: 300px;
}

#sub-column #feature-list {
  margin-top: 30px;
}

#sub-column #feature-list ul li:not(:first-child) {
  padding-top: 15px;
}

#sub-column #feature-list ul li a {
  display: block;
}

#sub-column #feature-list ul li a:after {
  content: " ";
  display: block;
  clear: both;
}

#sub-column #feature-list ul li a .text .title {
  font-size: 1.4rem;
  font-weight: 600;
}

#sub-column #feature-list ul li a:hover .title {
  text-decoration: underline;
}

#sub-column #feature-list ul li a .text .subcat {
  font-size: 1.2rem;
  color: #808080;
}

#sub-column #feature-list ul li a .thumb {
  float: left;
  width: 70px;
  height: 70px;
  margin-right: 10px;
}

#sub-column #feature-link {
    margin-top: 30px;
}

.feature-related-article .sub-heading {
  margin-bottom: 2rem;
  width: 670px;
  min-height: 60px;
  background-image: linear-gradient(135deg, #f2a96d 40px, transparent 0);
  padding: 1rem 0 0 1rem;
  border-top: 1px solid #f2a96d;
}

.feature-related-article .sub-heading .feature-name {
  float: left;
  font-size: 1.6rem;
  font-weight: 600;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
}

.feature-related-article .sub-heading:after {
  content: " ";
  display: block;
  clear: both;
}

.feature-related-article .sub-heading span {
  float: right;
  font-size: 1.3rem;
  margin-top: 2rem;
}

.feature-related-article .sub-heading span a {
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top right;
  background-repeat: no-repeat;
  padding: 3px 15px 0 0;
  text-decoration: underline;
  color: #4aa453;
}

.feature-related-article .sub-heading small {
    font-size: 1.1rem;
    font-weight: normal;
    display: block;
    color: #4d4d4d;
    font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
}

.feature-related-article {
  margin-top: 40px;
}

ul.feature-related-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul.feature-related-list li {
  width: 210px;
  background-color: #fff;
  margin-bottom: 40px;
}

ul.feature-related-list li:not(:nth-child(3n)) {
  margin-right: 20px;
}

ul.feature-related-list li a {
  display: block;
}

ul.feature-related-list li a .thumb {
  width: 210px;
  height: 110px;
  background-color: #f1f1f1;
}

ul.feature-related-list li a .text {
  padding: 1rem 0;
}

ul.feature-related-list li a .title {
  font-size: 1.4rem;
}

ul.feature-related-list li a .link {
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top left;
  background-repeat: no-repeat;
  padding: 0 0 3px 10px;
  display: block;
  font-size: 1.2rem;
  margin-top:0.5rem;
  color:#4aa453;
  text-decoration: underline;
}

#feature-link {
  margin-bottom: 30px;
}

.feature-link-box {
  width: 300px;
  padding: 15px 0 30px 0;
  margin-top: 20px;
  border-top: 1px solid #ccc;
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: bottom;
  background-repeat: repeat-x;
}

.feature-link-box:after {
  content: " ";
  display: block;
  clear: both;
}

.feature-link-box .image {
   margin: 0 auto;
   width: 60%;
}

.feature-link-box .image img {
  max-width: 100%;
}

.feature-link-box .copy {
  text-align: left;
  background-color: #262626;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 600;
  padding: 0.5rem 1rem;
  display: inline;
}

.feature-link-box .image {
  margin-top:20px;
}

.feature-link-box .title-area {
  width: 100%;
}

.feature-link-box .title {
  margin-top: 1rem;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 600;
}

.feature-link-box .sub-title {
  text-align: right;
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 1rem;
}

.feature-link-box .text-area {
  padding: 1rem 2rem 1.5rem 2rem;
  position: relative;
  margin:2rem 0;
}

.feature-link-box .text-area:before,
.feature-link-box .text-area:after {
  content: '';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

.feature-link-box .text-area:before {
  border-left: double 3px #262626;
  border-top: double 3px #262626;
  top: 0;
  left: 0;
}

.feature-link-box .text-area:after {
  border-right: double 3px #262626;
  border-bottom: double 3px #262626;
  bottom: 0;
  right: 0;
}

.feature-link-box .text-area p {
  margin-top: 1rem;
  font-size: 1.4rem;
}

.feature-link-box .link-area a {
  background-image: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  background-position: top left;
  background-repeat: no-repeat;
  margin-left:2rem;
  padding: 0 0 3px 10px;
  display: block;
  font-size: 1.3rem;
  margin-top: 0.5rem;
  color: #4aa453;
  text-decoration: underline;
}

.letter {
  background-color: #FAF8F3;
  width: 90%;
  margin: 40px auto;
  padding: 4rem 4rem 6rem;
  -webkit-box-shadow: #cccccc 0px 1px 3px;
          box-shadow: #cccccc 0px 1px 3px;
  background-image: url(/common/soon/images/v1/common/glover-letter-bg.png);
  background-position: top 0 left 3rem;
  background-repeat: repeat-x;
  background-size: 63px 28px;
  position: relative;
}

.letter.continued {
  background-image:
    url(/common/soon/images/v1/common/glover-letter-bg.png),
    url(/common/soon/images/v1/common/TBC-320.png);
  background-position: top 0 left 3rem, bottom 3rem right 3rem;
  background-repeat:  repeat-x, no-repeat;
  background-size: 63px 28px, 160px 25px;
}

.letter p {
  font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
  font-size: 1.7rem;
  line-height: 2.5;
}

.memo {
    margin:50px 0;
    position: relative;
    padding: 2.5rem 3.5rem;
    border-bottom: solid 2px #262626;
}

.memo:before,
.memo:after {
    content: "";
    position: absolute;
    top: -10px;
    width: 2px;
    height: calc(100% + 20px);
    background-color: #262626;
}
.memo:before {left: 10px;}
.memo:after {right: 10px;}
.memo p {}



.memo h3 {
  width: 670px;
  position: absolute;
  top: -10px;
  left: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #4aa453;
  font-size: 1.6rem;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
  font-weight: 600;
  margin-bottom: 20px;
}

.memo h3:before,
.memo h3:after {
  content: '';
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: 2px;
  background: #262626;
  min-width: 3rem;
  display: inline-block;
  vertical-align: middle;
}

.memo h3:before {
  margin-right: 20px;
}

.memo h3:after {
  margin-left: 20px;
}

.special-image {
  position: relative;
  margin-bottom: 30px;
}

.special-image.typeL {
  padding: 0 15rem 0 0;
}

.special-image.typeL .copy {
  top: 40%;
  right: 0;
  text-align: right;
}

.special-image.typeR {
  padding: 0 0 0 15rem;
}

.special-image.typeR .copy {
  top: 40%;
  left: 0;
}

.special-image.typeC-tate {
  padding: 5rem 0 0 0;
}

.special-image.typeC-tate .copy {
  top: 0;
  left: 12%;
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  height: 80%;
}

.special-image img {
  width: 100%;
  height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
  display: block;
}

.special-image .copy {
  position: absolute;
  display: inline;
  color: #fff;
  font-family: Georgia,"ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","游明朝",YuMincho,HGSMinchoE,serif;
}

.special-image .copy p {
  margin-bottom: 0;
  display: inline;
  background-color: rgba(0,0,0,0.8);
  padding:3px;
  font-size:20px
}

.special-prologue {
  border-left: 5px solid #262626;
  padding-left: 15px;
  margin-bottom: 40px;
}

.special-header {
  width: 70%;
  margin: 0 auto;
}

.special-header img {
    max-width: 100%;
}

.special-content_bottom {
  margin: 30px 0;
}

.special-content_bottom h3 {
    border-left: 0.4rem solid #4aa453;
    padding-left: 1rem;
}

.special-content_bottom h3:before {
  display: none;
}

.special-content_bottom {
  margin-bottom: 80px;
  padding-top: 30px;
  background-image: url(/common/soon/images/v1/common/hr.png);
  background-position: top;
  background-repeat: repeat-x;
}

.special-content_bottom .image {
  position: relative;
  width: 100%;
  height: 200px;
}

.special-content_bottom .image:after {
  content: " ";
  display: block;
  clear: both;
}

.special-content_bottom .image img {
  float: right;
  width: 500px;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
  display: block;
}

.article-body .special-content_bottom h2 {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 0.5rem;
  min-width: 320px;
  max-width: 500px;
  border-bottom: 1px solid #4c4c4c;
  display: inline-block;
  position: absolute;
  top: 70px;
  left: 0;
  margin-top: 0;
}
.special-nav,.special-nav.naver{
  margin-bottom:20px;
}
.special-nav ul{
  list-style:none;
  background-color:#4aa453;
  margin:1px 0 0 0;
  padding:0;
  clear:both;
  text-align:center;
}
.special-nav ul li{
  display: inline-block;
  position: relative;
  padding:0px 0px;
}
.special-nav ul li:hover,.special-nav ul li.current{
  background-color:#2a6330;
}
.special-nav ul li a{
  font-size: 1.2rem;
  display: block;
  padding: 4px 18px;
  color: #fff;
  letter-spacing: 0.5px;
  border-left:1px solid #fff;
}
.special-nav ul li:last-child a{
  border-right:1px solid #fff;
}

#feature-related-list_wrap {
  margin-bottom: 60px;
}

/*▼ カテゴリTOPタブ ▼*/
#scrolltabs {
  margin-bottom: 30px;
}

#scrolltabs span,
#scrolltabs li {
  text-align: center;
  font-size: 1.3rem;
}

#scrolltabs span a,
#scrolltabs li a {
  padding-left: 20px;
  padding-right: 20px;
  display: inline-block;
  height: 40px;
}

#scrolltabs span a:hover,
#scrolltabs li a:hover {
  background-color: #fff;
  color: #4aa453;
}

/*▼ topタブ[市町] ▼*/
#town:after {
  content: " ";
  display: block;
  clear: both;
}

#town ul.town-list {
  width: 350px;
  float: left;
}

#town ul.town-list li {
  border-bottom: 1px solid #d9d9d9;
}

#town ul.town-list li:not(:first-child) a {
  padding-top: 10px;
}

#town ul.town-list li a {
  display: block;
  padding-bottom: 10px;
}

#town ul.town-list li .title {
  font-size: 1.6rem;
  color: #333;
  font-weight:bold;
}

#town ul.town-list li a:hover .title {
  text-decoration: underline;
}

#town ul.town-list li .date {
  padding-left: 1rem;
  font-size: 1.2rem;
  color: #808080;
}

#town .town-map {
  float: right;
  width: 300px;
  margin-left: 20px;
  border: 1px solid #dae3de;
}

#town .town-map img {
  display: block;
}

#town .town-map .town-map-heading {
  font-size: 1.4rem;
  font-weight: 600;
  padding: 0.8rem 1.2rem;
  background-color: #666;
  color: #fff;
}

/*▼ topタブ[速報] ▼*/
.newsletter-list ul li {
  border-bottom: 1px solid #d9d9d9;
}

.newsletter-list ul li a {
  display: block;
  padding: 10px 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.newsletter-list ul li a:hover {
  background-color: #f7faf8;
}

.newsletter-list ul li .title {
  font-size: 1.6rem;
  color: #333;
  width: 85%;
  font-weight:bold;
}

.newsletter-list ul li .date {
  font-size: 1.2rem;
  color: #808080;
  width: 15%;
  text-align: right;
}

.newsletter-list ul li.first-article .title {
  font-weight: 600;
}

.newsletter-list ul li.first-article .date {
  font-weight: 600;
  color: #333;
}

.newsletter-list ul li.first-article a:before {
  content: "速報";
  color: #fff;
  background-color: #8fc995;
  display: inline-block;
  width: 5rem;
  text-align: center;
  font-weight: normal;
  font-size: 1.2rem;
  padding: 0.2rem 0;
  margin-right: 1rem;
}

/*▼ テンプレートadd-box ▼*/
.add-box {
  border: 1px solid #dae3de;
  padding: 2rem 2.5rem 1rem 2.5rem;
  position: relative;
  margin: 60px 0;
}

.add-box:before {
  content: '';
  position: absolute;
  left: -1px;
  top: -3px;
  display: inline-block;
  width: 300px;
  height: 5px;
  background-color: #666;
}

.add-box .add-title {
  font-weight: 600;
}

.add-box table {
  width: 80%;
}

.add-box p {
    margin-bottom: 1rem;
}

/*▼ 栃木看護職就職ガイダンス ▼*/
#kango-logo {
  width: 100%;
  background-color: #f067a6;
  margin-bottom: 20px;
}

#kango-logo a {
  padding: 10px;
  display: block;
}

body#kango #signage {
  margin-bottom: 20px;
}

body#kango #signage h1 {
    border-bottom: 4px solid #666;
    padding: 0 0 10px 0;
}

body#kango h2 {
  color: #036eb8;
  font-size: 1.8rem;
  font-weight: 600;
  border: 1px solid #ccc;
  padding: 1rem 2rem;
  margin-left: 2px;
  margin-bottom: 10px;
  position: relative;
}

body#kango h2:before{
  content: "";
  display: inline-block;
  width: 3px;
  height: 60%;
  background-color: #036eb8;
  position: absolute;
  left: -2px;
  top: 20%;
}

#sub-column .kango-menu .heading {
  font-size: 1.4rem;
  font-weight: 600;
  border: 1px solid #ccc;
  padding: 0.5rem 2rem;
  margin-left: 2px;
  margin-bottom: 10px;
  position: relative;
}

#sub-column .kango-menu .heading:before{
  content: "";
  display: inline-block;
  width: 3px;
  height: 60%;
  background-color: #036eb8;
  position: absolute;
  left: -2px;
  top: 20%;
}

#sub-column .kango-menu ul li {
  border-top: 1px solid #fff;
}

#sub-column .kango-menu ul li a {
  padding: 1rem 2.5rem 1rem 1.5rem;
  display: block;
  width: 100%;
  background-color: #f9f9f9;
  font-size: 1.4rem;
  line-height: 1.4;
  position: relative;
}

#sub-column .kango-menu ul li a:hover {
  background-color: #d9d9d9;
}

#sub-column .kango-menu ul li a:after {
  content: url(/common/soon/images/v1/common/icon-link-small_gray.png);
  padding: 0 10px 3px 0;
  display: inline-block;
  position: absolute;
  right: 0;
  top: 1rem;
}

.kango-menu-area {
  background-color: #036eb8;
  padding: 1rem 1.5rem;
  color: #fff;
  font-size: 1.4rem;
}

body#kango #footer-menu {
  background-color: #f2f4f5;
}

body#kango #footer-menu p {
  font-size: 1.4rem;
  text-align: center;
  width: 100%;
}

body#kango #copy {
  margin-top: 0;
  background-color: #036eb8;
}

body#kango .article-body .main-image {
    width: auto;
}


/*▼ テンプレート（h2ユニット） ▼*/
.h2-unit {
  margin-top: 40px;
}

.h2-unit .contents:after {
  content: " ";
  display: block;
  clear: both;
}

.h2-unit .contents .image {
  float: right;
  margin: 0 0 20px 20px;
  padding: 3px;
  -webkit-box-shadow: 0px 0px 3px #cccccc, 0px 0px 1px white inset;
          box-shadow: 0px 0px 3px #cccccc, 0px 0px 1px white inset;
}

.h2-unit table {
  width: auto;
}

.h2-unit table th {
  width: 25%;
}

/*▼ 有料記事ログインボタン ▼*/
.article-body .login-area {
  clear:both;
  background-color: #f1f1f1;
  padding: 30px 10px 30px 20px;
  margin: 30px 0;
}

.article-body .login-area ul li:before {
  display: none;
}

.login-area .carrier-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.login-area .carrier-list li {
    width: 150px;
    margin-right: 10px;
    margin-bottom: 10px;
}

.login-area .carrier-list li a,
.login-submit {
   border: 1px solid #e0e0e0;
    background-color: #fff;
  -webkit-box-shadow: 0 2px 0px #e5e5e5;
          box-shadow: 0 2px 0px #e5e5e5;
  display: block;
  width: 100%;
  min-height: 70px;
  padding-top:40px;
  text-decoration: none;
  text-align: center;
  color: #333;
  font-size: 1.3rem;
  font-weight:bold;
}

.login-submit {
  padding-top: 35px;
}

.login-area .shimotsuke a {
    background-image: url(/common/soon/images/v1/payment/shimotsuke-id.png);
    background-repeat: no-repeat;
    background-position: center top 5px;
    background-size: 120px;
}

.login-area .docomo .login-submit {
    background-image: url(/common/soon/images/v1/payment/logo_docomo.png);
    background-repeat: no-repeat;
    background-position: center top 10px;
    background-size: 120px;
}

.login-area .au .login-submit {
    background-image: url(/common/soon/images/v1/payment/logo_au.png);
    background-repeat: no-repeat;
    background-position: center top 10px;
    background-size: 65px;
}

.login-area .sb .login-submit {
    background-image: url(/common/soon/images/v1/payment/logo_softbank.png);
    background-repeat: no-repeat;
    background-position: center top 13px;
    background-size: 130px;
}

.payment-btn a {
    width: 40%;
    margin:20px auto;
    min-height: 44px;
    padding: 1rem 3rem 1rem 1rem;
    border: 1px solid #4aa453;
    text-decoration: none;
    display: block;
    font-size: 1.4rem;
    text-align: center;
    position: relative;
}

.payment-btn a:after {
    content: "";
    border: 1px solid #4aa453;
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: auto;
    position: absolute;
    top: 16px;
    right: 20px;
    transition: all 0.2s ease-out 0.35s;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    border-top: medium none;
    border-left: medium none;
}

.login-area .sub-heading {
  margin-bottom: 1rem;
}

.login-area .lead {
  margin-bottom: 2.5rem;
  text-align: left;
  font-size: 1.4rem;
}

.login-area .regist a {
  background-color: #f2852c;
  border: 1px solid #f2852c;
  color: #fff;
  border-radius: 6px;
  width: 310px;
  min-height: 44px;
  padding: 1rem;
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  text-align: center;
  -webkit-box-shadow: 0 2px 0px #ccc;
          box-shadow: 0 2px 0px #ccc;
}

.smart-link{
clear:both
}
.smart-link .lead {
  margin-bottom: 1rem;
  text-align: center;
  font-size: 1.5rem;
}

.article-body .smart-link {
  padding:0;
  margin: 60px 0 40px 0;
}

.smart-link .regist {
}

.smart-link .regist a {
  background-color: #f2852c;
  border: 1px solid #f2852c;
  color: #fff;
  border-radius: 0px;
  width: 310px;
  min-height: 44px;
  padding: 1rem;
  margin: auto;
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  text-align: center;
  -webkit-box-shadow: 0 2px 0px #d9d9d9;
          box-shadow: 0 2px 0px #d9d9d9;
}

.smart-link .regist a span {
  background-image: url(/common/soon/images/v1/common/more-btn-icon_white.svg);
  background-position: top 0.7rem right 1rem;
  background-repeat: no-repeat;
  background-size: 8px 8px;
  display: block;
}

.member-lead {
  padding: 0;
  text-indent: 2rem;
  display: block;
  line-height: 1.4rem;
  margin-bottom: 20px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
}

.member-lead .icon img {
  width:16px;
  height:16px;
}

/*▼ topログインエリア ▼*/
#payment-section_outer {
  background-color: #f1f1f1;
}

#payment-section {
  padding:40px 0 40px 200px;
  margin: 40px auto;
  width: 1000px;
  background-image: url(/common/soon/images/v1/common/logo-soon-heading.png);
  background-repeat: no-repeat;
  background-position: left top 40px;
  background-size: 150px;
}

#payment-section:after {
  content: " ";
  display: block;
  clear: both;
}

ul.login-list-main {
  float: left;
  width: 588px;
}

ul.login-list-main li {
  display: inline-block;
  width: 282px;
}

ul.login-list-main li:not(:nth-child(2n)) {
  margin-right: 10px;
}

ul.login-list-main li a {
  padding: 1.5rem 1.5rem 1.5rem 4rem;
  display: block;
  background-color: #fff;
  color: #4aa453;
  position:relative;
  line-height: 1.6rem;
  margin-bottom: 10px;
 -webkit-box-shadow: 0 1px 1px #ccc;
         box-shadow: 0 1px 1px #ccc;
  font-size: 1.4rem;
}

ul.login-list-main li.regist {

}

ul.login-list-main li.regist a {
  background-color: #f2852c;
  color: #fff;
}

ul.login-list-main li a:before {
  content: "";
  position: absolute;
  left: 1.5rem;
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
}

ul.login-list-main li.login a:before {
  background: url("/common/soon/images/v1/payment/icon-login.png") no-repeat;
  background-size: contain;
}

ul.login-list-main li.regist a:before {
  background: url("/common/soon/images/v1/payment/icon-regist_white.png") no-repeat;
  background-size: contain;
}

ul.login-list-main li.member a:before {
  background: url("/common/soon/images/v1/payment/icon-member.png") no-repeat;
  background-size: contain;
}

ul.login-list-main li.alert a:before {
  background: url("/common/soon/images/v1/payment/icon-alert.png") no-repeat;
  background-size: contain;
}

ul.login-list-sub {
  width: 184px;
  float: right;
}

ul.login-list-sub li:not(:first-child) {
  padding-top: 5px;
   font-size: 1.4rem;
}

ul.login-list-sub li a {
  font-size: 1.4rem;
  position: relative;
  padding-left: 1.5rem;
}

ul.login-list-sub li a:hover {
    text-decoration: underline;
}

ul.login-list-sub li a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.payment-lead {
  font-size: 1.4rem;
  position: absolute;
}

#terms {
    padding: 3rem 2rem;
}

#terms p {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 1.5rem;
}

#terms .add-box {
  margin: 20px 0 0 0;
}

#terms .add-box p:first-child {
  margin-top: 0;
}

.modal {
  display: none;
}

#terms ul li {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 0.5rem;
}

.thumb.movie_icon:before{
    z-index: 1;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    background: hsla(0,0%,100%,.7);
}

.thumb.movie_icon:after{
z-index: 2;
    left: 51%;
    border-top: 12px solid rgba(55,199,121,0);
    border-bottom: 12px solid rgba(55,199,121,0);
    border-left: 20px solid #396;
}

.thumb.movie_icon:before,.thumb.movie_icon:after{
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);

}
/*▼ トップ著名人コラム ▼*/
.top-famous-person-column-list {
  display: flex;
  overflow-x: scroll;
  position: relative;
  left: calc(50% - 600px); /* mainと左側の開始位置を合わせる */
  width: calc(100vw - (50vw - 600px) - 40px); /* 右端まで広げる */
}
.famous_person_column_wrapper {
  width: 100%;
  margin-right: 18px;
  margin-bottom: 10px;
}
.famous_person_column {
  background: #fff;
  width: 300px;
  max-hight: 300px;
}
.famous_person_column_img {
  width: 300px;
}
.famous_person_column_content {
  padding: 10px;
}
.famous_person_column_content p {
  margin-bottom:4px;
}
.famous_person_column_title {
  font-size: 1.6rem;
  color: #303945;
  font-weight: 700;
}
.famous_person_column_desc {
  color: #777;
  font-size: 1.2rem;
  line-height: 1.5;
  min-height: 90px;
}
.famous_person_column_article {
  width: 280px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d9d9d9;
}
.famous_person_column_article_title {
  font-size: 1.4rem;
  line-height: 1.2;
  width: 190px;
  font-weight: 500;
}
.famous_person_column_readmore {
  font-size: 1.6rem;
  font-weight: 400;
  display: block;
  width: 250px;
  margin: 0 auto;
  padding: 5px;
  text-align: center;
  border: 1px solid #333;
}
.famous_person_column_readmore:hover {
  border: 1px solid #4aa453;
  background-color: #4aa453;
  color: white;
}
.scroll-btn-left {
    position: absolute;;
    z-index:999;
    background-position: left;
    top: 190px;
    left: -20px;
    background-repeat: no-repeat;
    padding: 15px;
    background-size: 30px 30px;
    background-image: url(/common/soon/images/v1/common/carousel-left64_gray.svg);
}
.scroll-btn-right {
    position: absolute;;
    z-index:999;
    background-position: right;
    top: 190px;
    left: calc(100vw - (50vw - 600px) - 50px);
    background-repeat: no-repeat;
    padding: 15px;
    background-size: 30px 30px;
    background-image: url(/common/soon/images/v1/common/carousel-right64_gray.svg);
}
/*▼ トップバナータイル ▼*/
.topbannertile {
  display:flex;
  justify-content: space-between;
  font-size: 1.2rem;
}
.topbannertile {
  margin:20px auto;
  width:300px
}
.topbannertile div {
  text-align:center;
}
.topbannertile a{
  color:#43944b;
}
.topbannertile img{
  width:140px;
}
