@charset "UTF-8";
/*
Theme Name:rashirecru
Author: rashirecru
Description: rashirecru
Version:1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/license/gpl-2.0.html
*/
.sp{
	display:none;
}
html{
	scroll-behavior: smooth;
  	scroll-padding-top: 120px;
}
body{
	margin:0;
	padding:0;
	font-family:'Noto Sans JP', sans-serif;
	font-feature-settings: "palt" 1, "trad" 1;
	-webkit-font-smoothing: antialiased;
	/* background-color:#F2F2F2; */
	color:#1C1C1C;
}
a{
	 text-decoration: none;
	 transition: .3s;
}
.grecaptcha-badge{
	display:none;
}
.wpcf7-spinner{
	display:none;
}
.wpcf7-not-valid-tip{
	font-size:13px;
}
.wpcf7-response-output{
	margin-top:10px !important;
	font-size:13px;
}
@media (hover: hover) {
  a:hover {
    opacity: 0.7;
  }
}
img{
	vertical-align: top;
	width:100%;
}
h1,h2,h3,h4,h5,h6,p{
	margin:0;
}
/*headerはここから*/
header{
	width: 100%;
	height: 5rem;
	transition: .3s;
	position:fixed;
	overflow: hidden;
	z-index: 9999;
	background-color: white;
	display:flex;
	align-items: center;
}
.is-animation {
    position:fixed;
}
.header-width{
	max-width:1350px;
	width:95%;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	align-items: center;
	gap:30px;
}
.logo{
    width:160px;
}
.menu{
	 list-style: none;
	 padding-inline-start:0px;
	 display: flex;
	 flex-direction: row;
	 flex-wrap: wrap;
	 margin:0;
	 gap:20px;
}
.menu li {
	 font-size:14px;
	 margin:0 0 0 0;
	 font-weight:500;
	 letter-spacing:0.02em;
}
.menu li a{
	 color: #1C1C1C;
}
#blackback{
	display:none;
}
.cta-pc{
	display:flex;
	gap:6px;
}
/*共通はここから*/
.common-width{
	max-width:1150px;
	width:90%;
	margin:0 auto;
}
.top-width{
	max-width:1350px;
	width:95%;
	margin:0 auto;
}
/* トップページ */
.top-group{
	padding-top:175px;
}
.top-content{
	display:flex;
	gap:90px;
}
.top-content-left{
	width:47%;
}
.top-content-right{
	width:50%;
}
.top-content-read{
	font-size:33px;
	font-weight:500;
	line-height: 1.8;
	text-align: justify;
	margin-top:90px;
	color:#282828;
}
.top-content-read mark{
	background-color: #FFFF00;
}
.tensaku{
	margin-top:95px;
}
.tensaku-content{
	display:flex;
	gap:25px;
}
.tensaku-content-left{
	width:35%;
	background-color:#3E3E3E;
	border-radius: 8px;
	padding:40px;
}
.tensaku-content-left>div{
	display:flex;
	align-items: center;
	gap:25px;
	border-bottom:1px solid white;
	padding-bottom:27px;
}
.over-icon{
	width:70px;
}
.over-icon img{
	border-radius: 13px;
	vertical-align: middle;
}
.tensaku-content-left>div h2{
	font-size:30px;
	color:white;
}
.tensaku-content-left h3{
	color:white;
	font-size:27px;
	font-family: "Roboto", sans-serif;
	margin-top:25px;
	display: flex;
    align-items: center;
    gap: 17px;
}
.tensaku-content-left h3::before {
    content: "";
    /* font-size: 40px; */
	width:19px;
	height:19px;
	border-radius: 100px;
    background-color: #FFFF00;
    /* line-height: 0.4; */
}
.tensaku-content-left p{
	font-size:14px;
	font-weight:500;
	text-align: justify;
	line-height: 1.8;
	color:white;
	margin-top:15px;
}
.tensaku-content-left ol{
	padding:0 0 0 20px;
}
.tensaku-content-left li{
	font-size:15px;
	font-weight:500;
	text-align: justify;
	line-height: 1.8;
	color:white;
	margin-top:15px;
}.tensaku-content-left li a{
	color: white;
}
.tensaku-content-right{
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	gap:25px;
	width:calc(100% - 35%);
}
.tensaku-content-right>div{
	background-color: #F4F4F4;
	border-radius: 8px;
	padding:40px;
	display:flex;
	align-items: center;
	gap:40px;
}
.pf-img{
	width:160px;
}
.pf-img img{
	border-radius: 8px;
}
.pf-info{
	width:calc(100% - 200px);
}
.tensaku-content-right h3{
	font-size:15px;
	font-weight:600;
}
.tensaku-content-right h2{
	font-size:26px;
	font-weight:600;
}
.tensaku-content-right p{
	font-size:14px;
	font-weight:500;
	text-align: justify;
	line-height: 1.8;
	margin-top:15px;
}
.top-contact{
	background-color: #F4F4F4;
	padding:70px 0;
	margin:100px auto 0 auto;
	width:96%;
}
.top-contact h2{
	width:800px;
	margin:0 auto 30px auto;
	font-size:35px;
}
.top-contact .wpcf7{
	width:800px;
	margin:0 auto;
}
/* フォーム */
.form-top{
	gap:80px;
}
.form-back{
	background-color:white;
	padding:40px 40px;
	border-radius: 20px;
}
.form-flex{
	display:flex;
	gap:10px;
}
.form-group{
	display:flex;
	flex-direction: column;
	gap:25px;
}
.form-group div label{
	display:flex;
	flex-direction: column;
	gap:7px;
}
.form-group div label span:nth-child(1){
	font-size:15px;
	font-weight:600;
}
.form-group div label span:nth-child(2){
	width:100%;
}
.form-group div label input{
	width:100%;
	padding:0;
	height:40px;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-block: 2px;
	padding-inline: 13px;
	box-sizing: border-box;
}
.form-group div label .wpcf7-select{
	width:100%;
	padding:14px 5px;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-inline: 13px;
}
.form-group div label textarea{
	width:100%;
	padding:0;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-block: 5px;
	padding-inline: 13px;
	box-sizing: border-box;
	resize: vertical;
}
.form-group div label .required{
	background-color: #FF4800;
	color:white;
	padding:3px 10px;
	font-size:10px !important;
	border-radius: 30px;
	margin-left:10px;
	position: relative;
	top:-1px;
}
.form-submit{
	margin-top:20px;
}
.form-submit .wpcf7-submit{
	background-color: #FF4800;
	color:white;
	font-size:20px;
	font-weight: 600;
	padding:6px 0;
	width: 100%;
	text-align: center;
	border-radius: 10px;
	border: none;
}
.form-example{
	/* gap:20px; */
	display:flex;
	flex-direction: column;
}
.form-top .is-style-default{
	width:35px !important;
	margin:15px 0 15px 0;
}
.form-example p{
	background-color: white;
	padding:20px 25px;
	border-radius:10px;
	font-weight:500;
	font-size:14px !important;
}
.has-luminous-vivid-amber-color{
	background-color: yellow !important;
	color: inherit !important;
}
.wpcf7-form-control{
	display:flex !important;
	flex-wrap: wrap !important;
	gap:15px !important;
}
.wpcf7-list-item{
	margin:0 !important;
}
.wpcf7-list-item label{
	flex-direction: row !important;
	align-items: center !important;
	gap:5px !important;
}
.wpcf7-list-item-label{
	font-size:15px !important;
	font-weight:500 !important;
}
.wpcf7-form-control .wpcf7-list-item:nth-child(2){
	width:auto !important;
}
.wpcf7-list-item label input{
	height:15px !important;
	width:auto !important;
}
.check-box-title{
	font-size:16px;
	font-weight: 600;
	margin-bottom:15px;
	display:block;
}
/* フッター */
footer{
	background-color:#1E1F1F;
	padding:90px 0 20px 0;
	margin-top:135px;
}
.footer-content{
	display:flex;
	gap:55px;
}
.f-logo{
	width:140px;
	margin-top:3px;
}
.footer-link{
	display:flex;
	gap:50px;
}
.footer-link ul{
	padding:0;
	margin:0;
	display:flex;
	flex-direction: column;
	gap:7px;
}
.footer-link ul li{
	list-style: none;
}
.footer-link ul li a{
	color:white;
	font-size:13px;
	padding:0;
	display:block;
}
.fotter-cta{
	width:285px;
	margin-left: auto;
	display:flex;
	flex-direction: column;
	gap:14px;
}
.fotter-cta img{
	border-radius: 5px;
}
.copy-right{
	display:block;
	color:white;
	font-size:12px;
	font-weight:400;
	margin-top:65px;
	border-top:1px solid #545454;
	padding:20px 0 0 0;
}
/* 診断 */
.diagnosis-pain{
	margin-top:30px;
}
.diagnosis-pain ul{
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	gap:20px;
	list-style: none;
	padding:0;
	margin:30px 0 30px 0;
}
.diagnosis-pain ul li{
	font-size:15px;
	border-bottom:1px solid #c8c8c8;
	padding:0 0 16px 0;
	display:flex;
	gap:10px;
}
.diagnosis-plan-box{
	margin-top:20px;
}
.diagnosis-plan{
    border-collapse: collapse;
    width: 100%;
	background-color: white;
}
.diagnosis-plan td{
	border:solid 1px black;
	padding: .7em;
	font-size:13px;
}
.diagnosis-cart{
	margin-top:30px;
}
.diagnosis-cart-img{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:15px;
	list-style: none;
	padding:0;
	margin:30px 0 0 0;
}
.diagnosis-cart-img img{
	border-radius: 5px;
	border: 1px solid #ececec;
}
.diagnosis-cart p{
	font-size:14px;
	font-weight:400;
	text-align: right;
	margin-top:20px;
}
.diagnosis-contact{
	margin-top:30px;
}
.diagnosis-contact .common-diagnosis-title{
	margin-top:15px;
}
.diagnosis-contact .diagnosis-common-p{
	margin-top:20px;
}
.diagnosis-contact-form{
	margin-top:40px;
}
.diagnosis-flex{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:20px;
}
.diagnosis-contact-form .form-group div label span:nth-child(1){
	font-size:14px;
	font-weight:500;
}
.diagnosis-contact-form .form-group div label .required{
	font-size: 10px !important;
}
.diagnosis-contact-form .form-group div label input{
	height:40px;
}
.diagnosis-contact-form .form-submit .wpcf7-submit{
	border-radius: 5px;
    background: #28b560;
	font-size:17px;
	padding:10px 0;
}