@charset "utf-8";

.grecaptcha-badge {
  bottom: 45% !important;
}

/*#########################################################*\

$タイトル_サイズ・色

\*#########################################################*/

.page h2 {
  border-left: 4px solid #3fa037;
  font-size: 1.875em;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 30px;
  padding: 0.12em 0 0.12em 0.56em;
  position: relative;
}

.page * + h2,
.page * + h3 {
  margin-top: 50px;
}

.page h2 + h3 {
  margin-top: 20px;
}

.page h3 {
  background: rgba(63, 160, 55, 0.1);
  font-size: 1.375em;
  line-height: 1.6;
  margin-bottom: 20px;
  padding: 0.4em 0 0.4em 1.6em;
  position: relative;
}

.page h3:before {
  background: #3fa037;
  border-radius: 50%;
  content: "";
  height: 12px;
  left: 10px;
  position: absolute;
  top: calc(50% - 4px);
  width: 12px;
}

.page h4 {
  border-bottom: 1px dashed #d3d3d3;
  color: #3fa037;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 15px;
  padding: 0 0 15px 25px;
  position: relative;
}

.page h3 .ss,
.page h4.ss,
.page h4 .ss {
  font-size: 0.8em !important;
}

.page h4:before {
  background: #3fa037;
  content: "";
  height: 3px;
  left: 0;
  margin: auto;
  position: absolute;
  top: 37%;
  transform: translateY(-50%);
  width: 10px;
}

.page h4.no:before {
  content: none;
}

.page h5 {
  align-items: center;
  background: #3fa037;
  border-radius: 300px;
  color: #ffffff;
  display: inline-block;
  font-size: 1.063em;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 20px;
  padding: 8px 25px 10px 25px;
  position: relative;
}

.page h6 {
  align-items: center;
  display: flex;
  font-size: 1rem;
  margin-bottom: 0.3em;
}

.page h6::after {
  background-color: #d3d3d3;
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-left: 10px;
}

.page .point_red {
  color: #ff0000;
}

.page .point_big {
  font-size: 1.125em;
  font-weight: 700;
}

/*#########################################################*\

$main

\*#########################################################*/

#topmain {
  margin-bottom: 65px;
  overflow: hidden;
  width: 100%;
}

#topmain .mainIMG img {
  border: 5px solid #ffffff;
  width: 100%;
}

.wpsisac-slick-carousal .slick-dots li button {
  background: #eeeeee !important;
  border: none !important;
  height: 30px;
  opacity: 1 !important;
  width: 30px;
}

#topmain .slick-dots li button {
  background: #eeeeee !important;
  font-size: 15px;
  height: 30px;
  line-height: 30px;
  opacity: 1 !important;
  width: 30px;
}

.wpsisac-slick-carousal.design-6 .slick-dots {
  bottom: -40px !important;
}

.wpsisac-slick-carousal .slick-dots li.slick-active button {
  background: #3fa037 !important;
}

#topmain .slick-dots li.slick-active button {
  background: #3fa037 !important;
}

#kasomain {
  align-items: center;
  background: url(../images/kaso_main.jpg) no-repeat center center;
  display: flex;
  height: 220px;
  justify-content: center;
  position: relative;
}

#kasomain::after {
  background-color: rgba(0, 0, 0, 0.3);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}

#kasomain img {
  height: 220px;
  object-fit: cover;
}

#kasomain h2 {
  color: #ffffff;
  font-size: 2.5em;
  position: relative;
  z-index: 1;
}

/*#########################################################*\

$#Co

\*#########################################################*/

#Co {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 50px auto;
  position: relative;
  width: 1100px;
}

/*#########################################################*\

$#CoL

\*#########################################################*/

#CoL {
  width: 800px;
}

/*#########################################################*\

$#importantNews

\*#########################################################*/

#CoL #importantNews {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 50px 0;
  position: relative;
  width: 100%;
}

#CoL #importantNews .importantNewsInner {
  align-items: center;
  background: #f8f8f8;
  display: flex;
  padding: 20px;
  width: 600px;
}

#CoL #importantNews .importantNewsInner p:last-child,
#CoL #importantNews .importantNewsInner li:last-child,
#CoL #importantNews .importantNewsInner ul {
  margin: 0;
}

#CoL #importantNews .importantNewsInner:first-child {
  background: #fe0000;
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 200px;
}

#CoL #importantNews .importantNewsInner h2 {
  color: #ffffff;
  font-size: 1.25em;
  font-weight: 700;
  text-align: center;
}

#CoL #importantNews .importantNewsInner a {
  color: #333333;
  text-decoration: none;
}

#CoL #importantNews .importantNewsInner a:hover {
  color: #cccccc;
  text-decoration: underline;
}

#CoL #importantNews .importantNewsInner li::before {
  border-color: transparent transparent transparent #fe0000;
}

/*#########################################################*\

$#newsSection

\*#########################################################*/

#newsSection .sectionInner {
  margin-bottom: 50px;
  position: relative;
}

#newsSection .sectionInner .News_ttl {
  align-items: center;
  display: flex;
  margin-bottom: 30px;
}

#newsSection .sectionInner .News_ttl h2 {
  align-items: center;
  display: inline-flex;
  font-feature-settings: "palt" 1;
  font-size: 2.125em;
  line-height: 1;
}

#newsSection .sectionInner .News_ttl h2:after {
  background-color: #b5b5b5;
  content: "";
  display: block;
  height: 1px;
  margin-left: 15px;
  margin-right: 15px;
  width: 40px;
}

#newsSection .sectionInner .News_ttl p {
  color: #3fa037;
  font-size: 0.875em;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0;
}

#newsSection .sectionInner #newsBox .newsBoxInner,
#newsPage .sectionInner #newsBox .newsBoxInner {
  border-bottom: 1px dashed #b5b5b5;
  color: #333333;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
  padding-bottom: 15px;
  text-decoration: none;
  width: 100%;
}

#newsSection .sectionInner #newsBox .newsBoxInner h3,
#newsPage .sectionInner #newsBox .newsBoxInner h3 {
  background: transparent;
  font-size: 1em;
  margin-bottom: 5px;
  width: 26%;
}

#newsSection .sectionInner #newsBox .newsBoxInner p,
#newsPage .sectionInner #newsBox .newsBoxInner p {
  font-size: 1em;
  width: 74%;
}

#newsSection .sectionInner #newsBox .newsBoxInner p:last-child,
#newsPage .sectionInner #newsBox .newsBoxInner p:last-child {
  margin-bottom: 0;
}

#newsSection .sectionInner #newsBox .newsBoxInner:hover p,
#newsPage .sectionInner #newsBox .newsBoxInner:hover p {
  color: #cccccc;
  text-decoration: underline;
}

#newsSection .sectionInner .btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 150px;
}

#newsSection .sectionInner .btn a {
  font-size: 0.875em;
  font-weight: 700;
  padding: 10px;
}

#newsSection .sectionInner .btn a:hover {
  background: #ffffff;
}

/*#########################################################*\

$#InstagramSection

\*#########################################################*/

#InstagramSection .sectionInner {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAACJJREFUGFdjZEACd+7c+c8I44M4KioqjGABGAfEZkTmgAQABPQPmG7J6iQAAAAASUVORK5CYII=)
    repeat;
  border-radius: 10px;
  margin-bottom: 30px;
  padding: 20px;
}

#InstagramSection .sectionInner .InstagramBoxInner {
  background: #ffffff;
  border-radius: 10px;
  margin-bottom: 20px;
  padding: 20px;
}

#InstagramSection .sectionInner .InstagramBoxInner:last-child {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 0;
}

#InstagramSection .sectionInner .InstagramBoxInner:last-child p {
  border-right: 1px solid #cccccc;
  font-size: 1.375em;
  font-weight: 700;
  margin: 0;
  padding: 20px 30px 20px 0;
}

#InstagramSection .sectionInner .InstagramBoxInner:last-child p span {
  color: #ec620c;
}

#InstagramSection .sectionInner .InstagramBoxInner:last-child .ico_sns {
  display: flex;
  margin: 0;
  padding: 0 0 0 30px;
}

#InstagramSection .sectionInner .InstagramBoxInner:last-child .ico_sns li {
  margin: 0 15px 0 0;
}

#InstagramSection
  .sectionInner
  .InstagramBoxInner:last-child
  .ico_sns
  li:last-child {
  margin: 0;
}

#InstagramSection .sectionInner .InstagramBoxInner h2 {
  font-size: 2.125em;
  margin-bottom: 40px;
  text-align: center;
}

#InstagramSection .sectionInner .InstagramBoxInner h2:before {
  background-color: #333333;
  content: "";
  display: inline-block;
  height: 40px;
  margin-right: 8px;
  -webkit-mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%201005%201005%22%20style%3D%22enable-background%3Anew%200%200%201005%201005%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20d%3D%22M295.4%2C6c-53.2%2C2.5-89.5%2C11-121.3%2C23.5c-32.9%2C12.8-60.7%2C30-88.5%2C57.8c-27.8%2C27.8-44.8%2C55.8-57.5%2C88.7%20c-12.3%2C31.8-20.7%2C68.2-23%2C121.4c-2.3%2C53.3-2.9%2C70.3-2.6%2C206.1C2.8%2C639.2%2C3.4%2C656.3%2C6%2C709.6c2.5%2C53.2%2C11%2C89.5%2C23.5%2C121.3%20c12.8%2C32.9%2C30%2C60.7%2C57.8%2C88.5c27.8%2C27.7%2C55.8%2C44.8%2C88.7%2C57.5c31.8%2C12.3%2C68.2%2C20.7%2C121.4%2C23c53.3%2C2.3%2C70.4%2C2.9%2C206.1%2C2.6%20c135.8-0.3%2C152.8-0.9%2C206.2-3.4c53.2-2.5%2C89.5-11.1%2C121.3-23.5c32.9-12.9%2C60.7-30%2C88.5-57.8c27.7-27.8%2C44.8-55.8%2C57.5-88.7%20c12.3-31.8%2C20.7-68.2%2C23-121.4c2.3-53.4%2C2.9-70.4%2C2.6-206.2c-0.3-135.8-0.9-152.8-3.4-206.1c-2.5-53.2-11-89.5-23.5-121.3%20c-12.8-32.9-30-60.7-57.8-88.5c-27.8-27.7-55.8-44.8-88.7-57.5c-31.8-12.3-68.2-20.7-121.4-23c-53.3-2.4-70.4-2.9-206.1-2.6%20C365.8%2C2.8%2C348.8%2C3.4%2C295.4%2C6%20M301.3%2C909.8c-48.7-2.1-75.2-10.2-92.9-17c-23.4-9-40-19.9-57.6-37.3c-17.5-17.5-28.4-34.1-37.5-57.4%20c-6.9-17.6-15.1-44.1-17.4-92.8c-2.5-52.7-3-68.5-3.3-202c-0.3-133.5%2C0.2-149.3%2C2.5-202c2.1-48.7%2C10.2-75.2%2C17-92.8%20c9-23.4%2C19.8-40%2C37.3-57.6c17.5-17.5%2C34.1-28.4%2C57.4-37.5c17.6-6.9%2C44.1-15.1%2C92.8-17.4c52.7-2.5%2C68.5-3%2C202-3.3%20c133.5-0.3%2C149.3%2C0.2%2C202.1%2C2.5c48.7%2C2.1%2C75.2%2C10.2%2C92.8%2C17c23.4%2C9%2C40%2C19.8%2C57.6%2C37.3c17.5%2C17.5%2C28.4%2C34.1%2C37.5%2C57.4%20c6.9%2C17.6%2C15.1%2C44%2C17.4%2C92.8c2.5%2C52.7%2C3.1%2C68.5%2C3.3%2C202c0.3%2C133.5-0.2%2C149.3-2.5%2C202c-2.1%2C48.7-10.2%2C75.2-17%2C92.9%20c-9%2C23.3-19.8%2C40-37.3%2C57.6c-17.5%2C17.5-34.1%2C28.4-57.4%2C37.5c-17.6%2C6.9-44.1%2C15.1-92.8%2C17.4c-52.7%2C2.5-68.5%2C3-202%2C3.3%20C369.8%2C912.6%2C354%2C912.1%2C301.3%2C909.8%20M708.9%2C235.2c0.1%2C33.1%2C27%2C59.9%2C60.1%2C59.9c33.1-0.1%2C59.9-27%2C59.9-60.1%20c-0.1-33.1-27-59.9-60.1-59.9C735.6%2C175.2%2C708.8%2C202.1%2C708.9%2C235.2%20M245.8%2C503C246%2C644.8%2C361.2%2C759.5%2C503%2C759.2%20c141.8-0.3%2C256.5-115.4%2C256.3-257.2C759%2C360.2%2C643.8%2C245.5%2C502%2C245.8C360.2%2C246%2C245.5%2C361.2%2C245.8%2C503%20M335.8%2C502.8%20c-0.2-92%2C74.3-166.8%2C166.3-167c92-0.2%2C166.8%2C74.3%2C167%2C166.3c0.2%2C92-74.3%2C166.8-166.4%2C167C410.8%2C669.3%2C336%2C594.9%2C335.8%2C502.8%22%2F%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%201005%201005%22%20style%3D%22enable-background%3Anew%200%200%201005%201005%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20d%3D%22M295.4%2C6c-53.2%2C2.5-89.5%2C11-121.3%2C23.5c-32.9%2C12.8-60.7%2C30-88.5%2C57.8c-27.8%2C27.8-44.8%2C55.8-57.5%2C88.7%20c-12.3%2C31.8-20.7%2C68.2-23%2C121.4c-2.3%2C53.3-2.9%2C70.3-2.6%2C206.1C2.8%2C639.2%2C3.4%2C656.3%2C6%2C709.6c2.5%2C53.2%2C11%2C89.5%2C23.5%2C121.3%20c12.8%2C32.9%2C30%2C60.7%2C57.8%2C88.5c27.8%2C27.7%2C55.8%2C44.8%2C88.7%2C57.5c31.8%2C12.3%2C68.2%2C20.7%2C121.4%2C23c53.3%2C2.3%2C70.4%2C2.9%2C206.1%2C2.6%20c135.8-0.3%2C152.8-0.9%2C206.2-3.4c53.2-2.5%2C89.5-11.1%2C121.3-23.5c32.9-12.9%2C60.7-30%2C88.5-57.8c27.7-27.8%2C44.8-55.8%2C57.5-88.7%20c12.3-31.8%2C20.7-68.2%2C23-121.4c2.3-53.4%2C2.9-70.4%2C2.6-206.2c-0.3-135.8-0.9-152.8-3.4-206.1c-2.5-53.2-11-89.5-23.5-121.3%20c-12.8-32.9-30-60.7-57.8-88.5c-27.8-27.7-55.8-44.8-88.7-57.5c-31.8-12.3-68.2-20.7-121.4-23c-53.3-2.4-70.4-2.9-206.1-2.6%20C365.8%2C2.8%2C348.8%2C3.4%2C295.4%2C6%20M301.3%2C909.8c-48.7-2.1-75.2-10.2-92.9-17c-23.4-9-40-19.9-57.6-37.3c-17.5-17.5-28.4-34.1-37.5-57.4%20c-6.9-17.6-15.1-44.1-17.4-92.8c-2.5-52.7-3-68.5-3.3-202c-0.3-133.5%2C0.2-149.3%2C2.5-202c2.1-48.7%2C10.2-75.2%2C17-92.8%20c9-23.4%2C19.8-40%2C37.3-57.6c17.5-17.5%2C34.1-28.4%2C57.4-37.5c17.6-6.9%2C44.1-15.1%2C92.8-17.4c52.7-2.5%2C68.5-3%2C202-3.3%20c133.5-0.3%2C149.3%2C0.2%2C202.1%2C2.5c48.7%2C2.1%2C75.2%2C10.2%2C92.8%2C17c23.4%2C9%2C40%2C19.8%2C57.6%2C37.3c17.5%2C17.5%2C28.4%2C34.1%2C37.5%2C57.4%20c6.9%2C17.6%2C15.1%2C44%2C17.4%2C92.8c2.5%2C52.7%2C3.1%2C68.5%2C3.3%2C202c0.3%2C133.5-0.2%2C149.3-2.5%2C202c-2.1%2C48.7-10.2%2C75.2-17%2C92.9%20c-9%2C23.3-19.8%2C40-37.3%2C57.6c-17.5%2C17.5-34.1%2C28.4-57.4%2C37.5c-17.6%2C6.9-44.1%2C15.1-92.8%2C17.4c-52.7%2C2.5-68.5%2C3-202%2C3.3%20C369.8%2C912.6%2C354%2C912.1%2C301.3%2C909.8%20M708.9%2C235.2c0.1%2C33.1%2C27%2C59.9%2C60.1%2C59.9c33.1-0.1%2C59.9-27%2C59.9-60.1%20c-0.1-33.1-27-59.9-60.1-59.9C735.6%2C175.2%2C708.8%2C202.1%2C708.9%2C235.2%20M245.8%2C503C246%2C644.8%2C361.2%2C759.5%2C503%2C759.2%20c141.8-0.3%2C256.5-115.4%2C256.3-257.2C759%2C360.2%2C643.8%2C245.5%2C502%2C245.8C360.2%2C246%2C245.5%2C361.2%2C245.8%2C503%20M335.8%2C502.8%20c-0.2-92%2C74.3-166.8%2C166.3-167c92-0.2%2C166.8%2C74.3%2C167%2C166.3c0.2%2C92-74.3%2C166.8-166.4%2C167C410.8%2C669.3%2C336%2C594.9%2C335.8%2C502.8%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  vertical-align: middle;
  width: 40px;
}

#InstagramSection .sectionInner .InstagramBoxInner h2:after {
  background-image: url(../images/ornament.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 8px;
  margin: 5px auto 0 auto;
  text-align: center;
  width: 39px;
}

#InstagramSection .sectionInner .InstagramBoxInner .box04 {
  margin-bottom: 0;
}

/*#########################################################*\

$#programSection

\*#########################################################*/
#programSection {
  background-color: #8fc31f;
  background-image: radial-gradient(#9ac936 20%, transparent 20%),
    radial-gradient(#9ac936 20%, transparent 20%);
  background-position: 0 0, 20px 20px;
  background-size: 20px 20px;
  padding: 40px 20px 20px 20px;
}

#programSection .sectionInner h2 {
  color: #ffffff;
  font-size: 2.125em;
  margin-bottom: 20px;
  position: relative;
  text-align: center;
}

#programSection .sectionInner h2::before {
  background: #ffffff;
  bottom: -13px;
  content: "";
  height: 2px;
  left: calc(50% - 50px);
  position: absolute;
  width: 100px;
}

#programSection .sectionInner h2 span {
  color: #ffff00;
}

#programSection .sectionInner .en {
  color: rgba(255, 255, 255, 0.6);
  margin-bottom: 15px;
  text-align: center;
}

#programSection .sectionInner .box03Inner {
  background: #ffffff;
  color: #333333;
  display: flex;
  flex-direction: column;
  margin-bottom: 15px;
  padding: 10px;
  text-decoration: none;
}

#programSection .sectionInner .box03Inner .photo {
  margin-bottom: 10px;
}

#programSection .sectionInner .box03Inner h3 a {
  background: url(../images/arrow_yg.png) no-repeat 0 4px;
  background-size: 16px;
  color: #8fc31f;
  font-size: 1em;
  line-height: 1.4;
  padding: 0 0 5px 24px;
  position: relative;
  text-decoration: none;
}

#programSection .sectionInner .box03Inner p {
  font-size: 0.875em;
  line-height: 1.6;
  margin-bottom: 20px;
}

#programSection .sectionInner .box03Inner p:last-child {
  border-top: 1px solid #cccccc;
  color: #333333;
  font-size: 0.813em;
  font-weight: 700;
  margin-bottom: 0;
  margin-top: auto;
  padding-top: 10px;
}

#programSection .sectionInner .box03Inner p a {
  color: #333333;
  text-decoration: none;
}

#programSection .sectionInner .box03Inner h3 a:hover,
#programSection .sectionInner .box03Inner p a:hover {
  text-decoration: underline;
}

#programSection .sectionInner .box03Inner p .osusume {
  background: #ec620c;
  color: #ffffff;
  font-size: 0.688em;
  margin-right: 6px;
  padding: 2px 10px;
}

#programSection .sectionInner .btn a {
  background: #ffffff;
  color: #8fc31f;
  font-weight: 700;
}

#programSection .sectionInner .btn a:hover {
  border: 2px solid #ffffff;
  opacity: 0.8;
}

#programSection .sectionInner .btn a:after {
  border-right: solid 2px #8fc31f;
  border-top: solid 2px #8fc31f;
}

/*#########################################################*\

$#CoR

\*#########################################################*/

#CoR {
  width: 250px;
}

#CoR h3 {
  color: #ffffff;
  font-size: 1.125em;
  font-weight: 400;
  line-height: 1;
  padding: 12px 0;
  text-align: center;
}

#CoR #sideInfo {
  border: 2px solid #f4f4f4;
  margin-bottom: 20px;
  padding: 10px;
}

#CoR #sideInfo .sideInfoInner {
  background: rgba(239, 130, 0, 0.1);
  margin-bottom: 20px;
  text-align: center;
}

#CoR #sideInfo .sideInfoInner:last-child {
  margin-bottom: 0;
}

#CoR #sideInfo .sideInfoInner h3 {
  background: #ef8200;
}

#CoR #sideInfo .sideInfoInner .Inner {
  padding: 30px 15px;
}

#CoR #sideInfo .sideInfoInner .Inner p {
  font-size: 0.875em;
  margin-bottom: 10px;
}

#CoR #sideInfo .sideInfoInner.situation .Inner {
  padding: 15px 15px 20px 15px;
}

#CoR #sideInfo .sideInfoInner.situation .Inner p {
  align-items: center;
  color: #ef8200;
  display: flex;
  font-size: 0.875em;
  justify-content: center;
  letter-spacing: 0.2em;
  text-align: center;
}

#CoR #sideInfo .sideInfoInner.situation .Inner p::before,
#CoR #sideInfo .sideInfoInner.situation .Inner p::after {
  background-color: #ef8200;
  content: "";
  height: 25px;
  width: 2px;
}

#CoR #sideInfo .sideInfoInner.situation .Inner p::before {
  margin-right: 15px;
  transform: rotate(-35deg);
}

#CoR #sideInfo .sideInfoInner.situation .Inner p::after {
  margin-left: 15px;
  transform: rotate(35deg);
}

#CoR #sideInfo .sideInfoInner.situation h6 {
  font-size: 0.875em;
  text-align: center;
  font-weight: normal;
}

#CoR #sideInfo .sideInfoInner.situation h6 a {
  color: #0066ff;
}

#CoR #sideInfo .sideInfoInner .Inner p:last-child {
  margin-bottom: 0;
}

#CoR #sideInfo .sideInfoInner .btn {
  margin: 0 auto;
  width: 100%;
}

#CoR #sideInfo .sideInfoInner .btn a {
  background: #ffffff;
  border: 2px solid #ef8200;
  color: #ef8200;
  font-size: 1.071em;
  padding: 8px;
}

#CoR #sideInfo .sideInfoInner .btn a:hover {
  background: #ef8200;
  border: 2px solid #ef8200;
  color: #ffffff;
}

#CoR #sideInfo .sideInfoInner .btn a:after {
  border-right: solid 2px #ef8200;
  border-top: solid 2px #ef8200;
}

#CoR #sideInfo .sideInfoInner .btn a:hover:after {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
}

#CoR #sideInfo .sideInfoInner#maintenance {
  background: rgba(254, 0, 0, 0.1);
}

#CoR #sideInfo .sideInfoInner#maintenance h3 {
  background: #fe0000;
}

#CoR #sideInfo .sideInfoInner h3 .ss {
  font-size: 0.875em;
}

#CoR #sideInfo .sideInfoInner#maintenance .day {
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.5em;
  margin-bottom: 15px;
}

#CoR #sideInfo .sideInfoInner#maintenance .day .bb {
  font-family: "Roboto", sans-serif;
  font-size: 1.813em;
  font-weight: 700;
}

#CoR #sideInfo .sideInfoInner#maintenance .day .ss {
  font-size: 0.813em;
  font-weight: 400;
}

#CoR #sideInfo .sideInfoInner#maintenance .day .ss .box {
  border: 1px solid #fe0000;
  color: #fe0000;
  font-size: 0.7em;
  line-height: 1;
  margin-right: 6px;
  padding: 1px 3px;
}

#CoR #sideInfo .sideInfoInner#maintenance .btn a {
  border: 2px solid #fe0000;
  color: #fe0000;
}

#CoR #sideInfo .sideInfoInner#maintenance .btn a:hover {
  background: #fe0000;
  border: 2px solid #fe0000;
  color: #ffffff;
}

#CoR #sideInfo .sideInfoInner#maintenance .btn a:after {
  border-right: solid 2px #fe0000;
  border-top: solid 2px #fe0000;
}

#CoR #sideInfo .sideInfoInner#maintenance .btn a:hover:after {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
}

#CoR #sideInfo .sideInfoInner.situation .situationInner {
  background: #ffffff;
  margin-bottom: 10px;
  padding: 15px 10px;
}

#CoR #sideInfo .sideInfoInner.situation .situationInner:last-child {
  margin-bottom: 0;
}

#CoR #sideInfo .sideInfoInner.situation .situationInner h4 {
  font-size: 0.938em;
  margin-bottom: 10px;
  line-height: 1.4;
  position: relative;
  text-align: center;
}

#CoR #sideInfo .sideInfoInner.situation .situationInner h4 .ss {
  font-size: 0.938em;
  font-weight: 500;
}

#CoR #sideInfo .sideInfoInner.situation ul {
  margin: 0 auto 15px auto;
  width: 80%;
}

#CoR #sideInfo .sideInfoInner.situation ul:last-child {
  margin: 0 auto;
}

#CoR #sideInfo .sideInfoInner.situation li {
  background: #cc0000;
  border-radius: 4px;
  color: #ffffff;
  font-size: 0.938em;
  line-height: 1;
  padding: 8px 5px;
}

#CoR #sideInfo .sideInfoInner.situation li.list_02 {
  background: #fe0000;
}

#CoR #sideInfo .sideInfoInner.situation li.list_03,
#CoR #sideInfo .sideInfoInner.situation li.list_04 {
  background: #727272;
  color: #ffffff;
}

/*#########################################################*\

$#温水プール混雑状況

\*#########################################################*/

#Co #CoR #sideInfo .sideInfoInner.pool_status {
  background: #cce0ff;
}

#Co #CoR #sideInfo .sideInfoInner.pool_status h3 {
  background: #0066ff;
  margin-bottom: 0.625rem;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status p {
  font-size: 0.9375rem;
  font-weight: 700;
  margin-bottom: 0 !important;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status p .ss {
  font-size: .8125rem;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status p span {
  border: 1px solid #333333;
  padding: 0.1875rem 0.3125rem;
  font-size: 0.8125rem;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status .situationInner {
  background: #ffffff;
  margin-bottom: 10px;
  padding: 15px 10px;
}

#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner:last-child {
  margin-bottom: 0;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status .situationInner h4 {
  font-size: 0.938em;
  line-height: 1.4;
  position: relative;
  text-align: center;
  position: relative;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4:before,
#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4:after {
  border-top: 1px solid #333333;
  content: "";
  width: 1.5em;
}

#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4:before {
  margin-right: 0.5em;
}

#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4:after {
  margin-left: 0.5em;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status .Inner h4.no {
  margin: 0;
  color: #333333;
}

#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4.no:before,
#Co
  #CoR
  #sideInfo
  .sideInfoInner.situation.pool_status
  .situationInner
  h4.no:after {
  content: none;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status .situationInner h4 .ss {
  font-size: 0.938em;
  font-weight: 500;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status ul {
  margin: 0 auto 15px auto;
  width: 100%;
}

#Co #CoR #sideInfo .sideInfoInner.situation ul:last-child {
  margin: 0 auto;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status li {
  background: transparent;
  font-size: 1.25rem;
  line-height: 1;
  padding: 0;
  color: #333333;
  font-weight: 700;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status li.list_02,
#Co #CoR #sideInfo .sideInfoInner.situation.pool_status li.list_03 {
  color: #ef8200;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status li.list_04 {
  color: #fe0000;
}

#Co #CoR #sideInfo .sideInfoInner.situation.pool_status li.list_05 {
  color: #fe0000;
}

/*#########################################################*\

$#温水プール混雑状況 ここまで

\*#########################################################*/




/*#########################################################*\

$#3×3バスケットボール混雑状況

\*#########################################################*/

#Co #CoR #sideInfo .sideInfoInner.basketball_status {
  background: #f6ebff;
}

#Co #CoR #sideInfo .sideInfoInner.basketball_status h3 {
  background: #8c00ff;
  margin-bottom: 0.625rem;
}
#Co #CoR #sideInfo .sideInfoInner.basketball_status .Inner p {
  color: #8c00ff;
}

#Co #CoR #sideInfo .sideInfoInner.basketball_status .Inner p::before,
#Co #CoR #sideInfo .sideInfoInner.basketball_status .Inner p::after {
  background-color: #8c00ff;
}

/*#########################################################*\

$#3×3バスケットボール混雑状況 ここまで

\*#########################################################*/



#CoR #bnr_spf {
  margin-bottom: 20px;
}

#CoR #sideMenu {
  border: 2px solid #f4f4f4;
  margin-bottom: 20px;
}

#CoR #sideMenu h3 {
  background: #3fa037;
}

#CoR #sideMenu ul {
  margin: 0;
}

#CoR #sideMenu li {
  font-size: 0.875em;
  margin: 0;
}

#CoR #sideMenu li a {
  border-bottom: 1px dashed #d3d3d3;
  color: #333333;
  display: block;
  padding: 12px 15px;
  position: relative;
  text-decoration: none;
  width: 100%;
}

#CoR #sideMenu li a:hover {
  background: rgba(63, 160, 55, 0.1);
}

#CoR #sideMenu li a:after {
  border-right: solid 2px #3fa037;
  border-top: solid 2px #3fa037;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s;
  width: 8px;
}

#CoR #sideMenu li:last-child a {
  border-bottom: none !important;
}

#CoR #sideBnrArea li.size_s {
  background: rgba(63, 160, 55, 0.05);
  border: 1px solid #3fa037;
  font-size: 0.875em;
  font-weight: bold;
  height: 60px;
  overflow: hidden;
}

#CoR #sideBnrArea li.size_s a {
  color: #3fa037 !important;
  display: block;
  line-height: 60px;
  padding: 0 0 0 65px;
  text-decoration: none;
}

#CoR #sideBnrArea li.size_s a {
  background: url(../images/ico_pass.png) no-repeat 15px center;
  background-size: 40px 28px;
}

#CoR #sideBnrArea li.size_s.faq a {
  background: url(../images/ico_faq.png) no-repeat 15px center;
  background-size: 40px 27px;
}

#CoR #sideBnrArea li.size_s.rental a {
  background: url(../images/ico_rental.png) no-repeat 15px center;
  background-size: 40px 40px;
}

#CoR #sideBnrArea li.size_s.formatlist a {
  background: url(../images/ico_file.png) no-repeat 15px center;
  background-size: 30px 38px;
}

#CoR #sidePickup {
  margin-bottom: 20px;
}

#CoR #sidePickup .sidePickupInner {
  border: 2px solid #1f8ec2;
  color: #1f8ec2;
  display: block;
  padding: 10px 10px 20px 10px;
  position: relative;
  text-decoration: none;
  width: 100%;
}

#CoR #sidePickup .sidePickupInner:before {
  border-bottom: 14px solid #1f8ec2;
  border-left: 14px solid transparent;
  bottom: 5px;
  content: "";
  height: 0;
  position: absolute;
  right: 5px;
  width: 0;
}

#CoR #sidePickup h3 {
  align-items: center;
  background: #1f8ec2;
  display: flex;
  justify-content: center;
  text-align: center;
}

#CoR #sidePickup h3::before,
#CoR #sidePickup h3::after {
  background-color: #ffffff;
  content: "";
  height: 25px;
  width: 2px;
}

#CoR #sidePickup h3::before {
  margin-right: 15px;
  transform: rotate(-35deg);
}

#CoR #sidePickup h3::after {
  margin-left: 15px;
  transform: rotate(35deg);
}

#CoR #sidePickup p {
  font-size: 0.875em;
  line-height: 1.6;
  margin-bottom: 10px;
}

#CoR #sidePickup p:last-child {
  margin-bottom: 0;
}

#CoR #linkBox {
  background: #f1f1f1;
  padding: 10px;
}

#CoR #linkBox ul {
  margin: 0;
}

#CoR #sideNewsBox {
  border: solid 3px #3fa037;
  margin: 0 0 20px;
  padding: 0;
}

#CoR #sideNewsBox h3 {
  background: #3fa037;
}

#CoR #sideNewsBox ul {
  margin: 0;
}

#CoR #sideNewsBox li {
  margin: 0 !important;
}

#CoR #sideNewsBox li a {
  border-bottom: solid 1px #e0e0e0;
  color: #333333;
  display: block;
  font-size: 0.91rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  padding: 12px 15px;
  position: relative;
  text-decoration: none;
  width: 100%;
}

#CoR #sideNewsBox li a:after {
  border-right: solid 2px #e6ac13;
  border-top: solid 2px #e6ac13;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s;
  width: 8px;
}

#CoR #sideNewsBox li:last-child a {
  border-bottom: none;
}

/*#########################################################*\

$#footer

\*#########################################################*/

footer {
  padding-bottom: 62px;
}

footer #footMenu {
  background: #f1f1f1;
  padding: 10px 0;
}

footer #footMenu ul {
  align-items: center;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  width: 1100px;
}

footer #footMenu ul li {
  margin: 0 40px 0 0;
}

footer #footMenu ul li:last-child {
  margin: 0;
}

footer #footMenu ul li a {
  background: url(../images/arrow_g.png) no-repeat 0 6px;
  background-size: 16px;
  color: #333333;
  padding: 0 0 0 22px;
  position: relative;
  text-decoration: none;
}

footer #footerInner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 30px 0;
  position: relative;
  width: 1100px;
}

footer #footerInner #footerL {
  width: 50%;
}

footer #footerInner h2 {
  font-size: 1.25em;
}

footer #footerInner h2 .ss {
  font-size: 0.8em;
}

footer #footerInner .address {
  font-size: 0.875em;
  margin-bottom: 5px;
}

footer #footerInner .detailBox ul {
  margin: 0;
}

footer #footerInner .detailBox li {
  font-size: 0.813em;
  margin: 0;
}

footer #footerInner .detailBox li .box {
  border: 1px solid #3fa037;
  color: #3fa037;
  display: inline-block;
  font-size: 0.7em;
  line-height: 1;
  margin-right: 6px;
  padding: 3px;
  text-align: center;
  width: 60px;
}

footer #footerR {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  margin: 0;
  position: relative;
  width: 50%;
}

footer #footerR h3 {
  display: inline-block;
  font-size: 0.813em;
  font-weight: 400;
  line-height: 1.6em;
  margin: 0;
  padding: 0;
  width: 300px;
}

footer #footerR h3 .ss {
  font-size: 0.938em;
}

footer #footerR h3 img {
  float: left;
  margin: 2px 10px 0 0;
  text-align: right;
  width: 40px;
}

footer #footerR #copy {
  bottom: 0;
  font-size: 0.688em;
  position: absolute;
  right: 0;
}

footer #footerR #copy a {
  color: rgba(51, 51, 51, 0.7);
  text-decoration: none;
}

/*#########################################################*\

$#page

\*#########################################################*/

#Co .page .sectionInner .photo {
  margin-bottom: 15px;
}

#Co .page .sectionInner .explainBox .explainBoxInner {
  display: block;
  margin-bottom: 30px;
  text-decoration: none;
}

#Co .page .sectionInner .explainBox .explainBoxInner h4 {
  background: url(../images/arrow_g.png) no-repeat 0 4px;
  background-size: 16px;
  border: none;
  color: #3fa037;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.4;
  margin-bottom: 8px;
  padding: 0 0 0 24px;
  position: relative;
}

#Co .page .sectionInner .explainBox .explainBoxInner h4:before {
  content: none;
}

#Co .page .sectionInner .explainBox .explainBoxInner p {
  color: #333333;
  font-size: 0.875em;
  margin-bottom: 10px;
}

#Co .page .sectionInner .explainBox .explainBoxInner p:last-child {
  margin-bottom: 0;
}

#Co .page .sectionInner .photoBox .photoBoxInner {
  width: 480px;
}

#Co .page .sectionInner .photoBox .photoBoxInner .tbl th,
#Co .page .sectionInner .photoBox .photoBoxInner .tbl td {
  padding: 0.8em;
}

#Co .page .sectionInner .photoBox .photoBoxInner:first-child {
  width: 300px;
}

#Co .page .sectionInner .photo_lineBox {
  margin-bottom: 10px;
}

#Co .page .sectionInner .photo_lineBox .box02Inner:first-child {
  width: 540px;
}

#Co .page .sectionInner .photo_lineBox .box02Inner {
  width: 243px;
}

#Co .page .sectionInner .photo_lineBox .box02Inner li {
  width: 100%;
}

/*#########################################################*\

$slick-dots

\*#########################################################*/

#Co .page .slick-dots li button {
  height: 20px;
  opacity: 1 !important;
  width: 20px;
}

#Co .page .slick-dots li button:before {
  color: #eeeeee;
  font-size: 12px;
  height: 20px;
  line-height: 20px;
  opacity: 1 !important;
  width: 20px;
}

#Co .page .slick-dots li.slick-active button:before {
  color: #3fa037;
}

/*#########################################################*\

$detailsBox

\*#########################################################*/

#Co .page .sectionInner .detailsBox .tbl th {
  width: 40%;
}

#Co .page .sectionInner .detailsBox .tbl th,
#Co .page .sectionInner .detailsBox .tbl td {
  padding: 0.8em;
}

/*#########################################################*\

$colorBox

\*#########################################################*/

.page .colorBox {
  border: 1px solid #3fa037;
  margin-bottom: 40px;
}

.page .colorBox h3 {
  background: #3fa037;
  color: #ffffff;
  margin-bottom: 0;
  padding: 10px 10px 10px 20px;
}

.page .colorBox h3::before {
  content: none;
}

.page .colorBox .colorBoxInner {
  padding: 20px;
}

.colorBox ul:last-child,
.colorBox li:last-child,
.colorBox p:last-child {
  margin-bottom: 0 !important;
}

#Co .page .colorBox .colorBoxInner {
  margin-bottom: 0;
}

#Co .page .colorBox .colorBoxInner .detailBox .pctL {
  margin: 0 35px 0 0 !important;
  width: 25%;
}

#Co .page .colorBox .colorBoxInner .detailBox .textBox {
  overflow: hidden;
}

#Co .page .colorBox .colorBoxInner .detailBox h4 {
  border: none;
  color: #333333;
  margin: 0 0 10px 0;
  padding: 0;
}

#Co .page .colorBox .colorBoxInner .detailBox h4::before {
  content: none;
}

#Co .page .colorBox .colorBoxInner .detailBox h5 {
  font-size: 0.8em;
  margin: 0 0 10px 0;
  padding: 6px 25px;
}

#Co .page .colorBox .colorBoxInner .detailBox ul {
  margin-bottom: 0;
}

#Co .page .colorBox .colorBoxInner .detailBox p {
  margin-bottom: 20px;
}

#Co .page .colorBox .colorBoxInner .detailBox p,
#Co .page .colorBox .colorBoxInner .detailBox li {
  font-size: 0.875em;
}

#Co .page .colorBox .colorBoxInner .detailBox li {
  margin-bottom: 5px;
  width: 49%;
}

@media (max-width: 767px) {
  .colorBox {
    padding: 20px;
  }
}

/*#########################################################*\

$btn_spf

\*#########################################################*/

#Co .btn_spf {
  margin: 0 auto;
  width: 80%;
}

#Co .btn_spf a {
  align-items: center;
  background: rgb(75, 161, 226);
  background: -moz-linear-gradient(
    0deg,
    rgba(75, 161, 226, 1) 0%,
    rgba(88, 193, 241, 1) 30%,
    rgba(64, 134, 212, 1) 100%
  );
  background: -webkit-linear-gradient(
    0deg,
    rgba(75, 161, 226, 1) 0%,
    rgba(88, 193, 241, 1) 30%,
    rgba(64, 134, 212, 1) 100%
  );
  background: linear-gradient(
    0deg,
    rgba(75, 161, 226, 1) 0%,
    rgba(88, 193, 241, 1) 30%,
    rgba(64, 134, 212, 1) 100%
  );
  border-radius: 100px;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#4ba1e2",endColorstr="#4086d4",GradientType=1);
  font-size: 1em;
  font-weight: 500;
  justify-content: center;
  line-height: 1;
  margin: 0 auto;
  padding: 15px 10px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 100%;
}

#Co .btn_spf a:after {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
  content: "";
  height: 8px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  transition: 0.3s;
  width: 8px;
}

@media only screen and (max-width: 767px) {
  #Co .btn_spf a {
    font-size: 0.875em;
    padding: 10px 5px;
  }
  #Co .btn_spf a img {
    width: 50%;
  }
}

/*#########################################################*\

$#programPage

\*#########################################################*/

#programPage .box02.detailsBox.reverse .box02Inner:first-child {
  width: 300px;
}

#programPage .box02.detailsBox.reverse .box02Inner {
  width: 475px;
}

#programPage .box02.detailsBox.reverse .box02Inner th {
  width: 30%;
}

#programPage .box02.detailsBox.reverse.wide .box02Inner {
  width: 100%;
}

#programPage .box02.detailsBox.reverse.wide .box02Inner th {
  width: 25%;
}

#programPage .box02.detailsBox.reverse.wide .box02Inner:first-child {
  display: none;
}

#Co #programPage .sectionInner .level {
  color: #e6ac13;
}

#Co #programPage .sectionInner .eventTbl th,
#Co #programPage .sectionInner .eventTbl td {
  padding: 1.5em 0.8em;
  text-align: center;
}

#Co #programPage .sectionInner .voiceBox {
  align-items: center;
  background: rgba(236, 109, 116, 0.1);
  display: flex;
  margin-bottom: 30px;
  padding: 20px 20px 16px;
}

#Co #programPage .sectionInner .voiceBox .voiceBoxInner h4 {
  align-items: center;
  background: #ec6d74;
  border: none;
  color: #ffffff;
  display: inline;
  display: flex;
  font-size: 1.125em;
  justify-content: center;
  line-height: 1;
  margin: 0 30px 0 0;
  padding: 30px 20px;
  position: relative;
}

#Co #programPage .sectionInner .voiceBox .voiceBoxInner h4::before {
  background: transparent;
  border-color: transparent transparent transparent #ec6d74;
  border-style: solid;
  border-width: 8px 0 8px 12px;
  content: "";
  height: 0;
  left: auto;
  margin-top: -8px;
  position: absolute;
  right: -16px;
  top: 50%;
  transform: translateX(-50%);
  width: 0;
}

#Co #programPage .sectionInner .voiceBox .voiceBoxInner p:last-child {
  margin: 0;
}

#Co #programPage .btn_big {
  margin-bottom: 70px;
  width: 500px;
}

#Co #programPage .btn_big a {
  font-weight: 700;
  padding: 20px 10px;
}

#Co #programPage.oldpage h2 {
  margin-top: 70px;
}

/*#########################################################*\

$#newsPage

\*#########################################################*/

#newsPage .sectionInner #newsBox .newsBoxInner h3 {
  border: none !important;
  padding: 0;
}

#newsPage .sectionInner #newsBox .newsBoxInner h3:before {
  content: none;
}

#detailPage p.date {
  border-top: 1px dotted #cccccc;
  padding: 1em 0;
  text-align: right;
}

#detailPage p.date a {
  color: #ffffff;
  text-decoration: none;
}

#detailPage .btnBack {
  margin: 50px auto 30px auto !important;
}

@media only screen and (max-width: 767px) {
  #detailPage .btnBack {
    margin: auto 30px auto !important;
  }
}

/*#########################################################*\

$#faqPage

\*#########################################################*/

#faqPage .faqBox h3 {
  background: transparent;
  font-size: 1.375em;
  letter-spacing: normal;
  margin: 3em 0 0;
  padding: 0 0 0.6em 2em;
  position: relative;
}

#faqPage .faqBox h3:before {
  background: #f44336;
  border-radius: 6px;
  content: "";
  font-weight: bold;
  height: 1.5em;
  left: 0;
  position: absolute;
  top: 0.2em;
  width: 1.5em;
}

#faqPage .faqBox h3:after {
  background: transparent;
  border: 0;
  color: #ffffff;
  content: "Q";
  height: 1em;
  left: 0.28em;
  position: absolute;
  top: 0.1em;
  width: 1em;
}

#faqPage .faqBox * + h3 {
  margin-top: 40px;
}

#faqPage .faqBox .faqBoxInner {
  background: rgba(63, 160, 55, 0.05);
  padding: 1em 1em 1em 4em;
  position: relative;
}

#faqPage .faqBox .faqBoxInner:before {
  background: #3fa037;
  border-radius: 6px;
  content: "";
  font-size: 1.375em;
  font-weight: bold;
  height: 1.5em;
  left: 0.8em;
  position: absolute;
  top: 0.8em;
  width: 1.5em;
}

#faqPage .faqBox .faqBoxInner:after {
  background: transparent;
  color: #ffffff;
  content: "A";
  font-size: 1.375em;
  font-weight: bold;
  height: 1em;
  left: 1.16em;
  position: absolute;
  top: 0.6em;
  width: 1em;
}

#faqPage .faqBox .faqBoxInner p {
  margin: 0.5em 0;
}

/*#########################################################*\

$#exclusivePage

\*#########################################################*/

#Co #exclusivePage table.tbl th.first {
  width: 200px !important;
}

#Co #exclusivePage table.tbl th a {
  background: url(../images/arrow_g.png) no-repeat 0 4px;
  background-size: 16px;
  border: none;
  color: #3fa037;
  display: block;
  font-size: 1em;
  line-height: 1.4;
  margin-bottom: 10px;
  padding: 0 0 0 24px;
  position: relative;
}

#Co #exclusivePage table.tbl th a:hover {
  text-decoration: none;
}

#Co #exclusivePage table.tbl td {
  padding: 1em 1.2em;
}

#Co #exclusivePage table.tbl td strong {
  display: block;
  position: relative;
}

#Co #exclusivePage table.tbl td strong::before {
  border-color: transparent transparent transparent #e6ac13;
  border-style: solid;
  border-width: 4.5px 0 4.5px 8px;
  content: "";
  display: inline-block;
  height: 0;
  margin-right: 8px;
  width: 0;
}

#Co #exclusivePage table.tbl td.cautionlist {
  padding: 1.5em 1.2em;
}

/*#########################################################*\

$#linkPage

\*#########################################################*/

#Co #linkPage .linkgroup h3 {
  background: transparent;
  color: #333333;
  font-size: 1.25em;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

#Co #linkPage .linkgroup h3:before {
  content: none;
}

#Co #linkPage .linkgroup .pctL {
  margin: 0 20px 0 0 !important;
}

#Co #linkPage .linkgroup a {
  align-items: center;
  border-bottom: 1px dashed #d3d3d3;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 25px;
  padding-bottom: 25px;
  text-decoration: none;
}

/*#########################################################*\

$trainingPage

\*#########################################################*/

#Co #trainingPage .sectionInner .machineBox .box03Inner {
  border: 1px solid #3fa037;
  margin-bottom: 30px;
  position: relative;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner.ico_wheelchair::before {
  content: none;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner.ico_wheelchair::after {
  background: url(../images/ico_wheelchair.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 30px;
  margin-left: 0;
  margin-right: 3px;
  margin-top: 0;
  position: absolute;
  right: 5px;
  top: 10px;
  vertical-align: top;
  width: 30px;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner h4 {
  background: rgba(63, 160, 55, 0.1);
  border: none;
  font-size: 1.125em;
  line-height: 1.6;
  padding: 10px 0;
  position: relative;
  text-align: center;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner h4::before {
  content: none;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner .photo {
  height: auto;
  margin: 0;
  padding: 0 20px 20px 20px;
  width: auto;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner .point {
  margin-bottom: 20px;
  padding: 0 20px;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner .point li {
  font-size: 0.875em;
  line-height: 1.4;
  margin-bottom: 0;
  width: 100%;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner .btn {
  margin: 0 auto 20px auto;
  width: 80%;
}

#Co #trainingPage .sectionInner .machineBox .box03Inner .btn a {
  font-size: 0.875em;
  padding: 10px 0;
}

#Co #trainingPage .sectionInner .ico_wheelchair::before {
  background: url(../images/ico_wheelchair.png) no-repeat 0 0;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 30px;
  margin-left: 0;
  margin-right: 3px;
  margin-top: 0;
  vertical-align: top;
  width: 30px;
}

/*#########################################################*\

$institutionPage

\*#########################################################*/

#Co #institutionPage .explainBox a {
  border: 1px solid #dfdfdf;
  margin: 0;
  padding: 0;
}

#Co #institutionPage .explainBox a .photo {
  margin: 0;
  padding: 20px 15px 15px 15px;
}

#Co #institutionPage .explainBox h4 {
  background: #3fa037;
  background-image: none;
  color: #ffffff;
  margin: 0;
  padding: 8px 0;
  text-align: center;
}

#Co #institutionPage .borderBox .borderBoxInner:first-child {
  border-bottom: 1px dotted #3fa037;
  margin: 0 0 1em;
  padding: 0 0 1em 0;
}

#Co #institutionPage .icogroup li img {
  margin: 5px 5px 5px 0;
  vertical-align: middle;
}

#Co #institutionPage .flex-start li {
  margin: 0 20px 0 0 !important;
}

#Co #institutionPage .flex-start.icoset {
  margin: 0 0 10px 0 !important;
}

#Co #institutionPage .flex-start.icoset li {
  margin: 0 5px 0 0 !important;
}

#Co #institutionPage .tbl p {
  margin: 0 0 20px 0;
}

#Co #institutionPage .tbl td p:last-child {
  margin: 0 !important;
}

#Co #institutionPage .tbl .title_yo,
#Co #institutionPage .tbl .title_ko,
#Co #institutionPage .tbl td p:last-child {
  margin: 0 !important;
  position: relative;
}

#Co #institutionPage .tbl .title {
  background-size: 30px 30px !important;
  padding: 5px 0 5px 38px !important;
}

#Co #institutionPage .tbl .title_yo {
  background: url(../images/shisetu/ico_yo.gif) no-repeat 0 0;
}

#Co #institutionPage .tbl .title_ko {
  background: url(../images/shisetu/ico_ko.gif) no-repeat 0 0;
}

#Co #institutionPage .tbl .flex-start li {
  margin: 0 5px 0 0 !important;
}

#Co #institutionPage .tbl .asterisk {
  border-bottom: 1px solid #dfdfdf;
  margin: 0 0 15px 0 !important;
  padding: 0 0 15px 0 !important;
}

#Co #institutionPage .tbl .asterisk:last-child {
  border-bottom: none;
  margin: 0 !important;
  padding: 0 !important;
}

/*#########################################################*\

$reservationPage
\*#########################################################*/

#Co #reservationPage .btngroup {
  margin-bottom: 30px;
}
