@charset "utf-8";

/***********************************
					スマートフォン
***********************************/
@media screen and (max-width: 640px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: block;
	}

	/********************************
						構造・共通
********************************/
	.box {
		flex-wrap: wrap;
	}

	.box_left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.box_right {
		width: 100%;
	}

	.box1-1 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.box1-2 {
		width: 100%;
	}

	.box2-1 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.box2-2 {
		width: 100%;
	}

	.box3-1 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.box3-2 {
		width: 100%;
	}

	.box4-1 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		float: none;
	}

	.box4-2 {
		width: 100%;
		float: none;
	}


	.colum2 {
		flex-wrap: wrap;
	}


	.colum2_col {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.colum2_col:last-child {
		margin-right: 0;
		margin-bottom: 0;
	}

	/***********************************
					ヘッダー
***********************************/

	header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background-color: #fff;
		z-index: 999999;
	}

	#logo {
		width: 80%;
		padding-left: 10px;
		line-height: 1;
	}

	.header_container {
		display: flex;
		align-items: center;
	}

	.header_container_inner {
		padding: 10px;
	}

	.header_menu {
		display: none;
	}

	.sp_header_menu{
		margin-top:10px;
	}
	.sp_header_menu ul li.menu01 a:before {
		content: url("../images/common/header_icon01.svg");
		display: inline-block;
		padding-right: 5px;
		vertical-align: middle;
		line-height: 1;
	}

	.sp_header_menu ul li.menu02 a:before {
		content: url("../images/common/header_icon02.svg");
		display: inline-block;
		padding-right: 5px;
		vertical-align: middle;
		line-height: 1;
	}

	.sp_header_menu ul li.menu03 a:before {
		content: url("../images/common/header_icon03.svg");
		display: inline-block;
		padding-right: 5px;
		vertical-align: middle;
		line-height: 1;
	}

	.sp_header_menu ul li.menu05 a:before {
		content: url("../images/common/header_icon05.svg");
		display: inline-block;
		padding-right: 5px;
		vertical-align: middle;
		line-height: 1;
	}

	nav ul {
		flex-wrap: wrap;
		display:block;
	}
	nav ul li {
		width: 100%;
		flex: auto;
		border-bottom: 1px solid #000;
		border-left: none !important;
		border-right: none !important;
	}

	nav ul li:first-child {
		border-top: 1px solid #000;
	}

	nav ul li a {
		display: block;
		padding: 20px;
		text-align: left;
		line-height: 1;
		position: relative;
	}


	nav ul li a:after {
		content: url("../images/common/arw_right.svg");
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
	}

	nav ul li.drawer-dropdown a:after {
		content: "";
		display: none;
	}
	
	.sp_nav_menu{
		margin-top:10px;
	}
	/*
	.sp_nav_menu li:first-child {
		border-top: none;
	}
	*/

	.menu_contents {
		display: none !important;
	}

	.drawer-dropdown-menu {
		background-color: #f7c3bc !important;
	}

	.drawer-dropdown-menu li:last-child {
		border-bottom: none !important;
	}

	.drawer-dropdown-menu a {
		padding-left: 2em !important;
		position: relative;
	}

	.open_menu li a:after {
		content: url("../images/common/arw_right.svg") !important;
		display: block !important;
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
	}

	nav ul li.recruit_li a:after {
		content: "";
		display: none;
	}

	nav ul li.recruit_li a:before {
		right: 20px;
	}

	.scrollnavi {
		background-color: #ffe6e6;
		overflow-x: auto;
		z-index: 1000;
	}
	.scrollnavi ul {
		display: flex;
		width: max-content;
		margin: 0 auto;
	}
	.scrollnavi ul li a {
		display: flex;
		align-items: center;
		justify-content: center;
		display: inline-block;
		padding: 10px 20px;
		height: 40px;
		font-size: 15px;
		color: #cc0000;
		text-decoration: none;
	}
	.spkugiri{
		padding: 10px 10px;
		height: 40px;
		font-size: 15px;
		color: #e73820;
	}
	.scrollnavi ul li a:hover,
	.scrollnavi ul li.active {
		background-color: #e73820;
		color: #fff;
	}


	/***********************************
					スライド
***********************************/
	#slide {
		margin-top: 75px;
	}

	#slide_copy {
		width: 78%;
		top: initial !important;
		bottom: 18% !important;
	}

	/***********************************
					メインコンテンツ
***********************************/
	.toppage:before {
		content: "";
		display: none !important;
	}

	.toppage {
		margin-top: 75px !important;
	}

	#top_section {
		position: relative !important;
	}

	#top_section:before {
		content: url("../images/sp_top_back.png");
		position: absolute;
		top: -12px;
		right: 0;
		z-index: 95;
	}

	article {
		z-index: 0 !important;
		margin-bottom: 0;
		position: static !important;
	}

	section {
		padding: 30px 20px;
	}

	.menu_box {
		flex-wrap: wrap;
	}

	.menu_col {
		flex-grow: initial;
		margin-right: 0;
		margin-bottom: 20px;
		width: 100%;
	}

	.menu_col:last-child {
		margin-bottom: 0;
	}

	.menu_col a {
		display: flex;
		align-items: center;
		width: 100%;
	}

	.menu_col p.photo {
		width: 32%;
		margin-right: 2%;
	}

	.menu_col p.title {
		width: 65%;
		padding: 30px 86px 30px 5px;
		font-size: 16px;
	}

	.menu_col .menu_inner {
		padding: 10px;
	}

	.company_box .menu_inner{
		min-height:auto;
	}

	.company_box .menu_col {
		margin-right: 0%;
		width:100%;
	}

	p.detail_btn a {
		padding: 20px;
		text-decoration: none;
	}

	p.top_copy {
		font-size: 14px;
	}

	p.detail_btn2 {
		position: absolute;
		top: 40%;
		transform: translateY(-50%);
		right: 20px;
		z-index: 9;
	}

	.list_btn_box {
		flex-wrap: wrap;
		max-width: 100%;
	}

	.list_btn_box .news_list_btn {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
		margin-top: 0;
	}

	.list_btn_box .news_list_btn:last-child {
		margin-bottom: 0;
	}

	/***********************************
					ニュースリリース
***********************************/

	#top_news {
		padding: 0 10px 0 10px;
		box-sizing: border-box;
	}

	#top_news_section {
		padding: 15px;
		margin-bottom: 0;
	}

	.news_box {
		padding: 0;
	}

	.news_box dl dd a {
		font-size: 14px;
	}

/*
	.news_box .news_col .news_ph {
		display: none;
	}
*/
	.news_box .news_col .news_ph{
		width:48%;
	}

	.news_box .news_col .news_detail {
		width: 100%;
	}
	.search_btn button {
		padding: 8px 10px;
	}

	#topics_list .category_select ul {
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#topics_list .category_select ul li {
		width:48%;
		margin-right:0;
		margin-bottom:10px;
	}
	#topics_list .category_select ul li a{
		padding: 10px 20px;
		font-size:14px;
	}
	
	#news h4{
		font-size:16px;
	}
	#news .paging{
		margin-bottom:2em;
	}
	
	/***********************************
					フッター
***********************************/
	.top_footer {
		position: static;
		height: auto;
		padding: 0;
		background: url("../images/common/sp_footer_back.png") no-repeat;
		background-size: cover;
		background-position: left center;
	}

	.next_footer {
		height: auto;
		background: url("../images/common/sp_footer_back.png") no-repeat;
		background-size: cover;
		background-position: left center;
		margin-top: 30px;
	}

	p.footer_logo {
		margin-bottom: 0;
	}

	.footer_menu {
		display: none;
	}

	p.copyright {
		padding: 10px;
		font-size: 11px;
	}


	/***********************************
					次階層
***********************************/
	#next_header {
		margin-top: 75px;
	}

	.pankuzu {
		margin-top: 75px;
	}

	.pankuzu p {
		max-width: 100%;
		width: 100%;
	}

	#next_page:before {
		display: none;
		content: "";
	}

	.next_top_main:before {
		content: url("../images/sp_top_back.png");
		top: 35px;
	}

	.next_top_main .menu_col a {
		/*margin-bottom: 20px;*/
	}

	.next_top_main p.detail_btn2 {
		bottom: initial;
		top: 8%;
		transform: none;
	}

	.next_title_box:before {
		display: none;
	}

	.next_title_box:after {
		display: none;
	}


	.next_footer {
		height: 0;
		position: relative;
		padding-top: 56.25%;
	}

	.recruit_bunner {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: 50px;
		width: 100%;
		padding: 10px;
		z-index: 99;
		margin:10px auto 0;
	}

	#next_main_box {
		flex-wrap: wrap;
	}

	.next_main_left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
		padding:0 10px;
	}

	.next_main_right {
		display:none;
		/*width: 100%;*/
	}

	#first_section {
		margin-top: 0;
	}
	
	h1.next_title2{
		font-size: 26px;
		padding: 5px;
	}

	p.copy{
		text-align:left;
	}

	/***********************************
					会社概要
***********************************/
	#overview dl.next dt,
	#overview dl.next dd{
		display:block;
		width:100%;
	}

	/***********************************
					経営理念
***********************************/
	#policy .philosophy {
		padding: 30px 0px
	}
	#policy .whitebox .bkplane {
		bottom: -35px;
	}
	#policy dl.information {
		display: block;
	}
	#policy dl.information dt {
		display:block;
		width:100%;
	}
	/***********************************
					サイドメニュー
***********************************/
	#sidemenu ul.bunner {
		text-align: center;
	}

	/***********************************
					企業情報
***********************************/
	/***********************************
					 経営方針
***********************************/
	#management .yellowbox dl {
		flex-wrap: wrap;
		width: 100%;
		margin-bottom: 1em;
	}

	#management .yellowbox dl:last-child {
		margin-bottom: 0;
	}

	#management .yellowbox dl dt {
		width: 100%;
		margin-right: 0;
	}

	#management .yellowbox dl dd {
		width: 100%;
	}

	#management .tblmanagement td {
		min-width: initial !important;
		font-size: 90% !important;
	}
	#management .jyutenbox {
		padding: 1em 0 1em 1em;
	}
	#management .jyutenbox li{
		padding-right:0;
	}
	dl.information dd {
		font-size: 85% !important;
	}

	/***********************************
					NABICについて
***********************************/
	.nabic_box {
		flex-wrap: wrap;
		align-items: initial;
	}

	.nabic_col {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.nabic_col:last-child {
		width: 100%;
		margin-right: 0;
		margin-bottom: 0;
	}

	.nabic_service_box {
		flex-wrap: wrap;
	}

	.nabic_service_box_left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 0;
	}

	.nabic_service_box_right {
		width: 100%;
	}

	p.nabic_large {
		font-size: 21px;
	}

	#nabic_title {
		font-size: 15px;
		text-align:left;
	}
	#nabic p.nabic_description2{
		font-size: 16px;
		text-align:left;
	}

	#nabic_description {
		font-size: 16px;
		margin-bottom: 60px;
	}

	p.nabic_description2 {
		font-size: 16px;
	}

	.logo_mark h4 {
		font-size: 18px;
	}

	.logo_mark p {
		font-size: 16px;
	}

	p.nabic_large {
		font-size: 16px;
		line-height: 1.8;
	}

	.nabic_service_box_left {
		width: 100%;
		margin-right: 0;
	}

	.nabic_service_box_right {
		width: 100%;
		margin: 20px 0;
	}

	p.nabic_description {
		font-size: 16px;
	}

	ruby.name > rt{
		font-size:10px;
	}

	/***********************************
					私たちの取り組み
***********************************/
	ul.link_ul li a {
		font-size: 90%;
	}

	.company_torikumi_box {
		flex-wrap: wrap;
		width: 100%;
	}

	.company_torikumi_left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.company_torikumi_right {
		width: 100%;
		margin-top: 0;
	}

	.kurumin_box {
		flex-wrap: wrap;
		width: 100%;
	}

	.kurumin_left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.kurumin_right {
		width: 100%;
		margin-top: 0;
		text-align: center;
		margin-bottom: 20px;
	}

	.ziseki_dl {
		width: 100%;
	}

	.childcare_support:before {
		position: static;
		margin-bottom: 20px;
		display: block;
		text-align: center;
	}

	.work_brance_title:after {
		content: "";
		display: none;
	}

	.woman_title {
		text-align: center;
	}

	.out_detail a {
		font-size: 14px;
		padding: 20px 5px;
	}

	.out_detail2 a {
		font-size: 16px;
		padding: 20px 10px;
	}

	.childcare_support ul li {
		font-size: 16px;
	}

	.childcare_support p.title {
		font-size: 21px;
	}

	#our_efforts .universal_col {
		margin-bottom: 60px;
	}
	#our_efforts ul.link_ul li {
		margin-left: 0;
	}
	#our_efforts .woman_box .box_left,
	#our_efforts .woman_box .box_right{
		width: 100%;
	}
	#our_efforts p.update_date {
		position: relative;
		margin-top: 0;
	}
	#our_efforts .childcare_man_box p.percent .js-num,
	#our_efforts .childcare_woman_box p.percent .js-num {
		font-size: 66px;
	}
	
	/***********************************
					活動・トピックス
***********************************/
	#search_menu {
		flex-wrap: wrap;
		width: 100%;
	}

	.freewords {
		width: 100%;
		margin-bottom: 20px;
	}

	.year_select {
		width: 100%;
	}

	.category_btn li a {
		padding: 10px;
		font-size: 12px;
	}
	.category_btn li.topics_cat01 a {
		padding: 4px 10px;
	}

	.news_box .news_col .news_detail dl dt {
		margin-bottom: 3px;
	}

	.news_box .news_col .news_detail dl dd{
		font-size:14px;
	}

	.c-enjoylearn-corner.is-corner2 figure .img2 {
		max-width: 210px;
	}

	.c-enjoylearn-corner.is-corner3 figure .img1 {
		max-width: 135px;
	}

	/***********************************
					館内イベント
***********************************/
	.contact_area {
		width: 100%;
	}

	.contact_area p.tel span {
		display: block;
	}

	/***********************************
					テナント情報
***********************************/
	#rental_access p{
		text-align:left;
	}
	#tenant h4{
		font-size:18px;
	}

	/***********************************
					館内広告
***********************************/
	#advertisement ul.submenubtn li {
		width: 31%;
		margin: 0 1% 10px;
		font-size: 9px;
	}
	#advertisement a dl.next h4 {
		font-size: 14px;
	}
	#advertisement a dl.next dt {
		width: 35%;
		padding: 0;
	}
	#advertisement a dl.next dd{
		font-size: 12px;
		width: 65%;
	}

	#advertisement_title h1.next_title2 {
		font-size: 18px;
	}
	#advertisement_title .printer {
		font-size: 11px;
	}
	#advertisement_detail dl.next dt {
		width: 25%;
		font-size: 12px;
	}
	#advertisement_detail dl.next dd {
		font-size: 12px;
	}
	.availability th {
		width: 33%;
		font-size: 12px;
	}
	.availability td {
		font-size: 12px;
	}

	/***********************************
					採用情報トップページ
***********************************/
	.detail_btn2 {
		position: absolute;
		right: 10px;
		bottom: 15px;
	}

	/***********************************
					採用情報トップページ
***********************************/
	#sitemap .sitemapflex div{
		width:100%;
		margin:10px 0;
	}


/* ------------------------- 人事ポリシー ------------------------- */
	.hrpolicybox .backimg{
		position: relative;
		text-align: center;
		margin: 0 auto;
	}
	.hrpolicyflex{
		display:block;
	}
	.hrpolicybox50,
	.hrpolicybox.hrpolicyflex .mainbox,
	.hrpolicybox.hrpolicyflex .photobox{
		width:100%;
	}
	
	.hrpolicybox50.m40{
		margin-bottom:60px;
	}

/* ------------------------- カスタマーハラスメントに対する方針 ------------------------- */
	#customerharassment .next_section.cusharalist{
		position:relative;
	}
	#customerharassment .next_section.cusharalist .photo{
		position:relative;
		text-align:center;
		margin:0 auto;
	}


}



/* sp */



/***********************************
					スマホ以外
***********************************/

@media screen and (min-width: 640px) {
	.sp {
		display: none !important;
	}

	.pc {
		display: block;
	}

	header button {
		display: none !important;
	}

	.sp_nav_menu {
		display: none;
	}


	/* メガメニュー
*******************************************/
	nav ul li a:hover::after {
		content: "";
		position: absolute;
		bottom: 0;
		width: 100px;
		height: 3px;
		background-color: #e73820;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}

	nav ul li.active a:after {
		content: "";
		position: absolute;
		bottom: 0;
		width: 100px;
		height: 3px;
		background-color: #e73820;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}

	.menu_contents p.title a:after {
		content: "";
		display: none;
	}

	.page_list li a:after {
		content: "";
		display: none;
	}

	.menu {
		position: relative;
	}

	.menu .menu_list>a {
		display: block;
		font-size: 18px;
		transition: .3s;
	}

	/* ②メガメニューのスタイル */
	.menu_contents {
		display: none;
		position: absolute;
		left: 0;
		width: 100%;
		/* -webkit-box-shadow: 0 0 12px 0 rgba(0, 0, 0, .6);
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, .6); */
		z-index: 999;
		background-color: #f9f9f9;
	}

	.menu_contents:after {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		right: 0;
		top: 0;
	}

	.menu_contents a:hover::after {
		display: none;
	}

	.menu_contents p.title {
		display: block;
		margin-bottom: 15px;
		text-align: left;
	}

	.menu_contents p.title a {
		display: block;
		color: #000000;
		text-align: left;
		transition: all 0.6s ease;
	}

	.menu_contents p.title a:hover {
		color: #e73820;
	}



	.menu_contents p.title a:before {
		content: url("../images/link_arw.svg");
		display: inline-block;
		padding-right: 10px;
		line-height: 1;
	}

	.megamenu_ct {
		display: block;
		padding: 20px 10px;
		width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 99;
	}

	.megamenu_ct p {
		display: block;
	}

	.page_list {
		display: flex;
		width: 100%;
	}

	.page_list_col {
		width: 32%;
		margin-right: 2%;
		position: relative;
	}

	.page_list_col:last-child {
		margin-right: 0;
	}

	.page_list_col a {
		display: flex;
		align-items: center;
		padding: 10px;
		border-radius: 10px;
		background-color: #fff;
		position: relative;
	}

	.page_list_col a:hover {
		-webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .24),
			0 1px 4px 0 rgba(0, 0, 0, .15);
		box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .24),
			0 1px 4px 0 rgba(0, 0, 0, .15);
	}



	.page_list_col:after {
		content: url("../images/common/page_list_arw");
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 15px;
	}

	.page_list_col .ph {
		margin-right: 15px;
	}

	.page_list_col .page_name {
		display: block;
		font-size: 18px;
		color: #000;
		text-align: left;
	}

	nav ul li.active .page_list_col a:after {
		content: "";
		display: none !important;
	}

	.page_list ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: initial !important;
		width: 100%;
		background-color: none;
	}

	.page_list ul li {
		width: 24.2%;
		flex: initial;
		margin-right: 1%;
		margin-bottom: 10px;
		border: none !important;
	}

	.page_list ul li:last-child {
		margin-right: 0;
	}

	.page_list ul li img {
		display: block;

	}

	.page_list ul li a {
		display: block;
		padding: 0;
		font-size: 16px;
		text-align: left;
		color: #000;
		/* border-radius: 8px; */
		background: #fff !important;
		/* -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .24), 0 1px 4px 0 rgba(0, 0, 0, .15);
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .24), 0 1px 4px 0 rgba(0, 0, 0, .15); */
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		transition: all .3s ease;
		border: 2px solid transparent;
		text-decoration: none;
		position: relative;
	}

	.page_list ul li a:hover {
		opacity: 0.7;
	}

	.page_list ul li a span {
		position: absolute;
		bottom: 0;
		padding: 10px;
		width: 100%;
		font-size: 14px;
		background: rgba(255, 255, 255, 0.7);
	}

	.page_list ul li a span:after {
		content: url("../images/common/menu_btn.svg");
		position: absolute;
		right: 10px;
		bottom: 15px;
	}

	/***********************************
					トップページ
***********************************/
	p.detail_btn2 {
		position: absolute;
		right: 20px;
		bottom: 40px;
		z-index: 9;
	}

}