html {scroll-padding-top:150px;}
body {
	margin: 0;
	padding: 0;
	font-family: 'Zen Kaku Gothic New', "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size:100%;
	line-height:180%;
	color: #222;
    overflow-x: hidden;
    background:#EFEFEF;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
    list-style:none;
	vertical-align: baseline;
    -webkit-appearance: none;
}
iframe { border: none;}
*, *: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;
    backface-visibility: hidden;
}
div, p, ul, ul li, h1, h2, h3, h4, h5, dl, dt, dd { box-sizing:border-box;}
img { border: none; vertical-align:bottom;}

a:link {color:#06F; outline:none; }
a:visited {color:#06F;}
a:hover {color: #333;}

#wrapper { position: relative;}
i.material-icons { vertical-align: middle;}
.pc {display:block;}
.pctb {display:block;}
.tb {display:none;}
.tabp {display:none;}
.sp {display:none;}
.inner { margin: auto; width: 90%; max-width:920px;}
@media only screen and (min-width:768px){
    a:hover img { opacity: 0.7; filter: alpha(opacity=70);}
}
@media only screen and (max-width:768px){
	body { min-width:100%; font-size:100%;}
	#header { width:100%;}
	#content{ width:100%;}
	#footer { width:100%;}
	#wrapper {}
	#base { width:100%;}
    .pc {display:none !important;}
    .pctb {display:block;}
    .tb {display:none;}
    .tbsp {display:none;}
    .sp {display:none !important;}
}
@media only screen and (max-width:468px){
    .pc {display:none !important;}
    .pctb {display:none !important;}
    .tb {display:none !important;}
    .tbsp {display:block !important;}
    .sp {display:block !important;}
    #sp_fix { z-index: 9;}
}




/*=============================================
  HEADER
=============================================*/
#header { position: fixed; top: 0; left: 0; width: 100%; z-index: 999999;}
#header .inner {
    position: relative; z-index: 999999;
    display: flex; justify-content: space-between;
    padding: 40px 0;
    width: 94% !important; max-width: 1670px;
}
#header h1 { width:22%; max-width: 380px;}
#header h1 img { width: 100%; height: auto;}
#header .h_nav {
    padding-right: 70px;
    display: flex; gap:20px;
}
#header .btn a {
    display: block;
    padding: 0 50px;
    color: #fff;
    font-size: clamp(100%, 2vw, 150%);
    font-weight: 700;
    line-height: 70px;
    text-align: center;
    text-decoration: none;
    border: 2px solid #fff;
    border-radius: 100px;
}
#header .b_search { max-width: 300px;}
#header .b_yoyaku { max-width: 425px;}
#header .b_search a { background: radial-gradient(#76DAFF 0, #3829B1 100%);}
#header .b_yoyaku a { background: radial-gradient(#FFB610 0, #ED5C00 100%);}
#header .nav_btn {
    display: block;
    cursor: pointer;
    position: absolute; top:40px; right:20px; z-index: 999999;
    width: 70px; height: 70px;
    background: #fff;
    border: 1px solid #707070;
    border-radius: 10px;
}
#header .nav_btn:hover span { opacity: 0.7;}
#header .nav_btn span {
    display: inline-block;
    position: absolute; left:0; right: 0; margin:auto;
    width:40px; height: 3px;
    background: #707070;
    border-radius: 3px;
    transition: all .3s;
}
#header .nav_btn span:nth-of-type(1) {top:18px;}
#header .nav_btn span:nth-of-type(2) {top:34px;}
#header .nav_btn span:nth-of-type(3) {top:50px;}
#header .nav_btn.active { border: 3px solid #fff;}
#header .nav_btn.active span:nth-of-type(1) { top:34px; transform:rotate(-45deg);}
#header .nav_btn.active span:nth-of-type(2) { opacity: 0;}
#header .nav_btn.active span:nth-of-type(3) { top:34px; transform:rotate(45deg); }
#header .nav-container {
    display: none;
    position: absolute; top: 0; left: 0; z-index:9;
    width: 100%; 
    background: #fff;
    overflow: hidden;
    z-index: 9999 !important;
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.15);
}
#header .nav-list {
    display: flex; flex-wrap: wrap; flex-direction: row; gap:20px;
    padding: 160px 50px 50px;
}
#header .nav-list li { width: calc(25% - 15px); border-bottom: 1px solid #999;}
#header .nav-list li b a {
    display: block;
    padding:5px 5px 10px 25px;
    font-size: 112.5%;
    color: #005288;
    text-decoration: none;
    line-height:150%;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/arrow_g.webp") no-repeat left center;
    background-size: 20px auto;
}    
#header .sp_btn .btn { max-width: 100%; margin-bottom: 10px;}
@media only screen and (min-width:769px){
    #header .btn a:hover { opacity: 0.7;}
}
@media only screen and (max-width:868px){
    #header .inner { padding:30px 0;}
    #header h1 { width:220px;}
    #header .h_nav { display: none;}
    #header .nav_btn {
        top:25px;
        width: 47px; height: 47px;
        border: 3px solid #005288;
        border-radius: 5px;
    }
    #header .nav_btn span {
        display: inline-block;
        position: absolute; left:0; right: 0; margin:auto;
        width:30px; height: 3px;
        background: #005288;
        border-radius: 3px;
        transition: all .3s;
    }
    #header .nav_btn span:nth-of-type(1) {top:12px;}
    #header .nav_btn span:nth-of-type(2) {top:20px;}
    #header .nav_btn span:nth-of-type(3) {top:28px;}
    #header .nav_btn.active { border: 3px solid #fff;}
    #header .nav_btn.active span:nth-of-type(1) { top:20px; transform:rotate(-45deg);}
    #header .nav_btn.active span:nth-of-type(2) { opacity: 0;}
    #header .nav_btn.active span:nth-of-type(3) { top:20px; transform:rotate(45deg); }
    #header .nav-list { padding-top: 100px; gap: 10px 20px;}
    #header .nav-list li { width: calc(50% -  10px);}
    #header .nav-list li:last-child {
        margin-top: 40px;
        width: 100%;
        border-bottom:none;
    }
    #header .btn a { padding: 0 30px; line-height:50px;}

}
@media only screen and (max-width:468px){
    #header .nav-container {
        height: 100vh;
        overflow: scroll !important;
    }
    #header .nav-list {
        flex-direction: column; gap:0;
        padding:90px 20px 50px;
    }
    #header .nav-list li { width:100%; border-bottom: none;}
    #header .nav-list li b a { padding:5px 0 5px 25px; font-size: 100%;}
    #header .nav-list li:last-child { margin-top: 10px;}
    #header .btn a { padding: 0 30px; line-height: 40px;}
}



/*=============================================
  CONTACT
=============================================*/
#content {
    padding:270px 0 100px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/bg5.webp") no-repeat right bottom;
    background-size: 1200px auto;
    background-attachment: fixed;
}
#content .page_back { text-align: center;}
#content .page_back + .page_back { margin-top: 30px;}
#content .page_back  a {
    position: relative;
    font-size: 162.5%;
    color: #005288;
    text-decoration: none;
}
#content .page_back  a::before {
    position: absolute; bottom:-10px; left: 0;
    display: block; clear: both; content:"";
    width: 100%; height: 1px;
    background: #005288;
}
#content .page_back.b_w  a { color: #fff;}
#content .page_back.b_w  a::before {background: #fff;}
@media only screen and (min-width:768px){
    #content .page_back  a:hover { opacity: 0.7;}
}
@media only screen and (max-width:768px){
        #content {
            padding:140px 0 100px;
            background-size: 100% auto;
    }
}
@media only screen and (max-width:468px){
    #content .page_back  a { font-size: 125%;}
}



/*=============================================
  FOOTER
=============================================*/
#footer {
    padding: 80px 0;
    font-family: "M PLUS 1p", sans-serif;
    font-size: 125%;
    color: #fff;
    background:#126293;
}
#footer .inner { max-width: 1320px;}
#footer .catch {
    margin: 0 auto 100px;
    width:80%; height: auto; max-width: 1000px;
    aspect-ratio: 1794 / 806;
    text-indent: -9999px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/main_catch.webp") no-repeat;
    background-size: 100% auto;
}
#footer .organizer span:nth-child(1)::after { content:"：";}
#footer .add {
    display: flex; flex-direction: column; gap:45px;
    padding-top: 40px;
    text-align: center;
    border-top: 1px solid #fff;
}
#footer .logo { font-size: 40px;}
#footer .contact {
    display: flex; justify-content: center;  align-items: flex-start; gap:0 20px;
}
#footer .contact span:nth-child(1) {
    width: 175px;
    line-height: 60px;
    text-align: center;
    border: 1px solid #fff;
}
#footer .contact span:nth-child(2) {
    text-align: left;
}
@media only screen and (max-width:768px){
    #footer { font-size: 100%;}
    #footer .catch { margin-bottom: 70px;}
    #footer .logo { font-size:30px;}
}
@media only screen and (max-width:468px){
    #footer { padding: 40px 0; font-size: 75%;}
    #footer .catch { margin-bottom: 40px;}
    #footer .logo { font-size:18px;}
    #footer .organizer { display: flex; flex-direction: column; gap:10px;}
    #footer .organizer span { display: block;}
    #footer .organizer span:nth-child(1) { font-weight: 700;}
    #footer .organizer span:nth-child(1)::after { display: none;}
    #footer .add { gap:25px;}
    #footer .add p { line-height: 160%;}
    #footer .contact { display: block; text-align: center;}
    #footer .contact span { display: block;}
    #footer .contact span:nth-child(1) { margin: 0 auto 10px; width: 100px; line-height: 35px;}
    #footer .contact span:nth-child(2) { text-align: center; line-height: 160%;}
}



/*=============================================
  FIX NAV and TOPPAGE
=============================================*/
#fix_nav { position:fixed; bottom:0; left: 0; width: 100%; overflow: hidden; background: #fff; box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);}
#fix_nav p { float: left; width: 50%; text-align: center;}
#fix_nav p a { display: block; text-align: center;}
#fix_nav p a:hover { opacity: 0.7;}
#fix_nav p a img { width:187px; height: auto;;}
#fix_nav p:nth-child(1) a { background: #005083;}
#fix_nav p:nth-child(2) a { background: #ed6c00;}
@media only screen and (min-width:800px){
    #fix_nav p a img { width: auto; height: 60px;}
}
#pagetop { position:fixed; bottom:80px; left: 0; right:0; margin:auto; width:45px; ;}
#pagetop img { width: 100%; height:auto; border-radius:45px;}



/*=============================================
  ENTRY
=============================================*/
#contact {}
#contact .inner { display: flex; flex-direction: column; gap:50px;}
#contact h2 {
    margin: 0;
    font-family: "M PLUS 1p", sans-serif;
    font-size: 150%;
    color: #005288;
    text-align: center;
    letter-spacing: 1px;
}
#contact .comment {
    color: #005288;
    font-weight: 700;
    text-align: center;
}
#contact .comment2 {
    margin: auto;
    padding: 25px;
    width: 90%;
    max-width: 450px;
    color: #005288;
    font-weight: 700;
    text-align: center;
    background: #fff;
    border: 1px solid #005288;
}
#contact .comment2 small { font-size:87.5%;}
#contact .form_cont { background: #fff;}
#contact .btn_box { padding-top: 50px;}
#contact .btn_box .page_back  a { font-size: 125%;}
@media only screen and (max-width:768px){
    #contact .inner { gap:25px;}
    #contact .btn_box .page_back  a { font-size: 112.5%;}
}
@media only screen and (max-width:468px){
    #contact .btn_box .page_back  a { font-size: 100%;}
}



/*=============================================
  VOICE
=============================================*/
/* Voice01 -------------------------------------------------------*/
#voice .voice1 { padding-bottom: 100px;}
#voice .voice1 h2 {
    margin: 0 auto 80px;
    padding-bottom: 60px;
    width:450px;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 64px;
    font-weight: 700;
    color: #005288;
    text-align: center;
    letter-spacing: 1px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/mushimegane_half.webp") no-repeat right bottom;
    background-size: 160px auto;
}
#voice .voice1 .voice_list p {
    position: relative;
    padding: 30px;
    font-family: "M PLUS 1p", sans-serif;
    text-align: center;
    background: #fff;
    border: 5px solid #005288;
    border-radius: 20px;
}
#voice .voice1 .voice_list p:nth-child(odd) { margin-right: 25%;}
#voice .voice1 .voice_list p:nth-child(even) {  margin-left: 25%;}
#voice .voice1 .voice_list p::before {
    position: absolute; bottom:-35px;
    display: block; clear: both; content:"";
    width: 100%; height: auto; max-width: 40px; aspect-ratio: 74 / 64;
    background-size: 100% auto !important;
}
#voice .voice1 .voice_list p:nth-child(odd)::before {
    left: 50px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/fukidasi_shippo2.webp") no-repeat
}
#voice .voice1 .voice_list p:nth-child(even)::before {
    right: 50px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/fukidasi_shippo1.webp") no-repeat
}
#voice .voice1 .voice_list p::after {
    position: absolute; top: 0;
    display: block; clear: both; content:"";
    width: 100%; height: auto; max-width: 30%; aspect-ratio: 1 / 1;
    background-size: 100% auto !important;
}
#voice .voice1 .voice_list p:nth-child(1)::after {
    right:-35%;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice1_pic1.png") no-repeat
}
#voice .voice1 .voice_list p:nth-child(4)::after {
    left:-35%;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice1_pic2.png") no-repeat
}
#voice .voice1 .voice_list p span { display: block; font-size: 125%; font-weight:600; line-height: 185%;}
#voice .voice1 .voice_list p span + span { margin-top: 20px; font-size: 100%; font-weight: 400;}
#voice .voice1 .voice_list p span:nth-child(1)::before  { font-size: 125%;}
#voice .voice1 .voice_list p span:nth-child(2)::before  { font-size: 100%;}
#voice .voice1 .voice_list p + p { margin-top: 50px;}
@media only screen and (max-width:768px){
    #voice .voice1 .voice_list p:nth-child(odd) { margin-right: 40%;}
    #voice .voice1 .voice_list p:nth-child(even) {  margin-left: 40%;}
    #voice .voice1 .voice_list p span { font-size: 112.5%; line-height: 160%;}
    #voice .voice1 .voice_list p span + span { margin-top: 10px; font-size: 87.5%;}
    #voice .voice1 .voice_list p::after { max-width: 40%;}
    #voice .voice1 .voice_list p:nth-child(1)::after { right:-50%;}
    #voice .voice1 .voice_list p:nth-child(4)::after { left:-50%;}
}
@media only screen and (max-width:468px){
    #voice .voice1 h2 {
        margin: 0 auto 40px;
        padding-bottom: 40px;
        width:100%;
        font-size: 200%;
        background-size: 100px auto;
    }
    #voice .voice1 .voice_list p:nth-child(odd),
    #voice .voice1 .voice_list p:nth-child(even) {  margin: auto;}
    #voice .voice1 .voice_list p + p { margin-top: 50px !important;}
    #voice .voice1 .voice_list p:nth-child(1)::after { right:-50%;}
    #voice .voice1 .voice_list p:nth-child(4)::after { left:-50%;}
    #voice .voice1 .voice_list p span { font-size: 100%; line-height: 160%;}
    #voice .voice1 .voice_list p span + span { margin-top: 10px; font-size: 87.5%;}
    #voice .voice1 .voice_list p:nth-child(odd)::before,
    #voice .voice1 .voice_list p:nth-child(even)::before { left: 0; right: 0; margin: auto;}
    #voice .voice1 .voice_list p::after { z-index: 9999; max-width: 30%;}
    #voice .voice1 .voice_list p:nth-child(1)::after { top: inherit; right:0; bottom: -20%;}
    #voice .voice1 .voice_list p:nth-child(4)::after { top: -20%; left:0;}
}

/* Voice02 -------------------------------------------------------*/
#content:has( #voice .voice2) { padding-bottom: 0;}
#voice .voice2 { padding: 100px 0; background: #3995BE;}
#voice .voice2 h2 {
    margin: 0 auto;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 200%;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
}
#voice .voice2 .voice_list {
    display: flex; flex-direction: column; gap:200px;
    margin:100px auto 100px; max-width: 1120px;
    font-family: "M PLUS 1p", sans-serif;
    color: #fff;
}
#voice .voice2 .box { position: relative; padding-left: 35%;}
#voice .voice2 .profile { position: relative; display: flex; flex-direction: column; gap:30px; margin-bottom: 40px;}
#voice .voice2 .profile h3 {
    font-family: "M PLUS 1p", sans-serif;
    font-size: 250%;
    font-weight: 700;
    line-height: 140%;
}
#voice .voice2 .profile p { font-size:100%; font-weight: 600; display: flex; flex-wrap: wrap; gap:0 20px;}
#voice .voice2 .qa { display: flex; flex-direction: column; gap:60px;}
#voice .voice2 .qa dl { display: flex; flex-direction: column; gap:30px;}
#voice .voice2 .qa dl dt { position: relative; color: #fff; padding-left: 50px;}
#voice .voice2 .qa dl dt::before {
    position:absolute; top: 15px; left: 0;
    display: block; clear: both; content:"";
    width: 40px; height: 2px;
    background: #fff;
}
#voice .voice2 .qa dl dt { font-size: 125%; font-weight: 600;}
#voice .voice2 .qa dl dd { font-size: 112.5%;}
#voice .voice2 .box::after,
#voice .voice2 .box::before {
    display: block; clear: both; content:"";
    position: absolute;
    height: auto;
    background-size: 100% auto !important;
}
#voice .voice2 .box::after { top: 0; left: 0; width: 30%; aspect-ratio: 1 / 1;}
#voice .voice2 .box::before { bottom: 0; left: 5%; width: 20%; aspect-ratio: 467 / 876;}
#voice .voice2 .box.vo1::after { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice1_tit.png") no-repeat;}
#voice .voice2 .box.vo1::before { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice1_illust.webp") no-repeat;}
#voice .voice2 .box.vo2::after { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice2_tit.png") no-repeat;}
#voice .voice2 .box.vo2::before { background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/voice2_illust.webp") no-repeat;}
@media only screen and (max-width:768px){
    #voice .voice2 .voice_list { width: 100%; gap:100px;}
	#voice .voice2 .profile h3 { font-size: 150%;}
	#voice .voice2 .profile p { font-size: 100%;}
    #voice .voice2 .box::before { top:18%; bottom:inherit; left: 5%; z-index: 999;}
}
@media only screen and (max-width:468px){
    #voice .voice2 h2 { font-size: 150%;}
    #voice .voice2 .voice_list { margin: 50px auto 80px;}
    #voice .voice2 .box { padding:220px 0 0;}
    #voice .voice2 .box::after { top: 0; left: 0; right: 0; margin: auto; width: 180px;}
    #voice .voice2 .box::before { bottom: inherit;  left: inherit; top: 0; right:0; width: 90px;}
    #voice .voice2 .qa { gap:40px;}
    #voice .voice2 .qa dl { gap:15px;}
    #voice .voice2 .qa dl dt { font-size: 112.5%; padding-left: 30px;}
    #voice .voice2 .qa dl dt::before { width: 20px;}
    #voice .voice2 .qa dl dd { font-size: 100%;}
}



/*=============================================
  SEARCH and RESULT
=============================================*/
#search .btn,
#result .btn a {
    display: block;
    padding: 0 50px;
    width: 100%;
    color: #fff;
    font-size: clamp(112.5%, 2.5vw, 150%);
    font-weight: 700;
    line-height: 70px;
    text-align: center;
    text-decoration: none;
    border: 2px solid #fff;
    border-radius: 100px;
}
#search .btn.b_search { margin:80px auto 0; max-width: 300px;}
#result .btn.b_yoyaku { margin:80px auto 0; max-width: 425px;}
#search .btn { background: radial-gradient(#76DAFF 0, #3829B1 100%);}
#result .btn.b_yoyaku a { background: radial-gradient(#FFB610 0, #ED5C00 100%);}
@media only screen and (min-width:769px){
}
@media only screen and (max-width:768px){
    #search .btn,
    #result .btn a { padding: 0 20px; line-height: 60px; }
    #search .btn.b_search,
    #result .btn.b_yoyaku { margin:40px auto 0;}
}
@media only screen and (max-width:468px){
    #search .btn,
    #result .btn a { line-height: 50px; }
}



/* 検索（トップ・サブ共通）========================*/
#search .search_list { display: flex; flex-wrap: wrap; flex-direction: column; gap:30px;}
#search .search_list dl { display: flex; flex-wrap:wrap; gap:20px; }
#search .search_list dt { align-self: flex-start; width:190px; padding:5px 20px; color: #fff; font-size:112.5%; text-align: center; font-weight: bold; background:#126293; border-radius:5px;}
#search .search_list dd { width: calc(100% - 190px - 30px);}
#search .search_list dd label { cursor: pointer;}
#search .search_list .col1 { display: flex; flex-wrap:wrap; flex-direction: column; gap:5px 15px;}
#search .search_list .col2,
#search .search_list .col3,
#search .search_list .col4,
#search .search_list .col5 { display: flex; flex-wrap:wrap; flex-direction: row; gap:5px 2%;}
#search .search_list .col1 { align-items:flex-start;}
#search .search_list .col2 label { display: block; width: 48%;}
#search .search_list .col3 label { display: block; width: 32%;}
#search .search_list .col5 label { display: block; width: 18.4%; text-align: center; line-height: 150%;}
#search .search_list .mid { margin-bottom: 10px; padding: 0 10px 10px; font-weight: bold; color: #126293; border-bottom: 2px solid #126293;}
#search .search_list .box + .box .mid { padding-top: 10px; }
#search .search_list label input[type=checkbox] { cursor: pointer;margin-right: 10px; width: 18px; height: 18px; border-radius: 5px;}
#search .search_list select { height: 40px; line-height:40px;}
#search .search_list input[type=text] { height: 40px; line-height:40px; width: 100%;}
#search .search_list input[type="checkbox"] + .check_icon img { cursor: pointer; display: none; width: 100%; height: auto;}
#search .search_list .icontuki input[type="checkbox"] { display: none;}
#search .search_list .check_icon { display: block; margin-bottom: 10px;}
#search .search_list input[type="checkbox"]:checked + .check_icon img.on { display: block;}
#search .search_list input[type="checkbox"]:checked + .check_icon img.off { display: none;}
#search .search_list input[type="checkbox"] + .check_icon img.on { display: none;}
#search .search_list input[type="checkbox"] + .check_icon img.off { display: block;}
#search .search_list input[type="checkbox"] + .check_icon img.off { display: block;}
/*勤務地アコーディオン*/
#search .search_list .pull { display: block; background:none; width:100%;}
#search .search_list .pull dt {
	position: relative; cursor: pointer;
	width: 100%;
	padding: 10px;
	padding-right: 50px;
    font-family: "M PLUS 1p", sans-serif;
	color: #000;
	text-align: left;
	background-color: #fff !important;
	border-radius: 0;
}
#search .search_list .pull dt .pull_btn {
    position: absolute; top: 0; right: 0;
    width: 45px; height: 45px;
    text-indent: -9999px;
}
#search .search_list .pull dt { background: url("img/accordion_off.png") no-repeat; line-height: 20px; width:100%;}
#search .search_list .pull dt.active { background: url("img/accordion_on.png") no-repeat;}
#search .search_list .pull dt,
#search .search_list .pull dt.active { background-position: 98% center !important; background-size: 30px !important;}
#search .search_list .pull dd { display: block; padding:10px 20px; width: 100%; font-size:100%;}
#search .search_list .pull dt + dd { display:none;}
/*特長アコーディオン*/
#search .search_list .pull2 { display: block;}
#search .search_list .pull2 .pull2_tit { 
    position: relative; cursor: pointer;
    width: 100%;
    padding: 10px 15px 10px 60px;
    text-align: left;
    color: #fff;
    background-color: #126293 !important;
}
#search .search_list .pull2 .pull2_tit { background: url("img/accordion_off2.png") no-repeat;}
#search .search_list .pull2 .pull2_tit.active { background: url("img/accordion_on2.png") no-repeat;}
#search .search_list .pull2 .pull2_tit,
#search .search_list .pull2 .pull2_tit.active { background-position: 15px center !important; background-size: 30px !important;}
#search .search_list .pull2 .pull2_cont { display: none; padding: 30px 0 0; }
/*ボタン*/
#search .b_reset {
    cursor: pointer;
    display: block;
    margin:40px auto 0;
	padding:10px 20px;
    width:80%; max-width: 300px;
	font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 150%;
    font-weight: bold;
    color: #000;
    background:#ddd;
	border: 3px solid #000;
    border-radius: 50px;
}
@media only screen and (min-width:769px){
    #search .b_btn:hover { opacity: 0.7;}
}
@media only screen and (max-width:768px){
    .search_tit {font-size:24px;}
    .search_sub #search  {padding:40px 0; }
    #search .search_list { gap:10px;}
    #search .search_list dl { flex-direction: column; gap:10px;}
    #search .search_list dt { width:100%; padding: 5px; }
    #search .search_list dd { width:100%; padding: 0; }
    #search .search_list .col1 { gap:5px;}
    #search .search_list .col2 label,
    #search .search_list .col3 label { display: block; width:100%;}
    #search .search_list .col5 label { display: block; width:32% !important; font-size: 10px; line-height: 10px;}
    #search .search_list .freeword dd { padding:0; width: 100%;}
    #search .search_list .col_gyosyu label:nth-child(1),
    #search .search_list .col_gyosyu label:nth-child(2),
    #search .search_list .col_gyosyu label:nth-child(3),
    #search .search_list .col_gyosyu label:nth-child(4) { width:100% !important; font-size: 112.5%;}
}



/* 検索結果 =============================================*/
#content:has( #result) { padding-bottom: 0;}
.search_sub {
	position: relative;
	margin: auto;
    padding-bottom: 100px;
	width: 90%;
}
.search_sub h2.search_tit {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 200%;
    font-weight: 700;
    color:#126293;
    text-align: center;
    letter-spacing: 1px;
}
.search_sub #search { margin: auto; padding:40px 0 0; width: 90%; max-width: 900px; }
#result {
    padding:150px 20px;
    background: url("http://kochi-iju.jp/lp/kochi-job/realfair/wp-content/uploads/2026/05/bg1.webp") no-repeat;
    background-size: 100% auto;
	background-attachment: fixed;
}
#result .result_total {
    padding:0 0 50px;
    font-family: "M PLUS 1p", sans-serif;
    font-weight:700;
    color: #126293;
    text-align: center !important;
}
#result .result_total span:nth-child(1) { font-size:187.5%;}
#result .result_total span:nth-child(2) { font-size:312.5%; margin: 0 10px;}
#result .result_total span:nth-child(3) { font-size:187.5%;}
#result .result_total span:nth-child(4) { font-size:187.5%;}
#result .kigyo_box {
    margin:0 auto; width: 90%; max-width: 1200px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.4);
}
#result .kigyo_box + .kigyo_box { margin-top: 40px;}
#result .kigyo_box .cont {
    display: flex; flex-wrap: wrap; justify-content: space-between; gap:4%;
    margin: auto; padding: 70px 50px; width: 90%; max-width: 1000px; 
}
#result .kigyo_box .cont1 { width: 48%; display: flex; flex-direction: column; gap:15px;}
#result .kigyo_box .cont2 { width: 48%;}

/* kaijyo */
#result .kigyo_box .kaijyo_icon .kaijyo_list { display:flex; gap:10px;}
#result .kigyo_box .kaijyo_icon .kaijyo_list p { 
    width: 100%;
    font-weight: bold;
    font-size: 87.5%;
    color: #999;
    text-align: center;
    height: 25px;
    line-height: 25px;
    background: #efefef;
}
#result .kigyo_box .kaijyo_icon .kaijyo_list p.kaijyo1.selected { color: #fff; background: #76A289;}
#result .kigyo_box .kaijyo_icon .kaijyo_list p.kaijyo2.selected { color: #fff; background:#9AC8FF;}
#result .kigyo_box .kaijyo_icon .kaijyo_choise { display:none;}

/* photo */
#result .kigyo_box .photo {position: relative; width:100%;}
#result .kigyo_box .photo img { width: 100%; height: auto;}

/* namae */
#result .kigyo_box .tit {
    margin-top: 20px;
    font-size: 112.5%;
    font-weight: 700;
    color:#A5A5A5;
    text-align: left;
}
#result .kigyo_box .tit a { color:#A5A5A5; text-decoration:none;}

/* catch */
#result .kigyo_box .catch {
    color:#009844;
    font-weight: 700;
}

/* message */
#result .kigyo_box .message { display: flex; flex-direction: column; gap:10px;}
#result .kigyo_box .message dt { position: relative; font-size:75%; line-height: 150%;}
#result .kigyo_box .message dt span { position: relative; z-index: 2; padding-right: 20px; background: #fff;}
#result .kigyo_box .message dt::before {
    position: absolute; top: 0; bottom: 0; z-index: 1;
    display:block; clear: both; content:"";
    margin: auto;
    width: 100%; height: 1px;
    background: #999;
}
#result .kigyo_box .message dd { font-size: 100%; line-height: 180%;}

/* detail */
#result .kigyo_box .detail { display: flex; flex-direction: column; gap:0; margin-bottom: 20px; border: 1px solid #ddd;}
#result .kigyo_box .detail dl { position: relative; display: flex; flex-wrap: wrap; gap:10px; font-size:87.5%;}
#result .kigyo_box .detail dl + dl { border-top: 1px solid #ddd;}
#result .kigyo_box .detail dt,
#result .kigyo_box .detail dd { padding: 5px 0;}
#result .kigyo_box .detail dt { color: #000;  line-height:22px; width: 75px; text-align: center; background: #f6f6f6;}
#result .kigyo_box .detail dd { width: calc(100% - 95px); line-height: 130%; color: #707070;}

/* other1 */
#result .kigyo_box .other1 { display: flex; flex-direction: column; gap:20px; margin-bottom: 20px;}
#result .kigyo_box .other1 dt { position: relative; width: 100%; margin-bottom: 10px; padding:0 10px; line-height: 30px;}
#result .kigyo_box .other1 dd { display: flex; flex-wrap: wrap; gap:5px;}
#result .kigyo_box .other1 dd span {
    display:block;
    padding: 0 15px;
    min-width: calc(33.3% - 3.33px);
    color: #222;
    font-size: 75%;
    line-height: 25px;
    text-align: center;
    border: 1px solid #999;
}
#result .kigyo_box .other1 dl:nth-child(1) dt { color: #fff; background:#9AC8FF; }
#result .kigyo_box .other1 dl:nth-child(2) dt { color: #fff; background: #76A289;}
#result .kigyo_box .other2 dl { font-size:87.5%;}
#result .kigyo_box .other2 dt { color: #006837; display: none;}
#result .kigyo_box .other2 dd { font-size: 75%;}
#result .kigyo_box .other2 dd .jishin_list { display: flex; gap:10px;}
#result .kigyo_box .other2 dd .jishin_list p { width:20%; padding-top: 19%; background-size: 100% auto !important; }
#result .kigyo_box .other2 dd .jishin_list p small { display: block; font-size: 10px; line-height: 10px; text-align: center;}
#result .kigyo_box .other2 dd .jishin_choise { display: none;}
#result .kigyo_box .other2 dd .jishin1 { background: url("img/jishin/jishin1_off.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin2 { background: url("img/jishin/jishin2_off.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin3 { background: url("img/jishin/jishin3_off.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin4 { background: url("img/jishin/jishin4_off.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin5 { background: url("img/jishin/jishin5_off.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin1.selected { background: url("img/jishin/jishin1_on2.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin2.selected { background: url("img/jishin/jishin2_on2.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin3.selected { background: url("img/jishin/jishin3_on2.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin4.selected { background: url("img/jishin/jishin4_on2.gif") no-repeat;}
#result .kigyo_box .other2 dd .jishin5.selected { background: url("img/jishin/jishin5_on2.gif") no-repeat;}
#result .kigyo_box .day { font-size:75%; text-align: right;}
#result .b_link { clear: both; margin: auto; max-width: 300px;}
#result .b_link a {
    display: block;
    padding: 20px;
    color: #005083;
    text-decoration: none;
    text-align: center;
    font-weight: 600;
    background: url("img/btn_bg.png") no-repeat center center;
    background-size: 100% 100%;
}
@media only screen and (max-width:768px){
    #result { padding:100px 20px; }
    #result .result_total span:nth-child(1) { font-size:112.5%;}
    #result .result_total span:nth-child(2) { font-size:300%;}
    #result .result_total span:nth-child(3) { font-size:112.5%;}
    #result .result_total span:nth-child(4) { font-size:112.5%; display: block;}
	#result .kigyo_box {width:100%;}
    #result .kigyo_box .cont { flex-direction: column; gap:20px; padding:0; }
    #result .kigyo_box .cont1 { width:100%; padding: 40px 0 20px;}
    #result .kigyo_box .cont2 { width:100%; padding: 0 0 20px;}
    #result .kigyo_box .detail dl { flex-direction: column; gap:0;}
    #result .kigyo_box .detail dt { padding: 5px 10px !important; width: 100%;}
    #result .kigyo_box .detail dd { padding: 10px !important; width: 100%;}
    #result .kigyo_box .other1 dd span { width:auto;}
    #result .kigyo_box .other2 dd .jishin_list { flex-wrap: wrap; gap:5px; padding-top: 10px;}
    #result .kigyo_box .other2 dd .jishin_list p { padding-top: 27%;  width:32%; background-size: 80% auto !important; background-position: top center !important;}
    #result .kigyo_box .message dd + dd { text-align: center;}
}


/* PAGENATION */
.pagination { margin: 60px 0; text-align: center;}
.pagination ul { display: inline-block;}
.pagination ul li { display: inline-block;}
.pagination ul li .page-numbers {
    display: block;
    width: 35px; height: 35px;
    line-height: 30px;
    color: #000;
    text-align: center;
    text-decoration: none;
     border: 2px solid #000;
    border-radius: 35px;
}
.pagination ul li .page-numbers.current { color:#fff; background: #000;}
.pagination ul li .page-numbers.prev,
.pagination ul li .page-numbers.next,
.pagination ul li .page-numbers.dots { color:#000; background:none; font-weight: bold;}
@media only screen and (min-width:800px){
    .pagination ul li .page-numbers:hover { opacity: 0.7;}
}
@media only screen and (max-width:800px){
    .pagination { margin: 60px 0;}
}



/*-----------------------------------------------------------------------------------
  CONTACT LIST
-----------------------------------------------------------------------------------*/
#contact_list {
    margin: auto; width:90%; max-width: 1220px;
	padding-bottom:100px;
    display: flex; flex-wrap: wrap; flex-direction: column; gap: 60px;
}
#contact_list .step1 { background:#F0FCFF;}
#contact_list .step2 { background:#FFFCDB;}
#contact_list .step3 { background:#EEFFEA;}
#contact_list .box { position: relative; padding: 100px 0; border-radius:30px;}
#contact_list .box .inner { display: flex; justify-content: space-between; gap:60px;}
#contact_list .box h3 { margin-bottom:30px; text-align: left; color: #006837;}
#contact_list .box h3 small { font-size: 112.5%; color: #76ABE7; margin-top: 20px;}
#contact_list .box .come { font-size:180%; font-weight: 700; color: #006837; line-height: 150%;}
#contact_list .entry_btn {
    display: flex; flex-direction: column; align-content: center; justify-content: center; gap: 60px;
    width: 420px;
}
@media only screen and (max-width:800px){
    #contact_list .box { padding: 50px 0 10px; border-radius: 10px;}
    #contact_list .box .inner { flex-direction: column; gap:30px;}
    #contact_list .box h3 { margin-bottom:20px; padding-left: 10px; text-align: center;}
    #contact_list .box h3 small { margin-top: 0;}
    #contact_list .box .come { font-size:125%; text-align: center;}
    #contact_list .entry_btn { flex-direction: column; gap:40px; width: 100%;}
}
@media only screen and (max-width:468px){
    #contact_list .box { padding: 50px 0 10px; border-radius: 10px;}
    #contact_list .box .inner { flex-direction: column; gap:30px;}
    #contact_list .box h3 { margin-bottom:20px; padding-left: 10px; text-align: center;}
    #contact_list .box h3 small { margin-top: 0;}
    #contact_list .box .come { font-size:112.5%; text-align: center;}
    #contact_list .entry_btn a { font-size: 100% !important;}
}




/*=============================================
  404
=============================================*/
#error404 { margin: auto; padding:80px 0; width:96%; text-align: center;}
#error404 img { width:100%; height:auto;}
#error404 .img { margin: auto; max-width:350px;}




/*=============================================
  フォーム強制調整
=============================================*/
#contact iframe {}
.ui.grid > .row > .column{ width: 100%;}
.el-form-item img { max-width: 100%; height: auto;}
