@charset "utf-8";

/********************************
						構造・共通
********************************/
.container {
	max-width: 1180px;
	width: 100%;
	margin: 0 auto;
}

#wrap {
	background-color: #fff;
	z-index: 5;
	position: relative;
	overflow: hidden;
}

.box {
	display: flex;
}

.box_left {
	width: 50%;
	margin-right: 3%;
}

.box_right {
	width: 50%;
}

.box1-1 {
	width: 54%;
	margin-right: 3%;
}

.box1-2 {
	width: 43%;
}

.box2-1 {
	width: 62%;
	margin-right: 3%;
}

.box2-2 {
	width: 35%;
}

.box3-1 {
	width: 72%;
	margin-right: 3%;
}

.box3-2 {
	width: 25%;
}

.box4-1 {
	width: 70%;
	margin-right: 3%;
	float: left;
}

.box4-2 {
	width: 30%;
	float: right;
}


.colum2 {
	display: flex;
}


.colum2_col {
	width: 50%;
	margin-right: 3%;
}

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

/********************************
						header
********************************/
header {
	width: 100%;
	background-color: #ffffff;
	width: 100%;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	transition: 0.5s;
}

.header_container {
	display: block;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

.header_container_inner {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 30px 0 15px 0;
}

.header_menu ul {
	display: flex;
	align-items: center;
	width: 100%;
	list-style-type: none;
}

.header_menu ul li {
	width: auto;
	margin-right: 20px;
	list-style-type: none;
}

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

.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;
}

.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;
}

.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;
}

.header_menu ul li a {
	display: block;
	font-size: 14px;
	color: #000;
	text-decoration: none;
}

.scroll-nav .header_menu {
	display: none;
	transition: 0.5s;
}

.scroll-nav .header_container_inner {
	padding: 5px 0;
	transition: 0.5s;
}

.on_change {
	display: none;
}

.scroll-nav .no_change {
	display: none !important;
}

.scroll-nav .on_change {
	display: block;
}

/* 検索ボックス */
.header_menu {
	display: flex;
	align-items: center;
}

.search_area {
	opacity: 0;
	transition: 0.3s;
	width: 0;
}

.search_area.active {
	opacity: 1;
	transition: 0.3s;
	width: auto;
}

form#cse-search-box {
	display: flex;
	align-items: center;
}

.search_area input {
	padding: 5px;
}

#search_btn {
	padding: 0 !important;
	background: url("../images/common/header_icon04.svg");
	width: 25px;
	height: 25px;
	margin-left: 5px;
	border: none;
	text-indent: -99999px;
}

.no_search {
	display: none;
}

/* スクロールアニメーション */
.smooth {
	clip-path: inset(0 100% 0 0);
	display: inline-block;
	transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
	transition-property: clip-path;
}
.smooth.is-animated {
	clip-path: inset(0);
}


/********************************
				グローバルメニュー
********************************/
nav {
	display: block;
	margin-bottom: 0;
	text-align: center;
}

nav ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	list-style: none;
	padding: 0;
}

nav ul li {
	border-right: 1px solid #969696;
	flex: 1;
	text-align: center;
	font-weight: 600;
	/* 必要に応じて中央揃えを適用 */
}

nav ul#menu>li {
	width: 18.75%;
	flex: initial;
}

nav ul#menu>li.long {
	width: 25%;
}

nav ul li:first-child {
	border-left: 1px solid #969696;
}

nav ul li a {
	display: block;
	font-size: 17px;
	padding: 15px 0;
	color: #000;
	text-align: center;
	line-height: 1;
	text-decoration: none;
	position: relative;
}

nav ul#menu>li.long a {
	padding: 8px 0;
}

nav ul li span {
	display: block;
	font-size: 13px;
	padding-top: 5px;
	line-height: 1;
}

nav ul li.recruit_li {
	position: relative;
}

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



/*　スライド */
#slide {
	display: block;
	max-width: 1290px;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 0;
	background-color: none;
	position: relative;
	z-index: 99;
}

#slide .swiper-slide img {
	width: 100%;
}

#slide_copy {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 9;
	font-family: "Noto Serif JP",
		serif;
	font-size: 2.5em;
	line-height: 1.6;
	z-index: 1;
	margin: 0 auto;
	text-align: center;
	width: auto;
	font-weight: bold;
	color: #FFFFFF;
	text-shadow: 3px 2px 2px rgba(0, 0, 0, 0.6);
	line-height: 1;
}

.swiper_pause {
	display: block;
	width: 100%;
	height: 15px;
	background: url("../images/pause.svg") no-repeat;
	background-position: center center;
	border: none;
	text-align: center;
	margin-left: 35px;
	margin-top: -22px;
	position: relative;
	z-index: 99;
	cursor: pointer;
}

.paused {
	background: url("../images/start.svg") no-repeat;
	background-position: center center;
}

/***********************************
					トップページ
***********************************/

#main {
	position: relative;
	margin-top: 160px;
}


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

.header-change {
	margin-top: 113px;
	transition: all 0.5s 1s ease-in-out;
}

article {
	width: 100%;
	/* position: relative; */
	z-index: 2;
	/* background-color: #fffdfd; */
	/* background-color: #fff; */
	/* margin-bottom: 777px; */
	/* margin-bottom: 100vh; */
}

section {
	display: block;
	width: 100%;
	padding: 50px;
	box-sizing: border-box;
	position: relative;
	/* z-index: 999; */
	background: #fff;
}

.section01 {
	/* background-color: #f4f4f4; */
	position: static !important;
}

#section02 {
	background-color: #f9f9f9;
	position: relative;
}

div#section02:before {
	content: "";
	width: 100%;
	height: 100%;
	background-color: #f9f9f9;
	position: absolute;
	left: -100%;
	top: 0;
}

div#section02:after {
	content: "";
	width: 100%;
	height: 100%;
	background-color: #f9f9f9;
	position: absolute;
	right: -100%;
	top: 0;
}

.section03 {
	display: block;
	width: 100%;
	margin-bottom: 40px;
	padding: 25px;
	background-color: #ffe6e6;
	border-radius: 20px;
}

.menu_box {
	display: flex;
	justify-content: space-between;
	width: 100%;
	position: relative;
	z-index: 9998;
}

.menu_col {
	flex-grow: 1;
	margin-right: 30px;
}

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

.menu_col .menu_inner {
	padding: 15px 15px 0 15px;
	background-color: #fff;
	line-height: 1;
	transition: transform 0.6s ease;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	border-radius: 10px;
	position: relative;
}

.company_box .menu_inner {
	min-height: 373px;
	height: 100%;
}

.company_box p.detail_btn2 {
	bottom: 50px !important;
}

.company_box{
	margin-bottom:30px;
}
.menu_box.company_box {
	justify-content: start;
}
.company_box .menu_col {
	flex-grow: 0;
	margin-right: 3%;
	width:30%;
}
.company_box .menu_col.lastcol {
	margin-right: 0;
}

.menu_col .menu_inner:hover {
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}

.menu_col .photo {
	overflow: hidden;
}

.menu_col .photo img {
	transition: transform 0.6s ease;
	transform-origin: center;
}

.menu_col a {
	font-size: 16px;
	text-decoration: none;
}

.menu_col p.title {
	display: block;
	padding: 30px 5px 15px 5px;
	font-size: 19px;
	color: #000;
	line-height: 1;
	position: relative;
	transition: all 0.6s ease;
}

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


/* .menu_col p.title:after {
	content: url("../images/link_arw.svg");
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
} */

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

.menu_col .menu_inner a:hover p.photo img {
	transform: scale(1.15);
	/* 1.1倍に拡大 */
}

p.detail_btn {
	display: block;
	width: 100%;
	margin-top: 15px;
	border: 1px solid #e73820;
}

p.detail_btn a {
	display: block;
	padding: 25px;
	font-size: 19px;
	background-color: #fff;
	color: #000;
	line-height: 1;
	text-align: left;
	position: relative;
	transition: all 0.6s ease;
}

p.detail_btn a:after {
	content: url("../images/link_arw.svg");
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translateY(-50%);
}

p.detail_btn a:hover {
	color: #e73820;
}

p.top_copy {
	display: block;
	margin-bottom: 30px;
	font-size: 18px;
	line-height: 1.8;
	text-align: center;
}

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

#top_news {
	display: block;
	/* background-color: #f4f4f4; */
}

#top_news_section {
	display: block;
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
	margin-bottom: -200px;
	padding: 50px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
	position: relative;
	z-index: 9;
}

.news_box {
	display: block;
	width: 100%;
}

.news_box .news_col {
	width: 100%;
	padding: 15px 10px;
	border-bottom: 1px dashed #929292;
}
.news_box .news_col .news_flex{
	display: flex;
}

/* .news_box .news_col:first-child {
	border-top: 1px dashed #929292;
} */

.news_box .news_col:last-child {
	margin-bottom: 0;
}

.news_box .news_col .news_ph {
	width: 20%;
	margin-right: 2%;
}

.news_box .news_col .news_ph img {
	border-radius: 10px;
}

.news_box .news_col .news_detail {
	width: 78%;
}

.news_box .news_col .news_detail dl {
	display: block;
	align-items: center;
	width: 100%;
	margin-bottom: 5px;
}

.news_box .news_col .news_detail dl dt {
	display: block;
	width: 100%;
}

.news_box .news_col .news_detail dl dd {
	display: block;
	width: 100%;
}

.news_box dl dt:before {
	content: url("../images/common/news_arw.svg");
	display: inline-block;
	padding-right: 5px;
	vertical-align: 1px;
	line-height: 1;
}

.news_box .news_col dl dt span {
	display: inline-block;
	border: none;
	color: #ffffff;
	padding: 5px 10px;
	margin-left: 10px;
	border-radius: 5px;
	font-size: 14px;
	text-align: center;
	line-height: 1;

}


.news_box dl dd a {
	display: block;
	color: #000000;
	font-size: 15px;
	text-decoration: none;
}

.news_box dl dd a:hover {
	text-decoration: underline;
}

.news_box .news_col dl dt span.cat01 {
	background-color: #3d8ed8;
	color: #ffffff;
}

.news_box .news_col dl dt span.cat02 {
	background-color: #d83f25;
	color: #ffffff;
}

.list_btn_box {
	display: flex;
	justify-content: center;
	margin: 20px auto 0 auto;
	max-width: 600px;
	width: 100%;
}

.list_btn_box .news_list_btn {
	max-width: 100%;
	width: 48%;
	margin-right: 2%;
}

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

.news_list_btn {
	display: block;
	max-width: 220px;
	width: 100%;
	margin: 20px auto 0 auto;
	line-height: 1;
}

.news_list_btn a {
	display: block;
	padding: 15px 30px 15px 15px;
	border-radius: 5px;
	background-color: #ffffff;
	font-size: 16px;
	font-weight: normal;
	color: #000000;
	position: relative;
	text-decoration: none;
	border: 1px solid #000000;
}

.news_list_btn a:after {
	content: url("../images/common/news_arw.svg");
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}


/***********************************
					フッター
***********************************/
.scroll_fadein {
	opacity: 0;
}

.scroll_fadein2 {
	opacity: 0;
}

.scroll_fadein3 {
	opacity: 0;
}

.fadein_animation_start {
	animation-name: fadein_animation;
	animation-delay: 0.3s;
	animation-duration: 2s;
	animation-fill-mode: both;
}

.fadein_animation_start2 {
	animation-name: fadein_animation2;
	animation-delay: 0.2s;
	animation-duration: 3s;
	animation-fill-mode: both;
}

.fadein_animation_start3 {
	animation-name: fadein_animation3;
	animation-delay: 0.2s;
	animation-duration: 4s;
	animation-fill-mode: both;
}

@keyframes fadein_animation {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
		transform: translate(0);
	}
}

@keyframes fadein_animation2 {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
		transform: translate(0);
	}
}

@keyframes fadein_animation3 {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
		transform: translate(0);
	}
}


/***********************************
					フッターイメージ
***********************************/
.top_footer {
	display: block;
	height: 684px;
	/* height: 100vh;
	position: fixed; */
	bottom: 0;
	z-index: 1;
	background: url("../images/common/footer_back3.png") no-repeat;
	background-size: cover;
	background-position: bottom center;
}

.footer_container {
	max-width: 1180px;
	width: 100%;
	margin: 0 auto;
}

p.footer_logo {
	display: block;
	text-align: left;
	margin-bottom: 35px;
}

/***********************************
					フッター
***********************************/
#footer {
	display: block;
	width: 100%;
	background-color: #f4f4f4;
	padding: 60px 10px;
	position:relative;
	z-index:100;
}

.footer_menu {
	display: flex;
	align-items: flex-end;
	width: 100%;
	margin-top: 0;
}

.footer_menu {
	display: flex;
	align-items: flex-end;
	width: 100%;
	margin-top: 0;
}

.footer_menu_left {
	display: flex;
	/* align-items: center; */
	margin-right: 55px;
	padding-top: 10px;
}

.footer_menu ul.menu1 {
	display: flex;
	width: auto;
	margin-right: 35px;
}

.footer_menu ul.menu1 li {
	width: auto;
}

.footer_menu ul.menu1 li:first-child a {
	border-left: 1px solid #000;
}

.footer_menu ul.menu1 li a {
	display: block;
	font-size: 12px;
	padding: 4px 8px;
	color: #000;
	text-decoration: none;
	text-align: center;
	border-right: 1px solid #000;
	line-height: 1;
}

.footer_menu ul.menu2 {
	display: flex;
	flex-wrap: wrap;
	width: 48%;
}

.footer_menu ul.menu2 li {
	width: 100%;
	margin-bottom: 10px;
	font-size: 14px;
}

.footer_menu ul.menu2 li:last-child {
	margin-bottom: 0;
}

.footer_menu ul.menu2 li a {
	display: block;
	color: #000;
	font-size: 14px;
	text-decoration: none;
	line-height: 1;
}

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

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

.footer_menu ul.menu2 li.menu_icon02 a {
	display: inline-block;
	font-size: 12px;
}

.footer_menu ul.menu2 li.menu_icon02 a:hover {
	text-decoration: underline;
}

.sns_menu p {
	display: block;
	margin-bottom: 5px;
	line-height: 1;
}

.sns_menu ul {
	display: flex;
}

.sns_menu ul li {
	margin-right: 30px;
}

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

#copyright {
	display: block;
	padding: 15px;
	font-size: 12px;
	color: #cc0000;
	background-color: #ffe6e6;
	text-align: center;
	line-height: 1;
	position:relative;
	z-index:100;
}

#pagetop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9999;
}

/***********************************
					次階層
***********************************/
#next_header {
	display: block;
	width: 100%;
	/* height: 170px;
	background: url("../images/common/next_header.jpg") no-repeat;
	background-size: cover;
	background-position: center center; */
	padding: 75px 10px;
	position: relative;
}

#next_header h1 {
	display: block;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #636363;
}

#next_header h1 span {
	padding-top: 20px;
	font-size: 21px;
	color: #ffffff;
}

#next_page {
	display: block;
	width: 100%;
	position: relative;
	background-color: #fffdfd;
	padding-bottom: 60px;
}

/* #next_page:before {
	content: url("../images/top_back.png");
	position: absolute;
	right: 0;
	top: 0;
	z-index: 50;
} */

.pankuzu {
	display: block;
	padding: 12px;
	background-color: #eaeaea;
	line-height: 1;
	margin-top: 148px;
	position: relative;
	z-index: 102;
}

.pankuzu p {
	display: block;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	color: #000;
	font-size: 14px;
}

.pankuzu p a {
	color: #000;
	font-size: 14px;
	text-decoration: none;
}

.next_top_main {
	display: block;
	padding: 0;
	position: relative;
	z-index: 100;
}

.next_top_main:before {
	content: url("../images/top_back.png");
	position: absolute;
	right: 0;
	top: 0;
	z-index: 50;
}


.next_top_main p.detail_btn2 {
	bottom: 30px;
}

.next_top_main .menu_col .menu_inner {
	padding: 15px;
}

.detail_btn2 {
	position: relative;
}

.detail_btn2 img {
	transition: opacity 0.5s;
}

.menu_col a:hover .detail_btn2 img:first-of-type {
	opacity: 0;
}

.detail_btn2 img:last-of-type {
	position: absolute;
	top: 0px;
	left: 0px;
	opacity: 0;
}

.menu_col a:hover .detail_btn2 img:last-of-type {
	opacity: 1;
}


#next_title {
	display: block;
	width: 100%;
	padding: 25px;
	margin-bottom: 0;
	border-bottom: 1px solid #c6c6c6;
	line-height: 1;
}

h1.next_title2 {
	display: block;
	width: 100%;
	color: #000;
	font-size: 28px;
	border-bottom: 3px solid #f47d7d;
	padding: 5px 5px 5px 25px;
	line-height: 1;
	text-align: left;
	position: relative;
	z-index: 1;
}
h1.next_title2 {
	margin-left: -100%;
	transition: 0.6s;
}
h1.next_title2.slide_on {
	margin-left: 0;
}

#next_title h2 {
	display: block;
	font-size: 24px;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0 10px;
}

#next_contents {
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

#next_main_box {
	display: flex;
	width: 100%;
}

.next_main_left {
	width: 72%;
	/*margin-right: 3%;*/
	overflow: hidden;
	padding:0 28px;
}

.next_main_right {
	width: 25%;
	border-left: 1px dashed #929292;
	position: relative;
	z-index: 102;
	margin-top: 15px;
}

.next_title_box {
	width: 100%;
	position: relative;
	z-index: 100;
	margin: 25px 0 0 0;
}

.next_title_box:before {
	content: url("../images/common/h1_icon01.png");
	position: absolute;
	left: 3px;
	bottom: -20px;
	z-index: -1;
}

/* .next_title_box:after {
	content: url("../images/common/h1_icon02.png");
	position: absolute;
	right: 0;
	top: -50px;
	z-index: 1;
} */

#compliance_box p {
	font-size: 15px;
	line-height: 2;
	text-align:left;
}

/* #compliance_box .next_title_box:after {
	content: url("../images/common/h1_icon02.png");
	position: absolute;
	right: 0;
	top: -30px;
	z-index: 1;
}

#our_efforts_title:after {
	content: url("../images/common/h1_icon03.png");
	position: absolute;
	right: 0;
	top: -50px;
	z-index: 1;
}

#topics_title:after {
	content: url("../images/common/h1_icon04.png");
	position: absolute;
	right: 0;
	top: -50px;
	z-index: 1;
}

#news_title:after {
	content: url("../images/common/h1_icon05.png");
	position: absolute;
	right: 0;
	top: -30px;
	z-index: 1;
} */

#title_img_none:after {
	content: "";
	display: none !important;
}

#first_section {
	margin-top: 185px;
}

.next_section {
	display: block;
	padding: 10px;
	margin-bottom: 40px;
	position: relative;
	z-index: 102;
	text-align:center;
}

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

/***********************************
					サイドメニュー
***********************************/
#sidemenu {
	display: block;
	width: 100%;
	padding: 35px 5px 0 5px;
}

#sidemenu p.title {
	display: block;
	font-size: 21px;
	padding: 25px 5px;
	line-height: 1;
}

#sidemenu .border_title {
	display: block;
	width: 100%;
	padding: 5px;
	border-top: 1px solid #999999;
	border-bottom: 1px solid #999999;
}

#sidemenu p.title2 {
	display: block;
}

#sidemenu p.title2 a {
	display: block;
	font-size: 21px;
	color: #000;
	text-decoration: none;
}

#sidemenu p.title2 a:before {
	content: url("../images/common/side_arw01.svg");
	display: inline-block;
	padding-right: 5px;
	vertical-align: 0;
	line-height: 1;
	transition: .8s;
}

#sidemenu p.title2 a:hover:before {
	padding-right: 12px;
}

#sidemenu ul {
	display: block;
	width: 100%;
	border-bottom: 1px solid #999999;
	padding-bottom: 15px;
}

#sidemenu ul:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

#sidemenu ul li {
	width: 100%;
	padding-left: 25px;
}

#sidemenu ul li a {
	display: block;
	font-size: 16px;
	color: #000000;
	text-decoration: none;
	padding: 7px 5px 7px 10px;
	transition: .8s;
	line-height: 1;
}

#sidemenu ul li a.outlink:after {
	content: url("../images/common/outlink2.svg");
	display: inline-block;
	padding-left: 10px;
	vertical-align: bottom;
}

#sidemenu ul li a.outlink:hover:after {
	content: url("../images/common/outlink2_hover.svg");
}

#sidemenu ul li a:hover {
	background-color: #cc0000;
	color: #fff;
}

#sidemenu ul li a:before {
	content: url("../images/common/side_arw02.svg");
	display: inline-block;
	padding-right: 15px;
	vertical-align: 2px;
	line-height: 1;
	transition: .8s;
}

#sidemenu ul li a:hover:before {
	content: url("../images/common/side_arw02_hover.svg");
}

#sidemenu ul li a:hover:before {
	padding-right: 25px;
}

#sidemenu ul li.title {
	width: 100%;
	padding-left: 0;
	margin-top: 10px;
}

#sidemenu ul li.title a {
	display: block;
	font-size: 21px;
	color: #000;
	text-decoration: none;
}

#sidemenu ul li.title2 a {
	display: flex;
}

#sidemenu ul li.title a:hover {
	background: none;
}

#sidemenu ul li.title a:before {
	content: url("../images/common/side_arw01.svg");
	display: inline-block;
	padding-right: 5px;
	vertical-align: 0;
	line-height: 1;
	transition: .8s;
}

#sidemenu ul li.title a:hover:before {
	padding-right: 12px;
}

#sidemenu ul li.subtitle {
	display: block;
	font-size: 16px;
	padding: 15px 0 15px 42px;
	line-height: 1;
}

#sidemenu ul li.subtitle_first {
	margin-top: 0;
}

.bunner {
	margin-top: 60px;
}

.bunner li {
	width: 100%;
	margin-bottom: 10px;
}

.bunner li:last-child {
	margin-bottom: 0;
}

.bunner li a {
	padding: 0 !important;
}

.bunner li a:before {
	content: "" !important;
	display: none !important;
}

.bunner li a:hover {
	opacity: 0.7;
	background: none !important;
}

/***********************************
					経営方針
***********************************/
#policy h5{
	color:#1175ba;
	font-size:20px;
}
#management .yellowbox {
	background-color: #fffac3;
	color: #1175ba;
	font-weight: bold;
	padding: 10px;
}

#management .yellowbox dl {
	display: flex;
	font-size: 20px;
}

#management .yellowbox dl dt {
	width: 150px;
	line-height: 2;
}

#management .yellowbox dl dd {
	line-height: 2;
}

#management .tblmanagement {
	margin: 1em 0;
	border-top: solid 1px #02bcf2;
	border-left: solid 1px #02bcf2;
}

#management .tblmanagement th {
	background-color: #02bcf2;
	padding: 5px;
	text-align: center;
	color: #FFFFFF;
}

#management .tblmanagement td,
#management .tblmanagement th {
	border-right: solid 1px #02bcf2;
	border-bottom: solid 1px #02bcf2;
	font-size: 98%;
}

#management .tblmanagement td {
	padding: 10px;
}

#management .tblmanagement td span {
	float: right;
}

#management .jyutenbox {
	padding: 1em 1em 1em 3em;
}

#management .jyutenbox li {
	line-height: 2.2;
	text-align:left;
	text-indent: -1em;
	padding-right: 1em;
}


#policy dl.information {
	width: 100%;
	margin: 5px 0;
	padding: 0;
	display: table;
}

#policy dl.information dt {
	padding: 5px;
	width: 30%;
	font-size: 100%;
	font-weight: normal;
	color: #ffffff;
	background-color: #02bcf2;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
}

#policy dl.information dd {
	padding: 5px;
	width: 35%;
	font-size: 100%;
	font-weight: normal;
	color: #000000;
	background-color: rgba(2, 188, 242, 0.15);
	text-align: center;
	display: table-cell;
	border-right: 1px solid #ffffff;
	vertical-align: middle;
}

#policy dl.information dd a {
	text-decoration: none;
	vertical-align: middle;
}

#policy dl.information dd a:after {
	content: url("../images/common/pdf_icon2.png");
	display: inline-block;
	padding-left: 5px;
	vertical-align: middle;
}


#policy .philosophy{
	background-image:url('../company/policy/images/bk_philosophy.png');
	background-position:top center;
	background-repeat:no-repeat;
	background-size: contain;
	padding:30px 60px;
	margin-bottom:30px;
}
#policy .whitebox{
	margin:20px;
	padding:40px 30px 50px;
	background-color:#FFF;
	border-radius:20px;
	position:relative;
}
#policy .whitebox h4{
	text-align:center;
	color:#1175ba;
}
#policy .whitebox p{
	font-size:20px;
}
#policy .whitebox .bkplane{
	position:absolute;
	bottom:10px;
	left:10px;
}
#policy .tblmanagement th,
#policy .tblmanagement td{
	text-align:left;
}
#policy .box2-1 p.copy{
	text-align:left;
}

/***********************************
					コンプライアンス・行動基準
***********************************/
#compliance p.next_title {
	display: block;
	font-size: 140%;
	font-weight: normal;
	font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin-bottom: 20px;
}

#compliance ol.number li {
	display: flex;
	list-style-type: none;
	counter-increment: cnt;
	font-size: 16px;
	line-height: 2;
	text-align:left;
}

#compliance ol.number li::before {
	content: "("counter(cnt) ") ";
	margin-right: 5px;
}

#compliance h5.large {
	font-size: 18px;
}

#compliance h5.title {
	font-size: 21px;
}

#compliance .indent_text {
	padding-left: 1.2em;
	line-height: 2;
	text-align:left;
}

/***********************************
					次階層フッター
***********************************/
.next_footer {
	display: block;
	height: 640px;
	margin-top: -80px;
	padding: 80px 10px 0 10px;
	/* height: 100vh;
	position: fixed; */
	bottom: 0;
	z-index: 1;
	background: url("../images/footer_back.png") no-repeat;
	background-size: cover;
	background-position: bottom center;
	position: relative;
}

.recruit_bunner {
	display: block;
	margin: 100px auto 0;
	text-align: center;
	position: relative;
	z-index: 99;
	padding: 20px;
	background-color: #FFF;
	width:100%;
	border: 1px solid #e73820;
}
.recruit_bunner img {
	display: block;
	margin: 0 auto;
}


/***********************************
					NABICについて
***********************************/
p.menu_text {
	display: block;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.8;
}

.border_box {
	display: block;
	width: 100%;
	padding: 15px;
	border: 1px solid #6d6d6d;
	border-radius: 10px;
}

.logo_mark {
	display: block;
	margin-top: 0;
}

.logo_mark p {
	display: block;
	font-size: 20px;
	line-height: 2;
}

.logo_mark p.title {
	display: block;
	font-size: 21px;
	margin-bottom: 15px;
	line-height: 1;
}

p.service {
	padding-bottom: 50px;
}

#nabic_description {
	display: block;
	margin-bottom: 1em;
	font-size: 24px;
	color: #000;
	line-height: 2;
}

#nabic_description span.atama {
	color: #ff0000;
}


p.nabic_description2 {
	display: block;
	font-size: 21px;
	line-height: 1.6;
	margin-bottom: 1em;
}

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

.nabic_col {
	width: 32%;
	margin-right: 3%;
}

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

.nabic_service {
	display: block;
	width: 100%;
	padding: 35px;
	min-height: 670px;
	background: url("../about/nabic/images/nabic_service2.png") no-repeat;
	background-position: bottom center;
	background-size: cover;
	border-radius: 15px;
}

.nabic_service p {
	display: block;
	font-size: 23px;
	color: #ffffff;
	/* text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3); */
}

.nabic_service p.nabic_large {
	font-size: 30px;
	margin-bottom: 1.5em;
	line-height: 2.6;
}

.nabic_service p.nabic_description {
	position: absolute;
	bottom: 40px;
	width: 100%;
	font-size: 24px;
	transform: translateX(-50%);
	left: 50%;
	line-height: 2.2;
	text-align: left;
	padding: 0 35px;
}

.decorationphoto {
	position: relative;
}

.decorationphoto img {
	border-radius: 20px;
}

.decorationphoto::before,
.decorationphoto::after {
	content: '';
	position: absolute;
	transform: rotate(-35deg);
	width: 70px;
	height: 25px;
	background-color: #fff;
	z-index: 1;
}

.decorationphoto::before {
	top: -10px;
	left: -25px;
	border-bottom: 1px solid #aaa;
}

.decorationphoto::after {
	bottom: -10px;
	right: -25px;
	border-top: 1px solid #aaa;
}

.nabic_logo_mark img {
	transition: transform 0.6s ease;
	transform-origin: center;
}

.nabic_logo_mark img:hover {
	transform: scale(1.15);
	/* 1.1倍に拡大 */
}

#nabic_title {
	font-size: 30px;
	text-align: center;
	margin: 30px 0 50px;
}

.nabic_logo_mark {
	display: block;
	margin: 30px 0 80px 0;
	text-align: center;
}

#nabic_description {
	font-size: 28px;
	text-align: left;
	line-height: 2.8;
	margin-bottom: 120px;
}

p.nabic_description2 {
	line-height: 2.4;
	font-weight: normal;
}

.logo_mark p {
	font-weight: normal;
}

.border_box {
	padding: 30px;
}

/* 回転するアニメーション */
@keyframes fuwafuwa {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-20px);
	}
}

/* このクラスをつけると回転を無限に繰り返します */
.anime-fuwafuwa {
	animation: 3s fuwafuwa infinite;
}

ruby.name > rt{
	font-size:12px;
	color:#FF0000;
	font-weight:bold;
}

.nabic_service_box {
	display: flex;
	width: 100%;
	margin-bottom: 20px;
}

.nabic_service_box_left {
	width: 62%;
	margin-right: 3%;
}

.nabic_service_box_right {
	width: 35%;
}

p.nabic_large {
	font-size: 21px;
	margin-bottom: 0;
	line-height: 2.6;
	color: #000;
	font-weight: normal;
}

.bk_airport {
	margin-top: 60px;
	text-align: center;
}

p.nabic_description {
	position: static;
	width: 100%;
	font-size: 18px;
	transform: initial;
	line-height: 2.2;
	text-align: left;
	padding: 0;
	color: #000;
	font-weight: normal;
}

#nabic h4.next_title {
	background-color: #7e9ed6;
	color: #000000;
	position: relative;
	padding: 10px;
	z-index: 99;
	line-height: 1;
}

#nabic h5.next_title {
	display: block;
	padding: 5px 10px 5px 15px;
	font-size: 21px;
	color: #c00000;
	line-height: 1;
	position: relative;
	overflow: hidden;
	text-align:left;
	margin:30px 0;
}

#nabic h5.next_title:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background-color: #f47d7d;
	width: 5px;
	height: 100%;
}

#nabic #nabic_description {
	width: 100%;
	margin: 0 auto;
	text-align:center;
}


#nabic #nabic_title {
	color: #4472c4;
	letter-spacing: 0.1em;
	margin:0px 0 30px;
}

#nabic #nabic_description p {
	display: block;
	font-size: 26px;
	line-height: 1;
}

#nabic #nabic_description_border {
	margin: 0 auto;
	padding: 10px;
/*	display: flex;
	justify-content: center;
	padding: 30px;
	margin: 30px 0;
	border-radius: 20px;
	border: 5px solid #4472c4;
	font-size: 26px;*/
}

#nabic #nabic_description_border p {
	font-size: 32px !important;
	line-height: 2.2 !important;
}


#nabic p.nabic_large {
	display: block;
	text-align: center;
}

#nabic #three_circle {
	display: block;
	max-width: 480px;
	width: 100%;
	margin: 0 auto;
}

#nabic .nabic_logo_mark img {
	width: 380px;
}

#nabic p.nabic_description2 {
	font-size: 18px;
}

/***********************************
					私たちの取り組み
***********************************/
.slide_img {
	position: absolute;
	right: -60px;
}

.out_detail {
	display: block;
	width: 100%;
}

.out_detail a {
	display: block;
	width: 100%;
	background-color: #fff;
	font-size: 21px;
	color: #004fc1;
	padding: 20px;
	text-decoration: none;
	position: relative;
	transition: 0.7s;
}

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

.out_detail a:hover {
	background-color: #004fc1;
	color: #fff;
	transition: 0.7s;
}

.out_detail a:hover:after {
	content: url("../images/common/outlink3.svg");
}

.out_detail2 {
	display: block;
	width: 100%;
}

.out_detail2 a {
	display: block;
	width: 100%;
	background-color: #d32a68;
	font-size: 21px;
	color: #fff;
	padding: 20px;
	text-decoration: none;
	position: relative;
}

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

.out_detail2 a:hover {
	opacity: 0.7;
}

#barrier_free {
	margin-bottom: 100px;
}

.company_torikumi_title {
	position: relative;
}

.work_brance_title {
	position: relative;
}

.work_brance_title:after {
	content: url("../about/our_efforts/images/icon01.png");
	display: inline-block;
	padding-left: 80px;
	vertical-align: middle;
}

#company_torikumi {
	position: relative;
}

/* #company_torikumi:after {
	content: url("../about/our_efforts/images/company_torikumi.png");
	position: absolute;
	right: 0px;
	top: -115px;
} */

/* #company_torikumi p.copy {
	width: 42%;
} */

#kurumin {
	position: relative;
}

.kurumin_box {
	display: flex;
	padding-right: 0;
}

.kurumin_left {
	width: 70%;
}

.kurumin_right {
	width: 30%;
	margin-top: -110px;
	text-align: right;
}

/* #kurumin:after {
	content: url("../about/our_efforts/images/kurumin.png");
	position: absolute;
	right: 5px;
	top: -20px;
} */

/* #kurumin p.copy {
	width: 70%;
} */

.ziseki_box {
	max-width: 360px;
	width: 100%;
	padding: 20px;
	margin: 35px 0;
	border-radius: 50px;
	background-color: #fff;
}

.ziseki_box p {
	display: block;
	font-size: 18px;
	text-align: center;
	color: #474545;
	line-height: 1;
}

.ziseki_box p.ziseki_title {
	display: block;
	margin-bottom: 15px;
}

.ziseki_box p.ziseki_txt span {
	font-size: 30px;
}

.ziseki_dl {
	display: flex;
	/* width: 100%; */
	width: 50%;
}

.ziseki_dl dt {
	width: 50%;
	margin-right: 5px;
	font-size: 24px;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	padding: 34px 15px;
	line-height: 1;
}

.ziseki_dl dd {
	width: 50%;
	font-size: 24px;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	padding: 15px;
	line-height: 1;
}

.ziseki_dl dd span {
	font-size: 30px;
}

.ziseki_dl dt.style01 {
	background-color: #2a6ea0;
	margin-bottom: 5px;
}

.ziseki_dl dt.style02 {
	background-color: #0ea520;
}

.ziseki_dl dd.style01 {
	background-color: #2a6ea0;
	margin-bottom: 5px;
}

.ziseki_dl dd.style02 {
	background-color: #0ea520;
}


.childcare_support {
	display: block;
	width: 100%;
	padding: 20px;
	background-color: #cc0000;
	position: relative;
	border-radius: 20px;
	line-height: 1;
}

.childcare_support:before {
/*
	content: url("../about/our_efforts/images/fukuri_icon.png") !important;
	position: absolute;
	right: 20px;
	top: -75px;
*/
	content: '';
	width: 200px;
	height: 200px;
	background-image: url("../about/our_efforts/images/fukuri_icon.png");
	background-repeat:no-repeat;
	background-size: contain;
	vertical-align: middle;
	position: absolute;
	right: 20px;
	top: -50px;

}

.childcare_support p.title {
	display: block;
	font-size: 24px;
	color: #fff;
	margin-bottom: 20px;
	text-align:left;
}

.childcare_support ul li {
	display: flex;
	color: #fff;
	font-size: 18px;
	margin-bottom: 15px;
	line-height: 1.6;
}

.childcare_support ul li:last-child {
	margin-bottom: 0;
}


.childcare_support ul li span {
	margin-right: 3px;
}

.woman_title {
	display: block;
	font-size: 21px;
	color: #004fc1;
	margin-bottom: 30px;
	line-height: 1;
}

.woman_title span {
	font-size: 16px;
}


p.update_date {
	display: block;
	font-size: 14px;
	margin-top: 30px;
	text-align: right;
}

p.fukuri_img {
	display: block;
	margin: 25px 0 50px 0;
}

#fukuri_torikumi:before {
	/* content: url("../about/our_efforts/images/fukuri_icon.png") !important; */
	content: "";
	position: absolute;
	right: 0;
	top: -180px;
	display: none;
}

.woman_box {
	position: relative;
}

p.update_date {
	position: absolute;
	bottom: 0;
	right: 0;
}

.childcare_support {
	margin-top: 85px;
}

.company_torikumi_box {
	display: flex;
}

.company_torikumi_left {
	width: 46%;
}
.company_torikumi_left p.copy{
	text-align:left;
}
.company_torikumi_right {
	width: 58%;
	margin-top: -160px;
}

#our_efforts p.universal_title {
	display: block;
	margin: 30px 0;
	font-size: 16px;
	text-align: left;
}

#our_efforts p.universal_copy {
	display: block;
	font-size: 14px;
	line-height: 2;
	width:90%;
	text-align:left;
}
#our_efforts ul.link_ul li{
	text-align:left;
	margin-left:30px;
}
#our_efforts .center img{
	max-width:250px;
}
#our_efforts .disc li{
	text-align:left;
}
#our_efforts p.copy{
	text-align:left;
}
#our_efforts .childcare_support p.title{
	font-size:19px;
}
#our_efforts .childcare_support ul li{
	font-size:16px;
	text-align:left;
}
#our_efforts .woman_box .box_left{
	width:40%;
}
#our_efforts .woman_box .box_right{
	width:60%;
}
#our_efforts .small{
	font-size:12px;
}
#our_efforts .childcare_title{
	display: block;
	font-size: 21px;
	color: #004fc1;
	margin: 30px 0;
	line-height: 1;
}
#our_efforts .childcare_title span{
	font-size: 18px;
}

#our_efforts .childcare_flex{
	display:flex;
}
#our_efforts .childcare_man_box{
	color:#00a5f7;
	width:48%;
	font-size:20px;
}
#our_efforts .childcare_woman_box{
	color:#ff5f99;
	width:48%;
	font-size:20px;
}
#our_efforts .childcare_man_box p.percent,
#our_efforts .childcare_woman_box p.percent{
	margin-top: 40px;
	line-height: 1px;
}
#our_efforts .childcare_man_box p.percent .js-num,
#our_efforts .childcare_woman_box p.percent .js-num{
	font-size:76px;
}
#our_efforts .childcare_man_box p.percent span,
#our_efforts .childcare_woman_box p.percent span{
	font-size:16px;
	line-height:1;
	line-height: 16px;
}

/* ------------------------- 人事ポリシー ------------------------- */
.hrpolicybox{
	position:relative;
	border:solid 3px #1175ba;
	border-radius:10px;
	padding:20px 10px;
	font-size:14px;
}
.hrpolicyflex{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.hrpolicybox.hrpolicyflex .mainbox{
	width:50%;
}
.hrpolicybox.hrpolicyflex .photobox{
	width:25%;
}
.hrpolicybox.hrpolicyflex .photobox img{
	max-height:90px;
}
.hrpolicybox50{
	width:48%;
	position:relative;
	border:solid 3px #1175ba;
	border-radius:10px;
	padding:20px 10px;
	font-size:14px;
}
.hrpolicybox50 img{
	max-height:100px;
	margin-bottom:10px;
}
.hrpolicybox .headline,
.hrpolicybox50 .headline{
	font-weight:bold;
	font-size:16px;
	margin-bottom:10px;
}
.hrpolicybox ul li{
	list-style:disc;
	text-align:left;
	margin-left: 30px;
}
.hrpolicybox .backimg{
	position:absolute;
	right:0;
	bottom:0;
	max-width:220px;
}

/* ------------------------- カスタマーハラスメントに対する方針 ------------------------- */
#customerharassment .next_section h5{
	border-left: 3px solid #1175ba;
	padding: 5px 10px;
	margin-bottom: 10px;
}
#customerharassment .next_section p{
	text-align:left;
	padding:10px;
}
#customerharassment .next_section .listdiscblue li{
	text-align:left;
	text-indent: -1em;
	margin-left: 1em;
}
#customerharassment .next_section .listdiscblue li:before{
	content:'・';
	color:#1175ba;
}
#customerharassment .next_section.cusharalist{
	position:relative;
}
#customerharassment .next_section.cusharalist .photo{
	position:absolute;
	top:0;
	right:0;
}


/***********************************
					活動トピックス
***********************************/
#search_menu {
	display: flex;
	width: 100%;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px dashed #929292;
}

.freewords {
	width: 50%;
	margin-right: 5%;
}

.year_select {
	width: 50%;
}

p.search_title {
	display: block;
	font-size: 21px;
	color: #000;
	padding: 3px 3px 3px 15px;
	border-left: 5px solid #f47d7d;
	margin-bottom: 20px;
	line-height: 1;
	text-align:left;
}

.serch_box {
	width: 100%;
}

.serch_box input {
	display: block;
	width: 100%;
	padding: 5px;
	border: 1px solid #8c8c8c;
	color: #ff5a5a;
	padding: 10px;
	line-height: 1;
}

.serch_box_colum3 {
	display: flex;
	justify-content: space-between;
}

.serch_box_colum3 select {
	display: block;
	border: 1px solid #8c8c8c;
	color: #ff5a5a;
	padding: 10px;
	line-height: 1;
}

.year_box {
	width: 40%;
}

.year_box select {
	width: 100%;
}

.month_box {
	width: 33%;
	margin-left: 20px;
}

.month_box select {
	width: 100%;
}

.search_btn {
	margin-left: 20px;
}

[data-whatinput="mouse"] *:focus,
[data-whatinput="touch"] *:focus {
	outline: none;
}

.search_btn button {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: inline-block;
	min-height: 40px;
	padding: 8px 15px;
	border: 1px solid #cc0000;
	background: #cc0000;
	color: #ffffff;
	cursor: pointer;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	-webkit-transition-property: background, border, color, fill, content, opacity, -webkit-transform;
	transition-property: background, border, color, fill, content, opacity, -webkit-transform;
	transition-property: background, border, color, transform, fill, content, opacity;
	transition-property: background, border, color, transform, fill, content, opacity, -webkit-transform;
}

.search_btn button:hover {
	background: #ffffff;
	color: #cc0000;
}

.post_category {
	display: flex;
	align-items: center;
	/* margin-bottom: 45px; */
	margin-bottom: 20px;
}

.post_category p.search_title {
	margin-bottom: 0;
}

/* .category_btn {
	display: flex;
	width: 70%;
	border-bottom: 1px solid #929292;
	margin-left: 40px;
} */

.category_btn {
	display: flex;
	width: 100%;
	border-bottom: 1px solid #929292;
	margin-left: 0;
	padding-left: 15px;
}

.category_btn li {
	margin-right: 12px;
}

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

.category_btn li a {
	display: block;
	color: #000;
	padding: 10px 20px;
	border-radius: 5px 5px 0 0;
	text-align: center;
	text-decoration: none;
	border: 1px solid #929292;
	border-bottom: 0;
	line-height: 1;
	cursor: pointer;
}

.category_btn li.topics_cat01 a {
	background-color: #ffefca;
}

.category_btn li.topics_cat01.active a {
	background-color: #ffd87e;
}

.category_btn li.topics_cat02 a {
	background-color: #cbf4d7;
}

.category_btn li.topics_cat02.active a {
	background-color: #a1ebb7;
}

.category_btn li.topics_cat03 a {
	background-color: #cceef2;
}

.category_btn li.topics_cat03.active a {
	background-color: #8fdae2;
}

.category_btn li.topics_cat04 a {
	background-color: #f9afaf;
}

.category_btn li.topics_cat04.active a {
	background-color: #f57373;
}

li.topics_cat01.tab.active {
	position: relative;
}

li.topics_cat01.tab.active:after {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: -1px;
	left:0;
}

li.topics_cat02.tab.active {
	position: relative;
}

li.topics_cat02.tab.active:after {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: -1px;
	left:0;
}

li.topics_cat03.tab.active {
	position: relative;
}

li.topics_cat03.tab.active:after {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: -1px;
	left:0;
}

li.topics_cat04.tab.active {
	position: relative;
}

li.topics_cat04.tab.active:after {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: -1px;
	left:0;
}

#pagenation {
	display: block;
	width: 100%;
	padding: 50px 0;
}

#pagenation ul {
	display: flex;
	justify-content: center;
}

#pagenation ul li {
	width: auto;
	margin-right: 7px;
}

#pagenation ul li:last-child {
	margin-right: 0;
}

#pagenation ul li a {
	display: block;
	color: #000;
	padding: 5px 8px;
	border-radius: 5px;
	border: 1px solid #0075c1;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

#pagenation ul li a:hover,
#pagenation ul li.cur {
	background-color: #0075c1;
	color: #ffffff;
	display: block;
	padding: 5px 8px;
	border-radius: 5px;
	border: 1px solid #0075c1;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

#pagenation ul li a.dotted {
	background: none;
	border: none;
}

#pagenation ul li a.dotted img {
	vertical-align: middle;
}

.news_box .content {
	display: none;
}

.news_box .content.show {
	display: block;
}
.news_box .news_col dl{
	text-align:left;
}
.news_box .news_col dl dt span {
	color: #000;
}

.news_box .news_col dl dt span.topicscat01 {
	background-color: #ffd87e;
}

.news_box .news_col dl dt span.topicscat02 {
	background-color: #8fdae2;
}

.news_box .news_col dl dt span.topicscat03 {
	background-color: #a1ebb7;
}

.news_box .news_col dl dt span.topicscat00 {
	background-color: #f57373;
}

.news_list_title {
	margin-top: 30px;
	margin-bottom: 5px !important;
}

#topics_list .category_select {
	width: 100%;
}

#topics_list .category_select ul {
	display: flex;
	width: 100%;
}

#topics_list .category_select ul li {
	width: auto;
	margin-right: 15px;
}

#topics_list .category_select ul li:last-child {
	margin-right: 0;
}

#topics_list .category_select ul li a {
	display: block;
	color: #000;
	padding: 10px 25px;
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	border: 1px solid #929292;
	line-height: 1;
	cursor: pointer;
}

#topics_list .category_select ul li a.all.active {
	background-color: #f57373;
}

#topics_list .category_select ul li a.tiiki.active {
	background-color: #ffd87e;
}

#topics_list .category_select ul li a.cs.active {
	background-color: #8fdae2;
}

#topics_list .category_select ul li a.sdgs.active {
	background-color: #cbf4d7;
}


/***********************************
					企業情報
***********************************/

/***********************************
					会社概要
***********************************/
dl.next {
	display: table;
	width: 100%;
	padding: 20px 0;
	border-top: 1px solid #919191;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

dl.next p {
	line-height: 1.4;
}

dl.next dt {
	display: table-cell;
	width: 25%;
	padding: 10px;
	font-weight: normal;
	text-align: center;
	background-color: rgba(0, 80, 123, 0.15);
	vertical-align: middle;
	font-size: 18px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

dl.next dd {
	display: table-cell;
	width: 75%;
	padding: 10px;
	vertical-align: middle;
	font-weight: normal;
	font-size: 15px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	text-align:left;
}

dl.title {
	display: table;
	width: 100%;
	padding: 5px;
	border-bottom: 1px dashed #919191;
}

dl.title:after {
	content: "";
	display: block;
	clear: both;
}

dl.title dt {
	display: table-cell;
	width: 49%;
	background: none;
	text-align: left;
	font-size: 15px;
}

dl.title dt:before {
	content: "●";
	color: #727272;
	display: inline-block;
	padding-right: 3px;
	vertical-align: middle;
}

dl.title dd {
	display: table-cell;
	width: 49%;
	font-size: 15px;
}

.lbltitle {
	font-size: 120%;
	font-weight: bold;
	padding: 10px 0 0;
}

img.float_right {
	float: right;
	padding: 5px;
}

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin: 10px 0 5px 0;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


.next_bottom_area {
	width: 100%;
	padding: 20px;
	margin-top: 20px;
	border-radius: 10px;
	background-color: rgba(0, 80, 123, 0.15);
}

ul.col2 {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	-js-display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

ul.col2 li {
	width: 49%;
	margin-right: 1%;
	position: relative;
}

ul.col2 li a {
	display: block;
	padding: 10px 20px;
	background-color: #ffffff;
	border: 1px solid #000000;
	color: #000000;
	font-size: 120%;
	text-decoration: none;
}

ul.col2 li a:hover {
	background-color: #105da4;
	color: #ffffff;
	transition: 0.7s;
}

ul.col2 li a:after {
	content: url("../images/common/company_arw.png");
	position: absolute;
	right: 20px;
	top: 13px;
}

ul.col2 li a:hover:after {
	content: url("../images/common/company_arw_after.png");
	position: absolute;
	right: 20px;
	top: 13px;
}


p#company_pdf {
	width: 100%;
	margin-top: 60px;
}

p#company_pdf a {
	display: block;
	padding: 10px 20px;
	background-color: #ffffff;
	border: 1px solid #000000;
	color: #000000;
	font-size: 120%;
	text-decoration: none;
	vertical-align: middle;
}

p#company_pdf a:before {
	content: url("../images/common/pdf_icon.png");
	display: inline-block;
	margin-top: -35px;
	padding-right: 30px;
	vertical-align: middle;
}

/***********************************
					テナント情報
***********************************/
.contact_area {
	margin-top: 2em !important;
	margin: 0 auto;
	padding: 10px 20px;
	border-radius: 10px;
	background-color: #0a72b3;
	color: #ffffff;
}

.contact_area p.title {
	font-size: 18px;
	font-weight: bold;
}

.contact_area p.tel {
	display: inline-block;
	font-size: 95%;
	margin-top: 5px;
	font-weight: bold;
}

.contact_area p.tel span {
	display: inline-block;
	font-size: 32px;
	font-weight: bold;
	padding-right: 0.5em;
}

.contact_area p.tel span:before {
	content: url("../images/common/tel.png");
	display: inline-block;
	vertical-align: middle;
	padding-right: 5px;
}

/***********************************
					館内広告のご案内
***********************************/
#advertisement a dl.next span.cate {
	display: inline-block;
	margin-right: 10px;
	padding: 0 5px;
	font-size: 95%;
	text-align: center;
	border: 1px solid #999999;
	vertical-align: top;
}

#advertisement .inquiry {
	float: right !important;
}

#advertisement ul#menulist {
	margin-top: 20px;
}

#advertisement ul#menulist li.inquiry a {
	color: #FF0000;
	border: double 4px #FF0000;
	background-color: #FFEAEA;
}

#advertisement ul#menulist li.inquiry a:hover {
	background-color: #FFB3B3;
}

#advertisement ul.submenubtn li {
	width: 18%;
	height: 50px;
	line-height: 50px;
	font-size: 14px;
	text-align: center;
	color: #407db6;
	float: left;
	text-align: center;
	font-weight: bold;
	margin-right: 10px;
}

#advertisement ul.submenubtn li a {
	display: block;
	background-color: #ffffff;
	border: solid 1px #407db6;
	border-radius: 10px;
	color: #407db6;
	text-decoration: none;
}

#advertisement ul.submenubtn li.active a,
#advertisement ul.submenubtn li a:hover {
	transition: all 0.2s ease;
	display: block;
	background-color: #407db6;
	color: #FFFFFF;
}

#advertisement a dl.next h4 {
	margin-top: 0;
	padding: 0;
	font-size: 130%;
	border: none;
	color: #329ce7;
}

#advertisement .availabilitylist a:hover {
	background-color: #FFFFCA;
	display: block;
}

#advertisement dl.next,
#advertisement .nodatalist {
	border: 1px solid #919191;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 20px;
}

#advertisement .availabilitylist a {
	text-decoration: none;
	color: #333;
}

#advertisement_detail table {
	border: 1px solid #329ce7;
	width: 100%;
}

#advertisement_detail table td {
	width: auto;
	border-right: 1px solid #329ce7;
	border-bottom: 1px solid #329ce7;
	padding: 10px;
}

#advertisement_detail table th {
	background-color: #329ce7;
	color: #FFF;
	border-bottom: 1px solid #FFF;
	padding: 10px;
}

#advertisement_detail table th.inq {
	border-bottom: none;
}

#advertisement_detail .mainphoto img {
	width: 100%;
	border: solid 2px #C0C0C0;
}

#advertisement_detail .pr {
	display: block;
	font-size: 22px;
	font-weight: normal;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin-bottom: 20px;
	background-image: url('../images/common/memo.png');
	background-repeat: no-repeat;
	background-position: left center;
	color: #329ce7;
	margin-top: 20px;
	padding-left: 70px;
	min-height: 82px;
}

#advertisement_detail table.data {
	margin-top: 20px;
}

#advertisement_detail dl.next {
	border: solid 2px #009de6;
	border-radius: 10px;
	padding: 0;
	margin-bottom: 10px;
}

#advertisement_detail dl.next dt {
	width: 15%;
	background-color: #009de6;
	font-size: 200%;
	color: #FFFFFF;
}

#advertisement_detail dl.next dd {
	font-size: 200%;
	color: #329ce7;
	font-weight: bold;
}


#advertisement_detail .data {
	font-size: 120%;
}

#advertisement_title .printer {
	border: solid 1px #000;
	float: right;
	font-size: 18px;
	padding: 0;
}

#advertisement_title .printer a {
	background-image: url('../images/common/printer.png');
	background-repeat: no-repeat;
	background-position: left 5px center;
	background-color: #FFFFFF;
	color: #333333;
	padding: 4px 10px 4px 35px;
	display: block;
	text-decoration: none;
}

#advertisement_title .printer a:hover {
	background-color: #FF8000;
	color: #FFFFFF;
}

#advertisement_detail .inquiry {
	float: right !important;
}

#advertisement_detail .inquiry a {
	display: inline-block;
	padding: 5px 10px;
	text-decoration: none;
	border-radius: 3px;
	transition: .4s;
	color: #FF0000;
	border: double 4px #FF0000;
	background-color: #FFEAEA;
	font-size: 80%;
}

#advertisement_detail .inquiry a:hover {
	background-color: #FFB3B3;
}

#advertisement_detail .contact_area {
	width: 100%;
}

.availability th {
	width: 20%;
}

.availability span.tel {
	margin-right: 20px;
}

.availability span.tel:before {
	content: url("../images/common/ic_tel.png");
	display: inline-block;
	vertical-align: middle;
	padding-right: 5px;
}

.availability span.mail:before {
	content: url("../images/common/ic_mail.png");
	display: inline-block;
	vertical-align: middle;
	padding-right: 5px;
}

.mail_form_btn {
	display: block;
	margin-top: 18px;
	padding: 15px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.7);
}

.mail_form_btn p:before {
	content: '';
	/*何も入れない*/
	display: inline-block;
	width: 30px;
	/*画像の幅*/
	height: 30px;
	/*画像の高さ*/
	background-image: url("../images/common/mail2.png");
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}

.mail_form_btn p:after {
	content: "";
	display: block;
	clear: both;
}

.mail_form_btn p {
	display: inline-block;
	color: #000000;
	font-size: 100%;
}

.cf:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
	font-size: 0;
	line-height: 0;
}

@keyframes fuwafuwa {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-20px);
	}
}

/* このクラスをつけると回転を無限に繰り返します */
.anime-fuwafuwa {
	animation: 3s fuwafuwa infinite;
}


/***********************************
					サイトマップ
***********************************/
#sitemap .sitemapbox a{
	text-decoration:none;
	color:#000;
}
#sitemap .sitemapbox{
	border:dashed 1px #ccc;
	padding:20px;
	background-color: #FFF;
	z-index: 100;
	position: relative;
}
#sitemap .sitemapbox p.title{
	border-bottom:dotted 1px #ccc;
	font-size:20px;
	padding:10px;
}
#sitemap .sitemapbox p.title span{
	font-size:14px;
}
#sitemap .sitemapbox ul{
	list-style:disc;
	margin:20px 0 10px;
}
#sitemap .sitemapbox ul li{
	list-style:disc;
	margin-left:30px;
	padding:5px 0;
}
#sitemap .sitemapflex{
	display:flex;
	flex-wrap:wrap;
}
#sitemap .sitemapflex div{
	width:31%;
	margin:10px 1%;
}


/***********************************
					個人情報保護方針／当サイトについて・ご利用規約
***********************************/
.privacybox{
	position:relative;
	z-index:100;
}
.servicebox{
	position:relative;
	z-index:100;
}
.disclist li{
	list-style-type: disc;
	margin: 10px 0 5px 30px;
}

