@charset "utf-8";
/* CSS Document */


html {scroll-behavior: smooth;}
:target { scroll-margin-top: calc(180vw / 19.2); }

body {
	color:#000000; font-size:calc(18 * 0.054vw); line-height: 2;
	font-family: "Zen Maru Gothic","Yu Gothic", "Meiryo", "Hiragino Kaku Gothic ProN", sans-serif; font-weight:500;
	margin: 0 auto; height: 100%; overflow-x:hidden;
}

*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box;-o-box-sizing: border-box;  -ms-box-sizing: border-box;box-sizing: border-box;}

.lato { font-family: "Lato", serif, sans-serif; font-weight: 500; font-style: normal;}

.italic { font-style:italic; }

.rl { -ms-writing-mode: tb-rl;  writing-mode: vertical-rl;}

.bold { font-weight:700; }

.fs10vw { font-size:calc(10 * 0.054vw); } 
.fs12vw { font-size:calc(12 * 0.054vw); }
.fs14vw { font-size:calc(14 * 0.054vw); }
.fs15vw { font-size:calc(15 * 0.054vw); }
.fs16vw { font-size:calc(16 * 0.054vw); }
.fs17vw { font-size:calc(17 * 0.054vw); }
.fs18vw { font-size:calc(18 * 0.053vw); }
.fs19vw { font-size:calc(19 * 0.053vw); }
.fs20vw { font-size:calc(20 * 0.052vw); }
.fs21vw { font-size:calc(21 * 0.052vw); }
.fs22vw { font-size:calc(22 * 0.052vw); }
.fs23vw { font-size:calc(23 * 0.052vw); }
.fs24vw { font-size:calc(24 * 0.052vw); }
.fs25vw { font-size:calc(25 * 0.052vw); }
.fs26vw { font-size:calc(26 * 0.052vw); }
.fs27vw { font-size:calc(27 * 0.052vw); }
.fs28vw { font-size:calc(28 * 0.052vw); }
.fs29vw { font-size:calc(29 * 0.052vw); }
.fs30vw { font-size:calc(30 * 0.052vw); }
.fs31vw { font-size:calc(31 * 0.052vw); }
.fs32vw { font-size:calc(32 * 0.052vw); }
.fs33vw { font-size:calc(33 * 0.052vw); }
.fs34vw { font-size:calc(34 * 0.052vw); }
.fs35vw { font-size:calc(35 * 0.052vw); }
.fs36vw { font-size:calc(36 * 0.052vw); }
.fs37vw { font-size:calc(37 * 0.052vw); }
.fs38vw { font-size:calc(38 * 0.052vw); }
.fs39vw { font-size:calc(39 * 0.052vw); }
.fs40vw { font-size:calc(40 * 0.052vw); }
.fs41vw { font-size:calc(41 * 0.052vw); }
.fs42vw { font-size:calc(42 * 0.052vw); }
.fs43vw { font-size:calc(43 * 0.052vw); }
.fs44vw { font-size:calc(44 * 0.052vw); }
.fs45vw { font-size:calc(45 * 0.052vw); }
.fs47vw { font-size:calc(47 * 0.052vw); }
.fs48vw { font-size:calc(48 * 0.052vw); }
.fs50vw { font-size:calc(50 * 0.052vw); }
.fs52vw { font-size:calc(52 * 0.052vw); }
.fs53vw { font-size:calc(53 * 0.052vw); }
.fs54vw { font-size:calc(54 * 0.052vw); }
.fs56vw { font-size:calc(56 * 0.052vw); }
.fs58vw { font-size:calc(58 * 0.052vw); }
.fs60vw { font-size:calc(60 * 0.052vw); }
.fs62vw { font-size:calc(62 * 0.052vw); }
.fs63vw { font-size:calc(63 * 0.052vw); }
.fs65vw { font-size:calc(65 * 0.052vw); }
.fs66vw { font-size:calc(66 * 0.052vw); }
.fs68vw { font-size:calc(68 * 0.052vw); }
.fs70vw { font-size:calc(70 * 0.052vw); }
.fs72vw { font-size:calc(72 * 0.052vw); }
.fs73vw { font-size:calc(73 * 0.052vw); }
.fs75vw { font-size:calc(75 * 0.052vw); }
.fs78vw { font-size:calc(78 * 0.052vw); }
.fs80vw { font-size:calc(80 * 0.052vw); }
.fs86vw { font-size:calc(86 * 0.052vw); }
.fs90vw { font-size:calc(90 * 0.052vw); }
.fs100vw { font-size:calc(100 * 0.052vw); }
.fs110vw { font-size:calc(110 * 0.052vw); }


img { border: none; vertical-align: middle; }

img.top { vertical-align: top; }
img.bottom { vertical-align: bottom; }
img.banner { border: solid 1px #DDD; }

button,input,textarea,select { appearance: none; -webkit-appearance: none; border:none; font-family: inherit; font-size: inherit; font-weight:600; letter-spacing: 0.1vw; }
button { border: none; cursor: pointer; background: none;}


address, em { font-style: normal; }

mark { background: linear-gradient(#FFE785, #FFE785) 0 100% / 0 0.3em no-repeat; background-size: 100% 0.3em; }

a { color: #000000; text-decoration: none; }


a:hover, input[type="submit"]:hover, input[type="reset"]:hover {
	opacity: 0.9; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )";
}
strong,em {font-weight: 700;}

.position_r { position:relative; z-index:1; }
.position_a { position:absolute; z-index:0 }

.circle { display:inline-block; border-radius:50vmax; }

/*********** class ****************************************/


/********** float ************/
.c-both { clear: both; }
.clearfix:after { content: ""; clear: both; display: block; }
.left { float: left; }
.right { float: right; }
.center { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.text_right { margin-left:auto; margin-right:0; text-align:right; }
.text_left { margin-right:auto; margin-left:0; text-align:left; }
/******* end float **********/

/******* flex box ***********/
.flex {
	display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; align-items: flex-start;
}
.height {flex-wrap: wrap; align-items: stretch;}
.js_center {justify-content: center;}

.grid { display: grid; }

/* image parent cover *******/
.fit { object-fit: cover; font-family: 'object-fit: cover;'; max-width: 100%; }
.fit img {
	margin: auto; width: 100%; min-height: 100%; object-fit: cover; font-family: 'object-fit: contain;';
	position: absolute; top: 0; left: 0; bottom: 0; right: 0;
}
/****** layout ********/
.inner {width: calc(1780vw / 19.2); margin: 0 auto;}
.inner_right {width: calc(1750vw / 19.2); margin: 0 0 0 auto;}
.inner_left {width: calc(1750vw / 19.2); margin: 0 auto 0 0;}
.middle_inner {width: calc(1580vw / 19.2); margin: 0 auto;}

.low_inner {width: calc(1260vw / 19.2); margin: 0 auto;}
.minimum_inner {width: calc(1165vw / 19.2); margin: 0 auto;}

.heading { width: 100%; }

/* image parent cover *******/
.fit { position: relative; object-fit: cover; font-family: 'object-fit: cover;'; max-width: 100%; }

dl.table { display:table; width:100%; }
dl.table dt,dl.table dd { display:table-cell; }

p.indent { text-indent: -1em; margin-left: 1em; }


/****** display ********/

.pc { display: unset; }
.pc_tb { display:unset; }
.tb_sp { display:none; }
.sp { display: none; }


.black { color:#000000; }
.white { color:#FFFFFF; }
.green { color:#59B200; }
.light_green { color:#DEF0CC; }
.orange { color:#EA5507; }
.light_orange { color:#FEDFD2; }
.yellow { color:#F3C507; }
.light_yellow { color:#FDE592; }
.blue { color:#00A1E9; }
.light_blue { color:#B5EEFF; }
.red { background-color:#B01C23; }
.brown { color:#A68C45; }
.dark_brown { color:#745A3F }

.bg_white { background-color:#FFFFFF; }
.bg_green { background-color:#59B200; }
.bg_light_green { background-color:#F3F5E9; }
.bg_orange { background-color:#EA5507; }
.bg_light_orange { background-color:#F8F4EF; }
.bg_yellow { background-color:#F3C507; }
.bg_blue { background-color:#00A1E9; }
.bg_light_blue { background-color:#BCEAFF; }
.bg_red { background-color:#B01C23; }
.bg_brown { background-color:#A68C45; }
.bg_light_brown { background-color:#FAF8F3; }
.bg_dark_brown { background-color:#745A3F; }
.bg_cream { background-color:#F9F6EF; }

.shadow_green { box-shadow:3px 3px 0 #59B200; border:solid 3px #59B200; }
.shadow_blue { box-shadow:3px 3px 0 #00A1E9; border:solid 3px #00A1E9; }
.shadow_orange { box-shadow:3px 3px 0 #EA5507; border:solid 3px #EA5507; }
.shadow_yellow { box-shadow:3px 3px 0 #F3C507; border:solid 3px #F3C507; }
.shadow_light_brown { box-shadow:3px 3px 0 #F2EBDC; border:solid 3px #F2EBDC; }


.underline { text-decoration:underline; }
.under_line_geen { border-bottom:solid 1px #59B200; }
.under_line_orange { border-bottom:solid 1px #EA5507; }
.under_line_blue { border-bottom:solid 1px #00A1E9; }
.under_line_yellow { border-bottom:solid 1px #F3C507; }



.ttl { position:relative; margin-block-start: 0; margin-block-end: 1em; padding: 0 0 1em 0; font-size: 1em; font-weight:700; letter-spacing: 0.05em; }
.ttl .ja { display:block; }
.ttl .slug { display:block; font-weight: 700; line-height: 1.5; }

.ttl.dot { padding-bottom:1em; }
.ttl.dot::after {
	position:absolute; content:""; width:calc(188vw / 19.2); height:calc(10vw / 19.2); background-image:url(../img/ttl_after.png);
	background-size: 100%; bottom:0;
}
.ttl.dot_orange { padding-bottom:1em; }
.ttl.dot_orange::after {
	position:absolute; content:""; width:calc(388vw / 19.2); height:calc(10vw / 19.2); background-image:url(../img/ttl_after_orange.png);
	background-size: 100%; inset: auto 0 0 0; margin: auto;
}

.more {
	display: flex; position:relative; width: calc(360vw / 19.2); height: calc(80vw / 19.2); align-items: center; justify-content: center; border-radius:50vmax; margin-block-start: 2em;
}
.more i { display: flex; align-items: center; position:absolute; top:0; bottom:0; right:0.5em; margin:auto; }
.more.center { margin:2em auto 1em auto; }
.more.sp { display:none; }

ul.list_marker_orange { padding: 0 0 0 1.5em; }
ul.list_marker_orange li::marker { color: #EA5507; font-size: 8px; }
ul.list_marker_orange li { margin:0 0 0.5em 0; }
ul.list_marker_green { padding: 0 0 0 1.5em; }
ul.list_marker_green li::marker { color: #59B200; font-size: 8px; }
ul.list_marker_green li { margin:0 0 0.5em 0; }
ul.list_marker_brownd { padding: 0 0 0 1.5em; }
ul.list_marker_brownd li::marker { color: #745A3F; font-size: 8px; }
ul.list_marker_brownd li { margin:0 0 0.5em 0; }


.dot_yellow { position:relative; }
.dot_yellow::after {
	content:""; position:absolute; bottom: 0; width:100%; height:calc(8vw / 19.2);
	background: repeating-radial-gradient( circle, #FED722 0 calc(4vw / 19.2), transparent calc(4vw / 19.2) calc(22vw / 19.2) ); background-size: calc(22vw / 19.2) calc(8vw / 19.2);
}


.dot_yellow2 { border-bottom: dotted 4px #FED722; }
.dot_blue2 { border-bottom: dotted 4px #00A1E9; }



.move_illust_r { opacity:0; transform: translate(2vw,2vw) rotate(-5deg); transition:opacity 2s ease,transform 2s ease; }
.move_illust_r.active { opacity:1; transform: translate(0,0) rotate(0deg); }

.move_illust_l { opacity:0; transform: translate(-2vw,2vw) rotate(5deg); transition:opacity 2s ease,transform 2s ease; }
.move_illust_l.active { opacity:1; transform: translate(0,0) rotate(0deg); }




.scale_in {overflow: hidden;}
.scale_in img { -webkit-transform: scale(1); transform: scale(1); -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out; overflow:hidden; }
.scale_in img:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }

.loop-slider { width: 100%; overflow: hidden;}
.loop-slider .slider_track { display: flex; width: max-content; gap: 0; }
.loop-slider .slide { flex: 0 0 auto; }
.loop-slider .slide img { display: block; }

.fade_in { opacity: 0; transition: opacity 0.8s ease; }
.fade_in.active { opacity: 1; }

.fade_up { opacity: 0; transform:translateY(2vw); transition: opacity 0.6s ease, transform 0.6s ease; }
.fade_up.active { opacity:1; transform: translateY(0); }


.fade_zoom { opacity: 0; transform: scale(0.3); transition: opacity 0.6s ease, transform 0.4s ease;}
.fade_zoom.active { opacity: 1; transform: scale(1); }

.text_curtain { width: max-content; overflow: hidden; }
.text_curtain span { display: inline-block; padding: 0.2em 0.4em; clip-path: inset(0 100% 0 0); transition: clip-path 1s ease; }
.text_curtain.active span { clip-path: inset(0 0 0 0); }


main { padding-top: calc(180vw / 19.2); }



#header { width: 100%; height: calc(150vw / 19.2); position:fixed; top: 0; z-index:9998; /*overflow: hidden;*/ }
#header .inner_right { height: 100%; }
#header .inner_right { width: calc(1890vw / 19.2); justify-content: space-between; }
#header .inner_right .logo { width: calc(684vw / 19.2); margin:1em 0 0 0; z-index: 1001; }

#header .inner_right .header_nav { height: 100%; align-items: center; padding: 0 calc(140vw / 19.2) 0 0; }
#header .inner_right .header_nav ul { list-style-type:none; margin: 0; padding: 0; }
#header .inner_right .header_nav ul li { margin-right:1.8em; }
#header .inner_right .header_nav ul li a { display:block; }
#header .inner_right .header_nav ul li a i { margin-left:0.3em; }

#header .inner_right .header_nav .button_box { text-align: right; padding: calc(10vw / 19.2) calc(30vw / 19.2) calc(10vw / 19.2) 0; }
#header .inner_right .header_nav .button_box .contact_btn {
	margin-left:1em;
	display:inline-block; width: calc(240vw / 19.2); height: calc(60vw / 19.2); line-height: calc(57vw / 19.2); text-align: center; border:solid 1px #000000; border-radius:50vmax;
}
#header .inner_right .header_nav .button_box .contact_btn .circle {
	width: calc(46vw / 19.2); height: calc(46vw / 19.2); align-items: center; justify-content: center;
	position: absolute; top: 0; bottom: 0; left: 0.5em; margin: auto;
}
#header .inner_right .header_nav .button_box .contact_btn .ja { display:block; padding-left:2em; }


#header #soleil_link_list,#header #company_link_list { padding: 1em; border-bottom-left-radius:1em; border-bottom-right-radius:1em; left: -1em; width: max-content;}
#header #soleil_link_list li,#header #company_link_list li { position:relative; margin-block-end: 0.3em; padding:0 0 0 1em; }
#header #soleil_link_list li::before,#header #company_link_list li::before {
	display: flex; align-items: center;
	position:absolute; content:"●"; font-size:calc(12vw / 19.2); top:0; bottom:0; left:0; color:#7FBE25;
}
#header #niji_link_list ,#header #recruit_link_list { padding: 1em; border-bottom-left-radius:1em; border-bottom-right-radius:1em; left: -1em; width: max-content;}
#header #niji_link_list li,#header #recruit_link_list li { position:relative; margin-block-end: 0.3em; padding:0 0 0 1em; }
#header #niji_link_list li::before,#header #recruit_link_list li::before {
	display: flex; align-items: center;
	position:absolute; content:"●"; font-size:calc(12vw / 19.2); top:0; bottom:0; left:0; color:#00A1E9;
}
#header #recruit_link_list li.sub_header_menu::before {display: none;}



.sub_menu_list { opacity: 0; pointer-events: none; transition: opacity .3s; }
.sub_menu:hover .sub_menu_list { opacity: 1; pointer-events: auto; }



#header #hamburger {
	position: absolute; inset: calc(-50vw / 19.2) calc(-60vw / 19.2) auto auto; z-index: 1001;
	width: calc(200vw / 19.2); height: calc(200vw / 19.2); padding: 2em 2em 0 0; border-radius: 50vmax;
}

#header #hamburger .text { display:block; }

#header #drawer { display:none; }

#header #drawer.drawer-menu {
	position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.5);display: flex; opacity:0; transition: opacity 0.3s ease; pointer-events:none;
	justify-content: flex-start;align-items: flex-start;z-index: 1000;
}
#header #drawer.drawer-menu.open {opacity:1; pointer-events:auto;}

#header .drawer-content {width: 100%;height: 100%;transform: translateX(200%);transition: transform 0.3s ease; padding: 7em 0 8em 0;}
#header .drawer-menu.open .drawer-content {transform: translateX(0);overflow-y: scroll;}

#header .drawer-menu.open .drawer-content .menu_list {  }
#header .drawer-menu.open .drawer-content .menu_list .page_list { list-style-type:none; padding: 0; min-width: 25em; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page { padding:0 0 2em 0; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .page_name { padding-bottom: 0.5em; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .page_name .slug { display:block; padding-left: 3.5em; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .page_name .anchor { display:flex; align-items: center; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .page_name .anchor i { margin-right:0.2em; }

#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section { margin: 0.5em 0 0 0; padding: 0;}
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul { list-style-type:none; margin: 0 0 0 0; padding: 0; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul.half { width:48%; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul.half_long { width:58%; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul.half_short { width:38%; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul li { margin: 0.5em 0 0 0; padding: 0 0 0 0.25em; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul li a { display:flex; align-items: center; }
#header .drawer-menu.open .drawer-content .menu_list .page_list .page .section ul li i { margin-right:0.2em; }

#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .btn { position: relative; display: block; width: 100%; height: calc(100vw / 19.2); border-radius:50vmax; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .btn .circle {
	position:absolute; top:0; bottom:0; left:0.8em; margin:auto;
	display:flex; align-items:center; justify-content:center; width:calc(70vw / 19.2); height:calc(70vw / 19.2);
}

#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box { width: calc(470vw / 19.2); }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .facility_name { margin-block-start: 1.5em; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .btn { border:solid 1px #000000; border-radius:50vmax; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .btn .text { display:block; padding-left:calc(125vw / 19.2); line-height: 1; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .btn .hours { display:block; padding-left:calc(105vw / 19.2); }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .tel_btn { margin-block-start:0.7em; padding: 1em 0 0 0; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .email_btn { margin-block-start:1.5em; }
#header .drawer-menu.open .drawer-content .menu_list .bottom_contact_box .email_btn .text { line-height: calc(97vw / 19.2); }



#header .drawer-menu.open .drawer-content .menu_list .illust2 { bottom:0; right:0; }



.bottom_contact { padding:4em 0 4em 0; overflow:hidden; }
.bottom_contact .low_inner { padding:calc(50vw / 19.2) calc(120vw / 19.2) calc(50vw / 19.2) calc(120vw / 19.2); border-radius:2em; }

.bottom_contact .bottom_contact_header { justify-content: center; }
.bottom_contact .bottom_contact_header .ttl { width: calc(455vw / 19.2); }
.bottom_contact .bottom_contact_header .text { width: calc(540vw / 19.2); }

.bottom_contact .bottom_contact_box .half { width: calc(540vw / 19.2); }
.bottom_contact .bottom_contact_box .facility_name { margin-block-start: 1.5em; }

.bottom_contact .bottom_contact_box .btn {
	position: relative; display: block; width: calc(480vw / 19.2); height: calc(110vw / 19.2); border:solid 1px #000000; border-radius:50vmax;
}
.bottom_contact .bottom_contact_box .btn.tel_btn .text {
	display:block; padding-left:calc(140vw / 19.2); line-height: 1;
}
.bottom_contact .bottom_contact_box .btn.email_btn .text {
	display:block; padding-left:calc(130vw / 19.2); line-height: calc(107vw / 19.2);
}
.bottom_contact .bottom_contact_box .btn .hours { display:block; padding-left:calc(115vw / 19.2); }
.bottom_contact .bottom_contact_box .tel_btn { margin-block-start:0.7em; padding: 1.1em 0 0 0; }
.bottom_contact .bottom_contact_box .email_btn { margin-block-start:1.5em; margin-inline: 1em; }


.bottom_contact .bottom_contact_box .btn .circle {
	position: absolute; top: 0; bottom: 0; left: 0.8em; margin: auto;
	display: flex; align-items: center; justify-content: center; width: calc(74vw / 19.2); height: calc(74vw / 19.2);
}
.bottom_contact .bct_box { width: calc(480vw / 19.2); }
.just_e {justify-content: space-evenly;}
.just_c {justify-content: center;}
.bottom_contact .illust15 { bottom:2em; left:3em; }
.bottom_contact .illust16 { top:5em; right:8em; }
.bottom_contact .illust17 { bottom:2em; right:3em; }

#page_top {
	position: fixed; bottom: 3vw; right: 3vw; z-index: 100; display: flex; align-items: center; justify-content: center; width: 4.44em; height: 4.44em;
	border:solid 2px #59B200; opacity:0; pointer-events:none; transition:opacity 0.4s ease;
}
#page_top.show { opacity:1; pointer-events:auto; }





#footer { padding:4em 0 0 0; overflow: hidden; }
#footer .site_info { align-items: center; justify-content: center; padding:0 0 1em 0; border-bottom:dotted 3px #DDDDDD; }
#footer .site_info .logo { width:calc(517vw / 19.2); margin: 0 3em 0 0; }

#footer .site_info .gmap_link { display:block; width:max-content; margin-block-start: 0.5em; }

#footer .footer_nav { padding:2em 0 2em 0; }
#footer .footer_nav ul { list-style-type:none; margin:0; padding: 0; }
#footer .footer_nav ul li.page { margin-block-end: 0.7em; }
#footer .footer_nav ul li.section.flex ul { margin-right: 2em; }
#footer .footer_nav ul li.section ul li { position:relative; margin-block-end: 0.3em; padding:0 0 0 1em; }
#footer .footer_nav ul li.section ul li::before {
	display: flex; align-items: center;
	position:absolute; content:"●"; font-size:calc(12vw / 19.2); top:0; bottom:0; left:0;
}
#footer .footer_nav ul li.section ul.circle_yellow li::before { color:#FED722; }
#footer .footer_nav ul li.section ul.circle_green li::before { color:#7FBE25; }
#footer .footer_nav ul li.section ul.circle_blue li::before { color:#00A1E9; }


#footer .copy { margin: 0; padding:0.5em 0 0.5em 0; position: relative; z-index: 2;}


#page_top {
	position: fixed; bottom: 3vw; right: 3vw; z-index: 100; display: flex; align-items: center; justify-content: center; width: 4.44em; height: 4.44em;
	border:solid 2px #59B200; opacity:0; pointer-events:none; transition:opacity 0.4s ease;
}
#page_top.show { opacity:1; pointer-events:auto; }


.illust1 { width:calc(136vw / 19.2); }
.illust2 { width:calc(204vw / 19.2); }
.illust3 { width:calc(137vw / 19.2); }
.illust4 { width:calc(161vw / 19.2); }
.illust5 { width:calc(136vw / 19.2); }
.illust6 { width:calc(60vw / 19.2); }
.illust7 { width:calc(122vw / 19.2); }
.illust8 { width:calc(103vw / 19.2); }
.illust9 { width:calc(132vw / 19.2); }
.illust10 { width:calc(227vw / 19.2); }
.illust11 { width:calc(88vw / 19.2); }
.illust12 { width:calc(64vw / 19.2); }
.illust13 { width:calc(100vw / 19.2); }
.illust14 { width:calc(142vw / 19.2); }
.illust15 { width:calc(214vw / 19.2); }
.illust16 { width:calc(120vw / 19.2); }
.illust17 { width:calc(161vw / 19.2); }
.illust18 { width:calc(60vw / 19.2); }
.illust19 { width:calc(140vw / 19.2); }
.illust20 { width:calc(296vw / 19.2); }
.illust21 { width:calc(170vw / 19.2); }
.illust22 { width:calc(160vw / 19.2); }
.illust23 { width:calc(169vw / 19.2); }
.illust24 { width:calc(200vw / 19.2); }
.illust25 { width:calc(266vw / 19.2); }
.illust26 { width:calc(142vw / 19.2); }
.illust27 { width:calc(202vw / 19.2); }
.illust28 { width:calc(358vw / 19.2); }
.illust29 { width:calc(229vw / 19.2); }
.illust30 { width:calc(156vw / 19.2); }
.illust31 { width:calc(367vw / 19.2); }
.illust32 { width:calc(146vw / 19.2); }
.illust33 { width:calc(90vw / 19.2); }
.illust34 { width:calc(178vw / 19.2); }
.illust35 { width:calc(200vw / 19.2); }
.illust36 { width:calc(182vw / 19.2); }

.illust40 { width:calc(121vw / 19.2); }
.illust41 { width:calc(340vw / 19.2); }
.illust42 { width:calc(156vw / 19.2); }
.illust43 { width:calc(342vw / 19.2); }
.illust44 { width:calc(118vw / 19.2); }
.illust45 { width:calc(600vw / 19.2); }
.illust46 { width:calc(100vw / 19.2); }
.illust47 { width:calc(140vw / 19.2); }
.illust48 { width:calc(126vw / 19.2); }
.illust49 { width:calc(246vw / 19.2); }
.illust50 { width:calc(260vw / 19.2); }
.illust51 { width:calc(86vw / 19.2); }
.illust52 { width:calc(82vw / 19.2); }
.illust53 { width:calc(146vw / 19.2); }
.illust54 { width:calc(180vw / 19.2); }
.illust55 { width:calc(223vw / 19.2); }
.illust56 { width:calc(262vw / 19.2); }
.illust57 { width:calc(280vw / 19.2); }
.illust58 { width:calc(255vw / 19.2); }
.illust59 { width:calc(305vw / 19.2); }
.illust60 { width:calc(132vw / 19.2); }
.illust61 { width:calc(34vw / 19.2); }
.illust62 { width:calc(175vw / 19.2); }
.illust63 { width:calc(140vw / 19.2); }
.illust64 { width:calc(180vw / 19.2); }
.illust65 { width:calc(143vw / 19.2); }
.illust66 { width:calc(130vw / 19.2); }





.page_header {
	width:100%; height:calc(740vw / 19.2); overflow:hidden;
	background-image:url(../img/page_header_bg_left.webp),url(../img/page_header_bg_right.webp); background-size:calc(359vw / 19.2),calc(415vw / 19.2);
	background-position:left bottom calc(35vw /19.2),right top 0; background-repeat:no-repeat;
}
.page_header .middle_inner { height: 100%; align-items: center; justify-content: center; }

.page_header .page_ttl {width: max-content; font-size: 1em; }
.page_header .page_ttl .slug { display:block; line-height: 1; margin-block-end: 0.2em; }
.page_header .page_ttl .ja { display:block; margin: 0 auto; }
.page_header .page_ttl .ja span { line-height: 1; padding: 0.3em 0.5em 0.3em 0.5em; }
	
.page_header .page_header_thumb_left { width:calc(550vw / 19.2); top:calc(30vw / 19.2); left:calc(80vw / 19.2); }
.page_header .page_header_thumb_right { width:calc(550vw / 19.2); top:calc(215vw / 19.2); right:calc(35vw / 19.2); }

.page_header .illust18 { bottom:calc(220vw / 19.2); left:calc(570vw / 19.2); }
.page_header .illust19 { bottom:calc(70vw / 19.2); left:calc(580vw / 19.2); }
.page_header .illust20 { bottom:0; right:calc(600vw / 19.2); }
.page_header .illust21 { top:calc(60vw / 19.2); left:calc(570vw / 19.2); }
.page_header .illust22 { top:calc(130vw / 19.2); right:calc(450vw / 19.2); }

#page_header_soleil .page_ttl { padding-bottom: 3em; }
#page_header_soleil .page_ttl .logo { width:calc(180vw / 19.2); margin-block-end:1.5em; }

#page_header_niji .page_ttl { padding-bottom: 3em; }
#page_header_niji .page_ttl .logo { width:calc(180vw / 19.2); margin-block-end:1.5em; }


#fv {
	width:100%; height:calc(790vw / 19.2); overflow:hidden; touch-action: pan-y; user-select: none; background-repeat:no-repeat,no-repeat;
	background-image:url(../img/home/fv_bg_left.webp),url(../img/home/fv_bg_right.webp); background-size:calc(262vw / 19.2),calc(655vw / 19.2); background-position:left top,right top;
}
#fv .inner { height: 100%; z-index: 0; }
#fv .slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1s ease;}
#fv .slide.active { opacity: 1; z-index: 1; }
#fv .text { position:absolute; left:calc(110vw / 19.2); bottom:3em; z-index:2; }
#fv .text .catch {  }
#fv .text .catch span { padding:0.1em 0.5em 0.1em 0.5em; }

#fv .text .slide_fst {margin-inline-end: 1em;}

#fv .illust1 { bottom:0; right:1em; }




#top_soleil { padding:4em 0 4em 0; overflow:hidden; }
#top_soleil .text { width:calc(750vw / 19.2); }
#top_soleil .thumb { width:calc(980vw / 19.2); }

#top_soleil .text .top_soleil_ttl { font-size: 1em; margin:0; padding:0 0 2em 0; }
#top_soleil .text .top_soleil_ttl .slug { display:block; margin-block-end: 0.5em; }
#top_soleil .text .top_soleil_ttl .cat { display:inline-block; width:max-content; padding:0.1em 1em 0.2em 1em; border-radius:50vmax; }
#top_soleil .text .top_soleil_ttl .facility_name { display:block; line-height: 1.5; }

#top_soleil .text .content { margin:0; padding:1em 0 1em 0; }

#top_soleil .thumb .thumb_box { display: block; width:calc(950vw / 19.2); height:calc(600vw / 19.2); }
#top_soleil .thumb .illust3 { bottom:2em; left:2em; }

#top_niji { padding:4em 0 4em 0; overflow:hidden; }
#top_niji .text { width:calc(750vw / 19.2); }
#top_niji .thumb { width:calc(922vw / 19.2); }


#top_niji .text .top_niji_ttl { font-size: 1em; margin:0; padding:0 0 2em 0;  }
#top_niji .text .top_niji_ttl .slug { display:block; margin-block-end: 0.5em; }
#top_niji .text .top_niji_ttl .cat { display:inline-block; width:max-content; padding:0.1em 1em 0.2em 1em; border-radius:50vmax; }
#top_niji .text .top_niji_ttl .facility_name { display:block; line-height: 1.5; }

#top_niji .text .content { margin:0; padding:1em 0 1em 0; }


#top_niji .text .top_niji_ttl .illust4 { top:0;right:0; }
#top_niji .text .content .illust5 { bottom:-3em; right:-3em; }




#top_news {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/home/top_news_bg.webp); background-position:center bottom; background-size:100%; background-repeat:no-repeat;
}
#top_news .top_news_wrapper { border:solid 1px #59B200; border-radius:2em; padding:calc(50vw / 19.2) calc(130vw / 19.2) calc(50vw / 19.2) calc(130vw / 19.2); }

#top_news .illust6 { top:1em; left:1em; }
#top_news .illust7 { top:1em; right:1em; }


#top_news .news_list { padding-bottom:1em; }
#top_news .news_list .box { border-bottom:dotted 2px #59B200; margin: 0; padding: 0; }
#top_news .news_list .box dt { width:12em; margin:0; padding:1em 0 1em 0; }
#top_news .news_list .box dt time { margin-right:1em; }
#top_news .news_list .box dt .cat { display:inline-block; }

#top_news .news_list .box dd { margin:0; padding:1em 0 1em 0; }

#top_news .illust8 { bottom:-1em; right:2em; }





#top_recruit {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/home/top_recruit_bg.webp); background-position:center bottom; background-size:100%; background-repeat:no-repeat;
}


#top_recruit .illust9 { top:5em; left:5%; }
#top_recruit .illust10 { top:3em; right:5%; }

#top_recruit .text { width:calc(760vw / 19.2); }
#top_recruit .thumb { width:calc(900vw / 19.2); }
#top_recruit .thumb .heading { border-top-left-radius:1em; border-bottom-left-radius:1em; }


#top_recruit .text .catch {  }
#top_recruit .text .catch span { margin-block-end:0.5em; }

#top_recruit .link_box { justify-content: center; flex-wrap: wrap; padding: 2em 0 0 0; }
#top_recruit .link_box .link { width: calc(570vw / 19.2); margin: calc(20vw / 19.2) calc(10vw / 19.2) calc(20vw / 19.2) calc(10vw / 19.2); border-radius: 1em; padding:1em; }
#top_recruit .link_box .link p i { margin-left:0.3em; }



#top_voice {
	padding:4em 0 4em 0; overflow: hidden;
	background: linear-gradient(to bottom, transparent 80%, #F2F4E6 80%);
}

#top_voice .inner_left { width: calc(1850vw / 19.2); border-bottom-right-radius:2em; padding:calc(50vw / 19.2) calc(120vw / 19.2) calc(50vw / 19.2) 0; }
#top_voice .text { width:calc(750vw / 19.2); }
#top_voice .thumb { width:calc(900vw / 19.2); grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr);}
#top_voice .thumb img { width:calc(440vw / 19.2); }
#top_voice .thumb img.grid1 { grid-area: 1 / 1 / 2 / 2; margin:0 1em 1em 0; }
#top_voice .thumb img.grid2 { grid-area: 1 / 2 / 2 / 3; margin:0 0 1em 0; border-top-right-radius:1em; }
#top_voice .thumb img.grid3 { grid-area: 2 / 1 / 3 / 2; margin:0 1em 1em 0; }
#top_voice .thumb img.grid4 { grid-area: 2 / 2 / 3 / 3; margin:0 0 1em 0;  border-bottom-right-radius:1em; }



#top_voice .illust11 { top:-4em; right:7em; }
#top_voice .illust12 { bottom:-1em; right:5em; }



#top_job_discription {
	padding:4em 0 4em 0; overflow:hidden;
}

#top_job_discription .illust13 { top:0; right:0; }

#top_job_discription .inner_right { padding:calc(50vw / 19.2) 0 calc(50vw / 19.2) 0; }
#top_job_discription .text { width:calc(730vw / 19.2); }
#top_job_discription .thumb { width:calc(900vw / 19.2); }

#top_job_discription .occupation { justify-content: flex-start; align-items: center; padding: 0.5em 0 0.5em 0; }

#top_job_discription .border_green { border-bottom:solid 2px #59B200; }
#top_job_discription .border_orange { border-bottom:solid 2px #EA5507; }
#top_job_discription .border_yellow { border-bottom:solid 2px #F3C507; }
#top_job_discription .border_blue { border-bottom:solid 2px #00A1E9; }

#top_job_discription .occupation i { margin-right:0.4em; }
#top_job_discription .occupation .occupation_name { width:12em; margin-right:0.4em; }
#top_job_discription .occupation .currently { width:max-content; padding:0.1em 1em 0.2em 1em; border-radius:50vmax; }


#top_job_discription .thumb .heading { border-top-left-radius:1em; border-bottom-left-radius:1em; }
#top_job_discription .thumb .catch { left:-4em; bottom:3em; }
#top_job_discription .thumb .catch span { margin-block-end:0.5em; }
#top_job_discription .thumb .illust14 { bottom:-6em; right:0; }



/**** end top ********************************************************************/
/**** soleil *******************************************************************/

.facility_menu_list { padding:4em 0 2em 0; }

.facility_menu_list .sub_cat_box { margin:0; padding:0; list-style-type:none; justify-content: center; flex-wrap: wrap;}
.facility_menu_list .sub_cat_box a {
	width:calc(360vw / 19.2); height:calc(90vw / 19.2); margin:calc(20vw / 19.2); border-radius: 50vmax;
	justify-content: center; align-items: center;
}
.facility_menu_list .sub_cat_box a i { top:0; bottom:0; left: auto; right:0.5em; margin:auto; display: flex; align-items: center;}




.features { padding:2em 0 4em 0; overflow:hidden; }
.features .inner { border-radius:2em; }
.features .summary { margin-block-end:4em; }

.features .box { border:solid 1px #000000; border-radius:1em; margin-block-end:4em; }
.features .box .text { width:calc(870vw / 19.2); padding:1em 2em 1em 2em; }
.features .box .thumb { width:calc(700vw / 19.2); }

.features .box .thumb.right { border-top-right-radius:1em; border-bottom-right-radius:1em; }
.features .box .thumb.left { border-top-left-radius:1em; border-bottom-left-radius:1em; }



.features .box .text .feature_title { justify-content: flex-start; align-items: center; }
.features .box .text .feature_title .num { display:inline-block; width:calc(50vw / 19.2); height:calc(50vw / 19.2); text-align:center; margin:0 1em 0 0.5em; }

.features .box .text .check_list { list-style-type:none; padding: 0; }
.features .box .text .check_list li { position:relative; padding: 0 0 0 2em; }
.features .box .text .check_list li:before {
	content:""; background-image:url(../img/icon_check_orange.png); background-size:100%;
	position:absolute; top:0.2em; left:0; width:calc(30vw / 19.2); height:calc(25vw / 19.2);
}

.features .box .text .visit_area {  }
.features .box .text .visit_area dt { width:max-content; padding: 0.1em 0.5em 0.2em 0.5em; }
.features .box .text .visit_area dd { margin:0; padding:1em 0 0 0; }
.features .box .text .visit_area dd .visit_area_img { width:calc(333vw / 19.2); top:calc(-133vw / 19.2); right:0; }

.features .box .text .comments {  }
.features .box .text .comments dt { margin:0; border-bottom:dotted 3px #DDDDDD; padding:0 0 0.5em 0; }
.features .box .text .comments dt i { margin-right:0.3em; }
.features .box .text .comments dd { margin:0; padding:0.5em 0 1em 0; }

#soleil_features.features .box { box-shadow:5px 5px 0 #EA5507; }
#soleil_features.features { background-image:url(../img/soleil/soleil_features_bg.webp); background-repeat:no-repeat; background-position:center bottom; background-size:100%; }

#soleil_features.features .box .text .feature_title { border-bottom:solid 1px #EA5507; padding: 0 0 0.5em 0; }


.soleil_features_footer { padding-block-end: 2em; }
.soleil_features_footer { padding-block-end: 2em; }
.soleil_features_footer .text { width:calc(760vw / 19.2); }
.soleil_features_footer .thumb { width:calc(700vw / 19.2); }
.soleil_features_footer .illust25 { left: calc(460vw / 19.2); bottom:2em; }


.model_case {
	padding:4em 0 0 0; overflow:hidden;
	background-image:url(../img/soleil/model_case_bg_left.webp),url(../img/soleil/model_case_bg_right.webp),url(../img/soleil/model_case_bg_left2.webp),url(../img/soleil/model_case_bg_right2.webp);
	background-position:left top 8em,right top 30%,left top 60%,right bottom 20%;
	background-size:calc(335vw / 19.2),calc(322vw / 19.2),calc(285vw / 19.2),calc(375vw / 19.2); background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
}
.model_case .ttl .logo { margin-block-end:1em; width:calc(130vw / 19.2); b}

.model_case .illust26 { inset:4em auto auto calc(400vw / 19.2); margin:auto; }
.model_case .illust27 { inset:5em calc(400vw / 19.2) auto auto; margin:auto; }

.model_case .box { margin: 2em 0 6em 0; }
.model_case .box .case_title { padding:0.1em 1em 0.1em 1em; }
.model_case .box .case_title .num { display:inline-block; margin:0 1em 0 0.5em; }

.model_case .box .attribute_contents {  }

.model_case .box .attribute_contents .attribute {  }

.model_case .box .attribute_contents .attribute {  }
.model_case .box .attribute_contents .attribute dt { width: 12em; }
.model_case .box .attribute_contents .attribute dt .blue { width:100%; display:inline-block; text-align:center; border:solid 2px #00A1E9; border-radius:50vmax; padding:0.1em 1em 0.2em 1em; }
.model_case .box .attribute_contents .attribute dt .green { width:100%; display:inline-block; text-align:center; border:solid 2px #59B200; border-radius:50vmax; padding:0.1em 1em 0.2em 1em; }
.model_case .box .attribute_contents .attribute dt .orange { width:100%; display:inline-block; text-align:center; border:solid 2px #EA5507; border-radius:50vmax; padding:0.1em 1em 0.2em 1em; }
.model_case .box .attribute_contents .attribute dd { padding: 0 1em 0 1em; }


.model_case .box .attribute_contents .attribute.half { width:max-content; }
.model_case .box .attribute_contents .attribute.half dd { width: 19em; }


.model_case .box .comments { border-top:dotted 3px #FBD433; margin: 2em 0 0 0; padding: 1em 0 0 0;}

.model_case .box .comments .comments_box { width: 48%; }
.model_case .box .comments .comments_box dt {  }
.model_case .box .comments .comments_box dt .icon { width:calc(64vw / 19.2); margin-right:1em; }
.model_case .box .comments .comments_box dd { position:relative; margin:1.75em 0 0 0; padding:1em 1em 1em 1em; border-radius:0.75em; }
.model_case .box .comments .comments_box.users dd.border_yellow { border:solid 2px #FBD433; }
.model_case .box .comments .comments_box.staff dd.border_green { border:solid 2px #59B200; }
.model_case .box .comments .comments_box.staff dd.border_blue { border:solid 2px #00A1E9; }
.model_case .box .comments .comments_box.staff dd.border_orange { border:solid 2px #EA5507; }

.model_case .box .comments .comments_box dd::before {
	content:""; position:absolute; top:-0.9em; left:0.75em; background-color:#FFFFFF; width:1.5em; height:1.5em;
	transform: rotate(45deg) skew(15deg, 15deg);
}
.model_case .box .comments .comments_box.users dd.border_yellow::before { border-left:solid 2px #FBD433; border-top:solid 2px #FBD433; }
.model_case .box .comments .comments_box.staff dd.border_green::before { border-left:solid 2px #59B200; border-top:solid 2px #59B200; }
.model_case .box .comments .comments_box.staff dd.border_blue::before { border-left:solid 2px #00A1E9; border-top:solid 2px #00A1E9; }
.model_case .box .comments .comments_box.staff dd.border_orange::before { border-left:solid 2px #EA5507; border-top:solid 2px #EA5507; }

.model_case .box .comments_img { padding:2em 0 0 0; }
.model_case .box .comments_img .comments_img_thumb { width:calc(760vw / 19.2); border-radius:1em; }




.service { padding:6em 0 4em 0; overflow:hidden; }

.service .inner { border-radius:1em; box-shadow: 5px 5px 0 #C8E3AC; }

.service .sub_ttl { position:absolute; inset:-1.5em 0 auto 0; margin:auto; width:max-content; background-color:#FFFFFF; border-radius:1em; padding:1em 1.5em; }
.service .sub_ttl::after { content:""; position:absolute; inset:auto 0 0 0; margin:auto; border-bottom:dotted 3px #59B200; width:calc(260vw / 19.2); height:1px; }

.service .service_wrapper { padding:6em 0 4em 0; }
.service .service_wrapper .summary { margin-block-start:2em; margin-block-end:3.5em; }

.service .service_mark { list-style-type:none; padding:0;align-items: stretch; }
.service .service_mark li { text-align:center; border:solid 2px #FFD424; width:calc(230vw / 19.2); padding:2em 1.5em 1.5em; border-radius:1em; }
.service .service_mark li strong { display:block; margin-block-start:1em; }

.service .service_list.flex { flex-wrap: wrap; padding:2em 0 0 0; }
.service .service_list.flex .box { width:calc(750vw / 19.2); margin: 1.5em 0 1.5em 0; }
.service .service_list.flex .box dt { border-radius:50vmax; text-align:center; padding:0.5em 0 0.5em 0; }
.service .service_list.flex .box dd { margin:0; }
.service .service_list.flex .box dd .service_list_img { display: block; width: calc(462vw / 19.2); margin: 2em auto 0 auto; text-align: center; }




#soleil_service {
	background-image:url(../img/soleil/service/soleil_service_bg.webp); background-size:cover;
}


.use { padding:4em 0 4em 0; overflow:hidden; }
.use .minimum_inner { width: calc(1100vw / 19.2); }

.use .sub_ttl { position: relative; width:max-content; padding:0 1em 1em 1em; }
.use .sub_ttl::after { content:""; position:absolute; inset:auto 0 0 0; margin:auto; border-bottom:dotted 3px #59B200; width:calc(260vw / 19.2); height:1px; }

.use .summary { margin-block-start:3em; margin-block-end:3.5em; }

.use .illust28 { top:5em; left:0em; }
.use .illust29 { top:5em; right:4%; }
.use .illust30 { top:35%; left:2%; }
.use .illust31 { top:60%; right:0; }
.use .illust32 { top:75%; left:3%; }

.use .box { border-radius:1em; padding:1em 2em 1em 2em; margin-block-end:4em; align-items: center; }
.use .box .text { width:calc(760vw / 19.2); }
.use .box .use_img { width:calc(210vw / 19.2); }

.use .box .text dt { display:flex; justify-content: flex-start; align-items: center; border-bottom:solid 2px #59B200; padding:0 0 0.75em 0; }
.use .box .text dt .num { display:flex; justify-content: center; align-items: center; width:calc(58vw / 19.2); height:calc(58vw / 19.2); margin-right: 0.75em; }
.use .box .text dd { margin:0; padding:1em 0 0 0; }


.facility { width:calc(760vw / 19.2); padding:4em 0 4em 0; }
.disclosure { width:calc(760vw / 19.2); padding:4em 0 4em 0; }

.facility .box { margin:0; }
.facility .box dt { margin:0; padding:1em 0 1em 0; border-bottom:dotted 3px #59B200; width: 8em; }
.facility .box dd { margin:0; padding:1em 0 1em 1em; border-bottom:dotted 3px #EDE6D1; }

.disclosure .summary {  }
.disclosure .more { position:relative; box-shadow:5px 5px 0 #59B200; border:solid 1px #000000; width: calc(500vw / 19.2); height: calc(100vw / 19.2); text-align:center; }
.disclosure .more .circle {
	position:absolute; top:0; bottom:0; left:0.75em; margin:auto;
	display:flex; justify-content: center; align-items: center; width:calc(58vw / 19.2); height:calc(58vw / 19.2);
}



/**** end soleil ***************************************************************/
/**** niji *******************************************************************/

#niji_features.features .box { box-shadow:5px 5px 0 #00A1E9; }
#niji_features.features { background-image:url(../img/niji/niji_features_bg.webp); background-repeat:no-repeat; background-position:center bottom; background-size:100%; }

#niji_features.features .box .text .feature_title { border-bottom:solid 1px #00A0E9; padding: 0 0 0.5em 0; }

#niji_features.features .box .text .check_list li { margin: 1.5em 0 1.5em 0; }


.niji_features_middle { padding: 4em 0 4em 0; }
.niji_features_middle .text { width:calc(760vw / 19.2); }
.niji_features_middle .thumb { width:calc(700vw / 19.2); }


.niji_features_middle .illust33 { top:1em; left:2em; }
.niji_features_middle .illust11 { top:0; left:calc(640vw / 19.2); }
.niji_features_middle .illust34 { bottom:3em; left:5em; }


.qualifications { border:solid 1px #000000; border-radius:2em; padding: 0 2em 2em 2em; margin: 2em auto 4em auto; }

.qualifications .qualifications_ttl { position:relative; inset: -2em 0 auto 0; margin: auto; width:max-content; padding:1em; background-color:#FFFFFF; }
.qualifications .qualifications_ttl::after {
	content:""; position:absolute; inset:auto 0 0 0; margin:auto;
	background-color:#F3C507; width:calc(100vw / 19.2); height:calc(5vw / 19.2);
	
}

.qualifications .qualifications_wrapper {  }
.qualifications .qualifications_wrapper .qualifications_box { width:calc(730vw / 19.2); margin: 0; }
.qualifications .qualifications_wrapper .qualifications_box dt { margin:0; width:8em; padding:0.2em 1em 0.3em 1em; border-radius:50vmax; text-align: center; }
.qualifications .qualifications_wrapper .qualifications_box dd { margin:0; padding:1em 0 0 0; }

#niji_features.features .inner { padding-bottom: 1em; }



.model_case .illust35 { inset:4em auto auto calc(400vw / 19.2); margin:auto; }
.model_case .illust36 { inset:5em calc(400vw / 19.2) auto auto; margin:auto; }




.rehabilitation {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/illust37.png),url(../img/illust38.png),url(../img/illust39.png); background-repeat:no-repeat,no-repeat,no-repeat;
	background-position:left top 50%,right top 10%,right top 80%; background-size:calc(372vw / 19.2),calc(310vw / 19.2),calc(256vw / 19.2);
}

.rehabilitation .summary { margin-block-start: 2em; margin-block-end:3em; }

.rehabilitation .rehabilitation_wrapper.flex { flex-wrap: wrap; }

.rehabilitation .rehabilitation_wrapper .box { width:calc(750vw / 19.2); margin: 2em 0 2em 0; }
.rehabilitation .rehabilitation_wrapper .box .thumb { border-radius:1em; }
.rehabilitation .rehabilitation_wrapper .box .text {  }

.rehabilitation .rehabilitation_wrapper .box .text figcaption {  }
.rehabilitation .rehabilitation_wrapper .box .text figcaption .box_ttl {  }



.schedule {
	padding:2em 0 4em 0; overflow:hidden;
	background-image:url(../img/niji/service/schedule_bg_left.webp),url(../img/niji/service/schedule_bg_right.webp); background-repeat:no-repeat,no-repeat;
	background-position:left bottom 9%,right bottom 46%; background-size:calc(308vw / 19.2),calc(296vw / 19.2);
}

.schedule .schedule_header {  }
.schedule .schedule_header .logo { width:calc(170vw / 19.2); margin: 0 0 0 calc(40vw / 19.2); }
.schedule .schedule_header .ttl { width:calc(500vw / 19.2); }
.schedule .schedule_header .summary { width:calc(740vw / 19.2); }


.schedule .schedule_content {  }
.schedule .schedule_content .schedule_content_ttl { padding:0.5em 0 0.5em 0; }

.schedule .schedule_content .schedule_box { margin-block-end: 3em; }
.schedule .schedule_content .schedule_box .text { width:calc(900vw / 19.2); margin: 3em 0 1em calc(210vw / 19.2); }
.schedule .schedule_content .schedule_box .thumb { width:calc(480vw / 19.2);padding-block-start: 5em; }

.schedule .schedule_content .schedule_box .text .ampm { border:solid 3px #00A1E9; border-radius:50vmax; width:8em; text-align:center; margin:0 0 1em auto;transform: translateX(-50%); }

.schedule .schedule_content .schedule_box .text .time { position:relative; margin: 2em 0 2em 0; }
.schedule .schedule_content .schedule_box .text .time::after {
	content:""; position:absolute; left:4.75em; bottom:-2em; width:calc(6vw / 19.2); height:calc(50vw / 19.2); background-color:#00A1E9;

}
.schedule .schedule_content .schedule_box .text .time:last-of-type::after { display:none; }
.schedule .schedule_content .schedule_box .text .time dt { width:8em; border-radius:50vmax; text-align: center; }
.schedule .schedule_content .schedule_box .text .time dd { margin:0; padding:0 0 0 1em; }

.schedule .schedule_content .illust40 { top:10em; left:-3em;z-index: -1; }

.schedule .schedule_content .oth_time { width: fit-content;padding-inline: 0.5em;margin-block-end: 0.5em; }
.schedule .schedule_content .oth_txt { width: fit-content;margin-block-end: 2em;text-decoration: underline;text-underline-offset: 0.5em;text-decoration-color: #EA5507; }

.concept {
	padding:6em 0 4em 0; overflow:hidden;
	background-image:url(../img/niji/service/concept_bg.webp); background-size:cover;
}

.concept .inner { border-radius:1em; box-shadow: 5px 5px 0 #23B0EF; }

.concept .sub_ttl { position:absolute; inset:-1.5em 0 auto 0; margin:auto; width:max-content; background-color:#FFFFFF; border-radius:1em; padding:1em; }
.concept .sub_ttl::after { content:""; position:absolute; inset:auto 0 0 0; margin:auto; border-bottom:dotted 3px #00A1E9; width:calc(260vw / 19.2); height:1px; }

.concept .concept_wrapper { padding:6em 0 1em 0; }

.concept .concept_wrapper .summary { margin-block-start:2em; margin-block-end:3.5em; }

.concept .concept_wrapper .concept_contents {  }
.concept .concept_wrapper .concept_contents .box { width:calc(490vw / 19.2); }

.concept .concept_wrapper .concept_contents .box dt { position:relative; text-align:center; border-radius:5px; }
.concept .concept_wrapper .concept_contents .box dt .visor { inset: -2.5em 0 auto 0; margin: auto; width: 11em; border:solid 1px #00A1E9; border-radius:0.25em; padding: 0.1em 1em 0.1em 1em; }
.concept .concept_wrapper .concept_contents .box dt .visor::after {
	content:""; position:absolute; left:0; right:0; bottom:-0.45em; margin: auto; border-right: solid 1px #00A1E9; border-bottom: solid 1px #00A1E9;
	background-color: #FFFFFF; width: 0.75em; height: 0.75em; transform: rotate(45deg) skew(15deg, 15deg);
}

.concept .concept_wrapper .concept_contents .box dd { margin:0; padding: 1em 0 0 0; }
.concept .concept_wrapper .concept_contents .box dd .concept_thumb { border-radius:1em; }


#niji_use.use .box .text dt { border-bottom: solid 2px #00A1E9; }


#niji_use.use .illust41 { top:5em; left:0em; }
#niji_use.use .illust42 { top:35%; left:2%; }
#niji_use.use .illust43 { top:60%; right:0; }

#niji_use.use .sub_ttl::after { border-bottom: dotted 3px #00A1E9; }

#niji_facility.facility .box dt { border-bottom: dotted 3px #00A1E9; }
#niji_disclosure.disclosure .more { box-shadow: 5px 5px 0 #00A1E9; }

.facility_menu_list .niji_btn_inner .sub_cat_box {justify-content: flex-start;}
.niji_btn_inner {width: calc(1220vw / 19.2);margin: 0 auto;}

/**** end niji ***************************************************************/


/**** recruit_schedule ****************************************************************/

#recruit_schedule {padding:2em 0 4em 0; overflow:hidden;background-image:none;}
#recruit_schedule .soleil_exp p.text_left {display: inline-block;margin-block-end: 3em;}
#recruit_schedule .recruit_schedule_content .recruit_schedule_box .text { width:calc(1100vw / 19.2); margin: 1em 0 1em calc(180vw / 19.2); }
#recruit_schedule .recruit_schedule_content .recruit_schedule_box .text .time dt { width:10em; border-radius:50vmax; text-align: center; }
#recruit_schedule .recruit_schedule_content .recruit_schedule_box .thumb { width:calc(200vw / 19.2); }
#recruit_schedule .recruit_schedule_content .recruit_schedule_ttl { padding:0.5em 0 0.5em 0; }

#recruit_schedule .recruit_schedule_content .recruit_schedule_box .text .time {
    position: relative;
    margin: 0 0 2em 0;
    width: 8em;
    border-radius: 50vmax;
    text-align: center;
    flex-shrink: 0;
	color: #fff;
    font-weight: 600;	
}

#recruit_schedule .recruit_schedule_content .recruit_schedule_box .text_exp {margin: 1em 0 1em 0;width: calc(700vw / 19.2);}

#recruit_schedule .time-table {display: flex;align-items: flex-start;gap: 2em;position: relative;margin: 0; }
#recruit_schedule .time-table .title {margin: 0 0 0.3em;font-weight: bold;}
#recruit_schedule .time-table .text {margin: 0;}
#recruit_schedule .time-table::after {
  content: "";
  position: absolute;
  height: 100%;
  background-color: #59B200;
  z-index: -1;
  inset: 2em auto auto 11.5%;
  inline-size: 0.5em;
}
#recruit_schedule .recruit_schedule_content .recruit_schedule_box .e::after {
    display: none;
}
#recruit_schedule .time-table dd {margin: 0;}
/*#recruit_schedule .recruit_schedule_content .recruit_schedule_box {margin: 0 0 0 1em;}*/

/**** end recruit_schedule ****************************************************************/


/**** company ****************************************************************/

#greeting { padding:4em 0 2em 0; overflow:hidden; }

#greeting .text { width:calc(750vw / 19.2); margin-block-end:2em; }

#greeting .inner_right .thumb { width:calc(900vw / 19.2); border-top-left-radius:1em; border-bottom-left-radius:1em; margin-block-end:2em; }
#greeting .inner_left .thumb { width:calc(900vw / 19.2); border-top-right-radius:1em; border-bottom-right-radius:1em; margin-block-end:2em; }

#greeting .text .catch span { margin-block-end:0.4em; }
#greeting .text .ttl2 { justify-content:flex-start; align-items:center; }
#greeting .text .ttl2 i { margin-right:1em; }

#greeting .illust44 { top:0; right:0; }

#thoughts {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/company/thoughts_bg.webp); background-position:center bottom; background-size:100%; background-repeat:no-repeat;
}

#thoughts .thoughts_wrapper { border-radius:2em; }

#thoughts .thoughts_wrapper .thoughts_contents { border-top:solid 3px #59B200; padding: 0 0 2em 0; }
#thoughts .thoughts_wrapper .thoughts_contents .thoughts_ttl { inset:-1em 0 auto 0; margin:auto; width:max-content; background-color:#FFFFFF; padding: 0 1em 0 1em; }

#thoughts .thoughts_wrapper .thoughts_contents .box { width:calc(750vw / 19.2); margin: 2em 0 2em 0; }
#thoughts .thoughts_wrapper .thoughts_contents .box dt { justify-content:flex-start; align-items:center; border-bottom:dotted 3px #FBD433; padding:0 0 0.75em 0; }
#thoughts .thoughts_wrapper .thoughts_contents .box dt .num {
	display:flex; justify-content:center; align-items:center; margin-right:0.5em; width:calc(76vw / 19.2); height:calc(76vw / 19.2);
}
#thoughts .thoughts_wrapper .thoughts_contents .box dd { margin:0; padding:1em 0 0 0; }

#thoughts .illust45 { right:calc(80vw / 19.2); bottom:3em; }


#company_concept { padding:4em 0 4em 0; overflow:hidden; }
#company_concept .illust46 { right:calc(160vw / 19.2); top:3em; }
#company_concept .illust47 { left:0; top:45%; }
#company_concept .illust48 { right:0; bottom:15%; }

#company_concept .company_concept_contents.flex { flex-wrap: wrap; }
#company_concept .company_concept_contents .box { width:calc(750vw / 19.2); margin-block-end:2em; border-radius:1em; padding: 0.25em 1em 1.25em 1.25em; }
#company_concept .company_concept_contents .box dt { justify-content:flex-start; align-items:center; }
#company_concept .company_concept_contents .box dt .num {
	display:flex; justify-content:center; align-items:center; margin-right:0.5em; width:calc(76vw / 19.2); height:calc(76vw / 19.2);
}
#company_concept .company_concept_contents .box dd { margin:0; }


#goal {
	padding:7em 0 4em 0; overflow:hidden;
	background-image:url(../img/company/goal_bg.webp); background-position:center bottom; background-size:cover; background-repeat:no-repeat;
}

#goal .inner { border-radius:1em; box-shadow: 5px 5px 0 #23B0EF; }

#goal .ttl { position:absolute; inset:-4em 0 auto 0; margin:auto; width:max-content; background-color:#FFFFFF; border-radius:1em; padding:1em; }

#goal .goal_wrapper { padding:4em 0 1em 0; }

#goal .goal_contents { margin:2em 0 2em 0; }
#goal .goal_contents .text { width:calc(750vw / 19.2); }
#goal .goal_contents .thumb { width:calc(750vw / 19.2); border-radius:1em; }

#goal .goal_contents .text .box {  }
#goal .goal_contents .text .box dt { border-bottom:solid 3px #F3C507; padding:0 0 0.75em 0; justify-content: flex-start; align-items: center; }
#goal .goal_contents .text .box dt .num { margin-right:0.5em; }
#goal .goal_contents .text .box dt .ja {  }
#goal .goal_contents .text .box dd { margin:0; padding:1em 0 1em 0; }


#goal .illust49 { bottom: 35em; left: calc(450vw / 19.2); }
#goal .illust50 { bottom:3em; left:2em; }



#company_profile { padding:4em 0 4em 0; overflow:hidden; }

#company_profile .company_profile_contents {  }
#company_profile .company_profile_contents .half { width:calc(750vw / 19.2); }
#company_profile .company_profile_contents .half .box { margin: 0; border-bottom:dotted 3px #DDDDDD; }
#company_profile .company_profile_contents .half .box dt { width:7em; padding: 1em 0 1em 0; }
#company_profile .company_profile_contents .half .box dt span { display: block; text-align: center; border-radius: 0.5em; padding: 0.1em 1em 0.2em 1em; }
#company_profile .company_profile_contents .half .box dd { margin:0; padding: 1em 0 1em 2em; }
#company_profile .company_profile_contents .half .box dd .qualification { display:block; }

#company_profile .company_profile_contents .half .box dd ul { list-style-type: none; margin: 0; padding: 0; }
#company_profile .company_profile_contents .half .box dd ul li { position:relative; padding:0 0 0 1.5em; }
#company_profile .company_profile_contents .half .box dd ul.circle_blue li::before { color: #00A1E9; }
#company_profile .company_profile_contents .half .box dd ul li::before {
	display: flex; align-items: center; position: absolute; content: "●"; font-size: calc(12vw / 19.2); top: 0; bottom: 0; left: 0;
}

#company_profile #gmap { margin-block-start:4em; height:calc(400vw / 19.2); min-height:280px; }

#company_profile .illust51 { top: 3em; right: 12em; }
#company_profile .illust52 { top:2em; right:2em; }

#history {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/company/history_bg.webp); background-position:center bottom; background-size:cover; background-repeat:no-repeat;
}

#history .history_wrapper { padding:4em 0 4em 0; border-radius:2em; }



#history .history_contents { padding:2em 0 2em 0; }
#history .history_contents .box { margin:0; }
#history .history_contents .box dt { margin:0; padding:1em 2em 1em 0; border-bottom:dotted 3px #59B200; width:10em; }
#history .history_contents .box dd { margin:0; padding:1em 1em 1em 2em;  border-bottom:dotted 3px #DDDDDD; }

#history .history_contents .box dd ul { list-style-type: none; margin: 0; padding: 0; }
#history .history_contents .box dd ul li { position:relative; padding:0 0 0 1.5em; }
#history .history_contents .box dd ul.circle_green li::before { color: #59B200; }
#history .history_contents .box dd ul li::before {
	display: flex; align-items: center; position: absolute; content: "●"; font-size: calc(12vw / 19.2); top: 0.7em; left: 0;
}


#history .illust53 { top:6em; left:7em; }
#history .illust54 { top:17em; right:3em; }
#history .illust55 { bottom:17em; left:2em; }

/**** end company *************************************************************/
/**** staff ********************************************************************/
#staff_hero { padding:4em 0 4em 0; overflow:hidden; }

#staff_list1 { background-image:url(../img/staff/staff_list_bg_right.png); background-size:calc(290vw / 19.2); background-position:right top calc(390vw / 19.2); background-repeat:no-repeat; }
#staff_list2 { background-image:url(../img/staff/staff_list_bg_left.png); background-size:calc(199vw / 19.2); background-position:left top calc(300vw / 19.2); background-repeat:no-repeat; }

.staff_list { padding:4em 0 4em 0; overflow:hidden; }
.staff_list .middle_inner.flex { flex-wrap: wrap; }
.staff_list .thumb { width:calc(490vw / 19.2); border-radius:1em; margin-block-end: calc(40vw / 19.2); }

#staff_voice_list { padding:4em 0 4em 0; overflow:hidden; }
#staff_voice_list .middle_inner.flex { flex-wrap: wrap; }
#staff_voice_list .modal_gallery { width:calc(750vw / 19.2); border-radius:1em; margin-block-end: calc(40vw / 19.2); }
#staff_voice_list .modal_gallery dl { margin:0; padding:calc(24vw / 19.2) calc(20vw / 19.2) calc(24vw / 19.2) calc(31vw / 19.2); }
#staff_voice_list .modal_gallery dl dt { margin:0; padding:0 0 0.5em 0; }
#staff_voice_list .modal_gallery dl dt i { margin-left:0.3em; }
#staff_voice_list .modal_gallery dl dt p { margin:0; }
#staff_voice_list .modal_gallery dl dd { margin:0; }

.modal_gallery_box {
	display: flex; justify-content: center; align-items: center;
	position: fixed; z-index: 9999; inset: 0;
	background: rgba(0, 0, 0, 0.7);
	opacity: 0; visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s;
}

.modal_gallery_box.show { opacity: 1; visibility: visible; }

.modal_gallery_box .modal_content {
	position: relative; background: #FFFFFF; box-shadow: 0 0 20px rgba(0,0,0,0.4);
	padding: calc(40vw / 19.2) calc(15vw / 19.2) calc(40vw / 19.2) calc(40vw / 19.2); border-radius: 0.5em; width: calc(900vw / 19.2); max-height: 80vh;
}

.modal_gallery_box .modal_close {
	display: flex; justify-content: center; align-items: center; width: calc(60vw / 19.2); height: calc(60vw / 19.2);
	position: absolute; top: -1.5em; right: -1.5em;  border: none; cursor: pointer;
	border: solid 2px #F3C507; border-radius: 100vmax; background-color: #FFFFFF;
}


.modal_gallery_box .staff_voice_content_wrapper { overflow-y:scroll; max-height: 70vh; padding: 0 calc(15vw / 19.2) 0 0; }

.modal_gallery_box .modal_content header { padding: 0 0 1em 0; }
.modal_gallery_box .modal_content header p { margin:0; }

.modal_gallery_box .modal_content article {  }
.modal_gallery_box .modal_content article dl {  }
.modal_gallery_box .modal_content article dl dt { margin:0; padding:1em 0 1em 0; }
.modal_gallery_box .modal_content article dl dt .circle { width:calc(56vw / 19.2); height:calc(56vw / 19.2); justify-content: center; align-items: center; }
.modal_gallery_box .modal_content article dl dt p { width:calc(740vw / 19.2); margin: 0; }

.modal_gallery_box .modal_content article dl dd { margin:0; padding:1em 0 0 0; }
.modal_gallery_box .modal_content article dl dd .circle { width:calc(56vw / 19.2); height:calc(56vw / 19.2); justify-content: center; align-items: center; }
.modal_gallery_box .modal_content article dl dd div { width:calc(740vw / 19.2); }
.modal_gallery_box .modal_content article dl dd div .nick_name { display:block; width:max-content; padding:0 1em 0.1em 1em; border:solid 1px #EA5507; border-radius:50vmax; }

.modal_gallery_box .modal_content article dl dd div ul { list-style-type:none; margin: 1em 0 0 0; padding: 0; }
.modal_gallery_box .modal_content article dl dd div ul li { position: relative; margin-block-end: 0.3em; padding: 0 0 0 1em; }
.modal_gallery_box .modal_content article dl dd div ul li::before {
	display: flex; align-items: center; position: absolute;  content: "●"; font-size: calc(12vw / 19.2); top: 0; bottom: 0; left: 0; color:#EA5507;
}

.modal_gallery_box .modal_content article .content { border-top:dotted 3px #CCCCCC; padding:1em 0 0 0; }

/**** end staff ****************************************************************/
/**** recruit ********************************************************************/

#works {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/recruit/works_bg_right_top.webp),url(../img/recruit/works_bg_left.webp),url(../img/recruit/works_bg_right_bottom.webp);
	background-repeat:no-repeat,no-repeat,no-repeat; background-position:right top 10%,left top 50%, right bottom 20%;
	background-size:calc(392vw / 19.2),calc(310vw / 19.2),calc(381vw / 19.2);
}

#works .illust56 { top:3em; left:calc(250vw / 19.2); }

#works .works_contents {
	border:solid 1px #000000; border-radius:1em; padding:1em calc(100vw / 19.2) 1em calc(100vw / 19.2); margin:2em 0 4em 0;
}

#works .works_contents .half { width:calc(750vw / 19.2); }

#works .works_contents .half .box_type1 {  }
#works .works_contents .half .box_type1 dt {  }
#works .works_contents .half .box_type1 dt .num { display:inline-bloc; margin-right:0.4em; }
#works .works_contents .half .box_type1 dd { margin:0; }
#works .works_contents .half .box_type1 dd {  }

#works .works_contents .half .box_type2 {  }
#works .works_contents .half .box_type2 dt { width:max-content; padding:0.1em 1em 0.2em 1em; border-radius:50vmax; align-items: center; }
#works .works_contents .half .box_type2 dt.blue { border:solid 1px #00A1E9; }
#works .works_contents .half .box_type2 dt.orange { border:solid 1px #EA5507; }
#works .works_contents .half .box_type2 dt .num {
	display:inline-block; width:calc(26vw / 19.2); height:calc(26vw / 19.2); text-align:center; margin-right:0.4em;
}
#works .works_contents .half .box_type2 dd { margin:0; }
#works .works_contents .half .box_type2 dd .circle_blue {  }
#works .works_contents .half .box_type2 dd .circle_blue { list-style-type:none; margin: 1em 0 0 0; padding: 0; }
#works .works_contents .half .box_type2 dd .circle_blue li { position: relative; margin-block-end: 0.3em; padding: 0 0 0 1em; }
#works .works_contents .half .box_type2 dd .circle_blue li::before {
	display: flex; align-items: center; position: absolute;  content: "●"; font-size: calc(12vw / 19.2); top: 0.65em; left: 0; color:#00A1E9;
}



#works .works_contents .half .visit_area { margin-block-start: 2.25em; }
#works .works_contents .half .visit_area dt { width:max-content; padding:0.1em 1em 0.2em 1em; border-radius:50vmax; border:solid 1px #EA5507; }
#works .works_contents .half .visit_area dd { position:relative; margin:0; min-height:15em; }
#works .works_contents .half .visit_area dd .thumb { position:absolute; right: 2em; bottom: 0; width:calc(349vw / 19.2); }

#works .text_top { margin-block-start:9em; }


#works .qualification_contents { margin-block-start:2em; }
#works .qualification_contents .qualification_illust1 { width:calc(262vw / 19.2); }
#works .qualification_contents .qualification_illust2 { width:calc(153vw / 19.2); }

#works .qualification_contents .qualification_box { width:calc(410vw / 19.2); }
#works .qualification_contents .qualification_box dt { border-bottom: solid 3px #00A1E9; }
#works .qualification_contents .qualification_box dd { margin:0; align-items: center; }
#works .qualification_contents .qualification_box dd ul { list-style-type:none; margin: 1em 0 0 0; padding: 0; }
#works .qualification_contents .qualification_box dd ul li { position: relative; margin-block-end: 0.3em; padding: 0 0 0 1em; }
#works .qualification_contents .qualification_box dd ul li::before {
	display: flex; align-items: center; position: absolute;  content: "●"; font-size: calc(12vw / 19.2); top: 0; bottom: 0; left: 0; color:#00A1E9;
}

#works .works_contents .half .efforts_illust { width:calc(230vw / 19.2); display: block; margin: 1em auto 0 auto; text-align: center; }




#education { padding:4em 0 4em 0; overflow:hidden; }

#education .education_contents { flex-wrap: wrap; }

#education .education_contents .box { border-radius:1em; width:calc(490vw / 19.2); margin-block-end:2.25em; padding:1em; }
#education .education_contents .box dt { justify-content: flex-start; margin:0; padding:0 0 0.75em 0; }
#education .education_contents .box dt .num {
	display: flex; justify-content: center; align-items: center; width: calc(60vw / 19.2); height: calc(60vw / 19.2); margin-right: 0.5em;
}
#education .education_contents .box dd { margin:0; padding:1em 0 0 0; }

#education .illust57 { top:calc(-180vw / 19.2); left:4em; }


#styles {
	padding:4em 0 4em 0; overflow:hidden;
	background-image:url(../img/recruit/styles_bg.webp); background-position:center bottom; background-size:cover; background-repeat:no-repeat;
}

#styles .styles_contents {  }
#styles .styles_contents .box { border-radius:1em; padding: 1em 2em 1em 2em; margin-block-end: 3em; align-items: center; }
#styles .styles_contents .box .text {width:calc(710vw / 19.2); }
#styles .styles_contents .box .thumb { width:calc(367vw / 19.2); }

#styles .styles_contents .box .text dt { border-bottom:dotted 3px #59B200; margin:0; padding:0 0 0.75em 0; justify-content: flex-start; align-items: center; }
#styles .styles_contents .box .text dt .num { margin-right:0.4em; line-height: 1; }
#styles .styles_contents .box .text dt p { margin:0; }
#styles .styles_contents .box .text dd { margin:0; padding:1em 0 0 0; }

#styles .styles_contents .box .text dd .circle_green { list-style-type:none; margin: 1em 0 0 0; padding: 0; }
#styles .styles_contents .box .text dd .circle_green li { position: relative; margin-block-end: 0.3em; padding: 0 0 0 1em; }
#styles .styles_contents .box .text dd .circle_green li::before {
	display: flex; align-items: center; position: absolute;  content: "●"; font-size: calc(12vw / 19.2); top: 0.75em; left: 0; color:#59B200;
}
#styles .styles_contents .box .text dd .circle_green li p { }






.requirements_menu_list { padding:4em 0 4em 0; overflow:hidden; }
.requirements_menu_list .illust58 { top:3em; left:3em;}
.requirements_menu_list .illust59 { top:3em; right:0; }
.requirements_menu_list .illust60 { top:7em; left:8em;}
.requirements_menu_list .illust48 { top:0; right:4em; }

.requirements_menu_list .sub_cat_box { list-style-type:none; padding:0; flex-wrap: wrap; justify-content:center; }
.requirements_menu_list .sub_cat_box li { margin:0 1em 2em 1em; }
.requirements_menu_list .sub_cat_box li a {
	position:relative; display:flex; justify-content: center; align-items:center; width:calc(460vw / 19.2); height:calc(85vw / 19.2); border-radius:0.25em;
}
.requirements_menu_list .sub_cat_box li .button_green { border:solid 2px #59B200; }
.requirements_menu_list .sub_cat_box li .button_orange { border:solid 2px #EA5507; }
.requirements_menu_list .sub_cat_box li .button_yellow { border:solid 2px #F3C507; }
.requirements_menu_list .sub_cat_box li .button_blue { border:solid 2px #00A1E9; }

.requirements_menu_list .sub_cat_box li i {
	content:""; position:absolute; top:0; bottom:0; right:0.5em; margin:auto; display:flex; align-items:center;
}


.requirements { padding:4em 0 4em 0; overflow:hidden; }
.requirements .requirements_wrapper { border-radius:2em; padding:4em 0 4em 0; }

.requirements .requirements_wrapper .ttl { position:relative; width: max-content; min-width: 20em; padding: 0.75em 4em 0.75em 4em; margin-block-end:4em; }
.requirements .requirements_wrapper .ttl::before {
	content: ""; position: absolute; top: 0; left: 0; width: calc(40vw / 19.2); height: calc(40vw / 19.2); background-size: 100%; clip-path: polygon(100% 0, 0 0, 0 100%);
}
.requirements .requirements_wrapper .ttl::after {
	content: ""; position: absolute; bottom: 0; right: 0; width: calc(40vw / 19.2); height: calc(40vw / 19.2); background-size: 100%; clip-path: polygon(100% 0, 100% 100%, 0 100%);
}

.requirements .requirements_wrapper .strength { position:relative; border-radius:1em; padding: 0 0 1em 0; }
.requirements .requirements_wrapper .strength .strength_ttl { position:relative; width: max-content; top:-1.1em; left:0; right:0; margin:auto; padding:0.1em 1em 0.2em 1em; }

.requirements .requirements_wrapper .strength .check_list { justify-content: space-evenly; }
.requirements .requirements_wrapper .strength .check_list .half { width: calc(540vw / 19.2); }
.requirements .requirements_wrapper .strength .check_list .half .check_mark { list-style-type:none; padding:0; }
.requirements .requirements_wrapper .strength .check_list .half .check_mark li { position:relative; margin: 0.5em 0 0.5em 0; padding: 0 0 0 2.5em; }
.requirements .requirements_wrapper .strength .check_list .half .check_mark li::before {
	content:""; background-image:url(../img/check_mark.png); background-size:100%;
	position:absolute; top:0.2em; left:0; width:calc(30vw / 19.2); height:calc(29vw / 19.2);
}
.requirements .recruit_notxt { margin-block-end: 3em; }
.requirements .recruit_txt{width: max-content;padding: 0.1em 1.5em 0.2em 1.5em;border-radius: 50vmax;margin-block-end: 3em; }

.requirements .requirements_wrapper .detail { padding:2em 0 0 0; }
.requirements .requirements_wrapper .detail .half { width: calc(750vw / 19.2); }
.requirements .requirements_wrapper .detail .box { margin:0; }
.requirements .requirements_wrapper .detail .box dt { margin:0; padding:1em 0 1em 0; width:9em; }
.requirements .requirements_wrapper .detail .box dd { margin:0; padding:1em 0 1em 2em; border-bottom:dotted 3px #EDE6D1; }

.requirements .requirements_wrapper .detail .box dd .circle_marker { list-style-type: none; margin: 0; padding: 0; }
.requirements .requirements_wrapper .detail .box dd .circle_marker li { position: relative; padding: 0 0 0 1.25em; }
.requirements .requirements_wrapper .detail .box dd .circle_marker li::before {
	display: flex; align-items: center; position: absolute; content: "●"; font-size: calc(12vw / 19.2); top: 0.55em; left: 0;
}
.requirements .requirements_wrapper .detail .box dd .circle_marker li.circle_green::before { color: #7FBE25; }
.requirements .requirements_wrapper .detail .box dd .circle_marker li.circle_yellow::before { color: #F3C507; }
.requirements .requirements_wrapper .detail .box dd .circle_marker li.circle_orange::before { color: #EA5507; }
.requirements .requirements_wrapper .detail .box dd .circle_marker li.circle_blue::before { color: #00A1E9; }





.requirements .requirements_wrapper .entry_read { margin-block-start:4em; }

.requirements .requirements_wrapper .entry_btn { border:solid 1px #000000; width: calc(400vw / 19.2); height: calc(80vw / 19.2); }
.requirements .requirements_wrapper .entry_btn .circle {
	position: absolute; top: 0; bottom: 0; left: 0.8em; margin: auto; display: flex; align-items: center; justify-content: center; width: calc(50vw / 19.2); height: calc(50vw / 19.2);
}
.requirements .requirements_wrapper .entry_btn .circle  i { position:static; display:block; }

#ot_pt {
	background-image:url(../img/recruit/requirements/ot_pt_bg.webp); background-position:center top; background-size:100%; background-repeat:no-repeat;
}
#nurse {
	background-image:url(../img/recruit/requirements/nurse_bg.webp); background-position:center top; background-size:100%; background-repeat:no-repeat;
}
#care {
	background-image:url(../img/recruit/requirements/care_bg.webp); background-position:center top; background-size:100%; background-repeat:no-repeat;
}
#clerk {
	background-image:url(../img/recruit/requirements/clerk_bg.webp); background-position:center top; background-size:100%; background-repeat:no-repeat;
}

#ot_pt .strength { border:solid 3px #ECEFDC; }
#nurse .strength { border:solid 3px #FEDECD; }
#care .strength { border:solid 3px #FEF2C9; }
#clerk .strength { border:solid 3px #BFF1FF; }

#ot_pt .requirements_wrapper .ttl::before,#ot_pt .requirements_wrapper .ttl::after { background-color:#59B200; }
#nurse .requirements_wrapper .ttl::before,#nurse .requirements_wrapper .ttl::after { background-color:#EA5507; }
#care .requirements_wrapper .ttl::before,#care .requirements_wrapper .ttl::after { background-color:#F3C507; }
#clerk .requirements_wrapper .ttl::before,#clerk .requirements_wrapper .ttl::after { background-color:#00A1E9; }

#ot_pt .requirements_wrapper .detail .box dt { border-bottom:dotted 3px #59B200; }
#nurse .requirements_wrapper .detail .box dt { border-bottom:dotted 3px #EA5507; }
#care .requirements_wrapper .detail .box dt { border-bottom:dotted 3px #F3C507; }
#clerk .requirements_wrapper .detail .box dt { border-bottom:dotted 3px #00A1E9; }

.requirements_wrapper .detail .box dd .sub_box { margin:0; }
.requirements_wrapper .detail .box dd .sub_box .tw { width:7em; }
#ot_pt .requirements_wrapper .detail .box dd .sub_box dt,
#nurse .requirements_wrapper .detail .box dd .sub_box dt,
#care .requirements_wrapper .detail .box dd .sub_box dt,
#clerk .requirements_wrapper .detail .box dd .sub_box dt { border:none; padding: 0; }
#ot_pt .requirements_wrapper .detail .box dd .sub_box dd,
#nurse .requirements_wrapper .detail .box dd .sub_box dd,
#care .requirements_wrapper .detail .box dd .sub_box dd,
#clerk .requirements_wrapper .detail .box dd .sub_box dd { border:none; padding:0; }

.rc_indent{display:inline-block;padding-left:9em;}

#entry_hero { padding:4em 0 4em 0; }
#entry_hero .ttl { width:max-content; }
#entry_hero .ttl .illust61 { top:-2em; right:1em; }
#entry_hero .half { width: calc(720vw / 19.2); }


#entry_telephone { padding:4em 0 4em 0; }
#entry_telephone .entry_telephone_wrapper {  }
#entry_telephone .entry_telephone_wrapper .half { width: calc(580vw / 19.2); }
#entry_telephone .illust62 { bottom:-4em; left:3em; }

#entry_telephone .ttl { justify-content:flex-start; align-items: center; }
#entry_telephone .ttl i { margin-right:0.4em; }

#entry_telephone .facility_name { }
#entry_telephone .tel_btn { margin-block-start: 0.7em; padding: 1em 0 0 0; }
#entry_telephone .btn { border: solid 1px #000000; border-radius: 50vmax; margin: 1em auto 2em auto; }
#entry_telephone .btn {  position: relative; display: block; width: calc(500vw / 19.2); height: calc(110vw / 19.2); border-radius: 50vmax; }
#entry_telephone .btn .circle {
	position: absolute; top: 0; bottom: 0; left: 0.8em; margin: auto; display: flex; align-items: center; justify-content: center; width: calc(74vw / 19.2); height: calc(74vw / 19.2);
}
#entry_telephone .btn .text { display: block; padding-left: calc(125vw / 19.2); line-height: 1; }
#entry_telephone .btn .hours { display: block; padding-left: calc(105vw / 19.2); }


#entry_form {
	padding:4em 0 4em 0;
	background-image:url(../img/recruit/entry/entry_form_bg.webp); background-position:center bottom; background-size:100%; background-repeat:no-repeat;
}
#entry_form .entry_form_header {  }
#entry_form .ttl { justify-content:flex-start; align-items: center; }
#entry_form .ttl i { margin-right:0.4em; }

#entry_form .half { width: calc(600vw / 19.2); }

#entry_form .half .illust63 { top:0; left:2em; }
#entry_form .half .illust64 { bottom:0; right:10em; }
#entry_form .half .illust65 { top:2em; right:-1em; }
#entry_form .illust66 { bottom:2em; right:2em; }


#entry_form .form_wrapper { border-radius:2em; padding-bottom: 2em; }

#entry_form form { margin-block-start:2em; }

#entry_form .box { position: relative; margin-block-start: 0; margin-block-end: 0; border-bottom:dotted 3px #DDDDDD; }


#entry_form .box:last-of-type { border-bottom:none; }



#entry_form .box .field { width:16em; padding: 3em 0 2em 0; vertical-align: top;}
#entry_form .box .field p { margin:0; }
#entry_form .box .field .field_name {  }
#entry_form .box .field .required { display:inline-block; padding:0.1em 1em 0.1em 1em; margin-right:2em; }
#entry_form .box .field .any { display:inline-block; padding:0.1em 1em 0.1em 1em; margin-right:2em; }

#entry_form .box .text { margin:0; padding: 2em 0 2em calc(26em / 18); vertical-align: middle; }
#entry_form .box .text .memo { display:block; }




#entry_form .box input[type=text],
#entry_form .box input[type=tel],
#entry_form .box input[type=email],
#entry_form .box select { padding: 1em; width: 100%; background-color:#FFFFFF; border:solid 1px #00A1E9; border-radius: 0.5em; }
#entry_form .box textarea { padding: 1em; width: 100%; height:14em; font-size: 1em; font-family: inherit; background-color:#FFFFFF; border:solid 1px #00A1E9; }

#entry_form .box input[type=checkbox] { height: 1.4em; width: 1.4em; margin: 0 0.3em 0.3em 0; background-color: #FFF; border: 1px solid #00A1E9; border-radius: 4px; vertical-align: middle; }
#entry_form .box label { display: inline-block; cursor:pointer; margin-right:1em; margin-top: 0.5em; }
#entry_form .box input[type=checkbox]:checked { border: 1px solid #00A1E9; }
#entry_form .box input[type=checkbox]:checked::before {
	content: ""; display: block; position: relative; left: 0.5em; top: 1px; width: calc(8vw / 19.2); height: calc(16vw / 19.2); border: solid #00A1E9; border-width: 0 3px 3px 0; transform: rotate(45deg);
}

#entry_form .box input[type=checkbox]:focus-visible { outline: 2px solid #00A1E9; outline-offset: 2px;}

#entry_form .box input[type=radio] { height: 1.4em; width: 1.4em; margin: 0 0.3em 0.3em 0; background-color: #FFF; border: 1px solid #00A1E9; border-radius: 100vmax; vertical-align: middle; }
#entry_form .box label { display: inline-block; cursor:pointer; margin-right:2em; margin-top: 0.5em; }
#entry_form .box input[type=radio]:checked { border: 1px solid #00A1E9; }
#entry_form .box input[type=radio]:checked::before {
	content: ""; display: block; position: relative; left: 0; right: 0; top: calc(5vw / 19.2); margin: auto; width: calc(12vw / 19.2); height: calc(12vw / 19.2); background-color: #00A1E9;
	border-radius:100vmax;
}

#entry_form .box input[type=radio]:focus-visible { outline: 2px solid #00A1E9; outline-offset: 2px;}

#entry_form #birth_year, #entry_form #birth_month, #entry_form #birth_day { width: 7em; }

.invert.clearfix::after {display: block;content: "";clear: both;}
.invert .right { display: inline-block; float: right; padding: 1em 1em 1em 0.7em;}

.wpcf7-list-item { margin: 0;}


#entry_form .send_btn {
	display:flex; align-items:center; justify-content: center; width: calc(360vw / 19.2); height: calc(80vw / 19.2);font-weight: 700; margin-block-start:3em;border:solid 3px #00A1E9;
}

/**** end recruit ****************************************************************/


/**** news **********************************************************************/
#news {
	padding:4em 0 4em 0;
	background-image:url(../img/news/news_bg.webp); background-position:center top calc(190vw / 19.2); background-size:100%; background-repeat:no-repeat;
}
#news .news_wrapper { border:solid 1px #59B200; border-radius:1em; padding:calc(50vw / 19.2) calc(90vw / 19.2) calc(50vw / 19.2) calc(90vw / 19.2); }

#news .summary { margin-block-end:4em; }
#news .left_column { width: calc(930vw / 19.2); }
#news .right_column { width: calc(380vw / 19.2); }



#news .left_column.list .post { margin:0 0 4em 0; }


#news .entry-date { margin-right:1em; }

#news .cat-links { display:inline-block; }
#news .cat-links a { color:#59B200; }


#news .left_column .post .entry_ttl {
	margin-block-start:0; padding: 0 0 0.7em 0; margin-block-end: 1.5em; border-bottom: dotted 3px #59B200;
}

#news .post-thumbnail {
	position: relative;
	clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%, 0 15%); overflow: hidden; object-fit: cover; font-family: 'object-fit: cover;'; width: 100%; height:calc(280vw / 19.2);
}
#news .post-thumbnail img {
	position: absolute; width: 150% !important; top: 0; left: -25%; right: -25%; object-fit: cover; font-family: 'object-fit: contain;';
	-webkit-transform: scale(1); transform: scale(1); -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out; overflow:hidden;
}
#news .post-thumbnail img:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }

#news .left_column span.page-numbers {
	display: inline-block; border: solid 2px #59B200; width: calc(60vw /19.2); height: calc(60vw /19.2); line-height: calc(52vw /19.2); text-align: center; margin-right: 0.8vw;
	font-size:calc(25 * 0.052vw); caret-color: transparent; border-radius: 100vmax;
}

#news .left_column a.page-numbers {
	display: inline-block; border: solid 2px #59B200; width: calc(60vw /19.2); height: calc(60vw /19.2); line-height: calc(52vw /19.2); text-align: center; margin-right: 0.8vw;
	font-size:calc(25 * 0.052vw); background-color:#59B200; color:#FFFFFF; caret-color: transparent; border-radius: 100vmax;
}

#news .left_column a.page-numbers.next,#news .left_column a.page-numbers.prev { background-color:#FFF; border:solid 2px #FFF; }


#news .left_column .archive_title { display: block; width: max-content; background-color: #F4E1D2; padding:0 0.5em 0 0.5em; margin-block-end:3em; }


#news .left_column.single .post { border-bottom:solid 1px #C2E2ED; padding: 0 0 2em 0; margin-block-end: 2em;}
#news .left_column.single .entry-title { border-bottom: solid 1px #F3F5E9; padding: 0 0 0.5em 0; margin-block-end: 2em; }



#news .left_column .post-navigation .nav-links {
	display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between;
}

#news .left_column .post-navigation .nav-previous,
#news .left_column .post-navigation .nav-next {
	max-width: 46%;
}
#news .left_column .post-navigation .nav-previous a ,
#news .left_column .post-navigation .nav-next a {
	display: block;
}

#news .left_column .post-navigation .post-title { display: inline-block; line-height: calc(60vw /19.2); }
#news .left_column .post-navigation .meta-nav {
	display: flex; width: 100%;
}
#news .left_column .post-navigation .meta-nav svg { color: #EA5507; }

#news .left_column .post-navigation .nav-previous .meta-nav { justify-content:flex-start; }
#news .left_column .post-navigation .nav-next .meta-nav { justify-content:flex-end; }



.right_column .widget_block h2.wp-block-heading { position:relative; background-color:#F9F6EF; color:#000000; padding:1em 1em 1em 3.5em; font-size:calc(22 * 0.052vw);}

.right_column .widget_block h2.wp-block-heading::before {
	content: ""; position: absolute; top: 0; bottom: 0; left: 0.6em; margin: auto;
	width: calc(52vw /19.2); height: calc(52vw /19.2); display: block; border-radius: 100vmax;
}
.right_column .widget_block:nth-of-type(1) h2.wp-block-heading::before { background-color: #EA5507; }
.right_column .widget_block:nth-of-type(2) h2.wp-block-heading::before { background-color: #00A1E9; }
.right_column .widget_block:nth-of-type(3) h2.wp-block-heading::before { background-color: #EA5507; }

.right_column .widget_block h2.wp-block-heading::after {
	position: absolute; top: 0; bottom: 0; left: 1em; margin: auto; display: flex; align-items: center;
	font-family: 'Font Awesome 7 Pro'; font-size: calc(27 * 0.052vw); color: #FFFFFF; font-weight: 300;
}
.right_column .widget_block:nth-of-type(1) h2.wp-block-heading::after {content: "\f044";}
.right_column .widget_block:nth-of-type(2) h2.wp-block-heading::after {content: "\f07b";}
.right_column .widget_block:nth-of-type(3) h2.wp-block-heading::after {content: "\f133";}


.right_column .widget_block ul { list-style-type: none; margin: 0; padding: 0 0 2em 0;}
.right_column .widget_block ul li { position:relative; border-bottom: dotted 3px #EDE6D1; margin: 0; padding: 0.5em 0 0.5em 0; }
.right_column .widget_block ul li::after {
	position: absolute; bottom: calc(-9vw / 19.2); right: 0; margin: auto; content:"";
	background-image:url(../img/arabesque_icon.png); width:calc(20vw / 19.2); height:calc(18vw / 19.2); background-size:100%;
}


/**** end news ******************************************************************/

/**** contact **********************************************************************/

#contact_hero { padding:4em 0 4em 0; }

#contact_hero .text { width:calc(630vw / 19.2); }
#contact_hero .tel_box { width:calc(630vw / 19.2); }

#contact_hero .text .ttl { justify-content: flex-start; align-items: center; margin-block-start: 1em; margin-block-end: 1.5em;}
#contact_hero .text .ttl i { margin-right:0.3em; }

#contact_hero .tel_box .facility_name { }
#contact_hero .tel_box .btn {
	position: relative; display: block; width: calc(500vw / 19.2); height: calc(110vw / 19.2); border:solid 1px #000000; border-radius:50vmax;
	margin-left: auto; margin-right: auto; margin-block-end: 1.5em;
}
#contact_hero .tel_box .btn .text { display:block; padding-left:calc(125vw / 19.2); line-height: 1; }
#contact_hero .tel_box .btn .hours { display:block; padding-left:calc(105vw / 19.2); }
#contact_hero .tel_box .tel_btn { margin-block-start:0.7em; padding: 1em 0 0 0; }
#contact_hero .tel_box .btn .circle {
	position: absolute; top: 0; bottom: 0; left: 0.8em; margin: auto;
	display: flex; align-items: center; justify-content: center; width: calc(74vw / 19.2); height: calc(74vw / 19.2);
}



#contact {
	padding:4em 0 4em 0;
	background: linear-gradient(to bottom, #FFFFFF 0, #FFFFFF 40%, #F3F5E9 40%, #F3F5E9 100%);
}

#contact .ttl { justify-content: flex-start; align-items: center; margin-block-start: 1em; margin-block-end: 1.5em;}
#contact_hero .text .ttl i { margin-right:0.4em; }


#contact .illust23 { top:-8em; left:4%; }
#contact .illust16 { top:0; right:calc(400vw / 19.2); }
#contact .illust24 { top:12em; right:4em; }
#contact .illust17 { bottom:5em; right:2em; }


#contact .ttl { margin-block-end:2.5em; width:max-content; }
#contact .ttl.dot_orange { width:auto; }
#contact .ttl i { margin-right:0.4em; }


#contact .contact_wrapper { padding:0 0 3em; border-radius:2em; }

#contact form { margin-block-start:2em; }

#contact .box { position: relative; margin-block-start: 0; margin-block-end: 0; border-bottom:dotted 3px #DDDDDD; }


#contact .box:last-of-type { border-bottom:none; }



#contact .box .field { width:16em; padding: 3em 0 2em 0; vertical-align: top;}
#contact .box .field p { margin:0; }
#contact .box .field .field_name {  }
#contact .box .field .required { display:inline-block; padding:0.1em 1em 0.1em 1em; margin-right:2em; }
#contact .box .field .any { display:inline-block; padding:0.1em 1em 0.1em 1em; margin-right:2em; }

#contact .box .text { margin:0; padding: 2em 0 2em calc(26em / 18); vertical-align: middle; }
#contact .box .text .memo { display:block; }




#contact .box input[type=text],
#contact .box input[type=tel],
#contact .box input[type=email],
#contact .box select { padding: 1em; width: 100%; background-color:#FFFFFF; border:solid 1px #59B200; border-radius: 0.5em; }
#contact .box textarea { padding: 1em; width: 100%; height:14em; font-size: 1em; font-family: inherit; background-color:#FFFFFF; border:solid 1px #59B200 }

#contact .box input[type=checkbox] { height: 1.4em; width: 1.4em; margin: 0 0.3em 0.3em 0; background-color: #FFF; border: 1px solid #59B200; border-radius: 4px; vertical-align: middle; }
#contact .box label { display: inline-block; cursor:pointer; margin-right:2em; margin-top: 0.5em; }
#contact .box input[type=checkbox]:checked { border: 1px solid #59B200; }
#contact .box input[type=checkbox]:checked::before {
	content: ""; display: block; position: relative; left: 0.5em; top: 1px; width: calc(8vw / 19.2); height: calc(16vw / 19.2); border: solid #59B200; border-width: 0 3px 3px 0; transform: rotate(45deg);
}

#contact .box input[type=checkbox]:focus-visible { outline: 2px solid #004aaa; outline-offset: 2px;}




.wpcf7-list-item { margin: 0;}


#contact .send_btn {
	display:flex; align-items:center; justify-content: center; width: calc(360vw / 19.2); height: calc(80vw / 19.2);font-weight: 700; margin-block-start:3em;border:solid 3px #59B200;
}


/**** end contact **********************************************************************/














