@charset "utf-8";

/*========================================================================================================================


  ◇◆◇ トップページ ◇◆◇
  
  
========================================================================================================================*/

/*----------------------------------------------------------------------------------------------------

  main slide
  
----------------------------------------------------------------------------------------------------*/

#mainSlide-wrap {
  box-sizing: border-box;
  width: 100%;
  height: 680px;
  padding-left: 30px;
  padding-right: 30px;
  z-index: 10;
  position: relative;
}

#mainSlide {
  width: 100%;
  height: 680px;
  position: relative;
  list-style: none;
  border-radius: 10px;
  overflow: hidden;
}

#mainSlide li {
  position: relative;
  height: 680px;
}

#mainSlide li .txt {
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  text-align: center;
  position: absolute;
  left: 0;
  top: 34%;
  transform: translateY(-50%);
  z-index: 3;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

#mainSlide li .photo {
  width: 100%;
  height: 680px;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
}

.csstransitions #mainSlide .slick-list li.active-zoom .photo {
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  -webkit-animation: imageAnimation 15s linear forwards;
  -moz-animation: imageAnimation 15s linear forwards;
  -o-animation: imageAnimation 15s linear forwards;
  -ms-animation: imageAnimation 15s linear forwards;
  animation: imageAnimation 15s linear forwards;
}

@media screen and (max-width:640px) {
  #mainSlide-wrap {
    height: inherit;
    padding-left: 0;
    padding-right: 0;
  }

  #mainSlide {
    border-radius: 0;
  }

  #mainSlide,
  #mainSlide li .photo,
  #mainSlide li {
    height: 450px;
  }
}

@-webkit-keyframes imageAnimation {
  0% {
    opacity: 0;
    -webkit-animation-timing-function: ease-in;
  }

  4% {
    opacity: 1;
    -webkit-transform: scale(1);
  }

  100% {
    -webkit-transform: scale(1.2);
  }
}

@-moz-keyframes imageAnimation {
  0% {
    opacity: 0;
    -moz-animation-timing-function: ease-in;
  }

  4% {
    opacity: 1;
    -moz-transform: scale(1);
  }

  100% {
    -moz-transform: scale(1.2);
  }
}

@-o-keyframes imageAnimation {
  0% {
    opacity: 0;
    -o-animation-timing-function: ease-in;
  }

  4% {
    opacity: 1;
    -o-transform: scale(1);
  }

  100% {
    -o-transform: scale(1.2);
  }
}

@-ms-keyframes imageAnimation {
  0% {
    opacity: 0;
    -ms-animation-timing-function: ease-in;
  }

  4% {
    opacity: 1;
    -ms-transform: scale(1);
  }

  100% {
    -ms-transform: scale(1.2);
  }
}

@keyframes imageAnimation {
  0% {
    opacity: 0;
    animation-timing-function: ease-in;
  }

  4% {
    opacity: 1;
    transform: scale(1) rotate(0.1deg);
    /* IEカクつき対処（rotate） */
  }

  100% {
    transform: scale(1.2) rotate(0.1deg);
  }
}

#mainSlide li.slide07 {
  background-color: #000;
}

#mainSlide li.slide00 .photo {
  background-image: url(../image/top/slide/00.webp);
}

#mainSlide li.slide01 .photo {
  background-image: url(../image/top/slide/01.webp);
}

#mainSlide li.slide02 .photo {
  background-image: url(../image/top/slide/02.webp);
}

#mainSlide li.slide03 .photo {
  background-image: url(../image/top/slide/03.webp);
}

#mainSlide li.slide04 .photo {
  background-image: url(../image/top/slide/04.webp);
}

#mainSlide li.slide05 .photo {
  background-image: url(../image/top/slide/05.webp);
}

#mainSlide li.slide06 .photo {
  background-image: url(../image/top/slide/06.webp);
}

#mainSlide li.slide07 .photo {
  background-image: url(../image/top/slide/07.webp);
}

#mainSlide li.slide00 .txt,
#mainSlide li.slide01 .txt {
  background-image: url(../image/top/slide/00_txt.png?v=5);
}

#mainSlide li.slide02 .txt {
  background-image: url(../image/top/slide/02_txt.png?v=5);
}

#mainSlide li.slide03 .txt {
  background-image: url(../image/top/slide/03_txt.png?v=5);
}

#mainSlide li.slide04 .txt {
  background-image: url(../image/top/slide/04_txt.png?v=5);
}

#mainSlide li.slide05 .txt {
  background-image: url(../image/top/slide/05_txt.png?v=5);
}

#mainSlide li.slide06 .txt {
  background-image: url(../image/top/slide/06_txt.png?v=5);
}

#mainSlide li.slide07 .txt {
  background-image: url(../image/top/slide/07_txt.png?v=5);
}

@media screen and (max-width:640px) {
  #mainSlide li.slide00 .photo {
    background-position: 36% bottom;
  }

  #mainSlide li.slide07 .photo {
    background-position: 40% bottom;
  }

  #mainSlide li.slide00 .txt,
  #mainSlide li.slide01 .txt {
    background-size: 140% auto;
    background-position: 26% center;
  }

  #mainSlide li.slide07 .txt {
    background-size: 140% auto;
    background-position: 75% center;
  }

  #mainSlide li .txt {
    background-size: 160% auto;
  }
}


/*-----------------------------------------------------------------------------------
  診療科
-----------------------------------------------------------------------------------*/

.mainSlide_shinryoka {
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0;
  z-index: 3;
  overflow: hidden;
  padding-top: 2rem;
}

.mainSlide_shinryoka dl {
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.65);
  border-radius: 8px;
  margin: 0 0.75rem;
}

.mainSlide_shinryoka dt a {
  font-weight: 500;
  font-size: 112.5%;
  display: inline-block;
  background-color: #f19057;
  border: 4px solid #fff;
  color: #fff;
  border-radius: 2em;
  padding: 0.3rem 2rem;
  box-sizing: border-box;
  min-width: 7em;
  transform: translateY(-1.25em);
}

.ua-pc .mainSlide_shinryoka dt a {
  -webkit-transition: background ease 0.2s;
  transition: background ease 0.2s;
}

.ua-pc .mainSlide_shinryoka dt a:hover {
  background-color: #fab973;
}

.mainSlide_shinryoka ul {
  list-style: none;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
}

.mainSlide_shinryoka li {
  display: inline-block;
  box-sizing: border-box;
  padding: 0 0.75rem;
  font-size: 93.8%;
}

.mainSlide_shinryoka li a {
  width: 120px;
  height: 120px;
  display: block;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0px 0px 15px 0px rgba(130, 80, 60, 0.1);
  position: relative;
}

.mainSlide_shinryoka a,
.mainSlide_shinryoka a:visited,
.mainSlide_shinryoka a:hover {
  text-decoration: none;
}

.mainSlide_shinryoka li .ka {
  white-space: nowrap;
  display: inline-block;
  line-height: 1.5;
  position: absolute;
  left: 50%;
  top: 48%;
  transform: translate(-50%, -50%);
}

.mainSlide_shinryoka li .ka:before {
  content: "";
  width: 100px;
  height: 50px;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

.mainSlide_shinryoka li.naika .ka:before {
  background-image: url(../image/icon/naika.svg);
}

.mainSlide_shinryoka li.icho .ka:before {
  background-image: url(../image/icon/icho.svg);
}

.mainSlide_shinryoka li.kanzo .ka:before {
  background-image: url(../image/icon/kanzo.svg);
}

.mainSlide_shinryoka li.fujin .ka:before {
  background-image: url(../image/icon/fujin.svg);
}

.mainSlide_shinryoka li.geka .ka:before {
  background-image: url(../image/icon/geka.svg);
}

.mainSlide_shinryoka li.nyusen .ka:before {
  background-image: url(../image/icon/nyusen.svg);
}

.mainSlide_shinryoka li.komon .ka:before {
  background-image: url(../image/icon/komon.svg?v=2);
}

.mainSlide_shinryoka li.kanpo .ka:before {
  background-image: url(../image/icon/kanpo.svg);
}

.no-svg .mainSlide_shinryoka li.naika .ka:before {
  background-image: url(../image/icon/naika.png);
}

.no-svg .mainSlide_shinryoka li.icho .ka:before {
  background-image: url(../image/icon/icho.png);
}

.no-svg .mainSlide_shinryoka li.kanzo .ka:before {
  background-image: url(../image/icon/kanzo.png);
}

.no-svg .mainSlide_shinryoka li.fujin .ka:before {
  background-image: url(../image/icon/fujin.png);
}

.no-svg .mainSlide_shinryoka li.geka .ka:before {
  background-image: url(../image/icon/geka.png);
}

.no-svg .mainSlide_shinryoka li.nyusen .ka:before {
  background-image: url(../image/icon/nyusen.png);
}

.no-svg .mainSlide_shinryoka li.komon .ka:before {
  background-image: url(../image/icon/komon.png?v=2);
}

.no-svg .mainSlide_shinryoka li.kanpo .ka:before {
  background-image: url(../image/icon/kanpo.png);
}


@media print, screen and (min-width:641px) {
  .mainSlide_shinryoka {
    bottom: 80px;
  }

  .mainSlide_shinryoka dd {
    padding: 0 2.25rem 1.25rem 2.25rem;
  }

  .mainSlide_shinryoka li a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: transform ease 0.3s;
    transition: transform ease 0.3s;
  }

  .mainSlide_shinryoka li a:hover {
    transform: scale(1.08);
    z-index: 2;
  }
}

@media screen and (max-width:640px) {
  .mainSlide_shinryoka {
    bottom: 3rem;
  }

  .mainSlide_shinryoka .responBlock {
    width: 920px;
  }

  .mainSlide_shinryoka dd {
    padding: 0 1.5rem 1.25rem 1.5rem;
  }

  .mainSlide_shinryoka li {
    padding: 0 0.5rem;
  }
}


/*-----------------------------------------------------------------------------------
  arrow
-----------------------------------------------------------------------------------*/

.mainSlide__arrow {
  width: 140px;
  margin-left: -1px;
  position: absolute;
  left: 60px;
  bottom: -30px;
  z-index: 3;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0px 0px 15px 0px rgba(130, 80, 60, 0.1);
}

.mainSlide__arrow .slick-prev,
.mainSlide__arrow .slick-next {
  width: 70px;
  height: 60px;
  float: left;
}

.mainSlide__arrow .slick-prev:after,
.mainSlide__arrow .slick-next:after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  border-right: 1px solid rgba(130, 80, 60, 1);
  border-bottom: 1px solid rgba(130, 80, 60, 1);
}

.ua-pc .mainSlide__arrow .slick-prev:hover:after,
.ua-pc .mainSlide__arrow .slick-next:hover:after {
  border-right-color: rgba(238, 124, 58, 1);
  border-bottom-color: rgba(238, 124, 58, 1);
}

.mainSlide__arrow .slick-next:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-left: -6px;
}

.mainSlide__arrow .slick-prev:after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  margin-left: 6px;
}

.mainSlide__arrow .slick-next:before {
  content: "";
  width: 1px;
  height: 16px;
  background-color: #ece5e2;
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}

@media screen and (max-width:640px) {
  .mainSlide__arrow {
    width: 112px;
    bottom: -25px;
    left: 1rem;
  }

  .mainSlide__arrow .slick-prev,
  .mainSlide__arrow .slick-next {
    width: 56px;
    height: 50px;
  }

  .mainSlide__arrow .slick-prev:after,
  .mainSlide__arrow .slick-next:after {
    width: 11px;
    height: 11px;
  }

  .mainSlide__arrow .slick-next:before {
    height: 14px;
  }
}


/*-----------------------------------------------------------------------------------
  dot
-----------------------------------------------------------------------------------*/

.mainSlide__dot {
  line-height: 0;
  position: absolute;
  bottom: 30px;
  right: 60px;
  text-align: center;
  z-index: 3;
}

.mainSlide__dot .slick-dots li button {
  width: 14px;
  height: 14px;
}

.mainSlide__dot .slick-dots li button:before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 100%;
  box-sizing: border-box;
  border: 1px solid #fff;
  opacity: 1 !important;
}

.mainSlide__dot .slick-dots li.slick-active button:before {
  background-color: #fff;
  opacity: 1;
}

@media screen and (max-width:640px) {
  .mainSlide__dot {
    width: 100%;
    right: inherit;
  }
}


/*----------------------------------------------------------------------------------------------------

  お知らせ
  
----------------------------------------------------------------------------------------------------*/

#info {
  text-align: left;
}

#info__list li a,
#info__list li a:visited,
#info__list li a:hover {
  color: #82503c;
  text-decoration: none;
}

#info__list {
  text-align: right;
}

#info__list ul {
  list-style: none;
  text-align: left;
  padding-bottom: 35px;
}

#info__list li {
  box-sizing: border-box;
  border-bottom: 1px solid #ece5e2;
  line-height: 1.6;
}

#info__list li a,
#info__list li .inner {
  display: block;
  padding: 1em 0;
}

#info__list li:first-child a,
#info__list li:first-child .inner {
  padding-top: 0;
}

#info__list li .date {
  color: #b9b1ad;
}

#info__list li .title {
  display: block;
}

.ua-pc #info__list li a:hover {
  color: #ee7c3a;
}

@media print, screen and (min-width:641px) {
  #info {
    padding-top: 100px;
  }

  #info h3 {
    display: inline-block;
    float: left;
    padding-left: 60px;
  }

  #info__list {
    width: 890px;
    float: right;
  }

  #info__list ul {
    padding-top: 0.5em;
  }

  #info__list li a:after,
  #info__list li .inner:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
  }

  #info__list li .date {
    width: 8.5em;
    display: inline-block;
    float: left;
    clear: both;
    margin-right: -8.5em;
  }

  #info__list li .title {
    padding-left: 8.5em;
  }

  #info__list li a {
    -webkit-transition: padding ease 0.3s;
    transition: padding ease 0.3s;
  }

  .csstransitions #info__list li a:hover {
    padding-left: 1rem;
  }
}

@media screen and (max-width:640px) {
  #info {
    padding-top: 3.5rem;
  }

  #info h3 {
    text-align: center;
  }

  #info__list {
    padding-top: 2.5rem;
  }

  #info__list ul {
    padding-bottom: 1.75rem;
  }
}

.info-gairai-alart {
	width: 100%;
	max-width: 1200px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 50px;
	margin-bottom: 30px;
	border: 2px solid #f19057;
	box-sizing: border-box;
	padding: 50px;
	padding-top: 30px;
	padding-bottom: 30px;
	border-radius: 5px;
}

.info-gairai-alart h3 {
	color: #f19057;
	font-size: 22px;
	font-family: "mplus-1c";
}

@media screen and (max-width:640px) {
	.info-gairai-alart {
		padding: 30px;
		width: calc(100% - 60px);
		text-align: left;
	}
	.info-gairai-alart br {
		display: none;
	}
}

/*----------------------------------------------------------------------------------------------------

  当院の特徴
  
----------------------------------------------------------------------------------------------------*/

#feature {
  padding-top: 100px;
}

#feature__list {
  padding-top: 60px;
}

#feature__list dl {
  width: 32.54237%;
  float: left;
  margin-left: 1.18644%;
  text-align: center;
}

#feature__list dl:first-child {
  margin-left: 0;
}

#feature__list dt {
  color: #f0aa3c;
  line-height: 1.2;
  z-index: 2;
  position: relative;
  padding-top: 8px;
}

#feature__list dt span {
  font-size: 225%;
  display: block;
  font-weight: 600;
}

#feature__list dt:before {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  top: -12px;
  border-style: solid;
  border-color: #f0aa3c transparent transparent transparent;
  border-width: 12px 4px 0 4px;
}

#feature__list dd {
  margin-top: -1.25em;
}

#feature__list dd:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
}

#feature__list dd p {
  line-height: 1.6;
  font-size: 118.8%;
  padding: 2em 1em 1.5em 1em;
  background-color: #fef5dc;
}

#feature__list dd .photo {
  line-height: 0;
  height: 230px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 240px;
}

#feature01 dd .photo {
  background-image: url(../image/top/feature01.jpg);
}

#feature02 dd .photo {
  background-image: url(../image/top/feature02.jpg);
}

#feature03 dd .photo {
  background-image: url(../image/top/feature03.jpg);
}

@media screen and (max-width:640px) {
  #feature {
    padding-top: 3.5rem;
  }

  #feature__list {
    padding-top: 2.5rem;
  }

  #feature__list dl {
    width: 100%;
    float: none;
    margin-left: auto !important;
    margin-right: auto;
  }

  #feature__list dl:not(:first-child) {
    margin-top: 2.5rem;
  }

  #feature__list dd p {
    font-size: 125%;
    padding: 2rem 1rem 1.5rem 1rem;
  }

  #feature__list dd .photo {
    height: 0;
    padding-top: 46%;
    background-size: cover;
  }
}


/*----------------------------------------------------------------------------------------------------

  初めて来院される方へ
  
----------------------------------------------------------------------------------------------------*/

#shoshin-wrap {
  margin-top: 80px;
  min-height: 500px;
  position: relative;
  overflow: hidden;
}

#shoshin_line {
  width: 2000px;
  height: 373px;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -1000px;
  z-index: 2;
}

.no-svg #shoshin_line {
  background: url(../image/top/shoshin_line.png) no-repeat center top;
  background-size: contain;
}

#shoshin_hd {
  text-align: left;
  position: relative;
}

#shoshin_hd h3 {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: left;
  white-space: nowrap;
  line-height: 1.5;
  font-weight: 500;
  font-size: 250%;
  letter-spacing: 0.05em;
  color: #ee7c3a;
  z-index: 3;
  float: left;
  padding-left: 25px;
  padding-top: 30px;
  position: relative;
}

#shoshin_hd .photo {
  max-width: 400px;
  float: right;
  margin-top: 30px;
}

#shoshin_body {
  position: absolute;
  left: 50%;
  top: 165px;
  margin-left: -590px;
  padding-left: 200px;
  z-index: 1;
  text-align: left;
}

#shoshin_body p {
  padding-top: 1em;
}

@media screen and (max-width:640px) {
  #shoshin-wrap {
    min-height: inherit;
    margin-top: 4rem;
  }

  #shoshin_line {
    width: 200%;
    height: auto;
    position: absolute;
    top: 2rem;
    left: 0;
    margin-left: -70%;
  }

  #shoshin_hd h3 {
    font-size: 212.5%;
    padding-left: 6%;
    padding-top: 0;
  }

  #shoshin_hd .photo {
    width: 50%;
    margin-right: 6%;
    margin-top: 2rem;
  }

  #shoshin_body {
    position: inherit;
    left: inherit;
    top: inherit;
    margin-left: 0;
    padding-top: 0.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  #shoshin_body p:first-child {
    padding-top: 1.75rem;
  }
}


/*----------------------------------------------------------------------------------------------------

  診療時間
  
----------------------------------------------------------------------------------------------------*/

#hrs {
  padding-left: 200px;
  padding-right: 200px;
  padding-top: 20px;
  text-align: left;
}

/* Web予約 */
#hrs .webrsv {
  text-align: center;
  padding-top: 60px;
  overflow: hidden;
}

@media screen and (max-width:640px) {
  #hrs {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 2.5rem;
  }

  #hrs .webrsv {
    padding-top: 2rem;
  }

  #hrs .webrsv .responBlock {
    min-width: 580px;
  }
}


/*----------------------------------------------------------------------------------------------------

  診療科目
  
----------------------------------------------------------------------------------------------------*/

#shinryokamoku-wrap {
  background-color: #fefaee;
}

.shinryokamoku__list {
  list-style: none;
}

.shinryokamoku__list li,
.shinryokamoku__list a {
  box-sizing: border-box;
}

.shinryokamoku__list a {
  display: block;
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0px 0px 15px 0px rgba(238, 124, 58, 0.15);
  padding: 1.5rem 0;
  position: relative;
}

.shinryokamoku__list a,
.shinryokamoku__list a:visited,
.shinryokamoku__list a:hover {
  text-decoration: none;
}

.shinryokamoku__list .ka {
  display: block;
  font-size: 137.5%;
  line-height: 1.5;
  padding-bottom: 0.5rem;
}

.shinryokamoku__list .ka:before {
  content: "";
  width: 100%;
  height: 90px;
  display: block;
  margin-bottom: 0.5rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

.shinryokamoku__list li.naika .ka:before {
  background-image: url(../image/icon/naika.svg);
}

.shinryokamoku__list li.icho .ka:before {
  background-image: url(../image/icon/icho.svg);
}

.shinryokamoku__list li.kanzo .ka:before {
  background-image: url(../image/icon/kanzo.svg);
}

.shinryokamoku__list li.fujin .ka:before {
  background-image: url(../image/icon/fujin.svg);
}

.shinryokamoku__list li.geka .ka:before {
  background-image: url(../image/icon/geka.svg);
}

.shinryokamoku__list li.nyusen .ka:before {
  background-image: url(../image/icon/nyusen.svg);
}

.shinryokamoku__list li.komon .ka:before {
  background-image: url(../image/icon/komon.svg);
}

.shinryokamoku__list li.kanpo .ka:before {
  background-image: url(../image/icon/kanpo.svg);
}

.no-svg .shinryokamoku__list li.naika .ka:before {
  background-image: url(../image/icon/naika.png);
}

.no-svg .shinryokamoku__list li.icho .ka:before {
  background-image: url(../image/icon/icho.png);
}

.no-svg .shinryokamoku__list li.kanzo .ka:before {
  background-image: url(../image/icon/kanzo.png);
}

.no-svg .shinryokamoku__list li.fujin .ka:before {
  background-image: url(../image/icon/fujin.png);
}

.no-svg .shinryokamoku__list li.geka .ka:before {
  background-image: url(../image/icon/geka.png);
}

.no-svg .shinryokamoku__list li.nyusen .ka:before {
  background-image: url(../image/icon/nyusen.png);
}

.no-svg .shinryokamoku__list li.komon .ka:before {
  background-image: url(../image/icon/komon.png);
}

.no-svg .shinryokamoku__list li.kanpo .ka:before {
  background-image: url(../image/icon/kanpo.png);
}

.shinryokamoku__list li .ck-wrap {
  display: block;
  position: absolute;
  top: -15px;
  z-index: 2;
  font-size: 75%;
  line-height: 1.3;
  color: #fff;
}

.shinryokamoku__list li .ck {
  display: block;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 50%;
  border-radius: 50%;
  border: 4px solid #fff;
}

.shinryokamoku__list li.fujin .ck,
.shinryokamoku__list li.nyusen .ck {
  background-color: #f98ea2;
}

.shinryokamoku__list li.kanzo .ck,
.shinryokamoku__list li.kanpo .ck {
  background-color: #fb9c66;
}

.shinryokamoku__list li .ck span {
  white-space: nowrap;
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

@media print, screen and (min-width:641px) {
  #shinryokamoku-wrap {
    margin-top: 100px;
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .shinryokamoku__list {
    margin-left: -8px;
    margin-right: -8px;
    padding-top: 60px;
  }

  .shinryokamoku__list li {
    width: 25%;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }

  .shinryokamoku__list li:nth-child(n+5) {
    padding-top: 30px;
  }

  .shinryokamoku__list li .ck-wrap {
    left: 1rem;
    width: 70px;
    height: 70px;
  }

  .shinryokamoku__list li a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: transform ease 0.3s;
    transition: transform ease 0.3s;
  }

  .shinryokamoku__list li a:hover {
    transform: scale(1.08);
    z-index: 2;
  }
}

@media screen and (max-width:640px) {
  #shinryokamoku-wrap {
    margin-top: 3rem;
    padding-top: 3.5rem;
    padding-bottom: 2.5rem;
  }

  .shinryokamoku__list {
    padding-top: 3rem;
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }

  .shinryokamoku__list li {
    width: 50%;
    float: left;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .shinryokamoku__list li:nth-child(n+3) {
    padding-top: 2rem;
  }

  .shinryokamoku__list li .ck-wrap {
    left: 0.75rem;
    width: 64px;
    height: 64px;
  }

  .shinryokamoku__list .ka {
    font-size: 125%;
  }
}


/*----------------------------------------------------------------------------------------------------

  コンテンツバナー
  
----------------------------------------------------------------------------------------------------*/

#ctBnr {
  padding-top: 80px;
  padding-bottom: 100px;
}

#ctBnr__list {
  list-style: none;
}

#ctBnr__list li {
  width: 50%;
  float: left;
  box-sizing: border-box;
  text-align: right;
}

#ctBnr__list li:first-child {
  padding-right: 20px;
}

#ctBnr__list li:last-child {
  padding-left: 20px;
}

#ctBnr__list li .bnr {
  position: relative;
  display: block;
  overflow: hidden;
  height: 320px;
  text-align: center;
  margin-bottom: 1em;
  border-radius: 8px;
}

#ctBnr__list li .bnr:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

#ctBnr__list li.doctor .bnr:after {
  background-image: url(../image/top/ctBnr_doctor.jpg);
}

#ctBnr__list li.access .bnr:after {
  background-image: url(../image/top/ctBnr_access.jpg?v=2);
}

#ctBnr__list li .bnr .txt {
  z-index: 2;
  display: inline-block;
  box-sizing: border-box;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.8);
  width: 50%;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#ctBnr__list li .bnr .txt .en {
  color: #ee7c3a;
  line-height: 1.3;
  font-weight: 500;
}

@media print, screen and (min-width:641px) {
  #ctBnr__list li .bnr:after {
    -webkit-transition: transform ease 0.6s, opacity ease 0.3s;
    transition: transform ease 0.6s, opacity ease 0.3s;
  }

  .csstransitions #ctBnr__list li a:hover .bnr:after {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0.6;
  }
}

@media screen and (max-width:640px) {
  #ctBnr {
    padding-top: 2.5rem;
    padding-bottom: 3rem;
  }

  #ctBnr__list li {
    width: 100%;
    float: none;
  }

  #ctBnr__list li:first-child {
    padding-right: 0;
  }

  #ctBnr__list li:last-child {
    padding-left: 0;
    margin-top: 3rem;
  }

  #ctBnr__list li .bnr {
    height: 0;
    padding-top: 50%;
  }

  #ctBnr__list li .bnr .txt {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

/*----------------------------------------------------------------------------------------------------

  バナー コロナ
  
----------------------------------------------------------------------------------------------------*/

/* .flu_bnr {
  background: url(../image/lbg_orange.png) repeat left top;
  box-sizing: border-box;
  border-radius: 8px;
  padding: 6px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.flu_bnr a {
  box-sizing: border-box;
  line-height: 1.4;
  font-family: "mplus-1c";
  font-weight: 700;
  font-size: 175%;
  background-color: #fefaee;
  display: block;
  border-radius: 6px;
  padding: 2rem;
}

.flu_bnr a,
.flu_bnr a:visited,
.flu_bnr a:hover {
  color: #f0aa3c;
  text-decoration: none;
}

.flu_bnr a:after {
  content: "";
  display: block;
  background: url(../medical/image/exclamation.png) no-repeat center;
  background-size: contain;
  position: absolute;
}

.ua-pc .flu_bnr a {
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}

.ua-pc .flu_bnr a:hover {
  background-color: #fff;
}

@media print, screen and (min-width:641px) {
  .flu_bnr--top {
    margin-top: -1.5rem;
    padding-bottom: 2.5rem;
  }

  .flu_bnr--info {
    padding-bottom: 20px;
  }

  .flu_bnr--info .flu_bnr {
    max-width: 900px;
  }

  .flu_bnr a:after {
    width: 90px;
    height: 90px;
    left: 0;
    bottom: 40px;
  }

  .flu_bnr a {
    padding-left: 130px;
  }

  .flu_bnr a:after {
    left: 130px;
  }

}

@media screen and (max-width:640px) {
  .flu_bnr--top {
    text-align: center;
    padding-bottom: 2rem;
  }

  .flu_bnr--info {
    padding-bottom: 3rem;
  }

  .flu_bnr a {
    font-size: 150%;
    padding: 1.5rem 180px 1.5rem 1.5rem;
  }

  .flu_bnr a:after {
    width: 130px;
    height: 100px;
    right: 2rem;
  }

  .flu_bnr a:after {
    width: 64px;
    height: 64px;
    left: 0;
    bottom: 44px;
  }

  .flu_bnr a {
    padding-left: 60px;
    padding-right: 0rem;
  }

  .flu_bnr a:after {
    left: 20px;
  }
}

@media screen and (max-width:560px) {
  .flu_bnr a {
    font-size: 131.3%;
  }

} */

#time-change {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 30px;
  padding-bottom: 0px;
}

#time-change .tsume {
  letter-spacing: -1px;
}


/*========================================================================================================================


 info-banner
  
  
========================================================================================================================*/

.info-banner a,
.info-banner a:visited,
.info-banner a:hover { text-decoration:none; }

.info-banner {
	padding: 50px 0;
  display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
  gap: 30px;
}

.info-banner li { text-align: center; }

@media screen and (min-width:641px) {
  .info-banner li.-full { width: 100%; }
  .info-banner li:not(.-full) { width: calc(50% - 15px); }
}
@media screen and (max-width:640px) {
  .info-banner li { width: 100%; }
}

.info-banner_txt {
	box-sizing: border-box;
	border-radius: 8px;
	padding: 6px;
}

.info-banner_txt a {
  position: relative;
	box-sizing: border-box;
	line-height: 1.4;
	font-family: "mplus-1c";
	font-weight: 700;
	font-size: 150%;
	background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
	border-radius: 6px;
	padding: 1.25rem;
	padding-right: 190px;
  width: 100%;
	height: 100%;
}

.ua-pc .info-banner_txt a {
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
.ua-pc .info-banner_txt a:hover {
  background-color: #fff;
}	

@media screen and (max-width:640px) {
  .info-banner_txt a {
    font-size: 150%;
    padding:1.75rem 170px 1.75rem 1.5rem;
    height: auto;
	  letter-spacing: -0.05em;
  }
	
}
@media screen and (max-width:560px) {
  .info-banner_txt a { font-size: 131.3%; }
}

.info-banner_txt a:after {
	content: "";
	width: 180px;
	height: 140px;
	display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
	position: absolute;
	right: 30px;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width:640px) {
  .info-banner_txt a:after {
    width: 160px;
    height: 100%;
    right: 15px;
  }
}		

@media screen and (max-width:560px) {
  .info-banner_txt a:after {
    width: 140px;
  }
}	

.info-banner_txt.-kaze { background: url("../image/lbg_blue.png") repeat left center; }
.info-banner_txt.-kaze a { color: #4c8cc8; background-color: #e4f2ff; }
.info-banner_txt.-kaze a:after { background-image :url("../info/image/kaze/bn_kaze.png"); }
.info-banner_txt.-kaze .monsin {
  display: inline-block;
  margin-top: .25em;
  padding: 0.1em .6em;
  color: #fff;
  background-color: #4c8cc8;
}

.info-banner_txt.-flu { background: url("../image/lbg_orange.png") repeat left center; }
.info-banner_txt.-flu a:after { background-image: url("../info/image/flu/bn_illust.png"); }
.info-banner_txt.-flu a { color: #f0aa3c; background-color: #fefaee; }
