@charset "UTF-8";
/*
	Filename: common
	Version: 1.0.1
*/
.lato {
  font-family: "Lato", serif;
}
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.zoom {
  transition: transform 0.3s ease-in-out;
}
.zoom:hover {
  transform: scale(1.1);
}
.bright {
  transition: filter 0.3s ease-in-out;
}
.bright:hover {
  filter: brightness(1.1);
}
.no_link {
  pointer-events: none;
}
/*-----------------------------------------------------
	haeder
------------------------------------------------------*/
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 140px;
  background: #fff;
}
.header_top {
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  padding: 20px 30px 10px;
}
.header_l {
  width: 260px;
}
.header_l h1 {
  position: absolute;
  top: 2px;
  left: 0;
  margin: 0;
  font-size: 12px;
  font-weight: normal;
  padding-left: 30px;
}
.header_l a {
  display: inline-block;
  padding-top: 2px;
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}
.header_l a:hover {
  transform: scale(1.05);
}
.header_l img {
  width: 100%;
  height: auto;
  margin-bottom: 8px;
}
.header_l span {
  display: block;
  margin-top: -5px;
  padding: 2px 0px;
  background: #0078d4;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
.header_r, .header_r .sns {
  -webkit-box-align: center;
  align-items: center;
}
.header_r .sns a {
  display: inline-block;
  margin-right: 20px;
}
.header_r .sns a:nth-of-type(1) img {
  width: 35px;
  height: 35px;
}
.header_r .sns a:nth-of-type(2) img {
  width: 30px;
  height: 30px;
  margin-top: 1px;
}
.header_r .sns a:nth-of-type(3) img {
  width: 40px;
  height: 30px;
  margin-top: 1px;
}
.header_r .info {
  padding-left: 20px;
  border-left: 1px solid #999999;
}
.header_r .info p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #595959;
}
.header_nav {
  padding: 10px;
}
.header_nav ul.flex {
  -webkit-box-pack: center;
  justify-content: center;
  gap: 20px;
  list-style: none;
}
.header_nav ul.flex li a {
  display: block;
  width: 160px;
  max-width: 100%;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}
.header_nav ul.flex li a:hover {
  color: #0078d4;
}
@media screen and (max-width: 1200px) {
  .header_nav ul.flex {
    gap: 40px;
  }
  .header_nav ul.flex li a {
    width: auto;
  }
}
.sp_nav, #nav_inner {
  display: none;
}
@media screen and (max-width: 840px) {
  body.home header {
    height: 114px;
  }
  header {
    height: 112px;
  }
  .header_l {
    width: 212px;
  }
  
  .header_l span {
    font-size: 11px;
  }
  .header_r .sns a {
    margin-right: 5px;
  }
  .header_r .sns a:last-of-type {
    margin-right: 0;
  }
  .header_r .info {
    display: none;
  }
  .header_nav {
    display: none;
  }
	/* SPメニュー */
	.sp_nav {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		max-width: 100%;
		height: 30px;
		background: #555555;
	}
	#nav_btn {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
    cursor: pointer;
	}
	#nav_btn .fa-bars {
		font-size: 24px;
		color: #fff;
	}
	.open .menu_inner {
		visibility: visible;
		opacity: 1;
	}
	.open .menu-btn {
		border-color: #fff
	}
	.menu_inner {
		display: flex!important;
		justify-content: center;
		align-items: center;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.16);
		visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease-in-out, visibility 0.3s;
    z-index: 100;
	}
	.menu_inner .inner{
		position: relative;
    height: auto;
    padding: 30px;
    background: #FFFFFF;
    border-radius: 10px;
    box-shadow: 0px 6px 15px 0px rgba(0, 0, 0, 0.2);
    transform: translateY(100px);
    transition: transform 0.3s cubic-bezier(0.4, 0.4, 0, 1), opacity 0.3s ease-in-out;
    opacity: 0;
	}
  body.open .menu_inner {
    visibility: visible;
    opacity: 1;
  }
  body.open .menu_inner .inner {
    transform: translateY(0);
    opacity: 1;
  }
	.menu_inner .inner .fa-xmark{
		position: absolute;
		top:10px;
		right:10px;
		font-size: 32px;
	}
	.menu_inner ul {
		padding: 10px;
		margin: 40px 0px 40px;
		list-style: none;
	}
	.menu_inner li {
		width: 100%;
		text-align: center;
		border-bottom: 1px dotted #999999;
	}
	.menu_inner li a {
		display: block;
		padding: 15px 30px;
		font-size: 16px;
		color: #333;
		text-decoration: none;
	}
}
@media screen and (max-width: 640px) {
  .body header {
    height: 101px;
  }
  header {
    height: 98px;
  }
}
@media screen and (max-width: 510px) {
  .body header {
    height: 101px;
  }
  header {
    height: 98px;
  }
  .header_top {
    padding: 15px 20px 10px;
  }

  .header_l h1 {
    position: absolute;
    top: 2px;
    left: 0;
    margin: 0;
    font-size: 11px;
    font-weight: normal;
    padding-left: 20px;
  }
}
/*--------------------------------------------------------------
  side__Fixed
--------------------------------------------------------------*/
.side__Fixed {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  position: fixed;
  top: 210px;
  right: 0px;
  bottom: auto;
  left: auto;
  z-index: 999;
  width: auto;
  max-width: 100%;
  background: #fff;
  border: 1px solid #ff8e27ff;
  border-radius: 8px 0px 0px 8px;
}
.side__Fixed .inner {
  width: 80px;
}
.side__Fixed .inner > div {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  padding: 20px 0px;
}
.side__Fixed .inner > div a {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
}
.side__Fixed .tel,
.side__Fixed .web,
.side__Fixed .line {
  position: relative;
  width: 30px;
  height: 30px;
}
.side__Fixed .tel:before,
.side__Fixed .web:before,
.side__Fixed .line:before {
  content: '';
  position: absolute;
  top:0;
  width: 100%;
  height: 100%;
}
.side__Fixed .tel:before {
  background: center / cover no-repeat url("../img/common/tel.webp");
}
.side__Fixed .web:before {
  background: center / cover no-repeat url("../img/common/web.webp");
}
.side__Fixed .line:before {
  background: center / cover no-repeat url("../img/common/line.webp");
}
.side__Fixed .inner p {
  margin: 0;
  font-size: 12px;
  font-weight: 400;
}
.side__Fixed .inner .num1,
.side__Fixed .inner .num2 {
  background: rgb(255, 119, 00);
}    
.side__Fixed .inner .num1 p,
.side__Fixed .inner .num2 p {
  color: #fff;
}
.side__Fixed .inner .num4 p {
  color: rgb(255, 142, 39);
}
.side__Fixed .inner > div a div:before {
  transition: .3s cubic-bezier(.4,.4,0,1);
}
.side__Fixed .inner > div a:hover div:before {
  transform: scale(1.15);
}
@media screen and (max-width: 840px) {
  .side__Fixed {
    top: auto;
    right: auto;
    bottom: 0;
    left: auto;
    width: 100%;
  }
  .side__Fixed .inner {
    display: flex;
    width: 100%;
  }
  .side__Fixed .inner > div {
    width: 33.333%; /* ← 3分割に修正 */
    padding: 10px 0;
  }
  .side__Fixed .tel,
  .side__Fixed .web,
  .side__Fixed .line {
    width: 20px;
    height: 20px;
  }
}


/*--------------------------------------------------------------
  post
--------------------------------------------------------------*/
.sticky {
	display: block;
}
.updated:not(.published) {
	display: none;
}
.comment-content a {
	word-wrap: break-word;
}
.bypostauthor {
	display: block;
}
.widget {
	margin: 0 0 1.5em;
}
.widget select {
	max-width: 100%;
}
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}
.custom-logo-link {
	display: inline-block;
}
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
.wp-caption-text {
	text-align: center;
}
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}
.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}
.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}
.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}
.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}
.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}
.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}
.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}
.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}
.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}
.gallery-caption {
	display: block;
}
.mt0{margin-top: 0!important;}
.mt10{margin-top: 10px!important;}
.mt20{margin-top: 20px!important;}
.mt30{margin-top: 30px!important;}
.mt40{margin-top: 40px!important;}
.mt50{margin-top: 50px!important;}
.mt60{margin-top: 60px!important;}
.mt100{margin-top: 100px!important;}

.mb0{margin-bottom: 0!important;}
.mb10{margin-bottom: 10px!important;}
.mb20{margin-bottom: 20px!important;}
.mb30{margin-bottom: 30px!important;}
.mb40{margin-bottom: 40px!important;}
.mb50{margin-bottom: 50px!important;}
.mb60{margin-bottom: 60px!important;}
.mb100{margin-bottom: 100px!important;}
.m0{margin:0!important;}
@media(max-width:840px){
	.mt100{margin-top: 60px!important;}
	.mb100{margin-bottom: 60px!important;}
}
.pt-100{padding-top: 100px!important;}
.pb-100{padding-bottom: 100px!important;}
.px-100{padding: 0 100px!important;}
.py-100{padding: 100px 0!important;}
.py-5{padding: 5px 0!important;}
.py-10{padding: 10px 0!important;}
.py-15{padding: 15px 0!important;}
.pt0{padding-top: 0!important;}
.pb0{padding-bottom: 0!important;}
@media(max-width:840px){
	.pt-100{padding-top: 60px!important;}
	.pb-100 {padding-bottom: 60px !important;}
	.px-100{padding: 0 60px!important;}
	.py-100{padding: 60px 0!important;}
}
.align_c{text-align: center!important;}
.align_l{text-align: left!important;}
.align_r{text-align: right!important;}
.bgwhite{background: white!important;}
.bgyellow{background: #f4eba3!important;}
.bgblue{background: #9dbfd9!important;}
.bglightblue{background: #cbdeec!important;}
.bglightblues{background: #ebf4fb!important;}
.bggray{background: #EEEEEE!important;}
.bgdarkgray{background: #dddddd!important;}
.h_auto{height: auto!important;}
.fs18{font-size:18px!important;}
.fs20{font-size:20px!important;}
.fs24{font-size:24px!important;}
@media(max-width:840px){
	.fs24{font-size:20px!important;}
}
.fw-b{font-weight: bold!important;}
.c_white{color: white!important;}

/*--------------------------------------------------------------
  common
--------------------------------------------------------------*/
.container {
  width: 1080px;
  margin: auto;
}
/*--------------------------------------------------------------
heading
--------------------------------------------------------------*/
.heading {
  text-align: center;
  display: grid;
  align-items: center;
  gap: 10px;
  justify-content: center;
  position: relative;
  margin-bottom: 80px;
}
.heading p {
  color: #9dbfd9;
  font-size: 64px;
  font-weight: 500;
  line-height: 1;
  margin: 0;
}
.heading h2{
  color: #6e6e6e;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  margin: 0;
}

@media(max-width:640px){
  .home .heading {
    margin-bottom:0;
  }
  .heading p {
    font-size: 40px;
  }
  .heading h2{
    font-size: 14px;
  }
}

/*-----------------------------------------------------
	ページネーション
------------------------------------------------------*/
.pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  margin-top: 50px;
  margin-bottom: 120px;
}
a.page-numbers, .pagination .current {
  display: block;
  margin: 0 3px;
	padding: 7px 9px;
	border: 1px solid #363433;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
	text-decoration: none;
}
span.page-numbers.dots {
  margin-right: 10px;
  margin-left: 10px;
  font-size: 14px;
}
.pagination .current, a.page-numbers:hover {
	background: #363433;
	border: 1px solid #363433;
	color: #fff;
  opacity: 1;
}
a.page-numbers.next, a.page-numbers.prev {
  position: relative;
  width: 27.78px;
  height: 30px;
  margin: 0 10px;
  background: #B2A07E;
  border: 1px solid #B2A07E;
}
a.page-numbers.next {
  margin-right: 0;
}
a.page-numbers.prev {
  margin-left: 0;
}
a.page-numbers.next img, 
a.page-numbers.prev img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}
a.page-numbers.prev img {
  transform: translate(-50%, -50%) scaleX(-1);
  -webkit-transform: translate(-50%, -50%) scaleX(-1);
}
a.page-numbers.next:hover, a.page-numbers.prev:hover {
	background: #B2A07E;
  opacity: .6;
}
@media screen and (max-width: 750px) {
  .pagination {
    margin-bottom: 80px;
  }
}
/*-----------------------------------------------------
	footer
------------------------------------------------------*/
footer {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 40px;
  width: 100%;
  height: auto;
  padding: 50px 30px 50px;
  background: #626262;
}
.footer_logo img {
  width: 220px;
  mix-blend-mode: screen;
}
.others_site {
  display: flex;
  align-content: center;
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin: 0;
  padding: 20px 60px 20px 30px;
  border-bottom: 1px dotted #c8c8c8;
  border-top: 1px dotted #c8c8c8;
}
.others_site a {
  display: block;
  padding-left: 10px;
  border-left: 3px solid #999999;
  font-family: "Lato";
  font-size: 13px;
  font-weight: 400;
  color: #dddddd;
}
.others_site a:hover {
  background: #dddddd36;
}
footer .footer_nav ul.menu {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}
footer .footer_nav ul#menu-treatment {
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 12px 0px;
  justify-content: flex-start;
  width: 240px;
  max-width: 100%;
}
footer .footer_nav ul#menu-treatment li {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 12px 4px;
  justify-content: flex-start;
  width: 120px;
  padding: 0px;
}
footer .footer_nav ul#menu-treatment li:first-child {
  width: 100%;
}
footer .footer_nav ul#menu-treatment li a {
  margin-left: 12px;
  padding: 0;
  font-size: 12px;
}
footer .footer_nav ul#menu-treatment li a::before {
  content: '\f068';
  position: relative;
  margin-right: 5px;
  font-family: "Font Awesome 6 Free";
  font-size: 10px;
  font-weight: 600;
}
footer .footer_nav ul#menu-treatment li:first-child a::before {
  display: none;
}
footer .footer_nav ul#menu-treatment li:first-child a {
  margin-left: 0;
  font-size: 14px;
}
/*--------------------------------------------------------------
  footer_nav
--------------------------------------------------------------*/
.footer_nav {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 24px;
  justify-content: center;
}
.footer_nav .inner {
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  gap: 80px;
  justify-content: space-between;
  width: 1080px;
}
.footer_nav .inner>div {
  width: 25%;
}
.footer_nav .inner .sns {
  display: flex;
  align-items: flex-start;
  flex: 1;
  flex-direction: row;
  gap: 16px;
  justify-content: flex-start;
}
.footer_nav * {
  color: #fff;
}
.footer_nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer_nav ul li a {
  display: block;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #FFFFFF;
}
.footer_nav ul li a:hover {
  box-shadow: 0px 1px #fff;
}
.footer_nav .inner .sns a {
  font-size: 24px;
}
.footer_nav .gmaps {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 4px;
  justify-content: flex-start;
  margin-left: auto;
}
.footer_nav .gmaps a {
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.6;
  color: #cececeff;
}
.footer_nav .gmaps a:hover {
  opacity: .7;
}
/*--------------------------------------------------------------
  banners
--------------------------------------------------------------*/
.banners .tlt {
  display: table;
  margin: auto;
  padding: 5px 30px;
  background: #555555;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  color: #FFFFFF;
  text-align: center;
}
.banners p:not(p.tlt) {
  margin-top: 1em;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #EEEEEE;
}
.banners .inner {
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 80px 40px;
  justify-content: center;
  margin: 40px 0px 0px 0px;
}
.banners .num1,.banners .num2 {
  width: 520px;
}
.banners .inner a img {
  max-width: 100%;
  height: auto;
  transition: .3s cubic-bezier(.4,.4,0,1);
}
.banners .inner a:hover img {
  transform: scale(1.05);
}
.banners .num1 p a img {
  border: 2px solid #39b6fa;
}
.banners .num3{
  text-align: center;
}
@media screen and (max-width: 640px) {
  .banners .inner {
    gap: 30px 40px;
    margin: 0;
  }
  .banners .num1, .banners .num2{
    width: 100%;
  }
}



@media screen and (max-width: 840px) {
  .recruit .heading p{
      font-size: 28px;
      height: auto;
  }
  .recruit .heading h2{
      font-size: 16px;
  }
  .recruit p{
      font-size: 12px;
  }
}

/*--------------------------------------------------------------
  copyright
--------------------------------------------------------------*/
.copyright p {
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.07em;
  color: #dddddd;
}
@media screen and (max-width: 840px) {
  .copyright p {
    margin-bottom: 50px;
  }
}
/*--------------------------------------------------------------
  footer_page
--------------------------------------------------------------*/
.footer_page_content h2{
  display: flex;
  justify-content: center;
  background: rgba(0, 0, 0, 0.0);
  color: #EEEEEE;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.4;
  padding: 2px 0px;
  text-align: center;
  margin: 0 0 40px;
}
.footer_page{
  color: white;
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
  margin: 0px 0px 40px 0px;
}
.footer_page .num1,.footer_page .num2{
  display: flex;
  flex-direction: column;
  width: calc(50% - 40px * 0.5);
  max-width: calc(50% - 40px * 0.5);
}
.footer_page .num1 .link{
  display: flex;
  align-content: center;
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 14px 20px;
  justify-content: flex-start;
  margin: 20px 0px 0px 0px;
  width: 100%;
}
.footer_page .num1 .link a{
  display: flex;
  align-items: center;
  background: #FFFFFF;
  border-radius: 8px;
  flex-direction: row;
  gap: 5px;
  height: auto;
  justify-content: center;
  padding: 10px 0px;
  width: calc(100% - 20px * 0);
  color: #444444;
  font-size: 16px;
  font-weight: 400;
}
.footer_page .num2{
  display: flex;
  align-items: flex-start;
  gap: 24px;
  justify-content: center;
}
.footer_page .num2 h3{
  background: #555555;
  color: #dddddd;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  margin: 0px 0px 8px 0px;
  padding: 2px 16px;
  display: inline-block;
}
.footer_page .num2 p{
  color: #dddddd;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  margin: 0;
}
.footer_page .num2 .add a{
  display: flex;
  align-items: center;
  background: #FFFFFF;
  border-radius: 8px;
  flex-direction: row;
  gap: 5px;
  justify-content: center;
  margin: 10px 0px 0px 0px;
  padding: 10px 0px;
  width: 50%;
  color: #444444;
  font-size: 16px;
  font-weight: 400;
}
.footer_page a:hover{
  background: #99bfdc!important;
  color: white!important;
}
@media screen and (max-width: 1200px) {
  .others_site,.footer_nav {
    width: 100%;
    margin: auto;
  }
  .footer_nav {
    padding-right: 80px;
  }
  .footer_nav .inner {
    gap: 6.667vw;
    width: 100%;
  }
  .footer_nav .inner>div{
    width: auto;
  }
}
@media screen and (max-width: 840px) {
  .footer_page{
    width: 80%;
    max-width: 80%;
    margin: auto;
  }
  .footer_page .num1, .footer_page .num2 {
    width: 100%;
    max-width: 100%;
  }
  .footer_page .num1{
    flex-direction: column-reverse;
  }
  .footer_page_content h2{
    margin-bottom: 20px;
  }
  .footer_page .num1 .link {
    margin: 10px 0px 20px;
  }
  .footer_page .num1 .link a{
    padding: 15px 0;
  }
  .others_site {
    padding-right: 0;
    padding-left: 0;
  }
  .footer_nav {
    padding-right: 0;
  }
  .footer_nav .inner{
    flex-wrap: wrap;
    gap: 40px;
  }
  .footer_nav .inner>div {
    width: 45%;
  }
}
@media screen and (max-width: 640px) {
  .others_site, .footer_nav {
    width: 100%;
    justify-content: start;
  }
  .others_site a {
    width: 100%;
  }
  .footer_nav .inner {
    gap: 20px;
  }
  .footer_nav .gmaps a {
    text-align: right;
  }
}
/*--------------------------------------------------------------
pagetop
--------------------------------------------------------------*/
.pagetop {
	align-content: center;
	align-items: center;
	background: #9dbfd9;
	border-radius: 50%;
	bottom: 50px;
	flex: none;
	flex-direction: column;
	flex-wrap: nowrap;
	height: 60px;
	justify-content: center;
	left: auto;
	margin: 0 0 0 0;
	opacity: 0.8;
	position: fixed;
	right: 10px;
	top: auto;
	width: 60px;
	max-width: 100%;
	z-index:999;
}
.pagetop:hover { 
	background: #555555;
}
.pagetop .fa-arrow-up{
	color: #FFFFFF;
	font-size: 36px;
	align-content: center;
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: center;
	overflow: visible;
	overflow-wrap: anywhere;
	word-break: break-word;
}
@media screen and (max-width: 640px) {
	.pagetop{
		bottom: 90px;
	}
}
/*-----------------------------------------------------
	others
------------------------------------------------------*/
.tb {
	display: none !important;
}
.sp {
	display: none !important;
}

/*---------------------------------------------------------------------------------------------------------------------------------------------------------------
	~840px
----------------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 840px) {
	a[href^="tel:"] {
		pointer-events: auto;
	}
	/*-----------------------------------------------------
		others
	------------------------------------------------------*/
	.tb {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
}

@media screen and (max-width: 640px) {
  .tb {
		display: none !important;
	}
  .sp {
		display: block !important;
	}
}



/* 2025/09/03 */
/* LINE専用デザイン */
.side__Fixed .inner .num4 {
  background-color: #00B900; /* LINE公式カラー */
}

.side__Fixed .inner .num4 p {
  color: #fff; /* 文字を白に */
}

.side__Fixed .inner .num4 .line:before {
  filter: brightness(0) invert(1); /* アイコンを白く変換 */
}

/* 2025/09/29追記 */
.side__Fixed .sf_tel,
.side__Fixed .sf_web {
	position: relative;
}

.side__Fixed .sf_tel:before {
	font-size: 10px;
	position: absolute;
	top: -16px;
	left: 50%;
	width: 100%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	padding: 3px 0;
	text-align: center;
	content: 'お気軽にご相談ください';
	color: #000;
	border-radius: 20px;
	background: #ff0;
	border: 3px solid #fff;
}

.side__Fixed .sf_web:before {
	font-size: 10px;
	position: absolute;
	top: -16px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	padding: 3px 0;
	width: 100%;
	text-align: center;
	content: '24時間対応';
	color: #000;
	border-radius: 20px;
	background: #ff0;
	border: 3px solid #fff;
}

@media only screen and (max-width: 840px) {
	.side__Fixed .sf_tel:before {
		padding: 3px 5px;
		width: auto;

	}

	.side__Fixed .sf_web:before {
		padding: 3px 5px;
		width: auto;

	}
}

@media only screen and (max-width: 640px) {
	.side__Fixed .sf_tel:before {
		padding: 3px;
		width: 100%;

	}

	.side__Fixed .sf_web:before {
		width: 65%;

	}
}

@media only screen and (max-width: 320px) {
	.side__Fixed .sf_tel:before {
		font-size: 9px;

	}
}