@charset "utf-8";

* {
	box-sizing: border-box;
	overflow-wrap: break-word;
}

html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
}

body {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.4rem;
	line-height: 1.6;
}

main {
	overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}
h1 {
	line-height: 0;
}
a {
	-webkit-transition: all ease-in-out .2s;
			transition: all ease-in-out .2s;
	color: #000;
}
a:focus, a:active, a:hover {
	outline: 0;
	color: #000;
}
a img {
	transition: .5s opacity;
}
a img:hover { 
	opacity: 0.5;
}

table {
	width: 100%;
}
th {
	padding: 10px;
}
td {
	padding: 20px 10px;
}
tr + tr {
	border-top: 1px solid #fff
}

img.ofit {
	object-fit: cover;
}
img {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

::selection {
    background: rgba(255,100,126,.5);
    color: #fff;
}
form {
	text-align: center;
}
form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="tel"],
form select,
form textarea {
	font-family: 'Noto Sans JP', sans-serif;
	border: 2px #ccc solid;
	box-sizing: border-box;
	outline: none;
	max-width: 100%;
	width: 100%;
	padding: 5px 10px;
	border-radius: 10px;
}
form textarea {
	width: 100%;
}
form select {
	width: 3em;
}
form input[type="submit"],
form input[type="reset"],
form button {
	border: none;
	padding: 15px 0;
	min-width: 200px;
}
form input[type="submit"]:hover,
form input[type="image"]:hover,
form input[type="reset"]:hover,
form button:hover {
	cursor: pointer;
}
form input[type="submit"], 
form input[type="reset"], 
form button {
	border: 2px #ccc solid;
	border-radius: 10px;
	color: #FFF;
    background: #0085db;
}
.radio_btn label span {
	position: relative;
	padding-left: 20px;
	line-height: 1;
}
.radio_btn input[type=radio] + span::before,
.radio_btn input[type=radio] + span::after {
	content: "";
	position: absolute;
	display: inline-block;
	border-radius: 50px;
}
.radio_btn input[type=radio] + span::before {
    width: 15px;
    height: 15px;
    background: #FFF;
	border: 1px solid #000;
	top: 5px;
	left: 0;
}
.radio_btn input[type=radio] + span::after {
    width: 11px;
    height: 11px;
    background: #000;
	top: 8px;
	left: 3px;
	opacity: 0;
}
.radio_btn input[type=radio]:checked + span::after {
	opacity: 1;
}
#form td.form_s select {
    width: 6em;
    background: url(../images/select_arrow.png) top right no-repeat #FFF;
    background-size: 20px 40px;
}
.mw_wp_form_complete { width: 90%; margin: 0 auto; text-align: center; }

.m10  { margin: 10px; } .mt10 { margin-top: 10px; } .mr10 { margin-right: 10px; } .mb10 { margin-bottom: 10px; } .ml10 { margin-left: 10px; }
.m15  { margin: 15px; } .mt15 { margin-top: 15px; } .mr15 { margin-right: 15px; } .mb15 { margin-bottom: 15px; } .ml15 { margin-left: 15px; }
.m20  { margin: 20px; } .mt20 { margin-top: 20px; } .mr20 { margin-right: 20px; } .mb20 { margin-bottom: 20px; } .ml20 { margin-left: 20px; }
.m25  { margin: 25px; } .mt25 { margin-top: 25px; } .mr25 { margin-right: 25px; } .mb25 { margin-bottom: 25px; } .ml25 { margin-left: 25px; }
.m30  { margin: 30px; } .mt30 { margin-top: 30px; } .mr30 { margin-right: 30px; } .mb30 { margin-bottom: 30px; } .ml30 { margin-left: 30px; }
.m35  { margin: 35px; } .mt35 { margin-top: 35px; } .mr35 { margin-right: 35px; } .mb35 { margin-bottom: 35px; } .ml35 { margin-left: 35px; }
.m40  { margin: 40px; } .mt40 { margin-top: 40px; } .mr40 { margin-right: 40px; } .mb40 { margin-bottom: 40px; } .ml40 { margin-left: 40px; }
.m45  { margin: 45px; } .mt45 { margin-top: 45px; } .mr45 { margin-right: 45px; } .mb45 { margin-bottom: 45px; } .ml45 { margin-left: 45px; }
.m50  { margin: 50px; } .mt50 { margin-top: 50px; } .mr50 { margin-right: 50px; } .mb50 { margin-bottom: 50px; } .ml50 { margin-left: 50px; }

.p10  { padding: 10px; } .pt10 { padding-top: 10px; } .pr10 { padding-right: 10px; } .pb10 { padding-bottom: 10px; } .pl10 { padding-left: 10px; }
.p15  { padding: 15px; } .pt15 { padding-top: 15px; } .pr15 { padding-right: 15px; } .pb15 { padding-bottom: 15px; } .pl15 { padding-left: 15px; }
.p20  { padding: 20px; } .pt20 { padding-top: 20px; } .pr20 { padding-right: 20px; } .pb20 { padding-bottom: 20px; } .pl20 { padding-left: 20px; }
.p25  { padding: 25px; } .pt25 { padding-top: 25px; } .pr25 { padding-right: 25px; } .pb25 { padding-bottom: 25px; } .pl25 { padding-left: 25px; }
.p30  { padding: 30px; } .pt30 { padding-top: 30px; } .pr30 { padding-right: 30px; } .pb30 { padding-bottom: 30px; } .pl30 { padding-left: 30px; }
.p35  { padding: 35px; } .pt35 { padding-top: 35px; } .pr35 { padding-right: 35px; } .pb35 { padding-bottom: 35px; } .pl35 { padding-left: 35px; }
.p40  { padding: 40px; } .pt40 { padding-top: 40px; } .pr40 { padding-right: 40px; } .pb40 { padding-bottom: 40px; } .pl40 { padding-left: 40px; }
.p45  { padding: 45px; } .pt45 { padding-top: 45px; } .pr45 { padding-right: 45px; } .pb45 { padding-bottom: 45px; } .pl45 { padding-left: 45px; }
.p50  { padding: 50px; } .pt50 { padding-top: 50px; } .pr50 { padding-right: 50px; } .pb50 { padding-bottom: 50px; } .pl50 { padding-left: 50px; }

/* flexbox */
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.flex_inner50-100 {width: 50%;}
.ai_center {align-items: center;}
.ai_end {align-items: flex-end;}

.mincho { font-family: 'Noto Serif JP', serif; }
.Cursive {font-family: 'Parisienne', cursive;}

.center {text-align: center;}
.bold {font-weight: bold;}
.right {text-align: right;}
.text-orange {color: #ff9600;}
.text-red {color: #e10000;}

/* ----------------------------------------
* 
---------------------------------------- */

html, body {
	height: 100%;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.8rem;
}
header {
	
}
.breadcrumb {
	margin-bottom: 20px;
}
.breadcrumb li {
	display: inline-block;
	font-size: 1.1rem;
	margin-right: 5px;
}
.breadcrumb a {
	color: #000;
	display: block;
	padding: 0 15px 0 0;
	position: relative;
}
.breadcrumb li:first-child a:before {
	content: "\f5bb";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: inline-block;
	margin-right: 5px;
}
.breadcrumb a:after {
	content: ">";
	position: absolute;
	top: 0;
	right: 0;
}
.breadcrumb li:first-child {
	padding: 1px 0 1px 17px;
}

#content_area {
	margin: auto;
}



section {
	background: #FFF;
}
.section_inner {
	width: 100%;
	max-width: 1200px;
	padding: 50px 0;
	margin: 0 auto;
}
h2 > img {
    max-width: 640px;
}

.recruitpage h2 {
	font-size: 3rem;
	text-align: center;
	font-weight: bold;
	width: 96%;
	margin: 0 auto 50px;
}

/*----- �ᥤ�� -----*/
#mainTop{
	background: url(../images/main_bg.jpg);
	background-size: cover;
}

#mainTop .text {
	position: relative;
	text-align: center;
	line-height: 1.25;
	margin-bottom: 5px;
}
#mainTop div p:first-child {
	font-size: calc(20px + (50 - 20)*(100vw - 640px)/(1200 - 640));
	font-weight: bold;
	line-height: 1.25;
	color: #c8327d;
	text-shadow: 2px 2px #FFF;
}
#mainTop div p:first-child img{
	position: absolute;
	width: 25%;
	top: -35%;
	left: 0;
}
#mainTop div p:nth-child(2) {
	font-size: calc(18px + (40 - 18)*(100vw - 640px)/(1200 - 640));
	color: #a52a2a;
	margin: 15px 0;
}
#mainTop div p:nth-child(2):before,
#mainTop div p:nth-child(2):after {
	content: "";
	display: block;
	background: -webkit-linear-gradient(left,  rgba(243,226,199,0) 0%,rgba(218,192,151,1) 25%,rgba(193,158,103,1) 50%,rgba(213,185,141,1) 75%,rgba(233,212,179,0) 100%);
	background: linear-gradient(to right,  rgba(243,226,199,0) 0%,rgba(218,192,151,1) 25%,rgba(193,158,103,1) 50%,rgba(213,185,141,1) 75%,rgba(233,212,179,0) 100%);
	width: 80%;
	height: 2px;
	margin: 0 auto;
}
#mainTop div p:first-child span,
#mainTop div p:nth-child(2) span {
	font-size: 125%;
}
#mainTop div p:last-child {
	font-size: calc(18px + (28 - 18)*(100vw - 640px)/(1200 - 640));
	font-weight: bold;
}
#mainTop div p:last-child span {
	display: inline-block;
	color: #FFF;
	background: #F00;
	margin-top: 10px;
	padding: 0 1em;
}

#room {
	background: #e7ecef;
}
#room > p {
	font-size: 3rem;
}
#room p img {
	max-width: 640px;
}
.room_name {
	position: relative;
	justify-content: center;
	font-size: 2vw;
	color: #FFF;
	text-align: center;
	line-height: 1.25;
	width: calc(100% / 3 - 10px);
	height: calc(100vw / 4 - 10px);
	max-height: 290px;
	margin: 4% 5px
}
.room_name > span {
	position: absolute;
	display: block;
	font-size: 1.6vw;
	top: 5%;
	line-height: 1.25;
	background: #F00;
	padding: 5%;
	background-size: cover;
}
.honmachi {
	background: url(../images/honmachi.png) no-repeat 50% 20%;
	background-size: cover;
}
.s-honmachi {
	background: url(../images/s-honmachi.png) no-repeat 10% 20%;	
	background-size: cover;
}
.shinosaka {
	background: url(../images/shinosaka.png) no-repeat 50% 20%;
	background-size: cover;
}
.kyobashi {
	background: url(../images/kyobashi.png) no-repeat 50% 20%;
	background-size: cover;
}
.fukuoka {
	background: url(../images/fukuoka.png) no-repeat 50% 20%;
	background-size: cover;
}
.kitahama {
	background: url(../images/kitahama.png) no-repeat 50% 20%;
	background-size: cover;
}
.higobashi {
	background: url(../images/higobashi.png) no-repeat 0 20%;
	background-size: cover;
}
.room_note {
	max-width: 680px;
	margin: 0 auto;
}
.room_note span.experience_title,
.room_note span.beginner_title {
	display: block;
	position: relative;
	font-size: 3rem;
	letter-spacing: .05em;
	line-height: 1.2;
	border-bottom: 2px dashed #2da5f2;
	padding: 0 2em;
}
/* .room_note span.experience_title:before,
.room_note span.beginner_title:before {
	content: "";
	display: block;
	position: absolute;
	background-size: cover;
	width: 65px;
	height: 65px;
	top: -5px;
	left: 0;
} */
.room_note .experience img,
.room_note .beginner img {
	max-width: 420px;
}
.room_note .experience_text img,
.room_note .beginner_text img {
	display: block;
	max-width: 600px;
	margin: 0 auto;
}

#COVID-19 {
	padding: 1.2em 0.5em;
	background: #d6ebff;
}
#COVID-19 ul li {
	width: calc(100% / 5);
	padding: 2%;
}
#COVID-19 ul  li > div {
	display: block;
	width: 100%;
	max-width: 180px;
	height: auto;
	overflow: hidden;
	background: #FFF;
	margin: 0 auto;
	border-radius: 50%;
}
#COVID-19 ul  li div > img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}
#COVID-19 ul  li span img {
	display: block;
	width: 100%;
	max-width: 200px;
}

#recommend {
	background: url(../images/recommend_bg.jpg) 0 30%;
	background-size: cover;
}
#recommend .recommend_point img {
	display: block;
	max-width: 400px;
	margin: 0 auto;
}
#recommend p.recommend_point_title {
	font-size: 3rem;
	line-height: 1.25;
	margin-bottom: 20px;
}
#recommend p.recommend_point_title img {
	max-width: 500px;
}
#recommend span.recommend_point_list img {
	max-width: 500px;
}
#recommend ul li {
	color: #6495ed;
	font-size: 2rem;
	font-weight: bold;
	text-indent: -3em;
	margin-left: 3em;
}
#recommend ul li:before {
	content: "";
	display: inline-block;
	background: url(../images/check.png) top center;
	background-size: cover;
	width: 40px;
	height: 40px;
	vertical-align: middle;
}

#problem {
	position: relative;
	background: #2da5f2;
}
#problem .section_inner {
	padding-bottom: 0;
}
.problem_contrnts {
	position: relative;
	justify-content: space-around;
}
.problem_contrnts:nth-child(odd) {
	flex-direction: row-reverse;
}
.problem_contrnts h3 {
	font-size: 3rem;
	text-align: center;
	border-bottom: 3px solid #fff;
	margin-bottom: 10px;
}
.problem_contrnts h3.problem_title img {
	max-width: 420px;
}
.problem_contrnts > img {
	width: 35%;
	object-fit: contain;
}
.problem_contrnts .problem_block  {
	width: 50%;
}
.problem_block li {
}
.problem_block li:before {
	content: "";
	display: inline-block;
	background: url(../images/check2.png) top center;
	background-size: cover;
	width: 40px;
	height: 40px;
	vertical-align: middle;
	margin-right: .25em;
}
.icon_problem {
	width: 150px;
	margin: 0 auto;
}

#treatment p {
	text-align: center;
}
#treatment p.treatment_txt1 img {
}
#treatment p.treatment_txt2 img {
	display: inline-block;
	max-width: 310px;
}
#treatment p.treatment_txt2 img + img {
	display: inline-block;
	max-width: 310px;
}
#treatment p + p {
	font-size: 4rem;
	line-height: 1.2;
}
#treatment img {
	display: block;
	max-width: 600px;
	margin: 0 auto;
}
#treatment .flex img{
	display: block;
	width: 25vw;
	max-width: 150px;
	height: 25vw;
	max-height: 150px;
	padding: 5px;
}
#treatment .flex {
	max-width: 600px;
	margin: 0 auto;
	justify-content: center;
}

#backbonus img {
	display: block;
	max-width: 640px;
	margin: 0 auto;
}

/*----- ���o���� -----*/
#example .recruit_salary {
	max-width: ;
	margin: 0 auto;
	justify-content: space-between;
}
.example-flex-wrap {
	width: 49%;
	background: #ffe17d;
	background-image: url(../images/corner_tl.png),
						url(../images/corner_tr.png),
						url(../images/corner_bl.png),
						url(../images/corner_br.png);
	background-position: top left,top right,bottom left,bottom right;
	background-repeat: no-repeat;
	border-radius: 30px;
	padding: 20px 7% 5%;
	margin-top: 100px;
}
.example-price-box {
	font-size: 2rem;
	font-weight: bold;
}
.example-price-box p {
	display: flex;
	justify-content: space-between;
}
.example-price-box > div p:last-of-type{
	border-bottom: solid black 1px;
}
.example_img {
	justify-content: space-between;
}
.example_img img {
	width: 49%;
	object-fit: contain;
}

.job_time {
    position: relative;
    text-align: center;
    font-size: 2rem;
    line-height: 1.2;
	background: url(../images/ribbon.png) center center;
    background-size: cover;
    width: 200px;
    height: 200px;
    margin: -125px auto 0;
    top: 0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
}
.job_time p span {
	display: block;
	color: #e10000;
	font-size: 75%;
}
.total {
	font-size: calc(18px + (28 - 18)*(100vw - 640px)/(1200 - 640));
}

#flow {
	background: #d7f0f0;
}
#flow ul {
	max-width: 800px;
	margin: 0 auto;
}
#flow li {
	position: relative;
}
#flow li:not(:last-child):after {
	content: "";
    border-top: 30px solid #96afaf;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    position: relative;
    left: 50%;
    margin: 10px 0 10px -30px;
}
#flow li > img {
	width: 250px;
	height: 250px;
}
#flow li div {
	width: calc(100% - 270px);
	margin-left: 20px;
}
#flow li div h3 {
	position: relative;
	font-size: 3rem;
	letter-spacing: .1em;
	margin-bottom: 10px;
	padding-left: 45px;
}
#flow li div h3:before {
	content: "";
	position: absolute;
	background: url(../images/icon_step1.png);
	background-size: cover;
	display: inline-block;
	width: 75px;
	height: 50px;
	margin-right: 5px;
	vertical-align: middle;
	left: -45px;
}
#flow li:nth-child(2) div h3:before {
	background: url(../images/icon_step2.png);
	background-size: cover;
}
#flow li:nth-child(3) div h3:before {
	background: url(../images/icon_step3.png);
	background-size: cover;
}
#flow li:nth-child(4) div h3:before {
	background: url(../images/icon_step4.png);
	background-size: cover;
}

/*----- 募集要項 -----*/
.application_wrap {
	max-width: 880px;
	margin: 0 auto;
}
.application {
	font-size: 1.6rem;
	width: 50%;
	margin: 0 auto;
	text-align: left;
}
.application > dt {
	font-size: 2rem;
	font-weight: bold;
	border-bottom: 1px solid #c8af7d;
}
.application > dt:before {
	content: "";
	background: url(../images/icon_pen.png);
	background-size: cover;
	display: inline-block;
	width: 50px;
	height: 50px;
	margin-right: .5em;
	vertical-align: bottom;
}
.application > dd {
	padding: 1em 1em 2em 2em;	
}
.application > dd:last-of-type {
	padding-bottom: 0;	
}
.application .area {
	display: block;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 10px;
	margin-bottom: 15px;
}
.application .area p {
	text-align: center;
    letter-spacing: .5em;
    font-weight: bold;
    color: #ffffff;
    background: #c80000;
    border-radius: 10px;
    margin-bottom: 5px;
}
.app_contact > dt {
	width: 5em;
}
.app_contact > dd {
	width: calc(100% - 5em);
}
.app_contact > dd a {
	font-weight: bold;
}
.treatment {
	display: flex;
	margin-bottom: 10px;
	align-items: center;
	line-height: 1.2;
}
.treatmentIocn {
	display: flex;
	font-size: 1.4rem;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	width: 120px;
	height: 40px;
	background: #0085db;
	border-radius: 10px;
	margin-right: 10px;
	justify-content: center;
	align-items: center;
}
.treatmentText {
	width: calc(100% - 120px)
}

#notrouble {
	max-width: 880px;
	margin: 0 auto;
}
#notrouble .flex div {
	font-size: 1.6rem;
	width: calc(100% - 400px);
}
#notrouble .flex div p {
	position: relative;
	justify-content: center;
    font-size: 2.4rem;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 10px;
    width: 10em;
    height: 5em;
    margin: 0 auto;
}
#notrouble .flex div p:before {
	content: "";
	position: absolute;
	width: 3em;
	height: 3em;
	background: #d7f0f0;
	transform: rotate(45deg);
}
#notrouble .flex div p span{
	z-index: 0;
}
#notrouble .notrouble_img img {
	width: 400px;
	height: 250px;
}


/*----- フォーム -----*/
.form_wrap {
	max-width: 880px;
	margin: 0 auto;
}
.form_area {
	width: calc(100% - 250px);
	padding-left: 30px;
	margin-top: -16px;
}
.btn_area {
	font-size: 1.4rem;
	line-height: 1.2;
	width: 250px;
}
.form_ttl {
	font-size: 2.4rem;
    text-align: center;
    background: #d7f0f0;
    margin-bottom: 30px;
}

.tel-wrap,
.line-wrap,
.mail-wrap {
	border: solid 3px #00b900;
	border-radius: 20px;
	width: 250px;
	margin: 0 auto 20px;
	overflow: hidden;
}
.tel-wrap h3,
.line-wrap h3,
.mail-wrap h3 {
	background: #00b900;
	color: #FFF;
	font-size: 2rem;
	font-weight: bold;
	padding: 5px;
}
.tel-text,
.line-id-text,
.mailaddress-text {
	font-size: 1.4rem;
	color: #000;
}
.tel-text span {
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
}
.tel-text span + span {
	font-size: 1.8rem;
}
.mail-wrap {
	border: solid 3px #0085db;
}
.mail-wrap h3 {
	background: #0085db;
}
.tel-wrap {
	border: solid 3px #d490bf;
}
.tel-wrap h3 {
	background: #d490bf;
}
.line-id-text  {
	font-size: 1.2rem;
	color: #00b900;
}
.line-id-text span {
	display: block;
	color: #000;
	font-size: 1.8rem;
	font-weight: bold;
}
.area-separate {
	justify-content: space-between;
	margin-top: 10px;
}
.area-separate div {
	width: calc(50% - 2.5px);
}
.area-separate.area-separate_single div {
	width: 100%;
}
.area-name,
.area-name a {
	color: #FFF;
	font-weight: bold;
	background: #c80000;
	line-height: 1.5;
	border-radius: 10px;
}

/*----- FAQ -----*/
.recruit_qa {
	background: #2da5f2;
}
#acMenu {
	font-size: 1.6rem;
	text-align: left;
	font-weight: bold;
	max-width: 680px;
	margin: 0 auto;
	padding: 0 20px;
}
#acMenu dt,
#acMenu dd{
	margin-bottom: 10px;
}
#acMenu dt{
	align-items: center;
	padding: 10px;
	color: #ff7d96;
	border: 1px solid #ff7d96;
	border-radius: 15px;
}
#acMenu dt img {
	width: 40px;
}
#acMenu dt span {
	width: calc(100% - 40px);
	padding-left: 10px;
}
#acMenu dd{
	padding: 0 10px;
	margin: 0 0 15px 10px;
	border-left: 5px dotted #999;
	display:block;
}
#FAQ .pc_view img {
	display: block;
	max-width: 800px;
	margin: 0 auto;
}
#FAQ .sp_view img {
	display: block;
	max-width: 400px;
	margin: 0 auto;
}

/*----- フッター -----*/
.copyright,
.copyright a {
	display: block;
	font-size: 1.4rem;
	color: #000;
}
.ffn_recruit_pc a {
    position: fixed;
    display: none;
    width: 250px;
    height: 250px;
    color: #FFF;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    background: #00b900;
    right: -125px;
    bottom: -125px;
    padding-top: 10px;
    z-index: 998;
    transform: rotate(-45deg);
}
.ffn_recruit_pc i {
	font-size: 5rem;
	font-weight: normal;
}

@media screen and (min-width: 641px) {
	.pc_view {display: block;}
	.sp_view {display: none;}
	.room_name {
		font-size: 1.6vw;
		width: calc(100% / 6 - 10px);
		margin: 0 5px;
	}
}
@media screen and (min-width: 1200px) {
	#mainTop div p:first-child { font-size: 5rem;}
	#mainTop div p:nth-child(2) { font-size: 4rem;}
	#mainTop div p:last-child { font-size: 2.8rem;}
	.room_name { font-size: 2rem;}
	.room_name > span { font-size: 1.6rem;}
	.total {font-size: 2.8rem;}
}
@media screen and (max-width: 959px) {
	
}
@media screen and (max-width: 640px) {
	.pc_view {display: none;}
	.sp_view {display: block;}

	body{
		font-size: 1.4rem;
	}

	.section_inner {
		padding: 50px 0 25px;
	}
	.recruitpage h2 {
		font-size: 2.5rem;
		margin-bottom: 25px;
	}

	.flex_inner50-100 {width: 100%;}
	#mainTop div p:first-child {
		font-size: calc(20px + (75 - 20)*(100vw - 240px)/(1200 - 240));
	}
	#mainTop div p:first-child img{
		position: absolute;
		width: 20%;
		top: -30%;
		left: 5%;
	}
	#mainTop div p:nth-child(2) {
		font-size: calc(18px + (75 - 18)*(100vw - 240px)/(1200 - 240));
		margin: 15px 0;
	}
	#mainTop div p:last-child {
		font-size: calc(18px + (50 - 18)*(100vw - 240px)/(1200 - 240));
	}
	#mainTop div p:last-child span {
		margin-top: 10px;
		padding: 0 1em;
	}

	.room_name {
		font-size: 5vw;
		height: calc(100vw / 3 - 10px);
	}
	.room_name > span {
		font-size: 2vw;
		top: -15%;
	}
	.room_note span.experience_title,
	.room_note span.beginner_title {
		font-size: 2.5rem;
		padding: 0 .5em;
	}

	#COVID-19 ul li {
		width: 100%;
		font-size: 1.5rem;
		margin-bottom: 10px;
	}
	#COVID-19 ul li div {
		width: 100px;
		margin: 0;
	}
	#COVID-19 ul li div > img {

	}
	#COVID-19 ul li span {
		width: calc(100% - 100px - 1em);
	}
	#COVID-19 ul li span img {
		max-width: none;
	}

	#recommend {
		background-position: 20% center;
		background-color: rgba(255,255,255,.8);
		background-blend-mode: lighten;
	}
	#recommend img {
		margin-top: 130px;
		max-width: 320px;
	}
	#recommend p {
		font-size: 6vw;
		text-align: center;
	}
	#recommend ul li {
		font-size: calc(18px + (40 - 18)*(100vw - 240px)/(1200 - 240));
	    line-height: 1;
	    margin-bottom: 15px;
	}

	.problem_contrnts {
		flex-direction: column;
		margin-bottom: 25px;
	}
	.problem_contrnts:nth-child(odd) {
		flex-direction: column;
	}
	.problem_contrnts h3 {
		font-size: 2.4rem;
	}
	.problem_contrnts h3.problem_title img {
		margin-top: 10px;
	}
	.problem_block {
		font-size: 1.6rem;
	}
	.problem_contrnts > img,
	.problem_contrnts .problem_block {
		width: 100%;
	}
	.icon_problem {
		position: absolute;
		top: 0;
		left: 0;
		transform: rotate(-20deg);
	}

	#treatment p + p {
		font-size: 3rem;
	}

	#notrouble .flex {
		flex-direction: column-reverse;
	}
	#notrouble .flex div {
		width: 100%;
	}
	#notrouble .notrouble_img img {
		display: block;
		width: 100%;
		max-width: 300px;
		height: auto;
		margin: 0 auto;
	}
	.example-flex-wrap {
		width: 100%;
		margin-bottom: 10px;
		padding: 20px 10% 15%;
	}
	.total {
		font-size: calc(18px + (50 - 18)*(100vw - 240px)/(1200 - 240));
	}
	.example_img {
		flex-direction: column;
	}
	.example_img img {
		width: 100%;
		margin-bottom: 10px;
	}
	#flow li > img {
		width: 200px;
		height: 200px;
		margin: 0 auto;
	}
	#flow li div {
		width: 100%;
		margin: 0;
	}
	#flow li div h3 {
		font-size: 2.5rem;
	    text-align: center;
	}
	#flow li div p {
	    font-size: 1.6rem;
	}
	#flow li div h3 {
		padding: 0 45px;
	}
	#flow li div h3:before {
		left: 0; 
	}

	.application {
		width: 100%;
	}
	.treatmentIocn {
		width: 100%;
		height: 20px;
	}
	.treatment {
		flex-direction: column;
		width: 100%;
	}
	.treatmentText {
		width: 100%;
	}

	footer {
		padding-bottom: 86px;
	}
	.copyright, 
	.copyright a {
		font-size: 1rem;
	}

	.ffn_recruit {
	    position: fixed;
	    width: 100%;
	    left: 0;
	    right: 0;
	    bottom: 0;
	    z-index: 998;
	}
	.ffn_text {
	    font-size: 1.5rem;
	    font-weight: bold;
	    background: #421d00;
	    color: #fff;
	    text-align: center;
	    padding: .25em;
	}
	.ffn_recruit ul li {
	    width: 50%;
	}
	.footer_fixed_navi ul li {
	    width: calc(100% / 3);
	}
	.footer_fixed_line {
	    background: #31AE36;
	}
	.footer_fixed_tel {
	    background: #d490bf;
	}
	.ffn_recruit ul li a {
	    justify-content: center;
	    align-items: center;
	    height: 55px;
	    color: #FFF;
	    font-size: 1.5rem;
	    font-weight: bold;
	}
	.footer_fixed_line a:before, 
	.footer_fixed_tel a:before {
	    content: "";
	    font-size: 2.5rem;
	    font-weight: 400;
	    padding-right: .25em;
	}
	.footer_fixed_line a:before {
	    content: "\f3c0";
	    font-family: "Font Awesome 5 Brands";
	}
	.footer_fixed_tel a:before {
	    content: "\f098";
	    font-family: "Font Awesome 5 Free";
	    font-weight: 900;
	}

	.form_area,
	.btn_area {
		width: 100%;
		padding: 0;
	}
	.btn_area a {
		color: #FFF;
	}
	.tel-wrap, .line-wrap, .mail-wrap {
	    width: calc((100% / 3) - 5px);
		font-size: 1.2rem;
		padding: 5px 0;
	    border: none;
	}
	.tel-wrap i, 
	.line-wrap i,
	.mail-wrap i {
		display: block;
		font-size: 7vw;
	}
	.tel-wrap {
		background: #d490bf;
	}
	.line-wrap {
		background: #00b900;
	}
	.mail-wrap {
		background: #0085db;
	}
}

/* tel modal */
.telmodal { max-width: 360px !important; padding: 20px 10px !important; }
.telmodal p:first-of-type { margin-bottom: 20px; }
.telmodal i { font-size: 20px; margin-right: 5px; }
.telmodal a {
  font-size: 20px;
  color: #000;
  font-weight: bold;
}
.telmodal .area-name {
	display: block;
	padding: 5px;
}
.telmodal_message {
  display: inline-block;
  font-size: 12px;
  border-bottom: 1px solid #000;
}
/* line modal */
.linemodal i { font-size: 10rem;}
.linemodal a { 
	color: #00b900;
	line-height: 1.2;
	width: 50%;
	margin: 50px 0;
}
/* mail modal */
.mailmodal a { 
	color: #0085db;
	line-height: 1.2;
	width: 50%;
	margin: 50px 0;
}

/*フォーム*/
table.basic tbody{
	display: block;
	max-width: 640px;
    text-align: left;
    margin: 0 auto;
    padding: 10px;
}
table.basic th,
table.basic td {
	display: block;
	padding: 0;
}
table.basic th {
	font-size: 1.4rem;
}
table.basic td {
	font-size: 1.6rem;
    margin-bottom: 15px;
}
.explain {
    display: block;
    text-align: center;
    margin: 100px 0;
    padding: 10px;
}

.flowtitle {
	margin-left: 30px;
	margin-top: 5px;
}

/* 2021/09/28 staff */
#staff {
	background: #d6ebff;
}
.staff_main {
	line-height: 0;
	max-width: 1000px;
	margin: 0 auto 30px;
}
.staff_title {
	width: fit-content;
	margin: 0 auto 20px;
	border-bottom: 2px dashed #2da5f2;
	margin-bottom: 20px;
}
.staff_title img {
	line-height: 0;
	max-width: 520px;
	margin: 0 auto;
}
.staff_application {
	max-width: 700px;
	margin: 0 auto;
	justify-content: space-between;
}
.staff_application li {
	line-height: 0;
}
.staff_application li.flex_half {
	width: 46%;
	margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
	.staff_title {
		margin: 10px;
	}
	.staff_application {
		padding: 10px;
	}
	.staff_application li.flex_half {
		width: 49%;
	}
}
/* googlef form */
.tIvQIf.m7w29c{
	margin-top: 0 !important;
}