/* base
--------------------------------*/

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html{
	font-size:62.5%;
}

body{
	font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, Lato, Arial, "MS P Gothic", "MS Pゴシック", sans-serif;
	font-size:1.4rem;
	margin:0;
	padding: 0;
	line-height: 2;
	font-weight: 500;
	color:#666;
	position: relative;
	background-color: #f4f5f7;
}

ul,li{
	margin:0;
	padding:0;
	list-style: none;
}

a{
	text-decoration: none;
	color:#666;
}

a:hover {
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	opacity: 0.7;
}

p{
	padding:0;
	margin: 0;
	font-size: 1.4rem;
}

h1{
	margin:0;
	padding:0;
	font-size: 1rem;
	font-weight: 400;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

.breadcrumbs {
	font-size: 1.2rem;
	border-collapse: collapse;
	color:#7A7A7A;
	display: flex;
	justify-content: center;
	width: 95%;
	margin: auto;
	max-width: 1500px;
}

.breadcrumbs a{
	color: #4691C6;
}

.breadcrumbs a:hover{
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-ms-transition: 0.5s;
	-moz-transition: 0.5s;
	opacity: 0.7;
}

.breadcrumbs span{
	padding: 0 1rem;
	font-size: 1.2rem;
}

.breadcrumbs .now-page{
	color: #303030;
}

.wp-pagenavi {
	margin:50px 0px;
	clear: both;
	text-align:center;
}

.wp-pagenavi a,
.wp-pagenavi .current{
	text-decoration: none;
	display: inline-block;
	margin: 0 0.5rem;
	border: 1px solid #a3a3a3;
}

.wp-pagenavi span,
.wp-pagenavi a{
	padding: 0.4rem 1.5rem;
	border-radius: 5px;
}

.wp-pagenavi .current{
	background-color: #71afd0;
	color: #FFF;
	border: none;
}

#page-top a{
	display: block;
	position: fixed;
	bottom: 110px;
	right: 5px;
	z-index: 900;
	width: 40px;
	height: 40px;
	border: 1px solid #666;
	border-radius: 50%;
	background-color: #FFFFFFA1;
}

#page-top a i{
	text-align: center;
	display: block;
	line-height: 40px;
	font-size: 2.5rem;
	font-weight: 300;
}


/* 共通
--------------------------------*/
.width-1500px{ 
	width:90%;
	margin:0 auto;
}

.width-1200px{ 
	width:90%;
	margin:0 auto;
}

.page-bg-white{
	width:100%;
	margin:0 auto;
	background-color:#FFF;
	overflow: hidden;
	padding: 5rem 2rem 7rem;
}

.f-tomarik{
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
}

.f-tsukushi400{
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
}

.f-tsukushi700{
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}

.title-1{
	display: flex;
	position: relative;
	margin-bottom: 4rem;
	padding-top: 2rem;
	align-items: center;
}

.title-1::before{
	background: #89c9dd;
	content: '';
	height: 2px;
	width: 22px;
	position: absolute;
	left: 0;
	top: 0;
	transform: skew(0,25deg);
}

.title-1-en{
	font-size: 2.6rem;
	line-height: 1;
	margin-right: 3rem;
	letter-spacing: .1em;
}

.title-1-jp{
	font-size: 1.4rem;
	margin-top: 1rem;
}

.title-2{
	display: block;
	position: relative;
	padding-top: 40px;
	text-align: center;
	margin-bottom: 5rem;
}

.title-2::before{
	background: #89c9dd;
	content: '';
	height: 2px;
	width: 22px;
	position: absolute;
	left: 50%;
	top: 0;
	transform: skew(0,25deg);
}

.title-2-en{
	font-size: 2.8rem;
	line-height: 1;
	letter-spacing: .1em;
}

.title-2-jp{
	font-size: 1.4rem;
	margin-top: 1rem;
}

.sec-wrap-p5{ 
	padding:2.5rem 0;
	display: flex;
	flex-wrap: wrap;
}

.sec-wrap-p10{ 
	padding:7rem 0;
}

.sec-wrap-m5{ 
	margin-top:2.5rem;
	margin-bottom:2.5rem;
}

.sec-wrap-m10{ 
	margin-top:5rem;
	margin-bottom:5rem;
}

.sec-wrap-m5{ 
	margin-top:2.5rem;
	margin-bottom:2.5rem;
}

.sec-wrap-m-t10{
	margin-top:5rem;
}

.sec-wrap-m-t5{
	margin-top:5rem;
}

.sec-wrap-m-b2{
	margin-bottom:2rem;
}

.sec-wrap-m-b8{
	margin-bottom:8rem;
}


.marker-yellow{
	background: linear-gradient(transparent 70%, #f5f3a2 0%);
}

.round-20px{
	border-radius:20px;
}

.round-30px{
	border-radius:30px;
}

.home-btn1{
	position: relative;
	display: inline-block;
	margin: 2rem 0 0;
	font-size: 1.6rem;
	padding: 0.5rem 5rem;
	text-align: center;
	border-bottom: 1px solid #666;
}

.home-btn1 i{
	position:absolute;
	right:2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

.home-btn1:hover{
	opacity: 1;
	padding: 0.5rem 8rem;
	color: #89c9dd;
	border-bottom: 1px solid #89c9dd;
}

.home-btn2{
	position: relative;
	display: inline-block;
	margin: 5rem 0 0;
	font-size: 2rem;
	padding: 0.5rem 3rem;
	text-align: center;
	color: #FFF;
	background-color: #89c9dd;
	border-radius: 20px;
	width: 80%;
}

.home-btn2 i{
	position:absolute;
	right:2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

.home-btn2:hover{
	opacity: 1;
	border: 1px solid #89c9dd;
	background-color: #FFF;
	color: #89c9dd;
}

img{
	width:100%;
	height:auto;
}

/* header
--------------------------------*/
header{
	width:100%;
	height: 70px;
	background-color:#FFF;
	position: fixed;
	top: 0;
	transition: .3s;
	z-index: 500;
}

.header-info-container{
	padding: 0 60px 0 10px;
}

.header-info-container .header-disc{
	margin: 0;
	padding: 0;
	font-size: 1rem;
	font-weight: 400;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.header-container{
	padding: 0 60px 0 10px;
}

.header-container .logo{
	display:inline-block;
	height:45px;
}

.header-container .logo img{
	width:auto;
	height:100%;
}

#mainvisual .newopen-banner{
	position: absolute;
	margin: 0;
	line-height: 0;
	left: 22%;
	top: 40px;
}

#mainvisual .newopen-banner img{
	width:80px;
	height:auto;
}

.header-container .header-navi{
	display:none;
}

.header-contact{
	position:fixed;
	bottom:0;
	z-index: 900;
	display: flex;
	width: 100%;
	border-top: 1px solid #FFF;
	height: 60px;
	background-color: #71afd0;
	left: 0;
}

.header-contact li{
	width: 33.33%;
	border-right: 1px solid #FFF;
	height: 60px;
}

.header-contact li:last-child{
	border-right:none;
}

.header-contact li a{
	display:block;
	color:#FFF;
	font-size:1rem;
	font-weight: 500;
	text-align:center;
	line-height:1;
	padding: 10% 0;
	height: 60px;
}

.header-contact li a i{
	display:block;
	font-size:2.5rem;
	margin-bottom: 1rem;
}

/* navi
--------------------------------*/
#nav-drawer {
	position: absolute;
	right: 5px;
	top: 10px;
	height: 50px;
	width: 50px;
}

.nav-btn{
	position: relative;
	cursor: pointer;
	width: 50px;
	height:50px;
	border: 1px solid #dcdcde;
	border-radius: 50%;
}

.nav-btn span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	height: 2px;
	border-radius: 5px;
	background: #262626;
	width: 22px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

.nav-btn span:nth-of-type(1) {
	top:17px; 
}

.nav-btn span:nth-of-type(2) {
	top:23px;
}

.nav-btn span:nth-of-type(3) {
	top:29px;
}

.nav-btn.active span:nth-of-type(1) {
	top: 16px;
	left: 13px;
	transform: translateY(7px) rotate(-45deg);
	width: 22px;
}

.nav-btn.active span:nth-of-type(2) {
	opacity: 0;
}

.nav-btn.active span:nth-of-type(3){
	top: 28px;
	left: 13px;
	transform: translateY(-5px) rotate(45deg);
	width: 22px;
}

.nav-content {
	overflow: auto;
	position: fixed;
	top: 70px;
	left: 0;
	width: 100%;
	height: 100%;
	transition: .3s ease-in-out;
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);
	z-index: 100;
	background-color: #89c9ddf0;
}

.nav-btn.active ~ .nav-content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}

.nav-content > nav > ul{
	margin:0;
	padding: 3rem 5rem;
}

.nav-content > nav > ul > li{
	margin-bottom:2rem;
}

.nav-content > nav > ul > li > a{
	margin:0;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: .05em;
	color: #FFF;
}

.nav-content > nav > ul > li > a > span{
	font-size: 1.2rem;
	margin-left: 3rem;
	color: #8091a0;
}

/* footer
--------------------------------*/
.blog-widget{
	background-color:#FFF;
	border-bottom: 1px solid #ccc
}

.blog-widget .f-box{
	align-items: flex-start;
}

.blog-widget ul{
	width: 100%;
}

.blog-widget ul li{
	width:100%;
}

.blog-widget ul li a{
	display:flex;
	justify-content: space-between;
	border-bottom: 1px solid #ccc;
	padding: 1rem 0;
	align-items: center;
}

.blog-widget ul li a .posts-image{
	margin:0;
}

.blog-widget ul li a .posts-image img{
	background-color: #FFF;
	border-radius: 5px;
	object-fit: cover;
	width: 140px;
	height: 100px;
}

.blog-widget ul li a .posts-text{
	width: calc(100% - 180px);
}

.blog-widget ul li a .posts-text .posts-date{
	font-size: 1.4rem;
}

.blog-widget ul li a .posts-text h3{
	margin:0;
	font-size: 1.6rem;
	font-weight: 500;
}

.blog-widget .btn{
	text-align:right;
}

footer{
	overflow: hidden;
}

.footer-container{
	padding: 0;
}

.footer-container .footer-info{
	width: 100%;
	margin-bottom: 5rem;
}

.footer-container .footer-info .logo{
	display:block;
	width: 70%;
	margin: auto;
}

.footer-container .footer-info .logo img{
	width:100%;
	height:auto;
}

.footer-container .footer-info .company-name{
	font-size:2.4rem;
	text-align: center;
}

.footer-container .footer-info .contact{
	background-color: #71afd0;
	color: #FFF;
	font-size: 1.6rem;
	display:block;
	text-align: center;
	width: 70%;
	margin: 3rem auto;
	border-radius: 20px;
	padding: 5px 0;
}

.footer-container .footer-info .contact i{
	margin-right: 10px;
}

.footer-container .footer-info .tel{
	font-size: 1.6rem;
	display: block;
	text-align: center;
	width: 80%;
	margin: 3rem auto;
	padding: 10px 0;
	border-bottom: 1px solid #666;
	font-size: 1.8rem;
}

.footer-container .footer-info .tel i{
	margin-right: 10px;
}

.footer-container ul{
	width: 100%;
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}

.footer-container ul li{
	width:46%;
	margin-bottom: 3rem;
}

.footer-container ul li a{
	display:block;
	font-size: 1.4rem;
}

.footer-container ul li a span{
	font-size: 2rem;
	line-height: 1;
	letter-spacing: .1em;
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	display:block;
}

.copy{
	border-top:1px solid #CCC;
	padding:1rem 0;
	text-align:center;
	padding-bottom: 60px;
}

.copy .copyright{
	letter-spacing: .1em;
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.4rem;
}

.copy .under18{
	font-size: 1rem;
}

/* home
--------------------------------*/
#mainvisual{
	position: relative;
	margin:4rem auto 0;
	line-height: 0;
	width: 95%;
	height: auto;
	z-index: -100;
	padding-top: 70px;
}

#mainvisual .mainimage{
	margin: 0 0 0 auto;
	width: 100%;
	line-height: 0;
}

#mainvisual .mainimage img{
	width:100%;
	height:auto;
	border-radius: 30px;
}

#mainvisual .mainvisual-txt{
	margin:0;
	line-height:2;
	position: absolute;
	font-size: 1.6rem;
	letter-spacing: .2em;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-weight: 500;
	width: 50%;
}

#mainvisual .mainvisual-txt p{
	color:#666;
	font-size: 1.2rem;
	letter-spacing: .15em;
}

.home-btn1{
	position: relative;
	display: inline-block;
	margin: 4rem 0 6rem;
	font-size: 1.6rem;
	padding: 0.5rem 5rem;
	text-align: center;
	border-bottom: 1px solid #666;
}

.home-btn1 i{
	position:absolute;
	right:2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

.home-btn1:hover{
	opacity: 1;
	padding: 0.5rem 8rem;
	color: #89c9dd;
	border-bottom: 1px solid #89c9dd;
}

.home-btn2{
	/*! position: relative; */
	/*! display: inline-block; */
	margin: 2rem 0;
	font-size: 1.8rem;
	/*! padding: 0.5rem 5em; */
	/*! text-align: center; */
	/*! color: #FFF; */
	/*! background-color: #89c9dd; */
	border-radius: 15px;
	min-width: 300px;
}

.home-btn2 i{
	position:absolute;
	right:2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

.home-btn2:hover{
	opacity: 1;
	border: 1px solid #89c9dd;
	background-color: #FFF;
	color: #89c9dd;
}

.home-aboutmiuchat{
	position:relative;
	background-color:#FFF;
	text-align: center;
	padding-top: 5rem;
}

.home-aboutmiuchat .width-1500px{
	padding-bottom:5rem;
}

.home-aboutmiuchat .f-box-txt .catch{
	font-size:2rem;
	margin:2rem 0 4rem;
}

.home-aboutmiuchat .f-box-txt .remarks{
	font-size:1.2rem;
	display: block;
	margin-top: 3rem;
}

.home-aboutmiuchat .f-box-txt{
	text-align:left;
}

.home-aboutmiuchat .f-box-txt p{
	font-size:1.4rem;
}

.home-aboutmiuchat .f-box-image{
	width: 100%;
}

.home-campaign{
	background-color:#FFF;
	padding-bottom:6rem;
}

.home-campaign .width-1500px{
	background-image: linear-gradient( 70deg, #accbee 0%,#e7f0fd 100%);
	border-radius: 20px;
	max-width: 980px;
}

.home-campaign a{
	background: #fff;
	border-radius: 10px;
	color: #8a9ecc;
	display: block;
	text-align: center;
	margin: auto;
	padding: 20px 5px;
	max-width: 750px;
}

.home-campaign a h2{
	position: relative;
	text-align: center;
	font-weight: bold;
	line-height: 1.3;
	font-size: 2rem;
}

.home-campaign a h2:before,
.home-campaign a h2:after {
	position: relative;
	display: inline-block;
	content: "";
	background: #8a9ecc;
	width: 2px;
	height: 1.5em;
	margin: 0 1em;
	margin-top: -.2em;
	vertical-align: middle;
}
.home-campaign a h2:before {
	transform: rotate(-35deg);
}
.home-campaign a h2:after {
	transform: rotate(35deg);
}

.home-campaign .catch{
	font-size:1.6rem;
	line-height: 1.8;
}

.home-campaign .catch span{
	font-size:3rem;
}

.home-campaign .btn{
	width:60%;
	margin:1.5rem auto 0;
	border-radius:20px;
	color:#FFF;
	background-color:#8a9ecc;
	line-height: 2.5;
}

.home-aboutchatlady{
	position:relative;
}

.home-aboutchatlady .catch{
	font-size:2rem;
	margin-bottom:4rem;
}

.home-experience{
	position:relative;
	text-align: center;
}

.home-experience h2{
	text-align:center;
	font-size:1.8rem;
}

.home-experience .experience-box .catch{
	display: inline-block;
	padding: 2rem 3rem;
	position: relative;
	font-size: 1.6rem;
	font-weight: 500;
}

.home-experience .experience-box .catch span{
	font-size: 3rem;
	color:#71afd0;
	position:relative;
	font-weight: 600;
}

.home-experience .experience-box .catch span:before{
	color: #f28983;
	position: absolute;
	top: -4rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	content: "・";
}

.home-experience  .experience-box .catch:before,
.home-experience  .experience-box .catch:after {
	content: '';
	position: absolute;
	top: 55%;
	display: inline-block;
	width: 30px;
	height:2px;
	background-color: #354756;
	transform: rotate(-60deg);
}
.home-experience  .experience-box .catch:before {
	left:0;
	transform: rotate(-120deg);
}
.home-experience  .experience-box .catch:after {
	right: 0;
}

.home-experience .experience-box{
	background: #e6f0f5;
	padding:3rem 0rem;
}

.home-experience .experience-box ul{
	position: relative;
	padding: 2rem 1rem 5rem;
	background-color: #71afd0;
	border-radius: 20px;
	width: 95%;
	margin: auto;
}

.home-experience .experience-box ul::before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -30px;
	border: 25px solid transparent;
	border-top: 15px solid #71afd0;
}

.home-experience .experience-box ul li{
	color:#FFF;
	text-align: left;
	font-size: 1.6rem;
	padding: 1rem 3rem;
	position: relative;
	padding-left: 60px;
	font-weight: 500;
	background-image: linear-gradient(to right, #FFF, #FFF 5px, transparent 5px, transparent 10px);
	background-size: 10px 1px;
	background-position: left bottom;
	background-repeat: repeat-x;
}

.home-experience .experience-box ul li span{
	position:relative;
	border:2px solid #303030;
	display: inline-block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-color: #FFF;
}

.home-experience .experience-box ul li span i{
	color:#DD3D3D;
	position: absolute;
	top: 35%;
	left: 15%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-size: 2rem;
}

.home-experience .experience-box .appeal{
	font-size: 1.8rem;
	font-weight: 500;
	margin: 5rem 0 2rem;
}

.home-experience .experience-box .appeal .b-color{
	color:#f28983;
	font-weight: 600;
	position:relative;
}

.home-experience .experience-box .appeal .b-color span{
	position:relative;
}

.home-experience .experience-box .appeal .b-color span:before{
	color: #df518c;
	position: absolute;
	top: -2.5rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	content: "・";
}

.home-environment{
	position:relative;
	background-color:#FFF;
	padding-bottom: 5rem;
}

.home-environment .catch{
	font-size:2rem;
	margin-bottom:4rem;
}

.home-environment .f-box .f-box-txt{
	padding:8rem 0 0;
}

.home-environment .f-box .f-box-image{
	width: 100%;
	height: auto;
	position: relative;
}

.home-environment .f-box .f-box-image img{
}

.home-environment .f-box .f-box-image .image001{
}

.home-environment .f-box .f-box-image .image002{
}

.home-environment .f-box .f-box-image .image003{
}

.home-merit{
	position:relative;
}

.home-merit .catch{
	font-size:2rem;
}

.home-merit .merit-list{
	counter-reset:merit-list;
}

.home-merit .merit-list li{
	position:relative;
	width:100%;
	background-color:#FFF;
	padding: 60px 20px;
	margin: 8rem 1% 0;
}

.home-merit .merit-list li:after{
	content: counter(merit-list);
	counter-increment: merit-list;
	color: #5788a3;
	font-size: 4.2rem;
	font-family: fieldwork, sans-serif;
	font-weight: 100;
	font-style: normal;
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
}

.home-merit .merit-list li h3{
	text-align:center;
	font-size: 1.8rem;
	margin-bottom: 2rem;
}

.home-merit .merit-list li p{
	margin:0;
}

.home-merit .merit-list .second-line{
	margin-left:auto;
}

.home-remuneration{
	position:relative;
	display:flex;
	flex-wrap:wrap;
}

.home-remuneration .remuneration-box{
	order:1;
}

.home-remuneration .catch{
	font-size:2rem;
	margin-bottom:4rem;
}

.home-remuneration .f-box .f-box-image{
	width:100%;
	order:2;
}

.home-support{
	position:relative;
}

.home-support .catch{
	font-size:2rem;
	margin-bottom:5rem;
}

.home-achievement{
	position:relative;
	background-color:#FFF;
}

.home-achievement .achievement-box{
	position:relative;
	padding: 3rem 1rem 5rem;
	background-color:#f7f7f1;
}

.home-achievement .achievement-box .catch{
	text-align:center;
	font-size: 1.8rem;
	margin-bottom: 3rem;
}

.home-achievement .achievement-box .personal{
	display:flex;
	justify-content: space-between;
	background-color: #FFF;
	padding: 3rem 2rem;
	border-radius: 20px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 5rem;
	flex-wrap: wrap;
}

.home-achievement .achievement-box .personal .personal-txt{
	width:100%;
	order: 2;
}

.home-achievement .achievement-box .personal .personal-image{
	width:100%;
	order: 1;
}

.home-achievement .achievement-box .personal .personal-image img{
	width:100%;
}

.home-achievement .achievement-box .personal .personal-txt .name{
	font-size:2rem;
	margin-bottom:20px;
}

.home-achievement .achievement-box .personal .personal-txt .name span{
	display:block;
	color:#777;
	font-size:1.2rem;
}

.home-achievement .achievement-box .personal .personal-txt .reward{
	display:flex;
	margin: 0;
	justify-content: space-around;
}

.home-achievement .achievement-box .personal .personal-txt .reward p{
	width:45%;
	color:#df518c;
	font-size:2.4rem;
	font-weight: 600;
}

.home-achievement .achievement-box .personal .personal-txt .reward p > span{
	width:30%;
	padding: 3px 10px;
	border-radius: 5px;
	background: #e0e0e0;
	color: #777;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	display: block;
}

.home-achievement .achievement-box .personal .personal-txt .reward p > span{
	width:60%;
	padding: 1px 10px;
	border-radius: 5px;
	background: #f28983;
	color: #FFF;
	text-align: center;
	font-size: 1.2rem;
	font-weight: 600;
	display: block;
}

.home-achievement .achievement-box .personal .personal-txt table{
	width: 100%;
	word-break: break-all;
	border-spacing: 0;
	box-sizing: border-box;
	margin-top: 1rem;
}

.home-achievement .achievement-box .personal .personal-txt table thead th{
	background: #71afd0;
	color: #fff;
	font-size: 1.4rem;
	padding: 0.3rem 0;
}

.home-achievement .achievement-box .personal .personal-txt table tbody th{
	font-weight: 400;
	width: 70%;
	background: #e6f0f5;
	border: solid 1px #e6e6e6;
	padding: 10px;
}

.home-achievement .achievement-box .personal .personal-txt table tbody td{
	border: solid 1px #e6e6e6;
	padding: 10px;
	width:30%;
}

.home-achievement .achievement-box .voice{
	background-color: #FFF;
	padding: 3rem;
	border-radius: 20px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.home-achievement .btn{
	text-align:center;
	padding-top: 3rem;
}

.home-faq{
	position:relative;
}

.home-faq .faq-box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.home-faq .faq-box dl{
	width:100%;
	margin-bottom:4rem;
	padding: 3rem;
	background-color: #FFF;
	border-radius: 20px;
}

.home-faq .faq-box dl dt{
	position:relative;
	border-bottom:1px solid #2b2b2b;
	margin-bottom: 20px;
	padding-left: 50px;
	font-size: 1.6rem;
	font-weight: 600;
	padding-bottom: 1rem;
}

.home-faq .faq-box dl dt:before{
	content: "Q";
	color: #FFF;
	background-color: #71afd0;
	width: 35px;
	height: 35px;
	text-align: center;
	display: block;
	line-height: 35px;
	border-radius: 30px;
	font-weight: 700;
	position: absolute;
	left: 0;
}

.home-faq .faq-box dl dd{
	position:relative;
	padding-left: 50px;
	text-align: left;
	margin: 0;
	font-size: 1.4rem;
}

.home-faq .faq-box dl dd:before{
	content: "A";
	color: #71afd0;
	width: 30px;
	height: 30px;
	text-align: center;
	display: block;
	line-height: 30px;
	border-radius: 30px;
	font-weight: 700;
	position: absolute;
	left: 0;
	font-size: 1.8rem;
	border: 2px solid #71afd0;
}

.home-faq .btn{
	text-align:center;
	margin: 0 auto;
}

.home-covid19{
	position:relative;
	background-color:#e6f0f5;
	text-align:center;
}

.home-covid19 h2{
	text-align: center;
	font-size: 2rem;
	margin-bottom:2rem;
}

.home-covid19 > p{
	font-size: 1.6rem;
}

.home-covid19 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1200px;
	margin: 5rem auto 0;
}

.home-covid19 ul li{
	width:90%;
	text-align:center;
	background-color: #FFF;
	padding: 3rem;
	border-radius: 20px;
	margin:0 auto;
}

.home-covid19 ul li:nth-child(-n+5){
	margin:0 auto 5rem;
}

.home-covid19 ul li .icon{
	border-radius: 50%;
	width: 110px;
	height: 110px;
	margin: 0 auto 1rem;
	position: relative;
	background-image: linear-gradient(to top, #fbc2eb 0%, #a6c1ee 100%);
}

.home-covid19 ul li .icon i{
	font-size:4.5rem;
	color: #FFF;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.home-covid19 ul li p{
	line-height:2;
	text-align: left;
}

.home-covid19 .title{
	font-size:100%;
	margin-bottom: 1rem;
}

/* page
--------------------------------*/
.page-title-container{
	background-color:#e6f0f5;
	padding:12rem 0 5rem;
}

.page-title-container h1{
	text-align:center;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 2.3rem;
	width: 95%;
	margin: 0 auto 1rem;
	max-width: 1200px;
	position: relative;
}

.page-title-container h1::before{
	background: #008caf;
	content: '';
	height: 2px;
	width: 22px;
	transform: skew(0,25deg);
	position: absolute;
	top: -10px;
	left: 50%;
}

/* チャットレディとは
--------------------------------*/

.c-about-chatlady{
	position:relative;
	background-color: #FFF;
}

.c-about-chatlady .f-box-txt{
	width:100% !important;
}

.c-about-chatlady .f-box-image{
	width:100% !important;
	margin-top: 4rem;
}

.c-about-chatlady .catch{
	font-size: 2rem;
	margin-bottom: 4rem;
}

.c-about-chatlady .message-list{
	border-radius:20px;
	background-color:#e6f0f5;
	margin: 8rem 0 6rem;
	padding: 6rem 2rem 3rem;
	position: relative;
}

.c-about-chatlady .message-list h3{
	width: 90%;
	margin: auto;
	text-align: center;
	background-color: #71afd0;
	position: absolute;
	top: -10%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	color: #FFF;
	padding: 0.5rem 0;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 1.4rem;
}

.c-about-chatlady .message-list ol{
	counter-reset: numList;
}

.c-about-chatlady .message-list ol li{
	padding: 0.5rem 0 0.5rem 4rem;
	position: relative;
	margin-bottom: 1rem;
	font-weight: 600;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
}

.c-about-chatlady .message-list ol li::before{
	border: 1px dotted;
	counter-increment: numList;
	content: '0' counter(numList);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
	text-indent: 0.2em;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.c-experience .experience-box h2{
	font-size:2rem;
	margin-bottom: 3rem;
}

.c-experience .experience-box p{
	text-align:left;
}

.c-experience .experience-box .catch{
	display: inline-block;
	padding: 0 1rem;
	position: relative;
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 2rem;
	margin-top: 5rem;
}

.c-experience .experience-box .catch span{
	font-size: 3rem;
	color:#71afd0;
	position:relative;
	font-weight: 600;
}

.c-experience .experience-box .catch span:before{
	color: #f28983;
	position: absolute;
	top: -4rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	content: "・";
}

.c-experience  .experience-box .catch:before,
.c-experience  .experience-box .catch:after {
	content: '';
	position: absolute;
	top: 55%;
	display: inline-block;
	width: 35px;
	height:2px;
	background-color: #354756;
	transform: rotate(-65deg);
	accent-color: -10px;
}
.c-experience  .experience-box .catch:before {
	left:-25px;
	transform: rotate(-115deg);
}
.c-experience  .experience-box .catch:after {
	right: -20px;
}

.c-experience .experience-box{
	background: #e6f0f5;
	padding:5rem 1rem;
	text-align: center;
	margin-bottom: 5rem;
}

.c-experience .experience-box ul{
	position: relative;
	padding: 3rem 1rem 5rem;
	background-color: #71afd0;
	border-radius: 20px;
	width: 100%;
	margin: auto;
}

.c-experience .experience-box ul::before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 25px solid transparent;
	border-top: 15px solid #71afd0;
}

.c-experience .experience-box ul li{
	color:#FFF;
	text-align: left;
	font-size: 1.6rem;
	position: relative;
	font-weight: 500;
	background-image: linear-gradient(to right, #FFF, #FFF 5px, transparent 5px, transparent 10px);
	background-size: 10px 1px;
	background-position: left bottom;
	background-repeat: repeat-x;
	padding: 1rem 2rem 1rem 6rem;
}

.c-experience .experience-box ul li span{
	position:relative;
	border:2px solid #303030;
	display: inline-block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-color: #FFF;
}

.c-experience .experience-box ul li span i{
	color:#DD3D3D;
	position: absolute;
	top: 35%;
	left: 15%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-size: 2rem;
}

.c-experience .experience-box .appeal{
	font-size: 1.8rem;
	font-weight: 500;
	margin-top: 5rem;
	text-align: center;
	padding: 0;
}

.c-experience .experience-box .appeal .b-color{
	color:#f28983;
	font-weight: 600;
	position:relative;
}

.c-experience .experience-box .appeal .b-color span{
	position:relative;
}

.c-experience .experience-box .appeal .b-color span:before{
	color: #df518c;
	position: absolute;
	top: -2.5rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	content: "・";
}

.c-experience .experience-explanation{
}

.c-experience .experience-explanation p{
	margin-bottom:2rem;
}

.c-experience .experience-explanation .experience-explanation-image{
	width:100%;
	border-radius: 20px;
	margin-bottom: 30px;
	max-width: 480px;
}

/* お給料について
--------------------------------*/
.c-remuneration{
	position:relative;
}

.c-remuneration .sp-title-1{
	margin-top:3.5rem;
}

.c-remuneration > .f-box > .f-box-txt{
	width:100% !important;
	margin-bottom: 4rem;
}

.c-remuneration > .f-box > .f-box-txt > p{
	margin-bottom:20px;
}

.c-remuneration > .f-box > .f-box-image{
	width:100% !important;
}

.c-remuneration .remuneration-dynamics{
	display:flex;
	justify-content: space-between;
	background-color: #FFF;
	padding: 4rem 2rem;
	border-radius: 20px;
	flex-wrap: wrap;
}

.c-remuneration .remuneration-dynamics .dynamics-txt{
	width:100%;
	order: 2;
}

.c-remuneration .remuneration-dynamics .dynamics-txt h3{
	color:#FFF;
	text-align: center;
	background-color: #71afd0;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 2rem;
	margin-bottom: 2rem;
}

.c-remuneration .remuneration-dynamics .dynamics-txt p{
	margin:0;
}

.c-remuneration .remuneration-dynamics .dynamics-txt .label{
	margin-top: 4rem;
	background-color: #e6f0f5;
	padding: 1.5rem 1rem;
	text-align: center;
	font-size: 1.4rem;
}

.c-remuneration .remuneration-dynamics .dynamics-txt .label span{
	color: #71afd0;
	font-weight: 700;
	font-size: 2.4rem;
	background: linear-gradient(transparent 70%, #f5f3a2 0%);
	letter-spacing: .1em;
}

.c-remuneration .remuneration-dynamics .dynamics-image{
	width:100%;
	height:auto;
	order: 1;
	margin-bottom: 3rem;
}

.c-remuneration .remuneration-dynamics .dynamics-image img{
	width:100%;
	height:auto;
}

/* 待遇とお仕事環境
--------------------------------*/
.c-environment{
	background-color:#FFF;
}

.c-environment .catch{
	font-size:2rem;
	margin-bottom:4rem;
}

.c-environment .f-box .f-box-txt{
	padding:2rem 0 5rem;
}

.c-environment .f-box .f-box-image{
	display:none;
}

.c-environment .room-gallery{
	margin:5rem auto;
}

.c-environment .room-gallery h3{
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 2.8rem;
	color: #71afd0;
}

.c-environment .room-gallery ul{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
	padding: 2.5rem 0;
}

.c-environment .room-gallery ul li{
	width:48%;
	height:auto;
	line-height: 0;
	margin-bottom: 2rem;
}

.c-environment .room-gallery ul li img{
	width:100%;
	height:auto;
}

.c-about-environment{
	position:relative;
}

.c-about-environment h2{
	position: relative;
	font-size: 2.4rem;
	font-weight: 500;
	margin-bottom: 3rem;
	text-align:center;
}

.c-about-environment .environment-box{
	position:relative;
}

.c-about-environment .environment-box:not(:last-child) {
	margin-bottom:8rem;
}

.c-about-environment .environment-box .environment-image{
	position: absolute;
	top: 0;
}

.c-about-environment .environment-box .image-r{
	left: 0;
}

.c-about-environment .environment-box .image-l{
	right: 0;
}


.c-about-environment .environment-box .environment-inner{
	padding-top: 195px;
}

.c-about-environment .environment-box .inner-r{
	margin-right: 0;
	margin-left: auto;
}

.c-about-environment .environment-box .inner-l{
	margin-right: auto;
	margin-left: 0;
}

.c-about-environment .environment-box .environment-inner .environment-num{
	display: block;
	font-weight: 500;
	padding: 0 0 0 25px;
	margin-bottom: 20px;
	width: 150px;
	position: relative;
	z-index: 1;
}

.c-about-environment .environment-box .environment-inner .environment-num::before{
	background: #dde7ed;
	border-radius: 50%;
	content: "";
	display: inline-block;
	margin: auto;
	width: 40px;
	height: 40px;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	z-index: -1;
}

.c-about-environment .environment-box .environment-inner .num-r{
	margin-left: auto;
	margin-right: 0;
}

.c-about-environment .environment-box .environment-inner .num-l{
	margin-left: 0;
	margin-right: auto;
}

.c-about-environment .environment-box .environment-inner .environment-num p{
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.8rem;
	color: #71afd0;
}

.c-about-environment .environment-box .environment-inner .environment-num p span{
	font-size:2.5rem;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}

.c-about-environment .environment-box .environment-inner .environment-txt{
	background: rgba(244,245,247,.8);
	padding: 40px 20px;
	margin: 0 auto;
	position: relative;
}

.c-about-environment .environment-box .environment-inner .environment-txt h3{
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 20px;
}

.c-campaign{
	background-color:#FFF;
	border-bottom: 1px solid #ccc;
}

.c-campaign .width-1500px{
	background-image: linear-gradient( 70deg, #accbee 0%,#e7f0fd 100%);
	border-radius: 15px;
}

.c-campaign .campaign-box{
	background: #fff;
	border-radius: 5px;
	display: block;
	margin: auto;
	padding: 4rem 0;
	width: 90%;
}

.c-campaign .campaign-box h2{
	position: relative;
	text-align: center;
	font-weight: bold;
	line-height: 1.3;
	font-size: 2rem;
	color: #8a9ecc;
}

.c-campaign .campaign-box h2:before,
.c-campaign .campaign-box h2:after {
	position: relative;
	display: inline-block;
	content: "";
	background: #8a9ecc;
	width: 2px;
	height: 1.5em;
	margin: 0 1em;
	margin-top: -.2em;
	vertical-align: middle;
}
.c-campaign .campaign-box h2:before {
	transform: rotate(-35deg);
}
.c-campaign .campaign-box h2:after {
	transform: rotate(35deg);
}

.c-campaign .campaign-box .catch{
	font-size: 1.6rem;
	color: #8a9ecc;
	margin: 3rem 0 1rem;
	text-align: center;
	line-height: 1.6;
}

.c-campaign .campaign-box .catch span{
	font-size: 3.5rem;
}

.c-campaign .campaign-box .explanation{
	font-size:1.5rem;
	text-align:center;
	margin-bottom: 2rem;
	padding: 0 1rem;
}

.c-campaign .campaign-box p{
	font-size: 1.4rem;
	padding: 0 2rem;
}


/* サポート体制
--------------------------------*/
.c-support{
	position:relative;
}

.c-support .catch{
	font-size: 2rem;
	margin-bottom: 5rem;
	color: #71afd0;
	line-height: 1.8;
}
.c-support .tx-c{
}

.c-support .support-box{
	margin-top: 6rem;
	background-color: #FFF;
	padding: 5rem 2rem;
	border-radius: 20px;
	display: flex;
	flex-wrap: wrap;
}

.c-support .support-box .support-txt{
	width:100%;
	order: 1;
}

.c-support .support-box .support-txt h3{
	color: #FFF;
	text-align: center;
	background-color: #71afd0;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 1.8rem;
	margin-bottom: 3rem;
}


.c-support .support-box .support-image{
	width:100%;
	margin-top: 4rem;
	order: 2;
}

.c-support .support-box .support-image img{
	width:100%;
	height:auto;
}

/* 当社の実績
--------------------------------*/
.c-achievement{
	position:relative;
}

.c-achievement .achievement-box{
	position:relative;
	padding: 3rem 1rem 5rem;
	background-color:#e6f0f5;
	border-radius: 20px;
	margin-bottom: 6rem;
}

.c-achievement .achievement-box .catch{
	text-align:center;
	font-size: 2.4rem;
	margin-bottom: 5rem;
}

.c-achievement .achievement-box .personal{
	display:flex;
	justify-content: space-between;
	background-color: #FFF;
	padding: 3rem 2rem;
	border-radius: 15px;
	width: 100%;
	margin: 0 auto 5rem;
	flex-wrap: wrap;
}

.c-achievement .achievement-box .personal .personal-txt{
	width:100%;
	order: 2;
}

.c-achievement .achievement-box .personal .personal-image{
	width:100%;
	order: 1;
}

.c-achievement .achievement-box .personal .personal-image img{
	width:100%;
}

.c-achievement .achievement-box .personal .personal-txt .name{
	font-size:2rem;
	margin-bottom:20px;
}

.c-achievement .achievement-box .personal .personal-txt .name span{
	display:block;
	color:#777;
	font-size:1.4rem;
}

.c-achievement .achievement-box .personal .personal-txt .reward{
	display:flex;
	margin: 0;
}

.c-achievement .achievement-box .personal .personal-txt .reward p{
	width:50%;
	color:#df518c;
	font-size:2.4rem;
	font-weight: 600;
}

.c-achievement .achievement-box .personal .personal-txt .reward p > span{
	width:30%;
	padding: 3px 10px;
	border-radius: 5px;
	background: #e0e0e0;
	color: #777;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	display: block;
}

.c-achievement .achievement-box .personal .personal-txt .reward p > span{
	width:60%;
	padding: 1px 10px;
	border-radius: 5px;
	background: #f28983;
	color: #FFF;
	text-align: center;
	font-size: 1.2rem;
	font-weight: 600;
	display: block;
}

.c-achievement .achievement-box .personal .personal-txt table{
	width: 100%;
	word-break: break-all;
	border-spacing: 0;
	box-sizing: border-box;
	margin-top: 1rem;
}

.c-achievement .achievement-box .personal .personal-txt table thead th{
	background: #71afd0;
	color: #fff;
	font-size: 1.4rem;
	padding: 0.3rem 0;
}

.c-achievement .achievement-box .personal .personal-txt table tbody th{
	font-weight: 400;
	width: 70%;
	background: #e6f0f5;
	border: solid 1px #e6e6e6;
	padding: 10px;
}

.c-achievement .achievement-box .personal .personal-txt table tbody td{
	border: solid 1px #e6e6e6;
	padding: 10px;
	width:30%;
}

.c-achievement .achievement-box .voice{
	background-color: #FFF;
	padding: 5rem 2rem 3rem;
	border-radius: 20px;
	width: 100%;
	margin: 0 auto;
}

.c-achievement .achievement-box .voice p{
	margin-bottom:2rem;
}

/* よくある質問
--------------------------------*/
.c-faq{
	position:relative;
	background-color:#FFF;
	border-bottom: 1px solid #ccc;
}

.c-faq dl{
	margin-bottom:4rem;
}

.c-faq dl dt{
	position:relative;
	font-size: 1.6rem;
	font-weight: 600;
	background-color: #71afd0;
	color: #FFF;
	border-radius: 15px;
	padding: 1rem 1rem 1rem 6rem;
	line-height: 1.8;
}

.c-faq dl dt:before{
	content: "Q";
	color: #71afd0;
	background-color: #FFF;
	width: 35px;
	height: 35px;
	text-align: center;
	display: block;
	line-height: 35px;
	border-radius: 30px;
	font-weight: 700;
	position: absolute;
	left: 1rem;
	top: 0.8rem;
}

.c-faq dl dd{
	position:relative;
	padding: 2rem 1rem 2rem 6rem;
	text-align: left;
	margin: 0;
}

.c-faq dl dd:before{
	content: "A";
	color: #71afd0;
	width: 33px;
	height: 33px;
	text-align: center;
	display: block;
	line-height: 33px;
	border-radius: 30px;
	font-weight: 700;
	position: absolute;
	left: 0.8rem;
	font-size: 1.6rem;
	border: 2px solid #71afd0;
}

/* プライバシーポリシー
--------------------------------*/
.c-privacypolicy h2{
	font-size:2.2rem;
	text-align:center;
	font-weight:500;
}

.c-privacypolicy h2::after{
	content: "";
	background-color: #71afd0;
	display: block;
	height: 3px;
	width: 6rem;
	margin: 3rem auto;
}

.c-privacypolicy .pr-catch{
	margin:5rem 0;
	font-weight:500;
}

.c-privacypolicy h3{
	font-size:1.8rem;
	margin-top:5rem;
	font-weight:500;
	border-bottom: 1px solid #71afd0;
	margin-bottom: 2rem;
}

.c-privacypolicy p{
	font-size:1.4rem;
}

.c-privacypolicy .pc-spacing{
	margin-top:1rem;
}

.c-privacypolicy ul{
	margin-top:3rem;
	margin-bottom:3rem;
}

.c-privacypolicy ul li{
	margin-left:3rem;
}

.c-privacypolicy .list-disc li{
	list-style: disc;
	margin-left:4rem;
}

.c-privacypolicy a{
	text-decoration:underline;
}

/* お問い合わせ
--------------------------------*/
.c-contact{
	position:relative;
}

.c-contact .contact-title{
	color: #FFF;
	text-align: center;
	background-color: #71afd0;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 1.8rem;
	padding: 0.5rem;
}

.c-contact .explanation{
	margin:3rem 0;
	text-align: left;
}

.c-contact .etc-contact{
	margin: 5rem auto 0;
	width: 95%;
}

.c-contact .etc-contact li{
	width:100%;
	padding:2rem;
	text-align:center;
}

.c-contact .etc-contact li .title{
	padding:0.5rem 0;
	font-weight: 600;
	font-size: 1.8rem;
}

.c-contact .etc-contact li .supplement{
	font-size:1.2rem;
	line-height: 1.8;
}

.c-contact .etc-contact .tel{
	color:#71afd0;
	background-color: #FFF;
	border: 2px solid #71afd0;
	margin-bottom: 3rem;
}

.c-contact .etc-contact .tel .title{
	border-bottom:1px solid #71afd0;
}

.c-contact .etc-contact .tel a{
	font-size:2.8rem;
	color: #71afd0;
	margin: 0.5rem 0;
	display: block;
	font-weight: 700;
}

.c-contact .etc-contact .tel a i{
	margin-right:5px;
}

.c-contact .etc-contact .line{
	color:#06c755;
	background-color: #FFF;
	border: 2px solid #06c755;
}

.c-contact .etc-contact .line .title{
	border-bottom:1px solid #06c755;
}

.c-contact .etc-contact .line a{
	font-size:2.1rem;
	color: #FFF;
	margin: 2rem auto;
	display: block;
	font-weight: 700;
	background-color: #06c755;
	border-radius: 20px;
	width: 85%;
	box-shadow: 1px 3px 3px 0px rgba(0, 0, 0, 0.15);
}

.c-contact .etc-contact .line a i{
	margin-right:5px;
}

.c-contact .contact-box{
	width:100%;
	margin:6rem auto 0;
	background-color:#e6f0f5;
	padding: 3rem 1rem;
	border-radius: 20px;
}

.c-contact .contact-box ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 3rem auto 0;
	width: 80%;
	position: relative;
	z-index: 1;
}

.c-contact .contact-box ul::after{
	background: #d8d8d8;
	content: "";
	z-index: -1;
	margin: auto;
	height: 2px;
	width: 95%;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: -10px;
}

.c-contact .contact-box ul .active::before{
	content: "";
	margin: auto;
	height: 2px;
	width: 12rem;
	position: absolute;
	bottom: 0;
	right: 20px;
	top: -10px;
	background-color: #71afd0;
}

.c-contact .contact-box ul .active:first-child::before{
	content: none;
}

.c-contact .contact-box ul .active span{
	color:#fff;
}

.c-contact .contact-box ul .active .cricle{
	background-color: #71afd0;
	color: #fff;
	border: none;
	font-weight: 600;
	line-height: 4;
}

.c-contact .contact-box ul .cricle{
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	background-color: #fff;
	color: #ADADAD;
	margin-bottom: 1rem;
	font-size:1.2rem;
	font-weight:600;
	line-height: 4;
	border: 2px solid #D8D8D8;
}

.c-contact .contact-box ul li{
	color: #fff;
	text-align: center;
	position: relative;
}

.c-contact .contact-box ul li span{
	display:block;
	color: #ADADAD;
	font-size:1.6rem;
}

.c-contact .contact-box ul li .cricle-in{
	position:absolute;
	top: 2rem;
	left: 2.3rem;
	font-size: 1.2rem;
}

/* お問い合わせ・フォーム部分
--------------------------------*/
.contactpage_form{
	width: 100%;
	margin: 5rem auto;
	background-color: #FFF;
	padding: 3rem 2rem;
	border-radius: 20px;
}

.contactpage_form .req::after{
	content: "必須";
	color: #FFF;
	font-size: 1.2rem;
	padding: 0px 10px;
	position: absolute;
	right:0;
	background-color: #ed2b2b;
	border-radius: 5px;
}

.contactpage_form .any::after{
	background: #666;
	content: "任意";
	color: #fff;
	font-size: 1.2rem;
	line-height: 2;
	padding: 0px 10px;
	position: absolute;
	right: 0;
	border-radius: 5px;
}

.contactpage_form .form_title{
	background-color: #50535d;
	text-align: center;
	color: #FFF;
	font-weight: 500;
}

.contactpage_form table{
	width: 100%;
	border-collapse: collapse;
}

.contactpage_form table tr{
	/*! border-bottom: 1px solid #dadada; */
	display: flex;
	flex-wrap: wrap;
}

.contactpage_form table tr:first-child{
	/*! border-top: 1px solid #dadada; */
}

.contactpage_form table th{
	text-align: left;
	vertical-align: middle;
	font-weight: 500;
	position: relative;
	font-size: 1.4rem;
	padding-top: 3rem;
	width: 95%;
	background-clip: padding-box;
	order: 1;
}

.contactpage_form table td{
	width:100%;
	font-size: 1.6rem;
	padding: 3rem 0 3rem 2rem;
	border-bottom: 1px dotted #ccc;
	order: 2;
}

.contactpage_form input {
	border-radius:10px;
	padding: 0.8rem;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	box-shadow: 1px 1px 1px 0px rgba(196, 207, 214, .8) inset;
	border: 1px solid #d2dadf;
	width: 100%;
	background-color: #FFF;
}

.contactpage_form select{
	border-radius:10px;
	padding: 0.8rem;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	box-shadow: 1px 1px 1px 0px rgba(196, 207, 214, .8) inset;
	border: 1px solid #d2dadf;
	background-color: #FFF;
}

.contactpage_form input,textarea {
	border-radius:10px;
	padding: 0.8rem;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	box-shadow: 1px 1px 1px 0px rgba(196, 207, 214, .8) inset;
	border: 1px solid #d2dadf;
	font-size: 1.4rem;
	width: 100%;
	font-weight: 500;
}

.contactpage_form input[type="checkbox"]{
	border-radius:15px;
	padding: 0.8rem;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
	box-shadow: 1px 1px 1px 0px rgba(196, 207, 214, .8) inset;
	border: 1px solid #d2dadf;
	font-size: 1.6rem;
	width: auto;
}

.contactpage_form input::placeholder,
.contactpage_form textarea::placeholder {
	color:#999;
	font-size:1.4rem;
}


.contactpage_form input:hover {
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.contactpage_form input:focus {
	background-color: #FFFFE1;
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.contactpage_form select:hover {
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.contactpage_form select:focus {
	background-color: #FFFFE1;
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.contactpage_form textarea:hover {
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.contactpage_form textarea:focus {
	background-color: #FFFFE1;
	box-shadow:inset 2px 2px 3px #CCCCCC;
	transition:0.5s;
	-webkit-transition:0.5s;
	-ms-transition:0.5s;
	-moz-transition:0.5s;
}

.mwform-checkbox-field input{
	margin-right: 5px;
	transform: scale(1.4);
	-moz-transform: scale(1.4);
	-webkit-transform: scale(1.3);
}

.contactpage_form .mwform-zip-field{
	margin-bottom:2rem;
	display: block;
}

.contactpage_form .caution{
	font-size:1.4rem;
	margin-bottom: 2rem;
}

.contactpage_form_btn{
	text-align: center;
	margin: 4rem auto;
	width: 90%;
}

.contactpage_form_btn input[type="submit"]{
	display: block;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	height: 50px;
	line-height: 50px;
	position: relative;
	background-color: #71afd0;
	border: none;
	width: 300px;
	border-radius: 20px;
}

.contactpage_form_btn button[type="submit"]{
	display: block;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	height: 50px;
	line-height: 50px;
	position: relative;
	background-color: #7f7f7f;
	width: 300px;
	border-radius: 20px;
	border: none;
	margin-bottom: 2rem;
}


.contactpage_form_btn .send-btn{
	position: relative;
	display: inline-block;
}

.contactpage_form_btn .send-btn::after{
	font-family: "Font Awesome 6 Pro";
	content: "\f178";
	position: absolute;
	right:2rem;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	display: block;
	color:#FFF;
	font-weight: 500;
}

.contactpage_form_btn .back-btn{
	display: inline-block;
	position: relative;
}

.contactpage_form_btn .back-btn::after{
	font-family: "Font Awesome 6 Pro";
	content: "\f177";
	position: absolute;
	left: 2rem;
	top: 35%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	display: block;
	color: #FFF;
	font-weight: 600;
}

.contactpage_form_btn input[type="submit"]:hover,
.contactpage_form_btn button[type="submit"]:hover{
	opacity: 0.7;
}

.contactpage_form .checkbox-adjust{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}

.contactpage_form .checkbox-adjust::after{
	display: block;
	content:"";
	width: 31%;
}

.contactpage_form .checkbox-adjust span{
	width: 31%;
	margin-left: 0px !important;
}

.contact-privacy{
	width: 95%;
	margin: 6rem auto 0;
	padding: 3rem 2rem;
	box-sizing: border-box;
	background-color: #FFF;
	border-radius: 20px;
}

.contact-privacy a{
	text-decoration:none;
	font-weight: 600;
}

.contact-privacy p{
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2.5;
}

.contact-privacy .box-title{
	font-weight:500;
	margin-bottom: 1rem;
	display: block;
}

.contact-privacy .checkbox{
	text-align:center;
	margin-top: 2rem;
}

.contactpage-check .contact-privacy{
	display:none;
}

.contactpage_form .people-number select {
	width: 35%;
}

.contactpage_form .visit-date select {
	width: 15%;
}

.contactpage_form .visit-date .txt{
	font-weight:500;
	margin: 0 5px;
}

/* お問い合わせ・送信完了
--------------------------------*/
.c-contact .contact-box .contactpage-complete{
	width: 100%;
	margin: 5rem auto;
	background-color: #FFF;
	padding: 3rem;
	border-radius: 20px;
	text-align:center;
}

.c-contact .contact-box .contactpage-complete .thanks{
	font-size: 2rem;
	font-weight: 600;
	margin-top: 4rem;
	text-align: center;
}

.c-contact .contact-box .contactpage-complete p{
	margin-top: 4rem;
	text-align: left;
}

.c-contact .contact-box .contactpage-complete a{
	display: block;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	height: 50px;
	line-height: 50px;
	position: relative;
	background-color: #71afd0;
	border: none;
	border-radius: 20px;
	margin: 5rem auto 3rem;
	width: 100%;
}

.c-contact .contact-box .contactpage-complete a i{
	position: absolute;
	right: 2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

/* 404error
--------------------------------*/
.error404{
	width: 90%;
	max-width: 1000px;
	margin: 10rem auto;
	background-color: #FFF;
	padding: 5rem;
	border-radius: 20px;
	text-align:center;
}

.error404 .title{
	font-size: 3rem;
	font-weight: 600;
	margin-bottom: 4rem;
}

.error404 a{
	display: block;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	height: 50px;
	line-height: 50px;
	position: relative;
	background-color: #71afd0;
	border: none;
	width: 300px;
	border-radius: 20px;
	margin: 5rem auto 3rem;
}

.error404 a i{
	position: absolute;
	right: 2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
	font-weight: 300;
}

/* ブログ記事一覧
--------------------------------*/
.blog-list{
	background-color:#FFF;
}

.blog-list ul{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}

.blog-list ul li{
	width:100%;
	margin-bottom: 30px;
	border-bottom: 1px solid #ccc;
}

.blog-list ul li a{
	display:flex;
	justify-content: space-between;
}

.blog-list ul li a .blog-thumbnail{
	width:140px;
	height:100px;
}

.blog-list ul li a .blog-thumbnail img{
	border-radius: 5px;
	object-fit: cover;
	width: 140px;
	height: 100px;
}

.blog-list ul li a .blog-thumbnail{
	width:140px;
	height:100px;
}

.blog-list ul li a .blog-contents{
	width: calc(100% - 170px);
	padding-top: 1rem;
}

.blog-list ul li a .blog-contents .date{
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:1.4rem;
}

.blog-list ul li a .blog-contents h2{
	font-size:1.6rem;
	font-weight:500;
	margin-top: 6px;
}

/* ブログ記事ページ
--------------------------------*/
.single-page{
	background-color:#FFF;
}

.single-page article{
	width:95%;
	margin:0 auto;
	background-color: #e6f0f5;
	padding: 2rem;
	border-radius: 20px;
}

.single-page .post-single{
	width: 100%;
	background-color: #FFF;
	padding: 5rem 2rem;
	border-radius: 20px;
}

.single-page .post-single .post-info{
	margin:0;
}

.single-page .post-single .post-info ul{
	display:flex;
	align-items: center;
	justify-content: flex-end;
}

.single-page .post-single .post-info ul .date{
	font-family: tomarik-poster, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:1.4rem;
}

.single-page .post-single .post-info ul .category{
	background-color:#71afd0;
	color:#FFF;
	padding:2px 10px;
	font-size:1.2rem;
	border-radius:5px;
	margin-left: 10px;
}

.single-page .post-single .post-info h2{
	border-bottom: 1px dotted #ccc;
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 30px;
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.single-page .post-single .post-contents img{
	max-width:100%;
}

.single-page .post-single .post-contents p{
	line-height:1.5;
	margin-bottom:20px;
}

.single-page .nav-below{
	width:100%;
	max-width:1000px;
	margin:5rem auto 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	display: flex;
}

.single-page .nav-below .nav-previous,
.single-page .nav-below .nav-next{
	width: 49.5%;
}

.single-page .nav-below .nav-previous a,
.single-page .nav-below .nav-next a{
	display: block;
	position: relative;
	padding: 30px 0;
	font-weight: 500;
}

.single-page .nav-below .nav-previous{
	text-align: left;
}

.single-page .nav-below .nav-next{
	text-align: right;
}

.single-page .nav-below .nav-previous a span{
	padding-left: 50px;
	padding-right: 20px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: block;
}

.single-page .nav-below .nav-previous a i{
	position:absolute;
	top: 50%;
	left: 2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-weight: 300;
}

.single-page .nav-below .nav-next a span{
	display: block;
	padding-right: 50px;
	padding-left: 20px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}


.single-page .nav-below .nav-next a i{
	position:absolute;
	top: 50%;
	right: 2rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-weight: 300;
}

