@charset "utf-8";


/* 【SP】ウィンドウ幅が768px以下の場合に適用するCSS */
@media screen and (max-width: 768px) {

/* ==================================================================================

common

================================================================================== */
body {
font-size: 13px;
}
.inner,
.inner_mini,
.inner_max {
padding: 0 5%;
}
.pc {display:none !important;}
a:link {color: #45534E;text-decoration: none;}
a:visited {color: #45534E;text-decoration: none;}
a:active {color: #45534E;text-decoration: none;}
img {vertical-align: bottom;}

.bg {background: #ECF0EF;}

.img img {width: 100%;}


/* slider
======================================== */
.case_area .slick-slide,
.job_list .slick-slide {
margin: 0 10px;
}



/* ==================================================================================

Wedding Me Talk バナー追加

================================================================================== */
.talk_area {}
.talk_area a {
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: 20px 0;
    padding: 15px 5%;
    transition: all 300ms linear;
    display: block;
}
.talk_area a:hover {
	background: #F9F4E9;
}
.talk_area .img {}
.talk_area .img img {}
.talk_area .text {}
.talk_area .text .title {
    font-size: 1.5em;
    line-height: 1.5;
    margin: 10px 0;
}
.talk_area .text p {}
.talk_area .text .btn_area {}
.talk_area .text .btn_area .btn {
    background: #FFAA28;
    color: #fff;
    transition: all 300ms linear;
    display: block;
    position: relative;
    margin: 15px 0 0 0;
    padding: 10px 0;
    border-radius: 100px;
    text-align: center;
}
.talk_area .text .btn_area .btn:hover {
	background: #FF8316;
}
.talk_area .text .btn_area .btn:before {
	content: url(/img/top/icon_blank.svg);
    width: 24px;
    display: inline-block;
    vertical-align: -3px;
    margin: 0 10px 0 0;
}







/* ==================================================================================

こんな方におすすめ

================================================================================== */
.reco_area {}
.bg + .bg .reco_area {
margin: 0;
padding-top: 0;
}

.reco_area .reco_li ul {
display: inline-block;
text-align: left;
margin: 5px 5% 0 5%;
}
.reco_area .reco_li ul li {
position: relative;
padding: 0 0 0 13px;
line-height: 1.5;
margin: 0 0 10px 0;
}
.reco_area .reco_li ul li:before {
content: "";
background: #7AA897;
width: 5px;
height: 5px;
border-radius: 50%;
position: absolute;
left: 0;
top: 9px;
}
.reco_area .btn_bace [class*="btn_"] {
font-size: 1em;
}



/* ==================================================================================

guide_article_page

================================================================================== */
.guide_article_page {
font-size: 1.1em;
}

.guide_article_page p {
line-height: 2;
margin: 0 0 10px 0;
}
.guide_article_page img {
width: 100%;
}

.guide_article_page .main_img {
margin: 0 0 20px 0;
}
.guide_article_page .main_img img {
width: 100%;
}

.guide_article_bottom {
margin: 30px 0;
}
.guide_article_bottom .btn_bace {
text-align: center;
margin: 30px 0 50px;
}

a.anchor{
    display: block;
    padding-top: 50px;
    margin-top: -50px;
}


/* title
======================================== */
.guide_article_page .title_01 {
background: #f2f2f2;
    text-align: left;
    font-size: 1.2em;
    line-height: 1.3;
    padding: 12px 15px;
    margin: 30px 0 20px 0;
}

.guide_article_page .title_02 {
font-size: 1.1em;
line-height: 1.4;
text-align: left;
margin: 20px 0 10px 0;
    padding: 0 0 6px 10px;
border-bottom: 1px solid #ccc;
border-left: 2px solid #ccc;
}

.guide_article_page .title_03 {
padding: 0 0 0 8px;
    margin: 20px 0 10px 0;
    border-left: 2px solid #ccc;
    font-size: 1.1em;
    line-height: 1.3;
}







/* fl img_r
======================================== */
.guide_article_page .fl {}
.guide_article_page .fl .img {
margin: 20px 0;
}
.guide_article_page .fl .text {}
.guide_article_page .img_r {}
.guide_article_page .img_r .img {}


/* list
======================================== */
.guide_article_page ol,
.guide_article_page .list_dot {
padding: 0 0 0 15px;
margin: 20px 0;
}
.guide_article_page ol li,
.guide_article_page .list_dot li {
margin: 10px 0;
}
.guide_article_page ol {
list-style-type: revert;
}
.guide_article_page .list_dot {
list-style-type: disc;
}



/* table
======================================== */
.guide_article_page .table_01 {
margin: 20px 0 30px;
width: 100%;
font-size: 0.9em;
}
.guide_article_page .table_01 th,
.guide_article_page .table_01 td {
border: 1px solid #EAEAEA;
padding: 10px 15px;
display: block;
}
.guide_article_page .table_01 th {
background: #EFEFEF;
text-align: left;
width: 100%;
}
.guide_article_page .table_01 td {
border-top: none;
}


/* text_link
======================================== */
.guide_article_page a.text_link {
color: #7AA897;
text-decoration: underline;
transition: all 500ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.guide_article_page a.text_link:hover {
color: #8DB4A6;
text-decoration: none;
}


.guide_article_page {}
.guide_article_page {}
.guide_article_page {}
.guide_article_page {}
.guide_article_page {}
.guide_article_page {}



.guide_article_page .mokuji {
background: #f2f2f2;
    border-radius: 3px;
    padding: 5px 5% 30px;
    margin: 20px auto;
}
.guide_article_page .mokuji a {
margin: 20px 0 0 0;
display: block;
line-height: 1.5;
transition: all 500ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.guide_article_page .mokuji .sub a {
margin: 10px 0;
}
.guide_article_page .mokuji a:hover {
}
.guide_article_page .mokuji a:hover {
color: #7AA897;
}
.guide_article_page .mokuji a:hover:before {
top: 4px;
}

.guide_article_page .mokuji a span {
color: #7AA897;
    margin: 0 8px 0 0;
    font-size: 1.2em;
}
.guide_article_page .mokuji .sub {
padding: 0 0 0 20px;
margin: 0;
}
.guide_article_page .mokuji .sub span {
font-size: 1em;
}
.guide_article_page .mokuji li {
margin: 15px 0 0 0;
}
.guide_article_page .mokuji li:first-child {
margin-top: 0;
}


/* ==================================================================================

guide_page

================================================================================== */
.guide_page {}
.guide_page ul {
display: flex;
flex-wrap:wrap;
margin: 0;
}
.guide_page li {
width:49%;
margin:0 2% 10px 0;
}
.guide_page li:nth-child(2n) {
margin-right: 0;
}
.guide_page li .font_m {
line-height: 1.3;
margin: 10px 0;
transition: all 500ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.guide_page li .font_m:hover {
color: #7AA897;
}



/* ==================================================================================

service_page

================================================================================== */

/* service_01
======================================== */
.service_01 {}
.service_01 .title {
text-align: center;
font-size: 1.8em;
margin: 30px 0 10px 0;
}
.service_01 p {
}
.service_01 .btn_bace {
text-align: center;
margin: 30px 0;
}


/* service_01 メリット
======================================== */
.service_02 {}
.service_02 .title_01 + p {
}
.service_02 ul {
margin: 30px 0;
}
.service_02 li {
width: 100%;
margin: 0 0 40px 0;
text-align: center;
position: relative;
}
.service_02 li:nth-child(2n) {
margin-right: 0;
}
.service_02 li .img {
width: 100%;
text-align: center;
margin: 20px 0 0 0;
}
.service_02 li .img img {
width: 150px;
height: 150px;
object-fit: cover;
border-radius: 50%;
}

.service_02 li .font_m {
font-size: 1.4em;
line-height: 1.5;
margin: 20px 0;
}
.service_02 li p {
text-align: left;
}
.service_02 li .text {
width: 100%;
}
.service_02 li .font_e {
    color: #7AA897;
    font-size: 3em;
    position: absolute;
    left: 17%;
    top: -20px;
}
.service_02 .btn_bace {
margin: 0 0 100px 0;
text-align: center;
}


/* service_03 流れ
======================================== */
.service_03 {
background: #F1F7F5;
padding: 30px 0;
}
.service_03 ul {
margin: 30px 0;
}

.service_03 .img {
width: 100%;
text-align: center;
}
.service_03 .img img {
    width: 40%;
    object-fit: cover;
    border-radius: 50%;
}

.service_03 li {
margin: 0 0 40px 0;
position: relative;
}
.service_03 li:last-child {
margin-right: 0;
}
.service_03 li .font_e {
position: absolute;
    color: #7AA897;
    font-size: 3em;
    top: -15px;
    left: 17%;
}
.service_03 li .font_m {
	text-align: center;
	font-size: 1.6em;
	margin: 15px 0 5px 0;
}

.service_03 .btn_bace {
text-align: center;
margin: 0 0 20px 0;
}


/* service_04 おすすめ
======================================== */
.service_04 {
padding: 30px 0 0 0;
}
.service_04 li {
}

.service_04 .img {
width: 100%;
}
.service_04 .text {
width: 100%;
}
.service_04 .text {
}
.service_04 .text .box {
padding: 20px 5% 40px;
}
.service_04 .text .font_m {
font-size: 1.7em;
	margin: 0 0 10px 0;
	line-height: 1.5;
}


/* ==================================================================================

second common

================================================================================== */
.second_contents {
padding: 30px 0;
}

.search_link_area + .prefecture_area {
margin: 0 0 30px 0;
}











/* ==================================================================================

お問い合わせ

================================================================================== */
.inquiry_info {
margin: 30px 0;
text-align: center;
}
.inquiry_info .logo {
margin: 0 0 20px 0;
}
.inquiry_info .logo img {
width: 80%;
}
.inquiry_info .logo p {
text-align: left;
    margin: 20px 0;
}

.inquiry_info ul {
}
.inquiry_info li {
width: 100%;
margin: 0 0 40px 0;
}
.inquiry_info li:last-child {
margin-right: 0;
}

.inquiry_info .point {
background: #7AA897;
color: #fff;
width: 90px;
height: 90px;
border-radius: 50%;
display: inline-block;
	font-size: 2.5em;
		 line-height: 0.5;
}
.inquiry_info .point span {
font-size: 0.4em;
	display: block;
	margin: 23px 0 0 0;
}

.inquiry_info li .title {
font-size: 1.4em;
	line-height: 1.5;
	margin: 20px 0 10px 0;
}
.inquiry_info li p {
text-align: left;
}


.inquiry_flow {
background: #F1F7F5;
margin: 30px 0;
padding: 30px 0;
}
.inquiry_flow ul {
}
.inquiry_flow li {
border-bottom: 1px solid #BBCCC5;
position: relative;
padding: 20px 0 20px 70px;
}
.inquiry_flow li img {
width: 60px;
    position: absolute;
    left: 0;
    top: 25px;
}
.inquiry_flow li .font_m {
font-size: 1.4em;
    margin: 0 0 5px 0;
}
.inquiry_flow li p {
text-align: left;
line-height: 1.5;
}
.inquiry_flow li:before {
    content: "";
    border-style: solid;
    border-width: 10px 18px 0 18px;
    border-color: #BBCCC5 transparent transparent transparent;
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
}
.inquiry_flow li:last-child:before {
content: none;
}


.inquiry_page .footer .menu_list,
.inquiry_page .footer .sns_btn,
.inquiry_page .footer .btn_bace {
display: none !important;
}
.inquiry_page .footer .data {
justify-content: center;
margin: 0 auto;
}
.inquiry_page .footer .box {
padding: 30px 0 0 0;
}
.inquiry_page .footer .data .logo_box {
margin: 0 0 20px 0;
}
.inquiry_page .footer .data .logo_box a {
pointer-events: none;
}



/* ==================================================================================

404

================================================================================== */
.page_404 {
position: relative;
}
.page_404 .text {
text-align: center;
padding: 30px 5% 0;
}
.page_404 p.font_e {
color: #fff;
font-size: 1.5em;
letter-spacing: 2px;
line-height: 1.2;
position: absolute;
left: 50%;
top: -120px;
transform: translateX(-50%);
}
.page_404 p.font_e span {font-size: 3em;
}
.page_404 .text p:nth-child(2) {
line-height: 2;
    text-align: left;
}

.page_404 .btn_bace {}
.page_404 .btn_bace a {
margin: 20px 0 0 0;
}



/* ==================================================================================

法人詳細

================================================================================== */
.company_data_01 {
}
.company_data_02 {
}

/* sub_nav
======================================== */
.sub_nav {
background: #ECF0EF;
padding: 20px 0;
}
.sub_nav ul {
display: flex;
justify-content: center;
}
.sub_nav li {
width: 100%;
margin: 0 1% 0 0;
}
.sub_nav li:last-child {
margin-right: 0;
}
.sub_nav a {
background: #D7E4DF;
color: #598977;
display: block;
text-align: center;
padding: 15px 0;
font-size: 0.9em;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.sub_nav a:hover {
background: #B2CAC0;
}
.sub_nav .active a {
background: #7AA897;
color: #fff;
pointer-events: none;
}

/* search_link_area
======================================== */
.search_link_area {
padding: 30px 0;
margin: 0;
}
.search_link_area ul {
text-align: center;
}
.search_link_area li {
margin: 0 0 30px 0;
width: 100%;
}
.search_link_area li:last-child {
margin-bottom: 0;
}
.search_link_area a {
display: inline-block;
background: #fff;
padding: 20px 5%;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.search_link_area a:hover {
background: #F2F6F4;
}
.search_link_area .title {
font-size: 1.3em;
position: relative;
padding: 0 0 10px 0;
margin: 0 0 15px 0;
}
.search_link_area .title:before {
content: "";
position: absolute;
height: 1px;
width: 30%;
background: #7AA897;
left: 50%;
bottom: 0;
transform: translateX(-50%);
}
.search_link_area p {
text-align: left;
}
.search_link_area .btn_bace span {
margin: 20px 0 0 0;
}


/* グラフ表示
=======================================================================*/

/* レーダーチャート -----------------*/
.graph_area {
margin: 30px 0;
}
.graph_area .graph_box,
.graph_area .text_box {
}
.graph_area .text_box {
width: 100%;
margin: 0;
}
.graph_box canvas {
margin: -50px 0 -120px 0;
}

.graph_area .text_box .title {
font-size: 1.1em;
}
.graph_area .text_box .point_box {
border-bottom: 1px solid #ccc;
margin: 0 0 30px 0;
padding: 0 0 20px 0;
}
.graph_area .text_box .point {
font-size: 1.3em;
text-align: center;
}
.graph_area .text_box .point span {
color: #7AA897;
font-size: 2.5em;
margin: 0 5px 0 10px;
line-height: 1;
font-style: italic;
}
.graph_area .text_box p {
line-height: 2;
}


/* テーブル -----------------*/
.table_area {
margin: 0 0 40px 0;
}

.table_area .title_01 {}
.table_area .title_01 .font_m span {
font-size: 0.6em;
}

.table_area .table_data table {
width: 100%;
text-align: center;
}
.table_area .table_data table th,
.table_area .table_data table td {
padding: 10px 5px;
line-height: 1.2;
font-size: 0.9em;
border-bottom: 1px solid #7AA897;
border-right: 1px solid #7AA897;
}
.table_area .table_data table th {
color: #7AA897;
}
.table_area .table_data table th:last-child,
.table_area .table_data table td:last-child {
border-right: none;
}
.table_area .table_data table tr:last-child td {
border-bottom: none;
color: #7AA897;
font-size: 2em;
}
.table_area .table_data table tr:last-child .title {
font-size: 1.3em;
}

.table_area .table_data th:nth-child(even),
.table_area .table_data td:nth-child(even) {
background: #EFF4F2;
}
.table_area .table_data table td:first-child {
text-align: left;
}
.table_area .table_data table td:nth-child(n+2) {
}



/* 平均年収・給与比較
=======================================================================*/
.graph_area_02 canvas {
margin: 0;
pointer-events: none;
}

.salary_area .point_box {
display: flex;
text-align: center;
}
.salary_area .point_box .box {
width: 50%;
}
.salary_area .point_box .box:first-child {
border-right: 1px solid #ccc;
}
.salary_area .point_box .box:last-child {
}
.salary_area .point_box .box p span {
margin-left: 0;
}

.salary_voice_area {
margin: 40px 0;
}
.salary_voice_area li {
border-bottom: 1px solid #ECF0EF;
display: flex;
padding: 10px 0;
    margin: 0 0 10px 0;
}
.salary_voice_area li img {
width: 12%;
margin: 0 0 auto 0;
}
.salary_voice_area li p {
width: 88%;
    margin: 0 0 0 2%;
    padding: 0 0;
}



/* ==================================================================================

求人詳細

================================================================================== */

/* state_area
======================================== */
.state_area {
position: relative;
}
.state_area .state_box {
text-align: center;
margin: 40px 0;
}
.state_area .state {
font-size: 0.9em;
position: relative;
display: inline-block;
}
.state_area ul {
padding: 0 0 30px 0;
text-align: center;
}
.state_area li {
padding: 10px 15px;
	display: inline-block;
	background: #7AA897;
	color: #fff;
	line-height: 1;
	font-size: 1em;
	margin: 5px;
}
.state_area li:nth-child(5n) {
margin-right: 0;
}
.state_area p {
width: 800px;
	margin: 0 auto 60px;
}

/* register_area
======================================== */
.register_area {
background: #ECF0EF;
    padding: 20px 5%;
    margin: 0 auto 30px;
}
.register_area .title {
display: block;
	text-align: center;
	font-size: 1.5em;
	margin: 0 0 10px 0;
}
.register_area .btn_bace {
text-align: center;
	margin: 25px 0 0 0;
}
.register_area .btn_bace a {
width: 100%;
}

.register_bottom_area {
padding: 30px 0;
text-align: center;
}

/* job_photo
======================================== */
.job_photo {
}
.job_photo .slick-slider {
    padding: 0;
}
.job_photo .slick-slide {
margin: 0 10px;
}
.job_photo img {
    height: 250px;
    width: 100%;
    object-fit: cover;
}

/* comment_area
======================================== */
.comment_area {
background: #ECF0EF;
padding: 20px 5%;
margin: 20px 0;
}
.comment_area .img {
width: 100%;
margin: 0 0 20px 0;
}
.comment_area .img img {
height: 100%;
object-fit: cover;
}
.comment_area .text {
width: 100%;
}
.comment_area .btn_bace {
margin: 20px 0 0 0;
}
.comment_area .title {
font-size: 1.4em;
	margin: 10px 0 15px 0;
}



/* ==================================================================================

求人一覧

================================================================================== */
.job_list_area {
    margin: 0 0 30px 0;
}
.job_list_area ul li {
background: #F5F8F7;
margin: 30px 0;
position: relative;
}

.job_list_area .img {
width: 100%;
}
.job_list_area .text {
width: 100%;
}
.job_list_area .img img {
width: 100%;
height: 250px;
object-fit: cover;
}

.job_list_area .text {
padding: 20px 5%;
}
.job_list_area .text ul {
    margin: 0 0 20px 0;
}
.job_list_area .text li {
margin: 10px 10px 0 0;
padding: 8px;
display: inline-block;
background: #7AA897;
color: #fff;
font-size: 0.9em;
line-height: 1;
}
.job_list_area .text .name {
font-weight: bold;
font-size: 1.2em;
border-left: 3px solid #45534E;
line-height: 1.5;
padding: 0 0 0 10px;
margin: 0 0 20px 0;
}
.company_list_area .text .name {
margin: 0 0 25px 0;
}
.job_list_area .text .table_list_01 {
font-size: 0.9em;
}
.job_list_area .text .feature_text {
margin: 0 0 15px 0;
}
.job_list_area .text dl {
line-height: 1.5;
}

.job_list_area .text .btn_bace {}
.job_list_area .text .btn_bace a {
margin: 20px 0 0 0;
}

.job_list_area .text .work_location span {
margin: 0 10px 2px 0;
	display: inline-block;
}

.state {
position: absolute;
	right: 0;
	top: 0;
	color: #fff;
	font-size: 0.8em;
	padding: 8px 15px;
}
.state.stop:before,
.state.advance:before {
display: inline-block;
margin: 0 5px 0 0;
}

.state.stop {
background: #ABBBB5;
}
.state.stop:before {
content: url(/img/job/icon_stop.svg);
width: 16px;
vertical-align: -3px;
}
/*
.state.advance {
background: #CBA597;
}
.state.advance:before {
content: url(/img/job/icon_advance.svg);
width: 16px;
vertical-align: -2px;
}
*/

.recruitment_text {
padding: 30px 5% 0;
}
.recruitment_text .inner {
border: 1px solid #ECF0EF;
padding: 20px 5%;
}
.recruitment_text .font_m {
text-align: center;
font-size: 1.2em;
}
.recruitment_text .font_m span {
position: relative;
padding: 0 0 30px 0;
display: inline-block;
}
.recruitment_text .font_m span:before {
content: "";
height: 1px;
width: 50%;
position: absolute;
bottom: 15px;
left: 50%;
transform: translateX(-50%);
background: #D5D9D7;
}
.recruitment_text p {
line-height: 2.4;
}


/* ページ送り
======================================== */
.page_feed {
width: 100%;
margin: 30px 0;
}
.page_feed li {
background: none !important;
    display: inline-block;
    margin: 0 0 10px 0 !important;
}
.page_feed ul {
text-align: center;
}
.page_feed a,
.page_feed span {
width: 40px;
    height: 40px;
    line-height: 40px;
margin: 0 5px;
background: #ECF0EF;
cursor: pointer;
border: none;
outline: none;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
display: inline-block;
}
.page_feed a:hover,
.page_feed span:hover {
background:#CFD7D4;
}

.page_feed .next,
.page_feed .return {
transform: translateY(-5px);
}
.page_feed .next a,
.page_feed .return a {
font-size: 0;
position: relative;
}
.page_feed .next a:before,
.page_feed .return a:before {
position: absolute;
content: "";
width: 12px;
height: 12px;
border: solid #45534E;
border-width: 1px 1px 0 0;
top: 15px;
}
.page_feed .next a:before {
transform: rotate(45deg);
left: 13px;
}
.page_feed .return a:before {
transform: rotate(-135deg);
left: 19px;
}

.page_feed .current {
background: #45534E;
color: #fff;
pointer-events: none;
}


/* conditions_area
======================================== */
.conditions_area {
margin: 0 0 30px 0;
}

.conditions_area .title {
text-align: center;
font-size: 1.5em;
margin: 0 0 40px 0;
}
.conditions_area .title span {
position: relative;
padding: 0 0 20px 0;
}
.conditions_area .title span:before {
content: "";
position: absolute;
width: 50%;
height: 1px;
background: #D1DBD7;
left: 50%;
bottom: 0;
transform: translateX(-50%);
}

.conditions_area ul {
}
.conditions_area li {
margin: 0 0 10px 0;
}
.conditions_area li:nth-child(3n) {
margin-right: 0;
}

.conditions_area a {
background: #7AA897;
color: #fff;
display: block;
padding: 15px 20px;
position: relative;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.conditions_area a:before {
content: "";
width: 6px;
height: 6px;
border: solid #fff;
border-width: 1px 1px 0 0;
transform: rotate(45deg) translateY(-50%);
position: absolute;
right: 20px;
top: 50%;
}
.conditions_area a:hover {
background: #8DB4A6;
}

/* link_single
======================================== */
.link_single {
margin: 30px 0 0 0;
}
.link_single .btn_bace {
text-align: center;
margin: 30px 0 0 0;
}
.link_single .btn_bace a {
width: 100%;
}
.link_single p {
}
.link_single .inner_mini {
border: 1px solid #DFE6E4;
padding: 0 5% 30px;
margin: 0 5%;
}



/* ==================================================================================

table

================================================================================== */
.table_list_01 {
display:flex;
flex-wrap: wrap;
}
.table_list_01 dt,
.table_list_01 dd {
padding: 7px 12px;
margin-bottom: 2px;
}
.table_list_01 dt {
background: #ECF0EF;
width: 25%;
box-sizing: border-box;
border-bottom: 1px solid #ECF0EF;
font-weight: bold;
}
.table_list_01 dd{
border-bottom: 1px solid #ECF0EF; 
width: 75%;
box-sizing: border-box;
}

/* 広い
======================================== */
.table_list_01.wide dt,
.table_list_01.wide dd {
padding: 20px 25px;
}


/* ==================================================================================

search_area

================================================================================== */
.search_area {
background: #F1F5F4;
padding: 20px 0;
}
.search_area .parent {
border-bottom: 1px solid #DDE3E2;
    padding: 0 0 10px 0;
    margin: 0 0 10px 0;
}
.search_area .parent .title {
pointer-events: none;
font-weight: bold;
margin: 0 0 10px 0;
    display: block;
	 font-size: 1.2em;
}
.search_area .submenu {
width: 100%;
}
.search_area .submenu li {
display: inline-block;
width: 100%;
}
.search_area .submenu.prefecture li {
width: 19%;
}
.search_area .submenu.prefecture li a {
position: relative;
display: block;
padding: 0 0 10px 12px;
transition: all 300ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.search_area .submenu.prefecture li a:hover {
color: #7AA897;
}
.search_area .submenu.prefecture li a:before {
content: "";
transform: rotate(45deg);
width: 5px;
height: 5px;
border: solid #7AA897;
border-width: 1px 1px 0 0;
position: absolute;
left: 0;
top: 10px;
}



/* 共通　チェックボックス
=======================================================================*/
.Checklist {
width:100%;
overflow:hidden;
}
.Checklist li{
width:100%;
float:left;
list-style-type:none;
height:30px;
}
input[type="checkbox"] {
display: none;
}
.filter-cond label span {
transition: .4s;
padding: 0 0 0 30px;
position: relative;
margin: 8px 0;
cursor: pointer;
display: inline-block;
}
.filter-cond input[type="checkbox"]:checked + span {
color: #7AA897;
}
.filter-cond label span::before{
content: "";
display: block;
position: absolute;
left: 0;
top: 4px;
border-radius: 4px;
width: 17px;
height: 17px;
background: #fff;
}
.filter-cond label span::after{
content: "";
background: #7AA897;
display: block;
position: absolute;
left: 3px;
top: 7px;
width: 11px;
height: 11px;
transition: .4s;
opacity: 0;
border-radius: 3px;
}
.filter-cond input[type="checkbox"]:checked + span::after{
opacity:1;
}



/* ==================================================================================

second_title

================================================================================== */
.second_title {
position: relative;
}
.second_title img {
height: 25vh;
object-fit: cover;
}
.second_title .title_set {
position: absolute;
left: 0;
top: 35%;
color: #fff;
font-size: 1.8em;
width: 100%;
text-align: center;
line-height: 1.5;
}
.second_title .title_set .font_e {
font-size: 0.4em;
letter-spacing: 5px;
}

.second_title_bottom {
text-align: center;
font-size: 1.5em;
line-height: 1.5;
padding: 20px 5%;
position: relative;
}
.second_title_bottom + .state_area ul {
padding-top: 0;
}

.second_title_bottom .occupation {
	font-size: 0.8em;
	padding: 10px 0;
}

/* 募集している求人一覧
======================================== */
.job_data_box .job_list {
}

.jop_box .btn_bace,
.case_area .btn_bace,
.column_area .btn_bace {
text-align: center;
margin: 20px 0;
}

.job_data_box .table_list_01 dt,
.job_data_box .table_list_01 dd,
.company_data_02 .table_list_01 dt,
.company_data_02 .table_list_01 dd {
width: 100%;
}
.job_data_box .table_list_01 dt,
.company_data_02 .table_list_01 dt {
padding: 10px 5%;
}
.job_data_box .table_list_01 dd,
.company_data_02 .table_list_01 dd {
    padding: 10px 0 30px;
border-bottom: none;
}
.job_data_box .btn_bace {
padding: 0 0 30px 0;
}



/* ==================================================================================

都道府県からブライダルの求人を探す

================================================================================== */
.prefecture_area {
padding: 20px 0 0 0;
}
.prefecture_area .map {
display: none;
}
.prefecture_area .prefecture_list {
padding: 0 5%;
}

.prefecture_list .prefecture_map {
}
.prefecture_list .prefecture_map .box {
border: 1px solid #ABBBB5;
border-radius: 3px;
background: rgba(255,255,255,0.8);
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
margin: 0 0 15px 0;
}
.prefecture_list .prefecture_map .box:nth-child(2n) {
margin-right: 0;
}

.prefecture_list .prefecture_map .box .area {
color: #7AA897;
text-align: center;
border-bottom: 1px solid #ABBBB5;
padding: 7px 0;
font-size: 1.2em;
}
.prefecture_list .prefecture_map .box ul {
display: flex;
flex-wrap:wrap;
padding: 10px;
line-height: 1.6;
}
.prefecture_list .prefecture_map .box li {
width: 23.5%;
margin: 0 2% 0 0;
position: relative;
padding: 0 0 0 20px;
}
.prefecture_list .prefecture_map .box li:nth-child(4n) {
margin-right: 0;
}
.prefecture_list .prefecture_map .box li:before {
content: "";
background: #7AA897;
width: 5px;
height: 5px;
border-radius: 50%;
position: absolute;
left: 8px;
top: 12px;
}
.prefecture_list .prefecture_map .box a {
padding: 4px 0;
display: block;
}
.prefecture_list .prefecture_map .box a:hover {
color: #7AA897;
}

.prefecture_area .map {}
.prefecture_area .map img {
}
.prefecture_area .map img {
width: 100%;
}



/* ==================================================================================

転職の流れ

================================================================================== */
.flow_area {
padding: 20px 0 10px 0;
}
.flow_area ul {
}
.flow_area li {
position: relative;
margin: 0 0 30px 0;
}
.flow_area li:last-child {
margin-right: 0;
}

.flow_area .text {
}
.flow_area .img {
    overflow: hidden;
    width: 60%;
    margin: 0 auto;
}
.flow_area .img img {
border-radius: 1000px;
}

.flow_area li .font_e {
color: #7AA897;
    position: absolute;
    left: 20px;
    top: -15px;
    font-size: 4em;
}
.flow_area li .font_m {
font-size: 1.5em;
    margin: 20px 0 10px 0;
    text-align: center;
}



/* ==================================================================================

事例

================================================================================== */
.case_area {
padding: 20px 0 10px 0;
}
.case_area li .font_e {
color: #B9D1C9;
    text-align: center;
    font-size: 0.9em;
    display: block;
    letter-spacing: 4px;
    margin: 10px 0 -20px 0;
    line-height: 1;
}
.case_area li .font_e span {
font-size: 0.7em;
}
.case_area .title {
line-height: 1.3;
font-size: 0.9em;
display: inline-block;
}



/* ==================================================================================

新着コラム

================================================================================== */
.column_area {
padding: 20px 0 10px 0;
}
.column_area ul {
margin: 0 0 30px 0;
}
.column_area ul li {
margin: 0 0 20px 0;
}
.column_area li span {
display: block;
}
.column_area ul li a {
display: flex;
}
.column_area ul li a .img {
width: 30%;
margin: 0 5% 0 0;
}
.column_area ul li a .img img {
width: 100%;
}
.column_area ul li a span {
width: 70%;
}



/* ==================================================================================

よくある質問

================================================================================== */
.faq_area {
}
.faq_area ul {}
.faq_area li {
margin: 0 0 15px 0;
padding: 0 0 15px 0;
border-bottom: 1px solid #D5D9D7;
}
.faq_area li:nth-child(2n) {
margin-right: 0;
}
.faq_area li span {
color: #7AA897;
position: absolute;
left: 5px;
    top: -4px;
    font-size: 20px;
}
.faq_area .title,
.faq_area p {
position: relative;
padding: 0 0 0 27px;
}
.faq_area .title {
font-size: 1.2em;
}
.faq_area p {
margin: 10px 0 0 0;
}



/* ==================================================================================

新着求人

================================================================================== */
.job_list {
padding: 20px 0 10px 0;
}
.job_list .img {}
.job_list .img img {
object-fit: cover;
}
.job_list .name {
margin: 10px 0 0 0;
line-height: 1.3;
font-size: 0.8em;
}



/* ==================================================================================

feature_area

================================================================================== */
.feature_area {
padding: 30px 0;
}
.feature_area img {
height: 30vh;
    object-fit: cover;
}
.feature_area li {
margin: 0;
}
.feature_area .text {
padding: 20px 0 30px;
}
.feature_area .text .font_e {
font-size: 3em;
color: #B9D1C9;
line-height: 1;
}
.feature_area .text .title {
font-size: 1.5em;
margin: 10px 0;
}

.feature_area .btn_bace {
margin: 0;
    text-align: center;
    padding: 0 5%;
}



/* ==================================================================================

top_introduction_area

================================================================================== */
.top_introduction_area {
position: relative;
}
.top_introduction_area .text {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
text-align: center;
width: 90%;
}
.top_introduction_area .text img {
width: 90%;
}
.top_introduction_area .text .title {
font-size: 1.3em;
margin: 20px 0 10px;
}
.top_introduction_area .text p {
text-align: left;
margin: 0 auto;
}
.top_introduction_area .text .btn_bace {
margin: 30px 0 0 0;
}
.top_introduction_area .img img {
height: 60vh;
object-fit: cover;
}



/* ==================================================================================

メインビジュアル

================================================================================== */
.mv {
height: 100vh;
}
.mv .box {
position: absolute;
top: 50%;
left: 5%;
transform: translateY(-50%);
color: #fff;
width: 90%;
}
.mv .logo {
margin: 0 0 40px 0;
}
.mv .logo img {
width: 90%;
}
.mv .logo p {
margin: 15px 0 0 0;
letter-spacing: 1px;
}
.mv .text .title {
font-size: 2em;
line-height: 1.3;
margin: 0 0 20px 0;
}
.mv .text p {
margin: 0 0 40px 0;
}
.mv .text a {
text-align: center;
}
.mv .slick-slide img {
height: 100vh;
object-fit: cover;
}



/* ==================================================================================

footer

================================================================================== */
.footer {
background: #ABBBB5;
color: #fff;
padding: 0 0 60px 0;
}
.footer .box {
padding: 20px 0;
}

.footer .box .link {
text-align: center;
    padding: 20px 0 0 0;
}
.footer .box .link p {
font-size: 0.9em;
margin: 0 0 15px 0;
}
.footer .box .link a {
color: #fff;
    border: 1px solid #fff;
    border-radius: 100px;
    padding: 9px 0;
    display: inline-block;
    font-size: 1.2em;
    letter-spacing: 1px;
    position: relative;
    transition: all 500ms cubic-bezier(0.215,0.610,0.355,1.000);
    width: 90%;
}
.footer .box .link a:hover {
background: rgba(255,255,255,0.1);
}
.footer .box .link a:before {
content: "";
    width: 7px;
    height: 7px;
    position: absolute;
    left: 20px;
    top: 20px;
    border: solid #fff;
    border-width: 0 1px 1px 0;
transform: rotate(-45deg);
}

.footer .menu_list {
display: flex;
flex-wrap:wrap;
padding: 0 5%;
}
.footer .menu_list ul {
width:49%;
margin:0 2% 20px 0;
}
.footer .menu_list ul:nth-child(2n) {
margin-right: 0;
}
.footer .menu_list a {
color: #fff;
padding: 0 0 5px 20px;
display: block;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
position: relative;
font-size: 0.9em;
}
.footer .menu_list a:hover {
color: #DDE3E1;
}
.footer .menu_list a:before {
content: "";
width: 2px;
height: 1px;
position: absolute;
left: 10px;
top: 17px;
background: #fff;
transition: all 300ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.footer .menu_list a:hover:before {
width: 8px;
left: 3px;
}

.footer .data {
text-align: center;
}
.footer .data .logo_box {
}
.footer .data .logo_box a {
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
}
.footer .data .logo_box a:hover {
opacity: 0.5;
}
.footer .data .logo {}
.footer .data .logo img {
width: 150px;
}
.footer .data .sns_btn {
display: flex;
justify-content: center;
margin: 20px 0 0 0;
}
.footer .data .sns_btn li {
margin: 0 0 0 15px;
}

.footer .data .btn_bace {
display: none;
}
.footer .data .btn_bace a {}

.footer .copy {
text-align: center;
font-size: 0.8em;
padding: 0 0 15px 0;
}

.footer_text {
padding: 30px 0;
}

.pagetop {
position: fixed;
right: 10px;
bottom: 75px;
}
.pagetop a {
width: 40px;
height: 40px;
display: inline-block;
background: rgba(152,166,160,0.60);
position: relative;
vertical-align: bottom;
opacity: 0.8;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
mix-blend-mode: multiply;
}
.pagetop a:before {
content: "";
height: 12px;
width: 12px;
border: solid #fff;
border-width: 1px 1px 0 0;
transform: rotate(-45deg);
position: absolute;
left: 15px;
top: 19px;
}
.pagetop a:hover {
opacity: 1;
}



/* ==================================================================================

header

================================================================================== */
.header {
position: fixed;
top: 0;
width: 100%;
min-width: 1000px;
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
z-index: 100;
height: 50px;
}
.header.fixed {
background: linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0));
}

.header .logo {
position: fixed;
left: 14px;
top: 9px;
}
.header .logo img {
transition: all 1000ms cubic-bezier(0.215,0.610,0.355,1.000);
width: 200px;
}
.header .logo p {
color: #fff;
line-height: 1.6;
margin: 25px 0 0 0;
}
.header .logo .logo_02,
.header.fixed .logo .logo_03{
display: none;
}
.header.fixed .logo .logo_02 {
display: block;
}

.header .header_menu {
position: absolute;
right: 25px;
top: 35px;
display: flex;
}

.header .menu {}
.header .menu li {}
.header .menu a {}
.header .menu a:before {}
.header .menu a:hover:before {}


/* ==================================================================================

header btn

================================================================================== */
.header .btn_bace {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
padding: 8px 0 2px 0;
background: hsla(158,21%,57%,0.80);
}
.header .btn_bace a {
width: 46.5%;
margin: 0 1.5%;
box-sizing: border-box;
font-size: 0.9em;
}
.header .btn_bace a:last-child {
margin-left: 0;
}



/* ==================================================================================

header fixed

================================================================================== */



/* ==================================================================================

タイトル

================================================================================== */

/* title_01
======================================== */
.title_01 {
font-size: 0.8em;
text-align: center;
margin: 0 0 20px 0;
}
.title_01 .font_e {
color: #ACC9BF;
position: relative;
padding: 10px 0;
margin: 0 0 5px 0;
display: inline-block;
letter-spacing: 3px;
}
.title_01 .font_e:before {
content: "";
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
height: 1px;
width: 120%;
background: #D1DBD7;
}
.title_01 .font_m {
font-size: 2em;
}

/* title_02
======================================== */
.title_02 {
text-align: center;
position: relative;
font-size: 1.5em;
border-bottom: 1px solid #ECF0EF;
padding: 10px 0;
margin: 30px 0;
}




/* ==================================================================================

ボタン

================================================================================== */
.job_list .btn_bace,
.case_area .btn_bace {
padding: 0 5%;
}


.btn_bace {}
.btn_bace [class*="btn_"] {
border-radius: 100px;
padding: 12px 0 12px 10px;
text-align: center;
position: relative;
display: inline-block;
overflow: hidden;transition: all 500ms cubic-bezier(0.215,0.610,0.355,1.000);
letter-spacing: 1px;
background: #fff;
font-size: 1.2em;
width: 100%;
}
.btn_bace [class*="btn_"] span {
position: relative;
z-index: 1;
}
.btn_bace [class*="btn_"]:before,
.btn_bace [class*="btn_"]:after {
position: absolute;
content: "";
transition: all 500ms linear;
}
.btn_bace [class*="btn_"]:before {
width: 25px;
height: 25px;
background: #fff;
border-radius: 50%;
left: 8px;
top: 50%;
transform: translateY(-50%);
box-shadow: 0 0 10px rgba(83,115,103,0.5);
}
.btn_bace [class*="btn_"]:after {
width: 6px;
height: 6px;
border: solid #7AA897;
border-width: 1px 1px 0 0;
transform: rotate(45deg) translateY(-50%);
left: 15px;
top: 48%;
}

.btn_bace .btn_big {
padding: 12px 10px 12px 40px;
line-height: 1.3;
font-size: 1em;
}
.btn_bace .btn_big:before {
width: 30px;
height: 30px;
left: 8px;
}
.btn_bace .btn_big:after  {
width: 6px;
height: 6px;
left: 17px;
}


/* btn_white
======================================== */
.btn_bace .btn_white {
background: #fff;
color: #7AA897;
}
.btn_bace .btn_white:hover {
background: #DFE9E5;
}
.btn_bace .btn_white:before {
background: #7AA897;
}
.btn_bace .btn_white:hover:before {
background: #93B8AB;
}
.btn_bace .btn_white:after {
border: solid #fff;
border-width: 1px 1px 0 0;
}

/* btn_green
======================================== */
.btn_bace .btn_green {
background: #7AA897;
color: #fff;
}
.btn_bace .btn_green:hover {
background: #8DB4A6;
}
.btn_bace .btn_green:hover:before {
background: #DFE9E5;
}

/* btn_gray
======================================== */
.btn_bace .btn_gray {
}
.btn_bace .btn_gray:hover {
background: #E1E7E5;
}
.btn_bace .btn_gray:before {
background: #ABBBB5;
}
.btn_bace .btn_gray:hover:before {
background: #819990;
}
.btn_bace .btn_gray:after {
border: solid #fff;
border-width: 1px 1px 0 0;
}
.btn_bace .btn_gray:hover:after {
}

/* btn_boder
======================================== */
.btn_bace .btn_boder {
border: 1px solid #ABBBB5;
background: none;
}
.btn_bace .btn_boder:hover {
background: #DFE9E5;
border: 1px solid #DAE1DF;
}
.btn_bace .btn_boder:before {
background: #7AA897;
}
.btn_bace .btn_boder:hover:before {
background: #8DB4A6;
}
.btn_bace .btn_boder:after {
border: solid #fff;
border-width: 1px 1px 0 0;
}

/* btn_black
======================================== */
.btn_bace .btn_black {
background: #45534E;
color: #fff;
}
.btn_bace .btn_black:hover {
background: #52635D;
}
.btn_bace .btn_black:before {
background: #fff;
}
.btn_bace .btn_black:hover:before {
background: #CFD7D4;
}
.btn_bace .btn_black:after {
border: solid #45534E;
border-width: 1px 1px 0 0;
}
.btn_bace .btn_black:hover:after {
}

/* btn_red
======================================== */
.btn_bace .btn_red {
background: #CBA597;
color: #fff;
}
.btn_bace .btn_red:hover {
background: #D6B9AD;
}
.btn_bace .btn_red:before {
background: #fff;
}
.btn_bace .btn_red:hover:before {
background: #F6EFED;
}
.btn_bace .btn_red:after {
border: solid #CBA597;
border-width: 1px 1px 0 0;
}
.btn_bace .btn_red:hover:after {
}



/* ==================================================================================

共通　画像拡大

================================================================================== */
.img_zoom {
overflow:hidden;
}
.img_zoom .img {
overflow: hidden;
}
.img_zoom img {
transition: all 3000ms cubic-bezier(0.215,0.610,0.355,1.000);
z-index:1;
-moz-transform: scale(1.001) rotate(0.001deg);
-webkit-transform: scale(1.001) rotate(0.001deg);
-ms-transform: scale(1.001) rotate(0.001deg);
transform: scale(1.001) rotate(0.1deg);
vertical-align: bottom;
}
.img_zoom:hover img {
-moz-transform: scale(1.05) rotate(0.001deg);
-webkit-transform: scale(1.05) rotate(0.001deg);
-ms-transform: scale(1.05) rotate(0.001deg);
transform: scale(1.05) rotate(0.1deg);
}





}
/* 【PC】ウィンドウ幅が769px以上の場合に適用するCSS */





/* 【header】ウィンドウ幅が1100px以下の場合に適用するCSS
====================================== */
@media screen and (max-width: 1100px) {

}
/* 【SP】ウィンドウ幅が768px以下の場合に適用するCSS */




@keyframes fixed {
from {
top: -500px;
}
to {
top: 0;
}
}
