@charset "utf-8";
.h1Wrap {
margin-bottom: 2rem;
}
h1 {
font-size: 1.375rem;
font-weight: bold;
padding: 1.25rem;
margin-bottom: 1.8rem;
background: #005792;
border-radius: 10px;
color: #fff;
}
h2 {
font-size: 1.375rem;
font-weight: bold;
padding-bottom: 10px;
margin-bottom: 40px;
color: #005792;
border-bottom: solid 3px #005792;
}
.slick-dotted.slick-slider,.fV {
margin: 40px 0;
}
.fVSlide figure img,.fV figure img {
width: 100%;
border-radius: 10px;
    object-fit: cover;
    aspect-ratio: 7.5 / 4;
}
.slide-arrow.prev-arrow,.slide-arrow.next-arrow {
    display: block;
    cursor: pointer;
    vertical-align: middle;
    text-decoration: none;
}
.slide-arrow.prev-arrow::before, .slide-arrow.prev-arrow::after, .slide-arrow.next-arrow::before, .slide-arrow.next-arrow:after {
    position: absolute;
top: 0px;
    bottom: 28px;
    margin: auto;
    content: "";
    vertical-align: middle;
    z-index: 1;
}
.fVSlide .slide-arrow.prev-arrow::before {
    left: 10px;
    width: 30px;
    height: 30px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #005691;
}
.fVSlide .slide-arrow.prev-arrow::after {
    left: 22px;
    width: 10px;
    height: 10px;
    border-bottom: 3px solid #fff;
    border-left: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.fVSlide .slide-arrow.next-arrow::before {
    right: 10px;
    width: 30px;
    height: 30px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #005691;
}
.fVSlide .slide-arrow.next-arrow::after {
    right: 22px;
    width: 10px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.slick-dots li button:before {
	opacity: 1;
	color: #D9D9D9;
    font-size: 10px;
}
.slick-dots li.slick-active button:before {
    color: #005691;
		opacity: 1;
}
.slick-dots {
	position: relative;
	bottom: 0;
}
.slick-dots li {
	margin: 0
}
.staffSec h3 {
font-size: 20px;
font-weight: bold;
margin-bottom: 20px;
}
.staffSec h4 {
font-size: 20px;
font-weight: bold;
margin-bottom: 20px;
padding-top: 40px;
}
.staffcareer {
background: #CCDDE9;
border-radius: 10px;
margin-top: 40px;
padding: 0 20px 40px;
}
.staffSec > section ul {
list-style: disc;
    padding-left: 20px;
}
.staffWrap {
	display: flex;
}
.staffWrap > div {
margin-right: 20px;
}
.staffWrap img {
    width: 200px;
    min-width: 200px;
    height: 200px;
    object-fit: cover;
    object-position: top center;
    border-radius: 10px;
}
.featuresSec h3 {
font-size: clamp(1rem, 0.911rem + 0.45vw, 1.125rem);
font-weight: bold;
margin-top: 20px;
margin-bottom: 10px;
display: flex;
align-items: center;
}
.featuresSec h3::before {
content: "";
width: 10px;
min-width: 10px;
height: 5px;
display: inline-block;
background-color: #005792;
border-radius: 10px;
margin-right: 0.625rem;
}
.marker {
background: linear-gradient(transparent 50%, rgb(255 235 59 / 30%) 50%)
}
.pricelistWrap {
    border-collapse: collapse;
    white-space: normal;
    width: 100%;
}
.pricelistWrap th {
color: #fff;
	font-weight: bold;
	word-break: keep-all;
	background: #005792;
	text-align: center;
}
.pricelistWrap td {
text-align: right;
}
.pricelistWrap th,.pricelistWrap td {
	    border: solid 1px #B3B3B3;
	padding: 14px;
}
.timeWrap time {
display: block;
text-align: right;
font-size: clamp(0.75rem, 0.6rem + 0.64vw, 1rem);
font-weight: bold;
margin-bottom: 0.5rem;

}
.h1Wrap p:not(:last-child) {
margin-bottom: 1rem;
}
.h1Wrap .mW {
display: flex;
position: relative;
align-items: center;
}
.prFirst::after {
content: "PR";
position: absolute;
color: #005792;
font-weight: bold;
font-size: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
right: 10px;
top: 10px;
padding: 0px 10px;
margin-right: 16px;
text-align: center;
background-color: #fff;
border-radius: 5px;
}
.tagList li {
margin-right: 0.625rem;
}
.tagList li a {
color: #005792;
font-weight: bold;
}
.tagList li a:hover {
opacity: 0.6;
}
.lML > section > section {
	margin-top: 80px;
}

.introductionWrap {
margin-bottom: 2rem;
}
.officialBtn {
display: flex;
justify-content: center;
}
.officialBtn a {
margin: auto;
background-color: #005792;
color: #fff;
border-radius: 50px;
padding: 0.8rem 1.5rem;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.16);
}
.deluxe.officialBtn a {
width: 100%;
max-width: 340px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50px;
background-color: #FD5F00;
}
.deluxe.officialBtn a img {
width: 20px;
display: block;
margin-left: 2rem;
margin-bottom: 0.125rem;
}
.officialBtn a:hover {
-webkit-animation: buttonHover 0.3s forwards;
animation: buttonHover 0.3s forwards
}
p:not(:last-child) {
margin-bottom: 1rem;
}
.deluxePicture ul {
display: flex;
justify-content: space-between;
}
.deluxePicture li {
width: 49%;
}
.deluxePicture ul li img {
aspect-ratio: 3.5 / 2.4;
object-fit: cover;
width: 100%;
}
.tabLeWrap {
width: 100%;
}
.tabLeWrap > ul > li {
display: flex;
border-bottom: 1px solid #707070;
}
.tabLeWrap > ul > li > * {
padding: 0.8rem;
}
.tabLeWrap > ul > li > span {
font-weight: bold;
width: 20%;
min-width: 90px;
}
.tabLeWrap > ul > li > div {
width: 80%;
}
.tabLeWrap > ul > li > div .map {
padding-top: 0.8rem;
}
.tabLeWrap > ul > li > div iframe {
width: 100%;
height: 15rem;
}
.tabLeWrap .url {
text-decoration: underline;
}
.consultationhours table {
width: 100%;
}
.consultationhours > div {
width: 100%;
overflow-x: auto;
}
.consultationhours > div table {
width: 100%;
white-space: nowrap;
}
.consultationhours table tr {
border-bottom: solid 1px #C7C7C7;
}
.consultationhours table th {
padding: 0.8rem;
}
.consultationhours table tr:first-child th {
text-align: center;
}
.consultationhours table td {
color: #005792;
text-align: center;
padding: 0.8rem;
}
.consultationhours ul {
padding: 0.8rem 0.8rem 0;
}
.one,.two {
margin-top: 60px;
display: flex;
justify-content: center;
}
.one li,.two li {
margin-top: 20px;
}
.two li {
margin-right: 0.625rem;
margin-left: 0.625rem;
}
.deluxeBtn a {
width: 100%;
max-width: 340px;
font-size: clamp(0.938rem, 0.731rem + 0.43vw, 1rem);
display: flex;
align-items: center;
justify-content: center;
padding: 0.8rem 1.5rem;
background: #005792;
color: #fff;
border-radius: 50px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.16);
}
.deluxeBtn img {
width: 20px;
display: block;
margin-right: 0.625rem;
margin-bottom: 0.125rem;
}
.deluxeBtn a:hover {
-webkit-animation: buttonHover 0.3s forwards;
animation: buttonHover 0.3s forwards
}
.snsWrap {
display: flex;
}
.snsWrap > div {
font-size: 0.8rem;
text-align: center;
}
.snsWrap figure {
margin: auto;
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
}
.snsWrap figure:nth-last-of-type(2) {
background: #333;
background: #F2F3F7;
border-radius: 50px;
}
.snsWrap figure img {
width: 25px;
height: 25px;
object-fit: contain;
}
.reference {
font-size: 0.75rem;
}
.reference a {
color: #005792;
text-decoration: underline;
}
.articleSec > ul > li {
width: 100%;
display: flex;
}
.articleSec > ul > li a {
display: block;
width: 100%;
background: #F2F3F7;
border-radius: 10px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.16);
margin-bottom: 2.5rem;
}
.articleSec > ul > li a:hover {
-webkit-animation: buttonHover 0.3s forwards;
animation: buttonHover 0.3s forwards
}
.catParts {
background: #005792;
border-radius: 10px 0;
color: #fff;
width: 30%;
max-width: 150px;
padding: 0.4rem 0;
text-align: center;
}
.articleSec,.columnSec {
margin-bottom: 8rem;
}
.articleSec > p {
font-size: 1.2rem;
}
.articleSec dl  {
padding: 1.4rem;
}
.articleSec dl dt  {
font-size: 18px;
border-bottom: 3px solid #fff;
padding-bottom: 1rem;
margin-bottom: 1rem;
}
.tagParts {
padding: 0 1.4rem 1.4rem;
}
.tagParts ul {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
}
.tagParts ul li {
        font-size: clamp(0.75rem, 0.679rem + 0.3vw, 0.875rem);
border-radius: 20px;
margin-left: 0.5rem;
font-weight: bold;
color: #005792;
}
.quotation {
	text-align: right;
    margin-top: 5px;
	    font-size: 0.8rem;
}
.quotation a {
    text-decoration: underline;
    color: #005792;
}
.floatBtn {
	    position: fixed;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    height: 100px;
    justify-content: center;
    background: #cdddea;
	z-index: 1;
}
.floatBtn .one, .floatBtn .two {
    margin-top: 0px;
}
.floatBtn .one li, .floatBtn .two li {
    margin-top: 0px;
}
.floatBtn {
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}
.floatBtn.hidden {
  opacity: 0;
}
@media screen and (max-width: 768px) {

.lML > section > section {
	margin-top: 60px;
}
h1,.deluxePoint > div {
font-size: clamp(1.125rem, 0.946rem + 0.89vw, 1.375rem);
}
	h2 {
		margin-bottom: 20px;
	}
.tagList li a {
font-size: 0.875rem;}
.one,.two {
margin-top: 40px;
}
.two {
flex-wrap: wrap
}
.staffWrap {
flex-direction: column-reverse;
}
.staffSec h3 {
    margin-bottom: 10px;
    margin-top: 10px;
}
.staffWrap > div {
    margin-right: 0;
}
.staffWrap > figure {
    margin: auto;
}
.tabLeWrap > ul > li {
display: block;
}
.tabLeWrap > ul > li > span {
padding: 0.625rem 0.625rem 0;
display: block;
width: 100%;
}
.tabLeWrap > ul > li > div {
width: 100%;
padding: 0.625rem;
}
.consultationhours table th {
padding: 0.625rem;
}
.consultationhours table td {
color: #005792;
text-align: center;
padding: 0.625rem;
}
.consultationhours ul {
padding: 0.625rem 0.625rem 0;

}
.tabLeWrap .tel {
text-decoration: underline;
}
.snsWrap {
padding: 0.8rem 0.625rem 0;

}
.snsWrap > *:not(:last-child) {
margin-bottom: 0;
margin-right: 0.5rem;
}
.catParts {
padding: 0.2rem 0;
}
.floatBtn {
	height: auto;
	padding: 10px 0;
}
.floatBtn .two li:first-child {
	margin-bottom: 10px;
}
}