/*
Theme Name: NakanoAh
Theme URI: https://www.nakano-ah.com/
Author: https://www.nakano-ah.com/
Author URI: https://www.nakano-ah.com/
Description: 中野動物病院
Requires at least: 6.0
Tested up to: 6.4.3
Requires PHP: 5.7
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: NakanoAh
Tags: 
*/

/* カテゴリー一覧：リストマークなし */
.wp-block-categories.is-style-no-listmark {
    list-style: none;
}
.wp-block-list.is-style-no-listmark {
    list-style: none;
}
.wp-block-list.is-style-list-inline,.wp-block-list.is-style-list-inline-kaminote {  
  list-style: none;
}
.wp-block-list.is-style-list-inline li {  
  display: inline-block;  
}
.wp-block-list.is-style-list-inline-kaminote li {
  display: inline grid;
  grid-template-columns: 10px auto;
  align-items: center;
  gap: 10px;
}
.wp-block-list.is-style-list-inline-kaminote li::before {
  content: "●";
  color: var(--wp--preset--color--kaminote-1);
}
.wp-block-list.is-style-list-check,.wp-block-list.is-style-list-check-kaminote {  
  list-style: none;  
}
.wp-block-list.is-style-list-check li:before {
  content: url(assets/images/checkbox-line.svg);
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.25em;
  margin-right: .4em;
  font-size: 1.25em;
}
.wp-block-list.is-style-list-check-kaminote li:before {
  content: url(assets/images/kaminote/icon-check.svg);
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.25em;
  margin-right: .4em;
  font-size: 1.25em;
}
.wp-block-list.is-style-list-round-green,.wp-block-list.is-style-list-round-kaminote {  
  list-style: none;    
}
.wp-block-list.is-style-list-round-green li:before,.wp-block-list.is-style-list-round-kaminote li:before {
  content: "●";
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: center;
  margin-right: .4em;
  color: var(--wp--preset--color--secondary);
}
.wp-block-list.is-style-list-round-kaminote li:before {  
  color: var(--wp--preset--color--kaminote-2);
}
/* 投稿日：時計アイコン */
.wp-block-post-date.is-style-clock-icon:before {
    content: url(assets/images/time-line.svg);
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.25em;
    margin-right: .4em;
    font-size: 1.25em;
    opacity: .3;

}
.wp-block-post-terms.is-style-folder-icon:before {
    content: url(assets/images/folder-fill.svg);
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.25em;
    margin-right: .4em;
    font-size: 1.25em;
    opacity: .3;
}
.wp-block-post-terms.is-style-folder-icon a {
    padding: 0;
}
.wp-block-heading.is-style-has-border-btm {
    position: relative;     
}
.wp-block-heading.is-style-has-border-btm::before {
    position: absolute;    
    left: 0;
    bottom: -2px;
    content: "";
    display: block;
    width: 200px;
    height: 3px;
    border-bottom: var(--wp--preset--color--secondary) 2px solid;      
}
.wp-block-heading.is-style-has-border-btm::after {
    position: absolute;    
    left: 0;
    bottom: -2px;
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    border-bottom: var(--wp--preset--color--primary) 2px solid;      
}
.wp-block-group.is-style-has-border-btm {
    position: relative;     
}
.wp-block-group.is-style-has-border-btm::before {
    position: absolute;    
    left: 0;
    bottom: -2px;
    content: "";
    display: block;
    width: 200px;
    height: 3px;
    border-bottom: var(--wp--preset--color--secondary) 2px solid;      
}
.wp-block-group.is-style-has-border-btm::after {
    position: absolute;    
    left: 0;
    bottom: -2px;
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    border-bottom: var(--wp--preset--color--primary) 2px solid;      
}
.wp-block-heading.is-style-has-border-btm-left {
    position: relative;    
}
.wp-block-heading.is-style-has-border-btm-left::after {
    position: absolute;
    left: 0;
    bottom: -16px;
    content: "";
    display: block;
    width: 100px;
    height: 4px;
    background: var(--wp--preset--color--secondary);    
}
.wp-block-heading.is-style-has-arrow a {
    display: block;
    position: relative;    
    color: var(--wp--preset--color--contrast);
}
.wp-block-group.is-style-has-icon-map {
    display: flex;
}
.wp-block-group.is-style-has-icon-map::before {    
    content: url(assets/images/map-pin-2-fill.svg);
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: .5em;    
}
.wp-block-group.is-style-has-icon-map-gold {
  display: flex;
}
.wp-block-group.is-style-has-icon-map-gold::before {    
  content: url(assets/images/map-pin-kaminote.svg);
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: .5em;    
}
.wp-block-group.is-style-has-icon-tel::before {    
    content: "";
    background: url(assets/images/icon-tel.png);
    display: inline-block;
    width: 56px;
    height: 56px;
    background-size: contain;    
}
.wp-block-table.is-style-table-open-hour tr{
    border-bottom: #cdcac0 1px solid;
  }
.wp-block-table.is-style-table-open-hour th{
  width: 200px;
  background: #ebe7dc;  
  line-height: 1.2;
  border: none;
  padding: .8em;
  white-space: nowrap;
}
.wp-block-table.is-style-table-open-hour td{
    background: #fff;    
    line-height: 1.2;
    border: none;
    padding: .8em;
    white-space: nowrap;
  }
  .wp-block-table.is-style-table-th-has-bk th{    
    background: var(--wp--preset--color--secondary);       
  }
   .wp-block-table.is-style-table-kaminote {    
    background: var(--wp--preset--color--secondary);       
  }
  .wp-block-table.is-style-stripes-kaminote tbody tr:nth-child(odd) {
  background-color: rgb(255 255 255 /.7);
}
  .wp-block-group.is-style-has-border-btm-center {
    position: relative;     
}
  .wp-block-group.is-style-has-border-btm-center {
    position: relative;     
}
.wp-block-group.is-style-has-border-btm-center::before {
    position: absolute;    
    left: 50%;
    bottom: -2px;
    transform: translateX(-50% );
    content: "";
    display: block;
    width: 160px;
    height: 3px;
    border-bottom: var(--wp--preset--color--secondary) 2px solid;      
}
.wp-block-group.is-style-has-border-btm-center::after {
    position: absolute;    
    left: 50%;
    bottom: -2px;
    transform: translateX(calc(-50% + 40px));
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    border-bottom: var(--wp--preset--color--primary) 2px solid;      
}
.wp-block-group.is-style-has-icon-ribbon {
  position: relative;     
}
.wp-block-group.is-style-has-icon-ribbon::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50% );
  background: url(assets/images/kaminote/ornament-ribbon.webp);
    display: inline-block;
    width: 61px;
    height: 38px;
    background-size: cover;      
}
.wp-block-group.is-style-indix-link a {
  display: block grid;     
  grid-template-columns: auto 1fr;
  gap: .5em;  
}
.wp-block-group.is-style-indix-link a::after {
  content: "";  
  background: url(assets/images/arrow-down-fill.svg);
    display: inline-block;
    width: 30px;
    height: 30px;
    background-size: cover;      
}
.wp-block-group.is-style-indix-link-kaminote a {
  display: block grid;     
  grid-template-columns: auto 1fr;
  gap: .5em;  
  align-items: center;
}
.wp-block-group.is-style-indix-link-kaminote a::after {
  content: "";  
  background: url(assets/images/kaminote/arrow-down-s-fill.png);
    display: inline-block;
    width: 24px;
    height: 24px;
    background-size: cover;      
}
.wp-block-heading.is-style-has-border-btm-center {
  position: relative;     
}
.wp-block-heading.is-style-has-border-btm-center::before {
  position: absolute;    
  left: 50%;
  bottom: -2px;
  transform: translateX(-50% );
  content: "";
  display: block;
  width: 160px;
  height: 3px;
  border-bottom: var(--wp--preset--color--secondary) 2px solid;      
}
.wp-block-heading.is-style-has-border-btm-center::after {
  position: absolute;    
  left: 50%;
  bottom: -2px;
  transform: translateX(calc(-50% + 40px));
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  border-bottom: var(--wp--preset--color--primary) 2px solid;      
}
.wp-block-heading.is-style-has-border-left-bi {
  position: relative;     
}
.wp-block-heading.is-style-has-border-left-bi::before {
  position: absolute;    
  left: 0;
  top: 0;  
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  background: var(--wp--preset--color--secondary);     
}
.wp-block-heading.is-style-has-border-left-bi::after {
  position: absolute;    
  left: 0;
  top: 50%;  
  content: "";
  display: block;
  width: 3px;
  height: 50%;
  background: var(--wp--preset--color--primary);     
}
.wp-block-heading.is-style-has-border-btm-dot {
  border-bottom: 2px dotted #e9e9e9;  
}
.wp-block-heading.is-style-display-inline {
  display: inline-block;  
}
.wp-block-heading.is-style-center-has-border {
  position: relative;
}
.wp-block-heading.is-style-center-has-border::before, .wp-block-heading.is-style-center-has-border::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: clamp(2.813rem, 2.358rem + 2.27vw, 4.063rem);
  height: 1px;
  background-color: #938f16;
}
.wp-block-heading.is-style-center-has-border::before {
  left:0;
}
.wp-block-heading.is-style-center-has-border::after {
  right: 0;
}
.wp-block-heading.is-style-has-icon-heart {
  display: block grid;  
  grid-template-columns: 35px auto;
  gap: .5em;
  align-items: center;
}
.wp-block-heading.is-style-has-icon-heart::before {  
  content: "";
  width: 35px;
  height: 30px;
  background: url(assets/images/kaminote/ornament-heart.webp);
  background-size: cover;  
}
.wp-block-heading.is-style-has-icon-key {
  display: block grid;  
  grid-template-columns: 45px auto;
  gap: .5em;
  align-items: center;
}
.wp-block-heading.is-style-has-icon-key::before {  
  content: "";
  width: 45px;
  height: 68px;
  background: url(assets/images/kaminote/icon-key.webp);
  background-size: cover;
  
}
.wp-block-button.is-style-has-icon-arrrow-r a {
  position: relative;
 display: block;
 max-width: 400px;   
}
.wp-block-button.is-style-has-icon-arrrow-r a::after {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 24px;
  height: 24px;
  background: url(assets/images/icon-arrow-r.webp);
  background-size: cover;
}
.wp-block-button.is-style-has-arrrow-r__gold a {
  position: relative;
 display: block;
 max-width: 400px;
}
.wp-block-button.is-style-has-arrrow-r__gold a::before {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 24px;
  height: 1px;
  background: #938f16;
}
.wp-block-button.is-style-has-arrrow-r__gold a::after {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #938f16;
}

.columns-is-style-has-race-pink-l {
  background: url(assets/images/kaminote/ornament-race-pink-right.webp) repeat-y left;  
  background-size: 27px auto;
}

  /* header */
  .wp-block-template-part:has(.header) {
    width: 100%;
    position: sticky;
    left: 0;
    top: 0;
    z-index: 100;
    background: #fff;
}
.header-btn-tel a {
    width: 50px !important;
    height: 50px;
  position: absolute;
  right: 0;
  top: 100px;
  display: block;
  writing-mode: vertical-rl;
  line-height: 1;
  z-index: 10;
}
.header-btn-tel a::before {
    content: "";
    background: url(assets/images/icon-tel.png);
    display: inline-block;
    width: 28px;
    height: 28px;
    background-size: contain;     
    margin-bottom: 10px;   
}
.header-btn-tel a span {
    display: none;
}
 /* footer下部に固定 */
.wp-site-blocks {   
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 100%;
    min-height: 100vh;
}
.wp-block-template-part:has(.footer-kaminote) {
  margin-top: 0;
}
/* スマホナビ内メニュー */
.wp-block-navigation__responsive-container.is-menu-open {
  padding: 2em;
}
.header-gnav__tamamura.wp-block-navigation__responsive-container-close svg, .header-gnav__tamamura .wp-block-navigation__responsive-container-open svg {
  width: 50px;
  height: 50px;
  background: var(--wp--preset--color--secondary);
  border-radius: 10px 0 0 10px;
}
.header-gnav__kaminote.wp-block-navigation__responsive-container-close svg, .header-gnav__kaminote .wp-block-navigation__responsive-container-open svg {
  width: 50px;
  height: 50px;
  background: #f1a5c2;
  fill: #fff;
  border-radius: 10px 0 0 10px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content,
.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content
  {
  display: block grid;
  grid-template-columns: 30px auto;
  gap: .5em ;
  align-items: center;
  margin: .4em ;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(assets/images/icon-arrow-r.webp);
  background-size: cover;
}

.header-gnav__tamamura .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .header-gnav__kaminote-list > .wp-block-navigation-item__content::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(assets/images/icon-arrow-r-g.webp);
  background-size: cover;
}
.header-gnav__kaminote .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(assets/images/icon-arrow-r-g.webp);
  background-size: cover;
}
.header-gnav__kaminote .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .header-gnav__tamamura-list > .wp-block-navigation-item__content::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(assets/images/icon-arrow-r.webp);
  background-size: cover;
}
.wp-block-navigation .wp-block-page-list {
  gap: .5em;
}
/*
.header-menu__sub >.wp-block-navigation-item>.wp-block-navigation-item__content {
  display: block;
  line-height: 1.4;  
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has_child .wp-block-navigation__submenu-container {
  padding: 1em 0 1em 3em;
}
.wp-block-navigation__responsive-container-close {
  right: -16px;
  top: 30px;
}
.header-menu__sub >.wp-block-navigation-item { 
border-bottom: #fff 1px solid;
padding: .4em 0 .4em 0;
}  
*/
@media (max-width: 460px) {
  .lum-lightbox-caption {
      left: 0;
    }
   }
@media (max-width: 767px) {
    .wp-block-table.is-style-table-open-hour table {
        display: block;
        overflow-x: scroll;
    }  
    .tsblr-schedule-year table {
      display: block;
      overflow-x: scroll;
  }  
    }  

img {
    max-width: 100% ;  
  }
.totop {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 20;
    opacity:1;
  }
  .is-active {
    opacity: .6;
    visibility: visible;
  }
  .box-border-g {
    position: relative;
  }
  .box-border-g__ttl {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    padding: 0 10px;
    background: #fff;
  }
  .box-has-border__btm {
    border-bottom: #cdcac0 1px dotted;
  }
  .icon-before-txt {
    vertical-align: middle;
    margin-right: .5em;
  }
 
  /* swiper  */  
 .swiper {
    position: relative;
    height: 80vh;
    overflow: hidden;
   }
   .swiper-inner {
    width: 90%;
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
  }
  .swiper-txt {
    background: rgb(255 255 255 /.7) ;
    font-family: var(--wp--preset--font-family--noto-sans-jp);
    font-weight: 600;
    padding: 10px;
    border-radius: 8px;
  }
  .swiper-txt__lead {
    font-size: var(--wp--preset--font-size--large);
    line-height: 1.5;
    margin: 0;
  }
  .swiper-wrapper{
    transition-timing-function: linear;
    
  }
  .swiper img{
    display: block;
    width: 100%;   
    height: 100%; 
    object-fit: cover;
    object-position: top;
  }
  .swiper-access {
    position: relative;
    max-width: 800px;
    margin: 20px auto;
  }
  .swiper-access__ttl,.swiper-kaminote-access__ttl {
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, .8);
    padding: 0 4px;
    font-family: var(--wp--preset--font-family--noto-sans-jp);
  } 
  .swiper-button-prev, .swiper-button-next {
    color: var(--wp--preset--color--primary);
    background: #fff;
    padding: .2rem;
  }
  
  /* rightbox */
  .luminous {
    position: relative;
    margin-left: 0;
    margin-right: 0;    
  }  
  .lum-lightbox {
    z-index: 999;
  }
  .luminous a {
    display: block;
  }
  .luminous img {
    width: 100%;
  }  
  .lum-lightbox-inner img {
    max-width: 100%;
    max-height: 80vh;
  }
  .luminous::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 30px;
    background-color: #eeeeee;
    background-image: url(assets/images/icon-glass.png);
    background-size: 24px 24px;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .luminous-kaminote:after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 30px;
    background-color: #fceceb;
    background-image: url(assets/images/kaminote/icon-search.webp);
    background-size: 24px 24px;
    background-position: center center;
    background-repeat: no-repeat;
  }
  /* btn  */
  .btn-has-arrow__greenright a {
    position: relative;
   display: block;
   max-width: 400px;
   border-radius: 9999px;
   background: var(--wp--preset--color--primary);
   font-family: var(--wp--preset--font-family--noto-sans-jp);
   color: #fff;   
   text-align: center;
   margin: 10px auto;
   padding: 10px 20px;
  }
  .btn-has-arrow__greenright a::after {
    position: absolute;
    top: calc(50% - 12px);
    right: 10px;
    content: "";
    width: 24px;
    height: 24px;
    background: url(assets/images/icon-arrow-r.webp);
    background-size: cover;
  }
  /* Top */
  .linkbnr-over__link {
    display: block;   
    border-radius: 10px;
    box-shadow: 0 0 12px #cdcac0;
  }
  .linkbnr-over__img {
    width: 100%;
    height: 200px;
    overflow: hidden;
    border-radius: 10px 10px 0 0;
  }
  .linkbnr-over__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .linkbnr-over__ttl {
    position: relative;    
    margin: 0;
    padding: 20px 54px 20px 1em;
    border-radius: 0 0 10px 10px;
    color: var(--wp--preset--color--primary);
  }
  .linkbnr-over__ttl::after {
    position: absolute;
    right: 1em;
    top: calc(50% - 15px);
    content: "";
    width: 30px;
    height: 30px;
    background: url(assets/images/arrow-right.svg);
    background-size: cover;
  }
  .top-value-box {
    max-height: 160px;
    overflow: hidden;
  }
  .top-value-box__num {
    width: 90px;
   height: 100%;  
  }
  .top-value-box__num img {  
   object-fit: contain;
  }
  .top-value-box__txt {
    max-width: 60%;
  }
  .linkmedical-over__link {
    position: relative;
    display: block;   
    height: 100%;
    border-radius: 10px;
    box-shadow: 0 0 12px #cdcac0;
    color: var(--wp--preset--color--contrast);
  }
  .linkmedical-over__img {
    width: 100%;
    height: 180px;
    overflow: hidden;
    border-radius: 10px 10px 0 0;
  }
  .linkmedical-over__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .linkmedical-over__ttl {      
    margin: 0;
    padding: 20px 1em 0;
    color: var(--wp--preset--color--primary);
  }
  .linkmedical-over__link::after {
    position: absolute;
    left: 50%;
    bottom: 10px;
    left: calc(50% - 15px);
    content: "";
    width: 30px;
    height: 30px;
    background: url(assets/images/arrow-right.svg);
    background-size: cover;
  }
  .linkmedical-over__txt {
    padding: 0 1em 50px 1em;
  }

  .linklarge-over__link {
    position: relative;
    display: block;   
    height: 460px;
    border-radius: 10px;
    box-shadow: 0 0 12px #cdcac0;
    color: var(--wp--preset--color--contrast);
  }
  .linklarge-over__img {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 10px;
  }
  .linklarge-over__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
  }
  .linklarge-over__contents {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: #fff;
    border-radius: 0 0 10px 10px;
    padding: 0 0 40px;
  }
  .linklarge-over__ttl {      
    margin: 0;
    padding: 20px 1em 0;
    color: var(--wp--preset--color--primary);
  }
  .linklarge-over__link::after {
    position: absolute;
    right: 1em;
    bottom: 10px;   
    content: "";
    width: 30px;
    height: 30px;
    background: url(assets/images/arrow-right.svg);
    background-size: cover;
  }
  .linklarge-over__txt {
    padding:0 1em;
  }
  .top-newslist li {
    position: relative;    
    padding: 10px 1em;
  } 
  .top-newslist li a {
    display: block;
  }
  .top-newslist li:nth-child(odd) {
    background: var(--wp--preset--color--dark-gray);
  }
  .top-newslist li::after {
    position: absolute;
    right: 1em;
    top: calc(50% - 15px);
    content: "";
    width: 30px;
    height: 30px;
    background: url(assets/images/icon-arrow-r.png);
    background-size: cover;
  }
  .top-newslist li .wp-block-latest-posts__post-title {
   margin-right: 20px;
   color: var(--wp--preset--color--contrast);
  }
  /* page */   
   .table-schedule-year,.table-schedule-year__kaminote {
    overflow-x: scroll;
   }
  .table-schedule-year table th,.table-schedule-year__kaminote table th { 
  padding: .8em;
  white-space: nowrap;  
  background: #dff4dd;
}
.table-schedule-year__kaminote table th {
  background: var(--wp--preset--color--kaminote-4);
} 
.table-schedule-year table td,.table-schedule-year__kaminote table td{   
    padding: .8em;
    white-space: nowrap;    
  }
  /* kaminote */
  .header-kaminote {
    position: relative;
  }
  .header-kaminote::after {
    position: absolute;
    left: 0;
    bottom: -38px;
    content: "";
    background: url(assets/images/kaminote/ornament-header-btm.webp) repeat-x center;
    display: block;
    width: 100%;
    height: 38px;
  }
  .header-kaminote .header-btn-tel a::before {
    background: url(assets/images/kaminote/icon-tel.webp);
    background-size: contain;
  }
  .mainimg-kaminote {
    position: relative;
    max-width: none;
    margin: 0 calc(50% - 50vw);
   width: 100%;
    background: url(assets/images/kaminote/ornament-main.svg) no-repeat top left ,url(assets/images/kaminote/ornament-race-white.webp) repeat-x bottom left,linear-gradient(to bottom, #b4f5ed, #effcfc,#f1fcff, #d2fcf8,#bcebf1);
    background-size: contain,auto;
    padding-bottom: 1em;
  }  
  .mainimg-kaminote__btn {
    display: block grid;
    grid-template-columns: 1fr 1fr ;
    grid-auto-flow: column ;
    column-gap: .5em;
    margin: 1em 1em 0;    
  }
  .mainimg-kaminote__btn a {
    display: block;
  }
  .mainimg-kaminote__btn a img {
    height: auto;
  }  
  .swiper-kaminote img{
    display: block;
    width: 100%;   
    height: 100%; 
    object-fit: contain;
  }
  .swiper-kaminote {
    max-width: 800px;
    height: auto;
    padding: 60px 0 0;
    margin: 0 auto;
  }
  .swiper-kaminote-access {
    max-width: 100%;
    overflow: hidden;
    margin: 0 auto 2rem;
  }
  .swiper-kaminote-access .swiper-button-prev,.swiper-kaminote-access .swiper-button-next {
    color: var(--wp--preset--color--kaminote-1);
    background: #fff;
    padding: .2rem;
  }
  .box-has-ribbon__wrapper {
    max-width: 760px;
    border: #ccc622 2px dotted;   
  }
  .box-has-ribbon {
    position: relative;
  }
  .box-has-ribbon::before {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-ribbon-shape.webp);
    width: 146px;
    height: 146px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 20;
  }
  .box-has-ribbon::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-ribbon-shape.webp);
    width: 146px;
    height: 146px;
    position: absolute;
    bottom: 0;
    right: 0;
    rotate: 180deg;
    z-index: 20;
  }
  .area-has-race-btm,.area-has-race-top,.area-has-race-pink-btm,.area-has-race-pink-top {
    position: relative;
  }
  .area-has-race-btm::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-sky.webp) repeat-x;
    width: 100%;
    height: 22px;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .area-has-race-top::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-sky.webp) repeat-x;
    rotate: 180deg;
    width: 100%;
    height: 22px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .area-has-race-pink-btm::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-pink.webp) repeat-x;
    width: 100%;
    height: 22px;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .area-has-race-pink-top::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-pink.webp) repeat-x;
    rotate: 180deg;
    width: 100%;
    height: 22px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .area-has-race-wh-btm::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-white.webp) repeat-x;
    width: 100%;
    height: 22px;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .area-has-race-wh-top::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-white.webp) repeat-x;
    rotate: 180deg;
    width: 100%;
    height: 22px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .box-velue {
    position: relative;
  }
  .box-velue::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/texture-box-btm.webp) ;    
    width: 66px;
    height: 70px;
    position: absolute;
    bottom: -10px;
    right: -10px;
    z-index: 20;
  }
  .box-velue-01::before {
    content: "";
    display: block;
    background: url(assets/images/kaminote/pic-num-01.webp) ;    
    width: 151px;
    height: 70px;
     background-size: contain;
    position: absolute;
    top: -40px;
    left: -10px;
    z-index: 20;
  }
  .box-velue-02::before {
    content: "";
    display: block;
    background: url(assets/images/kaminote/pic-num-02.webp) ;    
    width: 151px;
    height: 70px;
     background-size: contain;
    position: absolute;
    top: -40px;
    left: -10px;
    z-index: 20;
  }
  .box-velue-03::before {
    content: "";
    display: block;
    background: url(assets/images/kaminote/pic-num-03.webp) ;    
    width: 151px;
    height: 70px;
     background-size: contain;
    position: absolute;
    top: -40px;
    left: -10px;
    z-index: 20;
  }
  .box-has-corner-shape__pink{
    position: relative;
  }
  .box-has-corner-shape__pink::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/texture-box-btm-pink.webp) ;    
    width: 66px;
    height: 70px;
    position: absolute;
    bottom: -10px;
    right: -10px;
    z-index: 20;
  }
  .news-list-kaminote li {
    position: relative;
   display: block grid;
   grid-template-columns: 1fr 110px;
   column-gap: .5em;
   align-items: center;
   padding: 10px 40px 10px 10px;
  }
  .news-list-kaminote li::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/arrow.svg) ;    
    width: 30px;
    height: 9px;
     background-size: contain;
    position: absolute;
    top: 50%;
   right: 4px;
   transform: translateY(-50%);
  }
  .news-list-kaminote li:nth-child(odd) {
    position: relative;
    background: #fff;
  }
  .news-list-kaminote li:nth-child(odd)::before {
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    display: block;
    width: 4px;
    height: 100%;
    background: linear-gradient(to bottom, #fbb4b9, #f3e6e6, #fbb4b9);
  }
  .header-mainimg__kaminote {
    position: relative;
  }
  .header-mainimg__kaminote::after {
    content: "";
    display: block;
    background: url(assets/images/kaminote/ornament-race-white.webp) repeat-x;
    width: 100%;
    height: 24px;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .link-has-bor-kaminote a {
    border-bottom: var(--wp--preset--color--kaminote-1) 2px dashed;
    text-underline-offset: 8px;
  }
   
  
  @media (min-width: 768px) {
    .wp-block-navigation .has-child .wp-block-navigation__submenu-container {
   max-width: 400px ;
   flex-direction: row;
   flex-wrap: wrap;
   padding: 1em;
    } 
   
    .wp-block-heading.is-style-center-has-border::before, .wp-block-heading.is-style-center-has-border::after {      
      width: 250px;    
    }
    .header-logo {
        max-width: none;
    }
    .swiper {
     height: 90vh;
   }
    .swiper-txt {
      width: 60%;
        margin-bottom: 40px;
        border-radius: 0 8px 8px 0;
    }
    .swiper-txt__lead {
      margin: 10px;
    }
    .swiper-inner {
        left: 0;
        bottom: 40px;
        transform: none;
    }
    .header-btn-tel a {
        height: 300px;
    }
    .header-btn-tel a span {
        display: inline;
    }
    .top-about .wp-block-media-text__media img {
      border-radius: 8px 0 0 8px ;
    }   
    .header-mainimg,.header-mainimg__kaminote {
    height: 600px;
  }
    .linklarge-over__contents {
      padding: 0;
    }
    .linkmedical-over__link::after {
      width: 40px;
      height: 40px;
      left: calc(50% - 20px);
    }
    .linklarge-over__link::after{
      width: 40px;
      height: 40px;
    }
    .linkbnr-over__ttl::after,.top-newslist li::after {
      top: calc(50% - 20px);
      width: 40px;
      height: 40px;
    }
    .swiper-kaminote {     
      padding: 100px 0 0;
    }
    .mainimg-kaminote__btn {
      column-gap: 2em;
      margin: 2em 2em 0;
    }   
    .news-list-kaminote li {
      grid-template-columns: 1fr 120px;
      padding: 10px 40px 10px 20px;
    }
}
@media (min-width: 1000px) {
    .swiper-inner {        
        left: 0;
        bottom: 40px;
        transform: none;
    }
    .swiper-txt__lead {
      font-size: 46px;
    }
    .btn-has-arrow__greenright a {
      padding: 20px;
    }
    .btn-has-arrow__greenright a::after {
      top: calc(50% - 18px);
        width: 36px;
        height: 36px;
        right: 20px;
    }
    .linklarge-over__contents {
      width: 50%;
      right: 0;
      left: auto;
      border-radius: 10px 0 10px 0;
      padding: 10px;
  }  
  .swiper-kaminote {     
    padding: 140px 0 20px;
  }
  .mainimg-kaminote__btn {
    display: block;
  }
  .mainimg-kaminote__btn-first {
    position: absolute;
    bottom: 40px;
    left: 0;
    z-index: 99;
  }
  .mainimg-kaminote__btn-tel {
    position: absolute;
    bottom: 40px;
    right: 0;
    z-index: 99;
  }
  
}
@media (min-width: 1200px) {
  .mainimg-kaminote__btn-first {
    position: absolute;
    bottom: 40px;
    left: 10%;
    z-index: 99;
  }
  .mainimg-kaminote__btn-tel {
    position: absolute;
    bottom: 40px;
    right:10%;
    z-index: 99;
  }
}
@media (any-hover: hover) {
  .header-gnav__tamamura >.wp-block-navigation-item >.wp-block-navigation-item__content,
  .header-gnav__kaminote >.wp-block-navigation-item >.wp-block-navigation-item__content,
  .header-gnav__kaminote >.wp-block-navigation__submenu-container >.wp-block-navigation-item >.wp-block-navigation-item__content {
  transition: color .4s;
  }
  .header-gnav__tamamura >.wp-block-navigation-item >.wp-block-navigation-item__content:hover,
  .header-gnav__kaminote >.wp-block-navigation-item >.wp-block-navigation-item__content:hover,
  .header-gnav__kaminote >.wp-block-navigation__submenu-container >.wp-block-navigation-item >.wp-block-navigation-item__content {
    text-decoration: none;
    color: var(--wp--preset--color--tertiary);
    }
  .header-menu__sub >.wp-block-navigation-item>.wp-block-navigation-item__content {
    transition: transform .4s;
  }
  .header-menu__sub >.wp-block-navigation-item>.wp-block-navigation-item__content:hover {
    translate: 8px 0;
  }
    .linkbnr-over__link .linkbnr-over__img img,.linkmedical-over__link .linkmedical-over__img img, .linklarge-over__link .linklarge-over__img img {
        transition: transform .4s;
    }
    .linkbnr-over__link {
      transition: box-shadow .4s;
    }
    .linkbnr-over__link:hover,.linklarge-over__link:hover{
      box-shadow: none;
      text-decoration: none;
    }
    .linkbnr-over__link:hover .linkbnr-over__img img,.linkmedical-over__link:hover .linkmedical-over__img img ,.linklarge-over__link:hover .linklarge-over__img img {
        transform:scale(1.1,1.1);
    }
    .linkbnr-over__link .linkbnr-over__ttl {
        transition: background .4s;
    }
    .linkbnr-over__link:hover .linkbnr-over__ttl {
        text-decoration: none;
        background: var(--wp--preset--color--dark-gray);
    }
    .linkmedical-over__link {
      transition: box-shadow .4s,background .4s;
    }   
    .linkmedical-over__link:hover {
        text-decoration: none;
        box-shadow: none;
        background: var(--wp--preset--color--dark-gray);
    }     
    .linkmedical-over__link .linkmedical-over__ttl {
        transition: background .4s;
    }      
    .linklarge-over__link {     
        transition: box-shadow .4s,background .4s;      
    }   
    .linklarge-over__link:hover .linklarge-over__contents {
      background: var(--wp--preset--color--dark-gray);
    }      
    .linklarge-over__link .linklarge-over__ttl {
        transition: background .4s;
    }
    .linkmedical-over__link::after,.linklarge-over__link::after,.linkbnr-over__ttl::after {
        transition: translate 1s;
    }
    .linkmedical-over__link:hover::after,.linklarge-over__link:hover::after,.linkbnr-over__ttl::after {
        translate: 8px 0;
    }
    .btn-has-arrow__greenright a {
        transition: box-shadow .4s;
    }
    .btn-has-arrow__greenright a:hover {
        box-shadow: 0 0 12px #cdcac0;
    }
    .btn-has-arrow__greenright a::after {
      transition: translate .4s;
    }
    .btn-has-arrow__greenright a:hover::after {     
      translate: 4px 0;
    }
    .is-style-has-icon-arrrow-r a {
      transition: box-shadow .4s,color .4s;
         }
      .is-style-has-icon-arrrow-r a::after {
        transition: translate .4s;
      }
    .is-style-has-icon-arrrow-r a:hover {
      box-shadow: 0 0 12px #cdcac0;
      color: #fff;
    }
    .is-style-has-icon-arrrow-r a:hover::after {      
      translate: 4px 0;
    }
    .wp-block-button.is-style-has-arrrow-r__gold a {
      transition: box-shadow .4s;
         }
         .wp-block-button.is-style-has-arrrow-r__gold a:hover {
        box-shadow: 0 0 12px #cdcac0;        
      }     
      .wp-block-group.is-style-indix-link a {
        transition: text-decoration .4s;        
      }
      .wp-block-group.is-style-indix-link a::after {
        transition: translate .4s;
      }
      .wp-block-group.is-style-indix-link a:hover::after {
        translate: 0 4px;
      }
      .wp-block-group.is-style-indix-link-kaminote a {
        transition: text-decoration .4s;        
      }
      .wp-block-group.is-style-indix-link-kaminote a::after {
        transition: translate .4s;
      }
      .wp-block-group.is-style-indix-link-kaminote a:hover::after {
        translate: 0 4px;
      }
    .mainimg-kaminote__btn a {
      transition: translate .4s;
    }
    .mainimg-kaminote__btn a:hover {
      translate: 0 20px;
    }
    .link-has-bor-kaminote a {
      transition: border-bottom-style .4s;
    }
    .link-has-bor-kaminote a:hover {
      border-bottom-style: solid;
    } 
}
     /************************************
** お問い合わせフォームの入力
************************************/
.table-contact{    
  margin: 20px auto 40px;
  }  
  .table-contact__check {
    background-color: #eff1f5;
    padding: .5rem
  }
  .table-contact table{
  width: 100%;    
  border-collapse: collapse;      
  border-width: 1px;
  color: #444;
  }
  .table-contact table tr th,
  .table-contact table tr td{
      display: block;
  padding: 0.5em;
  text-align: left;   
  vertical-align: middle;
  }
  .table-contact table tr td {
      border-bottom: 1px solid #CCC;
  }
  .table-contact table tr:last-child th,
  .table-contact table tr:last-child td {
      border-bottom: none;
  }
  .table-contact table tr th{
  width: 35%;  
  }      
  .table-contact{
  width: 100%;
  }  
  .table-contact table{
  width: 100%;  
  }    
  .table-contact table tr th,
  .table-contact table tr td{    
  width: 100%;
  box-sizing: border-box;
  }    
  .table-contact table tr th{   
  text-align: left;
  }    
  /*「必須」文字デザイン*/
  .txt-required{
  font-size:.8em;
  padding: 0 5px;
  background: #f9d675;
  }   
  /*「任意」文字デザイン*/
  .txt-optional{
      font-size:.8em;
      padding: 5px;
      background: var(--wp--preset--color--gray);        
      }
      .txt-required,.txt-optional{ 
          margin-right: 1em;
      }
  input.wpcf7-form-control.wpcf7-text,
  textarea.wpcf7-form-control.wpcf7-textarea {   
      width: 80%;
    max-width: 100%;
    padding: 8px 15px; 
    margin-top: 10px;
    border: 1px solid #d0d5d8;
    border-radius: 3px;
    background-color: #eff1f5;
    box-sizing: border-box;
  }
  input.wpcf7-date,input.wpcf7-number {
    margin: .5rem;
    padding: .5rem;
    background-color: #eff1f5;
    border: 1px solid #d0d5d8;
  }
  input.wpcf7-number.post-number-01,input.wpcf7-number.post-number-02 {
    max-width: 100px;
  }
  .wpcf7-list-item input[name="radio-starttime"] {
    margin: 0 1rem 0 0;
  }
  select.wpcf7-select {
    padding: .5rem;
    background-color: #eff1f5;
  }
  textarea.wpcf7-form-control.wpcf7-textarea {
    height: 200px;
  }
   input.wpcf7-submit {
      display: block;
      padding: 15px;     
      background:#f9d675;        
      font-size: 18px;
      font-weight: 700;
      margin: 30px auto ;
      border-radius: 6px ;
      border: orange 1px solid;
      cursor: pointer;
  }
  @media screen and (min-width:768px){  
    .table-contact{
        width: 768px;
            }        
            .table-contact table tr th,
            .table-contact table tr td{
                display: table-cell;
            }        
        .table-contact table tr th{
            max-width: 44%;  
            }
         
            input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
    width: 100%;
}
.table-contact table tr th {
    border-bottom: 1px solid #CCC;
}
}