
/*index*/
.main_img {
	position:relative;
	  animation: fade-in 3s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}


#slideshow {
	overflow: hidden;
  position: relative;
  width: 100%;
  z-index:1;
  height: 800px;
}

#slideshow img {
height: 800px;
position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

#slideshow img.active {
  opacity: 1;
}


#sub .main_img {
	height:300px;
}
#sub .sub_img {
height: 300px;
  width: 100%;
  object-fit: cover;
}

.main_img .logo {
position:absolute;
bottom:0px;
left:calc(50% - 150px);
z-index: 3;
text-align:center;
}
.main_img .logo img{
width:100%!important;
}

.circle-line::after {
    width: calc(100vw + 100px);
    left:  calc(50% + 50px);
	z-index: 1;
    height: 140px;
    border-radius: 50%/100% 100% 0 0;
    background: inherit;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
	content:"";
	position:absolute;
	background-color:#fff;
	background-image:none;
	margin-left:-50px;
	margin-right:50px;
    bottom: -20px;
}

#topics .midashi{
	background-image: url(../img/topics.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	height: 115px;
	min-width:150px;
	text-align:center;
	padding-top:20px;
}
#topics .midashi p{
	font-weight: bold;
	color: #FFFFFF;
	margin-bottom:10px;
}
#topics .midashi .btn {
	background-color:#FFFFFF;
	font-size:0.7em;
	line-height:1em;
	margin:0;
	border: 2px solid var(--d-pink);
}

#topics .midashi .btn:hover {
color:#000;
}
#topics .midashi .btn i {
vertical-align: -.125em;
margin-left:2px;
}
#topics{
width:100%;
}
#topics ul li{
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCCCCC;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
#topics ul li a{
padding:5px 5px;
color:#000000;
text-decoration:none;
display:block;
}
#topics ul li a:hover{
background-color:var(--bs-light);
}

#topics ul li span{
margin-right:20px;
}

#topics ul li span.cat{
	width: 7em;
	background-color:#006633;
	border-radius:5px;
	display:inline-block;
	text-align:center;
	color:#FFFFFF;
	font-size:0.9rem;
	line-height:1.3em;
}

#topics ul li span.cat.info{
	background-color:var(--orange);
}
#topics ul li span.cat.shoeiso{
	background-color:var(--shoeiso);
}
#topics ul li span.cat.care{
	background-color:var(--care);
}
#topics ul li span.cat.sunday{
	background-color:var(--sun_day);
}
#topics ul li span.cat.kanasago{
	background-color:var(--kanasago);
}
#topics ul li span.cat.recruit{
	background-color:var(--recruit);
}

#insta h4{
font-size:1em;
font-weight:nomal;
padding:0;
margin:0;}
#insta h4 img{
margin-right:1em;
}

#service .back_col{
background-color:var(--bs-light);
position:relative;
padding-top:3em;
margin-bottom:4em;
margin-top:3em;
padding-bottom:2em;
}
#service .midashi_l,#service .midashi_r{
	font-size: clamp(25px, 2.8vw,35px);
	border: 3px solid #FFFFFF;
	line-height:1em;
	width:50vw;
	top:-1em;
	margin-left:calc(10em - 50vw);
	position:absolute;
	border-radius:1em;
	padding:0.2em 1em;
	text-align:right!important;
	background-color: var(--d-pink);
	color:#FFFFFF;
	font-weight:bold;
	letter-spacing:0.2em;
}
#service .midashi_r{
	left:auto!important;
	right:0!important;
	margin-left:auto!important;
	margin-right:-10em!important;
	text-align:left!important;
}

#service figure img{
object-fit: cover;
height:400px;
border-radius:1.2em;
width:100%;
}
#service a{
position:relative;
color:#fff;
font-size:1.5rem;
opacity: 1;
height:auto;
	display:flex;

}
#service a:hover{
opacity: 0.7;
}

#service figure figcaption{
	font-size: clamp(18px, 1.8vw,25px);
	background-image: url(../img/service_cap.png);
	background-repeat: no-repeat;
	background-position: center top;
	position:absolute;
	bottom:0!important;
	display:flex;
	justify-content: center;
  align-items: center;
	 width:100%;
	 height:5em;
	 text-align:center;
	 line-height:1.2em;
	 padding-top:1em;
border-radius:0 0 1em 1em;

}


/*サブページ*/

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.breadcrumb a,.breadcrumb a:visited{
display:inline;
color:var(--d-pink)!important;
text-decoration:underline;}

.breadcrumb li:not(:last-of-type)::after {
  content: "/";
  margin: 0 .8em;
  color: #666;
  font-weight:bold;
}

.sub_tab {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	align-items: center;
	justify-content: center;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: var(--d-pink);
	width:100%;
}
.sub_tab .tab-item{
color:var(--d-pink);
display:block;
text-decoration:none;
padding:0.8em 1em;
width:40%;
	border-top-width: 2px;
	border-right-width: 2px;
	border-left-width: 2px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: var(--d-pink);
	border-right-color: var(--d-pink);
	border-left-color: var(--d-pink);
	border-radius:10px 10px 0 0;
  cursor: pointer;
}
.sub_tab .tab-item.active{
color:#fff;
background-color:var(--d-pink);
}
.sub_tab li {
	margin:0 0.2em;
	line-height:1em;
	text-align:center;
}
.tab-panel {
  display: none;
}
.tab-panel.active {
  display: block;
}



#map{
width:100%;
height:450px;
border:0;}


/*フッター*/

footer{
	background-image:url(../img/footer.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:100%;
	border-top-width: 3px;
	border-top-style: solid;
	border-top-color: var(--d-pink);
	margin-top:2em;
	margin-bottom:0;
	font-size:0.9em;
}

footer nav ul,footer nav ul li{
	list-style-type: none;
	margin:0;
	padding:0;
	margin-bottom:0.3em;
}
footer nav ul{
	padding-left:3em;
}

footer nav ul li a {
position:relative;
padding:0.1em 0;
}
footer nav ul li i {
color:var(--d-pink);
}
footer nav .list_det li{
	list-style-type: disc!important;
	line-height:1em;
	margin:0;
}
footer table{
	margin: 0px;
	padding:0.2em;
	width: 100%;
	margin-top:1em;
}
footer table td{
	padding: 0.2em 1em;
margin-bottom:0.2em;
line-height:1em;
}
footer address{
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: var(--d-pink);
}
footer address i{
color:var(--d-pink);
font-size:0.8em;
margin-right:0.3em;}


/* 大デバイス（デスクトップ, 992px 以上）
============================================== */
@media (min-width: 992px) {

.navbar{
background-color:var(--bs-light)!important;
padding:5px 0;
position:fixed;
width:100%;
z-index:999;
}

  .navbar-nav {
    display: flex;
	width:100%;
  }
  .navbar-nav li {
    border-right: 1px solid white;
	text-align:center;
	width:calc(25% - 2px);
	font-size:1.1em;
  }

  .navbar-nav  li:first-child {
    border-left: 1px solid white;
  }

  .navbar-nav  li a{
  padding:0.5em 0;
  }

  .navbar-nav  li a:hover{
background-color:var(--d-pink)!important;
color:#FFFFFF!important;
  }
  .navbar-nav ul.dropdown-menu{
  width:auto;
  min-width:18em;
  padding:0;
  margin-left:-2.5em;
}
  .navbar-nav ul.dropdown-menu li{
  width:100%!important;
  text-align:left;
  border:none;
  border-bottom: 1px dotted #000;
}
  .navbar-nav ul.dropdown-menu li.m_tit{
  background-color:var(--bs-light);
  color:var(--bs-dark);
  font-size:0.9em;
  padding:0.2em;
  text-align:center;
}
  .navbar-nav ul.dropdown-menu li:last-child{
      border: none;
	  
}

  .navbar-nav ul.dropdown-menu li a{
  padding:0.8em!important;
  }

.hamburger{
display:none;}

  footer .right {
    border-right: 1px solid white;
  }
}

@media (max-width: 1200px) {
#slideshow,#slideshow img {
  height: 600px;
}
}


/* 中デバイス（タブレット, 992px 未満）
============================================== */
@media (max-width: 991.98px) {
#slideshow,#slideshow img {
  height: 400px;
}

nav.navbar{
margin:0!important;
padding:0!important;
        width:100%!important;
}
#navbar{
position:fixed;
z-index:98;
margin:0;
padding:0px;
top:0;
left:0;
background-color:rgb(228 223 211 / 85%);

width:100%!important;
padding-top:50px;
max-width:none;
}
#navbar .container{
margin:0;
padding:0;
background-color:#0000FF;
}
.navbar-nav li {
    border-bottom: 1px solid #ccc;
	font-size:1.1em;
  }
  .navbar-nav li a {
  display:block;
  color:#000;
  padding:0.5em;
}
  .navbar-nav ul.dropdown-menu{
  margin:0;
  padding:0;
  border:none;
  border-radius:0;
  border-top:2px dotted #ccc;
  width:100%!important;
}
  .navbar-nav ul.dropdown-menu li{
  text-align:left;
  border:none;
  border-bottom: 1px dotted #ccc;
}
  .navbar-nav ul.dropdown-menu li.m_tit{
  background-color:var(--bs-light);
  color:var(--bs-dark);
  font-size:0.9em;
  padding:0.2em;
  text-align:center;
}
.hamburger {
  cursor: pointer;
	width: 60px;
	height: 53px;
	display:block;
	background-color:var(--d-pink);
	border:5px solid var(--d-pink);
position:fixed;
right:5px!important;
top:5px;
  z-index:99;
  border-radius:10px;
}
.hamburger_bar {
  display: block;
  width: calc(100% - 10px);
  height: 6px;
  position: absolute;
  left: 5px;
  background: #fff;
  border-radius:5px;
}

.hamburger_bar:nth-child(1) {
  top: 5px;
}

.hamburger_bar:nth-child(2) {
  top: calc(50% - 3px);
}

.hamburger_bar:nth-child(3) {
  bottom: 5px;
  top:auto;
}
#topics .midashi{
background-image:none;
width:100%;
height:auto;
margin-top:0;
margin-bottom:1em;
}
#topics .midashi p{
display:none;
}
#topics ul{
width:100%;
}

#service .midashi_l,#service .midashi_r{
width:100%!important;
margin:0.5em 0!important;
text-align:center!important;
position:static!important;
}
#service .back_col{
padding-top:1em!important;
margin-bottom:1em;
margin-top:0;
}
#service figure{
margin-bottom:1em;
}
#service figure img{
height:250px;
}

#sub .main_img .logo img{
width:70%!important;
}

#sub .main_img {
	height:250px;
}
#sub .sub_img {
height: 250px;
}
.circle-line::after {
    height: 100px;
}

#map{
height:250px;}


.sub_tab{
width:100%;
margin:0!important;
padding:0!important;
}
.sub_tab li,.sub_tab .tab-item{
width:50%;
margin:0;
}


footer .ft_nav {
display:none!important;}
}



/* 極小デバイス（縦向きモバイル, 576px 未満）
============================================== */
@media (max-width: 575.98px) {
  footer nav ul.navbar-nav {
    display: block;
  }

}


dl.faq dt {
    margin-bottom: 0.3em;
    color: #333333;
    font-weight: 600;
	font-size:120%;
}

dl.faq dt::before,
dl.faq dd::before {
    margin-right: .4em;
}

dl.faq dt::before {
    content: "Q.";
	font-size:150%;
	color:var(--d-pink);
}

dl.faq dd {
    margin: 0 0 2em;
    padding: 1em 1.5em;
    background-color:var(--bs-light);
    color: #333333;
	border-radius:0.5em;
}

dl.faq dd::before {
    content: "A.";
	color:var(--green);
	font-size:150%;
}


.wpdm-all-packages-table .__dt_col_title{
font-size:120%;
line-height:1.2em;
}

.Form {
  margin-top: 5px;
  margin-left: auto;
  margin-right: auto;
  width:100%;
}
.Form-Item {
	padding-top: 0.5emp;
	padding-bottom: 0.5em;
	width: 100%;
	display: flex;
	margin-bottom: 0.5em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCCCCC;
}


.Form input[type="text"],
.Form textarea,
.Form input[type="email"]{
    padding: 0.3em;
    outline: none;
    border: 1px solid #DDD;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 120%;
width: 800px;
}
@media screen and (max-width: 1000px) {
.Form input[type="text"],
.Form textarea,
.Form input[type="email"]{
    width: 100%!important;
}
}
@media screen and (max-width: 640px) {
  .Form-Item {
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 16px;
    padding-bottom: 16px;
    flex-wrap: wrap;
  }
}
.Form-Item-Label {
	width: 100%;
	max-width: 248px;
	letter-spacing: 0.05em;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
  .Form-Item-Label {
    max-width: inherit;
    display: flex;
    align-items: center;
  }
}
.Form-Item-Label.isMsg {
  margin-top: 8px;
  margin-bottom: auto;
}
@media screen and (max-width: 640px) {
  .Form-Item-Label.isMsg {
    margin-top: 0;
  }
}
.Form-Item-Label-Required,.Form-Item-Label-Usual{
	border-radius: 6px;
	margin-right: 8px;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	width: 5em;
	display: inline-block;
	text-align: center;
	color: #fff;
	background-color: #FF6666;
	font-size: 80%;
	font-weight: normal;
	line-height:1em;
}
.Form-Item-Label-Usual{
	background-color: #999999;
}
@media screen and (max-width: 640px) {
  .Form-Item-Label-Required,.Form-Item-Label-Usual {
    border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;
  }
}
.Form-Item-Input {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 2em;
  flex: 1;
  width: 100%;
  max-width: 800px;
  background: #eaedf2;
}
@media screen and (max-width: 640px) {
  .Form-Item-Input {
    margin-left: 0;
    margin-top: 18px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
	width:100%;
  }
}
.Form-Item-Textarea {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 5em;
  flex: 1;
  width: 100%;
  max-width: 800px;
  background: #eaedf2;
  font-size: 18px;
}
@media screen and (max-width: 640px) {
  .Form-Item-Textarea {
    margin-top: 18px;
    margin-left: 0;
    height: 200px;
    flex: inherit;
  }
}
.Form input[type='submit']{
  border-radius: 6px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  width: 280px;
  display: block;
  letter-spacing: 0.05em;
  background:var(--d-pink);
  color: #fff;
  font-weight: bold;
  font-size:120%;
}
@media screen and (max-width: 640px) {
.Form input[type='submit'] {
    margin-top: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 160px;
  }
}

.pagination {
  display: flex;
  justify-content: center;
}
 
 
.nav-links{
   display:flex;
}
.page-numbers{
   display:inline-block;
   margin-right:10px;
   padding:15px 20px;
   color:#666666;
   border-radius:50%;
  border: 1px solid var(--bs-light);
	text-decoration: none!important;
	line-height: 1em;
   background:var(--bs-light);
}
.page-numbers.current{
   padding:15px 20px;
   color:#000;
	line-height: 1em;
   background:#ffffff;
  border: 1px solid var(--d-pink);
}
.page-numbers.prev,
.page-numbers.next{
   background:transparent;
   box-shadow:none;
     border:none;
   color:#666666; 
}
.page-numbers.dots{
   background:transparent;
   box-shadow:none;
     border:none;
   color:#666666; 
}
 
 
/* レスポンシブデザインのためのメディアクエリ */
@media (max-width: 600px) {
.page-numbers,
.page-numbers.current    {
     padding:5px 10px; /* パディングを小さく */
  }
}

table.dl_wpdm{
background-color:#F2F2F2;
width:100%;
}
table.dl_wpdm td,table.dl_wpdm th{
	padding:0.5em 1em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #DEE2E6;
}
table.dl_wpdm th{
text-align:center;
font-weight:bold;}
table.dl_wpdm i{
font-size:160%;
font-weight:900;
margin-right:0.2em;}
