@charset "UTF-8";
/* TOP CSS */
/* --------------------------------------

Base settings

---------------------------------------*/
* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}
* a[href^="tel:"] {
  pointer-events: inherit;
}
*:focus {
  outline: none;
}

body {
  height: auto;
  position: relative;
  width: 100%;
  font-size: 16px;
}

input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

select {
  border: none;
  outline: none;
  background: transparent;
}

input,
button,
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}

input[type=radio] {
  display: none;
}

input[type=radio]:checked + label {
  background: #ff0000;
}

.pc-hyde {
  display: block !important;
}

.sp-hyde {
  display: none !important;
}

.wrapper {
  padding: 0;
  width: 100%;
  padding: 0 4%;
}

img {
  vertical-align: bottom;
}

.flexbox {
  display: block;
}
.flexbox .item {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

.btn {
  max-width: 400px !important;
  width: 100% !important;
  font-size: 18px !important;
}
.btn a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 10px 0;
}

/* 診察時間table*/
table.me tbody th {
  width: 20%;
}
table.me .font-green {
  font-size: 18px;
}

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

headiny-style

---------------------------------------*/
.heading-style-border {
  position: relative;
  border-bottom: 1px solid #fc9e65;
  display: inline-block;
  padding-bottom: 16px;
  margin-bottom: 24px;
}

.heading-style {
  margin-bottom: 24px;
  font-size: 24px;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 2px;
}
.heading-style span {
  width: auto;
}
.heading-style span.small {
  font-size: 14px;
  padding-left: 14px;
}

.heading-style-border-dot {
  margin-bottom: 48px;
  font-size: 24px;
}
.heading-style-border-dot:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  background-image: url(../img/line-dots.png);
  background-repeat: repeat-x;
  height: 5px;
  bottom: -24px;
  left: 0;
}

.white-box .white-box-ttl {
  position: absolute;
  width: 260px;
  left: calc(50% - 130px);
  top: -40px;
}

#req .white-box {
  padding: 64px 16px 32px;
}
#req .white-box .white-box-ttl {
  top: -40px;
}

/*ワクチンtable*/
table.me.ri tbody {
  font-size: 14px;
}
table.me.ri tbody th,
table.me.ri tbody td {
  padding: 8px;
  width: 33.333% !important;
}

.btn-icon {
  width: 100% !important;
}
.btn-icon .item {
  width: 100% !important;
}
.btn-icon .btn:before {
  left: 4px;
  top: 4px;
}
.btn-icon .btn:after {
  right: 16px;
}
.btn-icon .btn a {
  padding: 10px 30px 10px 50px;
}
.btn-icon .btn-tel {
  margin-bottom: 12px;
}
.btn-icon .btn-tel:before {
  background-image: url(../img/icon/conv-tel.png);
}
.btn-icon .btn-net {
  margin-bottom: 12px;
}
.btn-icon .btn-net:before {
  background-image: url(../img/icon/conv-net.png);
}

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

header

---------------------------------------*/
header {
  padding: 16px 0 48px;
  width: 100%;
  /**************** 以下、ハンバーガーボタンのスタイリング ****************/
  /***** 真ん中のバーガー線 *****/
  /***** 上下のバーガー線 *****/
  /***** メニューオープン時 *****/
  /**************** ここまで、ハンバーガーボタンのスタイリング ****************/
  /**************** 以下、メニューのスタイリング ****************/
  /***** メニューオープン時位置0にして画面内に *****/
  /**************** ここまで、メニューのスタイリング ****************/
}
header .wrapper {
  padding: 0;
}
header .item.detail {
  width: 100%;
}
header .item.detail h1.item {
  padding: 0 4%;
  font-size: 11px !important;
  width: 100%;
  margin-bottom: 16px;
  padding-right: 80px;
}
header .item.detail .logo.pc-hyde {
  width: 92%;
  height: auto;
  margin: auto auto 15px;
  text-align: center;
}
header .item.detail .logo.pc-hyde a {
  display: inline-block;
  width: auto;
  height: 100%;
}
header .item.detail .logo.pc-hyde img {
  width: auto;
  max-width: 100%;
  height: auto;
}
header .item.detail:last-child {
  width: 100%;
}
header .item.detail:last-child section.flexbox {
  width: 100%;
}
header .item.detail:last-child section.flexbox .item.flexbox {
  margin-bottom: 0;
  align-items: center;
  width: 100%;
}
header .hbtn {
  background: #00b7ff;
  border: 2px solid #fff;
  border-radius: 100px;
  /* ボタンの配置位置  */
  position: fixed;
  top: 16px;
  right: 16px;
  /* ボタンの大きさ  */
  width: 40px;
  height: 40px;
  /* バーガーの線をボタン範囲の中心に配置 */
  display: flex;
  justify-content: center;
  align-items: center;
  /* 最前面に */
  z-index: 100;
}
header .hbtn.detail {
  top: 48px;
}
header .btn-line {
  /* 線の長さと高さ */
  width: 50%;
  height: 2px;
  /* バーガー線の色 */
  background: #fff;
  /* バーガー線の位置基準として設定 */
  position: relative;
  transition: 0.2s;
}
header .btn-line::before,
header .btn-line::after {
  content: "";
  /* 基準線と同じ大きさと色 */
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  background: #fff;
  transition: 0.2s;
}
header .btn-line::before {
  /* 上の線の位置 */
  transform: translateY(-8px);
}
header .btn-line::after {
  /* 下の線の位置 */
  transform: translateY(8px);
}
header .btn.open {
  transform: rotate(180deg);
}
header .btn-line.open {
  /* 真ん中の線を透明に */
  background: transparent;
}
header .btn-line.open::before,
header .btn-line.open::after {
  content: "";
  /* 上下の線の色を変える */
  background: #fff;
  transition: 0.2s;
}
header .btn-line.open::before {
  /* 上の線を傾ける */
  transform: rotate(135deg);
}
header .btn-line.open::after {
  /* 上の線を傾ける */
  transform: rotate(-135deg);
}
header .gnav {
  color: #444;
  overflow: auto;
  z-index: 5;
  position: fixed;
  /* メニューの位置マイナス指定で画面外に */
  top: -150%;
  width: 100%;
  height: 80vh;
  /* メニューを縦に */
  display: flex;
  flex-direction: column;
  color: #fff;
  background: #e4f2ff;
  transition: 0.3s;
}
header .gnav-conts {
  margin-bottom: 24px;
  width: 100%;
  height: 100%;
  /* メニューテキスト位置をリスト内中心に */
  display: flex;
  justify-content: center;
  align-items: center;
}
header .gnav-conts span {
  font-size: 13px !important;
}
header .gnav-conts .inner {
  line-height: 1.2;
}
header .gnav-conts a {
  color: #444;
}
header .gnav-conts a:hover {
  color: #444 !important;
  opacity: 1;
}
header .gnav-cont:hover {
  color: #fff;
  transition: 0.3s;
  cursor: pointer;
}
header .gnav.open {
  top: 0;
  position: fixed;
  right: 0;
}
header .gnav.flexbox {
  display: flex;
  padding: 40px 0;
  z-index: 99;
}
header .gnav.flexbox .inner.item.sns-icon {
  width: 50px;
  margin: 0 8px;
}
header .gnav.flexbox .inner.item.sns-icon img {
  width: 50px;
}
header .gnav-conts.flexbox {
  display: flex !important;
  margin-top: 20px;
}

.heading-style-bg {
  text-align: center;
  font-size: 18px;
  border-radius: 8px;
  padding: 0 16px;
  margin-bottom: 24px;
}

.side-conv {
  justify-content: center;
  z-index: 10;
  width: 100%;
}
.side-conv .side-conv-wrap {
  display: flex;
  width: 100%;
  position: fixed;
  bottom: 0px;
}
.side-conv .btn {
  left: auto;
  position: relative;
  height: auto;
  margin: 0;
  right: auto;
  top: auto;
  padding-left: 0;
  border-radius: 0;
  border: none;
  background: #00b7ff !important;
}
.side-conv .btn a {
  color: #fff;
  font-size: 15px;
  padding: 15px 5px 15px 20px;
}
.side-conv .btn:after {
  content: none;
}
.side-conv .btn span {
  font-size: 11px;
}
.side-conv .btn:before {
  content: "";
  width: 20px;
  height: 20px;
  left: 5px;
  top: calc(50% - 10px);
}
.side-conv .btn-tel,
.side-conv .btn-net,
.side-conv .btn-line {
  width: 33.3333333333%;
  margin-bottom: 0;
  left: 0;
  border-right: 1px solid #fff;
  line-height: 1;
}
.side-conv .btn-line {
  border-right: none;
}
.side-conv .btn-pegetop {
  width: 40px !important;
  height: 40px;
  position: absolute;
  bottom: 46px;
  right: 0;
}
.side-conv .btn-pegetop:before {
  width: 24px;
  height: 24px;
  left: calc(50% - 12px);
  top: calc(50% - 12px);
}

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

Main

---------------------------------------*/
.conts-padding {
  padding: 40px 0;
}

main {
  position: relative;
}
main h2 {
  font-size: 22px;
}
main #mv {
  position: relative;
  margin-bottom: 32px;
}
main #mv .wrapper {
  top: -40px;
}
main #mv .catch {
  margin: 24px 0;
  text-align: left;
  position: relative;
  bottom: auto;
  top: auto;
  left: 0;
  writing-mode: horizontal-tb;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1.5px;
}
main #mv .catch .bg-white {
  background: none;
}
main #mv .catch p {
  text-align: center;
  display: table;
  margin-right: 0;
  padding: 0;
}
main #mv .topics-area {
  display: block;
  align-items: center;
  position: relative;
  bottom: auto;
  left: auto;
}
main #mv .topics-area a {
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: inherit;
  position: relative;
}
main #mv .topics-area .topics.bg-white {
  margin: 0;
  position: relative;
  width: 100%;
  padding: 16px 32px;
  border-radius: 15px;
}
main #mv .topics-area .topics.bg-white .flexbox {
  justify-content: flex-start;
  padding-right: 32px;
}
main #mv .topics-area .topics.bg-white .flexbox .data {
  margin-right: 32px;
}
main #mv .topics-area .topics.bg-yellow {
  background: #00b7ff;
  color: #fff;
  text-align: left;
  position: relative;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  right: 0;
  padding: 16px 32px;
  border-radius: 15px;
}
main #mv .topics-area a.detail:hover {
  opacity: 1;
}
main #mv .topics-area a.detail:hover .news-title {
  color: #00b7ff;
}
main #mv .topics-area a.detail .news-title {
  position: relative;
}
main #mv .topics-area a.detail .news-title:after {
  background-image: url(../img/arrow-wh.png);
  position: absolute;
  top: 0;
  right: 0px;
}
main #concept {
  padding-bottom: 32px !important;
  margin-top: -32px;
  z-index: 1;
  padding-bottom: 0;
  background-image: url(../img/concept-bg.png);
  background-repeat: repeat;
  background-position: center;
  background-size: cover;
}
main #concept .heading-style {
  display: block;
}
main #concept h3 {
  font-size: 22px;
  margin-bottom: 30px;
}
main #concept .flexbox .item:first-child {
  width: 100%;
  margin-bottom: 24px;
}
main #concept .flexbox .item:last-child {
  width: 100%;
  padding-left: 0px;
}
main #about .heading-detail {
  font-size: 20px;
  letter-spacing: 2px;
  margin-bottom: 24px;
}
main #about .text-center {
  text-align: left;
}
main #about .slider {
  margin: 32px auto 0;
}
main #about .slider-content {
  margin-bottom: 64px !important;
}
main #about .mypattern .slick-slide {
  height: auto;
  margin: 0 8px;
}
main #about .slick-list.draggable {
  padding-bottom: 0px !important;
}
main #about .btn {
  width: 92% !important;
}
main #service {
  font-size: 15px;
}
main #service .wrapper .heading-style-border {
  font-size: 20px;
  padding-bottom: 10px;
  margin-bottom: 24px;
}
main #service .wrapper .bottom64.text-center {
  text-align: left;
}
main #service .wrapper .flexbox.col3 {
  margin-bottom: 22px;
}
main #service .wrapper .flexbox.col3 .item.flexbox {
  font-size: 16px;
  display: flex;
  justify-content: flex-start;
}
main #service .wrapper .flexbox.col3 .item.flexbox .item.bg-blue {
  min-width: 130px;
  font-size: 13px;
  padding: 0px 24px;
}
main #service .wrapper .flexbox.col3 .item.flexbox:before {
  content: none;
}
main #service .flexbox.col2 {
  flex-wrap: wrap;
}
main #service .flexbox.col2 .item {
  width: 100%;
  margin-bottom: 40px;
  position: relative;
}
main #service .flexbox.col2 .item .service-label {
  position: absolute;
  top: 4px;
  left: calc(4% + 10px);
  width: 30px;
  height: auto;
}
main #service .pc-hyde table,
main #footer-conts .pc-hyde table {
  margin-bottom: 16px;
  width: 100%;
  font-size: 13px;
}
main #service .pc-hyde table thead th,
main #service .pc-hyde table thead td,
main #service .pc-hyde table tbody th,
main #service .pc-hyde table tbody td,
main #footer-conts .pc-hyde table thead th,
main #footer-conts .pc-hyde table thead td,
main #footer-conts .pc-hyde table tbody th,
main #footer-conts .pc-hyde table tbody td {
  padding: 8px 0;
  border: none;
  width: auto;
}
main #service .pc-hyde table thead th,
main #footer-conts .pc-hyde table thead th {
  width: 10%;
}
main #service .pc-hyde table tbody th,
main #footer-conts .pc-hyde table tbody th {
  width: 30%;
}
main #service .pc-hyde table tbody th,
main #service .pc-hyde table tbody td,
main #footer-conts .pc-hyde table tbody th,
main #footer-conts .pc-hyde table tbody td {
  border-bottom: 2px solid #eee;
}
main #service .pc-hyde table .font-orange,
main #footer-conts .pc-hyde table .font-orange {
  font-size: 16px;
}
main #footer-conts .wrapper .heading-style-border {
  font-size: 20px;
  padding-bottom: 10px;
  margin-bottom: 24px;
  border-bottom: 1px #00b7ff solid;
  color: #00b7ff;
}
main #recruit .wrapper,
main #private .wrapper {
  text-align: center;
}
main #recruit .wrapper .heading-style-border,
main #private .wrapper .heading-style-border {
  font-size: 20px;
  padding-bottom: 10px;
  margin-bottom: 24px;
}
main #news .news-conts {
  margin-bottom: 32px;
}
main #news .news-conts .news-title {
  font-size: 16px;
}
main #news .news-conts .flexbox {
  width: 100%;
  padding: 24px 64px 24px 24px;
  border-radius: 15px;
}
main #news .news-conts .flexbox .data {
  margin-right: 0;
  font-size: 15px;
}
main #news .news-conts .flexbox:after {
  right: 24px;
}
main #news .btn {
  width: 92% !important;
}
main #message {
  padding: 40px 0;
}
main #message .heading-detail {
  font-size: 18px;
}
main #message .flexbox .item:first-child {
  width: 100%;
}
main #message .flexbox .item:first-child:first-child img {
  margin-left: 0;
  width: 100%;
  margin-bottom: 16px;
}
main #message .logo-icon {
  position: relative;
  height: 200px;
  margin-left: 0;
  width: auto;
  text-align: center;
}
main #message .logo-icon img {
  position: relative;
  max-height: 100%;
  height: 100%;
  width: auto;
}
main #message .flexbox.col3 .item {
  margin-bottom: 16px;
}
main #message .flexbox.col3 .item h3 {
  font-size: 16px;
}
main #message .flexbox.col3 .item:last-child {
  margin-bottom: 24px;
}
main #access .map {
  width: 100%;
  height: 180px;
  margin-bottom: 32px;
}
main #access .map iframe {
  width: 100%;
  height: 180px;
}
main .conversion {
  padding-bottom: 95px !important;
}
main .conversion .ttl {
  font-size: 22px;
  font-weight: bold;
  position: relative;
  margin-bottom: 24px;
}
main .conversion .detail {
  margin-bottom: 16px;
}
main .conversion .detail img {
  width: auto;
}
main .conversion.detail {
  padding-bottom: 40px !important;
}
main #footer-sns {
  padding: 16px 0;
}
main #footer-sns .flexbox.col2 {
  justify-content: center;
  align-items: flex-start;
  text-align: center;
}
main #footer-sns .flexbox.col2 .item {
  padding: 24px 0;
  width: 100%;
  margin: auto;
}
main #footer-sns .flexbox.col2 .item img {
  max-width: 400px;
  height: auto;
  width: auto;
}

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

margin

---------------------------------------*/
.bottom24,
.bottom32,
.bottom40 {
  margin-bottom: 20px;
}

.bottom48,
.bottom56,
.bottom64 {
  margin-bottom: 30px;
}

.bottom80 {
  margin-bottom: 40px;
}

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

footer

---------------------------------------*/
footer {
  padding-bottom: 44px;
}
footer .bg-yellow {
  font-size: 14px;
  padding: 24px 0;
}
footer .bg-yellow .logo {
  max-width: 80%;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
footer .bg-yellow .logo img {
  width: 100%;
  height: auto;
}
footer .bg-yellow .sns-icon.flexbox {
  justify-content: center;
  display: flex;
}
footer .bg-yellow .sns-icon.flexbox .item {
  margin: 0 8px;
  width: 40px;
  height: auto;
}
footer .bg-yellow .sns-icon.flexbox .item img {
  width: 100%;
  height: auto;
}
footer .bg-pink {
  font-size: 13px;
  padding: 10px 0;
}
footer .footerNav ul {
  line-height: 1.8;
}
footer .footerNav ul li {
  font-size: 13px;
}

footer.detail {
  padding-bottom: 49px;
}

#sub .vaccine #req.conts-padding {
  padding-top: 80px;
}
#sub .vaccine #req.conts-padding .btn-icon .btn::before {
  width: 46px;
  height: 46px;
  top: calc(50% - 23px);
}
#sub .wrapper .text-center .heading-style-border {
  font-size: 20px;
}
#sub .sub-ttl-area .heading-style {
  font-size: 24px;
  left: 4%;
}
#sub .sub-ttl-area .heading-style .small {
  padding-top: 0;
}
#sub .bc {
  padding: 24px 0;
}
#sub .conts-padding {
  padding: 40px 0;
}
#sub .heading-style-border {
  font-size: 24px;
  padding-bottom: 10px;
  margin-bottom: 24px;
  line-height: 1.5;
}
#sub #sub-sitemap .border-blue {
  padding: 24px 4% 8px;
}
#sub #sub-sitemap .border-blue .btn.detail {
  margin-bottom: 24px;
}
#sub #sub-sitemap .border-blue .heading-style {
  font-size: 20px;
  margin-bottom: 16px;
}
#sub #sub-sitemap .border-blue .flexbox .btn:after {
  right: 16px;
  width: 32px;
  height: 5px;
  top: calc(50% - 5px);
}
#sub #sub-sitemap .bg-lightblue .btn {
  margin-bottom: 10px;
}
#sub #sub-sitemap .flexbox.col3 .item {
  width: 100% !important;
}
#sub .bg-white.news-article {
  border-radius: 15px;
  padding: 24px 4%;
}
#sub .bg-white.news-article .heading-style-border {
  font-size: 20px;
  line-height: 1.4;
}
#sub .bg-white.news-article .news-article-conts p {
  margin-bottom: 16px;
}
#sub .bg-white.news-article .news-article-conts h2,
#sub .bg-white.news-article .news-article-conts h3,
#sub .bg-white.news-article .news-article-conts h4 {
  margin-bottom: 10px;
  line-height: 1.6;
}
#sub .bg-white.news-article .news-article-conts h2 {
  font-size: 18px;
  border-radius: 6px;
  padding: 10px;
}
#sub .bg-white.news-article .news-article-conts h3 {
  font-size: 17px;
}
#sub .bg-white.news-article .news-article-conts h3:before {
  font-size: 8px;
}
#sub .bg-white.news-article .news-article-conts h4 {
  font-size: 16px;
}
#sub .bg-white.news-article .news-article-conts h4:before {
  content: "-";
  font-size: 18px;
  margin-right: 8px;
}
#sub .bg-white.news-article .news-article-conts a {
  text-decoration: underline;
}
#sub .bg-white.news-article .news-article-conts ol,
#sub .bg-white.news-article .news-article-conts ul {
  margin-bottom: 24px;
}
#sub .bg-white.news-article .news-article-conts ol {
  padding-left: 24px;
}
#sub .bg-white.news-article .news-article-conts ul {
  padding-left: 10px;
}
#sub .bg-white.news-article .news-article-conts ul li:before {
  content: "";
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  position: relative;
  top: -1px;
  margin-right: 8px;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item:first-child,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item:first-child {
  width: 100%;
  max-width: 300px;
  margin: auto auto 32px;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item:last-child,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item:last-child {
  width: 100%;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item:last-child h2,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item:last-child h2 {
  line-height: 1.8;
  font-size: 20px;
  text-align: center;
  padding-bottom: 24px;
  margin-bottom: 24px;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item .flexbox,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item .flexbox {
  display: block;
  text-align: center;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item .flexbox .item,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item .flexbox .item {
  width: auto;
  font-size: 18px;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item .flexbox .item span,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item .flexbox .item span {
  font-size: 15px;
}
#sub #sub-greeting .bg_skew_dot.conts-padding .flexbox.col2 .item .flexbox .item.bg-blue,
#sub #sub-greeting .bg-gray.conts-padding .flexbox.col2 .item .flexbox .item.bg-blue {
  width: auto;
  color: #fff;
  text-align: center;
  border-radius: 100px;
  padding: 0px 32px;
  font-size: 16px;
  margin: 0;
  display: inline-block;
}
#sub #sub-greeting .wrapper.detail {
  margin-bottom: 64px;
}
#sub #sub-greeting .prof {
  position: relative;
}
#sub #sub-greeting .prof .flexbox.col2 .item {
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
}
#sub #sub-greeting .prof .white-box {
  padding: 0px 32px 0px;
}
#sub #sub-greeting .prof .white-box .item {
  padding: 24px 0;
}
#sub #sub-greeting .prof .white-box .item h3 {
  margin-bottom: 8px;
}
#sub #sub-greeting .prof .white-box .item ul {
  font-size: 15px;
  color: #333;
}
#sub #sub-greeting .prof .white-box .item ul li {
  list-style: inside;
}
#sub #sub-greeting .prof .white-box .item:not(:last-child) {
  border-right: none;
  border-bottom: 2px solid #eee;
}
#sub #sub-greeting .prof-box {
  margin-bottom: 32px;
}
#sub #sub-greeting .prof-box .flexbox.col2 {
  margin-bottom: 24px;
}
#sub #sub-greeting .prof-box .heading {
  margin-bottom: 16px;
  font-size: 18px;
}
#sub #sub-greeting .prof-box .prof .white-box {
  padding: 0px 16px;
}
#sub #sub-about .bg-yellow.bg_skew_dot.conts-padding .heading-style,
#sub #sub-about .bg-yellow.bg_skew_dot.conts-padding .heading-style-border,
#sub #sub-about #clinic .heading-style,
#sub #sub-about #clinic .heading-style-border {
  font-size: 22px;
}
#sub #sub-about #introduction {
  text-align: center !important;
  padding-bottom: 16px;
}
#sub #sub-about #introduction .bottom48 {
  text-align: left;
}
#sub #sub-about #introduction .flexbox.col3 {
  flex-wrap: wrap;
}
#sub #sub-about #introduction .flexbox.col3 .item.flexbox.bg-white {
  display: flex;
  padding: 24px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}
#sub #sub-about #introduction .flexbox.col3 .item.flexbox.bg-white .item:first-child {
  width: 70px;
  height: auto;
  margin-right: 24px;
}
#sub #sub-about #introduction .flexbox.col3 .item.flexbox.bg-white .item:first-child img {
  width: 70px;
  height: auto;
}
#sub #sub-about #introduction .flexbox.col3 .item.flexbox.bg-white .item:last-child {
  text-align: left;
  font-size: 15px;
}
#sub #sub-about .flexbox.col3.features {
  flex-wrap: wrap;
}
#sub #sub-about .flexbox.col3.features .item {
  margin-bottom: 32px;
  width: 100% !important;
}
#sub #sub-about .flexbox.col3.features .item .features-photo {
  max-width: 400px;
  margin: auto;
  margin-bottom: 16px;
}
#sub #sub-about .flexbox.col3.features .item .heading-style {
  text-align: center;
  font-size: 18px;
  padding: 16px 0;
  margin-bottom: 0;
}
#sub #sub-about .flexbox.col3.features .item:last-child {
  margin-bottom: 0;
}
#sub #sub-about .slick-slider.large {
  margin-bottom: 8px !important;
}
#sub #sub-about .slick-slider.large .photo {
  border-radius: 4px !important;
  margin: 0 4px !important;
}
#sub #sub-about .slick-slider.small .photo {
  border-radius: 4px !important;
  margin: 0 4px !important;
}
#sub #sub-access .heading-style-border {
  font-size: 22px;
}
#sub #sub-access #location .mypattern02 .slick-slide {
  margin: 0;
}
#sub #sub-access #location .slick-next {
  right: -16px;
}
#sub #sub-access #location .slick-next:before {
  right: 0;
}
#sub #sub-access #location .slick-prev {
  left: -16px;
}
#sub #sub-access #location .slick-prev:before {
  left: 0;
}
#sub #sub-access #way .bg-white {
  border-radius: 15px;
  padding: 24px 4%;
}
#sub #sub-access #way .bg-white .flexbox {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 16px;
}
#sub #sub-access #way .bg-white .flexbox img {
  margin-right: 16px;
  vertical-align: bottom;
  width: auto;
}
#sub #sub-access #way .bg-white .flexbox.col2 {
  display: block;
  margin-bottom: 0;
  justify-content: space-between;
}
#sub #sub-access #way .bg-white .flexbox.col2 .item {
  width: 100%;
}
#sub #sub-access #way .bg-white .flexbox.col2 .item img {
  width: 100%;
  height: auto;
  margin-right: 0;
}
#sub #sub-access #way .bg-white .flexbox.col2 .item:first-child {
  margin-bottom: 16px;
}
#sub #sub-service .white-box.detail {
  padding: 16px;
}
#sub #sub-service .white-box.detail .heading-style {
  font-size: 18px;
  line-height: 1.5;
}
#sub #sub-service .anchor {
  padding: 40px 0;
}
#sub #sub-service .anchor .flexbox.col4 .item .btn {
  margin-bottom: 10px;
}
#sub #sub-service .anchor .flexbox.col4 .item:last-child .btn {
  margin-bottom: 0;
}
#sub #sub-service .anchor .flexbox.col5 .item .btn {
  max-width: 100% !important;
  width: 100%;
  margin-bottom: 10px;
}
#sub #sub-service .anchor .flexbox.col5 .item .btn a {
  padding: 10px 0;
  font-size: 16px;
}
#sub #sub-service .anchor .flexbox.col5 .item .btn:after {
  right: 16px;
}
#sub #sub-service .anchor .flexbox.col5 .item:last-child .btn {
  margin-bottom: 0;
}
#sub #sub-service table.me.sche-doc {
  margin-bottom: 16px;
}
#sub #sub-service table.me.sche-doc tbody th {
  color: #fff;
  width: auto;
  text-wrap: nowrap;
}
#sub #sub-service table.me.sche-doc tbody td {
  padding: 16px 8px !important;
  font-size: 15px;
  vertical-align: top;
  width: auto;
}
#sub #sub-service table.me.sche-doc thead th {
  line-height: 1.2;
  width: 40%;
}
#sub #sub-service table.me.sche-doc thead th:first-child {
  width: 20%;
}
#sub #sub-service table.me.sche-doc .detail {
  margin-bottom: 0;
}
#sub #sub-service #req .bottom80 {
  margin-bottom: 64px;
  text-align: left;
}
#sub #sub-service #req .flexbox.col3 .item.white-box {
  width: 100%;
  padding: 48px 16px 32px;
}
#sub #sub-service #req .flexbox.col3 .item.white-box .btn-icon .btn {
  margin-bottom: 0;
  max-width: 400px !important;
}
#sub #sub-service #req .flexbox.col3 .item.white-box .btn-icon .btn:before {
  left: 7px;
}
#sub #sub-service #req .flexbox.col3 .item.white-box:not(:last-child) {
  margin-bottom: 64px;
}
#sub #sub-service #interviewsheet .bottom40.text-center {
  text-align: left;
}
#sub #sub-service #interviewsheet .bg-white {
  width: 100%;
  padding: 24px 16px;
  border-radius: 15px;
  font-size: 16px;
}
#sub #sub-service #interviewsheet .bg-white:first-child {
  margin-bottom: 16px;
}
#sub #sub-service #interviewsheet .bg-white ul li {
  position: relative;
  margin-bottom: 10px;
}
#sub #sub-service #interviewsheet .bg-white ul li:last-child {
  margin-bottom: 0px;
}
#sub #sub-service #interviewsheet .bg-white ul li:before {
  font-size: 10px;
}
#sub #sub-service #interviewsheet .bg-white ul li:after {
  content: "";
  display: inline-block;
  background-image: url(../img/icon/icon-pdf.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 16px;
  height: 22px;
  position: relative;
  right: -10px;
  top: 4px;
}
#sub #sub-service .flexbox.col2.service-contents {
  display: flex;
  flex-wrap: wrap;
}
#sub #sub-service .flexbox.col2.service-contents .item {
  width: 100%;
}
#sub #sub-service .flexbox.col2.service-contents .item:first-child {
  margin-bottom: 0px;
}
#sub #sub-service .flexbox.col2.service-contents .item img {
  width: 100%;
  height: auto;
}
#sub #sub-service .flexbox.col2.service-contents .item-img {
  order: 1;
  margin-bottom: 24px !important;
}
#sub #sub-service .flexbox.col2.service-contents .item-text {
  order: 2;
  margin-bottom: 24px;
}
#sub #sub-service .flexbox.col2.service-contents .heading-style-border {
  font-size: 18px;
  padding-bottom: 12px;
  margin-bottom: 24px;
}
#sub #sub-service .flexbox.col2.service-contents:last-of-type .item-text {
  margin-bottom: 0;
}
#sub .bg-lightblue.bg_skew_dot.conts-padding .flexbox.col2.service-contents .item-text {
  margin-bottom: 0 !important;
}
#sub #sub-privacy .heading-style {
  font-size: 20px;
}

.sub-pickup-area {
  position: relative;
  top: 0;
  left: 0;
}
.sub-pickup-area .bg-white {
  text-align: center;
}
.sub-pickup-area .sub-pickup-inner {
  z-index: 10;
  width: 100%;
  position: sticky;
  bottom: auto;
  top: 0;
  padding: 4px 0;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox .bg-white {
  width: 90px;
  font-size: 12px;
  padding: 0px;
  margin-right: 16px;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox a {
  color: #fff;
  font-size: 13px;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox a .flexbox {
  display: flex;
  justify-content: flex-start;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox a .flexbox .data {
  width: auto;
  margin-right: 16px;
  font-size: 14px;
}
.sub-pickup-area .sub-pickup-inner .wrapper.flexbox a .flexbox .news-title {
  width: auto;
}

@media screen and (min-width: 680px) and (max-width: 979px) {
  .sub-ttl-area .pc-hyde {
    display: none !important;
  }
  .sub-ttl-area .sp-hyde {
    display: block !important;
  }
}
.service-list li {
  font-size: 16px;
  font-weight: bold;
}/*# sourceMappingURL=sp-layout.css.map */