@charset "utf-8";
/* CSS Document */

/**---------レスポンシブ用＿共通設定（フォント・ボタン・テキスト等）----------**/


/*-----------767px~1919pxに適用されるCSS（中間～タブレット横用）-----------*/
@media screen and (min-width: 767px) and (max-width: 1919px) {
	
/*------------------ヘッダー------------------*/
	
#header_wrapper{
	z-index: 90;
}

#header_box{
	left: 0;
	right: 0;
	z-index: 100;
}

header nav ul li{
	flex-wrap: wrap;
}

/* モーダルCSS */
	
.modalWrapper {
	width: 90%;
	position: absolute;
	border-radius: 30px;
	top: 50%;
	left: 50%;
	transform:translate(-50%,-50%);
	max-width: 960px;
	padding: 10px 30px 50px;
	background-color: #ffffff;
	height : 80%; /*高さ固定*/
    overflow : auto; /*状況に応じて縦スクロールバーが出現*/
}
	
}


/*-----------900px以下に適用されるCSS-----------*/
@media screen and (max-width: 900px) {

.sp_br{
	display: inline-block;
}


/*------------------ヘッダー------------------*/
	
.head-animation {
 	transform: none;
	transition-duration: 0ms;
}
	
#header_wrapper{
	width: 20%;
	height: auto;
	margin: 0;
	z-index: 90;
	transition-duration: 0ms;
}

#header_box{
	width: 0;
	box-sizing: none;
	padding: 0;
	background-color: transparent;
	border-radius: 0;
	z-index: 100;
}

.head_logotext,.head_logo img{
    display: none;
}
	
	
/*------------------フッター------------------*/

#footer_main{
	max-width: 768px;
	text-align: center;
}


.footer_box1{
	display: none;
}
	
.footer_box1_sp{
	display: block;
	margin: 0 auto;
	padding: 0 30px 50px;
}

.footer_right{
	display: block;
	text-align: center;
	margin: 0 auto 30px;
	width: 100%;
}

.line_img{
	float:none;
	margin: -150px auto 30px;
}


.ftext_1{
	color: #2A85F6;
	font-size: 20px;
	margin: 60px auto;
	text-align: left;
}



#footer_ul ul{
	display: block;
	margin: 0 auto 30px;
}

#footer_ul ul li{
	margin-right: 0;
	margin-bottom: 25px;
}


#footer_box2_sp{
	clear: both;
	display: block;
	height: auto;
	width: 100%;
	text-align: center;
}

#footer_box2{
	display: none;
}
	
.footer_logo_sp{
	display: block;
	text-align: center;
}


#footer_sns_sp{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	height: 18px;
	margin-bottom: 55px;
}

.f_icons{
	margin-right: 10px;
}

#f_share{
	height: 13px;
	width: 66px;
}
	
.ftext_2{
	color: #ffffff;
	font-size: 10px;
	line-height: 18px;
	height: 18px;
	letter-spacing: 2px;
	margin-right: 15px;
}
	

#copyright{
	display: block;
}
	
.button_7 {
	display: inline-block;
	font-size: 16px;
	padding: 16px 43px;
	width: auto;
	margin: 0 auto 60px;
}

/**--------ハンバーガーメニュー--------**/
.hmb_logo{
	display: block;
	margin: 30px;
}
	
/*.menu-btn {
	position: fixed;
	top: 30px;
	right: 30px;
	display: flex;
	height: 60px;
	width: 60px;
	justify-content: center;
	align-items: center;
	z-index: 90;
	background-color: #2A85F6;
	opacity: 0.8;
	border-radius: 50%;
	border: 2px solid #ffffff;
}*/

.menu-btn {
	position: fixed;
	top: 25px;
	right: 18px;
	display: flex;
	height: 60px;
	width: 60px;
	justify-content: center;
	align-items: center;
	z-index: 90;
	background-color: #2A85F6;
	border-radius: 50%;
}

.menu-btn-column.menu-btn {
	position: fixed;
	top: 20px;
	right: 5px;
	display: flex;
	height: 45px;
	width: 45px;
	justify-content: center;
	align-items: center;
	z-index: 90;
	background-color: #2A85F6;
	opacity: 0.8;
	border-radius: 50%;
	border: 2px solid #ffffff;
}

.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
	width: 70%;
}

	
#menu-btn-check:checked ~ .menu-btn {
    background-color: #ffffff;
	opacity: 1.0;
}
	
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
	background: #2A85F6;
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
	background: #2A85F6;
	width:100%;
}
#menu-btn-check {
    display: none;
}
	
.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 80;
    background-color: #2A85F6;
	opacity: 0.9;
    transition: all 0.5s;
}
	
#menu-btn-check:checked ~ .menu-content {
    left: 0%;/*メニューを画面内へ*/
}
	
.menu-content ul {
   	float: none;
	margin: 150px auto 0;
}
	
.menu-content ul li {
	display: block;
    list-style: none;
	float: none;
	width: auto;
	height: 20px;
	margin-bottom: 20px;
	margin-right: 0px;
	text-align: center;
}
.menu-content ul li a {
    width: 100%;
    box-sizing: border-box;
    position: relative;
	font-size: 15px;
	list-style: none;
	color: #ffffff;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
}
.hmb_link{
	padding-bottom: 20px;
}

.button {
	padding: 15px;
	background-color: #2A85F6;
	border: 2px solid #ffffff;
}

	
/*-----------サブページ-----------*/
	
#white_box{
	background-color: #ffffff;
	border-radius: 0px;
	padding : 100px 30px 50px;
	height: 100%;
	text-align: left;
	margin-left: calc(((100vw - 100%) / 2) * -1);
 	margin-right: calc(((100vw - 100%) / 2) * -1);
}


#contents_sub{
	display: block;
	padding-top: 100px;
	clear: both;
	text-align: center;
}

#contents_sub_in{
	padding-left: 30px;
	padding-right: 30px;
}
	
}

/*-----------770px以下に適用されるCSS（タブレット縦～スマホ用）-----------*/
@media screen and (max-width: 770px) {
	
	
/*------------------contents------------------*/

#contents{
	display: block;
	width: auto;
	max-width: 768px;
	margin: 0 auto;
	padding: 0 30px;
}

#contents_sub_single {
	display: block;
	width: auto;
	max-width: 768px;
	margin: 0 auto;
	padding: 0 15px;
}

#contents_sub_single .single-column-content {
	padding: 15px;
}
	
#pages{
	display: block;
	width: auto;
	max-width: 768px;
	margin: 0 auto;
	padding: 0 30px;
}
	
#contents * img{
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

#contents_sub_single * img{
	max-width: 100%;
	height: auto!important;
	box-sizing: border-box;
}

/*-----------ボタン-----------*/

#button {
	font-size: 12px;
	padding: 15px 16px;
}


.button_2 {
	font-size: 16px;
	padding: 23px 0;
	display: block;
	margin: 0 30px;
	width: auto;
}

.button_3 {
	font-size: 12px;
}

.button_4 {
	font-size: 16px;
	padding: 16px 0;
	height: auto;
}
	
.button_4_2 {
	font-size: 16px;
	padding: 16px 0;
	margin: 0 30px;
	height: auto;
}

.button_7 {
	display: inline-block;
	font-size: 16px;
	width: auto;
	margin: 0 auto 60px;
}
	
.button_IV {
	font-size: 15px;
	padding: 10px 0;
	margin: 0;
	height: 20px;
	line-height: 20px;
}

/*-----------テキスト-----------*/
.text_2{
	font-size: 15px;
	text-align: left;
}

.text_4{
	text-align: left;
}

.text_5{
	font-size: 25px;
	margin-bottom: 20px;
	text-align: left;
}

.text_6{
	font-size: 15px;
	text-align: left;
}

.text_7{
	font-size: 25px;
	margin-bottom: 50px;
	text-align: left;
}
	
.text_9_abc{
	margin-bottom: 30px;
}

.text_9_abc_1{
	font-size: 15px;
	margin-bottom: 30px;
}
	
.text_9_abc_2{
	font-size: 12px;
	margin-bottom: 20px;
}

.text_10{
	font-size: 13px;
}

.text_11{
	font-size: 30px;
	margin-bottom: 20px;
}

.text_15{
	font-size: 30px;
}
	
.text_16{
	margin-bottom: 35px;
	margin-top: 50px;
}

.text_16_2{
	margin-bottom: 35px;
	margin-top: 30px;
}
	
/*ユーザーインタビュー*/
/*名前*/
.text_21{
	font-size: 18px;
}

/*名前敬称*/
.text_22{
	font-size: 16px;
}

/*メインテキスト*/
.text_23{
	font-size: 13px;
}

.title_1{
	font-size: 25px;
	text-align: left;
}


/*記事ページ　タイトル*/
.text_18_2{
	font-size: 21px;
	font-weight: 600;
	color: #000000;
	text-align: left;
	line-height: 2;
	letter-spacing: 2px;
	display: inline-block;
	padding: 20px 0 50px;
	width: 100%;
}

/*-----------セレクトボックス-----------*/
.select_box{
	margin: 10px 0 40px;
}
/*-----------404エラー-----------*/

#contents_error{
	display: block;
	padding-top: 50px;
	margin-bottom: 80px;
}
	
.error_img{
	margin: 30px auto 0;
}
	
#contents_error img{
	width: 195px;
	height: 270px;
}

/*-----------サンクスページ-----------*/

#contents_thanks{
	padding-top: 50px;
	margin-bottom: 80px;
}

.thanks_img{
	margin: 50px auto 0;
}

#contents_thanks img{
	width: 300px;
	height: 290px;
}
	
/*--TOPに戻るボタン--*/
.top_back{
	margin-top: 35px;
}

/*-----------採用企業様へ-----------*/

#block1,#block2{
  display: block;
  flex-direction: column;
  justify-content: center;
  margin:0 auto;
}

#block1 div,#block2 div{
  width:auto; 
}
	
.point{
	display: block;
	margin-bottom: 50px;
	padding: 0 5%;
	text-align: center;
}

#block1 img,#block2 img{
	width: auto;
}

#block1 .text_13_2,#block2 .text_13_2{
	width: 100%;
	text-align: center;
}


.point_img{
	display: none;
}
	
.sp_point_img{
	display: block;
	width: 100%;
	margin-bottom: 30px;
}

/*-----------案件紹介(page.)-----------*/

.anken_box{
	padding: 20px 0;
	height: 100%;
	margin: 0 0 50px;
}

.description{
	height: auto;
}


.anken_box .anken_bottom{
	display: block;
	bottom: 15px;
}
	
.under_box{
	padding: 0 30px;
	vertical-align: middle;
}
	

/* モーダルCSS */
.modalWrapper {
	width: 90%;
	border-radius: 30px;
	padding: 10px 20px 50px;
}

.entry{
	display: none;
}

.anken_list_item {
	padding: 20px 0;
	height: 100%;
	margin: 0 0 50px;
}

.anken_list_item .detail_content {
	display: block;
}

.anken_list_item p.detail_content_label {
	padding-bottom: 0;
}

.anken_list_item .anken_bottom {
	display: flex;
	justify-content: right;
}
.orderby_select {
	float: none;
}

#search .anken_tag_clouds {
	width: calc(100% + 60px);
	margin: 0 -30px;
}
	
/*-----------案件紹介(single.)-----------*/
.anken_table >li.half{
	width: 100%;
}

.anken_table >li >dl >dt {
	max-width: 50%;
}

.anken_table >li >dl >dd {
	min-width: 50%;
}

.requirements.anken_table >li >dl >dt {
	width: 200px;
}

.requirements.anken_table >li >dl >dd {
	width: calc(100% - 200px);
}

.anken_comment {
	display: block;
}

.anken_comment .comment_staff {
	margin: 0 auto 0.5em;
	display: flex;
	align-items: center;
	width: 80%;
	max-width: 350px;
}

.anken_comment .comment_staff .staff_img {
	width: 50%;
}

.anken_comment .comment_staff .staff_name {
	width: 50%;
	text-align: left;
	padding-left: 0.8em;
}

.anken_comment .comment_content {
	width: 100%;
}

/*-----------お役立ち記事(page.)-----------*/
	
.page_column_box{
	padding: 30px 0 20px;
	margin: 0 auto;
}

.page_capture{
	display: block;
	float: none;
	width: 100%;
	height: auto;
	max-height: 250px;
	text-align: center;
	margin-bottom: 20px;
}

.page_capture img{
	max-width: 310px;
	height: 250px;	
	margin: 0 auto;
	object-fit: cover;
}
	
/*最新記事NEWアイコン*/
.new{
	max-width: 310px;
	margin: 0 auto;
}

.page_column{
	display: block;
	width: 100%;
	height: 250px;
	padding: 0 10px;
}

	
/*-----------お役立ち記事(single.)-----------*/

#column_box{
	display: inline-block;
	padding: 30px;
	width: 100%;
}

.capture{
	display: block;
	float: none;
	width: 100%;
	height: auto;
	margin-right: 0;
	margin-bottom: 20px;
}
.column{
	float: none;
	display: block;
	width: 100%;
	height: 200px;
}
	
/*single_columnタグ*/
	
.single_column_tag li{
	font-size: 10px;
}

/*-----------お役立ち記事＿投稿ページ設定-----------*/

h1{
	font-size: 21px;
	font-weight: 600;
	text-align: left;
	line-height: 1.5;
	letter-spacing: 2px;
	padding-bottom: 20px;
	margin-bottom: 30px;
}

h2{
	font-size: 17px;
	font-weight: 600;
	text-align: left;
	line-height: 1.5;
	letter-spacing: 2px;
	margin-top: 40px;
	margin-bottom: 10px;	
}


h3{
	font-size: 16px;
	font-weight: 600;
	text-align: left;
	line-height: 1.5;
	letter-spacing: 2px;
	margin-top: 30px;
	margin-bottom: 10px;
}


.main_text{
	display: block;
	margin: 30px 0 50px;
	font-size: 17px;
	font-weight: 500;
	color: #000000;
	text-align: left;
	letter-spacing: 2px;
	line-height: 1.8;
}

.sub_text{
	display: block;
	margin-bottom: 30px;
	font-size: 12px;
	font-weight: 500;
	color: #000000;
	text-align: left;
	letter-spacing: 2px;
	line-height: 1.8;
}

.column_content{
	line-height: 1.8;
	margin-bottom: 30px;
	font-size:14px;
}

#white_box ul{
	text-align: left;
}

ul.list li{
	list-style: disc;
	margin-bottom: 10px;
	color: #000000;
	font-weight: 600;
	font-size:16px;
}

ul.list li::marker{
	font-size: 16px;
	color: #2A85F6;
}

ol.list li{
	list-style: decimal;
	margin-bottom: 10px;
	color: #000000;
	font-weight: 600;
	font-size:16px;
}

ol.list li::marker{
	font-size: 16px;
	color: #2A85F6;
	margin-right: 10px;
}
	
/*画像キャプション文字の設定*/
.wp-block-image figcaption{
	font-size: 12px;
	margin-top: 15px;
}

.kakomi{
	font-size: 12px;
	padding: 40px;
	margin: 20px 0;
}

/*-----------ブログカード-----------*/
a.nm-card {
    display: block;
    padding: 0;
    position: relative;
    width: 290px;
	height: 100px;
}

.nm-card-title {
	width: 60%;
	height: 60px;
	font-size:13px;
}

.nm-card-thumbnail {
    flex: 1;
    margin-right: 15px;
    padding-top: 5px;
}
.nm-card-thumbnail img {
    width: 30%;
	height: 100px;
	object-fit: cover;
}

/*-----------プライバシーポリシー-----------*/
#kotei_main{
	border-radius: 0;
	padding : 80px 30px;
	margin-left: calc(((100vw - 100%) / 2) * -1);
 	margin-right: calc(((100vw - 100%) / 2) * -1);
}
	
.line_3{
	margin-bottom: 10px;
}

}

@media screen and (max-width: 900px) {  
	.div_custom {
		position: relative;
	}
	
	.div_custom a {
		padding: 15px 44px 14px 17px;
		background: #f0f7ff;
		border-radius: 50px;
		font-size: 12px;
		list-style: none;
		color: #2A85F6;
		font-weight: 600;
		text-decoration: none;
		cursor: pointer;
	}
	
	.div_custom a:hover {
		background: #f2f8ff;
	}
	
	.div_custom a::before {
		content: '';
		position: absolute;
		top: 58%;
		right: 10px;
		transform: translateY(-50%);
		width: 24px;
		height: 24px;
		background-color: #4da0e8;
		border: 1px solid #4da0e8;
		border-radius: 50%;
	}
	
	.div_custom a::after {
		content: '';
		position: absolute;
		top: calc(62% - 1px);
		right: 23px;
		transform: rotate(45deg) translateY(-50%);
		width: 4px;
		height: 4px;
		border-width: 1px 1px 0 0;
		border-style: solid;
		border-color: #fff #fff transparent transparent;
	}
}

.footer-ul-padding-no-line-add-friends {
  padding-top: 20px;
}