@charset "UTF-8";
html, body {margin:0;padding:0;}
@media screen nd (min-width:769px){
html, body {height:100%;overflow-x:hidden;}
}
body {
font-size:100%;
color:#111;
background-color:#fff;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/*---------- リンク設定 ----------*/

a:link {color:#37859a;text-decoration:underline;}
a:visited {color:#37859a;text-decoration:underline;}
a:hover {color:#139eb1;text-decoration:none;}
a{-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
a img {border-style:none;}
img {vertical-align:bottom;image-rendering:-webkit-optimize-contrast;}
a:hover img{filter:brightness(1.2);}
a img {border-style:none;-webkit-transition:all .3s;transition:all .3s;}


/*---------- ベーステキストの指定 ----------*/

p {
font-size:100%;
line-height:180%;
}
@media screen and (min-width:769px){
p {font-size:16px;letter-spacing:1px;}
}


/*---------- 見出し ----------*/

h1{}
h2{}
h3{}
h4{}


/*---------- PC・スマホの非表示指定 ----------*/

@media screen and (max-width:768px){.spnone{display:none;}}
@media screen and (min-width:769px){.pcnone{display:none;}}

header {
width:100%;
height:54px;
margin:0;
padding:0;
background-color:#fff;
position:fixed;
top:0;
left:0;
box-shadow:0 0 10px rgba(0,0,0,0.4);
z-index:9999;
}
.logo{margin:0;padding:14px 0 0 0;text-align:center;}
.logo img{width:120px;}
@media screen and (min-width: 769px) {
header{height:72px;}
.logo {
width:150px;
margin:0 auto;
flex-shrink:0;
padding:20px 0 0 0;
transform:translateX(-7px);
}
.logo img {width:100%;}
}

#wrapper{padding:54px 0 0 0;}
@media screen and (min-width:769px) {#wrapper{padding:72px 0 0 0;}}



/*---------- Base: Mobile First (スマホ用・適当な値) ----------*/

#mv{margin:0;padding:0;text-align:center;}
#mv h1{margin:0;padding:0;}
#mv h1 img{width:100%;}
@media screen and (min-width:769px) {
#mv{
background-color:#f3edeb;
background-image:url("img/mv_bg.png") ;
background-position:top center;
background-repeat:no-repeat;
}
#mv h1 img{width:1180px;}
}

.cta_area{
margin:0;
padding:15px 0 45px 0;
background:#EDE7D9;
}
.cta_txt{
padding:0 20px;
color:#666;
}
.cta_txt p{font-size:90%;}
.cta_box{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
margin-top:30px;
}
.cta_box a:link{color:#fff;text-decoration:none;}
.cta_box a:visited{color:#fff;text-decoration:none;}
.cta_box a:hover{color:#fff;text-decoration:none;}
.btn{
width:70%;
display:inline-flex;
justify-content:center;
align-items:center;
padding:18px 40px;
font-weight:bold;
border-radius:50px;
font-size:1.2rem;
letter-spacing:0.05em;
box-shadow:0 4px 15px rgba(0,0,0,0.1);
}
.btn:hover{
transform:translateY(-2px);
box-shadow:0 6px 20px rgba(0,0,0,0.15);
}
.btn_gold{
background:linear-gradient(135deg, #d4af66 0%, #b38e45 100%);
color:#fff;
}
.btn_line{
background-color:#06c755;
color:#fff;
}
@media screen and (min-width:769px) {
.cta_area{padding:25px 0 60px 0;}
.cta_txt{
width:768px;
margin:0 auto;
padding:0;
}
.cta_txt p{font-size:14px;letter-spacing:0;}
.btn{width:300px;}
}


/*---------- スタッフ紹介 ----------*/

.staff_bg{
margin:0 0 75px 0;
padding:75px 20px 45px 20px;
background:#fdfcf8;
}
.staff {
margin:0 auto 45px auto;
background:#fff;
border:1px solid #e8e2da;
border-radius:12px;
}
.staff_profile {
padding:28px 24px;
border-bottom:1px solid #e8e2da;
text-align:center;
}
.staff_avatar {
width:200px;
height:200px;
border-radius:50%;
overflow:hidden;
margin:0 auto 16px;
background:#e8e0d8;
}
.staff_avatar img {
width:100%;
height:100%;
object-fit:cover;
display:block;
}
.staff_role {
font-size:12px;
color:#B89456;
font-weight:600;
letter-spacing:0.08em;
margin-bottom:4px;
}
.staff_name {
font-size:20px;
font-weight:700;
color:#2a2318;
margin-bottom:14px;
}
.staff_exp {
font-size:14px;
font-weight:400;
color:#8a7f72;
}
.staff_skill_label {
font-size:11px;
color:#8a7f72;
margin-bottom:6px;
}
.staff_skill_tag {
display:inline-block;
font-size:12px;
color:#6b5f50;
background:#f3ede4;
border:1px solid #e0d6c8;
border-radius:20px;
padding:3px 12px;
margin-bottom:16px;
}
.staff_bio {
font-size:13px;
color:#5e5448;
line-height:1.85;
text-align:left;
}
.staff_interview {padding:24px 24px;}
.qa_item {
padding-bottom:20px;
margin-bottom:20px;
border-bottom:1px solid #ede7dc;
}
.qa_item:last-child {
padding-bottom:0;
margin-bottom:0;
border-bottom:none;
}
.qa_question {
font-size:13px;
font-weight:600;
color:#B89456;
line-height:150%;
margin-bottom:8px;
}
.qa_answer {
font-size:14px;
color:#3a3028;
line-height:180%;
}

@media screen and (min-width:769px) {
.staff {max-width:1180px;display:grid;grid-template-columns:400px 1fr;}
.staff_profile {
border-bottom:none;
border-right:1px solid #e8e2da;
padding:30px;
background:#faf7f2;
}
.staff_avatar {width:150px;height:150px;margin-bottom:18px;}
.staff_role {font-size:14px;}
.staff_name {font-size:21px;}
.staff_exp {font-size:16px;}
.staff_skill_label {font-size:14px;margin-bottom:4px;}
.staff_skill_tag {font-size:14px;margin-bottom:20px;}
.staff_bio {font-size:14px;text-align:justify;}
.staff_interview {padding:32px 36px;}
.qa_item {padding-bottom:30px;margin-bottom:30px;}
.qa_question {font-size:18px;margin-bottom:10px;}
.qa_answer {font-size:16px;}
}






/*---------- プロフィール ----------*/

.prf_bg{
margin:0;
padding:60px 30px;
background:#000;
}
.prf_box{margin:0 auto;padding:0;}
.prf_pict{margin:0;padding:15px 0 0 0;}
.prf_pict img{width:100%;}
.prf_txt{margin:0;padding:0;}
.prf_head{
margin:0;
padding:8px 0 30px 0;
font-size:90%;
font-weight:bold;
line-height:100%;
letter-spacing:3px;
text-indent:3px;
font-family:'Roboto Condensed', sans-serif;
}
.prf_head span{
padding:8px 20px;
color:#C5A059;
border:solid 1px #C5A059;
}
.prf_title{
margin:0;
padding:0 0 10px 0;
color:#fff;
font-size:180%;
font-weight:bold;
line-height:160%;
font-family: 'Shippori Mincho', serif;
}
.prf_memo{
margin:0;
padding:0;
color:#ccc;
}
.results_box{
margin:45px auto 0 auto;
padding:45px 0 0 0;
border-top:solid 1px #999;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.results{width:50%;}
.results img{width:100%;}
.results:nth-child(3) {order:4;}
.results:nth-child(4) {order:3;}
@media screen and (min-width:769px) {
.prf_bg{margin:0;padding:90px 0;}
.prf_box{
max-width:1180px;
width:100%;
margin:0 auto;
display:flex;
}
.prf_pict{width:460px;flex-shrink:0;padding:0;order:1;}
.prf_txt{flex:1;order:2;}
.prf_head{padding:40px 0 45px 0;font-size:14px;}
.prf_title{padding:0 0 20px 0;font-size:42px;line-height:140%;}
.results_box{
max-width:1180px;
width:100%;
margin:60px auto 0 auto;
padding:60px 0 0 0;
}
.results{width:25%;}
.results:nth-child(3),
.results:nth-child(4) {order: 0;}
}

.movie_box {
width:min(100%, 360px);
aspect-ratio:9 / 16;
overflow:hidden;
margin:0 auto;
border-radius:12px; /* 任意 */
}
.movie_box video {
width:100%;
height:100%;
object-fit:cover;
object-position:center center;
display:block;
}
@media screen and (max-width:767px) {
.movie_box {width:100%;aspect-ratio:1 / 1;}
.movie_box video {object-position:center center;}
}



/*---------- 見出し ----------*/

.subhead_eng{
margin:0;
padding:0;
font-size:90%;
font-weight:bold;
line-height:100%;
text-align:center;
letter-spacing:3px;
text-indent:3px;
color:#C5A059;
font-family:'Roboto Condensed', sans-serif;
}
.subhead_jpn{
margin:0;
padding:0;
font-size:90%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#C5A059;
}
.subhead{
margin:20px 0 30px 0;
padding:0;
font-size:180%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: 'Shippori Mincho', serif;
}
@media screen and (min-width:769px) {
.subhead_eng{font-size:16px;}
.subhead_jpn{font-size:16px;letter-spacing:3px;text-indent:3px;}
.subhead{margin:20px 0 60px 0;font-size:48px;}
}



/*---------- 働き方の問題 ----------*/

.problem_top{
margin:20px 0 0 0;
padding:0;
font-size:180%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: 'Shippori Mincho', serif;
}
.problem_txt{
margin:20px 30px 30px 30px;
padding:0;
font-size:100%;
line-height:180%;
}
.problem_check {
margin:0 30px 75px 30px;
padding:15px 20px 28px 30px;
text-align:left;
border:1px solid #eee;
border-radius:12px;
background:#f8f8f8;
}
.problem_box{margin:0;padding:0;}
.problem{margin:0;padding:0;}
.problem ul{margin:0;padding:0;list-style:none;}
.problem ul li{
margin:0;
padding:12px 0 0 28px;
font-size:110%;
font-weight:bold;
line-height:180%;
position:relative;
}
.problem ul li:before {
display:block;
font-family:"Font Awesome 5 Free";
font-weight: 900;
content:'\f058';
color:#999;
position:absolute;
left:0;
}
@media screen and (min-width:769px) {
.problem_top{font-size:48px;line-height:140%;}
.problem_txt{
margin:30px 0;
font-size:16px;
line-height:180%;
text-align:center;
letter-spacing:2px;
text-indent:2px;
}
.problem_check {
width:690px;
margin:0 auto 90px auto;
padding:30px 100px 45px 100px;
}
.problem_box{display:flex;flex-wrap:wrap;justify-content:space-between;}
.problem{width:50%;box-sizing:border-box;}
.problem ul li{font-size:18px;}
}



/*---------- 働き方の解決 ----------*/

.solution_bg{
margin:0 0 75px 0;
padding:75px 20px;
background:#fdfcf8;
}
.solution_box{margin:0 auto;padding:0;}
.solution{
margin:0 0 30px 0;
padding:30px;
background:#fff;
border-radius:8px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
}
.solution_title{
margin:0;
padding:0;
font-size:160%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#C5A059;
font-family: 'Shippori Mincho', serif;
}
.solution_pict{padding:20px 0 15px 0;text-align:center;}
.solution_pict img{width:60%;}
.solution ul{margin:0;padding:0;list-style:none;}
.solution ul li{
margin:0;
padding:5px 0 0 28px;
font-size:100%;
font-weight:bold;
line-height:180%;
position:relative;
}
.solution ul li:before {
display:block;
font-family:"Font Awesome 5 Free";
font-weight: 900;
content:'\f058';
color:#C5A059;
position:absolute;
left:0;
}
.solution_visual{
margin:0 auto;
padding:45px 20px;
background:#fff;
border-radius:8px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
}
.visual_title{
margin:0 0 30px 0;
padding:0;
font-size:160%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#C5A059;
font-family: 'Shippori Mincho', serif;
}
.visual_box{margin:0;padding:0;}
.visual{
margin:0 0 30px 0;
padding:20px 20px 25px 20px;
border:solid 1px #eee;
border-radius:8px;
}
.visual h3{
margin:0 0 30px 0;
padding:0 0 10px 0;
font-size:140%;
line-height:150%;
border-bottom:solid 2px #eee;
}
.visual h3 span{color:#C5A059;}
.visual figure {margin:0;}
.visual figure img{width:100%;display:block;height:auto;}
.visual_photo{margin:0;padding:0;}
.visual_photo figure{margin:0 0 20px 0;padding:0;}
.visual_photo figure img{width:100%;border-radius:8px;}
.visual_txt{
margin:0;
padding:10px 0 0 0;
font-size:100%;
line-height:180%;
text-align:center;
}
.solution_practice{
margin:0 auto;
padding:45px 20px;
background:#fff;
border-radius:8px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
}
.practice_title{
margin:0 0 30px 0;
padding:0;
font-size:160%;
font-weight:bold;
line-height:150%;
text-align:center;
color:#C5A059;
font-family: 'Shippori Mincho', serif;
}
.practice_photo{margin:0;padding:0;}
.practice_photo figure{margin:0 0 20px 0;padding:0;}
.practice_photo figure img{width:100%;border-radius:8px;}
.practice_txt{
margin:0;
padding:10px 0 0 0;
font-size:100%;
line-height:180%;
text-align:center;
}
@media screen and (min-width:769px) {
.solution_bg{margin:0 0 90px 0;padding:90px 0;}
.solution_box{
max-width:1220px;
width:96%;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.solution{
width:32%;
margin:0;
padding:30px;
box-sizing:border-box;
}
.solution_title{font-size:28px;}
.solution ul li{padding:10px 0 0 28px;font-size:18px;}
.solution_visual{
max-width:1220px;
width:96%;
margin:60px auto 0 auto;
padding:60px 45px;
box-sizing:border-box;
}
.visual_title{margin:0 0 45px 0;font-size:36px;}
.visual_box{display:flex;flex-wrap:wrap;justify-content:space-between;}
.visual{
width:49%;
margin:0;
padding:25px 30px 30px 30px;
box-sizing:border-box;
}
.visual h3{margin:0 0 20px 0;font-size:20px;}
.visual_photo{margin:30px 0 0 0;display:flex;flex-wrap:wrap;justify-content:space-between;}
.visual_photo figure{width:32%;margin:0;}
.visual_txt{margin:45px 0 0 0;padding:0;font-size:16px;letter-spacing:2px;text-indent:2px;}
.solution_practice{
max-width:1220px;
width:96%;
margin:60px auto 0 auto;
padding:60px 45px;
box-sizing:border-box;
}
.practice_title{margin:0 0 45px 0;font-size:36px;}
.practice_photo{width:96%;margin:30px auto 0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;}
.practice_photo figure{width:32%;margin:0;}
.practice_txt{margin:45px 0 0 0;padding:0;font-size:16px;letter-spacing:2px;text-indent:2px;}
}


/*---------- マニュアル ----------*/

.manual_bg{
margin:60px 0;
padding:60px 20px 75px 20px;
background:#fdfcf8;
}
.manual_pict{
margin:0 auto;
padding:0;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.manual_pict figure{width:49%;margin:0;padding:0 0 10px 0;}
.manual_pict figure img{width:100%;border-radius:8px;}
.manual_memo{
margin:0;
padding:10px 0 0 0;
font-size:100%;
line-height:180%;
}
.manual_list{
margin:20px auto 0 auto;
padding:15px 20px 20px 25px;
background:#fff;
border:1px solid #C5A059;
border-radius:12px;
}
.manual_item{margin:0;padding:0;}
.manual_list ul{margin:0;padding:0;list-style:none;}
.manual_list ul li{
margin:0;
padding:5px 0 0 28px;
font-size:100%;
font-weight:bold;
line-height:180%;
position:relative;
}
.manual_list ul li:before {
display:block;
font-family:"Font Awesome 5 Free";
font-weight: 900;
content:'\f058';
color:#C5A059;
position:absolute;
left:0;
}
@media screen and (min-width:769px) {
.manual_bg{margin90px 0;padding:75px 0 90px 0;}
.manual_pict{
width:1180px;margin:-15px auto 30px auto;}
.manual_pict figure{width:24%;padding:0;}
.manual_memo{padding:0;font-size:18px;text-align:center;}
.manual_list{
width:768px;
margin:30px auto 0 auto;
padding:25px 75px 30px 75px;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.manual_item{width:50%;}
.manual_list ul li{font-size:18px;}
}


/*---------- ベネフィット ----------*/

.benefits_box{
margin:0 30px 45px 30px;
padding:0;
}
.benefits_detail{margin:0;padding:0;}
.benefits_in{margin:0;padding:0;}
.benefits_number{
margin:0;
padding:10px 0 18px 0;
font-size:90%;
font-weight:bold;
line-height:100%;
letter-spacing:2px;
text-indent:2px;
font-family:'Roboto Condensed', sans-serif;
text-align:center;
}
.benefits_number span{
padding:8px 20px;
color:#fff;
background:#C5A059;
border-radius:4px;
}
.benefits_title{
margin:0 0 20px 0;
padding:0 0 10px 0;
font-size:160%;
font-weight:bold;
line-height:150%;
text-align:center;
border-bottom:solid 1px #C5A059;
font-family: 'Shippori Mincho', serif;
}
.benefits_txt{
margin:0;
padding:0;
font-size:100%;
line-height:180%;
color:#555;
}
.benefits_pict{margin:0;padding:20px 0 0 0;}
.benefits_pict img{
width:100%;
border-radius:8px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
}
@media screen and (min-width:769px) {
.benefits_box{
width:1080px;
margin:0 auto;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.benefits_detail{width:47%;display:flex;align-items:center;}
.benefits_number{font-size:14px;text-align:left;}
.benefits_title{margin:0 0 30px 0;font-size:28px;text-align:left;}
.benefits_txt{font-size:18px;}
.benefits_pict{width:47%;padding:0;}
.benefits_space{margin:60px auto;}
}



/*---------- キャリアパス ----------*/

.career_space{margin-top:75px;}
.career_bg{position:relative;}
.career_box{margin:0 20px;padding:0;position:relative;}
.step{
position:relative;
margin:45px 0 30px 0;
padding:30px 20px 20px 20px;
background:#fff;
border:1px solid #eee;
border-radius:12px;
box-shadow:0 4px 15px rgba(0,0,0,0.05);
z-index:1;
}
.step_badge{
position:absolute;
top:-20px;
left:50%;
transform:translateX(-50%);
width:40px;
height:40px;
background:#fff;
border:2px solid #C5A059;
border-radius:50%;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
z-index:2;
box-shadow:0 2px 5px rgba(0,0,0,0.1);
}
.step_badge span:first-child{font-size:8px;font-weight:bold;color:#C5A059;line-height:1;}
.step_badge span:last-child{font-size:14px;font-weight:bold;color:#C5A059;line-height:1;}
.step_head{
margin:0 0 20px 0;
padding:0 0 15px 0;
border-bottom:1px solid #eee;
}
.step_title{
font-size:160%;;
line-height:130%;
text-align:center;
color:#333;
margin:15px 0 5px 0;
font-family:'Shippori Mincho', serif;
}
.step_sub{
padding-top:5px;
font-size:15px;
font-weight:bold;
text-align:center;
color:#C5A059;
}
.step_list{list-style:none;margin:0;padding:0;}
.step_list li{
position:relative;
padding-left:28px;
margin-bottom:8px;
font-size:100%;
line-height:160%;
}
.step_list li::before{
font-family:"Font Awesome 5 Free";
font-weight:900;
content:"\f00c";
position:absolute;
top:2px;
left:0;
color:#C5A059;
}
.step_status{
margin:0;
padding:6px 12px;
font-size:12px;
text-align:center;
color:#8a6d3b;
border-radius:6px;
background:#fcf8f0;
}
.future_box{
display:grid;
grid-template-columns:1fr;
gap:15px;
margin-top:20px;
}
.future{
background:#fcfcfc;
border:1px solid #eee;
border-radius:8px;
padding:20px;
}
.future_label{
display:inline-block;
background:#C5A059;
color:#fff;
font-size:90%;
line-height:100%;
padding:4px 10px;
border-radius:20px;
}
.future_title{
margin:15px 0 5px 0;
font-size:140%;
font-weight:bold;
line-height:100%;
}
.future_desc{
font-size:100%;
color:#666;
margin-bottom:15px;
min-height:auto;
}
.future_list{
margin:0;
padding:0 0 0 5px;
list-style:none;
font-size:100%;
color:#555;
}
.future_list li{
position:relative;
padding-left:15px;
margin-bottom:5px;
}
.future_list li::before{
content:"•";
position:absolute;
left:0;
color:#C5A059;
}
@media screen and (min-width:769px){
.career_space{margin-top:90px;}
.career_box{width:94%;max-width:900px;margin:0 auto;}
.step{margin:0 0 40px 60px;padding:30px;}
.step_badge{top:30px;left:-90px;transform:none;width:60px;height:60px;}
.step_badge span:first-child{font-size:10px;}
.step_badge span:last-child{font-size:20px;}
.step_title{margin:20px 0 5px 0;font-size:36px;line-height:100%;text-align:left;}
.step_sub{padding-top:10px;font-size:18px;text-align:left;}
.step_list li{padding-left:25px;margin-bottom:10px;font-size:18px;}
.step_list li::before{top:4px;}
.step_status{
padding:10px 15px;
font-size:0.9rem;
margin:0;
text-align:left;
display:inline-block;
}
.future_box{grid-template-columns:repeat(2, 1fr);gap:20px;}
.future_label{font-size:0.8rem;}
.future_title{font-size:20px;}
.future_desc{margin:15px 0 10px 0;font-size:16px;}
.future_list{padding-left:10px;font-size:16px;}
}

.schedule_contents{margin:0 30px;}
.schedule_list {border-top:1px solid #e5e7eb;}
.schedule_item {
display:flex;
flex-direction:column;
gap:8px;
padding:20px 0;
border-bottom:1px solid #e5e7eb;
}
.time_col {font-weight:700;font-size:100%;color:#C5A059;font-family:'Roboto Condensed', sans-serif;}
.content_col h3 {margin:0 0 4px 0;font-size:130%;font-weight:700;}
.content_col p {margin:0;font-size:100%;color:#4b5563;}
.footer_note {
margin-top:30px;
padding:20px;
background-color:#f9fafb;
border-radius:8px;
}
.footer_note ul {margin:0;padding:0;list-style:none;}
.footer_note li {
font-size:90%;
color:#374151;
margin-bottom:8px;
display:flex;
}
.footer_note li:last-child {margin-bottom:0;}
.footer_note li span {margin-right:8px;}
@media screen and (min-width:769px){
.schedule_contents{width:760px;margin:-20px auto 0 auto;}
.schedule_item {padding:30px 0;flex-direction:row;gap:0;}
.time_col {width:160px;flex-shrink:0;font-size:18px;}
.content_col {flex:1;}
.content_col h3 {margin:0 0 6px 0;font-size:21px;}
.content_col p {font-size:16px;}
.footer_note {margin-top:40px;}
.footer_note li {font-size:14px;}
}





/*---------- 採用情報 ----------*/

.recruit_box {
margin:0 20px;
padding:0;
display:grid;
grid-template-columns:1fr;
gap:40px;
}
.recruit_map {order:2;}
.recruit_map img {border-radius:8px;margin-bottom:20px;}
.map_frame {width:100%;height:250px;}
.recruit_tbl {
width:100%;
border-collapse: collapse;
font-size:100%;
line-height:180%;
}
.recruit_tbl th, 
.recruit_tbl td {
width:100%;
padding:10px 0 15px 20px;
border-bottom: 1px solid #e5e5e5;
text-align:left;
display:block;
box-sizing:border-box;
}
.recruit_tbl th {
width:100%;
padding:10px 0 10px 20px;
color:#333;
font-weight:bold;
background-color:#f0f0f0;
}
.recruit_caption{
margin:0;
padding:5px 0 0 0;
font-size:80%;
line-height:160%;
color:#666;
letter-spacing:1px;
}
@media screen and (min-width: 900px) {
.recruit_box {grid-template-columns: 1fr 1.5fr;}
.recruit_map {order:0;}
.recruit_tbl th, 
.recruit_tbl td {display:table-cell;padding:20px;width:auto;}
.recruit_tbl th {width:30%;background-color:#fafafa;}
}



.flow_bg{
margin:75px 0 0 0;
padding:75px 20px;
background:#fdfcf8;
text-align:center;
}
.flow_box{
margin:40px auto;
display:flex;
flex-direction:column;
gap:40px;
position:relative;
}
.flow{
width:100%;
background:#fff;
padding:30px 20px 20px 20px;
border-radius:8px;
text-align:center;
border:1px solid #eee;
position:relative;
box-sizing:border-box;
box-shadow:0 3px 10px rgba(0,0,0,0.05);
}
.flow:not(:last-child)::after{
content:"▼";
position:absolute;
top:auto;
bottom:-35px;
left:50%;
right:auto;
transform:translateX(-50%);
color:#C5A059;
font-size:20px;
}
.flow_num{
display:inline-block;
background:#C5A059;
color:#fff;
width:40px;
height:40px;
line-height:40px;
border-radius:50%;
font-weight:bold;
font-family:'Shippori Mincho', serif;
}
.flow_title{
font-weight:bold;
font-size:140%;
margin-bottom:10px;
color:#333;
}
.flow_txt{
font-size:100%;
color:#666;
line-height:1.8;
}
@media screen and (min-width:768px){
.flow_box{
max-width:1400px;
width:94%; 
flex-direction:row;
justify-content:space-between;
align-items:flex-start;
gap:30px;
}
.flow{flex:1;width:auto;}
.flow:not(:last-child)::after{
content:"▶";
top:50%;
bottom:auto;
left:auto;
right:-25px;
transform:translateY(-50%);
}
.flow_title{font-size:24px;}
.flow_txt{font-size:16px;}
}







/*---------- エントリーフォーム ----------*/

.entry_title{
margin:30px 0;
font-size:180%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: 'Shippori Mincho', serif;
}
.entry_form{
margin:0 20px 60px 20px;
padding:10px 30px 20px 30px;
background:#fff;
box-shadow:0 10px 30px rgba(0,0,0,0.1);
border-radius:12px;
}
.entry_form table {
width:100%;
border-collapse:separate;
margin:0;
}
.entry_form table th {
font-size:100%;
line-height:180%;
padding:10px 0 5px 0;
text-align:left;
border-bottom:solid 1px #e5e5e5;
display:block;
}
.entry_form table td {
font-size:100%;
line-height:180%;
padding:10px 0 10px 0;
display:block;
}
.req {
margin:0;
padding:0;
float:right;
text-align:right;
}
.req span {
margin:0;
padding:1px 5px 2px 5px;
font-size:75%;
font-weight:normal;
line-height:100%;
color:#fff;
background:#c5a059;
border-radius:2px;
}
input[type="text"], textarea, select, input[type="tel"], input[type="email"], input[type="number"], input[type="password"] {
border:0;
padding:15px 10px;
font-size:100%;
border:solid 1px #eee;
appearance:none;
border-radius:3px;
box-shadow:inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
box-sizing:border-box;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, textarea:focus, input[type="number"]:focus {box-shadow:0 0 7px #999;}
input[type="text"], input[type="email"], textarea {width:100%;}
/* Chrome, Safari */ ::-webkit-input-placeholder {color:#999;}
/* Firefox */ ::-moz-placeholder {color:#999;}
/* Firefox 18以前 */ :-moz-placeholder {color:#999;}
/* IE */ :-ms-input-placeholder {color:#999;}
input[type="submit"], input[type="button"], button[type="submit"] {
border-radius:0;
appearance:button;
border:none;
box-sizing:border-box;
cursor:pointer;
transition:all .5s;
border-radius:50px;
color:#fff;
background:linear-gradient(135deg, #d4af66 0%, #b38e45 100%);
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration, button[type="submit"]::-webkit-search-decoration {
display:none;
}
input[type="submit"]::focus, input[type="button"]::focus, button[type="submit"]::focus {outline-offset:-2px;color:#fff;}
.send {margin:0;padding:15px 0 30px 0;text-align:center;}
.send a:link {color:#fff;text-decoration:none;}
.send a:visited {color:#fff;text-decoration:none;}
.send a:hover {color:#fff;text-decoration:none;}
.push {
width:90%;
margin:0 auto;
padding:25px 0;
font-size:125%;
font-weight:bold;
display:block;
transition:0.3s ease-in-out;
}
.push:hover {
filter:brightness(115%);
transition:0.3s ease-in-out;
}
@media screen and (min-width:769px){
.entry_title{margin:45px 0 30px 0;font-size:36px;}
.entry_form{width:640px;margin:0 auto 90px auto;padding:30px 90px 60px 90px;}
.entry_form table th {font-size:16px;padding:10px 15px 10px 0;display:table-cell;}
.entry_form table td {font-size:16px;line-height:180%;padding:10px 0 10px 10px;display:table-cell;}
.req span {font-size:12px;}
.send {margin:0;padding:45px 0 0 0;text-align:center;}
.push {width:420px;font-size:21px;}
}

/*------------------------------ フッター ------------------------------*/

#footer{
margin:0;
padding:30px 0;
font-size:80%;
line-height:150%;
text-align:center;
color:#fff;
background:#2e2e2e;
}
@media screen and (min-width:769px){
#footer{
margin:0;
padding:30px 0;
font-size:12px;
}
}

/*---------- 文字装飾 ----------*/

.bold{font-weight:bold;}
.ul{text-decoration:underline;}
.red {font-weight:bold;color:#c30d23;}

/*---------- 文字位置 ----------*/

.center{text-align:center;}
.right{text-align:right;}

.order_01{order:1;}
.order_02{order:2;}