@charset "utf-8";

/*
Theme Name : fujiokarigaku
Version : 1.0
Author: zoom
Description: 
*/
* {
  margin: 0;
  padding: 0;
  /*   outline: 1px solid #e61111;*/
}
:root {
  --main-color: #FFFFFF;
}
:root
 {
    --color-base: #ff783b;
    --color-gray: #ddd;
    --color-theme: #99B319;
    --color-theme-darken: #5e9600;
}
main {
  background-color: var(--main-color);
}
section {
    padding: 0 100px;
}
@media (max-width: 1024px) {
    section {
        padding: 0 50px;
    }
}
@media (max-width: 768px) {
    section {
        padding: 0 30px;
    }
}
* {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.fwe {
  font-weight: bold;
}
/* ヘッダー */
header {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100px;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px;
  z-index: 99;
  background: rgb(252, 244, 229);
}
nav .navbar {
  height: 100%;
  max-width: 1250px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: auto;
  flex-wrap: wrap;
  padding: 0 20px;
}
.-w-h1-wrap {margin-bottom: 15px;}
.-w-h1-wrap h1 {
    color: rgba(255, 120, 59, .9);
    font-size: 0.875rem;
    line-height: 1.0;
    font-weight: 500;
}
.navbar .logo a {
    font-size: 1.375rem;
    color: #FF783B;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: .125rem;
}

.navbar .bx-menu {display: none;}
.bx {
    font-family: 'boxicons' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    display: inline-block;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.navbar .nav-links {
  line-height: 100px;
  height: 100%;
}
.navbar .nav-links .sidebar-logo {display: none;}
.navbar .links {display: flex;}
ul, nav {list-style: none;}
.navbar .links li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    list-style: none;
    padding: 0 12px;
}
.navbar .links li a {
    height: 100%;
    text-decoration: none;
    white-space: nowrap;
    color: #5E9600;
    font-size: .875rem;
    font-weight: 600;
}
a {
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    transition: 0.5s;
    opacity: 1;
}
.navbar .links li a:hover {
  color: #ff783b
}
.navbar .links li span {
    height: 100%;
    text-decoration: none;
    white-space: nowrap;
    color: #5E9600;
    font-size: .875rem;
    font-weight: 600;
}
.navbar .links li .arrow {
    height: 100%;
    width: 22px;
    line-height: 100px;
    text-align: center;
    display: inline-block;
    color: #5E9600;
    transition: all 0.3s ease;
}
.links li:hover .htmlcss-arrow, .links li:hover .js-arrow {
    transform: rotate(180deg);
}
.navbar .links li .sub-menu {
    position: absolute;
    top: 70px;
    left: 0;
    line-height: 40px;
    background: rgba(252, 244, 229, 1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    border-radius: 0 0 4px 4px;
    display: none;
    z-index: 2;
}
.navbar .links li:hover .htmlcss-no {
  color: #ff783b !important;
}
.navbar .links li:hover .sub-menu {
  display: block;
}
.navbar .links li .sub-menu li {
    padding: 0 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
}
.navbar .links li .sub-menu li a:hover{
    color: #ff783b !important;
}
.navbar .links li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    list-style: none;
    padding: 0 12px;
}
.navbar .links li .sub-menu a {
    color: #5E9600;
    font-size: .875rem;
    font-weight: 600;
}
.me-10 {
    padding-right: 10px;
}
nav .navbar .links li a.f-big {
    font-size: 1rem !important;
}
@media (min-width: 1025px) {
   nav .navbar .links li a[href*="tel:"] {
        color: #ff783b !important;
        font-size: 1rem;
        font-weight: 600;
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}
@media (max-width: 1025px) {
  nav .navbar{
    max-width: 100%;
    padding: 0 10px;
  }

  nav .navbar .logo a{
    font-size: 1.5rem;
  }
  nav .navbar .links li{
    padding: 0 10px;
    white-space: nowrap;
  }
  nav .navbar .links li a{
    font-size: .875rem;
  }
}
/*ハンバーガー*/
@media (max-width: 768px) {
.navbar .bx-menu {
    font-size: 1.5rem;
    display: block;
  }
}
@media (max-width: 768px) {
.navbar .bx-menu{
    display: block;
  }
  nav .navbar .nav-links{
    position: fixed;
    top: 0;
    right: -100%;
    display: block;
    max-width: 100%;
    width: 100%;
    background: rgba(0,0,0,.9);
    line-height: 40px;
    padding: 20px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    transition: all 0.5s ease;
    z-index: 1000;
  }
  .navbar .nav-links .sidebar-logo{
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .sidebar-logo .logo-name{
    font-size: 1rem;
    color: #FF783B;
    font-weight: 600;
  }
    .sidebar-logo  i,
    .navbar .bx-menu{
      font-size: 1.5rem;
    }
    .navbar .bx-x {
        color:#fff;
    }
  nav .navbar .links{
    display: block;
    margin-top: 20px;
  }
  nav .navbar .links li .arrow{
    line-height: 40px;
  }
nav .navbar .links li{
    display: block;
  }
nav .navbar .links li .sub-menu{
  position: relative;
  top: 0;
  box-shadow: none;
  display: none;
}
nav .navbar .links li .sub-menu li{
  border-bottom: none;

}
.navbar .links li .sub-menu .more-sub-menu{
  display: none;
  position: relative;
  left: 0;
}
.navbar .links li .sub-menu .more-sub-menu li{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.links li:hover .htmlcss-arrow,
.links li:hover .js-arrow{
  transform: rotate(0deg);
  }
  .navbar .links li .sub-menu .more-sub-menu{
    display: none;
  }
  .navbar .links li .sub-menu .more span{
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
  }

  .links li .sub-menu .more:hover .more-sub-menu{
    display: none;
  }
  nav .navbar .links li:hover .htmlCss-sub-menu,
  nav .navbar .links li:hover .js-sub-menu{
    display: none;
  }
.navbar .nav-links.show1 .links .htmlCss-sub-menu,
  .navbar .nav-links.show3 .links .js-sub-menu,
  .navbar .nav-links.show2 .links .more .more-sub-menu{
      display: block;
    }
    .navbar .nav-links.show1 .links .htmlcss-arrow,
    .navbar .nav-links.show3 .links .js-arrow{
        transform: rotate(180deg);
}
    .navbar .nav-links.show2 .links .more-arrow{
      transform: rotate(90deg);
    }
    
}
.hinav {/*調整用*/
  height: 100px;
}
/* TOP MV */
.main {
    display: block;
  }

  .l-inner {
    position: relative;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    max-width: 1250px;
    margin: 0 auto;
    padding: 0 10rem;
  }

  .l-section {
    border-top: 1px solid #eee;
  }
  .l-section .l-inner {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }

  [class*=swiper]:focus {
    outline: none;
  }
/* 画像を暗くするオーバーレイ */
  .cf-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .35);
    z-index:5;
  }
  .slide-media,
  .thumb-media {
    position: relative;
    overflow: hidden;
  }
  .slide-media img,
  .thumb-media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }


  .swiper-button-prev, .swiper-button-next {
    display: grid;
    place-content: center;
    width: 6.4rem;
    height: 6.4rem;
    cursor: pointer;
    -webkit-transition: var(--transition);
    transition: var(--transition);
  }
  .swiper-button-prev::before, .swiper-button-next::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    border-radius: 50%;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
  }
  .swiper-button-prev::after, .swiper-button-next::after {
    width: 1.2rem;
    height: 1.2rem;
    content: "";
    border: solid var(--color-gray);
    border-width: 3px 3px 0 0;
  }
  .swiper-button-prev::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .swiper-button-next::after {
    margin-right: 0.4rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .swiper-button-disabled {
    pointer-events: none;
    opacity: 0;
  }

  .mv01 {
    margin-bottom: 10rem;
  }
  .mv01 .l-inner {
    padding-bottom: 0;
  }
  .mv01 .swiper-fade .swiper-slide {
    -webkit-transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, transform !important;
    transition-property: opacity, transform, -webkit-transform !important;
    pointer-events: none;
  }
  .mv01 .swiper-fade .swiper-slide-active {
    pointer-events: auto;
  }
  .mv01 .swiper-pagination {
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 1.875rem;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    margin: auto;
  }

.mv01 .swiper-pagination-bullet {
    display: block;
    border-radius: inherit;
    width: 3px;
    height: 2rem;
    cursor: pointer;
    -webkit-transition: .8s cubic-bezier(.2, 1, .2, 1);
    transition: .8s cubic-bezier(.2, 1, .2, 1);
    background-color: rgba(255, 255, 255, 0.4);
  }
  .mv01 .swiper-pagination-bullet:not(:first-child) {
    margin-top: 0.8rem;
  }
  .mv01 .swiper-pagination-bullet-active {
    background-color: var(--color-theme);
    height: 3rem;
    opacity: 1;
    -webkit-transition: .8s;
    transition: .8s;
  }
  .mv01 .slide-media {
    height: 800px;
  }
  .mv01 .slide-media img {
    -webkit-transition: 7s 1s ease-out;
    transition: 7s 1s ease-out;
  }
  .mv01 .slide-title {
    display: flex;
    flex-wrap: wrap;
    font-size: 2rem;
    font-weight:600;
    line-height: 1.6;
    position: absolute;
    left: 8rem;
    top: 25%;
    margin-right: 2rem;
    text-align: left;
    color: #FFF;
    z-index: 10;
  }
    .mv01 .slide-title2 {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.5rem;
    font-weight:500;
    line-height: 1.5;
    position: absolute;
    left: 8rem;
    top: 40%;
    margin-right: 2rem;
    text-align: left;
    color: #FFF;
    z-index: 10;
  }
.slide-title2 ul {
    display: -webkit-flex;
    display: flex;
     -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    height: 150px;
}

.slide-title2 ul li {
  letter-spacing: .125rem;
}

  .mv01 .swiper-slide[class*=-active] .slide-media img {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .mv01 .swiper-slide[class*=-active] .slide-title {
    -webkit-animation: mv01-fadeIn 2s 0.5s var(--easing) both;
            animation: mv01-fadeIn 2s 0.5s var(--easing) both;
  }
    .mv01 .swiper-slide[class*=-active] .slide-title2 {
    -webkit-animation: mv01-fadeIn 2s 0.5s var(--easing) both;
            animation: mv01-fadeIn 2s 0.5s var(--easing) both;
  }
  .resv {
  width: 250px;
  padding: 10px;
  color: #fff;
  line-height: 1.3;
  background-color: #ff783b;
  border-radius: 8px;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
    /*html {
      -webkit-text-size-adjust: 100%;
    }*/
    .l-section .l-inner {
      padding: 0 4rem;
    }
    /*.pc {
      display: none !important;
    }*/
    .mv01 {
      margin-bottom: 5rem;
    }
    .mv01 .slide-media {
      height: max(70vh, 70vw);
    }
   .mv01 .slide-title {
      font-size: 1.375rem;
      left: 4rem;
      margin-right: 2rem;
    }
    .mv01 .slide-title2 {
      font-size: 1rem;
      left: 4rem;
      margin-right: 2rem;
      line-height: 1.2;
    }  
}
@media only screen and (max-width: 599px) {
   /* html {
      font-size: 50%;
    }*/
    .pc-tab {
      display: none !important;
    }
    .mv01 .slide-title {
      font-size: 1rem;
    }
    .mv01 .slide-title2 {
      font-size: .75rem;
      top:50%;
    }
}
@media only screen and (min-width: 1025px) {
    .tab-sp {
      display: none !important;
    }
    .swiper-button-prev::before, .swiper-button-next::before {
      -webkit-transition: var(--transition);
      transition: var(--transition);
    }
    .swiper-button-prev:hover::before, .swiper-button-next:hover::before {
      -webkit-transform: scale(1.2);
              transform: scale(1.2);
    }
}
@media only screen and (min-width: 600px) {
    .sp {
      display: none !important;
    }
}
/* フッター */
footer
{
	background: rgba(252,244,229,1);
	margin-top: 20px;
	margin: 0 auto;
}

.foot_cont
{
	width: 100%;
	padding: 40px 30px;
	color: #363636;
	display: flex;
	justify-content: space-between;
}

.foot_cont > div
{
  width: 31%;
}
.desc
{
	width: 40%;
	line-height: 200%;
	padding-left:20px;
}

.f_menu
{
	width: 60%;
	margin: 20px 0;
}
.f_menu ul
{
  width: 94%;
}
.f_menu li
{
	color: #363636;
	padding-bottom: 5px;
	border-bottom: 1px dotted #666;
	margin-bottom: 5px;
}

.f_menu li a
{
	color: #363636;
	text-decoration: none;
	margin-left: 5px;
}
.f_menu li a:hover
{
	color: #d96634;
}

footer .desc h3 {
	color:#FF783B;
	font-size: 1.75rem;
	font-weight: 600;
	letter-spacing: .125rem;
	margin: 20px 0;
}
footer .desc p i{
	padding-right: 10px;
}
footer .f_menu h3 {
	letter-spacing: .125rem;
	margin: 20px 0;
}

.resv {
  width: 50%;
  padding: 10px;
  color: #fff;
  line-height: 1;
  background-color: #ff783b;
  border-radius: 8px;
  text-align: center;
}

.copyright
{
	width: 100%;
	background-color: #ff783b;
	padding: 20px 0;
	text-align: center;
}
.copyright p
{
	width: 100%;
	max-width: 1250px;
	margin: 0 auto;
	color: #FFF;
}
.foot_cont > div
{
  width: 96%;
}
@media (max-width: 768px) {
  .foot_cont {
    width: 100%;
    flex-direction: column;
  }
.foot_cont > div
{
  width: 96%;
}
footer .desc h3 {
  font-size: 1.375rem;
}
}
/* ★装飾枠パーツ上下幅 */
.-x-cont {
    margin: 50px 0;
}
/* 見出し */
section .o-tit01 {
  display: flex;
  justify-content:center;
	align-items: center;
	flex-direction: column;
}

section h3.title{
	color: #363636;
	text-align: center;
	font-size: 1.875rem;
}

section .o-tit01 p{
	max-width: 1024px;
	/*text-align: center;*/
	margin-bottom: 10px;
	padding: 0 20px;
	line-height: 1.5;
}
.sen {
  display: flex;
  width:100%;
  justify-content:center;
}
hr{
	width: 150px;
	height: 2px;
	background-color: #5e9600;
	border: 0;
	margin-bottom: 80px;
}
@media  only screen and (max-width: 1024px) {
  section h3.title{
	font-size: 1.25rem;
}
}
/* 見出し2 */
section .o-tit02 {
  display: flex;
  justify-content:center;
	align-items: center;
}
section h3.title2{
	color: #363636;
  margin-bottom: 10px;  
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: flex-start;
  padding-top: 13px;
  font-size: 1.875rem;
}

section .o-tit02 p{
	max-width: 1024px;
	margin-bottom: 10px;
	padding: 0 20px;
}

.sen {
  display: flex;
  width:100%;
  justify-content:center;
  padding:30px 0;
}

.triangle{
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  border-top: 30px solid #5e9600;
  border-bottom: 0;
	
}
section .o-tit02 p a{
display: inline-block;
    padding: 1rem 2rem;
    text-decoration: none;
    color: #fff;
    background: #ff783b;
    transition: .3s;
    border-radius: 2rem;
}
section .o-tit02 p a:hover {
  background: #5e9600;
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  section .o-tit02 {
  display: block;
  text-align:center;
  width: 100%;
}
section h3.title2 {
  display: block;
  font-size: 1.25rem;
}
section .o-tit02 p{
	margin-bottom: 10px;
	padding: 0;
}
}
/* 画像左+テキスト+ボタン */
.wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  
  margin-bottom: 50px;
}

img {
  display: block;
  width: 48%;
  height: auto;
  object-fit: contain;
}

.box {
  width: 48%;
}
.box h2 {
  font-size: 1.75rem;
  color:#ff783b;
}
.-w-button { 
  text-align:center;
}
@media only screen and (max-width: 1024px) {
  .wrap {
  display: block;
}
img {
  width: 96%;
}
.box {
  width: 96%;
}
.box h2 {
  font-size: 1.25rem;
  margin-top: 30px;
}
}
/*画像右+テキスト+ボタン*/
.wrap-reverse {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  
  margin-bottom: 50px;
}
@media  only screen and (max-width: 1024px) {
.wrap-reverse {
  flex-direction: column;
}
}
.linka-wp {
display: inline-block;
    padding: 1rem 2rem;
    text-decoration: none;
    color: #fff;
    background: #ff783b;
    transition: .3s;
    border-radius: 2rem;
}
.linka-wp:hover {
  background: #5e9600;
  color: #fff;
}
/*３列横並び(カード) 複数行*/
.height {
	display: flex;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
  flex-wrap: wrap;
	align-items: stretch;
	margin-bottom: 20px;
	/*background-color: #fc0;*/
}
.height li {
	width: 31%;
	border: 1px solid #ccc;
	padding: 20px;
	
}
.height li.bgcont {
	background-color: rgba(94,150,0,.6);
	color: #fff;
	
}
.height figure {
	margin-bottom: 10px;
}
.height .title01 {
	font-weight: 600;
	font-size: 1.375rem;
	padding-bottom: 10px;
}
.height .title02 {
	font-weight: 600;
	font-size: 1.375rem;
	padding-bottom: 10px;
}
figure {
	line-height: 0;
	width: 100%;
}
figure img {
	max-width: 100%;
}
@media (max-width: 1024px) {
    .height {
    display: block;
  }
  .height li {
    width: 100%;
    margin-bottom: 20px;
  }

}
/*Q&A*/
.f-a {
  flex-wrap: wrap;
  justify-content: center;
}
.f-a dl {
  max-width: 100%;
  justify-content: start;
  margin-bottom: 30px;
  border-bottom: 1px dotted #ccc;
}
.f-a dt {
  font-weight: 600;
}
.f-a dd {
}
@media (max-width:1024px) {
  .f-a dl {
  width: 100%;
}
}
/*　トップページ　お知らせ　は後で*/
/*MAP*/
.GoogleMap{
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 40%;
}
.GoogleMap iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*下層ページタイトル*/
.bg-section {
	background:linear-gradient(to top, rgba(255,255,255,0), rgba(252,244,229,1) 100%);
  
}
.a-o-s {
  margin: 0;
  padding: 0;
}
.heading00 {
  flex-direction: column;
	text-align: center;
  height: auto;
  color:#e59a17;
  margin-top:80px;
  margin-bottom:0;
  padding-top: 50px;

  
}
.heading00 .hh2 {
	font-size: 1.875rem;
	letter-spacing: .25rem;
	font-weight: 700;
	line-height: 1;
}
.heading00 .hp {
	font-size: 1.5rem;
	font-weight: 400;
}
@media only screen and (max-width: 1024px) {
  .heading00 .hh2 {
	font-size: 1.375rem;
	letter-spacing: .25rem;
	line-height: 1;
	font-weight: 600;
}
.heading00 .hp {
	font-size: .875rem;
	font-weight: 400;
}
}

/*各種保険治療ページ*/
/**テキストBOX*/
.card {
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, .16);
  text-decoration: none;
  height: auto;
}

.card__header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.card__title {
  padding: 30px 0 10px 30px;
  font-size: 1.5rem;
  font-weight: 600;
  width: 100%;
  background-color: #ff783b;
  color: #fff;
}


.card__body {
  display: flex;
  justify-content:space-around;
  align-items: center;
  padding:0 30px;
}

.card__text {
  width: 60%;
}

.card__illust {
  display: block;
  width: 36%;
}

.card__illust img {
  width: 100%;
}

.sen {
  display: flex;
  width:100%;
  justify-content:center;
  padding:30px 0;
}

.triangle{
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  border-top: 30px solid #5e9600;
  border-bottom: 0;
	
}
@media only screen and (max-width: 1024px) {
  .card__body {
  flex-direction: column;
}
.card__illust img {
  width: 100%;
}
.card__text {
  width: 96%;
  margin-top:30px ;
}
.card__title {
  font-size: 1.25rem;
  padding: 30px 0 10px 30px;
}
}
@media (max-width:420px) {
.card__title {
  font-size: .75rem;
  padding: 30px 30px 10px 30px;
}

.card__illust img {
  width: 100%;
}
}
/*全身ミックス治療ぺージ*/
/*タイトル＋テキスト*/
.sectionpb-30 {
  background-color: rgba(252,244,229,1);
}
.fw-600 {
  color: #ff783b;
  font-size: 1.5rem;
  font-weight: 600;
  padding: 30px 0;
}
.b-pad {
  padding:0 30px;
}

.pb-30 {
  padding-bottom: 30px;
}
@media only screen and (max-width: 1024px) {
  .fw-600 {
  font-size: 1.125rem;
}
}
@media only screen and (max-width: 420px) {
  .fw-600 {
  font-size: 1rem;
}
}
/*カード型 3列*/
.wrap3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
}
.wrap3 .item {
  padding: 0px;
  width: 32%;
  background-color: #fff;
}
.wrap3 img {
  display: block;
  width: 100%;
  object-fit: contain;
  padding-bottom: 30px;
}
@media only screen and (max-width: 1024px) {
  .wrap3 {
  flex-direction: column;
}
  .wrap3 .item {
    width: 96%;
  }

  .wrap3 .item:last-child {
    margin-bottom: 30px;
  }
}
/*見出し下線なし*/
.kasennone .o-tit01 {
  display: flex;
  justify-content:center;
	align-items: center;
	flex-direction: column;
}

.kasennone h3.title{
	color: #363636;
	text-align: center;
	font-size: 1.875rem;
}

.kasennone p{
	max-width: 100%;
	/*text-align: center;*/
	margin-bottom: 10px;
	padding: 0 20px;
	line-height: 1.5;
}
.kasennone .sen {
  display: flex;
  width:100%;
  justify-content:center;
}
.kasennone hr{
	width: 150px;
	height: 2px;
	background-color: #5e9600;
	border: 0;
	margin-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .kasennone h3.title{
	font-size: 1.25rem;
}
}
/*加圧式耳つぼダイエット*/
/* 画像左+テキスト */
.wrap2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  
  align-items: center;
  margin-bottom: 50px;
}

img {
  display: block;
  width: 48%;
  object-fit: contain;
}
.box12 p {
  margin-bottom: 1rem;
}
.box12 {
  width: 48%;
}
.box12 h2 {
  font-size: 1.75rem;
  color:#363636;
}
.-w-button { 
  text-align:center;
}
@media only screen and (max-width: 1024px) {
  .wrap2 {
  flex-direction: column;
}
img {
  width: 96%;
}
.box12 {
  width: 96%;
}
.box12 h2 {
  font-size: 1.25rem;
  margin-top: 30px;
}
}
/*テキスト+テキスト*/
.wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  
  margin-bottom: 50px;
}
.boxtt p,.box2tt p {
margin-bottom: 1rem;
}
.boxtt,.box2tt {
  width: 48%;
  padding: 1.75rem;
  align-items: center;
  border: 1px solid #ddd;
  border-radius :8px;
}
.boxtt h2, .box2tt h2 {
  font-size: 1.5rem;
  color:#363636;
}
.box2tt h2{
  padding-bottom: 31px;
}
.box2tt i{
  color:#ff783b;
} 
.-w-button { 
  text-align:center;
}
@media  only screen and (max-width: 1024px) {
  .wrap {
  flex-direction: column;
}
.boxtt {
  margin-bottom: 1.5rem;
}
.boxtt, .box2tt {
  width: 96%;
}
.boxtt h2, .box2tt h2 {
  font-size: 1.25rem;
  margin-top: 30px;
}
}
/*画像右+テキスト*/
.boxit {
  width: 48%;
}
.boxit h2 {
  font-size: 1.75rem;
  color:#363636;
}
@media only screen and (max-width: 1024px) {
.boxit {
  width: 96%;
}
.boxit h2 {
  font-size: 1.25rem;
  margin-top: 30px;
}
}
/*吹き出し見出し*/
.mb-50h2 {
  margin-bottom: 50px;
}
.mb-50h2 h2 {
  position: relative;
  padding: 1.5rem 2rem;
  color: #fff;
  border-radius: 10px;
  background: #5e9600;
}

.mb-50h2 h2:after {
  position: absolute;
  bottom: -9px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #5e9600 transparent transparent transparent;
}
/*カード型*/
.wrap-card {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.wrap-card .item {
  padding: 0px;
  width: 48%;
  background-color: #fff;
}
.wrap-card img {
  display: block;
  width: 100%;
  object-fit: contain;
  padding-bottom: 30px;
}
@media only screen and (max-width: 1024px) {
  .wrap-card {
  flex-direction: column;
}
 .wrap-card .item {
    width: 96%;
  }

 .wrap-card .item:last-child {
    margin-bottom: 30px;
  }
}
/*見出し3*/
.h3sec .o-tit01 {
  display: flex;
  justify-content:center;
	align-items: center;
	flex-direction: column;
}

.h3sec h3.title{
	color: #363636;
	text-align: center;
	font-size: 1.875rem;
}

.h3sec p{
	max-width: 1024px;
	/*text-align: center;*/
	margin-bottom: 10px;
	padding: 0 20px;
	line-height: 1.5;
}
.sen {
  display: flex;
  width:100%;
  justify-content:center;
}
hr{
	width: 150px;
	height: 2px;
	background-color: #5e9600;
	border: 0;
	margin-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .h3sec h3.title{
	font-size: 1.25rem;
}
}
/*カード型2*/
.wrap-card2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.wrap-card2 .item {
  padding: 0px;
  width: 48%;
  background-color: #fff;
}
.wrap-card2 img {
  display: block;
  width: 100%;
  object-fit: contain;
  padding-bottom: 30px;
}
.wrap-card2 .item p {
  font-size: 1.5rem;
}
@media only screen and (max-width: 1024px) {
  .wrap-card2 {
  flex-direction: column;
}
  .wrap-card2 .item {
    width: 96%;
  }
.wrap-card2 .item p {
  font-size: 1.25rem;
}
  .wrap-card2 .item:last-child {
    margin-bottom: 30px;
  }
}
/*見出し下線なし*/
/*ボタンラッパーORG*/
.-w-btn{
  padding: 6vh 0;
  text-align: center;
}
.-w-btn a {
  width: 50%;
      display: inline-block;
    padding: 1rem 2rem;
    text-decoration: none;
    color: #fff;
    background: #ff783b;
    transition: .3s;
    border-radius: 2rem;
    text-align: center;
}
.-w-btn a:hover {
  color:#fff;
  background: #5e9600;
}

/*Youtube埋め込みスライダーod*/
.sfswipwer .swiper-slide {
  text-align: center; /* 親要素を中央寄せ */
  transition: transform 0.6s;
}

.sfswipwer .swiper-slide iframe {
  display: inline-block; /* iframe要素をインラインブロック要素に変更 */
  vertical-align: middle; /* 垂直方向に中央揃え */
}
.sfswipwer .swiper {
  position: relative;
}
/* 前へ次への矢印カスタマイズ */
.sfswipwer .swiper-button-prev::after,
.sfswipwer .swiper-button-next::after {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  transform: rotate(0deg) !important;
}
/* 前への矢印カスタマイズ */
.sfswipwer .swiper-button-prev::after {
  border-bottom: 20px solid transparent;
  border-right: 30px solid #5e9600;
  border-top: 20px solid transparent;
}
/* 次への矢印カスタマイズ */
.sfswipwer .swiper-button-next::after {
    /* 意図しない border の初期化 */
    border: none;

    /* 三角形の再定義（残したいスタイル） */
    border-bottom: 20px solid transparent;
    border-left: 30px solid #5e9600;
    border-top: 20px solid transparent;
    content: '';
    display: block;
    width: 0;
    height: 0;
}

.sfswipwer .sbtn [class^="swiper-button-"]{
    width: 30px;
    height: 40px;
    color: #5e9600;
}
.sfswipwer .swiper-slide-prev,
.sfswipwer .swiper-slide-next,
.sfswipwer .swiper-slide-duplicate-prev,
.sfswipwer .swiper-slide-duplicate-next {
  transform: scale(0.85);
}

.sfswipwer iframe {
  width: 80%;
  height: 315px;
  margin: 10px ;
}

.sfswipwer .-w-text {
  margin: 1rem;
  text-align: center;
}
/*
@media (max-width: 768px){
  .sfswipwer iframe {
  width: 90%;
  height: 315px;
}
.sfswipwer .sbtn [class^="swiper-button-"]{
    width: 13px;
}
.sfswipwer .-w-text {
  margin: 1rem;
}
}
@media (max-width: 420px) {
  .sfswipwer iframe {
  width: 90%;
  height: 215px;
}
}
@media (max-width: 320px) {
  .sfswipwer iframe {
  width: 90%;
  height: 200px;
} 
}*/

/*治療院案内ページ*/
/*画像+画像　文字なし down*/
/*画像+画像　文字なしup*/
/*カード型 3列 変形*/
.wrap-card-t {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
}
.wrap-card-t .card-t {
    background-color: #fff;
    width: 25%;
    margin-bottom: 30px;
}

.wrap-card-t .card-t h2 {
  text-align: center;
  font-size: 3rem;
  color: #5e9600;
}
.wrap-card-t .card-t p{
  padding: 20px 0 0;
  text-align: center;
}
@media  only screen and (max-width: 1024px) {
  .wrap-card-t {
  flex-direction: column;
}
  .wrap-card-t .card-t {
    width: 100%;
  }

}
/*施術料金ぺージ*/
/*3列レイアウト*/
.flex{
    display:flex;
    flex-wrap:wrap;
    align-items: center;
    margin: 0 auto;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #999;
}
.item{
    width: 25%;
  }

.item2{
    width: 55%;
    flex-grow: 1;
    justify-content:start;
  }
.img-box{
  width: 20%;
}
.img-box .pimg {
  max-width: 80%;
  width: auto;
}

.item2 .title {
  font-size: 1.5rem;
  line-height: 1;
  margin-left:20px;
}
.item .price {
  font-size: 1.5rem;
  color:#ff0000;
  font-weight: 600;
  margin-left:20px;
  text-align: right;
}
@media (max-width:1024px) {
  .flex{
  display: block;
  margin: 0 auto;
  max-width: 100%;
}
.img-box{
  width: 100%;
}
.img-box img {
  max-width: 100%;
}
  .item, .item2 {
    margin-left:0px;
    margin-top: 30px;
    width: 100%;
  }
}
@media (max-width:420px) {
  .item2 .title {
  font-size: 1rem;
  line-height: 1;
  margin-left:0;
  margin: 0 auto;
}
}
/*プライバシーポリシーぺージ*/
/*装飾枠（白背景）*/
/*下層_プライバシーポリシー*/
/*サイトマップページ*/
/*サイトマップ*/
.-w-wrapper {
    margin: auto;
    margin-top: 80px;
}
.-w-sitemap a {
   color:{=rgba(resource('colors','base_text'),1)=}; 
}
.-w-sitemap a:hover {
    text-decoration: none;
    color: rgb(67, 192, 0);
}
.-w-sitemap ul {list-style: none;}
.-w-sitemap {
	margin: 0 auto;
	padding: 0 1.5rem;
	width: 100%;
	width: max-content;
	box-sizing: border-box;
}
.-w-sitemap ul li {
	padding: 0 0 0 1.5rem;
	position: relative;
}
.-w-sitemap ul li:before {
	position: absolute;
	left: 0;
	top:6px;
	content: "▶";
	font-size: 1.0rem;
}
.-w-sitemap ul li a {
	display: inline-block;
	margin-bottom: 1.5rem;
}
@media screen and (max-width:1550px) {
  min-width: 100%;
.-w-wrapper {
    width: 100%;
}
}
@media screen and (max-width:768px) {
.-w-wrapper {
    width: calc(100% - 3%);
}
}

/*お問い合わせぺージ*/
.-w-text {
    margin-bottom:4.0rem;
}

.alert,/*入力不備の際　　class未使用要作成検討*/
.alert + div {
	font-weight: bold;
	color: #ff0000;
}
/*必須*/
.-w-require,
.require{
    display: inline-block;
	border-radius: 2px;
	margin-left: 10px;
	font-size: 0.8em;
	font-weight: normal;
	padding: 5px 8px;
	background : #5e9600;
	color: #fff;
}

table {
	width: 100%;
	margin: 0 auto 20px;
	border-collapse: collapse;
}
table tr th {
    border: 1px solid;
    border-color: #ddd;
    background: rgba(252,244,229,1);
    color: #363636;
	width: 30%;
	padding: 28px 37px 25px;
	font-weight: bold;
	vertical-align: middle;
	text-align:right;
}
table tr td {
    border: 1px solid ;
    border-color: #dddddd;
    background: #ffffff;
    color: #363636;
	width: 70%;
	padding: 28px 37px 25px;
	vertical-align: middle;
}
table tr:last-child th,
table tr:last-child td {
	border-bottom: 1px solid;
  border-color: #ddd;
}
.-w-form-btn {
	text-align: center;
}
.-w-form-btn [type="submit"] {
    display: inline-block;
    padding: 1rem 2rem;
    text-decoration: none;
    color: #fff;
    background: #ff783b;
    transition: .3s;
    border-radius: 2rem;
    border: solid 1px #ff783b;
    cursor: pointer;
}
.-w-form-btn [type="submit"]:hover {
	background-color: #5e9600;
  border: solid 1px #5e9600;
  color: #fff;
}
.-w-back-btn [type="button"] {
    display: inline-block;
    padding: 1rem 2rem;
    text-decoration: none;
    color: #fff;
    background: #ff783b;
    transition: .3s;
    border-radius: 2rem;
    border: solid 1px #ff783b;
    cursor: pointer;
    filter: grayscale(1);
    opacity: 0.5;
}
.-w-back-btn [type="button"]:hover {
	background-color: #dddddd;
  border: solid 1px #dddddd;
}
.-w-btn-wrap {
	width: 50%;
	margin: 0 auto;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.-w-back-btn a:hover {
	background-color: #dddddd;
	border-color: #dddddd;
}
.-w-btn-wrap .-w-form-btn {
	margin-left:3.0rem;
}
.-w-btn-wrap .-w-form-btn button[type="submit"] {
	vertical-align: top;
}
.owlet-input-sample{
	padding: 0 10px;
}
.owlet-input-sample a {
    color: inherit;
    text-decoration: none;
}
input[type="text"],input[type="email"]{
	width: 100%;
	box-sizing: border-box;
	padding: 10px;
}
input.owlet-input-name-sei[type="text"],
input.owlet-input-name-mei[type="text"]{
	width: 40%;
	padding: 10px;
	margin: 0 10px 0;
}
input[type="text"],select ,input[type="email"] {
	min-height: 30px;
    border: 1px solid ;
    border-color: #dddddd;
}
input.owlet-input-tel1[type="text"],
input.owlet-input-tel2[type="text"],
input.owlet-input-tel3[type="text"],
input.zip1[type="text"],
input.zip2[type="text"]{
	line-height: 1.2;
	padding: 10px;
  border: 1px solid ;
  border-color: #dddddd;
	width: 115px;
}
textarea {
	min-height: 150px;
	line-height: 1.2;
	padding: 10px;
  border: 1px solid ;
  border-color: #dddddd;
	width: 100%;
}
select {
	line-height: 1.2;
	border: 1px solid ;
  border-color: #dcdcdc;
	width: 180px;
}
.owlet-input-name-sei,
.owlet-input-name-mei,
input[type="name_sei"],
input[type="name_mei"] {
	width: 90px;
	margin: 0 5px;
}
input[name="input[email]"],
input[name="input[email_confirm]"] {
	width: 100%;
}
.zip1,.zip2 {
	width: 60px;
	margin-bottom: 10px;
}
.zip2addr {
	margin-bottom: 10px;
	padding: 6px 13px 4px;
	box-sizing: border-box;
	display: inline-block;
	border:0;
	color:{=htmlspecialchars(resource('colors','button_text'))=};
	background:{=htmlspecialchars(resource('colors','button'))=};
}
.address,
input[name="input[address_address]"],
input[name="input[address_address2]"],
input[name="input[address2_address]"],
input[name="input[address2_address2]"] {
	width: 100%;
	margin-left: 0;
}
.address,
input[name="input[address_address]"] {
	margin-bottom: 5px;
}
.owl-datepicker {
	width: 150px;
	margin-right: 5px;
}
select[name="input[date_hour]"],
select[name="input[date_minute]"] {
	margin-right: 5px;
}
.owlet-input-tel1,
.owlet-input-tel2,
.owlet-input-tel3 {
	width: 60px;
}
.owlet-input-tel2,
.owlet-input-tel3 {
	margin-left: 5px;
}
input[name="input[company_name]"] {
	width: 80%;
	line-height: 1.2;
	padding: 2px;
}
textarea[name="input[text]"] {
	width: 80%;
}
table tr td label {
	display: block;
}
input[name="input[select_etc]"],
input[name="input[radio_etc]"],
input[name="input[check_etc]"] {
	width: 80%;
	margin-top: 5px;
}
.-w-rules-agree {
	text-align: center;
	margin-bottom: 5.0rem;
}
.-w-rules-agree a{
	display: inline-block;
}
.-w-rules-body {
    height: 8em;
    overflow-y: scroll;
    border: 1px solid #aaa;
    margin: 2rem auto;
    padding: 0.5rem;
}
@media (max-width: 768px) {
  .-w-ttl-en {
    font-size: 10vw;
}
table tr th {
    display: block;
    width: 100%;
    padding: 10px 2%;
    border-bottom: none;
    text-align:left;
}
table tr td {
    display: block;
    width: 100%;
    padding: 10px 2%;
    border-bottom: none;
    text-align:left;
}
input[type="file"] {
    line-height: 1;
}
input.owlet-input-name-sei[type="text"],
input.owlet-input-name-mei[type="text"]{
	width: 100%;
	margin: 0 auto;
}
input.owlet-input-name-sei[type="text"] {
    margin-bottom:10px;
}
}

/*新着情報 アーカイブ*/
/*ブログ一覧(F) (ページャー有)*/
.-w-article_list .-w-img a {
  display: block;
aspect-ratio: 99/ 64;
overflow: hidden;
line-height: 0;
}
.-w-article_list img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}
.-w-article_list a:hover {
    opacity: 0.7;
}
.-w-article_list {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    width: 100%;
    padding: 0;
}

.-w-article_list li {
    list-style: none;
    display: inline-flex;
    -webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
    width: 24%;
    margin: 0 1.3% 1% 0;
}
.-w-article_list li:nth-child(4n) {
    margin: 0 0 1% 0;
}
.-w-article_list li a {
	color: inherit;
	text-decoration: none;
  font-weight: bold;
}
.-w-article_list:empty::before {
    content: "記事はありません";
    width: 100%;
    text-align: center;
    margin-left: 5rem;
}
.-w-article_list .-w-copy {
    text-align:left;
    font-size: 1.125rem;
    line-height: 1.3;
    margin-bottom: 0.4rem;
    padding: 13px 10px;
    border-bottom: 1px dotted #999999;
}
.-w-article_list .-w-text {
  font-size: 1.125rem!important;
}
.-w-article_list .-w-date {
    background: #5e9600;
    color: #ffffff;
    text-align:left;
    font-size: 90%;
    margin-bottom: 0.4rem;
    padding: 0.4rem;
    text-align: right;
}
.-w-article_list .-w-txt {
    padding: 15px 10px;
}

.pagenation {
	display: table;
	text-align: center;
	margin:0px auto 20px;
}
.pagenation span {
	float: left;
	width: 40px;
	vertical-align: top;
	display: inline-block;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 0px 0px;
	line-height: 1;
	font-size: 15px;
	color: #fff;
	box-sizing:border-box;
}
.pagenation span + span {
	margin: 0px 0px 10px 14px;
}
.pagenation span.prev.current + span {
	margin: 0px 0px 10px 0px;
}

/*ページリンク*/
.pagenation span a {
    display: block;
    width: auto;
    padding: 12px 0px 12px 0px;
    font-size: 18px;
    text-decoration: none;
    border: 1px solid #13b5b1;
    height: 46px;
    background: #3b9cb3;
    border-color: #ffffff;
    color: #ffffff;
}
.pagenation span a:hover {
	text-decoration: none;
    background: #ffffff;
    border-color: #3b9cb3;
    color: #3b9cb3;
}

.pagenation span.current {
	display: inline-block;
    padding: 12px 0px 12px 0px;
	text-decoration: none;
    border: 1px solid #13b5b1;
    background: #ffffff;
    border-color: #3b9cb3;
    color: #3b9cb3;
    height: 46px;
}
.pagenation span.scope_limit {
	text-decoration: none;
    border: 1px solid #13b5b1;
    background: #13b5b1;
	color: #3b9cb3;
    border-color: #3b9cb3;
    background: #ffffff;
}

/*前へ・次へ*/
.pagenation span.prev,.pagenation span.next {
	padding:0px 0 0 0;
	font-size: 18px;
}
.pagenation span.prev a,.pagenation span.next a {
	padding: 12px 0px 13px 0px;
	font-size: 18px;
}
.pagenation span.prev.current,.pagenation span.next.current {
	display: none;
}
@media (max-width: 768px) {
  ul.-w-article_list li{
    display: block;
}
.-w-article_list:empty::before {
    margin-left: 0;
}
.-w-article_list {
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}
.-w-article_list li{
    width: 100%;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
.-w-article_list li {
    margin: 0 auto 2%;
}
.-w-article_list li:nth-child(4) {
    margin: 0;
}
}
@media (max-width: 480px) {
  .-w-article_list .-w-img img{
    width: 100%;
}
.-w-article_list .-w-category-1{
    margin-bottom: 0.5rem;
}
}
/*ブログ詳細*/
.-w-single-o img {
    max-width:100%;
    vertical-align: middle;
    display: inline-block;
}
.-w-single-o li{
    list-style:none;
}
.-w-single-o .-x-title-xl{
    margin-bottom: 3rem;
}
.-w-single-o .-w-right{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content:space-between;
    margin-bottom: 3rem;
}
.-w-single-o .-w-data{
    font-size: 120%;
    padding-left: 1rem;
}
.-w-single-o .-w-box{
    min-width: 160px;
    height: 100%;
    line-height: 2;
    text-align: center;
    padding: 0.4rem;
}
.-w-single-o .-w-category-1 {
    background: #ffffff;
    color: #363636;
    margin-left: 0;
}
.-w-single-o .-w-one-box{
    margin: 0 auto;
}
.-w-single-o .-w-contents{
    margin-bottom: 3rem;
}
.-w-single-o .-w-img{
    margin: 3rem auto;
    text-align: center;
}

.-w-btn {
    margin: 3rem auto 0;
    text-align: center;
}
@media (max-width: 480px) {
  .-w-single-o .-w-right{
    justify-content: center;
}
}