@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/*--------------------------------------------*
 *  フォント変更
 *--------------------------------------------*/
/*@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;400;500;700&display=swap');*/
body{
	--swl-font_family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	/*--swl-font_weight: 400;*/
}
/*
p{
	font-weight: 400;	
}
*/
/*--------------------------------------------*
 *  余白
 *--------------------------------------------*/
#content.l-content{
	margin-top:0;
	margin-bottom:4em;
	padding:0;
}

.p-archiveContent{
    max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px) * 2);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--swl-pad_container, 0);
    padding-right: var(--swl-pad_container, 0);	
}

@media (min-width: 960px) {
    .half-block {
        max-width: 75%;
        margin-left: auto;
        margin-right: auto;
    }
}

/*--------------------------------------------*
 *  ヘッダー 
 *--------------------------------------------*/
.l-header,
.-body-solid .l-fixHeader,
[data-scrolled=true] .-body-solid .l-fixHeader{
	border-radius: 0 0 20px 20px;
}
.l-header,
.l-fixHeader:before{
    background: #ffffffE6;
	border-radius: 0 0 20px 20px;
}
.l-header{
    box-shadow: none !important;
}
.l-header__bar{
	color: #828282;
    background: none;
    border-bottom: 1px solid #BFBFBF;
    margin: 0 2em;
    width: calc(100% - 4em);	
}
.l-header__bar .c-catchphrase{
	padding: 0.5em 0;
}
.c-gnavWrap,
.c-gnav>.menu-item{
	flex-grow: 2;
}

@media (min-width: 960px) {
	.l-header{
    	position: absolute !important;
	}
	.l-header,
	.-body-solid .l-fixHeader,
	[data-scrolled=true] .-body-solid .l-fixHeader{
		max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)* 2);
		left: 50%;
		transform: translateX(-50%) translateY(0) !important;
	}
}

/*スマホヘッダー*/
.l-header__inner .sp-catchphrase {
	font-size: 0.9rem;
    letter-spacing: var(--swl-letter_spacing, .2px);
	overflow-wrap: break-word;
	word-break: keep-all;
}

.p-spMenu {
    height: 50vh;
}
.-right .p-spMenu__inner {
	width: 65vw;
	padding-top: 0;
	top: 60px; /*ヘッダーの高さと同じ*/
    left: 0;
    -webkit-transform: translateX(-75vw);
    transform: translateX(-75vw);
    border-radius: 0 1.5em 1.5em 0;
    overflow: hidden;
}
[data-spmenu=opened] .l-header__menuBtn .icon-menu-thin:before{
    content: "\e920";
}

[data-spmenu=opened] .p-spMenu__inner {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.-right .p-spMenu__inner .p-spMenu__body{
    padding: 10vw 4vw;
}
.-right .p-spMenu__inner .c-listMenu a{
    border-bottom: none;
}
.l-header__customBtn,
.-right .p-spMenu__inner .c-listMenu a:before{
    display: none;
}

@media (min-width: 960px) {
	.l-header__inner .sp-catchphrase {
		display: none;
	}
}
@media (max-width: 960px) {
	.l-header__logo{
		margin-right: 1rem;
	}
	.l-header .l-header__inner{
        background: #fff;
        -webkit-justify-content: space-between;
        justify-content: space-between;
	}
}


.l-header .w-header__item.widget_block,
.l-fixHeader .w-header__item.widget_block{
	margin: 0.5em 0;
}
.l-header .w-header__item.widget_block .menu-pro > a,
.l-fixHeader .w-header__item.widget_block .menu-pro > a,
.l-footer .menu-pro > a{
	font-weight: normal;
	padding: 0.5em;
}

/*--------------------------------------------*
 *  コンテンツヘッダー
 *--------------------------------------------*/
.post-type-archive-membership .l-topTitleArea{
    align-items: center;
    display: flex;
    margin: 0;
    overflow: hidden;
    padding: 1.5em 0;
    position: relative;
    width: 100%;
	min-height: 11em;
}
.post-type-archive-membership .l-topTitleArea .l-topTitleArea__body{
	color: #ffffff;
	z-index: 4;
}

.l-topTitleArea .c-pageTitle,
.l-topTitleArea__body .c-postTitle .c-postTitle__ttl{
    text-align: center;
	font-weight: 400;
	font-size: clamp(24px, 2.25vw, 36px);
	letter-spacing: 0.25em;
}


@media (min-width: 600px) {
	.l-topTitleArea,
	.post-type-archive-membership .l-topTitleArea,
	.single-membership .l-topTitleArea{
		min-height: 410px;
	}
}


/*パンくずリスト*/
.single-membership #breadcrumb .p-breadcrumb__item:nth-of-type(n+3){
	/*display: none;*/
}



/*--------------------------------------------*
 *  フッター 
 *--------------------------------------------*/
.w-footer__box{
    border-top: 5px solid var(--color_main);
	padding-top: 0;
}
.w-footer__box .footer-menu > p{
    display: none;
}
.w-footer__box .menu-footer-menu-container{
	margin-bottom: 0;
}
.w-footer__box #menu-footer-menu{
    display: flex;
    justify-content: space-evenly;
    list-style: none;
    padding: 1em;
    border-bottom: 1px solid #828282;
}

@media (max-width: 960px) {
    .w-footer__box .footer-menu{
        order: 1;
    }
	.w-footer__box #menu-footer-menu{
		flex-direction: column;
		border-bottom: none;
	}
    .w-footer__box .footer-logo{
        order: 3;
		padding-top: 1.5em;
		border-top: 1px solid #828282;
    }
    .w-footer__box .footer-logo .wp-block-image{
        text-align: left;
		width: 30%;
    }
    .w-footer__box .footer-address{
        order: 4;
    }
    .w-footer__box .footer-policy{
        order: 2;
    }
    .w-footer__box .footer-policy .menu-pro{
        padding-top: 1.5em;
    }
    /*.w-footer__box .footer-policy .swell-block-linkList{
        padding: 1.75em 1em;
    }*/
	.w-footer__box #menu-footer-menu li,
	.w-footer__box .footer-policy .swell-block-linkList li{
		line-height: 2;
	}
}


/*--------------------------------------------*
 *  ブログ
 *--------------------------------------------*/
.single-post #content,
.single-membership #content{
	margin-top: 3em;
}
.single-post #sidebar h2,
.single-membership #sidebar h2{
	font-size: 1.25em;
}
/*---------- 会員切り替え ----------*/
#body_wrap.single-membership .latest-news,
#body_wrap.single-post .latest-membership{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/*--------------------------------------------*
 *  メインビジュアル
 *--------------------------------------------*/
.p-mainVisual__slideTitle {
    line-height: 2 !important;
    letter-spacing: 0.5rem;
}


/*--------------------------------------------*
 *  タイトル
 *--------------------------------------------*/
.post_content h2,
.post_content h3,
.post_content h4,
h1.c-postTitle__ttl,
strong{
	/*font-weight: 400;*/
}

h2:not(.p-postList__title),
h1.c-postTitle__ttl{
	font-size: clamp(24px, 2.25vw, 36px);
	letter-spacing: 0.15em;
	margin-top: 1em;
	margin-bottom: 1em;
}

h3:not(.p-postList__title,.swell-block-accordion__label){
	font-size: clamp(20px, 1.75vw, 32px);
}


/*--------------------------------------------*
 *  WebParts
 *--------------------------------------------*/
/* 検索画面 */
#webpart .po-webparts-container.style1 .po-checkbox[data-alias="Job.P_JobCategory"] div span:first-of-type,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox[data-alias="Job.P_JobCategory"] div span:first-of-type{
	font-weight: bold;
	width: 100% !important;
}
#webpart .po-webparts-container.style1 .po-checkbox[data-alias="Job.P_Area"] div span:first-of-type,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox[data-alias="Job.P_Area"] div span:first-of-type,
div.po-webparts-modal-container.style1 .po-input[data-alias="Resume.P_ExpectArea"] div span:first-of-type{
	font-weight: bold;
	width: calc(100% - 3.5em) !important;
}
#webpart .po-webparts-container.style1 .po-checkbox[data-alias="Job.P_JobCategory"] div input:first-of-type,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox[data-alias="Job.P_JobCategory"] div input:first-of-type,
#webpart .po-webparts-container.style1 .po-checkbox div:has(input[value="Option.U_000547"]),
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox div:has(input[value="Option.U_000547"]){
	display: none;
}


#webpart .po-webparts-container.style1 .po-checkbox div,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox div{
	font-size: 1rem !important;
	display: flex;
    flex-wrap: wrap;
	align-items: baseline;
}

#webpart .po-webparts-container.style1 .po-checkbox div span,
#webpart .po-webparts-container.style1 input[type="radio"] + span,
.po-webparts-modal-container.style1 .po-checkbox div span,
.po-webparts-modal-container.style1 input[type="radio"] + span{
	margin-right: 2rem !important;
}

#webpart .po-webparts-container.style1 .po-checkbox div span,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox div span{
	width: calc(20% - 3.5em);
}

#webpart .po-webparts-container.style1 .po-checkbox[data-alias="Job.P_JobCategory"] div span,
.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox[data-alias="Job.P_JobCategory"] div span{
	width: calc(50% - 3.5em);
}

/* 求人リスト */
#webpart .po-webparts-container.style1 .po-job-item{
    border: 1px solid #dcdcdc;
    padding: 1em 2em;
    border-radius: 20px;	
	margin-bottom: 2em;	
}
#webpart .po-webparts-container.style1 table{
	border: none;
}
#webpart .po-webparts-container.style1 tr,
#webpart .po-webparts-container.style1 th,
#webpart .po-webparts-container.style1 td{
	background: transparent;
	border: none;
	text-align: left;
}
#webpart .po-webparts-container.style1 tr{
	border-bottom: 1px solid #dcdcdc;
}
#webpart .po-webparts-container.style1 th{
    padding-left: 1em;
	padding-bottom: 0;
    position: relative;
	font-weight: 400;
}
#webpart .po-webparts-container.style1 th::before{
    content: "";
    position: relative;
    left: -0.5em;
    border-right: 5px solid;
	color: var(--color_main);
}
#webpart .po-webparts-container.style1 td{
    padding: 0.5em 0.5em 0;
}

.po-webparts-container.style1 .po-checkbox div input[type="checkbox"],
.po-webparts-modal-container.style1 .po-contents-wrapper div input[type="checkbox"]{
	width: 1rem !important;
}
div.po-webparts-container.style1 .po-input select,
.po-webparts-modal-container.style1 .po-contents-wrapper select{
	height: 2.25rem !important;	
}


/* ボタン */
#webpart .po-webparts-container.style1 .po-buttons,
#webpart .po-webparts-container.style1 .po-job-footer{
    margin-top: 1em;
    text-align: center;	
}

#webpart .po-webparts-container.style1 .po-button-search,
#webpart .po-webparts-container.style1 .po-button-register,
#webpart .po-webparts-container.style1 .po-button-seedetail,
#webpart .po-webparts-container.style1 .po-button-seemore,
.po-webparts-modal-container.style1 .po-button-search,
.po-webparts-modal-container.style1 .po-button-apply,
.po-webparts-modal-container.style1 .po-button-send{
    display: block;
    position: relative;
	padding: 0.5em 4em;
    font-size: 1em;
    color: #fff !important;
    border: none;
    border-radius: 4px;
    text-align: center;
    box-shadow: 0 2px 2px rgba(0,0,0,.1),0 4px 8px -4px rgba(0,0,0,.2) !important;
	transition: box-shadow .25s;
}

#webpart .po-webparts-container.style1 .po-button-search,
#webpart .po-webparts-container.style1 .po-button-seemore{
    background: #05b5af;
	padding: 0.5em 6em;
    margin-left: auto;
    margin-right: auto;
}
#webpart .po-webparts-container.style1 .po-button-seedetail{
    background: #0aa3cd;
}
#webpart .po-webparts-container.style1 .po-button-register,
.po-webparts-modal-container.style1 .po-button-apply,
.po-webparts-modal-container.style1 .po-button-send{
	display: inline-block;
    background: #ED9427;
}
.po-webparts-modal-container.style1 .po-button-search{
	display: inline-block;
    background: #05b5af;
}
#webpart .po-webparts-container.style1 .po-button-search:hover,
#webpart .po-webparts-container.style1 .po-button-register:hover,
#webpart .po-webparts-container.style1 .po-button-seedetail:hover,
#webpart .po-webparts-container.style1 .po-button-seemore:hover,
.po-webparts-modal-container.style1 .po-button-apply:hover,
.po-webparts-modal-container.style1 .po-button-send:hover,
.po-webparts-modal-container.style1 .po-button-search:hover{
    background: var(--color_main) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 12px 24px -12px rgba(0, 0, 0, .2);
	transition: box-shadow .25s;
}


/* 詳細モーダル */
.po-webparts-modal-container.style1,
.po-webparts-modal-container.style1 .po-contents-wrapper{
    height: 75vh !important;
    min-height: 75vh !important;
}

.po-webparts-modal-container.style1 .po-no-privacy .po-contents{
    height: calc(100% - 3em * 2.5) !important;	
}
.po-webparts-modal-container.style1 .po-header{
    background: #0aa3cd !important;
    height: 3em !important;
    color: #fff !important;
    line-height: 2em !important;	
}
.po-webparts-modal-container.style1 .po-contents table{
    width: 85% !important;
    margin: 2em auto !important;	
}
.po-webparts-modal-container.style1 .po-contents tr{
    background: none !important;
	border-bottom: 1px solid #dcdcdc !important;
    line-height: 1.4 !important;	
}
.po-webparts-modal-container.style1 .po-contents th{
    border: none !important;
	text-align: left !important;
	padding: 0.5em 0.5em 0.5em 1em !important;
    position: relative !important;
	font-weight: 400 !important;
}
.po-webparts-modal-container.style1 .po-contents th::before{
    content: "";
    position: relative;
    left: -0.5em;
    border-right: 5px solid;
	color: var(--color_main);
}
.po-webparts-modal-container.style1 .po-contents td{
    padding: 0.5em 0.5em !important;
}
.po-webparts-modal-container.style1 .po-contents td > *{
    display: block !important;
}

.po-webparts-modal-container.style1 .po-buttons{
    height: 4em !important;
    padding: 0.5em !important;
    line-height: 2em !important;
}


.po-webparts-container.style1 .po-job-item .po-job-separator,
.po-webparts-modal-container.style1 .po-remark{
	display: none !important;
}

/* エントリーフォーム */
.po-required-elem::before{
	content:"※";
	color: #ED9427;
}

@media (max-width: 767px) {
	#webpart div.po-webparts-container.style1{
		width: 100%;
		min-width: 100%;
	}
	#webpart .po-webparts-container.style1 th,
	.po-webparts-modal-container.style1 .po-contents th,
	#webpart .po-webparts-container.style1 td,
	.po-webparts-modal-container.style1 .po-contents td{
		display: block !important;
		width: 100% !important;
	}
	
	#webpart .po-webparts-container.style1 .po-checkbox div,
	.po-webparts-modal-container.style1 .po-checkbox div{
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;		
	}
	#webpart .po-webparts-container.style1 .po-checkbox .po-checkbox-parent + span,
	.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox-parent + span{
		width: calc(98% - 3rem);
    	flex-grow: 2;
	}
	#webpart .po-webparts-container.style1 .po-checkbox .po-checkbox-children + span,
	.po-webparts-modal-container.style1 .po-contents-wrapper .po-checkbox-children + span{
		width: calc(48% - 3rem);
    	flex-grow: 2;
	}
	
	.po-webparts-modal-container.style1{
		min-height: 80vh !important;
    	width: 90% !important;
    	left: 5% !important;
	}
	
	.po-webparts-modal-container.style1 .po-no-privacy .po-contents{
		height: calc(100% - 3em * 2) !important;
	}
	
	.po-webparts-container.style1 .po-checkbox div input[type="text"],
	.po-webparts-modal-container.style1 .po-contents-wrapper div input[type="text"]{
		width: 100% !important;
	}
	
	div.po-webparts-container.style1 .po-header-right{
		display: flex;
		justify-content: space-between;
	}
	#webpart .po-webparts-container.style1 .po-header-right .po-button-search,
	#webpart .po-webparts-container.style1 .po-header-right .po-button-register{
		padding: 0.5em !important;
	}
	
}

/*--------------------------------------------*
 *  ボタン
 *--------------------------------------------*/
.swell-block-button.is-style-btn_normal:not(.red_,.green_,.blue_){
    --the-btn-color: #ED9427;	
}
.swell-block-button.is-style-btn_normal.pink_{
    --the-btn-color: #DD7B7B;	
}
.swell-block-button.is-style-btn_line a{
	background-color: #ffffff !important;
}

.swell-block-button a:hover{
	background-color: var(--color_main) !important;
}

.swell-block-button.is-style-btn_normal.red_{
    --the-btn-color: var(--the-btn-color2);
}

/*---------- 会員ボタン ----------*/
#body_wrap[data-member="member-logout"] .logined-btn,
#body_wrap[data-member="member-login"] .logouted-btn{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/*--------------------------------------------*
 *  記事リスト
 *--------------------------------------------*/
.p-postList.-type-simple,
.p-postList.-type-simple .p-postList__item > a{
    border: none;
}
.p-postList.-type-simple .p-postList__meta .c-postTimes__posted::before,
.p-postList.-type-simple .p-postList__meta .p-postList__cat::before{
    display: none;
}
.p-postList.-type-simple .p-postList__title{
    font-weight: var(--swl-font_weight);
}



/*--------------------------------------------*
 *  事業内容
 *--------------------------------------------*/
.business h3.wp-block-heading{
	font-size: 1.2rem;
}
.business .business-column .swell-block-columns__inner{
    justify-content: space-around;
}

.business .business-column .has-medium-font-size{
    padding-bottom: 0.5em;
    margin-bottom: 0.75em;
    border-bottom: 1px solid var(--color_main);
}

.business .business-column .swell-block-column{
    display: flex;
	flex-direction: column;
}
.business .business-column .swell-block-column .business-text{
    flex-grow: 2;
}



/*--------------------------------------------*
 *  メールフォーム
 *--------------------------------------------*/
.snow-monkey-form{
    width: clamp(250px, 85vw, 100%);
    margin: auto;
}
.snow-monkey-form .smf-item__label{
    font-weight: var(--swl-font_weight);
}
.snow-monkey-form .smf-text-control__control{
    width: 100%;
}

.snow-monkey-form .smf-action button.smf-button-control__control{
    border: none;
    color: #fff;
    background-color: var(--color_main);
    background-image: linear-gradient(100deg, var(--color_main) 0%, var(--color_main) 100%);
    box-shadow: 0 2px 2px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
    padding: 0.75em 5em;
    margin: 10px auto 2em;
}

.snow-monkey-form .smf-action{
    margin-bottom: 0;
}

@media (min-width: 600px) {
	.snow-monkey-form .smf-item__label{
		text-align: center;
	}
}
