@charset "UTF-8";
html {
}
.hidden {
  display: none;
}

table {
  width: 100%;
}
button,
*,
*:after,
*::before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box; }
body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
  margin:0; }
a {
	text-decoration: none; }
input[type="submit"],
a {
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out; }
 .btn-mypage-prof {
  text-align:center;
 } 
.btn-mypage-prof .btn,
.input-form-last input.btn,
button.rtn,
input[type="submit"] {
    background: #262626;
    border: none;
    color: #fff;
    font-size: 12px;
    font-weight: normal;
    text-align: center;
    text-decoration: none;
    -webkit-transition-duration: 0.2s;
    -moz-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
    display: inline-block;
    padding: 13px 16px;
    cursor: pointer;
    /*margin: 30px 0;*/
}
.btn-mypage-prof .btn {
  margin: 0 auto 16px;
}
input[type="submit"]:hover,
a:hover {
  opacity: .5; }
.clearfix {
  zoom: 1;
  overflow: hidden; }
.clearfix:after {
  content: "";
  display: block;
  clear: both; }
input {
  font-size: 16px; }
img {
  width: auto;
  max-width: 100%;
  line-height: 0;
  vertical-align: middle;
  border: none; }
.wysiwyg {
  word-break: break-word;
  line-height: 1.75; }
.wysiwyg table {
  width: 100%!important; }
.wysiwyg ol {
  margin-left: 16px;
  list-style-type: decimal; }
p {
  line-height: 1.75; }
ol,ul,li,dl,dt,dd {
  margin: 0;
  padding: 0; }
li {
  list-style: none; }
.sp-hide {
  display: block; }
.sp {
  display: none; }
.wrap {
  width: 100%;
  margin: 0 auto; }
.center {
  text-align: center; }
 time {
  display:inline-block; }
.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex; }
.sns-btn {
	letter-spacing: -.4em;
  margin:16px 0; }
.sns-btn a {
  display: inline-block;
  color: #fff;
  padding: 10px 8px;
  text-align: center;
  background: #B5B5B6;
  font-size: 12px;
  min-width: 16%;
  width: 33.3%;
letter-spacing: normal;}
.sns-btn a:nth-child(1) {
  background: #036EB8; }
.sns-btn a:nth-child(2) {
  background: #2EA7E0; }
.sns-btn a:nth-child(3) {
  background: #13AE67; }

@media screen and (max-width: 768px) {
.wysiwyg figure,
.iframe-wrap {
  position: relative;
  padding-top: 56.25%; }
.wysiwyg figure iframe,
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
.wysiwyg figure img {
  margin-top: -56.25%; }
.sp {
  display: block; }
.sp-hide{
  display: none; }
.prev-next a {
  width: 47%;
  margin: 0 1.5% 0 0; }
.prev-next a:nth-child(2) {
  margin: 0 0 0 1.5%; }
.sns-btn a {
	padding: 10px 4px;
	font-size: 10px;
	width: 33.3%;}
}

.btn a.disabled {
  opacity: 0.5;
}

/*★サイトの基準設定 -------------------------------------------------------------------------*/
body {
  color: #231815;
  font-size: 14px;
  font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ",Osaka,verdana,"Meiryo", "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif; }
a {
  color: #231815; }
.prev-next,
.wrap {
  max-width: 1200px; }
nav,h1,h2,h3,h4,h5 {
  letter-spacing: 0.1rem; }
.prev-next {
  margin: 40px auto 0;
  text-align: center; }
.prev-next a {
  display: inline-block;
  font-size: 12px;
  padding: 4px;
  font-weight: normal;
  line-height: 1;
  /*color: #fff;
  background: #c9caca;*/
  width: 15%;
  margin: 0 8px;
  max-width: 230px;
  float: none; }
.contents {
  padding-top: 254px; }
  
@media screen and (max-width: 768px) {
.contents {
  padding-top: 58px; }
.wrap,
.contents .wrap {
  padding: 0 16px; }
.prev-next a {
  width: 47%;
  margin: 0 1.5% 0 0; }
.prev-next a:nth-child(2) {
  margin: 0 0 0 1.5%; }
}

/*★header -------------------------------------------------------------------------*/
header {
  width: 100%;
  margin: auto;
  padding: 0;
  position: fixed;
  background: #fff;
  z-index: 999;
  border-top: 19px solid #000;
  border-bottom: 44px solid #F5F5F5;
  top:0;

   }
header .logo {
  text-align:center;
}
header .logo a {
  display:inline-block; }
header .logo img {
  height:80px;
}
header .g-nav {
  text-align:center; }
header .g-nav {
  padding:16px 0;
  margin-top:16px;
}
header .g-nav a {
  display:inline-block;
  margin: 0 8px; }
#sp-btn {
  display:none; }

header .menu {
  display:flex;
  justify-content:flex-end;
  margin:16px 0;
}
header .menu li {
  margin-left:1em;
}
header .menu li i {
  margin-right:4px;
}
.g-nav {
  display: flex;
  justify-content:center;
}
@media screen and (min-width: 769px) {
}

@media screen and (max-width:768px) {
.sp .g-nav,
.sp-hide{
  display: none; }
header .logo {
  float:left;
  max-width:50%;
  padding:16px 8px; }
header .logo img {
  max-height:40px; }
#sp-btn {
  display: inline-block;
  font-size: 24px;
  color: #231815;
  padding: 16px 8px;
  float: right;
  margin-right: 8px;
  letter-spacing: 1px; }
header .g-nav {
  display:none;
  border:none;
  margin:0;
  padding:8px 0; }
header.show .sns,
header.show .g-nav {
  display: block;
  background: #000; }
header.show .sns {
  text-align: center;
  padding-bottom: 16px; }
header.show .sns a {
  color: #fff; }
header.show .g-nav a {
  color: #fff;
  display: block;
  padding: 12px 8px;
  text-align: center; }

}

/*★footer -------------------------------------------------------------------------*/
footer {
  margin-top:40px;
  padding: 24px 0;
  text-align: center;
  background: #262626; }
footer .g-nav {
  margin: 24px 0; }
footer .logo {
  margin: 0 0 40px 0; }
footer .sns {
  margin: 24px 0; }
footer .sns a {
  display:inline-block;
  font-size:16px;
  margin: 0 8px;
  color: #231815; }
footer .g-nav a {
  display: inline-block;
  margin: 0 16px;
  color: #fff; }
footer small {
  display: block;
  margin: 24px 0 0;
  padding: 0 0 24px;
  color:#fff; }
footer .logo {
  text-align:center;
}
  footer .logo img {
    height: 80px;
}
footer .g-nav > li {
  width:20%;
}
footer .g-nav ul {
  
}
footer .g-nav ul li {
  margin-bottom:16px;
  text-align:left;
}

footer .g-nav .footer-btns li  a{
border: solid 1px #DDDDDD;
    color: #fff;
    padding:16px;
    width:100%;
    text-align:center;
}
footer .g-nav .footer-btns li img {
  height: 21px;
  margin-right:16px;
}
footer .g-nav > li:nth-child(1) a,
footer .g-nav > li:nth-child(2) a {
font-weight:bold;
}
footer .g-nav > li:nth-child(3) a,
footer .g-nav > li:nth-child(4) a{
color:#999999;
}
@media screen and (max-width: 768px) {
footer .g-nav .footer-btns {
width:80%;
margin-top:24px;
}
footer .g-nav a {
  display: block;
  margin:16px 8px; }
footer {
  padding: 24px 0 0; }
footer .logo {
  padding: 24px 0 0; }
footer .logo img {
  max-width: 80%; }
footer .logo img {
    max-height: 40px; }
}

/*★h1 -------------------------------------------------------------------------*/
h1 {
  margin: 0 0 16px 0;
  padding: 16px;
  background: #eee;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  font-weight: normal;
  letter-spacing: normal; }
 .fpage h1 {
    margin: -3px 0 16px 0;
 } 
@media screen and (max-width: 768px) {
 .fpage h1 {
    margin: 29px 0 16px 0;
 } 
}
/*★h2 -------------------------------------------------------------------------*/
h2 {
position: relative;
    text-align: center;
    color: #262626;
    font-size: 18px;
    font-weight: normal;
    line-height: 1.3;
    padding: 8px 0;
    margin: 24px auto 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 100%; }
h2::after {
content: "";
    position: absolute;
    bottom: 0px;
    background: #262626;
    width: 5em;
    height: 1px;
    margin-top: 6px;
}
h3 {
  line-height: 1.75; }
@media screen and (max-width: 768px) {
h2 {
  margin: 24px 8px; }
}

/*★TOP -------------------------------------------------------------------------*/
.catch {
  padding-top:254px;
}
.bana {
  margin:40px 0;
}
.catch + .wrap {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  margin:24px auto;
}
.catch + .wrap .bana {
  width:49%;
  margin:16px 0;
}
.news {
  background:#262626;
}
.news dl {
  display:flex;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
  padding:40px 0;
}
.news dt {
  margin-right:24px;
}
.news dt img {
  max-width:130px;
}
.news dd li {
margin-bottom: 16px;
}
.news dd ul li:last-child {
  margin-bottom:0;
}
.news dd a {
  color:#fff;
  display:inline-block;
}
.recomme {

}
.topics {
  background:#262626;
  color:#fff;
}

.topics li a {
  color: #ffffff;
}

.topics h2{
   color:#fff;
       margin-top: 0;
    padding-top: 24px;
}
.topics h2::after {
  background:#fff;
}
.recomme,.topics {
  padding-bottom:40px;
}
.slider h5 {
      font-size: 13px;
    margin: 12px 0 0;
}
.slider p {
  margin-bottom:0;
}
.slider li > div {
  position:relative;
}
.slider li > div span {
  display:inline-block;
  position:absolute;
  bottom:0;
  right:0;
  padding:8px;
  color:#fff;
  font-weight:bold;
}
.slider li > div span.seminar {
  background: #31b6a0;
}
.slider li > div span.seminar::after {
  content:"セミナー";
}
.slider li > div span.session {
  background: #ffda2a;
}
.slider li > div span.session::after {
  content:"セッション";
}
.slider li > div span.crystalbowl {
  background: #39bcdd;
}
.slider li > div span.crystalbowl::after {
  content:"クリスタルボウル";
}
.slider li > div span.workshop {
  background: #ef8bb6;
}
.slider li > div span.workshop::after {
  content:"ワークショップ";
}

/*スライダー*/


.topics .slick-prev,
.topics .slick-next {
  border: 1px solid #fff;
}
.topics .slick-prev::after {
  color: #fff;
}
.topics .slick-next::after {
  color: #fff;
}


.menu-bana {
  margin:48px auto 32px;
}
.menu-bana ul {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
}
.menu-bana li {
  width:33%;
  margin-bottom:16px;
}
.topics form{
display: flex;
justify-content:center;
    align-items: center;
    align-content: center;
    margin-bottom:40px;
}
.submit-btn{
    border: none;
    font-size: 12px;
    /* padding: 1px 10px; */
    background: url(../img/magnifying-glass-solid.svg) center no-repeat;
}
.topics h4 {
text-align:center;
}
.topics form div + div {
background: #fff;
    display: inline-block;
    padding: 3px 14px 2px;
    margin-left:4px;
}
.topics form div > div img {
  width:20px;
}

.topics input[type="search"] {
  border: none;
    padding: 3px;
    width:20em;
}
.catch-page {
  margin-bottom:40px;
}
.catch-page,
.catch img,
.map img{
  width:100%;
}
.btn {
  text-align:right;
  margin-top:24px;
}
.btn a {
  display:inline-block;
  background:#fff;
  padding:8px 16px;
  min-width:10em;
  text-align:center;
}
.btn a i {
  margin-left:1em;
}
.calender {
  margin:40px 0;
}
.f-nav {

}
@media screen and (min-width: 769px) {
    .nav-sp {
        display: none;
    }
}
@media screen and (max-width: 768px) {

#menuToggle {
        position: fixed;
        top: 12px;
        right: 0;
        padding: 20px 24px;
        z-index: 9999;
        -webkit-user-select: none;
        user-select: none;
        /*background: rgba(0, 0, 0, .5);*/
        background:none;
    }
    
    #menuToggle a {
        /*text-decoration: none;
        color: #fff;
        transition: color 0.3s ease;*/
    }
    
    #menuToggle a:hover {
        opacity: .5;
    }
    
    #menuToggle input {
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
        opacity: 0;
        z-index: 2;
        -webkit-touch-callout: none;
    }
    
    #menuToggle span {
        display: block;
        width: 33px;
        height: 4px;
        margin-bottom: 5px;
        position: relative;
        background: #000;
        border-radius: 3px;
        z-index: 1;
        transform-origin: 4px 0px;
        transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
        background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
        opacity 0.55s ease;
    }
    
    #menuToggle span:first-child {
        transform-origin: 0% 0%;
    }
    
    #menuToggle span:nth-last-child(2) {
        transform-origin: 0% 100%;
    }
    
    #menuToggle input:checked ~ span {
        opacity: 1;
        transform: rotate(45deg) translate(4px, -1px);
        background: #000;
    }
    
    #menuToggle input:checked ~ span:nth-last-child(3) {
        opacity: 0;
        transform: rotate(0deg) scale(0.2, 0.2);
    }
    
    #menuToggle input:checked ~ span:nth-last-child(2) {
        transform: rotate(-45deg) translate(0, 5px);
    }
    
    #menu {
        position: fixed;
        width: 100%;
        /* height: calc(100vh + 100px); */
        top: 72px;
        right: 0;
        margin: 0 0 0 0;
        padding: 40px 24px;
        /* padding-top: 24px; */
        /*background: rgba(0,0,0,.7);*/
        background: #fff;
        list-style-type: none;
        -webkit-font-smoothing: antialiased;
        transform-origin: 0% 0%;
        transform: translate(100%, 0);
        transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
        text-align: center;
    }
    
    #menu {
        width: 100%;
        transform: translate(100%, 0);
    }
    
    /*#menu {
      top: 49px;
    }*/
    #menu > div {
        flex-wrap: wrap;
    }
    
    #menu > div ul {
        padding: 0;
        width: 100%;
    }
    
    #menu > div ul + ul {
        margin-top: 24px;
    }
    
    #menu > div {
        display: flex;
        justify-content: center;
    }
    
    #menu > div ul {
        padding: 0 4%;
    }
    
    #menu li {
        /* padding: 10px 0;
         font-size: 16px;*/
    }
    
    #menuToggle input:checked ~ div {
        transform: none;
}
header {
    border-bottom: 12px solid #F5F5F5;
}
header .menu {
  display:none;
}
.catch {
    padding-top: 87px;
}
header .logo {
    padding: 8px 8px;
}
.slick-prev {
    left: -4%;
}
.slick-next {
    right: -4%;
}
.menu-bana li {
    width: 100%;
}
footer .g-nav {
  flex-wrap:wrap;
    margin: 0;
}
footer .g-nav li{
  margin-bottom:8px;
}
footer .g-nav > li{
  width:50%;
}
footer .g-nav ul li {
    text-align: center;
    margin-bottom:24px;
}
.footer-sns {
  text-align:center;
}
#menu li {
  margin-bottom:16px;
}
}


/*★product -------------------------------------------------------------------------*/
.product {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
}
.search-box input[type="text"]{
    border-radius: 4px 0 0 4px;
    padding: 4px 8px;
  border: 1px solid #ccc; }
.search-box input[type="submit"] {display: none;}
.search-box label {
    display: inline-block;
    background: #000;
    padding: 8.5px 14px;
    font-size: 16px;
    border: 0;
    vertical-align: bottom;
    color: #fff;
    cursor: pointer;
    margin-left: -4px;
    border-radius: 0 4px 4px 0;
}
.search-box label:hover { opacity:.5;}
.search-box {
  text-align: center;
  padding:16px; }
.product-cat .flex{
    flex-wrap: wrap;
    /* align-items: flex-start; */
    justify-content: center;
    padding: 16px 0;
    border-top: 1px solid #F5F5F5;
    border-bottom: 1px solid #F5F5F5; }
.product-cat .flex li {
  margin: 0 8px;
}
ul.product li {
  /*float:left;*/
  margin-bottom:40px; }
ul.product li h3 {
  /*height: 3em;*/
  overflow: hidden;
  font-weight:normal;
  margin-bottom:8px; }
.product-contents h3 span,
ul.product li h3 span {
margin-right: 6px;
    padding: 2px 4px 2px 7px;
    background: #F5F5F5;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
ul.product li p {
  height: 5em;
  overflow: hidden; }
  ul.product li h3 + div {
    text-align:center;
    font-size:1.17em;
  }
.sub-cat {
  margin-bottom: 16px;
  padding: 16px 8px;
  border-bottom: 1px solid #F5F5F5; }
.sub-cat .flex {
  justify-content: center;
  -webkit-justify-content:center; }
.sub-cat .flex li { margin: 0 8px; }
@media screen and (min-width: 769px) {
ul.product li {
  width:23.5%;
 /* margin-right:2%;*/ }
ul.product li:nth-child(4n) {
  margin-right: 0; }
}
@media screen and (max-width: 768px) {
ul.product li {
  width:49%;
  /*margin-right:2%;*/ }
ul.product li:nth-child(2n) {
  margin-right: 0; }
}
/*ul.product li a {
  display: block;
  position: relative; }
ul.product li a div.pimg {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 66% 0 0;
}*/
ul.product li a div.pimg img {
  object-fit: cover;
  aspect-ratio: 1/1;
}
/*
ul.product li a div + span + span,
ul.product li a div + span {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block; }*/
/*★product-detail -------------------------------------------------------------------------*/
.product-img .bx-wrapper {
  margin: 0 auto 16px; }

.product-img .bx-wrapper li img {
  margin: 0 auto;
  width:auto!important;
  max-width:100%;
  max-height:100%; }
.product-img .bx-pager {
  display:flex;
  justify-content:space-between; }
.product-img .bx-pager a {
  letter-spacing: normal;
  display: inline-block;
  width: 23%; }
.product-img .bx-pager a div {
  padding: 100% 0 0; }

.product-contents dl {
  width: 100%;
  margin: 8px 0 8px;
      display: flex;
    justify-content: flex-start;
    align-items: stretch; }
.product-contents p + dl {
  margin-top:40px;
}
.product-contents dt, .product-contents dd {
  width: 60%;
  text-align: center;
  font-weight: normal;
  padding: 16px;
  border: 1px solid #000;
  line-height: 1.3;
  font-size:16px; }
.product-contents dd.td-input {
  background: #000;
  padding: 0;
display: flex;
    align-items: center;
    justify-content: center;
   }
.product-contents dd.td-input form {
  background: #000;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width:100%;
    height:100%;
    margin-bottom:0;
}

  .product-contents dt {
    display:flex;
    justify-content:space-evenly;
    flex-wrap:wrap;
  }
  .product-contents dd {
      width: 40%;
  }
.product-contents dd input[type="submit"] {
  -webkit-appearance: none;
  background: none;
  border: none;
  color: #fff;
  font-size: 14px;
  width: 100%;
  height:100%;
  cursor:pointer;
  padding: 16px; }
.product-contents dd:hover {
  opacity: 0.5;
    cursor:pointer;
 }
.product-contents dd.sold-out {
  color: #fff;
  background: #f00;
    display: flex;
    justify-content: center;
    align-items: center;
   }
.product-contents dd.sold-out:hover {
  opacity: 1; }
.product-contents .tbl-size {
  border-top:1px solid #ccc;
  border-left:1px solid #ccc; }
.product-contents .tbl-size th,
.product-contents .tbl-size td {
  width: auto;
  padding: 8px 16px;
  background: none;
  border-right:1px solid #ccc;
  border-bottom:1px solid #ccc; }
.product-contents .tbl-size th {
  background: #eee; }
.soldout {
  color: #f00;
}
.redSale {
  display: inline-block;
  color: rgb(255, 0, 0);
  position: relative;
  padding-left: 8px; }
.redSale::before {
  display: inline-block;
  content: "";
  width: 52px;
  height: 1px;
  bottom: 50%;
  position: absolute;
  left: -94%;
  background: rgb(255, 0, 0); }
.product-contents h3, .product-contents p {
  margin: 8px auto; }
.item-number {
}
.price {
  font-size: 24px; }
.btn-favorite {
  margin: 16px 0 40px;
  text-align: center;
}
.btn-favorite a {
  display: inline-block;
  padding: 8px 12px;
  background: #000;
  color: #fff; }

@media screen and (min-width: 769px) {
.product-img {
  margin-top: 32px;
  float: left;
  width: 40%;
  margin-bottom:40px; }
.product-contents {
  margin-top: 32px;
  float: right;
  width: 60%;
  padding-left: 40px; }
.product-contents h3 {
  margin-top: 0;
  font-weight:normal; }
.product-contents h3 + p {
  text-align:right;
}
.product-img .bx-wrapper li {
  /*height: 400px;*/ }
}

@media screen and (max-width: 768px) {
.product time {
  margin-top: 24px; }
.tbl-scroll {
  overflow-x: scroll; }
}

.privacy {
  width: 76%;
}
html {height: 100%;}
body{height: 100%;}
.comingsoon {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}


@media screen and (min-width:768px) {
  .comingsoon img {
    /*width: 400px;*/
  }
}

.relatedItems {
  margin-top: 40px;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .relatedItems {
    padding: 0;
  }
}
.product-contents .itemIcon {
  display: inline-block;
}
.product-contents .itemIcon span {
  margin: 0 -4px 4px 8px;
  padding: 0 4px;
}
.itemIcon span {
  display: inline-block;
  color: #fff;
  padding: 2px 6px;
  font-weight: normal;
  letter-spacing: normal;
  background: #f00;
  font-size: 12px;
  line-height: 1.5;
   margin: 0 0 4px 0;
}
.icon-box {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  }

  .review h3 {
    text-decoration:underline;
  }

.reviewbox {
    margin-bottom: 40px;
    padding: 16px 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

  }
.reviewbox dt {
  margin-right:5em;
}
.reviewbox + div {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
}
.reviewbox + div div {
  width:47%;
}
.review-t {
  display:flex;
  justify-content:space-between;
      align-items:center;

}
.review-t a {
  border:1px solid #000;
  padding:8px;
  display:inline-block;
}
.review-w {
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.review-w a {
  text-decoration:underline;

}
@media screen and (max-width: 768px) {
.product-cat .flex li {
  line-height:2;
}
}
.product-cat .flex,
.sub-cat {
  padding:0;
}
.sub-cat .flex li {
  margin:0;
}
  .product-cat .flex li {
    margin:0;
  }
.sub-cat .flex li a,
.product-cat .flex li a {
    border-bottom: 1px solid #fff;
    display: inline-block;
    padding: 16px 8px;
}
.sub-cat .flex li a.here,
.product-cat .flex li a.here {
    border-bottom: 1px solid #000;

}

.topics input[type="submit"] {
  background:#fff;
  margin:0;
  padding:0;
}
.topics input[type="submit"].submit-btn {
  background: url(../img/magnifying-glass-solid.svg) center no-repeat;
  padding: 2px 8px;
}
.faq {
  
  margin: 287px auto 0;
  text-align: left;
}
.faq ul {
  margin-bottom: 40px;
}
.faq ul li {
  display: inline-block;
  margin-right: 16px;
}
.faq ul li a {
  font-size: 14px;
  text-decoration: underline;
  color: #000;
}
.faq h3{
  padding: 12px;
  color: #fff;
  background: #000;
  margin-bottom: 24px;
  font-weight: bold;
}
.faq dl {
  letter-spacing: -.4em;
  margin-bottom: 40px;
}
.faq dt {
  margin-bottom: 16px;
}
.faq dd,
.faq dt {
  letter-spacing: normal;
  line-height: 1.75;
}
.faq dd span,
.faq dt span {
  display: inline-block;
  font-weight: bold;
  margin-right: 8px;
  vertical-align: top;
  font-size: 22px;
  line-height: 1;
}
.faq dd div,
.faq dt div {
  display: inline-block;
  width: calc( 100% - 3em );
}
/*スライダー*/
.slider {
   width:94%;
    margin:0 auto;
}

.slider img {
    width:100%;
    height:auto;
}


.slider .slick-slide {
    margin:0 10px;
}


.slider .slick-prev,
.slider .slick-next {
    /*position: absolute;
    top: 42%;
    cursor: pointer;
    outline: none;
    border-top: 2px solid #666;
    border-right: 2px solid #666;
    height: 15px;
    width: 15px;*/

    position:absolute;
    top: 0;
    cursor: pointer;
    outline: none;
    border: 1px solid #262626;
    height: 100%;
    width: 20px;
}

.slider .slick-prev {
    left: -2%;
}

.slider .slick-next {
    right: -2%;
}
.slider .slick-prev::after {
    content: '\f0d9';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 20px;
    color: #262626;
    display: inline-block;
    position: absolute;
    top: 45%;
    left: 5px;
}
.slider .slick-next::after {
    content: '\f0da';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 20px;
    color: #262626;
    display: inline-block;
    position: absolute;
    top: 45%;
    right: 5px;
}

.slider .slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slider .slick-dots li {
    display:inline-block;
  margin:0 5px;
}

.slider .slick-dots button {
    color: transparent;
    outline: none;
    width:8px;
    height:8px;
    display:block;
    border-radius:50%;
    background:#ccc;
}

.slider .slick-dots .slick-active button{
    background:#333;
}

@media screen and (max-width: 768px) {

.slider .slick-prev {
    left: -6%;
}

.slider .slick-next {
    right: -6%;
}
}

.information-contents {
  margin-top:16px;
}

/*healer*/
#session_area .session_wrap > div {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

#session_area .session_wrap div.message{
  text-align: center;
  width: 100%;
  padding: 100px;
}
#session_area article {
    position: relative;
    width: 15%;
    margin-bottom: 2%;
    padding: 1.4%;
    padding-bottom: calc(1.4% - 6px);
    box-sizing: border-box;
    border: solid 1px #DDDDDD;
}
@media only screen and (max-width: 1200px){
#session_area article {
    width: 18.4%;
    margin-bottom: 2%;
}

}
@media only screen and (max-width: 900px){
#session_area article {
    width: 23.5%;
    padding: 2%;
}
}
@media only screen and (max-width: 640px){
#session_area article {
    width: 100%;
    padding: 4%;
}
}
@media only screen and (max-width: 640px){
.healer .session_wrap.wrap {
 padding:0;
}
.healer #session_area .session_wrap > div {
    justify-content: space-between;
    flex-wrap: wrap;
}
.healer #session_area article {
    width: 49%;
    padding: 4%;
}
#session_area article .title_list li {
    max-width: 100%;
}
}
#session_area article:not(:nth-of-type(6n+1)) {
    margin-left: 2%;
}
@media only screen and (max-width: 1200px) {
#session_area article:not(:nth-of-type(6n+1)) {
    margin-left: 0;
}
}
@media only screen and (max-width: 1200px) {
#session_area article:not(:nth-of-type(5n+1)) {
    margin-left: 2%;
}
}

@media only screen and (max-width: 900px){
#session_area article:not(:nth-of-type(5n+1)) {
    margin-left: 0;
}}
@media only screen and (max-width: 900px){
#session_area article:not(:nth-of-type(4n+1)) {
    margin-left: 2%;
}
}


@media only screen and (max-width: 640px){
#session_area article:not(:nth-of-type(4n+1)) {
    margin-left: 0;
}}
@media only screen and (max-width: 640px) {
#session_area article:not(:nth-of-type(2n+1)) {
    margin-left: 2%;
}}
/*step02.html*/
#session_area.step02 article {
  width:100%;
  display: flex;
    justify-content: space-between;
}
#session_area.step02 article .img_wrap{
  width:20%;
}
#session_area.step02 article .bottom {
  width:76%;
}
@media only screen and (max-width: 768px) {
  #session_area.step02 article {
    flex-wrap: wrap;
  }
  #session_area.step02 article .img_wrap {
    width: 100%;
  }
#session_area.step02 article .bottom {
    width: 100%;
    margin-top:16px;
}
}
#session_area.step02 article h3 {
  border-bottom:0;
  margin-top:8px;
padding-bottom: 0;
    margin-bottom: 0;
}
#session_area.step02 article .stp-tag {
  display: flex;
}
#session_area.step02 article .stp-tag span {
    background:#8E8E8E;
    /*display: inline-block;*/
    display:flex;
    align-items: center;
    margin-right: 8px;
    padding: 8px;
    color: #fff;
    font-weight: bold;
}
#session_area.step02 article .stp-tag span.accepting {
  background:#EF706F;
}

#session_area.step02 article .stp-tag span.closed {
    color: #FFFFFF;
    background:#cfcfcf;
}

#session_area.step02 article .stp-tag span.seminar {
    /*background: #02F0A8;*/
    background: none;
    border: 1px solid;
    color: #000;
    line-height: 1.3;
    text-align: center;
}

#session_area.step02 article .stp-tag span.workshop {
    /*background:#009CF0;*/
    background: none;
    border: 1px solid;
    color: #000;
    line-height: 1.3;
}

#session_area.step02 article .stp-tag span.live {
background: none;
    border: 1px solid;
    color: #000;
    line-height: 1.3;
}

#session_area.step02 article .stp-tag span.session {
    /*background:#8C8DF5;*/
    background: none;
    border: 1px solid;
    color: #000;
    line-height: 1.3;
}

#session_area article,
#session_area article:not(:nth-of-type(6n+1)),
#session_area article:not(:nth-of-type(5n+1)),
#session_area article:not(:nth-of-type(4n+1)),
#session_area article:not(:nth-of-type(2n+1)){
  margin-left:0;
}
#session_area article div .img {
    display: block;
    width: 100%;
    padding-top: 100%;
    background-size: cover;
    background-position: center center;
}
#session_area article h3 {
    font-weight: bold;
    /*font-family: YuMincho,'Yu Mincho',serif;*/
    margin: 30px 0 12px;
    font-size: 14px;
    border-bottom: 1px solid #DDDDDD;
    padding-bottom: 13px;
    display: inline-block;
    letter-spacing:normal;
}
.healer-detail .title_list,
#session_area article .title_list {
    margin-top: 2px;
    display: flex;
    list-style: none;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.healer-detail .title_list.name_u,
#session_area article .title_list.name_u {
    display: block;
    margin: 0;
}
.healer-detail li,
#session_area article .title_list li {
    margin-right: 8px;
    margin-top: 7px;
    border: 1px solid #DDDDDD;
    overflow: hidden;
    flex-shrink: 0;
    font-size: 10px;
    line-height: 1em;
    padding: 5px 7px 3px;
}
.healer-detail li,
#session_area article .title_list.name_u li {
    margin: 0 0 8px 0;
    padding: 0;
    border: 0;
    line-height: 1.4;
    font-size: 12px;
    font-family: YuMincho,'Yu Mincho',serif;
}
#session_area article p {
    font-size: 12px;
    line-height: 1.75;
}
.healer-detail .title_list,
#session_area article .title_list {
    margin-top: 2px;
    display: flex;
    list-style: none;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.healer-detail .title_list li,
#session_area article .title_list li {
    margin-right: 8px;
    margin-top: 7px;
    border: 1px solid #DDDDDD;
    overflow: hidden;
    flex-shrink: 0;
    font-size: 10px;
    line-height: 1em;
    padding: 5px 7px 3px;
}
.healer {
    margin: 287px auto 0;
    text-align: left;
}

.healer-detail dl {
  display:flex;
  justify-content:space-between;
  padding-bottom:40px;
}
.healer-detail dl dd p {
  margin-top:24px;
}
@media only screen and (max-width: 768px) {
  .healer-detail dl {
    flex-wrap:wrap;
  }
  .healer-detail dl dt {
    margin-bottom:24px;
  }
  #session_area.step02 article .stp-tag {
    flex-wrap: wrap;
}
#session_area.step02 article .stp-tag span {
  margin-bottom:8px;
}
}
@media only screen and (min-width: 769px) {

.healer-detail dl dt {
  width:40%;
}
.healer-detail dl dd {
  width:58%;
}
}
.healer-detail h3 {
    font-size: 20px;
    margin-top: 0;
  }


.re-step {
    margin: 287px auto 0;
    text-align: left;
}
h2+h3 {
  text-align:center;
margin-top: -48px;
    margin-bottom: 40px;
}
h2+h3.ab_title {
  margin-top:1em;
  margin-bottom:-48px;
}
@media only screen and (max-width: 768px) { 
  h2+h3.ab_title .ab_en {
    font-size:20px;
}
  }
.re-step .list {
  display:flex;
  justify-content:center;
  align-items:center;
  align-content:center;
  flex-wrap:wrap;
}
.re-step .list li a {
  display:inline-block;
  padding:8px;
  margin:8px;
  border:1px solid #fff;
}
.re-step h3 + .list li:nth-child(1) a,
.re-step h3 + .list li:nth-child(2) a {
  font-weight:bold;
  font-size:1.17em;
}

.re-step .list li a.select {
 border:1px solid #262626;
}

.step-se #session_area .box {
  width:calc(100% - 15%);
  margin-left:-7.5%;
}
.step-se #session_area .box h4 {
  text-align:center;
  margin-bottom:0;
}
.step-se #session_area .box h4 span {
  display:inline-block;
  border-bottom:1px solid #262626;
}
.search-box input[type="text"]{
    border-radius: 4px 0 0 4px;
    padding: 4px 8px;
  border: 1px solid #ccc; }
.search-box input[type="submit"] {display: none;}
.search-box label {
    display: inline-block;
    background: #000;
    padding: 6px 14px;
    font-size: 16px;
    border: 0;
    vertical-align: bottom;
    color: #fff;
    cursor: pointer;
    margin-left: -4px;
    border-radius: 0 4px 4px 0;
}
.search-box label:hover { opacity:.5;}
.search-box {
  text-align: center;
  padding:16px; }

/*step02_2.html*/
.step-se.step02_2 #session_area .box {
width: calc(100% - 17%);
    margin-left: 0;
    margin-bottom: 2%;
    padding: 1.4%;
    padding-bottom: calc(1.4% - 6px);
    box-sizing: border-box;
    border: solid 1px #DDDDDD;
}
.step-se.step02_2 #session_area .session_wrap > div {
  justify-content: space-between;
}
@media only screen and (max-width: 1200px){
.step-se.step02_2 #session_area .box {
width: calc(100% - 21%);
    margin-bottom: 2%;
}

}
@media only screen and (max-width: 900px){
.step-se.step02_2 #session_area .box {
width: calc(100% - 26%);
    padding: 2%;
}
}
@media only screen and (max-width: 640px){
.step-se.step02_2 #session_area .box {
/*width: calc(100% - 51%);*/
width:100%;
    padding: 4%;
}
}


.step4 {
  display:flex;
  justify-content:space-evenly;
}
.step4 a {
  width:30%;
  display:inline-block;
  background:#2599FB;
  color:#fff;
  padding:24px;
text-align: center;
    font-size: 18px;
}
.re-step .required {
  color:#f00;
}
.re-step form > div {
  display:flex;
  justify-content:space-between;
}
.re-step form > div.btn {
  display:block;

}
.re-step form > div dl {
  width:46%;
}
.re-step form dl {
  display:flex;
  justify-content:space-between;
}
.re-step form dl dt {
  width:10em;
  margin-right: 2em;
}
.re-step form dl dd {
  width:calc(100% - 12em);
}
.re-step form input[type="radio"],
.re-step form input[type="checkbox"]{
  margin-right:2px;
}
.re-step .input-form-last {
   display:flex;
  justify-content:space-between;
  margin-top:16px;
}
.re-step .input-form-last .re-btn {
border: 1px solid #EC781B;
    background: none;
    border-radius: 4px;
    color: #EC781B;
    padding: 4px 16px;
  }
.re-step.step3 .next a,
.re-step .input-form-last input {
border: 1px solid #EC781B;
    background: none;
    border-radius: 4px;
    color: #fff;
    background:#EC781B;
    padding: 4px 16px;
    margin:0;
  }
.re-step.step5,
.re-step.step6 {
  max-width:800px;
}
.re-step.step5 dl {
  margin-bottom:24px;
}
.re-step form input {
font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 4px;
  }
  .re-step form input[type="text"],
  .re-step form input[type="tel"],
    .re-step form input[type="mail"],
    .re-step form textarea{
      width:100%;
    }
    .re-step .search-box form input[type="text"] {
      width:auto!important;
    }
 .re-step form dt {
  font-weight:bold;
 }
 .re-step form .check{
  margin-bottom:24px;

 }
 .re-step.step6 h5 {
      color:#EC781B;
      font-weight:bold;
 }

.re-step.step6 dl {
  display:flex;
  justify-content:flex-start;
    border:1px solid #ccc;
  border-bottom:none;
}
.re-step.step6 h5 + div dl:last-child {
    border-bottom:1px solid #ccc;
}
.re-step.step6 dt {
  width:45%;
  background:#eee;
  padding:16px 8px;
}
.re-step.step6 dd {
  width:55%;
  padding:16px 8px;
}

@media only screen and (max-width: 768px) {
.re-step,
.healer,
.faq {
    margin: 120px auto 0;
    text-align: left;
}
h2+h3 {
  margin-top:0;
}
.step4,
.re-step form dl,
.re-step form > div {
  flex-wrap:wrap;
}
.re-step form dl dd,
.re-step form > div dl {
  width:100%;
}
.re-step form dl dt {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8px;
    }
  .step4 {
    flex-wrap:wrap;
  }
  .step4 a {
    width: 100%;
    margin-bottom:16px;
  }
  .re-step .search-box input[type="text"] {
    width:84%;
  }
  .step-se #session_area .box {
    width: 100%;
    margin-left: 0;
}
}
.step3 .calender {
  border-top:1px solid #d9d9d9;
  border-left:1px solid #d9d9d9;
  width:100%;
  border-collapse:collapse;
  margin-top:24px;

}
.step3 .calender th,
.step3 .calender td {
  padding:8px;
  text-align:center;
   border-right:1px solid #d9d9d9;
  border-bottom:1px solid #d9d9d9;
}
.step3 .sat {
  color:#43A3F5;
  background:#e8f3ff;
}
.step3 .sun {
  color:#EA9289;
  background:#FFEEEF;
}

.step3 .calender th {
  background:#eee;
}
.step3 .calender td.batsu {
  background:#efefef;
}
.step3 .calender td.maru a {
  color:#f00;
  display:block;
}
.re-step.step3 .next {
  text-align:right;
  width:100%;
}
.re-step.step3 .next {
  display:inline-block;
}

/*==================================================
catchスライダー
===================================*/
.slider2 {
  position:relative;
  z-index: 1;
}

.slider2 .slider-item {
    width: 100%;
    height:auto;

}
.slider2 .slider-item img {
  width:100%;
  height:100%;
  object-fit:contain;
}



.photo ul,
.item ul {
  display:flex;
  justify-content:flex-start;
  align-items:flex-start;
}
.photo ul li,
.item ul li {
  width:23.5%;
  margin-right:2%;
  margin-bottom:40px;
}
.photo ul li:nth-child(4n),
.item ul li:nth-child(4n) {
  margin-right:0;
}
.item ul p {
  text-align:center;
}
.photo ul h5,
  .item ul h5 {
    font-size:12px;
    font-weight:normal;
    line-height:1.5;
  }
@media only screen and (max-width: 768px) {
  .photo ul,
  .item ul {
    flex-wrap:wrap;
  }
  .photo ul li,
  .item ul li {
    width:49%;
    margin-right:2%;
  }
  .photo ul li:nth-child(2n),
  .item ul li:nth-child(2n) {
    margin-right:0;
  }
  }

  /*全て共通：hideエリアをはじめは非表示*/
.hide-area{
  display: none;
}

/*全て共通：モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
  background:#ccc;  
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
  background:#666;
}

.h-sns {
  text-align:right;
  margin-bottom:24px;
}
.h-sns a {
  margin-left: 16px;
  font-size:32px;
}

@media screen and (min-width: 769px) {

#header.UpMove{
  animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 0;
  transform: translateY(-100px);
  }
}
#header.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}
}
.about_wrap h2{
    position: inherit;
    display: block;
    width: auto;
} 
.about_wrap .ab_con_box.ab01 h2 {
  text-align: left;
}
.about_wrap h2::after,
.about_wrap h2.ab_title::after {
  display:none;
}

/*==============================
スケジュール詳細
==============================*/
.l-contents {
  margin-top:24px;
}
.l-contents.l-schedule.l-topics div.content +
 div.content {
    margin-top: 50px;
}
.l-contents.l-schedule.l-topics span.local, .l-contents.l-schedule.l-topics span.receipt {
    width: 100px;
    display: inline-block;
    text-align:  center;
    padding: 5px 0;
    color: #fff;
    font-weight:  600;
}
span.local {
    background: #8e8e8e;
}
span.receipt {
    background: #cfcfcf;
}
span.receipt.red {
    background: #ef6f6f;
}
.l-contents.l-schedule.l-topics .ttl {
    font-size:  24px;
    font-weight:  600;
    line-height: 1.7;
    padding: 15px 0;
    margin:0;
}

.l-contents.l-schedule.l-topics .main-box p.text {
    border-top: solid 1px #d7d7d7;
    padding-top:  15px;
    margin-top: 15px;
}
.l-contents.l-schedule.l-topics span + span {
    margin-left: 5px;
}
@media only screen and (max-width: 768px) {
  .l-contents.l-schedule.l-topics span + span + span {
      display: block;
      margin-top: 8px;
      margin-left: 0;
  }
}
.l-contents.l-schedule.l-topics .btn a {
    padding:  15px;
    display: block;
    text-align:  center;
    background:  #666666;
    color:  #fff;
    font-weight:  600;
    line-height: 1.5;
}
.l-contents.l-schedule.l-topics .btn {
    margin: 40px auto 0;
    text-align:  center;
    width:  350px;
}
.l-contents.l-schedule.l-topics .deadline{
  margin: 3px auto 0;
  text-align:  center;
  width:  350px;
}
.l-contents.l-schedule.l-topics .over{
  color: red;
}

.date-box.content tr,
.l-contents.l-schedule.l-topics tr {
    border: solid 1px #d6d6d6;
    width:  100%;
}
.date-box.content tr th,
.l-contents.l-schedule.l-topics tr th {
    width: 25%;
    border-right: solid 1px #d6d6d6;
    background: #f4f4f4;
    text-align:  center;
    padding: 20px 0;
}
.date-box.content tr td,
.l-contents.l-schedule.l-topics tr td {
    width: 80%;
    padding: 2%;
    line-height:1.75;
}
.l-contents.l-schedule .content-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
    justify-content: space-between;
}
.l-contents.l-schedule .content-box {
    display: flex;
    justify-content:  space-between;
  margin-top: -10px;
}
.l-contents.l-schedule .content-box .img-box {
    width: 40%;
}
.l-contents.l-schedule .content-box .text-box {
    width: 56%;
  padding-top: 15px;
}
.l-contents.l-schedule .content-box .img-box img {
    width: 100%;
}
.l-schedule p.name-ja {
    font-size:  18px;
}
.l-schedule .content-box p.text {
    border-top: solid 1px #d7d7d7;
    margin-top: 20px;
    padding-top: 20px;
}
.l-schedule p.name-ja span.en {
    font-size:  12px;
    margin-left: 20px;
}
.l-contents.l-schedule.l-topics .sub-box dt {
    font-weight: 600;
    border-bottom: 1px solid #d7d7d7;
    margin-bottom: 15px;
    padding-bottom: 15px;
}
.l-contents.l-schedule.l-topics .sub-box li + li {
    margin-top: 30px;
}
.l-contents.l-schedule.l-topics .l-side ul.side-schedule-list li a {
    background: url(../img/module/icon_arrow.jpg) no-repeat center right 10%;
  background-size: 3%;
  display: block;
}
.l-contents.l-schedule.l-topics .l-side ul.side-schedule-list li:hover a {
    background: url(../img/module/icon_arrow.jpg) no-repeat center right 5%;
  background-size: 3%;
  transition: 0.3s;
  display: block;
}
.l-contents.l-schedule.l-topics .l-side ul {
  margin-bottom: 40px;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*step07*/
.eventdtl_item01 .left_con h2 {
    margin: 0 0 25px 0;
    font-size: 20px;
    line-height: 1.5;
    color: #000;
    font-weight: bold;
    text-align:left;
    border-bottom:none;
}
/*step07*/
.eventdtl_item01 .left_con h2::after {
  display:none;
}
.eventdtl_item01 .left_con .price {
    margin-bottom: 5px;
    font-size: 30px;
}
.eventdtl_item01 .left_con .price span {
    margin-left: 10px;
    font-size: 15px;
}

.eventdtl_item01 .left_con table {
    background-color: #ddd;
    border-collapse: separate;
    border-spacing: 1px;
    border: none;
    font-size: inherit;
    line-height: 110%;
    margin: 0 0 10px;
    width: 100%;
    margin-bottom: 30px;
}
.eventdtl_item01 .left_con table {
    border-spacing: 0;
    background: transparent;
    margin-bottom: 0;
  }
.eventdtl_item01 .left_con table tr:first-of-type th, .eventdtl_item01 .left_con table tr:first-of-type td {
    font-size: 15px;
}
.eventdtl_item01 .left_con table th {
    width: 190px;
    font-weight: bold;
}
.eventdtl_item01 .left_con table th, .eventdtl_item01 .left_con table td {
    padding: 10px 0;
    border-bottom: 1px solid #d7d7d7;
    background: transparent;
    font-size: 12px;
}
.eventdtl_item01 .left_con table td {
    width: 75%;
    background: #f9f9f9;
    border: none;
    padding: 15px;
}
.eventdtl_item01 .left_con table tr.last th, .eventdtl_item01 .left_con table tr.last td {
    padding: 20px 0;
}
.eventdtl_item01 .left_con table td {
    padding: 10px 0;
    border-bottom: 1px solid #d7d7d7;
    background: transparent;
    font-size: 12px;
}
.eventdtl_item01 .left_con textarea {
    width: 100%;
    min-height: 150px;
    padding: 10px;
    border: solid 1px #BCBCBC;
    outline: none;
    line-height: 1.3;
}
.eventdtl_item {
    border-bottom: 1px solid #d7d7d7;
}
.eventdtl_item03 {
    padding: 20px 0 15px;
    font-size: 12px;
}
.eventdtl_item03 .can_area p, .submit_area .can_area p {
    text-indent: -1.5em;
    padding-left: 1.5em;
    margin-bottom: 5px;
}
.eventdtl_item.eventdtl_item03 .left {
  width:47%;
}
.eventdtl_item.eventdtl_item03 .right {
    width: 50%;

}
.eventdtl_item04.sbmt {
    border-bottom: 0;
    padding: 40px 0 40px;
    text-align: center;
}

.eventdtl_item04.sbmt .sbmt.cartin {
    font-weight: bold;
    margin: 0 auto;
    float: none;
    background: #709ACF;
    border: none;
    color: #fff;
    padding: 15px 30px;
    font-size: 12px;
    cursor:pointer;
}
.can_area.clear {
display: flex;
    justify-content: space-between;
}
.left_con {
  max-width:600px;
  margin:0 auto;
}
@media only screen and (max-width: 768px) {
.can_area.clear {
  flex-wrap:wrap;
}
.eventdtl_item.eventdtl_item03 .left {
  width:100%;
  margin-bottom:16px;
}
.eventdtl_item.eventdtl_item03 .right {
  width:100%;
}
}
@media screen and (max-width: 768px) {
    .btn-box, #bt_set {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
    }
    .btn-box a, #bt_set a {
      display: block;
      background: #000;
      color: #fff;
      border: none;
      padding: 16px;
      margin-top: 16px;
      text-align: center;
      margin: 8px;
      cursor: pointer;
    }
  }
.reviewbox + div div a {
  text-decoration:underline;
}

.healers {
  margin-top: 40px;
}

section.schedule {
  border: solid 1px #d6d6d6;
  padding: 2%;
  margin-bottom: 40px;
}

section.schedule .message{
  text-align: center;
  padding: 50px;
}

/*news*/
.information li {
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #262626;
}
.footer-sns {
  text-align:right;
}
.footer-sns a {
  display:inline-block;
  margin:0 6px;
}
.footer-sns a img {
  height:24px;
}
.information dl {
  display: flex;
    justify-content: flex-start;
}
.information dt {
  width:20%;
}
.information dt div {
aspect-ratio: 3/2;
    width: 100%;
    height: 100%;
  }
.information dd {
width: 78%;
    margin-left: 2%;
}
@media screen and (max-width: 768px) {
.information dl {
  flex-wrap:wrap;
  }
.information dt,
.information dd {
  width:100%;
  margin-left:0;
}
.information dd {
  margin-top:24px;
  }
}
.access h3 {
  font-size: 28px;
    padding-bottom: 4px;
    border-bottom: 1px solid #262626;
}
.access dl {
  display:flex;
  justify-content:flex-start;
  align-items:flex-start;
  align-content:flex-start;
  margin-bottom:16px;
  line-height:1.75;
}
.access dt {
  width:25%;
}
.access dd {
  width:75%;
  padding-left:2%;
}

@media screen and (max-width: 768px) {
.access h3 {
  font-size: 20px;
}
.access dt {
  width:30%;
}
.access dd {
  width:70%;
}
}
/*
.information.shiten li:first-child {
  display:none;
}:*/
.access-li h3.wrap {
    font-size: 28px;
    margin-top: 40px;
    margin-bottom: 24px;
    padding-bottom: 8px;
    border-bottom: 1px solid #262626;
}
.access-img {
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
}
.access-img img {
    height: 300px;
    width:100%;
    object-fit: cover;
}

@media screen and (min-width: 769px) {

.access.wrap .iframe-wrap iframe {
  width:100%;
  height:400px;
}

}

.re-shop .slick-slide img {
  object-fit: cover;
    aspect-ratio: 1/1;
}
.fl-container.cancelpolicy {
  display:block;
}



.bigCheckbox input[type="checkbox"]{
  transform: scale(2);
  margin-right: 0.5em !important;
}

.a-catch img {
  width:100%;
}
@media screen and (max-width: 768px) {
.footer-sns {
  text-align:center;
}
}


.cancelpolicy.return h2 {
  justify-content:flex-start;
  margin-bottom: 24px
}
.cancelpolicy.return h2::after {
  width: 100%;
}
@media screen and (max-width: 768px) {
.cancelpolicy.return h2::after {
    width: 95%;
}
}
#session_area article .bottom .btn {
  text-align:left;
}
#session_area article .bottom .btn a {
padding: 15px;
    text-align: center;
    background: #666666;
    color: #fff;
    font-weight: 600;
    line-height: 1.5;
  }

.input-number-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
    width:100%;
    margin-top:12px;

}

.input-number-group input[type=number]::-webkit-inner-spin-button,
.input-number-group input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
}

.input-number-group .input-group-button {
  line-height: calc(80px/2 - 5px);
}

.input-number-group .input-number {
  width: 80px;
  padding: 0 12px;
  vertical-align: top;
  text-align: center;
  outline: none;
  display: block;
  margin: 0;
}

.input-number-group .input-number,
.input-number-group .input-number-decrement,
.input-number-group .input-number-increment {
  border: 1px solid #cacaca;
  height: 40px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border-radius: 0;
}

.input-number-group .input-number-decrement,
.input-number-group .input-number-increment {
  display: inline-block;
  width: 40px;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  font-size: 2rem;
  font-weight: 400;
}

.input-number-group .input-number-decrement {
  margin-right: 0.3rem;
}

.input-number-group .input-number-increment {
  margin-left: 0.3rem;
}
@media screen and (max-width: 768px) {
/*アコーディオン全体*/
.re-step .sp .accordion-area{
    list-style: none;
    width: 100%;
    padding: 0 16px;
    max-width: 900px;
    margin:0 auto;
}

.re-step .sp .accordion-area li{
    margin: 10px 0;
}

.re-step .sp .accordion-area section {
  border: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.re-step .sp .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1rem;
    font-weight: normal;
    padding: 16px 3% 16px 50px;
    transition: all .5s ease;
    margin:0;
}

/*アイコンの＋と×*/
.re-step .sp .title::before,
.re-step .sp .title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;
    
}
.re-step .sp .title::before{
    top:48%;
    left: 15px;
    transform: rotate(0deg);
    
}
.re-step .sp .title::after{    
    top:48%;
    left: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.re-step .sp .title.close::before{
  transform: rotate(45deg);
}

.re-step .sp .title.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.re-step .sp .box {
    display: none;/*はじめは非表示*/
    /*background: #f3f3f3;
  margin:0 3% 3% 3%;
    padding: 3%;*/
}
.re-step .sp .list li {
  width:100%;
}
.re-step .sp .list li a {
  padding: 0 8px;
}
.re-step .sp .list li a.select {
  border:none;
}
}
.product-cat .flex li a.lpCategory {
margin-left: 8px;
    background: #F75959;
    color: #fff;
    padding: 16px 12px 16px 4px;
  }
