@charset "utf-8";

/**********リセット**********/
*{margin:0; padding:0; box-sizing:border-box;}

ul li,
ol li{list-style:none;}

input[type="submit"],
input[type="button"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  box-sizing: border-box;
  appearance: button;
  cursor: pointer;
  outline: none;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
_::-webkit-full-page-media, _:future, :root select{
-webkit-appearance:none; -moz-appearance:none; appearance:none;
}

/**********共通**********/
:root{
--main-color:#336699;
--sub-color:#ddeeff;
--space-40:4.0rem;
--space-60:6.0rem;
--space-80:8.0rem;
--space-100:10.0rem;
--space-120:12.0rem;
--space-blank:20px;
}

html{font-size:62.5%;}
body{font-family:'Noto Sans JP', sans-serif; font-smoothing:antialiased; font-size:1.8rem; color:#333; line-height:1.5;}
img{max-width:100%; height:auto; vertical-align:top;}
a,a:hover{color:var(--main-color); text-decoration:none; cursor:pointer;}
a:hover{opacity:0.8; transition:0.2s;}

input[type="text"],input[type="email"],input[type="password"],input[type="tel"],select,textarea{
border-radius:2px; border:1px #ddd solid; width:100%; padding:10px;
font-family:inherit; font-size:inherit;}
input[type="submit"],input[type="button"]{font-family:inherit; font-size:inherit; color:var(--main-color); background:#fff;}

.inner_l{max-width:1500px; margin:auto;}
.inner_m{max-width:1200px; margin:auto;}
.inner_s{max-width:1000px; margin:auto;}
.tl{text-align:left;}
.tc{text-align:center;}
.tr{text-align:right;}
.fl{float:left;}
.fr{float:right;}
.mb40{margin-bottom:var(--space-40) !important;}
.mb60{margin-bottom:var(--space-60) !important;}
.mb80{margin-bottom:var(--space-80) !important;}
.mb100{margin-bottom:var(--space-100) !important;}
.mb120{margin-bottom:var(--space-120) !important;}
.button_column{display:flex; gap:var(--space-40); justify-content:center; flex-wrap:wrap;}
.button_column .block{width:100%; max-width:360px;}
.button{display:block; border:1px var(--main-color) solid; border-radius:40px; text-align:center; width:100%; max-width:360px; padding:20px; margin:auto;}

/**********ヘッダ**********/
header{background:#fff;}
.header_column{display:flex; align-items:center; justify-content:space-between; height:80px;}
.header_column .logo{}
.header_column .logo h1{line-height:1;}
.header_column .logo img{width:340px; height:auto;}
.header_column .menu{}
.header_column .menu .h_menu{display:flex;}
.header_column .menu .h_menu li a{display:flex; align-items:center; justify-content:center; color:#333; width:140px; height:80px;}
.header_column .menu .h_menu li.recruit a{background:var(--sub-color); color:var(--main-color);}
.header_column .menu .h_menu il.recruit a::before{font-family:"Font Awesome 6 Free"; font-weight:700; content:"\f508"; color:var(--main-color); margin-right:5px;}
.header_column .menu .h_menu li.contact a{background:var(--main-color); color:#fff; width:180px;}
.header_column .menu .h_menu li.contact a::before{font-family:"Font Awesome 6 Free"; font-weight:700; content:"\f0e0"; color:#fff; margin-right:5px;}

/**********メイン**********/
main{margin:0 auto; margin-bottom:var(--space-80);}
article{}

.fadeinDown{opacity:0; transform:translateY(-40px); animation:fadeinDown 2s ease-out forwards;}
.delay{animation-delay:1s;}

@keyframes fadeinDown{
  0%{opacity:0; transform:translateY(-40px);}
  100%{opacity:1; transform:translateY(0);}
}

/*トップページ*/
section{margin:var(--space-120) 0;}
section h2.type1{font-size:clamp(4rem, 4.2vw, 4.8rem); font-weight:500; text-align:center; letter-spacing:.1em; position:relative; margin-top:220px; margin-bottom:var(--space-60);}
section h2.type1 span{display:block; font-size:1.8rem; color:var(--main-color); margin-top:18px;}
section h2.type1::before{content:""; width:3px; height:120px; background:var(--main-color); position:absolute; top:-160px; left:50%; transform:translateX(-50%);}
section h2.type2{font-size:clamp(4rem, 4.2vw, 4.8rem); font-weight:500; position:relative; margin-bottom:var(--space-60);}
section h2.type2 span{display:inline-block; margin-left:40px; font-size:1.8rem; color:var(--main-color);}
section h2.type2::before,
section h2.type2::after{content:""; height:3px; position:absolute; bottom:-3.0rem; left:0;}
section h2.type2::before{width:100%; background:var(--sub-color);}
section h2.type2::after{width:50%; background:var(--main-color);}
section h2.type3{font-size:clamp(4rem, 4.2vw, 4.8rem); font-weight:500; text-align:center; margin-bottom:var(--space-60);}
section h2.type3 span{display:block; font-size:1.8rem; margin-top:18px;}
section .read_txt,
.post .read_txt{font-size:2.0rem; line-height:2; text-align:center; margin-bottom:var(--space-60);}
section h3{font-size:3.0rem; font-weight:500; text-align:center; margin-bottom:var(--space-40);}

#topimage{margin-top:0;}
.topimage_content{position:relative;}
.topimage_content::after{content:""; position:absolute; bottom:0; right:0; width:420px; max-width:100%; height:300px; background:rgba(0,50,100,.6); clip-path:polygon(100% 100%, 100% 0, 0 100%); z-index:1;}
.topimage_content .pic{position:relative;}
.topimage_content .pic::after{content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,50,100,.3);}
.topimage_content .ccopy{color:#fff; text-align:center; display:flex; flex-direction:column; gap:var(--space-40); position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:100%; padding:20px;}
.topimage_content .ccopy .eng{font-size:clamp(2rem, 2.4vw, 3rem); font-weight:700; letter-spacing:.1em;}
.topimage_content .ccopy .txt1{font-size:clamp(3.3rem, 4vw, 5.5rem); font-weight:700; letter-spacing:.1em;}
.topimage_content .ccopy .txt2{font-size:1.8rem; font-weight:500;}
.topimage_content .more{position:absolute; bottom:40px; right:80px; color:#fff; z-index:2; animation:tsuntsun 1s ease-in-out infinite; animation-delay:3s;}
.topimage_content .more::after{font-family:"Font Awesome 6 Free"; font-weight:700; content:"\f105"; margin-left:5px;}
@keyframes tsuntsun{
  0%, 100%{transform:translateX(0);}
  50%{transform:translateX(15px);}
}

#works{}
.top_jigyo_column{display:flex; gap:30px; justify-content:center;}
.top_jigyo_column .block{max-width:400px; height:auto;}
.top_jigyo_column .block a{display:block; position:relative;}
.top_jigyo_column .block a:hover{opacity:1;}
.top_jigyo_column .block a .menu{background:rgba(0,0,0,.3); width:100%; height:130px; position:absolute; bottom:0; left:0; display:flex; flex-direction:column; gap:20px; align-items:center; justify-content:center; transition:height 0.3s; padding:var(--space-40);}
.top_jigyo_column .block a:hover .menu,
.top_jigyo_column .block a:focus-visible .menu{height:100%;}
.top_jigyo_column .block a .menu .title{font-size:3.0rem; color:#fff;}
.top_jigyo_column .block a .menu .desc{font-size:1.8rem; color:#fff; line-height:2; display:none;}
.top_jigyo_column .block a:hover .menu .desc,
.top_jigyo_column .block a:focus-visible .menu .desc{display:block;}
.top_jigyo_column .block.jigyo1 a .menu{background:rgba(200,150,50,.8);}
.top_jigyo_column .block.jigyo2 a .menu{background:rgba(180,40,40,.8);}
.top_jigyo_column .block.jigyo3 a .menu{background:rgba(100,150,50,.8);}

#about{}
.top_about_column{display:flex; gap:var(--space-60);}
.top_about_column .pic{width:calc(100% - 520px); text-align:center;}
.top_about_column .pic img{box-shadow:60px 60px 0 #f7f7f7;}
.top_about_column .txt{flex:1; width:460px; text-align:center;}
.insta{background:#f7f7f7; padding:var(--space-60) 20px;}
.gallery{display:flex; gap:10px; flex-wrap:wrap; justify-content:center;}
.gallery .block{text-align:center;}

#info{}
.info_list{margin-bottom:var(--space-40);}
.info_list li{padding:var(--space-40); border-bottom:1px #ccc solid;}
.info_list li .date{display:inline-block; font-size:1.6rem; margin-right:3.0rem;}
.info_list li .cat{display:inline-block; font-size:1.4rem; color:#fff; background:#f7f7f7; padding:10px 20px; margin-bottom:3.0rem;}
.info_list li .cat.news{background:#ddeeff; color:#003366;}
.info_list li .title{display:block; font-weight:500;}

#recruit{}
#recruit h2,
#recruit h3{color:#fff;}
#recruit .recruitment{background-image:url('images/top_recruitment_back.jpg'); background-attachment:fixed; background-size:cover; background-position:center; padding:var(--space-80); position:relative; z-index:1;}
#recruit .recruitment::after{content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,50,100,.6);}
#recruit .entry{background-image:url('images/top_entry_back.jpg'); padding:var(--space-60); position:relative; z-index:1;}
#recruit .entry::after{content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,30,60,.8);}
#recruit .recruit_content{color:#fff; position:relative; z-index:2;}
#recruit .recruit_content .button_recruitment{display:block; background:rgba(255,255,255,.8); font-weight:500; text-align:center; width:100%; max-width:360px; padding:var(--space-60); margin:auto; position:relative;}
#recruit .recruit_content .button_recruitment::before{content:""; position:absolute; top:0; left:0; width:40px; height:100%; clip-path:polygon(0 0, 100% 50%, 0 100%); background:rgba(0,50,100,.3);}
#recruit .recruit_content .button{color:#fff; border-color:#fff;}

/*個別ページ*/
.container_title{}
.container_title h1{height:280px; display:flex; align-items:center; justify-content:center; padding:20px; margin-bottom:var(--space-80); position:relative;}
.container_title h1::after{content:""; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,50,100,.4); z-index:1;}
.container_title h1 span{font-family:'Noto Serif JP', serif; font-size:clamp(3.6rem, 4vw, 4.6rem); font-weight:500; color:#fff; letter-spacing:.1em; z-index:2;}
.container_title h1.common{background:url(images/pagetitle_back_common.jpg) no-repeat center;}
.container_title h1.works{background:url(images/pagetitle_back_works.jpg) no-repeat center;}
.container_title h1.about{background:url(images/pagetitle_back_about.jpg) no-repeat center;}
.container_title h1.facility{background:url(images/pagetitle_back_facility.jpg) no-repeat center;}
.container_title h1.strengths{background:url(images/pagetitle_back_strengths.jpg) no-repeat center;}
.container_title h1.recruitment{background:url(images/pagetitle_back_recruitment.jpg) no-repeat center;}

.container_content{}
.container_content h2.common{font-size:clamp(3rem, 3.2vw, 3.6rem); font-weight:500; text-align:center; margin-bottom:var(--space-80); position:relative; display:flex; gap:20px; align-items:center;}
.container_content h2.common::before,
.container_content h2.common::after{flex:1; content:""; width:auto; height:10px; background:var(--sub-color); border-radius:10px;}
.container_content h3.common{font-size:2.8rem; font-weight:500; border-bottom:3px #f7f7f7 solid; padding-bottom:20px; margin-bottom:var(--space-40); position:relative;}
.container_content h3.common::after{content:""; position:absolute; bottom:-3px; left:0; width:40px; height:3px; background:var(--main-color);}

.post{}
.post p{margin-bottom:var(--space-40);}
.post table{width:100%; border-collapse:collapse; margin-bottom:var(--space-80);}
.post table th{width:300px; font-weight:500;}
.post table th,
.post table td{}
.post *:last-child{margin-bottom:0 !important;}

.works_column{display:flex; gap:var(--space-40); margin-bottom:var(--space-80);}
.works_column .txt{flex:1;}
.works_column .pic{text-align:center;}
.works_list{display:flex; gap:20px; align-items:flex-start;flex-wrap:wrap;}
.works_list li{width:calc((100% - 20px)/2); background:#f7f7f7; padding:10px;}
.works_list li::before{content:"●"; color:var(--main-color); margin-right:.5em;}

.about_column{display:flex; gap:var(--space-40); margin-bottom:var(--space-80);}
.about_column .pic{width: calc(100% - 500px); text-align:center;}
.about_column .company{flex:1; width:460px; text-align:center;}
.about_column .company .logo{margin-bottom:20px;}
.about_column .company .logo img{width:420px; height:auto;}
.about_column .company .address{margin-bottom:10px;}
.about_column .company .tel{margin-bottom:var(--space-40);}
.googlemap{margin-bottom:var(--space-80);}
.about_outline_table tr{border-bottom:1px #ccc solid;}
.about_outline_table th{text-align:left;}
.about_outline_table th,
.about_outline_table td{padding:var(--space-40);}
.about_history_table th{border-right:1px #ccc solid; position:relative;}
.about_history_table th::after{content:""; position:absolute; top:50%; right:-8px; transform:translateY(-50%); display:block; width:15px; height:15px; border-radius:50%; background:var(--main-color);}
.about_history_table th .year{font-family:'Noto Serif JP', serif; font-size:3.0rem;}
.about_history_table th .year span{font-size:1.6rem;}
.about_history_table th .month{}
.about_history_table th,
.about_history_table td{padding:var(--space-40);}
.work_history{}
.work_history .block{border:1px #ccc solid; border-radius:10px; padding:var(--space-40); margin-bottom:var(--space-40);}
.work_history .block h3{font-weight:500; font-size:3.0rem; border-bottom:1px #ccc solid; padding-bottom:20px; margin-bottom:20px;}
.work_history .block ul{padding:20px;}
.work_history .block ul li{list-style:disc; margin-bottom:5px;}

.contact_content{text-align:center; background:var(--sub-color); padding:var(--space-40); max-width:800px; margin:auto; margin-bottom:var(--space-80);}
.contact_content .tel{font-family:'Noto Serif JP', serif; font-size:clamp(3.0rem, 4vw, 4.8rem); font-weight:700; color:var(--main-color); margin-bottom:var(--space-40);}
.contact_content .tel span{font-size:1.8rem; font-weight:500;}
.contact_content .name{font-family:'Noto Serif JP', serif; font-size:3.6rem; font-weight:700; margin-bottom:20px;}
.contact_content .time{}
.contact_table th,
.contact_table td{padding:var(--space-40); border:1px #ccc solid;}
.contact_table th{background:#f7f7f7;}

.facility_content h3{font-size:2.4rem; font-weight:500; margin-bottom:var(--space-40);}
.facility_content h3::before{content:"■"; color:#ccc; margin-right:.5em;}
.facility_content h3.tohoku::before{color:#3399cc;}
.facility_content h3.chubu::before{color:#99cc00;}
.facility_content h3.kanto::before{color:#339933;}
.facility_content h3.chugoku::before{color:#ff6633;}
.facility_table th,
.facility_table td{padding:20px; border:1px #ccc solid;}

.strengths_title{text-align:center; margin-bottom:var(--space-40);}
.strengths_title span{font-family:'Noto Serif JP', serif; font-size:4.2rem; font-weight:700; border-bottom:3px var(--main-color) solid; border-radius:2px; padding-bottom:20px;}
.case_list{display:flex; gap:20px; flex-wrap:wrap; background:var(--sub-color); padding:var(--space-40); margin-bottom:var(--space-80);}
.case_list li{text-align:center; width:calc((100% - 20px)/2); background:#fff; padding:20px;}
.cap_list{display:flex; gap:var(--space-40); flex-wrap:wrap; justify-content:space-between; padding:var(--space-40); margin-bottom:var(--space-80);}
.cap_list li{width:calc((100% - var(--space-40))/2); position:relative;}
.cap_list li span{position:absolute; right:0;}
.cap_list li span::before{content:""; display:block; width:100px; height:1px; background:#ccc; position:absolute; top:50%; transform:translateY(-50%); right:3em;}
.safety_list{border:1px #ccc solid; padding:var(--space-40);}
.safety_list li{font-size:2.0rem; font-weight:500; position:relative; padding-left:1.5em; margin-bottom:20px;}
.safety_list li::before{content:"●"; color:var(--main-color); position:absolute; left:0;}

.recruitment_title{text-align:center; border-bottom:3px var(--main-color) solid; border-radius:2px; padding-bottom:20px; margin-bottom:var(--space-40);}
.recruitment_title span{font-family:'Noto Serif JP', serif; font-size:4.2rem; font-weight:700;}
.recruitment_title span span{display:block; font-size:2.2rem;}
.recruitment_column{display:flex; gap:40px; padding:var(--space-40); margin-bottom:var(--space-80);}
.recruitment_column .txt .title{font-size:3.6rem; font-weight:500; margin-bottom:var(--space-40);}
.recruitment_column .txt .title .marker{background:linear-gradient(transparent 60%, var(--sub-color) 60%);}
.recruitment_column .pic{text-align:center;}
.recruitment_column .pic img{border-radius:50%; box-shadow:30px 30px 0 #f7f7f7;}
.attempt_column{display:flex; gap:40px; justify-content:center; margin-bottom:var(--space-80);}
.attempt_column .block{background:#f7f7f7; padding:var(--space-40); flex:1;}
.attempt_column .block .ico{font-size:8.0rem; color:var(--main-color); text-align:center; margin-bottom:10px;}
.attempt_column .block .en{font-size:3.0rem; font-weight:700; color:var(--main-color); text-align:center; margin-bottom:0;}
.attempt_column .block .ja{font-size:1.6rem; font-weight:700; color:var(--main-color); text-align:center; margin-bottom:20px;}
.attempt_column .block .txt{font-size:1.6rem; line-height:2;}
.message_content{border:1px #ccc solid; border-radius:20px; padding:var(--space-40); margin-bottom:var(--space-80);}
.message_title{font-family:'Noto Serif JP', serif; font-size:4.2rem; font-weight:700; border-bottom:1px #ccc solid; padding-bottom:20px; margin-bottom:var(--space-40);}
.message_selif{font-family:'Noto Serif JP', serif; font-size:3.6rem; font-weight:700; text-align:center; margin-bottom:var(--space-40);}
.sign{text-align:right;}
.sign p{margin-bottom:0;}
.recruitment_doc{border:1px #ccc solid; padding:var(--space-40); margin-bottom:var(--space-80);}
.recruitment_doc_column{display:flex; gap:40px;}
.recruitment_doc_column .pic{text-align:center;}
.recruitment_doc_column .txt{flex:1;}
.recruitment_doc_column table tr{border-bottom:1px #ccc solid;}
.recruitment_doc_column table th{font-weight:500; width:150px;}
.recruitment_doc_column table th,
.recruitment_doc_column table td{font-size:1.6rem; padding:15px;}
.voice_column{display:flex; gap:40px; margin-bottom:var(--space-80);}
.voice_column .txt{flex:1; line-height:2;}
.voice_column .txt .sign{display:flex; gap:1em; align-items:center; justify-content:flex-end;}
.voice_column .txt .sign::before{content:""; display:block; width:180px; height:1px; background:#ccc;}
.voice_column .pic{text-align:center;}
.voice_column .pic img{border-radius:50%;}

/*記事ページ*/
.breadcrumbs{font-size:1.6rem; margin:10px auto;}
.pagenavi{clear:both; font-size:1.6rem; text-align:center;}
.pagenavi .prev{float:left;}
.pagenavi .prev::before{font-family:"Font Awesome 6 Free"; font-weight:700; content:"\f104"; color:var(--main-color); margin-right:5px;}
.pagenavi .next{float:right;}
.pagenavi .next::after{font-family:"Font Awesome 6 Free"; font-weight:700; content:"\f105"; color:var(--main-color); margin-left:5px;}
.pagenavi .to_list{display:inline-block; padding:10px; border:1px var(--main-color) solid; color:var(--main-color);}
.wp-pagenavi a,
.wp-pagenavi span{display:inline-block; font-size:1.6rem;}
.single_title{font-size:2.0rem; font-weight:500; margin-bottom:var(--space-40);}
.single_date{font-size:1.6rem; text-align:right;}

/*その他*/
.required{display:inline-block; background:#ffcccc; color:#fff; font-size:1.2rem; font-weight:normal; border-radius:2px; padding:4px 8px; margin-left:10px;}
.strong{font-weight:500;}
.gmail{font-size:1.6rem; line-height:2;}
.recaptcha_txt{font-size:1.4rem;}
.grecaptcha-badge{visibility:hidden;}
.wpcf7-spinner{display:block !important;}

/**********フッタ**********/
footer{border-top:1px #ccc solid; padding-top:var(--space-80);}
.footer_column{display:flex; gap:var(--space-40); justify-content:space-between;}
.footer_column .company{flex:1; text-align:center;}
.footer_column .company .logo{margin-bottom:20px;}
.footer_column .company .address,
.footer_column .company .tel{font-size:1.6rem; margin-bottom:5px;}
.footer_column .company .address span,
.footer_column .company .tel span{white-space:nowrap;}
.footer_column .menu{}
.footer_menu_column{display:flex; gap:80px; justify-content:center; flex-wrap:wrap; margin-bottom:var(--space-80);}
.footer_menu_column .block .title{display:block; font-weight:500; margin-bottom:20px;}
.footer_menu_column .block ul li{margin-bottom:10px;}
.footer_menu_column .block ul li a{font-size:1.4rem;}
.copyright{font-size:1.4rem; text-align:center; padding:var(--space-blank);}

#pagetop{position:fixed; right:20px; bottom:20px; background:rgba(239,239,239,.8); border-radius:50%; width:80px; height:80px; display:none;}
#pagetop::before{font-family:"Font Awesome 6 Free"; font-weight:700; font-size:40px; content:"\f077"; color:var(--main-color); position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);}

/**********レスポンシブ**********/
br.sp{display:none;}
.sp_menu_button{display:none;}

@media(max-width:1500px){
.inner_l,
.inner_m,
.inner_s{padding:0 var(--space-blank);}
}/*1500*/

@media(max-width:1200px){
.top_jigyo_column{flex-direction:column;}
.top_jigyo_column .bock{margin:auto;}
.top_about_column{flex-direction:column;}
.top_about_column .pic,
.top_about_column .txt{width:auto;}
.button_column{flex-direction:column;}
.footer_column{flex-direction:column;}
.works_column{flex-direction:column;}
.about_column{flex-direction:column;}
.about_column .pic,
.about_column .company{width:auto;}
.recruitment_column{flex-direction:column;}
.attempt_column{flex-direction:column;}
.voice_column{flex-direction:column;}
.recruitment_doc_column{flex-direction:column;}
.recruitment_doc_column .pic{order:2;}
.recruitment_doc_column .txt{order:1;}
}

@media(max-width:1000px){
/*sp_menu*/
.sp_menu_button{position:fixed; top:15px; right:20px; display:flex; justify-content:center; align-items:center; width:50px; height:50px; background:var(--main-color); border:0; cursor:pointer; z-index:4;}
.sp_menu_button::after{font-family:"Font Awesome 6 Free"; font-weight:700; font-size:30px; content:"\f0c9"; color:#fff;}
.sp_menu_button.open::after{content:"\f00d";}
.sp_menu{position:fixed; top:0; left:0; padding-top:80px; width:100%; z-index:3; background:#fff;}
.header_column .menu .h_menu{flex-direction:column;}
.header_column .menu .h_menu li{border-bottom:1px var(--main-color) solid;}
.header_column .menu .h_menu li a,
.header_column .menu .h_menu li.recruit a,
.header_column .menu .h_menu li.contact a{display:block; padding:20px; width:100%; height:auto;}
/*/sp_menu*/

.header_column .logo{max-width:calc(100% - 60px);}
.topimage_content .pic img{height:calc(100vh - 80px); object-fit:cover;}
.topimage_content .ccopy{top:30%;}
.topimage_content .ccopy .txt2{display:none;}
.top_about_column .pic img,
.recruitment_column .pic img{box-shadow:none;}
.gallery .block{width:calc((100% - 10px)/2);}
section h2.type2{text-align:center;}
section h2.type2 span{display:block; margin-left:0;}
.post table th,
.post table td{display:block; width:100%;}
.about_outline_table tr{border:0;}
.about_outline_table th{background:#f5f5f5;}
.about_history_table th{background:#f5f5f5; border:0;}
.about_history_table th::after{content:none;}
.facility_table th{background:#f5f5f5; border-bottom:0;}
.facility_table tr:not(:last-child) td{border-bottom:0;}
.recruitment_doc_column table tr{border:0;}
.recruitment_doc_column table th{background:#f5f5f5;}
.contact_table tr th,
.contact_table tr:not(:last-child) td{border-bottom:0;}
.works_list,
.case_list,
.cap_list{flex-direction:column;}
.works_list li,
.case_list li,
.cap_list li{width:100%;}
.cap_list li span::before{width:10px;}
.footer_menu_column{gap:40px;}
.footer_menu_column .block{width:calc((100% - 40px)/2); text-align:center;}
}/*1000*/

@media(max-width:850px){}/*850*/
@media(max-width:600px){}/*600*/

@media(max-width:480px){
:root {
  --space-40:calc(4.0rem * 0.8);
  --space-60:calc(6.0rem * 0.8);
  --space-80:calc(8.0rem * 0.8);
  --space-100:calc(10.0rem * 0.8);
  --space-120:calc(12.0rem * 0.8);
  --space-blank:10px;

}
html{font-size:55%;}
br.sp{display:block;}
.sp_menu_button{right:10px;}
#recruit .recruitment{background-attachment:scroll;}
}
/*480*/

@media(max-width:390px){}/*390*/