@charset "UTF-8";
html {
  font-family: 'Hiragino Kaku Gothic ProN', YuGothic, Meiryo, sans-serif;
  color: #515151;
  font-size: 14px;
  background: #fbfbfb;
}
table {
  border: 1px solid #5ab668;
  border-bottom: none;
}
table td,
table th {
  padding: 12px;
  line-height: 1.5;
  text-align: left;
  vertical-align: middle;
}
table th {
  color: #fff;
  background: #69c076;
  border-bottom: 1px solid #5ab668;
}
table td {
  background: #fff;
  border-bottom: 1px solid #c8c8c8;
}
table a {
  color: #1880c8;
  line-height: 1.8;
  -webkit-transition: color 0.3s ease-out, background 0.3s ease-out;
  transition: color 0.3s ease-out, background 0.3s ease-out;
}
table a:hover {
  color: #8b8b8b;
  background: #edeb36;
}
.nav-head {
  cursor: default !important;
}
.linkarea {
  margin-top: 32px;
}
#morphing {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: #5ab668;
  border-radius: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.breadcrumbs {
  margin-bottom: 32px;
  padding: 12px 0 5px;
}
.breadcrumbs ul {
  position: relative;
  left: 4px;
}
.breadcrumbs ul li {
  color: #8b8b8b;
  font-size: 12px;
}
.breadcrumbs ul li:after {
  content: '>';
  padding-left: 6px;
}
.breadcrumbs ul li:last-child:after {
  content: '';
  padding-left: 0;
}
.breadcrumbs ul li a {
  color: #1880c8;
  font-size: 12px;
}
#gheader .gheader__content {
  position: relative;
  padding: 16px 0;
}
#gheader .gheader__content .title {
  padding-left: 30px;
}
#gheader .gheader__content .title-caption {
  position: absolute;
  right: 32px;
  top: 19px;
  color: #8b8b8b;
  font-size: 12px;
}
#gheader .gheader__content .fixlink {
  position: absolute;
  top: 40px;
  display: block;
  width: 120px;
  height: 30px;
  font-size: 12px;
  line-height: 30px;
}
#gheader .gheader__content .fixlink:before {
  position: relative;
  top: 3px;
  left: -6px;
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
}
#gheader .gheader__content .fixlink--sitemap {
  right: 160px;
  color: #fff;
  background: #69c076;
}
#gheader .gheader__content .fixlink--sitemap:before {
  background: url(../images/gheader-pict-sitemap.png);
}
#gheader .gheader__content .fixlink--login {
  right: 32px;
  color: #3e3e3e;
  background: #edeb36;
}
#gheader .gheader__content .fixlink--login:before {
  background: url(../images/gheader-pict-key.png) center center no-repeat;
}
#gheader #gnav {
  position: relative;
  z-index: 9998;
  width: 100%;
  height: 64px;
  margin-bottom: 5px;
  box-shadow: 0 5px 0 #53a668;
}
#gheader #gnav .gnav__links a {
  position: relative;
  z-index: 2;
  display: block;
  color: #fff;
  font-size: 15px;
  padding: 14px 0;
  border-left: 1px solid #fff;
  text-decoration: none;
}
#gheader #gnav .gnav__links a i {
  font-size: 1.3rem;
  padding-bottom: 6px;
}
#gheader #gnav .gnav__links a span {
  display: block;
  width: 100%;
}
#gheader #gnav .gnav__links li:last-child > a {
  border-right: 1px solid #fff;
}
#gheader #gnav .gnav__links .link {
  position: relative;
}
#gheader #gnav .gnav__links .link ul {
  position: absolute;
  left: 50%;
  top: 100%;
  width: 100%;
  display: none;
  color: #fff;
  background: #69c076;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
#gheader #gnav .gnav__links .link ul li {
  border-top: 1px solid #fff;
}
#gheader #gnav .gnav__links .link ul li:first-child {
  border-top: 1px solid #5ab668;
}
#gheader #gnav .gnav__links .link ul li a {
  padding: 12px 0;
  font-size: 14px;
  border: none;
}
#gheader #gnav .gnav__links .link01 {
  width: 92px;
}
#gheader #gnav .gnav__links .link02 {
  width: 282px;
}
#gheader #gnav .gnav__links .link03 {
  width: 290px;
}
#gheader #gnav .gnav__links .link04 {
  width: 152px;
}
#gheader #gnav .gnav__links .link05 {
  position: relative;
  width: 188px;
}

#gheader #gnav .gnav__links--table {
  display: table;
  margin: 0 auto;
}
#gheader #gnav .gnav__links--table > li {
  display: table-cell;
  text-align: center;
}
#gheader #gnav .gnav__links--table > li > a {
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 480px) {
  #gheader #gnav .gnav__links--table {
    display: block;
  }
  #gheader #gnav .gnav__links--table > li {
    display: block;
    border-right: none !important;
    border-left: none !important;
  }
  #gheader #gnav .gnav__links--table > li > a {
    border-right: none !important;
    border-left: none !important;
  }
  #gheader #gnav .gnav__links--table > li ul {
    display: block !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    transform: none !important;
    position: static !important;
  }
}

#gfooter {
  position: relative;
  margin-top: 104px;
  padding: 64px 0 40px;
  box-sizing: border-box;
}
#gfooter .gfooter__info {
  position: relative;
  text-align: center;
}
#gfooter .gfooter__info .info-site {
  margin-bottom: 40px;
  text-align: left;
}
#gfooter .gfooter__info .info-site .info-site__logo {
  margin-bottom: 12px;
}
#gfooter .gfooter__info .info-site .info-site__address {
  color: #fff;
  font-size: 12px;
  line-height: 1.4;
}
#gfooter .gfooter__info .info-site .info-site__phone {
  position: relative;
  left: 8px;
}
#gfooter .gfooter__info .info-site .site-links .site-links__headline {
  width: 286px;
  padding: 8px 0;
  margin-bottom: 16px;
  color: #5ab668;
  font-size: 18px;
  text-align: center;
  background: #cdf6d3;
}
#gfooter .gfooter__info .info-site .site-links .site-links__list li {
  margin-top: 10px;
}
#gfooter .gfooter__info .info-site .site-links .site-links__list li a {
  padding: 4px;
  color: #fff;
}
#gfooter .gfooter__info .info-site .site-links .site-links__list li a i {
  padding-right: 4px;
}
#gfooter .gfooter__info .info-site--left {
  margin-right: 40px;
}
#gfooter .gfooter__info .info-site--right > div:last-child {
  margin-left: 12px;
}
#gfooter .gfooter__info .mini-links {
  position: absolute;
  right: 17px;
  bottom: -16px;
}
#gfooter .gfooter__info .mini-links a {
  margin-right: 6px;
  padding: 2px;
  color: #fff;
  font-size: 12px;
}
#gfooter .gfooter__info .mini-links a i {
  padding-right: 2px;
}
#gfooter .gfooter__info .mini-links .mini-links__copy {
  color: #175921;
  font-size: 12px;
}
#gfooter #pagetop-scrolling {
  cursor: pointer;
  opacity: 0;
}
#gfooter .pagetop-scrolling--fixed {
  position: fixed;
  right: 40px;
  bottom: 40px;
}
#gfooter .pagetop-scrolling--absolute {
  position: absolute;
  right: 40px;
  top: -120px;
}
.gcontent__main .hospital-box {
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: 470px;
  margin: 0 4px 8px;
  padding: 20px;
  text-decoration: none;
  background: #fff;
  border: 1px solid #5ab668;
  border-radius: 4px;
  box-sizing: border-box;
}
.gcontent__main .hospital-box .hospital-box__access i,
.gcontent__main .search-by i {
  padding-right: 4px;
}
.gcontent__main .hospital-box .hospital-box__name {
  color: #1880c8;
  font-size: 20px;
  font-weight: 700;
  text-indent: 18px;
}
.gcontent__main .hospital-box .hospital-box__name i {
  position: relative;
  top: -1px;
  padding-right: 4px;
}
.gcontent__main .hospital-box .hospital-box__address {
  padding-top: 5px;
  color: #9a8e3b;
  font-size: 12px;
  text-indent: 58px;
}
.gcontent__main .hospital-box .hospital-box__access {
  padding-top: 16px;
  color: #8b8b8b;
  font-size: 14px;
  text-indent: 18px;
}
.gcontent__main .hospital-box .goto {
  position: absolute;
  left: 15px;
  top: 50%;
  color: #1880c8;
  font-size: 32px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.gcontent__main .hospital-box--hv {
  margin-left: 8px;
}
.gcontent__main .search-by {
  background: #edeb36;
}
.gcontent__main .search-by a {
  color: #1880c8;
}
.gcontent__main--front #main__infinite-scroll {
  width: 100%;
  height: 403px;
  color: #fff;
  background: url(../images/infinite-scroll.jpg) repeat-x;
}
.gcontent__main--front #main__infinite-scroll #search-hospital {
  position: relative;
  top: -30px;
  padding-top: 16px;
  opacity: 0;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box {
  width: 384px;
  height: 154px;
  margin: 40px 0 16px 24px;
  background: #fff;
  background: rgba(255, 255, 255, 0.2);
  border: 3px solid #69c076;
  border-top: none;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-title {
  width: 100%;
  padding: 8px 0 8px 32px;
  font-size: 18px;
  background: url(../images/pict-magnify.png) 1% center no-repeat #69c076;
  box-sizing: border-box;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list {
  padding: 24px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li {
  padding-bottom: 16px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li:first-child {
  margin-right: 48px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li a {
  padding: 4px;
  color: #fff;
  font-size: 13px;
  text-decoration: none;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li a i {
  font-size: 30px;
  padding-right: 8px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li a .fa-hospital-o {
  position: relative;
  top: -4px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box .search-list li a .fa-plus {
  position: relative;
  left: 2px;
  padding-right: 14px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__holiday {
  margin-left: 24px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__holiday a {
  position: relative;
  display: block;
  width: 390px;
  height: 121px;
  background: url(../images/btn-holiday.png) no-repeat;
  text-decoration: none;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__holiday a i {
  position: absolute;
  left: 24px;
  top: 18px;
  color: #c5c219;
  font-size: 6rem;
  transition: transform 0.3s ease-out;
  -webkit-transition: transform 0.3s ease-out;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map {
  position: relative;
  width: 246px;
  height: 362px;
  margin-left: 180px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map a {
  position: absolute;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map .fade {
  opacity: 0.6;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map .text {
  display: block;
  font-size: 12px;
  text-decoration: none;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map .text .ku {
  padding-left: 4px;
  font-size: 18px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map .text .ku-search {
  display: block;
  padding-top: 11px;
  color: #fff;
  font-size: 10px;
  text-decoration: underline;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map .text .ku-search i {
  padding-right: 2px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__kitaku {
  left: 61px;
  top: 0;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__nishiku {
  left: 0;
  top: 127px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__chuoku {
  left: 113px;
  top: 178px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__higashiku {
  left: 150px;
  top: 148px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__minamiku {
  left: 29px;
  bottom: 0;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__kitaku-text {
  left: -67px;
  top: 38px;
  width: 176px;
  height: 68px;
  color: #6ebbf1;
  background: url(../images/line-kitaku.png) left bottom no-repeat;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__nishiku-text {
  left: -107px;
  top: 152px;
  width: 176px;
  height: 42px;
  color: #edeb36;
  background: url(../images/line-nishiku.png) left bottom no-repeat;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__chuoku-text {
  left: 171px;
  top: 70px;
  width: 150px;
  height: 69px;
  color: #f16ec7;
  text-indent: 42px;
  background: url(../images/line-chuoku.png) left bottom no-repeat;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__chuoku-text .ku-search {
  text-indent: 30px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__higashiku-text {
  left: 185px;
  top: 185px;
  width: 158px;
  height: 46px;
  color: #6ef1e9;
  text-indent: 80px;
  background: url(../images/line-higashiku.png) left center no-repeat;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__higashiku-text .ku-search {
  text-indent: 40px;
}
.gcontent__main--front #main__infinite-scroll #search-hospital__map .map__minamiku-text {
  left: -80px;
  bottom: 55px;
  width: 168px;
  height: 46px;
  color: #75cd82;
  background: url(../images/line-minamiku.png) left center no-repeat;
}
.gcontent__main--front #main__list-medicine {
  width: 100%;
  padding: 24px 15px;
  margin-bottom: 48px;
  box-sizing: border-box;
}
.gcontent__main--front #main__list-medicine ul {
  margin: -15px -15px;
  text-align: center;
}
.gcontent__main--front #main__list-medicine ul li {
  max-width: 240px;
  margin: 15px 0;
  padding: 0 15px;
}
@media screen and (max-width: 1160px) and (min-width: 830px) {
  .gcontent__main--front #main__list-medicine {
    padding-right: 11%;
    padding-left: 11%;
  }
}
.gcontent__main--front #main__list-medicine ul li .medicine {
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  text-decoration: none;
}
.gcontent__main--front #main__list-medicine ul li .medicine .medicine__pict {
  position: relative;
  height: 94px;
  margin-bottom: 14px;
}
.gcontent__main--front #main__list-medicine ul li .medicine .medicine__pict img {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.gcontent__main--front #main__list-medicine ul li .medicine .title {
  font-size: 20px;
  font-weight: 700;
  color: #5ab668;
}
.gcontent__main--front #main__list-medicine ul li .medicine .caption {
  display: block;
  width: 192px;
  height: 52px;
  margin: 8px auto 0;
  color: #8b8b8b;
  font-size: 12px;
  line-height: 1.5;
  overflow: hidden;
}
.gcontent__main--front #main__list-medicine ul li .detail {
  display: block;
  padding-top: 8px;
  color: #a9a714;
  font-size: 12px;
  text-decoration: none;
}
.gcontent__main--front #main__list-medicine ul li .detail:before {
  content: '+ ';
  -webkit-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.gcontent__main--front #main__list-medicine ul li .detail:after {
  content: ' +';
  -webkit-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.gcontent__main--front #main__list-medicine ul li .detail:hover:before {
  content: '+ ';
  -webkit-transform: rotateY(-360deg);
  transform: rotateY(-360deg);
}
.gcontent__main--front #main__list-medicine ul li .detail:hover:after {
  content: ' +';
  -webkit-transform: rotateY(360deg);
  transform: rotateY(360deg);
}
.gcontent__main--front .main__wrap-infobox {
  margin-bottom: 32px;
  box-sizing: border-box;
}
.gcontent__main--front .main__wrap-infobox .infobox {
  width: 495px;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__headline {
  position: relative;
  margin-bottom: 8px;
  padding-bottom: 4px;
  font-size: 18px;
  color: #5ab668;
  border-bottom: 1px solid #5ab668;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__headline:before {
  content: '';
  position: relative;
  top: -2px;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin-right: 5px;
  background: url(../images/headline-icon.png);
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__headline a {
  position: absolute;
  right: 0;
  top: 2px;
  padding: 3px 6px;
  font-size: 12px;
  color: #fff;
  background: #69c076;
  text-decoration: none;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__headline a i {
  padding-right: 4px;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__infolist {
  height: 120px;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__infolist .info .info__date {
  padding-right: 8px;
  color: #8b8b8b;
  font-size: 10px;
}
.gcontent__main--front .main__wrap-infobox .infobox .infobox__infolist .info .info__link {
  display: block;
  width: 100%;
  padding: 5px 0 8px;
  color: #1880c8;
  font-size: 14px;
}
.gcontent__main--front .main__wrap-infobox .infobox--news {
  margin-right: 8px;
}
.gcontent__main--front .main__happy-bnr #happy-bnr {
  position: relative;
  display: block;
  width: 100%;
  height: 165px;
  background: #f1f1f1;
  border: 1px solid #5ab668;
  box-sizing: border-box;
}
.gcontent__main--front .main__happy-bnr #happy-bnr .happy-bnr__book {
  position: absolute;
  left: 45px;
  bottom: 0;
  -webkit-transform-origin: bottom;
  -webkit-transform: scale(0.97);
  transform-origin: bottom;
  transform: scale(0.97);
}
.gcontent__main--front .main__happy-bnr #happy-bnr .happy-bnr__text {
  position: absolute;
  left: 440px;
  top: 42px;
}
.gcontent__main--front .main__happy-bnr .update {
  margin-top: 8px;
}
.gcontent__main--archive .main__article .title,
.gcontent__main--dental .main__article .title,
.gcontent__main--member .main__article .title,
.gcontent__main--page .main__article .title,
.gcontent__main--search .main__article .title {
  margin-bottom: 24px;
}
.gcontent__main--archive .main__article .jump,
.gcontent__main--dental .main__article .jump,
.gcontent__main--member .main__article .jump,
.gcontent__main--page .main__article .jump,
.gcontent__main--search .main__article .jump {
  position: relative;
  top: -16px;
  left: 4px;
  margin-bottom: 24px;
}
.gcontent__main--archive .main__article .jump li,
.gcontent__main--dental .main__article .jump li,
.gcontent__main--member .main__article .jump li,
.gcontent__main--page .main__article .jump li,
.gcontent__main--search .main__article .jump li {
  margin-right: 12px;
}
.gcontent__main--archive .main__article .jump li a,
.gcontent__main--dental .main__article .jump li a,
.gcontent__main--member .main__article .jump li a,
.gcontent__main--page .main__article .jump li a,
.gcontent__main--search .main__article .jump li a {
  color: #1880c8;
}
.gcontent__main--archive .main__article .jump li a i,
.gcontent__main--dental .main__article .jump li a i,
.gcontent__main--member .main__article .jump li a i,
.gcontent__main--page .main__article .jump li a i,
.gcontent__main--search .main__article .jump li a i {
  padding-right: 3px;
}
.gcontent__main--archive .main__article .article-header,
.gcontent__main--dental .main__article .article-header,
.gcontent__main--member .main__article .article-header,
.gcontent__main--page .main__article .article-header,
.gcontent__main--search .main__article .article-header {
  position: relative;
}
.gcontent__main--archive .main__article .article-header .search-by,
.gcontent__main--dental .main__article .article-header .search-by,
.gcontent__main--member .main__article .article-header .search-by,
.gcontent__main--page .main__article .article-header .search-by,
.gcontent__main--search .main__article .article-header .search-by {
  position: absolute;
  right: 0;
  bottom: 16px;
}
.gcontent__main--archive .main__article .area,
.gcontent__main--dental .main__article .area,
.gcontent__main--member .main__article .area,
.gcontent__main--page .main__article .area,
.gcontent__main--search .main__article .area {
  margin-bottom: 64px;
  font-size: 0;
}
.gcontent__main--archive .main__article .area .area__title,
.gcontent__main--dental .main__article .area .area__title,
.gcontent__main--member .main__article .area .area__title,
.gcontent__main--page .main__article .area .area__title,
.gcontent__main--search .main__article .area .area__title {
  margin-bottom: 16px;
  padding: 8px;
  color: #5ab668;
  font-size: 20px;
  font-weight: 700;
  border-bottom: 1px solid #5ab668;
}
.gcontent__main--archive .main__article .area .area__title .mini,
.gcontent__main--dental .main__article .area .area__title .mini,
.gcontent__main--member .main__article .area .area__title .mini,
.gcontent__main--page .main__article .area .area__title .mini,
.gcontent__main--search .main__article .area .area__title .mini {
  padding-right: 3px;
  color: #5ab668;
  font-size: 12px;
}
.gcontent__main--archive .main__article .area .area__title .mini--right,
.gcontent__main--dental .main__article .area .area__title .mini--right,
.gcontent__main--member .main__article .area .area__title .mini--right,
.gcontent__main--page .main__article .area .area__title .mini--right,
.gcontent__main--search .main__article .area .area__title .mini--right {
  padding: 0 0 0 3px;
}
.gcontent__main--member .member-leftbox,
.gcontent__main--search .member-leftbox {
  display: inline-block;
  vertical-align: top;
  width: 20%;
}
.gcontent__main--member .member-leftbox > section,
.gcontent__main--search .member-leftbox > section {
  background: #f8f8f8;
  border: 2px solid #5ab668;
}
.gcontent__main--member .member-leftbox > section h3,
.gcontent__main--search .member-leftbox > section h3 {
  padding: 8px 16px;
  color: #fff;
  text-align: center;
  background: #5ab668;
  box-sizing: border-box;
}
.gcontent__main--member .member-leftbox > section div,
.gcontent__main--search .member-leftbox > section div {
  padding: 16px;
  box-sizing: border-box;
}
.gcontent__main--member .member-leftbox > section div li,
.gcontent__main--search .member-leftbox > section div li {
  line-height: 1.5;
}
.gcontent__main--member .member-leftbox > section div li a,
.gcontent__main--search .member-leftbox > section div li a {
  color: #1880c8;
  transition: color 0.3s ease-out;
  -webkit-transition: color 0.3s ease-out;
}
.gcontent__main--member .member-leftbox > section div li a:hover,
.gcontent__main--search .member-leftbox > section div li a:hover {
  color: #edeb36;
}
.gcontent__main--member .member-rightbox,
.gcontent__main--search .member-rightbox {
  float: right;
  vertical-align: top;
  width: 76%;
}
.gcontent__main--member .category,
.gcontent__main--member .tag,
.gcontent__main--search .category,
.gcontent__main--search .tag {
  color: #1880c8;
  font-size: 14px;
}
.gcontent__main--member .category a,
.gcontent__main--search .category a {
  color: #1880c8;
  transition: color 0.3s ease-out;
  -webkit-transition: color 0.3s ease-out;
}
.gcontent__main--member .category a:hover,
.gcontent__main--search .category a:hover {
  color: #edeb36;
}
.gcontent__main--member .tag,
.gcontent__main--search .tag {
  margin-bottom: 20px;
}
.gcontent__main--member .tag a,
.gcontent__main--search .tag a {
  display: inline-block;
  padding: 1px 6px;
  color: #fff;
  font-size: 12px;
  text-decoration: none;
  background: #1880c8;
  border-radius: 4px;
  transition: color 0.3s ease-out;
  -webkit-transition: color 0.3s ease-out;
}
.gcontent__main--member .tag a:hover,
.gcontent__main--search .tag a:hover {
  color: #edeb36;
}
.gcontent__main--member .entry,
.gcontent__main--search .entry {
  padding: 24px;
  margin-bottom: 40px;
  background: #f1f1f1;
  border-radius: 8px;
  box-sizing: border-box;
  border: 1px solid #ebebeb;
}
.gcontent__main--member .entry .entry__header .title,
.gcontent__main--search .entry .entry__header .title {
  width: 100%;
  padding-bottom: 16px;
  margin-bottom: 10px !important;
  color: #515151;
  font-size: 24px;
}
.gcontent__main--member .entry .entry__content,
.gcontent__main--search .entry .entry__content {
  line-height: 1.8;
}
.gcontent__main--member .entry .entry__content img,
.gcontent__main--search .entry .entry__content img {
  margin-top: 10px;
}
.gcontent__main--member #searchform .assistive-text,
.gcontent__main--search #searchform .assistive-text {
  line-height: 1.5;
}
.gcontent__main--member #searchform input[type='text'],
.gcontent__main--search #searchform input[type='text'] {
  margin-bottom: 14px;
}
.gcontent__main--member #searchform label,
.gcontent__main--search #searchform label {
  cursor: pointer;
}
.gcontent__main--member #searchform label input[type='checkbox'],
.gcontent__main--search #searchform label input[type='checkbox'] {
  margin: 5px 0;
}
.gcontent__main--member #searchform input[type='submit'],
.gcontent__main--search #searchform input[type='submit'] {
  width: 100%;
  margin-top: 14px;
  padding: 8px;
  color: #fff;
  background: #5ab668;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  box-shadow: 0 4px 0 #41924d;
}
.gcontent__main--member .search-conditions,
.gcontent__main--search .search-conditions {
  margin-bottom: 32px;
}
.gcontent__main--member .search-conditions .search-conditions__keyword,
.gcontent__main--member .search-conditions .search-conditions__tag,
.gcontent__main--search .search-conditions .search-conditions__keyword,
.gcontent__main--search .search-conditions .search-conditions__tag {
  margin-bottom: 16px;
}
.gcontent__main--member .search-conditions .search-conditions__keyword i,
.gcontent__main--member .search-conditions .search-conditions__tag i,
.gcontent__main--search .search-conditions .search-conditions__keyword i,
.gcontent__main--search .search-conditions .search-conditions__tag i {
  color: #1880c8;
}
.gcontent__main--member .search-conditions .search-conditions__keyword span,
.gcontent__main--member .search-conditions .search-conditions__tag span,
.gcontent__main--search .search-conditions .search-conditions__keyword span,
.gcontent__main--search .search-conditions .search-conditions__tag span {
  color: #c0699a;
}
.gcontent__main--member .search-result,
.gcontent__main--search .search-result {
  margin-top: 32px;
}
.gcontent__main--member .search-result__title,
.gcontent__main--search .search-result__title {
  width: auto;
  margin-bottom: 20px;
  color: #5ab668;
  font-size: 24px;
  font-weight: 700;
}
.gcontent__main--archive .main__article .area .area__reading-links {
  font-size: 14px;
}
.gcontent__main--archive .main__article .area .area__reading-links li {
  margin-right: 16px;
}
.gcontent__main--archive .main__article .area .area__reading-links li a {
  color: #8b8b8b;
}
.gcontent__main--archive .main__article .area .area__reading {
  width: 16px;
  margin: 24px 0 6px;
  padding: 4px 8px;
  color: #fff;
  font-size: 14px;
  text-align: center;
  background: #5ab668;
}
.gcontent__main--page .main__article .title {
  margin-bottom: 24px;
}
.gcontent__main--page .main__article .entry__content h2 {
  margin-bottom: 16px;
  padding-bottom: 8px;
  color: #5ab668;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #5ab668;
}
.gcontent__main--page .main__article .entry__content td {
  border-right: 1px solid #c8c8c8;
}
.gcontent__main--page .main__article .entry__content td:last-child {
  border-right: none;
}
.gcontent__main--page .main__article .entry__content tr:nth-child(even) td {
  background: #f4fcf5;
}
.gcontent__main--page .main__article .entry__content p {
  font-size: 15px;
  line-height: 2;
}
.gcontent__main--page .main__article .entry__content p a {
  color: #1880c8;
}
.gcontent__main--single .entry__header {
  margin-bottom: 16px;
}
.gcontent__main--single .entry__header .title {
  position: relative;
  width: 100%;
  padding-bottom: 16px;
  color: #515151;
  font-size: 28px;
}
.gcontent__main--single .entry__header .title .area {
  position: relative;
  top: -1px;
  margin-left: 8px;
  padding: 4px 6px;
  color: #fff;
  font-size: 12px;
  background: #5ab668;
}
.gcontent__main--single .entry__header .info {
  padding-top: 8px;
  color: #5ab668;
}
.gcontent__main--single .entry__header .info .info__address {
  margin-right: 12px;
}
.gcontent__main--single .entry__header .info i {
  padding-right: 4px;
}
.gcontent__main--single #tbl-hospital {
  margin-right: 8px;
}
.gcontent__main--single #tbl-hospital th {
  width: 85px;
}
.gcontent__main--single #tbl-hospital td {
  width: 440px;
  background: #f1f1f1;
}
.gcontent__main--single #tbl-hospital td .tel {
  padding-right: 8px;
}
.gcontent__main--single #tbl-hospital td .fax {
  padding-right: 6px;
}
.gcontent__main--single #tbl-hospital td .reception_day {
  display: inline-block;
  min-width: 150px;
  margin: 4px 0 2px;
  padding: 2px 8px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  background: #c0699a;
}
.gcontent__main--single #tbl-hospital td .reception_time {
  display: block;
}
.gcontent__main--single #tbl-event {
  margin-bottom: 8px;
}
.gcontent__main--single #tbl-event th {
  width: 150px;
}
.gcontent__main--single #tbl-event td {
  width: 810px;
  background: #f1f1f1;
}
.gcontent__main--single #event-content h2 {
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #5ab668;
  margin-top: 40px;
  color: #5ab668;
  font-size: 21px;
  font-weight: 700;
}
.gcontent__main--single #event-content p {
  font-size: 15px;
  line-height: 2;
}
.gcontent__main--single #event-content a {
  display: inline-block;
  line-height: 2;
}
.gcontent__main--single #gmap {
  position: relative;
}
.gcontent__main--single #gmap #gmap-link {
  position: absolute;
  right: 8px;
  top: 8px;
  z-index: 9998;
  display: block;
  padding: 8px;
  color: #1880c8;
  background: #fff;
}
.gcontent__main--single .main__related-hospitals {
  width: 100%;
  margin-top: 40px;
  padding: 32px 0;
}
.gcontent__main--single .main__related-hospitals .related {
  position: relative;
  left: 16px;
}
.gcontent__main--single .main__related-hospitals .related .related__title {
  color: #5ab668;
  font-size: 21px;
  margin-bottom: 16px;
}
.gcontent__main--single .main__related-hospitals .related .related__title .area {
  font-weight: 700;
}
.gcontent__main--single .main__related-hospitals .related .related__title .cap {
  padding-left: 2px;
  font-size: 16px;
}
.gcontent__main--single .main__related-hospitals .related .related__title i {
  position: relative;
  top: -1px;
  padding-right: 8px;
}
.gcontent__main--single .main__related-hospitals .related .search-by {
  position: relative;
  left: 2px;
  width: 345px;
  margin-top: 24px;
}
.gcontent__main--fixpage .main__article .article-header .title {
  margin-bottom: 24px;
}
.gcontent__main--fixpage .main__article .content-nav {
  padding: 10px 8px;
  margin-bottom: 32px;
  border: 2px solid #5ab668;
  background: #cdf6d3;
  text-align: center;
}
.gcontent__main--fixpage .main__article .content-nav li {
  margin-right: 16px;
  font-size: 16px;
}
.gcontent__main--fixpage .main__article .content-nav li a {
  color: #1880c8;
  font-size: 16px;
  font-weight: 700;
}
.gcontent__main--fixpage .main__article .content-nav li i {
  padding-right: 4px;
  font-size: 16px;
  font-weight: 700;
}
.fixpage-section__title {
  margin-bottom: 16px;
  padding-bottom: 8px;
  color: #5ab668;
  font-size: 24px;
  font-weight: 700;
  border-bottom: 1px solid #5ab668;
}
.fixpage-section__titlemini {
  line-height: 2;
  color: #5ab668;
  font-size: 18px;
}
.gcontent__main--fixpage .main__article .fixpage-section .fixpage-section__list a,
.gcontent__main--fixpage .main__article .fixpage-section .fixpage-section__p a {
  color: #1880c8;
}
.gcontent__main--fixpage .main__article .fixpage-section .mini {
  padding-left: 4px;
  font-size: 14px;
}
.gcontent__main--fixpage .main__article .fixpage-section .fixpage-section__p {
  font-size: 15px;
  line-height: 2;
}
.gcontent__main--fixpage .main__article .fixpage-section .fixpage-section__list {
  list-style: disc;
  font-size: 15px;
  line-height: 2;
  padding-left: 16px;
}
.fixpage-section__box {
  border: 1px solid #5ab668;
  padding: 8px 16px;
  box-sizing: border-box;
  font-size: 15px;
}
.pregnant-qa a {
  color: #1880c8;
  font-size: 14px;
}
.pregnant-qa a i {
  padding-right: 4px;
}
.tbl-members {
  margin-bottom: 40px;
}
.tbl-members th {
  border-right: 1px solid #5ab668;
}
.tbl-members td {
  padding: 8px 64px;
}
.tbl-members .even {
  background: #f4fcf5;
}
.tbl-members .gl {
  color: #4c4c4c !important;
  background: #f1f1f1 !important;
  border-right: 1px solid #c8c8c8 !important;
  border-bottom: 1px solid #c8c8c8 !important;
}
.pager {
  display: table;
  letter-spacing: -1em;
  margin: 70px 0 40px;
  text-align: center;
  width: 100%;
}
.pager > * {
  font-size: 13px;
  font-size: 1.3rem;
  -webkit-transition: background-color 0.4s, border 0.4s, color 0.4s;
  -moz-transition: background-color 0.4s, border 0.4s, color 0.4s;
  -ms-transition: background-color 0.4s, border 0.4s, color 0.4s;
  -o-transition: background-color 0.4s, border 0.4s, color 0.4s;
  transition: background-color 0.4s, border 0.4s, color 0.4s;
  background-color: #5ab668;
  border: 1px solid #5ab668;
  color: #fff;
  display: inline-block;
  letter-spacing: 0;
  line-height: 1;
  padding: 8px 10px;
  vertical-align: top;
}
.pager > a {
  cursor: pointer;
  text-decoration: none;
}
.pager > .current {
  background-color: #e0e0e0 !important;
  border-color: #e0e0e0 !important;
  color: #fff !important;
}
.pager > .js-add-is-active,
.pager > :focus,
.pager > :hover {
  background-color: #fff;
  border-color: #5ab668;
  color: #5ab668;
}
.pager > * + * {
  margin-left: 5px;
}
.u-sp {
  display: none !important;
}
.u-bg {
  background: url(../images/bg.png) !important;
}
.u-bg--white {
  background: url(../images/bg-white.png) !important;
}
.u-bg--title {
  background: url(../images/bg-title.png) left bottom no-repeat !important;
}
.u-content {
  width: 1004px !important;
}
.u-article {
  width: 960px !important;
}
.u-ib,
.u-ibchild > li {
  display: inline-block !important;
}
.u-vt {
  vertical-align: top !important;
}
.u-vm {
  vertical-align: middle !important;
}
.u-vb {
  vertical-align: bottom !important;
}
.u-pb {
  padding-bottom: 16px !important;
}
.u-pb2 {
  padding-bottom: 32px !important;
}
.u-pb3 {
  padding-bottom: 48px !important;
}
.u-pb4 {
  padding-bottom: 64px !important;
}
.u-ml {
  margin-left: 16px;
}
.u-mb {
  margin-bottom: 16px !important;
}
.u-textleft {
  text-align: left !important;
}
.u-textcenter {
  text-align: center !important;
}
.u-textright {
  text-align: right !important;
}
.u-clear:after {
  content: '' !important;
  display: block !important;
  clear: both !important;
}
.u-notice {
  background-color: #edeb36;
  color: #51a75e;
}
.u-center {
  margin-left: auto !important;
  margin-right: auto !important;
}
.u-fade {
  transition: opacity 0.3s ease-out !important;
}
.u-fade,
.u-fade--rev {
  -webkit-transition: opacity 0.3s ease-out !important;
}
.u-fade:hover {
  opacity: 0.7 !important;
}
.u-fade--rev {
  transition: opacity 0.3s ease-out !important;
  opacity: 0.85 !important;
}
.u-fade--rev:hover {
  opacity: 1 !important;
}
.u-highlight {
  -webkit-transition: color 0.3s ease-out !important;
  transition: color 0.3s ease-out !important;
}
.u-highlight:hover {
  color: #edeb36 !important;
}
.u-highlight--bg {
  -webkit-transition: color 0.3s ease-out, background 0.3s ease-out !important;
  transition: color 0.3s ease-out, background 0.3s ease-out !important;
}
.u-highlight--bg:hover {
  color: #8b8b8b !important;
  background: #edeb36 !important;
}
.u-trans {
  -webkit-transition: all 0.3s ease-out !important;
  transition: all 0.3s ease-out !important;
}
.u-textflow {
  overflow: hidden !important;
  white-space: nowrap !important;
  -webkit-text-overflow: ellipsis !important;
  text-overflow: ellipsis !important;
}
.u-scrollbox {
  overflow: scroll !important;
}
.u-scrollbox::-webkit-scrollbar {
  width: 5px;
  height: 0;
  background: #323232;
}
.u-scrollbox::-webkit-scrollbar-thumb {
  background: #69c076;
  border-radius: 1px;
}
.u-scrollbox::-webkit-scrollbar-corner {
  background: 0 0;
}
.u-scale-default {
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}
.u-bold {
  font-weight: bold;
}
.u-new {
  color: #8b8b8b !important;
  font-size: 12px !important;
}
.u-new:before {
  content: 'NEW' !important;
  position: relative !important;
  top: -2px !important;
  margin-right: 4px !important;
  padding: 4px !important;
  color: #fff !important;
  font-size: 10px !important;
  background: #5ab668 !important;
  vertical-align: middle !important;
}
.u-morphing {
  -webkit-transition: width 0.5s ease-out, height 0.5s ease-out, border-radius 0.5s ease-out !important;
  transition: width 0.5s ease-out, height 0.5s ease-out, border-radius 0.5s ease-out !important;
}
@media screen and (max-width: 480px) {
  img {
    max-width: 300px !important;
  }
  #gheader .gheader__content {
    text-align: center;
  }
  #gheader .gheader__content .title {
    padding: 0;
  }
  #gheader #gnav {
    height: auto;
  }
  #gheader #gnav .gnav__links .link {
    position: relative;
    width: 100%;
    border-top: 1px solid #cdf6d3;
  }
  #gheader #gnav .gnav__links .link:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 13px;
    z-index: 1;
    display: block;
    height: 18px;
    background: url(../images/gnav-splite.png);
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  #gheader #gnav .gnav__links #sp-menu i {
    color: #fff;
    font-size: 40px;
    line-height: 68px;
  }
  #gheader #gnav .gnav__links .link01 {
    width: 100%;
  }
  #gheader #gnav .gnav__links .link01:before {
    width: 24px;
    background-position: left top;
  }
  #gheader #gnav .gnav__links .link02 {
    width: 100%;
  }
  #gheader #gnav .gnav__links .link02:before {
    width: 18px;
    background-position: 55% top;
  }
  #gheader #gnav .gnav__links .link02:hover:before {
    background-position: 55% bottom;
  }
  #gheader #gnav .gnav__links .link03 {
    width: 100%;
  }
  #gheader #gnav .gnav__links .link03:before {
    width: 18px;
    background-position: 32% top;
  }
  #gheader #gnav .gnav__links .link03:hover:before {
    background-position: 32% bottom;
  }
  #gheader #gnav .gnav__links .link04 {
    width: 100%;
  }
  #gheader #gnav .gnav__links .link04:before {
    width: 18px;
    background-position: 79% top;
  }
  #gheader #gnav .gnav__links .link04:hover:before {
    background-position: 79% bottom;
  }
  #gheader #gnav .gnav__links .link05 {
    width: 100%;
  }
  #gheader #gnav .gnav__links .link05:before {
    width: 16px;
    background-position: right top;
  }
  #gheader #gnav .gnav__links .link05:hover:before {
    background-position: right bottom;
  }
  #gfooter {
    position: relative;
    margin-top: 64px;
    padding: 48px 0;
    box-sizing: border-box;
  }
  #gfooter .gfooter__info {
    position: relative;
    text-align: center;
  }
  #gfooter .gfooter__info .info-site {
    margin-bottom: 24px;
    text-align: center;
  }
  #gfooter .gfooter__info .info-site .info-site__phone {
    position: relative;
    left: -6px;
    padding-top: 8px;
  }
  #gfooter .gfooter__info .info-site--left {
    display: block;
    margin-right: 0;
  }
  #gfooter .gfooter__info .info-site--right > div:first-child {
    margin-bottom: 24px;
  }
  #gfooter .gfooter__info .mini-links {
    position: relative;
    right: 0;
    bottom: 0;
  }
  #gfooter .gfooter__info .mini-links .mini-links__copy {
    padding-top: 8px;
  }
  #gfooter #pagetop {
    position: absolute;
    right: 8px;
    top: -93px;
    padding: 7px 24px;
    color: #fff;
    background: #51a75e;
    cursor: pointer;
    border-radius: 3px 3px 0 0;
  }
  #gfooter #pagetop i {
    margin-bottom: 4px;
  }
  .gcontent__main--front #main__infinite-scroll {
    height: 370px;
  }
  .gcontent__main--front #main__infinite-scroll #search-hospital .search-hospital__box {
    width: 92%;
    height: 200px;
    margin: 16px auto;
    background: #fff;
    background: rgba(255, 255, 255, 0.2);
    border: 3px solid #69c076;
    border-top: none;
  }
  .gcontent__main--front #main__infinite-scroll #search-hospital #search-hospital__holiday {
    margin-left: 0;
    text-align: center;
  }
  .gcontent__main--front #main__list-medicine {
    width: 100%;
    height: auto;
    padding: 24px 0;
    margin-bottom: 48px;
    box-sizing: border-box;
  }
  .gcontent__main--front .main__wrap-infobox {
    margin-bottom: 32px;
    box-sizing: border-box;
  }
  .gcontent__main--front .main__wrap-infobox .infobox {
    width: 92%;
    margin: 0 auto;
    display: block !important;
  }
  .gcontent__main--front .main__wrap-infobox .infobox--news {
    margin-bottom: 24px;
  }
  .gcontent__main--front .main__happy-bnr a,
  .gcontent__main--front .main__happy-bnr p {
    display: block;
    width: 300px;
    margin: 0 auto;
  }
  .gcontent__main .hospital-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    margin: 0 0 8px;
    padding: 20px;
    text-decoration: none;
    background: #fff;
    border: 1px solid #5ab668;
    border-radius: 4px;
    box-sizing: border-box;
  }
  .gcontent__main--archive .main__article .title,
  .gcontent__main--dental .main__article .title,
  .gcontent__main--member .main__article .title,
  .gcontent__main--search .main__article .title {
    margin-bottom: 24px;
  }
  .gcontent__main--archive .main__article .jump li,
  .gcontent__main--dental .main__article .jump li,
  .gcontent__main--member .main__article .jump li,
  .gcontent__main--search .main__article .jump li {
    margin: 8px 16px 16px;
  }
  .gcontent__main--archive .main__article .article-header .search-by,
  .gcontent__main--dental .main__article .article-header .search-by,
  .gcontent__main--member .main__article .article-header .search-by,
  .gcontent__main--search .main__article .article-header .search-by {
    position: relative;
    bottom: 24px;
  }
  .gcontent__main--single #tbl-hospital {
    margin-right: 0;
    border: 1px solid #5ab668;
    border-bottom: none;
  }
  .gcontent__main--single .simplemap {
    width: auto;
    max-width: 480px;
  }
  .gcontent__main--single #gmap {
    position: relative;
    margin-top: 16px;
  }
  .gcontent__main--single .main__related-hospitals {
    width: 100%;
    margin-top: 40px;
    padding: 32px 0;
  }
  .gcontent__main--single .main__related-hospitals .related {
    position: relative;
    left: 0;
  }
  .gcontent__main--single .main__related-hospitals .related .related__title {
    text-align: center;
  }
  .gcontent__main--single .main__related-hospitals .related .hospital-box {
    display: block;
    width: 92%;
    margin: 0 auto 16px;
  }
  .gcontent__main--single .main__related-hospitals .related .search-by {
    position: relative;
    width: 92%;
    margin: 24px auto 0;
    text-align: center;
  }
  .u-sp {
    display: block !important;
  }
  .u-pc,
  .u-sp-hide {
    display: none !important;
  }
  .u-sp-hide {
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  .u-content {
    width: 100% !important;
  }
  .u-article {
    width: 300px !important;
  }
}

.table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #5ab668;
  width: 100%;
}
.table th,
.table td {
  font-size: 15px;
  padding: 10px;
  text-align: center;
  vertical-align: top;
}
.table th {
  background-color: #5ab668;
  color: #fff;
  font-weight: bold;
}
.table tr:not(:first-child) th,
.table tr:not(:last-child) th {
  border-left: 1px solid #fff;
}
.table td {
  background-color: #fff !important;
  border: 1px solid #5ab668;
  color: #515151;
}

.grid {
  overflow: hidden;
}
/*
.grid__child {
  float: left;
  width: 50%;
}
*/
.blockindnet {
  display: block;
  margin-left: 16px;
}

.side-list li {
  list-style: disc;
  margin-left: 1.4em;
}
.side-list li.current-cat > a {
  background-color: #edeb36;
  color: #bda28b;
}
.side-list > li + li {
  margin-top: 5px;
}
.side-list .children li {
  margin-top: 2px;
}

.p-holiday-page {
  width: 100%;
  box-sizing: border-box;
}
.p-holiday-table {
  width: 100%;
}
.p-holiday-table__title {
  padding: 15px 12px;
  color: #ffffff;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #5ab668;
  background: #69c076;
  position: relative;
  z-index: 0;
}
.p-holiday-table__th {
  padding: 10px 5px;
  line-height: 1.5;
  border-right-width: 1px;
  border-right-style: solid;
  border-right-color: #c8c8c8;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #c8c8c8;
  text-align: center;
  background: #f1f1f1;
  vertical-align: middle;
  width: 100%;
}
.p-holiday-table__th:first-of-type {
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: #c8c8c8;
}
.p-holiday-table__td {
  line-height: 1.5;
  padding: 8px 5px;
  text-align: center;
  font-size: 12px;
  border-right-width: 1px;
  border-right-style: solid;
  border-right-color: #c8c8c8;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #c8c8c8;
  vertical-align: middle;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-holiday-table__td a {
  font-size: 12px;
  color: #1880c8;
  transition: color 0.3s ease-out, background 0.3s ease-out;
}
.p-holiday-table__td a span,
.p-holiday-table__td:nth-of-type(3) span {
  display: inline-block;
}
.p-holiday-table__td a span {
  text-decoration: underline;
}
.p-holiday-table__td a:hover {
  background: #edeb36;
}
.p-holiday-table__td:first-of-type {
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: #c8c8c8;
}
.p-holiday-table__td--small {
  font-size: 12px;
}

.p-holiday-table__td a br {
  display: none;
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}
.accordion-trigger.is-active .accordion-icon::after {
  transform: rotate(0deg);
}
.accordion-icon {
  display: block;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  background: #edeb36;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.accordion-icon::before,
.accordion-icon::after {
  content: '';
  display: block;
  width: 12px; /* 横線の長さ */
  height: 2px; /* 横線の高さ */
  background: #5ab668; /* プラスの色 */
}

.accordion-icon::after {
  position: absolute;
  transition: transform 0.3s ease-in-out;
  transform: rotate(90deg); /* 縦線を作成 */
}

.p-greeting {
  display: flex;
  flex-direction: column-reverse;
}

.p-greeting-pic {
  width: 300px;
  max-width: 100%;
}

.p-greeting-text {
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 30px;
  text-align: center;
}

.p-greeting-pic img {
  height: auto;
  max-width: 100%;
}

.p-holiday-table--24h .p-holiday-table__td .p-holiday-table--24h .p-holiday-table__td {
  box-sizing: border-box;
}

@media screen and (min-width: 481px) {
  .accordion-trigger {
    pointer-events: none;
  }
  .accordion-content {
    max-height: 100%;
  }
  .accordion-icon {
    display: none;
  }
  .p-holiday-page {
    width: 960px;
    margin-inline: auto;
  }
  .p-holiday-table__wrap {
    display: flex;
  }
  .p-holiday-table__title {
    text-align: center;
  }
  .p-holiday-table:first-of-type {
    width: calc(560 / 960 * 100%);
  }
  .p-holiday-table:last-of-type {
    width: calc(400 / 960 * 100%);
  }
  .p-holiday-table:last-of-type .p-holiday-table__title {
    background: #69c076;
    border-color: #69c076;
    color: #ffffff;
  }
  .p-holiday-table__th {
    padding: 12px;
  }
  .p-holiday-table__td {
    padding: 12px 7px;
    height: 55px;
    font-size: 15px;
  }
  .p-holiday-table__td a {
    font-size: 13px;
  }
  .p-holiday-table:first-of-type .p-holiday-table__title {
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #ffffff;
  }
  .p-holiday-table__td a br {
    display: block;
  }
  .u-pc-hidden {
    display: none;
  }

  .p-holiday-table__td--small {
    font-size: 14px;
  }

  .p-greeting {
    flex-direction: row;
  }

  .p-greeting-textarea {
    padding-right: 30px;
  }

  .p-holiday-table--24h {
    width: 450px !important;
    max-width: 100%;
  }

  .p-holiday-table--24h .p-holiday-table__th {
    width: 50%;
    box-sizing: border-box;
  }

  .p-holiday-table--24h .p-holiday-table__td {
    width: 50%;
    height: auto;
    box-sizing: border-box;
  }

  .p-holiday-table--newyear .p-holiday-table:first-of-type {
    width: 50%;
  }

  .p-holiday-table--newyear .p-holiday-table:not(:first-of-type) {
    width: 25%;
  }

  .p-holiday-table--newyear .p-holiday-table__td {
    text-align: left;
  }

  .p-holiday-table--newyear .p-holiday-table__td:first-of-type {
    text-align: center;
  }
  .p-holiday-table--newyear .p-holiday-table__td:not(:first-of-type) {
    justify-content: flex-start;
  }

  .p-holiday-table--newyear .p-holiday-table:last-of-type .p-holiday-table__title {
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #ffffff;
  }
}

@media screen and (max-width: 480px) {
  .p-holiday-table__th:first-of-type,
  .p-holiday-table__td:first-of-type {
    width: 60px;
    flex: 0 0 auto;
  }
  .p-holiday-table__th:nth-of-type(2),
  .p-holiday-table__td:nth-of-type(2) {
    width: 95px;
    flex: 0 0 auto;
  }
  .p-holiday-table--newyear .p-holiday-table__th,
  .p-holiday-table--newyear .p-holiday-table__td {
    width: 50%;
    box-sizing: border-box;
  }
  .p-holiday-table--24h .p-holiday-table__th {
    width: 50%;
    box-sizing: border-box;
  }

  .p-holiday-table--24h .p-holiday-table__td {
    width: 50%;
    box-sizing: border-box;
  }

  .p-holiday-table--yellow .p-holiday-table__title {
    background: #edeb36;
    border-color: #edeb36;
    color: #515151;
  }
  .p-holiday-table--yellow .p-holiday-table__title::before {
    background: #edeb36;
  }
  .p-holiday-table--yellow .p-holiday-table__title .accordion-icon {
    background: #69c076;
  }

  .p-holiday-table--yellow .p-holiday-table__title .accordion-icon::before,
  .p-holiday-table--yellow .p-holiday-table__title .accordion-icon::after {
    background: #edeb36;
  }
}

.u-bg-f4fcf5 {
  background: #f4fcf5;
}

.u-flex {
  display: flex;
}

.u-w-full {
  width: 100%;
}

.entry__content:has(.p-holiday-table__wrap) > div[id] {
  width: 100%;
}
