/* .viewer
------------------------- */

.mainslide {
  background: #212121;
}

.mainslide__content {
  margin: 0 auto;
  display: flex;
  width: 100%;
  max-width: 1440px;
}

.viewer {
  margin: 0 auto;
  width: 100%;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 641px) {
  .viewer {
    max-width: 1000px;
    min-height: 503px;
    width: 100%;
    position: relative;
    overflow: hidden;
  }


  .mainslide__video {
    max-width: 1000px;
    width: 100%;
  }

  .viewer ul {
    width: 100% !important;
    overflow: hidden;
    position: relative;
    min-height: 503px !important;
    height: 100%;
  }

  .viewer ul li {
    top: 0;
    left: 0;
    width: 100%;
    min-height: 503px !important;
    height: 100%;
    position: absolute;
  }

  .viewer ul li img {
    width: 100%;
    object-fit: none;
    min-height: 503px !important;
    height: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .mainslide__content {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 1440px;
  }

  .viewer {
    width: 100%;
    position: relative;
    overflow: hidden;
    min-height: auto;
  }

  .mainslide__video {
    max-width: 1000px;
    width: 100%;
  }

  .viewer ul {
    overflow: hidden;
    position: relative;
    height: 100%;
    min-height: auto;
  }

  .viewer ul li {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    min-height: auto;
  }

  .viewer ul li img {
    width: 100%;
    object-fit: contain;
    min-height: auto !important;
  }
}

/* sideNavi
------------------------- */
.viewer .btnPrev, .viewer .btnNext {
  margin-top: -25px;
  top: 50%;
  width: 50px;
  height: 50px;
  position: absolute;
  z-index: 101;
}

.viewer .btnPrev {
  left: 10px;
  /*background: url(../img/btnPrev.png) no-repeat center center;*/
}

.viewer .btnNext {
  right: 10px;
  /*background: url(../img/btnNext.png) no-repeat center center;*/
}

/* =======================================
	ClearFixElements
======================================= */
.viewer ul:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;
}

.viewer ul {
  display: inline-block;
  overflow: hidden;
}

/* ==================================
c o n t e n t
================================== */
.home_content {
  position: relative;
  z-index: 100px;
}

.home_content .contact_btn, .home_content login_btn {
  z-index: 100px;
}

.home_content .topics {
  width: 980px;
  margin: 0 auto;
}

.home_content .topics h2 {
  margin-bottom: 30px;
}

.home_content .topics ul li {
  float: left;
  text-align: center;
  width: 306px;
  margin-right: 30px;
}

.home_content .topics ul li:nth-child(3n) {
  margin-right: 0px;
}

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

/*.home_content .news {
  background: url(/common/img/home/news_back.jpg) no-repeat;
  background-size: cover;
}*/

.home_content .news .news_content {
  width: 980px;
  margin: 0 auto;
  padding-top: 20px;
  padding-bottom: 30px;
}

/* .home_content .news .news_content .news_info {
  background: #fff;
  border: 0.5px solid #000;
  padding: 20px;
  margin-bottom: 30px;
}

.home_content .news .news_content .news_info-title {
  color: #9F241A;
  font-size: 18px;
}

.home_content .news .news_content .news_info p{
  margin-top: 5px;
}

.home_content .news .news_content .news_info-button {
  margin-bottom: 10px;
}

.home_content .news .news_content .news_info-button a{
  background: #485F9E;
  padding: 10px;
  color: #fff;
} */

/* リンク全体 */
.owner_info-link {
  display: block;
  text-decoration: none !important;
}

/* オーナー倶楽部ログイン案内 */
.owner_info {
  width: 600px;
  margin: 0 auto 30px;
  padding: 20px;
  text-align: center;
  background-color: #ECECF6;
  border: 2px solid #3F46A7;
  transition:
    opacity 0.2s ease,
    background-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

/* ★ hover強化：修正版 */
.owner_info:hover {
  background-color: #dcdcf2;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  transform: translateY(-4px);
  cursor: pointer;
}

@media screen and (max-width: 640px) {
  .owner_info {
    width: auto;
    margin: 30px 10px;
  }
}

.owner_info-title {
  color: #EA3737;
  font-size: 24px;
}

.owner_info p {
  margin-top: 20px;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 30px;
  font-weight: bold;
  color: #000;
}


.home_content .news .news_content h2 {
  margin-bottom: 30px;
}

.home_content .news .news_content ul {
  margin-bottom: 30px;
}

.home_content .news .news_content ul li {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #ccc;
}

.home_content .news .news_content ul li .category {
  background: #72a2be;
  padding: 5px;
  color: #FFFFFF;
  font-size: 10px;
}

.home_content .news .news_content .emergency {
  color: #F00;
  border: 2px solid #f00;
  padding: 5px;
}

.home_content .news .news_content .emergency li {
  border: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.slider {
  width: 960px;
  margin: 0 auto;
}

@media screen and (max-width: 640px) {
  .home_content #contactarea {
    display: none;
  }
  .home_content .block {
    margin-left: 10px;
    margin-right: 10px;
  }
  .home_content .topics {
    width: 100%;
  }
  .home_content .topics h2 {
    padding-top: 6px;
    padding-bottom: 5px;
    border: none;
    background: #000 url(../img/common/smt/blue_bg.gif);
    padding-left: 10px;
    color: #FFF;
    font-size: 16px;
    margin-bottom: 10px;
  }
  .home_content .topics h2 img {
    display: none;
  }
  .home_content .topics h2:before {
    content: attr(data-label);
  }
  .home_content .topics .smt_w {
    padding-left: 10px;
    padding-right: 10px;
  }
  .home_content .topics ul li {
    float: left;
    text-align: center;
    width: 48%;
    margin-right: 3%;
  }
  .home_content .topics ul li img {
    width: 100%;
  }
  .home_content .topics ul li p {
    font-size: 10px;
    font-weight: bold;
  }
  .home_content .topics ul li:nth-child(3n) {
    margin-right: 3%;
  }
  .home_content .topics ul li:nth-child(2n) {
    margin-right: 0px;
  }
  .home_content .topics:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
  }
  /*.home_content .news {
    background: url(/common/img/home/news_back.jpg) no-repeat;
    background-size: cover;
  }*/
  .home_content .news .news_content {
    width: 100%;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 30px;
  }
  .home_content .news .news_content h2 {
    padding-top: 6px;
    padding-bottom: 5px;
    border: none;
    background: #000 url(/common/img/common/smt/blue_bg.gif);
    padding-left: 10px;
    color: #FFF;
    font-size: 16px;
    margin-bottom: 10px;
  }
  .home_content .news .news_content h2 img {
    display: none;
  }
  .home_content .news .news_content h2:before {
    content: attr(data-label);
  }
  .home_content .news .news_content ul {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 30px;
  }
  .home_content .news .news_content ul li {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #ccc;
  }
  .home_content .news .news_content ul li .time {
    font-weight: bold;
    font-size: 10px;
  }
  .home_content .news .news_content ul li .category {
    background: #72a2be;
    padding: 5px;
    color: #FFFFFF;
    font-size: 10px;
  }
  .home_content .news .news_content .emergency {
    margin: 0px 10px 10px 10px;
  }
  .home_content .news .news_content ul li .news_text {
    clear: both;
    display: block;
    padding-top: 10px;
  }

  .slider {
    width: 95%;
    padding-left: 10px;
    padding-right: 10px;
    margin: 0 auto;
  }
}

/* ==================================
f a c e b o o k   w i d g e t
================================== */
.fb_widget {
  max-width: 960px;
  margin: 0 auto 60px;
  display: flex;
}

.fb_widget > div.fb-item {
  width: 100%;
  margin-left: 20px;
}

.fb_iframe_widget span {
  width: 100% !important;
}
.fb_widget > div:first-child {
  margin-left: 0px;
}

.fb_widget #sb_instagram {
  width: 100% !important;
}

#main-under .pd > div {
  margin: 0 !important;
}

#sb_instagram .sbi_header_img {
  padding-left: 10px;
  padding-top: 10px;
}

.sbi_header_text {
  padding-left: 10px;
  padding-right: 10px;
  box-sizing: border-box;
}

#sb_instagram .sbi_header_text h3 {
  margin-bottom: 10px !important;
}

#sb_instagram .sbi_bio {
  font-size: 10px;
  height: 37px;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media only screen and (max-width: 640px) {
  .fb_widget {
    max-width: 90%;
    margin: 0 auto 60px;
    display: block;
  }
  .fb_widget > div.fb-item {
    width: 100%;
    margin-bottom: 10px;
    margin-left: 0px;
  }
  .fb_widget iframe {
    width: 100% !important;
  }
}

.fb_widget .fb-page, .fb_widget .fb-page {

}

@media only screen and (max-width: 640px) {
  .fb_widget .fb-page, .fb_widget .fb-page {
    margin-bottom: 30px;
  }
}

/* ==================================
緊急のお知らせ
================================== */
/* .news_emergency {
  background-color: #fff;
  padding: 20px 40px;
  border: 1px solid #000;
  margin-bottom: 30px;
}

.news_emergency-red {
  color: rgb(172, 20, 20);
  font-size: 20px;
  margin-bottom: 20px;
} */

.urgent-notice {
	background-color: #FFE4E4;
	border: 2px solid #EA3737;
	padding: 16px;
	margin-bottom: 24px;
  margin: 0 0 40px 0;
}

.urgent-notice:hover {
	opacity: 0.7;
}

@media screen and (max-width: 640px){
  .urgent-notice {
    margin: 0 10px 40px 10px;
  }
}

.urgent-notice a {
	display: block;
	color: #000;
	font-weight: bold;
	text-decoration: none;
}

.urgent-notice__date {
	margin-right: 8px;
}

.urgent-notice__title{
  font-size: 20px;
  font-weight: bold;
}
