@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
@import "scss/parts.css";

body{
	font-family: 'Noto Sans JP', sans-serif;
}
p{
	font-size:1vw;
}
.tsuku{
	font-family: "TsukuARdGothicStd-B";
	font-family: "FOT-筑紫A丸ゴシック Std B";
}
.old{
	font-family: "FOT-筑紫Aオールド明朝 Pr6 M";
	font-family: "TsukuAOldMinPr6-M";
}

@media screen and (min-width:600px) {
	.sp{
	display: none;
}
}
@media screen and (max-width:899px) {
	.pconly{
		display: none;
	}
}
@media screen and (min-width:600px) and (max-width:899px){
	p{
	font-size:1.4vw;
}
}
@media screen and (max-width:599px){
	p{
	font-size:3.5vw;
}
	.pc{
	display: none!important;
}
}
#nav li a {
  display: block;
  color: #000;
  position: relative;
}

#nav .menu-item-has-children > a:after {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
#nav .menu-item-has-children > a.open:before{
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
#nav .menu-item-has-children > a.open:after{
  background: transparent;
}
#nav .menu-item-has-children .sub-menu {
  display: none;
}
@media only screen and ( max-width : 767px ) {
	#nav .menu-item-has-children > a:after,#nav .menu-item-has-children > a:before {
  display: block;
  content: "";
  position: absolute;
  top: 0; 
  bottom: 0;
  right: 20px;
  margin: auto;
  width: 10px;
  height: 1px;
  background: #fff;
  transition: .2s;
}
  .overlay {
    width: 0;
    height: 0;
    position: fixed;
    z-index: 11;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .5s;
    background: rgba(255,255,255,.7);
  }
  .overlay.open {
    width: 100%;
    height: 100%;
    opacity: 1;
  }
  #main {
    transition: all .5s;
    min-height: 100vh;
  }
  #main.open {
    position: fixed;
    width: 100%;
  }
  #menu_btn {
    top: 7px;
    right: 15px;
    transition: .3s;
    cursor: pointer;
    position: fixed;
    z-index: 9999;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu-trigger {
    width: 35px;
    height: 25px;
    position: relative;
  }
  .menu-trigger span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
    transition: all .5s;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
    width: 70%;
    top: 12px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
	#menu_btn.active .menu-trigger span{
		background:#fff;
	}
  #menu_btn.active .menu-trigger span:nth-of-type(1) {
    transform: translateY(7px) rotate(-45deg);
  }
  #menu_btn.active .menu-trigger span:nth-of-type(2) {
    opacity: 0;
  }
  #menu_btn.active .menu-trigger span:nth-of-type(3) {
    transform: translateY(-15px) rotate(45deg);
  }
  #nav {
    width:90vw;
    height: 100vh;
    overflow: auto;
    padding: 90px 0;
    background: #43B2EC;
    position: fixed;
    top: 0;
    right:0;
    z-index: 12;
    transform: translate(90vw);
    transition: all .5s;
  }
  #nav.open {
    transform: translateZ(0);
  }
  #nav li {
    padding: 0 20px;
  }
  #nav li a {
    position: relative;
    padding: 20px;
    color: #fff;
  }
  #nav .menu-item-has-children .sub-menu {
    padding: 20px;
  }
  #nav .menu-item-has-children > a:first-of-type {
    position: relative;
    padding-right: 2em;
  }
  #nav .menu-item-has-children > a.open:first-of-type {
    color: #dad4ec;
  }
  #nav .menu-item-has-children .sub-menu li {
    padding: 0;
    margin-bottom: 20px;
  }
  #nav .menu-item-has-children .sub-menu li:last-child {
    margin-bottom: 0;
  }
  #nav .menu-item-has-children .sub-menu li a {
    padding: 0;
  }
}

@media print, screen and ( min-width : 768px ) {
  #menu_btn,.overlay {
    display: none;
  }
  #nav ul {
    display: flex;
    flex-wrap: wrap;
	   position: relative;
	  justify-content: center;
  }
  #nav li {
   
	  font-weight:bold;
  }
  #nav li a {
    padding: 20px;
	  font-size:1vw;
  }
  #nav .menu-item-has-children > a {
    padding-right: 40px;
  }
  #nav .menu-item-has-children > a.open:first-of-type,#nav .current-menu-item a {
    color: #357AA8;
  }
  #nav .current-menu-item li a {
    color: #fff;
  }
	#nav .menu-item-has-children > a:after,#nav .menu-item-has-children > a:before {
  display: block;
  content: "";
  position: absolute;
  top: 0; 
  bottom: 0;
  right: 20px;
  margin: auto;
  width: 10px;
  height: 2px;
  background: #1a1a1a;
  transition: .2s;
}
  #nav li ul.sub-menu {
    background: #DBEBF5;
    position: absolute;
    width: 100vw;
	 margin: 0 calc(50% - 50vw);
    left:0;
    top: 100%;
    padding: 10px 0;
	  display: -webkit-box;
	  display: flex;
	  justify-content: space-around;
  }
  #nav li ul.sub-menu li {
    width: 23%;
	  display: inline-block;
  }
  #nav li ul.sub-menu li a {
    line-height: 1.6em;
    color: #1a1a1a;
    padding: 10px 20px;
  }
  #nav li ul.sub-menu li a:hover {
    color: #357AA8;
  }
}
/* ---------------------------------------------------------------------------------------------

　   HEADER 

--------------------------------------------------------------------------------------------- */
header {
  width:100%;
  position: fixed;
  top: 0;
	left:0;
  z-index: 10;
	padding:0 3vw;
	background:#fff;
}
header #logo a {
  display: block;
}

@media only screen and ( max-width : 767px ) {

}
@media print, screen and ( min-width : 768px ) {

  header #logo {
    width: 25%;
  }
}

.description{
	text-align: center;
	margin:0.5em 0;
}
.headerInner{
	width:100%;
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.headContact{
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	align-items:flex-start;
	width:42%;
}

.tel{
	line-height: 1;
}
.tel a{
	position:relative;
	color:#367BA8;
	font-size:2.6vw;
	font-weight: bold;
}
.tel a::before{
	content: '\f879';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
	font-size:2vw;
	position:relative;
	top:-0.1em;padding-right:0.3em
}
.bizInfo,.closed p{
	font-size:0.8vw;
}
.bizInfo dl dt{
	margin-right:1em;
}

.contactBtn{
	width:16vw;
}
@media screen and (min-width:600px) and (max-width:899px){
	.headContact{
		width:55%;
	}
}
@media screen and (max-width:599px){
	.description,.headContact{
		display: none;
	}
header {
  width: 100%;
  position: fixed;
  top: 0;
	padding:5vw 3vw
}
	  header #logo {
    width: 40%;
  }
}

.fv{
	margin-top:10vw;
	position:relative;
	aspect-ratio: 1/ 0.563;
	background:url("img/webp/fv2.webp") no-repeat center center /contain;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding:0 10vw;
}
.fv h2{
	line-height: 1.8;
	color:#fff;
	font-family: "FOT-筑紫A丸ゴシック Std D";
	font-family: "TsukuARdGothicStd-B";
	font-size:1.8vw;
	text-shadow:2px 2px 6px #000;
}
.fv h2 span{
	font-size:3.5vw;
	color:#367BA8;
	background:#fff;
	padding:0.05em 0.2em;
	text-shadow:0 0 0 #fff;
	line-height: 2;
}
@media screen and (min-width:600px) and (max-width:899px){
	.fv{
	margin-top:18vw;
	}
	.fv h2{
		font-size:2.4vw;
	}
	.fv h2 span{
	font-size:4.5vw;
	}
}
@media screen and (max-width:599px){
	.fv{
	margin-top:12vw;
	position:relative;
	aspect-ratio: 1/ 1.5;
		background:url("img/webp/fv3.webp") no-repeat center center /cover;
		justify-content:center;
	}
	.fv h2{
		font-size:5vw;
	}
	.fv h2 span{
	font-size:7vw;
	}
}
.bluBg{
	background:#DBECF5;
}

.container{
	width:90%;
	margin:0 auto;
}
.nayamiFront{
	color:#0F3A57;
	font-size:2.4vw;
	letter-spacing: 0.1em;
	margin-bottom:2vw;
}
.mainTitle1{
	color:#0F3A57;
	font-size:1.8vw;
	letter-spacing: 0.1em;
	margin-bottom:2vw;
}
.mainTitle1 span{
	font-size:1vw;
	padding-left:1em;
}
.infoList{
	margin-bottom:5vw;
}
.infoList dt{
	font-size:0.9em;
	padding-top:1vw;
		padding-left:1em;
}
.infoList dd{
	font-weight: 500;
	font-size:1vw;
	letter-spacing: 0.1em;
	padding-bottom:1vw;
	border-bottom:solid 1px #fff;
	line-height: 1.5;
	
	padding-left:1em;
}
.infoList a{
	display: block;
}
.infoList a:hover{
	background:#fff!important;
}
.mainBtn1 {
	text-align: center;
	font-weight: bold;
}
.mainBtn1 a{
	background: -webkit-linear-gradient(90deg, rgba(67,178,236,1) 0%, rgba(54,123,168,1) 100%);
	background: linear-gradient(90deg, rgba(67,178,236,1) 0%, rgba(54,123,168,1) 100%);
	display: inline-block;
	padding:1em;
	width:20vw;
	color:#fff;
	border:solid 2px #fff;
	position:relative;
}
.mainBtn1 a::after{
	content:'\f054';
	font-family: 'Font Awesome 5 Free';
  font-weight: 900;
	position:absolute;
	right:10%;
}
.accessmap{
	display: block;
	width:100%;
	aspect-ratio:1/0.563;
	margin-bottom:2vw;
}
.box1 address{
	font-size:1vw;
	margin-bottom:1.5em;
}
.mapBtn {
	text-align: center;
	font-weight: bold;
	margin-bottom:1em;
}
.mapBtn a{
	display: inline-block;
	width:20vw;
	background:#22AB39;
	color:#fff;
	padding:1em;
	border:solid 2px #fff;
	position:relative;
}
.mapBtn a::after{
	content:'\f5a0';
	font-family: 'Font Awesome 5 Free';
  font-weight: 900;
	position:absolute;
	right:10%;
}
@media screen and (min-width:600px) and (max-width:899px){
	.mainTitle1,.nayamiFront{
	font-size:2.8vw;
	}
	.infoList dd{
	font-size:1.6vw;
	}
	.mainBtn1 a,.mapBtn a{
		width:30vw
	}
}
@media screen and (max-width:599px){
	.mainTitle1,.nayamiFront{
	font-size:5.2vw;
	}
	.mainTitle1 span{
	font-size:3.5vw;
}
	.infoList{
	margin-bottom:5vw;
}
.infoList dt{
	font-size:3.5vw;
	padding-top:4vw;
		padding-left:0;
}
.infoList dd{
	font-size:3.8vw;
	padding-bottom:4vw;
	padding-left:0;
}
	.infoList{
	margin-bottom:12vw;
}
	.mainBtn1 a{
		width:80vw;
		margin-bottom:12vw;
	}
	.box1 address{
		font-size:3.5vw;
	}
	.mapBtn a{
		margin-bottom:6vw;
		width:80vw;
	}
}

.ts{
	font-size:1.2vw;
	font-weight: bold;
}
.ts span{
	border:solid 2px #000;
	padding:0.6em 4em;
	margin-bottom:2vw;
	display: inline-block;
}
.mainTitle2{
	font-size:2.2vw;
	color:#0F3A57;
	margin-bottom:1vw;
}
.mainTitle2 span{
	position:relative;
	z-index: 5;
}
.mainTitle2 span::before{
	content:'';
	width:100%;
	height:0.4em;
	background:#E0E7E8;
	position:absolute;
	left:0;
	bottom:-0.1em;
	z-index: -1;
}
.def{
	font-size:1.25vw;
	line-height: 1.8;
}
.name{
	font-weight: bold;
	text-align: center;
}
@media screen and (min-width:600px) and (max-width:899px){
	.ts{
	font-size:1.5vw;
	}
		.def{
	font-size:1.6vw;
}
	.mainTitle2{
	font-size:2.8vw;
	}
}
@media screen and (max-width:599px){
	.mainTitle2{
	font-size:5.6vw;
	}
	.ts{
	font-size:3.6vw;
	}
	.def{
	font-size:3.8vw;
	}
}
.symptomWrap{
	width:80%;
	margin:6vw auto 3vw;
}
.symptom{
	text-align: center;
	margin-bottom:2vw;
}
.symptom h3{
	font-size:1.4vw;
}
.symptom img{
	width:40%;
	margin:0 auto 1vw;
}
@media screen and (min-width:600px) and (max-width:899px){
	.symptomWrap{
	width:90%;
	}
	.symptom{
	margin-bottom:4vw;
}
	.symptom h3{
	font-size:2vw;
}
}
@media screen and (max-width:599px){
	.symptomWrap{
	width:95%;
	}
	.symptom{
	margin-bottom:6vw;
}
.symptom h3{
	font-size:4vw;
}
	.symptom img{
	margin:0 auto 4vw;
}
}
.os{
	background:#E0E7E8;
	padding:5vw;
	position:relative;
}
.os h2{
	font-size:1.8vw;
	color:#1a1a1a;
	margin-bottom:3vw;
}
.otherSymptoms li{
	width:28%;
	text-align: center;
	color:#009F93;
	font-weight: bold;
	background:#fff;
	padding:1.2em;
	border-radius:999px;
	margin-bottom:3vw;
	font-size:1.3vw;
}
@media screen and (min-width:600px) and (max-width:899px){
	.os h2{
	font-size:2.4vw;
	}
	.otherSymptoms li{
		font-size:1.8vw;
		padding:1em;
	}
}
@media screen and (max-width:599px){
	
	.os{
	padding:10vw 5vw;
}
	.os h2{
	font-size:4vw;
	margin-bottom:7vw;
	}
	.otherSymptoms li{
		width:46%;
		font-size:3.5vw;
		padding:0.8em;
	}
	.otherSymptoms::after{
		content:'';
		width:45%;
		display: block;
	}
}

.nayamiList li span{
	font-size:1.6vw;
	font-weight: bold;
	color:#367BA8;
	margin-bottom:1.3vw;
	background:#EDF1F2;
	border-radius:999px;
	display: inline-block;
	padding:0.5em;
	list-style-type: disc;
}


.konb{
	background:#0F3A57;
	color:#fff!important;
	padding:7vw 6vw;
}
.konb h2{
	color:#fff!important;
}
.strengthList{
	margin-top:3vw;
}
.strengthList li{
	width:46%;
	font-size:1.5vw;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom:2em;
}
.voiceList {
	margin-top:4vw;
}
.voiceList li{
	width:46%;
	text-align: center;
	margin-bottom:2vw;
}
.voiceList li h3{
	font-size:1.4vw;
	margin-bottom:2vw;
}
.voiceList li h3 span{
	border-bottom:solid 2px #000;
}
.voiceList li p{
	font-weight: bold;
	font-size:1.2vw;
	line-height: 1.5;
	max-width:70%;
	display: inline-block;
	text-align: left;
}
.voiceList li iframe{
	display: block;
	width:100%;
	aspect-ratio: 1 / 0.563;
	margin-bottom:2vw;
}
@media screen and (min-width:600px) and (max-width:899px){
	.nayamiList li span{
	font-size:2.3vw;
		padding:0.5em 1em;
	}
	.strengthList li{
		width:49%;
		font-size:2vw;
	}
	.voiceList li h3{
	font-size:2.2vw;
	}
	.voiceList li p{
		font-size:1.8vw;
		max-width:80%;
	}
}

@media screen and (max-width:599px){
	.nayamiList {
		margin-top:8vw;
	}
	.nayamiList li span{
	font-size:4vw;
		padding:0.5em 1em;
		margin-bottom:3vw;
	}


	.strengthList{
	margin-top:6vw;
}
	.strengthList li{
		width:100%;
		font-size:4vw;
	}
	.voiceList li{
		width:100%;
		margin-bottom:6vw;
	}
	.voiceList li h3{
	font-size:4.5vw;
	}
	.voiceList li iframe{
		margin-bottom:6vw;
	}
	.voiceList li p{
		font-size:3.8vw;
		max-width:90%;
	}
}

#js_review_wrap{
	border:solid 6px #f1f1f1;
	width:80%;
	margin:5vw auto 2.5vw;
	padding:4vw;
}

.list-review-output {
  display: -webkit-box-;
  display: flex;
  flex-wrap: wrap;
  position: relative;
margin:2vw auto;
}
.list-review-output .ttl {
  width: 5em;
}
.list-review-output .data {
  width: calc(100% - 5em);
  margin: 0;
}
/* レート */
.list-review-output::before {
  position: absolute;
  top: -1.4em;
  left: 0;
  color: #FFD704;font-size:120%;
}
.list-review-output[data-rate='1']::before {
  content: "★";
}
.list-review-output[data-rate='2']::before {
  content: "★★";
}
.list-review-output[data-rate='3']::before {
  content: "★★★";
}
.list-review-output[data-rate='4']::before {
  content: "★★★★";
}
.list-review-output[data-rate='5']::before {
  content: "★★★★★";
}
.containerInner{
	width:60%;
	margin:0 auto;
}
.footerBox{
	width:49%;
}
.footerLogo{
	width:100%;
	margin-bottom:1vw;
}
.footerBox address{
	font-size:1vw;
	margin-bottom:1vw;
}
.footTel{
	line-height: 1;
}
.footTel a{
	position:relative;
	color:#367BA8;
	font-size:2.6vw;
	font-weight: bold;
}
.footTel a::before{
	content: '\f879';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
	font-size:1.8vw;
	position:relative;
	top:-0.1em;padding-right:0.3em
}
.kigaru{
	text-align: center;
	font-weight: bold;
}
.dot{
	color:#367BA7;
}
.footerBox iframe{
	display: block;
	width:100%;
	aspect-ratio:1 / 0.563;
}
@media screen and (min-width:600px){
.schedule {
    width: 100%;
	border-top:solid 1px #A8A8A8;
	margin-top:3vw;
  }
	.schedule thead{
		width:20%;
	}
	.schedule tr td, 
	.schedule tr th{
		text-align: center;
		padding:1vw 0;
		border-bottom:solid 1px #A8A8A8;
	}
	.schedule tbody{
		width:80%;
	}
	.schedule tbody tr td{
		width:10%;
		vertical-align: middle;
	}
}
@media screen and (max-width:599px){
	#js_review_wrap{
	border:solid 4px #f1f1f1;
	width:100%;
		padding:8vw 6vw;
		height:50vh;
		overflow-x: scroll;
		margin:10vw auto 4vw;
	}
	.containerInner{
	width:100%;
	}
	.list-review-output {
		margin-top:10vw;
	}
	.footerBox{
	width:100%;
}

	.schedule {
    width: 100%;
		margin:6vw 0;
		border-top:solid 1px #A8A8A8;
  }
  .schedule tr {
    display: block;
    float: left;
  }
  .schedule tr td, 
  .schedule tr th {
    border-left: none;
    display: block;
    padding:5vw 0;
	  border-bottom:solid 1px #A8A8A8;
  }
  .schedule thead {
    display: block;
    float: left;
    width: 50%;
  }
  .schedule thead tr {
    width: 100%;
  }
  .schedule tbody {
    display: block;
    float: left;
    width: 50%;
  }
  .schedule tbody tr {
    width: 100%;
	  text-align: center;
  }
  .schedule tr td + td {
    border-left: none;
  }
.footerBox iframe{
	aspect-ratio:1 / 1;
}
	.footerLogo{
	width:80%;
	margin:0 auto 6vw;
}
.footerBox address{
	font-size:4vw;
	text-align: center;
	}
	.footTel{
	text-align: center;
}
	.footTel a{
	font-size:9vw;
	}
	.footTel a::before{
		font-size:8vw;
	}
}
.copyright{
	text-align: center;
	color:#fff;
	background: -webkit-linear-gradient(-90deg, rgba(54,123,168,1) 0%, rgba(67,178,236,1) 100%);
	background: linear-gradient(-90deg, rgba(54,123,168,1) 0%, rgba(67,178,236,1) 100%);
	padding:1em 0;
}
.pageTop{
	margin-top:10vw;
}
.post p{
	margin-bottom:1.5em;
}
.post p span{
	position:relative;
	z-index: 5
}
.post p span::before{
	content:'';
	width:100%;
	height:0.4em;
	background:#DBECF5;
	position:absolute;
	left:0;
	bottom:0;z-index: -1
}
.inchou{
	font-weight: bold;
}
.pageTitle1{
	color:#0F3A57;
	font-size:2vw;
}
.pageTitle1 span{
	position:relative;
	line-height: 1.5;
}
.pageTitle1 span::before{
	content:'';
	width:4.5vw;
	height:2px;
	background:#0F3A57;
	position:absolute;
	bottom:-20px;
	left:50%;
	transform: translateX(-50%);
}
.rb-l{
	background:url("img/svg/logosmall.svg") no-repeat right center /10%;
}
.comment1{
	background:#E0E7E8;
	padding:2.5vw;
}
.comment1 p{
	color:#367BA8;
	font-size:1.8vw;
	font-weight: bold;
}
.reason{
	border:solid 2px #0F3A57;
	text-align: center;
	position:relative;
	margin-top:6vw;
}
.reason h2{
	font-size:2.4vw;
	position:absolute;
	top:-0.8em;
	left:50%;
	transform: translateX(-50%);
}
.reason h2 span{
	background:#fff;
	padding:0 1em;
}

.reason p{
	text-align: left;
	display: inline-block;
	font-size:2.8vw;
	color:#367BA8;
	font-weight: bold;
	line-height: 2;
	max-width:70%;
	position:relative;
}
.reason p span{
	position:relative;
	z-index: 5
}
.reason p span::before{
	content:'';
	width:100%;
	height:0.4em;
	background:#E0E7E8;
	position:absolute;
	left:0;
	bottom:0;
	z-index: -1;
}
.closing1{
	text-align: center;
}
.closing1 h2{
	font-size:3vw;
	color:#367BA8;
	text-align: left;
	display: inline-block;
	max-width:70%;
	line-height: 2;
}
.aproach{
	font-size:2.8vw;
	color:#0F3A57;
	margin-bottom:6vw;
}
.aproach span{
	background:#E0E7E8;
	padding:0.8em 1em;
	border-radius:999px;
}
.flowTitle{
	font-size:2.4vw;
	position:relative;
	color:#0F3A57;
	display: -webkit-box;
	display: flex;
	align-items: center;
	margin-bottom:4vw;
}
.flowTitle span{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
	font-size:1.6vw;
	width:5vw;
	background:#367BA8;
	color:#fff;
	aspect-ratio:1 / 1;
	display: -webkit-box;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius:100%;
	margin-right:1em;
}
@media screen and (min-width:600px) and (max-width:899px){
	.pageTop{
	margin-top:18vw;
}
}
@media screen and (max-width:599px){
	.pageTop{
	margin-top:12vw;
}
	.pageTitle1{
		font-size:5vw;
		margin-bottom:6vw;
	}
	.rb-l{
	background:url("img/svg/logosmall.svg") no-repeat right top /20%;
}
	.comment1{
	padding:6vw 4vw;
}
	.comment1 p{
	font-size:4.6vw;
		line-height: 2;
}
	.reason{
		margin-top:12vw;
	}
	.reason h2{
	font-size:4.8vw;
		width:90%;
	}
	.reason p{
		font-size:4vw;
		max-width:90%;
	}
	.closing1 h2{
	font-size:4.7vw;
		max-width:100%;
	}
	.aproach{
	font-size:4.8vw;
		margin-bottom:12vw;
	}
	.aproach span{
	padding:0.8em;
	}
	.flowTitle{
	font-size:5vw;
	}
	.flowTitle span{
		font-size:3.6vw;
		width:12vw;
	}
}


.osusume{
	background:#dbecf5;
	padding:6vw;
	position:relative;
}

.osusume h2{
	margin-bottom:4vw;
	font-size:1.5vw;
}
.osusumeList {
	position:relative;
}
.osusumeList::after{
	content:'';
	width:46%;
	display: block;
	
}
.osusumeList li{
	width:46%;
	color:#009f93;
	padding:1em 1.5em;
	margin-bottom:2vw;
	background:#fff;
	font-weight: bold;
	font-size:1.2vw;
	border-radius:999px;
}
.houhou h3{
	font-size:1.5vw;
	margin-bottom:2vw;
}
.priceBox{
	width:45%;
	margin-bottom:4vw
}
.priceBox h3{
	font-size:1.5vw;
	background:#0f3a57;
	color:#fff;
	padding:0.8em;
	margin-bottom:1vw;
}
.priceBox h3 span{
	font-size:1vw;
}
.priceList{
	border-bottom:dashed 1px #1a1a1a;
}
.priceList dt{
	width:35%;
	font-size:1.2vw;
	font-weight: bold;
	padding:1em 0;
}
.priceList dd{
	width:65%;
	text-align: right;
	font-size:1.6vw;
	font-weight: bold;
	letter-spacing: 0.1em;
}
.priceList dt span,.priceList dd span{
	font-size:1.3vw;
}

@media screen and (min-width:600px) and (max-width:899px){
	.osusumeList li{
		font-size:1.8vw;
	}
	.priceBox{
	width:40%;
	}
	.priceBox h3{
	font-size:1.8vw;
	}
	.priceBox h3 span{
	font-size:1.3vw;
}
	.priceList dt{
		font-size:2.1vw;
	}
	.priceList dt span,.priceList dd span{
	font-size:1.8vw;
}
	.priceList dd{
		font-size:2.2vw;
	}
}
@media screen and (max-width:599px){
	.osusume{
	padding:10vw 5vw;
	}
	.osusume h2{
	margin-bottom:8vw;
			font-size:4.5vw;
}
	.osusumeList li{
	width:100%;
		font-size:4vw;
	margin-bottom:4vw;
	}
	.priceBox{
	width:100%;
		margin-bottom:8vw;
	}
	.priceBox h3{
	font-size:4.5vw;
	}
	.priceBox h3 span{
	font-size:3.5vw;
}
	.priceList dt{
		font-size:4.2vw;
	}
	.priceList dt span,.priceList dd span{
	font-size:3.5vw;
}
	.priceList dd{
		font-size:5vw;
	}
}


.sejutsuContent{
	
}
.sejutsuContent p{
	font-size:1.25vw;
	line-height: 1.8;
	margin-bottom:1em!important;
}
.sejutsuContent h2{
	color:#0F3A57;
	font-size:1.8vw;
	margin-top:3vw;
	margin-bottom:3vw;
	font-family: "FOT-筑紫A丸ゴシック Std D";
}
.sejutsuContent h3{
	font-size:1.35vw;
	font-weight: bold;
	color:#0F3A57;
	background:#f9f9f9;
	border-left:solid 6px #0f3a57;
	padding:0.7em;
	margin-top:2.5vw;
	margin-bottom:2.5vw;
	line-height: 1.8;
}
.sejutsuContent h4{
	font-size:1.3vw;
	font-weight: bold;
	color:#0F3A57;
	margin-top:2.5vw;
	margin-bottom:2.5vw;
}
.sejutsuContent p a{
	background:#e8e8e8;
	padding:0 0.2em;
	font-weight: bold;
}
.sejutsuContent img{
	width:100%;
	height: auto;
}
.sejutsuContent p.linkBtn{
	text-align: center
}
.sejutsuContent p.linkBtn a{
background: -webkit-linear-gradient(90deg, rgba(67,178,236,1) 0%, rgba(54,123,168,1) 100%);
	background: linear-gradient(90deg, rgba(67,178,236,1) 0%, rgba(54,123,168,1) 100%);
	display: inline-block;
	padding:1em;
	width:20vw;
	color:#fff;
	border:solid 2px #fff;
	position:relative;
}
.sejutsuContent p.linkBtn a::after{
	content:'\f054';
	font-family: 'Font Awesome 5 Free';
  font-weight: 900;
	position:absolute;
	right:10%;
}

@media screen and (min-width:600px) and (max-width:899px){
	.sejutsuContent p{
	font-size:1.8vw;
}
		.sejutsuContent h2{
		font-size:2.4vw;
	}
		.sejutsuContent h3{
	font-size:2vw;
	}
	.sejutsuContent h4{
	font-size:2vw;
	}
}

@media screen and (max-width:599px){
	.sejutsuContent p{
	font-size:4vw;
}
	.sejutsuContent h2{
		font-size:5.2vw;
			margin-top:10vw;
	margin-bottom:10vw;
	}
	.sejutsuContent h3{
	font-size:4.5vw;
			margin-top:6vw;
	margin-bottom:6vw;
	}
	.sejutsuContent h4{
	font-size:4.4vw;
		margin-top:5vw;
	margin-bottom:5vw;
	}
	.sejutsuContent p.linkBtn a{
		width:80vw
	}
}
.faq{
	background:#E7ECEF;
	padding:2vw 5vw 5vw;
	margin-bottom:5vw;
}
.question span{
	font-size:2.2vw;
	color:#85B689;
	margin-right:0.5em
}
.question {
	font-size:1.8vw;
	font-weight: 500;
	display: -webkit-box;
	display: flex;
	align-items: center
}
.answer {
	display: -webkit-box;
	display: flex;
	align-items: center;
	margin-bottom:1vw;
}
.answer span{
	font-size:2.2vw;
	font-weight: 500;
	color:#ff0000;
	margin-right:0.5em
}
#breadcrumb ul{
	display: -webkit-box;
	display: flex;
	width:90%;
	margin:0 auto;
	align-items: center;
}
#breadcrumb ul li:last-child{
	padding:0 1.2em;
}
#breadcrumb ul li a{
	display: inline-block;
	padding:1.2em;
}

.vTitle{
	font-weight:400;
	font-size:2.2vw;
	color:#367BA8;
	letter-spacing: 0.1em;
}
.vTitle span{
	position:relative;
	border-bottom:dashed 2px #367BA8;
}
.voiceCommentBox{
	padding:0 2vw;
}
.relatedPost{
	display: -webkit-box;
	display: flex;
	justify-content: space-around;
	width:90%;
	margin:0 auto;
	flex-wrap:wrap;
	position:relative;
}
.relatedPost::after{
  content:"";
  display: block;
  width:62%;
}
.relatedPost li{
	width:31%;
	margin-bottom:2vw;
	text-align: center;
}
.relatedPost li img{
	aspect-ratio:1 / 1;
	object-fit:cover;
	margin-bottom:1vw;
}
.relatedPost li h3{
	max-width:80%;
	text-align: left;
	display: inline-block;
	font-size:1.4vw;
}

@media screen and (max-width:599px){
	.question span{
	font-size:6vw;
	}
	.answer span{
	font-size:6vw;
	}
	.question {
	font-size:4vw;
	}
	.answer{
		margin-bottom:6vw;
	}
	.vTitle{
	font-size:5.2vw;
	}
	.relatedPost li{
	width:46%;
		margin-bottom:5vw;
}
	.relatedPost li h3{
		font-size:3.5vw;
	}
}

.postWrapper{
	margin-top:15vw;
}

.postContent{
	width:70%;
}
.postTitle1{
	font-size:2.2vw;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color:#527AA3;
	border-bottom:solid 2px #ddd;
}
.postmeta{
	font-weight: bold;
	color:#1a1a1a;
	text-align: right;
	margin-bottom:3vw
}
.postArticle img{
	margin-bottom:1vw;
}
.catTitle{
	width:30%;
}
.sidebar{
	width:28%;
}
.sidebar h3{
	text-align: center;
	font-size:1.3vw;
	padding:0.8em 0;
	letter-spacing: 0.1em;
}
.sidebar dl a{
	width:100%;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-bottom:solid 1px #ddd;
	margin-bottom:1vw;
	color:#000;
}
.sidebar dt{
	width:20%;
	margin-bottom:1vw;
}
.sidebar dt img{
	width:100%;
	aspect-ratio:1 / 1;
	object-fit:cover;
}
.sidebar dd{
	width:78%;
	margin-bottom:1vw;
	line-height: 1.5;
}
.sideBtn {
	text-align: center;
}
.sideBtn a{
	display: inline-block;
	padding:0.8em;
	width:80%;
	margin:1vw auto;
	background:#E9ECF0;
	border:solid 2px #1a1a1a;
	font-weight: bold;
	font-size:1.1vw;
}

.widget{
	margin-bottom:3vw;
}
.postList{
	border-top:dashed 1px #ddd;
}
.postList li a{
	padding:1em 0;
	display: block;
	font-size:1.3vw;
	font-weight: bold;
	border-bottom:dashed 1px #ddd;
}
.postList li a span{
	font-size:0.9vw;
}
@media screen and (min-width:600px) and (max-width:899px){
		.postWrapper{
	margin-top:20vw;
}
	.sidebar dl {
		font-size:1.6vw;
	}
		.sideBtn a{
		font-size:1.5vw;
			width:100%;
	}
	.sidebar h3{
		font-size:1.6vw
	}
}
@media screen and (max-width:599px){
	.postWrapper{
	margin-top:25vw;
}
	.postContent{
	width:100%;
		margin-bottom:10vw;
}
	.postTitle1{
	font-size:5.2vw;
	}
	.sidebar{
	width:100%;
}
	.sidebar h3{
		font-size:4.8vw
	}
	.sideBtn a{
		font-size:3.8vw;
	}
	.sidebar dl {
		margin-bottom:6vw
	}
	.widget{
	margin-bottom:10vw;
}
	.postList li a{
	font-size:3.8vw;
	}
	.postList li a span{
	font-size:3vw;
}
	.catTitle{
	width:100%;
}
}

.pageNationWrap{
	display: -webkit-box;
	display: flex;
	align-items: center;
	margin-top:4vw;
}
.page-count{
}
.pagenation {
	display: -webkit-box;
	display: flex;
	align-items: center;
	width:70%;
}
.pagenation li a{
	font-size:1.3vw;
	width:4vw;
	aspect-ratio:1/1;
	border-radius:100%;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	border:solid 1px #ddd;
}
.pagenation li:not(:last-child){
	margin-right:1vw
}
.pagenation li.first a,.pagenation li.next a,.pagenation li.last a,.pagenation li.prev a{
	font-size:1vw!important;
}
.pagenation li.current{
	background:#00C7C0;
	color:#fff;
	font-size:1.3vw;
	width:4vw;
	aspect-ratio:1/1;
	border-radius:100%;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	border:solid 1px #00C7C0;
}

@media screen and (max-width:599px){
	.pagenation li a{
	font-size:3.8vw;
		width:10vw;
	}
	.pagenation li.current{
	font-size:3.8vw;
		width:10vw;
	}
}
.formList{
	width:80%;
	margin:0 auto;
	background:#F9F9F9;
	padding:3vw 2vw;
}
.formList dt{
	font-size:1.2vw;
	font-weight: bold;
	border-bottom:dashed 1px #999;
	margin-bottom:2vw;
}
.formList dt span{
	font-size:0.9vw;
	display: inline-block;
	padding:0.2em 0.4em;
	margin-left:1em;position:relative;
	top:-0.2em;
}
.formList dt span.required{
	background:#b60005;
	color:#fff;
}
.formList dt span.notrequired{
	background:#1a1a1a;
	color:#fff;
}
span.wpcf7-list-item {
margin-top:5px;
display: block;
}
.formList dd{
	font-size:1.4vw;
	font-weight: bold;
}
.formList textarea{
	-webkit-appearance:none;
	border:solid 1px #ddd;
	width:100%;
	font-size:1.4vw;
	padding:1em;
}
.formList input[type="text"],.formList input[type="tel"],.formList input[type="email"]{
	-webkit-appearance:none;
	border:solid 1px #ddd;
	width:100%;
	font-size:1.4vw;
	padding:1em;
}
.sendBox{
	text-align: center;
	padding:4vw 0;
}
.sendBox input[type="submit"]{
	-webkit-appearance:none;
	background:#033864;
	color:#fff;
	font-weight: bold;
	font-size:1.5vw;
	padding:0.8em 5em;
	display: inline-block;
	border:solid 2px #033864;
	border-radius:4px;
}
@media screen and (max-width:599px){
	.formList{
	width:100%;
	padding:10vw 4vw;
}
	.formList dt{
	margin-bottom:5vw;
		font-size:3.8vw;
	}
	.formList dd{
	font-size:3.8vw;
	}
	.formList textarea{
		font-size:3.8vw
	}
	.formList input[type="text"],.formList input[type="tel"],.formList input[type="email"]{
		font-size:3.8vw;
	}
	.sendBox input[type="submit"]{
		font-size:4.2vw;
		display: block;
		width:90%;
		margin:0 auto;
	}
}
.contactList li{
	width:32%;
	margin-bottom:20px;
}
@media screen and (min-width:600px){
	.footSpLink{
		display: none;
	}
}
@media screen and (max-width:599px){
	.contactList li{
		width:100%;
	}
	.footSpLink{
		display:-webkit-box;
		display: flex;
		position:fixed;
		bottom:0;
		left:0;
		z-index: 100;
		width:100%;
	}
	.footSpLink li{
		width:50%;
	}
}