@charset "utf-8";

/*
Theme Name: 佐藤工業株式会社
Theme URI: https://www.direx.ne.jp/
Description: 佐藤工業株式会社
Author: Direx Corporation
Author URI: https://www.direx.ne.jp/
Version: 1.0
*/

/* =Reset
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}
*,
*:before,
*:after {
	box-sizing: border-box;
	-ms-box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
}
body,
input,
textarea,
body.custom-font-enabled {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
body {
	line-height: 1;
	background: #fff;
}
ol,
ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption,
th,
td {
	font-weight: normal;
	text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height: 1;
	margin: 0;
	padding: 0;
}
html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
a:focus {
	outline: thin dotted;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}
p {
	font-size: 15px;
	margin-bottom: 15px;
	line-height: 1.9;
}
ul li,
ol li {
	font-size: 15px;
	line-height: 1.9;
	margin: 0 0 5px;
}
ol {
	list-style: decimal;
	margin: 0 0 20px 1.5em;
}
ul ul,
ol ol,
ul ol,
ol ul {
	margin-bottom: 0;
}
dl {
	margin: 0 0 24px 0;
}
dt,
dd {
	line-height: 1.9;
}
dt {
	font-weight: bold;
}
dd {
	margin: 0 0 18px 20px;
}
strong {
}
cite,
i {
	font-style: normal;
}
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
small {
	font-size: smaller;
}
img {
	border: none;
	vertical-align: top;
	max-width: 100%;
	height: auto;
}

/* Clearing floats */
.clear:after,
.wrapper:after,
.format-status .entry-header:after {
	clear: both;
}
.clear:before,
.clear:after,
.wrapper:before,
.wrapper:after,
.format-status .entry-header:before,
.format-status .entry-header:after {
	display: table;
	content: "";
}
/*
ClearFix
*/
.clearfix:after {
    content:" "!important;;
    display:block;
    clear:both;
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
.alignleft {
	float: left;
}
.alignright {
	float: right;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

body {
	font-size: 15px;
	color: #000;
}
a {
	color: #000;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}
a:focus, *:focus {
	outline:none;
}
a img {
    backface-visibility: hidden;
	transition: 0.3s;
}
a:hover img {
	opacity: 0.7;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
.komelist {
	margin: 0 0 35px;
}
.komelist li {
	list-style: none;
	margin-left: 1em;
}
.komelist li::before {
	content:"※";
	margin-left: -1em;
}

/* Page structure */
#page {
	position: relative;
	margin: 0 auto;
	overflow: visible;
	padding: 0;
	background: none;
}
#container {
	position: relative;
	overflow: hidden;
}
main {
	position: relative;
	width: 100%;
	z-index: 1;
	overflow: hidden;
	padding-top: 80px;
}
.site-content {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	width: calc(100% - 50px);
	max-width: 1200px;
	margin: 0 auto 210px;
}
#content {
	position: relative;
	width: calc(100% - 50px);
	max-width: 1200px;
	margin: 0 auto 210px;
	z-index: 2;
}
.site-content #content {
	width: calc(100% - 345px);
	margin: 0;
}
#secondary {
	width: 220px;
}
.cbox,
.cbox1100,
.cbox1366 {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.cbox1100 {
	max-width: 1100px;
}
.cbox1200 {
	max-width: 1200px;
}



/*
header
*/
.site-header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 80px;
	background-color: #fff;
	overflow: visible;

	z-index: 5;
	margin: 0;
	transition: .3s;
}
.site-title {
	position: absolute;
	top: 50%;
	left: 25px;
	transform: translateY(-50%);
	width: auto;
	transition: .3s;
	z-index: 3;
}
.site-title h1 {
	width: 100%;
	max-width: 242px;
	margin: 0;
	padding: 0;
	z-index: 2;
}
.site-title a:hover img {
	opacity:1.0;
}


/* Navigation Menu */
#mainmenu {
	position: absolute;
	top: 0px;
	right: 0;
	width: 100%;
	height: 80px;
	max-width: 1200px;
	z-index: 1;
}
#mainmenu ul,
#mainmenu li {
	margin: 0;
	padding: 0;
}
#mainmenu ul {
	display: flex;
	align-items: center;
	align-content: flex-start;
	justify-content: flex-end;
	width: 100%;
}
#mainmenu ul li {
	width: auto;
	height: 80px;
}
#mainmenu ul li.mpartner {
	width: 160px;
}
#mainmenu ul li.mcontact {
	width: 80px;
}
#mainmenu ul li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	text-align: center;
	font-size: 17px;
	line-height: 1.2;
	text-decoration: none;
	padding: 0 22px;
}
#mainmenu ul li.mpartner a {
	background-color: #F5F5F0;
}
#mainmenu ul li.mcontact a {
	font-size: 0;
	background-color: #174586;
	background-image: url("img/icon_mail.svg");
	background-repeat: no-repeat;
	background-position: center center;
}
#mainmenu ul li a::before {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 20px;
	content: "";
	background-color: #707070;
}
#mainmenu ul li a::after {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 80px;
	height: 14px;
	content: "";
	background-color: #93243A;
	opacity: 0;
	transition: all 0.3s ease;
}
#mainmenu ul li a:hover::after,
#mainmenu ul li.current_page_item a::after,
#mainmenu ul li.current-menu-item a::after,
#mainmenu ul li.current-page-ancestor a::after,
.page-id-48 #mainmenu ul li#menu-item-230 a::after,
.page-id-50 #mainmenu ul li#menu-item-230 a::after,
.parent-pageid-48 #mainmenu ul li#menu-item-230 a::after,
.parent-pageid-50 #mainmenu ul li#menu-item-230 a::after,
.post-type-archive-evaluation #mainmenu ul li#menu-item-59 a::after,
.tax-cat_news #mainmenu ul li#menu-item-56 a::after,
.tax-cat_evaluation #mainmenu ul li#menu-item-59 a::after,
.tax-cat_works #mainmenu ul li#menu-item-64 a::after,
.single-news #mainmenu ul li#menu-item-56 a::after,
.single-evaluation #mainmenu ul li#menu-item-59 a::after,
.single-works #mainmenu ul li#menu-item-64 a::after {
	opacity: 1;
}
#mainmenu ul li.mpartner a::after,
#mainmenu ul li.mcontact a::after,
#mainmenu ul li.mrecruit a::before,
#mainmenu ul li.mpartner a::before,
#mainmenu ul li.mcontact a::before {
	display: none;
}

.submenubox {
	display: none;
	position: fixed;
	left: 50%;
	top: 80px;
	transform: translateX(-50%);
	overflow: hidden;
	width: 100%;
	max-width: 1440px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
.submenubox nav {
	width: 100%;
	background-color: rgba(255,255,255,0.9);
	border-top: 2px solid #93243A;
	padding: 20px;
}
.submenubox nav ul {
	display: flex;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
	gap: 20px 0;
}
.submenubox nav ul li {
	width: calc(100% / 6);
	margin: 0;
	padding: 0;
}
.submenubox nav ul li.subshikenshitsu {
	width: auto;
}
.submenubox nav ul li a {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	text-decoration: none;
	border-left: 1px solid #93243A;
	padding: 5px 0 5px 10px;
}
.submenubox nav ul li ul {
	flex-wrap: wrap;
	padding: 10px 0 0 1em;
}
.submenubox nav ul li ul li {
	width: 100%;
}
.submenubox nav ul li.subshikenshitsu ul li {
	width: 50%;
}
.submenubox nav ul li ul li a {
	position: relative;
	font-size: 14px;
	font-weight: 500;
	border: none;
	padding-left: 20px;
}
.submenubox nav ul li ul li a::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #93243A;
	width: auto;
	height: auto;
	content: "→";
}


#toggle,
#spmainmenu {
	display: none;
}


.page_title {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
	height: 200px;
	background-image: url("img/bg_pagetitle.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.page_title h1 {
	position: relative;
	width: calc(100% - 40px);
	color: #fff;
	font-size: 30px;
	text-align: center;
	line-height: 1;
	text-shadow: 4px 4px 10px #333;
	margin: 0 auto 20px;
	padding: 0;
}
h2 {
	position: relative;
	width: 100%;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.2;
	padding: 0;
	margin: 0 auto;
}
h2 a:hover {
	text-decoration: underline;
}
.titlebox {
	position: relative;
	width: 100%;
	height: 80px;
	margin-bottom: 75px;
	background-color: #F5F5F0;
}
.titlebox h2 {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	text-align: center;
	padding-bottom: 15px;
}
.titlebox h2::after {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 250px;
	height: 2px;
	content: "";
	background-color: #93243A;
}

h3,
.technology h4 {
    position: relative;
	color: #fff;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
	background-color: #174586;
	margin: 0 0 40px;
	padding: 6px 10px 10px;
	border-left: 10px solid #fff;
}
h3.entry-title {
	width: 100%;
	margin-bottom: 30px;
	padding: 0;
}
h3 a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 6px 10px 10px;
}
h3::before {
	position: absolute;
	left: -10px;
	top: 0;
	width: 7px;
	height: 100%;
	content: "";
	background-color: #93243A;
	z-index: 1;
}
h4 {
	position: relative;
	font-size: 18px;
	line-height: 1.2;
	padding: 0;
	margin: 0 0 30px;
}
.technology h4 {
	border: none;
	font-weight: 700;
	margin-bottom: 20px;
}
.technology h4::before {
	display: none;
}
h5 {
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 25px;
}
img.alignleft {
	margin: 0 24px 12px 0;
}
img.alignright {
	margin: 0 0 12px 24px;
}
img.aligncenter {
	margin-bottom: 12px;
	margin-bottom: 0.857142857rem;
}


/*
main
*/
table {
	width: 100%;
	margin: 0 0 25px;
	border: 1px solid #CCCCBD;
	border-bottom: none;
}
table th,
table td {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	text-align: left;
	border-bottom: 1px solid #CCCCBD;
	padding: 10px;
}
table th {
	width: 20%;
	background-color: #F5F5F0;
}
table td {
	padding: 10px 10px 10px 35px;
}

.table-scarea table.auto {
	table-layout: auto;
}
.table-scarea table {
	width: 100%;
	min-width: 1000px;
}
/*
* Container style
*/
.table-scarea,
.table-scarea1,
.table-scarea2,
.table-scarea3 {
    width: 100%;
	margin-bottom: 30px;
    padding-bottom: 20px;
    position: relative;
	display: block;
	overflow-anchor: none;
	-ms-overflow-style: none;
	touch-action: auto;
	-ms-touch-action: auto;
	overflow-x: scroll;
	scrollbar-width: none;
}
.table-scarea::-webkit-scrollbar,
.table-scarea1::-webkit-scrollbar,
.table-scarea2::-webkit-scrollbar,
.table-scarea3::-webkit-scrollbar {
	display:none;
}

/*
* Scrollbar rail styles
*/
.table-scarea .ps__rail-x,
.table-scarea1 .ps__rail-x,
.table-scarea2 .ps__rail-x,
.table-scarea3 .ps__rail-x {
	display: block;
	opacity: 1;
	transition: background-color .2s linear, opacity .2s linear;
	-webkit-transition: background-color .2s linear, opacity .2s linear;
	height: 2px;
	background-color: #EFF3F7;
	/* there must be 'bottom' or 'top' for ps__rail-x */
	bottom: 0px;
	/* please don't change 'position' */
	position: absolute;
}
.ps__rail-y {
	display: none;
	opacity: 0;
	transition: background-color .2s linear, opacity .2s linear;
	-webkit-transition: background-color .2s linear, opacity .2s linear;
	width: 15px;
	/* there must be 'right' or 'left' for ps__rail-y */
	right: 0;
	/* please don't change 'position' */
	position: absolute;
}
.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
	display: block;
	background-color: #EFF3F7;
}
.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
	opacity: 0.6;
}
.ps__rail-x:hover,
.ps__rail-y:hover,
.ps__rail-x:focus,
.ps__rail-y:focus {
	background-color: #eee;
	opacity: 0.9;
}

/*
* Scrollbar thumb styles
*/
.ps__thumb-x {
	background-color: #174586;
	/*border-radius: 6px;*/
	transition: background-color .2s linear, height .2s ease-in-out;
	-webkit-transition: background-color .2s linear, height .2s ease-in-out;
	height: 2px;
	/* there must be 'bottom' for ps__thumb-x */
	bottom: 0px;
	/* please don't change 'position' */
	position: absolute;
}
.ps__thumb-y {
	background-color: #aaa;
	border-radius: 6px;
	transition: background-color .2s linear, width .2s ease-in-out;
	-webkit-transition: background-color .2s linear, width .2s ease-in-out;
	width: 6px;
	/* there must be 'right' for ps__thumb-y */
	right: 2px;
	/* please don't change 'position' */
	position: absolute;
}
.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x {
	background-color: #999;
	height: 11px;
}
.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y {
	background-color: #999;
	width: 11px;
}
/* MS supports */
@supports (-ms-overflow-style: none) {
	.ps {
		overflow: auto !important;
	}
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.ps {
		overflow: auto !important;
	}
}







.attention,
.attention a {
	color: #DF5461;
}
section {
	clear: both;
	padding: 0 0 65px;
}
.thumbnail {
	margin: 0 auto 15px;
}
p.photo_r {
	float: right;
	margin: 0 0 15px 15px;
}
p.photo_l {
	float: left;
	margin: 0 15px 15px 0;
}
p.photo_l {
	float: left;
	margin: 0 15px 15px 0;
}
.aligncenter {
	text-align: center;
}
.btn,
.btn03 {
	position: relative;
	display: inline-block;
	width: auto;
	margin: 0 auto;
	z-index: 1;
}
.btn a {
	display: block;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 2;
	text-align: center;
	text-decoration: none;
	background-color: #333;
	padding: 5px 15px;
}
.btn02 {
	width: 100%;
	max-width: 175px;
	line-height: 1.5;
}
.btn02 a,
input[type="submit"],
input[type="button"] {
	color: #fff;
    display: block;
	width: 100%;
	max-width: 175px;
	font-size: 18px;
	text-align: center;
	text-decoration: none;
	border: 1px solid #707070;
	background-color: #93243A;
	padding: 15px 10px;
	margin: 0 auto;
	cursor: pointer;
	transition: all 0.3s ease;
}
.btn02 a {
	padding: 10px;
	border-radius: 5px;
}
.btn03 a,
.btn_list li a {
	display: block;
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #93243A;
	padding: 3px 60px;
}
.btn_arrow {
	position: relative;
	padding-left: 20px;
}
.btn_arrow::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: auto;
	height: auto;
	font-size: 15px;
	font-weight: 500;
	color: #93243A;
	content: "→";
}
input[type="submit"]:hover,
input[type="button"]:hover {
}




/*
topimage
*/
.topimage {
	position: relative;
	width: 100%;
	height: 39vw;
	min-height: 750px;
	margin: 0 auto;
	padding: 0;
}
.video_wrapper {
    position: relative;
    width: 100vw;
    height: 100%;
    overflow: hidden;
}
.video_wrapper > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}
.topimage p {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
	font-family: 'Noto Serif JP', serif;
	font-size: 42px;
	color: #fff;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	margin: 0;
	z-index: 2;
}

.read_topimage {
  opacity: 0;
  animation: contentsfadeIn 1s ease-in-out 2s forwards;
}

@keyframes contentsfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media only screen and (min-width: 801px) {

  .topimage {
    position: relative;
    width: 100%;
    height: 39vw;
    min-height: 840px;
    margin: 0 auto;
    padding: 0;
  }

  .video_wrapper > video {
    position: absolute;
    top: 50%;
    bottom: auto;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
  }
}

/*
breadcrumb
*/
#breadcrumb {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 10px 0 0 30px;
	z-index: 1;
}
#breadcrumb p {
	color: #666;
	width: 100%;
	font-size: 10px;
	line-height: 1.5;
	margin: 0;
}
#breadcrumb p a {
	position: relative;
	color: #666;
	text-decoration: none;
}
#breadcrumb p span {
	display: inline-block;
	margin: 0 3px;
}
#breadcrumb p span:first-child {
	margin: 0 3px 0 0;
}


/*
hometop
*/
.hometop {
	display: flex;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
}
.homefuture {
	position: relative;
	display: flex;
	align-items: center;
	width: 420px;
	min-height: 480px;
	background-image: url("img/bg_homefuture.jpg");
	background-repeat: no-repeat;
	background-position: right top;
	background-size: cover;
	padding-left: 20px;
}
.homefuture::before {
	position: absolute;
	top: 0;
	right: 0;
	width: 1000%;
	height: 100%;
	content: "";
	background-color: #003375;
	z-index: -1;
}
.l_homefuture {
	position: relative;
	color: #fff;
	border-left: 5px solid #93243A;
	padding: 0 35px 0 15px;
}
.l_homefuture h2 {
	margin: 0 0 40px;
}
.l_homefuture p {
	font-size: 15px;
	font-weight: 700;
	margin: 0;
}

.homenews {
	width: calc(100% - 420px);
}
.homenews h2 {
	position: relative;
	background-color: #F5F5F0;
	padding: 35px 10px 35px 8.8%;
	margin: 0;
}
.homenews h2::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 1000%;
	height: 100%;
	content: "";
	background-color: #F5F5F0;
	z-index: -1;
}
.homenews h2 a {
	font-family: 'Noto Serif JP', serif;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.1;
	text-decoration: none;
	background-image: url("img/bg_homeinformation.svg");
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 34px;
}
.homenews ul {
	padding: 45px 20px 0 8.8%;
	margin: 0;
}
.homenews ul li {
	margin: 0 0 30px;
	padding: 0;
}
.homenews ul li a {
	display: block;
	text-decoration: none;
}
.homenews ul li a:hover {
	text-decoration: underline;
}
.entrydate {
	display: inline-block;
	font-size: 14px;
	margin-right: 15px;
}
.entrycat {
	display: inline-block;
	color: #fff;
	font-size: 12px;
	line-height: 1.1;
	width: 100px;
	text-align: center;
	background-color: #333;
	padding: 2px 0 4px;
}
.entrytitle {
	display: block;
	font-size: 15px;

}


/*
hometrajectory
*/
.homecontent h2 {
	position: relative;
	font-family: 'Noto Serif JP', serif;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.1;
	text-align: center;
	margin: 0 auto 30px;
}
.hometrajectory {
	padding: 0 0 50px;
	margin-bottom: 50px;
	background-color: #F5F5F0;
}
.homecontent.hometrajectory h2 {
	color: #fff;
	background-color: #174586;
	padding: 75px 0 120px;
	margin: 0 auto;
	z-index: 1;
}
.bn_hometrajectory {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: -95px auto 0;
	text-align: center;
	z-index: 2;
}
.bn_hometrajectory a {
	transition: all 1s ease;
}
.bn_hometrajectory a img {
	text-align: center;
	margin: 0 auto;
	transform: scale(0.95833)
}
.bn_hometrajectory a:hover img {
	opacity: 1;
	transform: scale(1.00145);
}


/*
homeworksbox
*/
.homeworks {
	padding-bottom: 75px;
}
.homeworksbox {
	display: flex;
	width: 100%;
}
.homeworksbox a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	height: 400px;
	text-decoration: none;
	overflow: hidden;
}
.homeworksbox a::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transition: all 0.3s ease;
	z-index: 0;
}
.homeworksbox a:nth-child(1)::before {
	background-image: url("img/bg_homework01.jpg");
}
.homeworksbox a:nth-child(2)::before {
	background-image: url("img/bg_homework02.jpg");
}
.homeworksbox a h3 {
	position: relative;
	display: flex;
	width: 140px;
	height: 140px;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-family: 'Noto Serif JP', serif;
	font-size: 26px;
	font-weight: 500;
	text-align: center;
	background-color: rgba(23,69,134,0.6);
	border: none;
	margin: 0;
	padding: 0;
	z-index: 1;
	transition: all 0.3s ease;
}
.homeworksbox a h3::before {
	display: none;
}
.homeworksbox a:hover h3 {
	transform: scale(1.2);
}
.homeworksbox a:hover::before {
	transform: scale(1.1);
}


/*
homecsr
*/
.homecsr {
	position: relative;
	width: 100%;
	padding-bottom: 105px;
}
.homecsr::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 206px;
	content: "";
	background-color: #174586;
	z-index: -1;
}
.csrslidebox {
	width: calc(100% - 70px);
	max-width: 1200px;
	margin: 0 auto;
}
.csrslide a {
	position: relative;
	display: block;
	text-decoration: none;
	overflow: hidden;
}
.csrslide a h3 {
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	width: 100%;
	height: 100px;
	font-family: 'Noto Serif JP', serif;
	font-size: 26px;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	background-color: rgba(0,0,0,0.3);
	border: none;
	z-index: 1;
	margin: 0;
	padding: 0;
}
.csrslide a h3::before {
	display: none;
}
.csrslide figure {
	position: relative;
	z-index: 0;
	transition: all 0.3s ease;
}
.csrslide a:hover figure {
	transform: scale(1.1);
}
.csrslide a:hover img {
	opacity: 1;
}


/*
information
*/
.entrylink {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	text-decoration: none;
	border-bottom: 1px solid #174586;
	padding: 30px 0;
}
.entrylink:first-of-type {
	padding: 0 0 30px;
}
.entry-img {
	width: 28.1%;
}
.evaluation-img {
	width: 31%;
	border: 1px solid #707070;
}
.entry-img img {
	width: 100%;
}
.r_entry {
	width: 69%;
}
.entrylink02 .r_entry {
	width: 66%;
}
.entry-head {
	margin-bottom: 10px;
}
.entry-cat {
	display: inline-block;
	min-width: 90px;
	color: #fff;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	background-color: #707070;
	margin-bottom: 5px;
	padding: 2px 5px 4px;
}
.entry-date {
	margin-bottom: 0px;
	font-size: 14px;
}
.r_entry h3 {
	color: #262727;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	background: none;
	border: none;
	padding: 0;
	margin-bottom: 20px;
}
.r_entry h3::before {
	display: none;
}
.entry-shosai {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	-moz-box-orient: vertical;

	margin-bottom: 0;
}
.entrylink02 .entry-shosai {
	display: block;
}
.entry-content h2 {
	font-size: 25px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 15px;
	padding: 0;
}
.entry-content p {
	margin-bottom: 35px;
}
.entrylink02 .entry-shosai p:last-child {
	margin-bottom: 0;
}
.entry-content p.entry-head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 55px;
}
.entry-content .entry-cat {
	margin-bottom: 0;
}
.entry-content .entry-date {
	display: inline-block;
	margin-left: 10px;
}
.information_photo {
	display: flex;
}
.information_photo figure {
	width: 45%;
	margin: 0 4% 20px 0;
}
.information_photo figure:last-child {
	margin: 0 0 20px;
}
.btn_center {
	display: flex;
	justify-content: center;
	width: 100%;
}
.btn_ichiran {
	padding-top: 150px;
}
#secondary ul,
#secondary ul li {
	margin: 0;
	padding: 0;
}
#secondary .sidemenu ul li {
	margin-bottom: 20px;
}
#secondary .sidemenu ul li a {
	display: block;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: none;
	background-color: #99998B;
	padding: 5px 10px;
	transition: all 0.3s ease;
}
#secondary .sidemenu ul li a.current,
#secondary .sidemenu ul li a:hover {
	font-weight: 900;
	background-color: #174586;
}



/*
corporation
*/
.pagemenu {
	width: 100%;
	margin-bottom: 85px;
}
.pagemenu ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.pagemenu ul li {
	width: auto;
	padding: 0;
	margin: 0 20px 15px 0;
}
.pagemenu ul li:last-child {
	margin: 0 0 15px;
}
.pagemenu ul li a {
	display: block;
	color: #fff;
	font-size: 18px;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	background-color: #99998B;
	border-radius: 30px;
	padding: 16px 40px 18px;
	transition: all 0.3s ease;
}
.pagemenu ul li.current_page_item a,
.pagemenu ul li.current-menu-item a,
.tax-cat_evaluation .pagemenu ul li.menu-item-339 a,
.pagemenu ul li a:hover {
	background-color: #174586;
}

.pagemenu_bottom {
	display: flex;
	align-items: flex-start;
	align-content: flex-start;
	justify-content: space-between;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
}
.pagemenu_bottom:first-of-type {
	padding-top: 50px;
}
.pagemenu_title {
	width: 185px;
	margin: 0;
}
.pagemenu_title a {
	display: block;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	border-bottom: 1px solid #93243A;
	padding: 5px 0 15px;
	transition: all 0.3s ease;
}
.pagemenu_title a:hover {
	color: #93243A;
}
.pagemenu_bottom .pagemenu {
	width: calc(100% - 235px);
	margin-bottom: 0;
	padding-bottom: 10px;
}
.pagemenu_bottom .pagemenu ul {
	justify-content: flex-start;
}

.corporation01 {
	padding-bottom: 0;
}
.read_corporation {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	text-align: center;
	margin: 0 auto 80px;
}
.read_corporation01 {
	display: inline-block;
	font-family: 'Noto Serif JP', serif;
	font-size: 26px;
	font-weight: 600;
	padding-left: 30px;
}

.president {
	width: 100%;
	max-width: 1240px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
.president_img {
	width: 38.7%;
}
.r_president {
	width: 55.1%;
}
.r_president p {
	font-size: 15px;
	line-height: 1.8;
	margin-bottom: 35px;
}
.r_president p.shomei {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	font-size: 15px;
	margin: 0;
	padding-top: 30px;
}
.president_name {
	display: inline-block;
	padding-left: 30px;
}


/*
about
*/
.t_about dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0;
	padding: 0 0 0 1em;
}
.t_about dl dt,
.t_about dl dd {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	padding: 0 0 5px;
	margin: 0;
}
.t_about dl dt {
	width: 105px;
}
.t_about dl dd {
	width: calc(100% - 105px);
}
.t_about .komelist {
	margin: 0 0 0 1em;
}
.t_about .komelist li {
	margin-bottom: 0;
	padding-bottom: 0;
	font-size: 15px;
	line-height: 1.8;
}
.t_shikaku {
	display: flex;
	align-items: flex-start;
}
.t_shikaku ul {
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	border-left: 2px solid #707070;
}
.t_shikaku ul:first-child {
	margin: 0 15% 0 0;
}
.t_shikaku ul li {
	display: flex;
	justify-content: space-between;
	width: 100%;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	padding: 0;
	margin: 0;
}
.shikaku,
.shikaku_ninzu {
	display: inline-block;
}
.shikaku_ninzu {
	padding-left: 25px;
}


/*
philosophy
*/
.longgoal {
	width: 100%;
	max-width: 1100px;
	counter-reset: count 0;
	margin: 0 auto;
}
.longgoal li {
	list-style-type: none;
	position: relative;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	padding: 0 0 0 50px;
	margin: 0 0 45px;
}
.longgoal li::before {
	position: absolute;
	left: 0;
	top: 0px;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	background-color: #99998B;
	content: counter(count) "";
	counter-increment: count 1;
}

.integration {
	width: 100%;
	background-color: #F5F5F0;
	border: 1px solid #174586;
	padding: 55px 20px 20px;
}
.integration dl {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
}
.integration dt {
	width: 175px;
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	background-color: #174586;
	padding: 8px;
	margin-bottom: 75px;
}
.integration dd {
	width: calc(100% - 215px);
	line-height: 1.2;
	padding: 0;
	margin: 0 0 75px;
}
.integration dd.read_integration {
	font-size: 26px;
	color: #174586;
}
.integration dl ol {
	margin-bottom: 35px;
}

.management h4 {
	padding: 5px 10px;
	margin-bottom: 20px;
	background-color: #E0E0CC;
}
.management p {
	margin-bottom: 45px;
}


/*
organization
*/
.organizationlist {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.organizationlist table {
	width: 48.3%;
}
.organizationlist table tbody th {
	width: 40%;
	text-align: center;
}
.organization_img {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.organization_img img {
	width: 100%;
}


/*
history
*/
.history01 {
	position: relative;
	width: 100%;
	max-width: 1060px;
	padding-bottom: 145px;
	margin: 0 auto;
}
.history01 h2 {
	width: 57.8%;
	display: flex;
	align-items: center;
	color: #003375;
	font-size: 36px;
	line-height: 1.1;
	padding: 0;
	margin: 0 0 45px;
}
.dna01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	width: 93px;
	height: 93px;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	background-color: #003375;
}
.dna_en {
	font-size: 36px;
}
.dna02 {
	display: inline-block;
	margin-left: 15px;
}
.read_dna {
	width: 57.8%;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.7;
	margin-bottom: 20px;
}
.dna_img01 {
	position: absolute;
	right: 0;
	top: 0;
	width: 37.8%;
	z-index: 0;
}
.kinen_photo {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	width: 100%;
	z-index: 1;
}
.kinen_photo p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.3;
	margin: 0 13% 10px 25px;
}
.dna_img02 {
	width: 42.7%;
}

.history_head {
	display: flex;
	align-items: center;
	background-color: #174586;
	width: 100%;
	margin-bottom: 20px;
}
.history_year {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	color: #fff;
	width: 34.6%;
}
.history_year h3 {
	width: 100%;
	background: none;
	border: none;
	line-height: 1;
	text-align: center;
	margin: 0 0 15px;
	padding: 0;
}
.history_year h3::before {
	display: none;
}
.h_year01,
.h_year02 {
	position: relative;
	font-size: 44px;
	font-weight: 500;
}
.h_year01 {
	display: block;
	width: 100%;
	padding-bottom: 30px;
}
.h_year01::after {
	position: absolute;
	left: 50%;
	bottom: 2px;
	width: 2px;
	height: 20px;
	content: "";
	background-color: #fff;
}
.history_year p {
	width: 100%;
	text-align: center;
	font-size: 15px;
	margin: 0;
}
.history_img {
	width: 21.8%;
}
.history_img_half {
	width: 32.7%;
}
.btn_historymore {
	display: none;
}
.history_open {
	display: block;
	margin-bottom: 20px;
}
.history02 table {
	margin-bottom: 0;
}
.history02 table.t_history,
.history02 table.t_history th,
.history02 table.t_history td {
	border-bottom: none;
}
.history02 table th,
.history02 table td {
	font-size: 15px;
	line-height: 2;
}
.history02 table th {
	padding: 5px 10px 5px 25px;
}
.history02 table td {
	font-weight: 400;
	padding: 5px 15px;
}
.h1998_img04 {
	display: block;
	width: 100%;
	max-width: 715px;
	padding-top: 10px;
}


/*
office
*/
.office01 {
	padding-bottom: 0;
}
.t_office th {
	font-size: 18px;
	text-align: center;
	vertical-align: middle;
}
.t_office td {
	display: flex;
	font-size: 15px;
	justify-content: space-between;
	align-items: center;
}
.office_address,
.office_map {
	display: inline-block;
}
.office_address {
	width: calc(100% - 135px);
}
.office_map {
	width: 60px;
	margin: 0 35px 0 25px;
}
.office_map a {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.2;
	background-color: #99998B;
	text-decoration: none;
	text-align: center;
	padding: 5px;
}



/*
works
*/
.works_topslider.slick-dotted.slick-slider {
	width: 100%;
	margin-bottom: 80px;
}
.works_topslide,
.works_topslide_img {
	position: relative;
	z-index: 1;
}
.works_topslide_img {
	overflow: hidden;
}
.works_topslide_img img {
	max-height: 840px;
}
.works_topslide {
	display: block;
	text-decoration: none;
}
.works_topslide h2 {
	position: absolute;
	width: 100%;
	max-width: 500px;
	right: 0;
	bottom: 0;
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	line-height: 1.3;
	background-color: rgba(255,255,255,0.7);
	padding: 25px 10px;
	margin: 0;
	z-index: 2;
}

.worksmenu {
	margin-top: -100px;
	padding-top: 100px;
}
.worksmenu ul li {
	width: auto;
	min-width: 115px;
	max-width: 210px;
}
.worksmenu ul li a {
	padding: 16px 30px 18px;
}
.workslist h3 {
	display: none;
}
.workslist h3.t_wall {
	display: block;
}

.worksform {
	display: flex;
	margin-bottom: 55px;
}
.worksform select {
	width: 160px;
	border: 1px solid #707070;
	border-radius: 4px;
	font-size: 14px;
	padding: 5px 25px 5px 10px;
	background-image: url("img/bg_select.svg");
	background-repeat: no-repeat;
	background-position: calc(100% - 10px) center;
}
.worksform select:nth-child(1) {
	margin-right: 40px;
}

.workslist ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
.workslist ul li {
	width: 48.3%;
	font-size: 15px;
	line-height: 1.5;
	text-align: center;
	margin: 0 0 70px;
	padding: 0;
}
.workslist ul li a {
	display: block;
	text-decoration: none;
	text-align: center;
}
.works_thumbnail,
.works_date,
.works_title {
	display: block;
}
.works_thumbnail {
	width: 100%;
	text-align: center;
	margin: 0 auto 20px;
	overflow: hidden;
}
.works_thumbnail img {
	width: 100%;
	height: 420px;
	object-fit: cover;
}
.works_date {
	margin-bottom: 5px;
}
.works_title {
	font-size: 15px;
	font-weight: 900;
}
.works-entry {
	width: 100%;
}
.works-entry table th,
.works-entry table td {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
}
.works-entry h4 {
	font-size: 18px;
	font-weight: 900;
	padding: 0;
	margin-bottom: 10px;
}
.works-date {
	font-size: 15px;
	margin-bottom: 40px;
}
.workssliderbox {
	width: 100%;
	max-width: 776px;
	margin: 0 auto 40px;
}
.worksslider {
	margin: 0 auto 30px;
	padding: 0;
}
.worksslider li {
	margin: 0;
	padding: 0;
}
.worksslider_thumbnail {
	display: block!important;
}
.worksslider_thumbnail .slick-track {
	display: flex;
	justify-content: center;
	transform: none!important;
}
.worksslider_thumbnail .slick-slide {
	width: 67px!important;
	margin: 0 2%;
	cursor: pointer;
}
.worksslider_thumbnail .slick-slide img {
	height: 67px;
	object-fit: cover;
}
.t_works {
	margin-bottom: 45px;
}
.works-entry h5 {
	font-size: 18px;
	font-weight: 700;
	padding: 0;
	margin-bottom: 15px;
}
.works_comment {
	background-color: #FCFCE5;
	border: 1px solid #CCCCBD;
	padding: 30px 15px;
	margin: 0 auto 65px;
}
.works_comment p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	margin: 0;
}


/*
csr
*/
.evaluation_top {
	width: calc(100% - 50px);
	margin: 0 auto;
	max-width: 1366px;
}
.csr_top {
	display: flex;
	width: 100%;
	position: relative;
	padding-bottom: 90px;
}
.csr_top02 {
	width: 100%;
	max-width: 1200px;
	padding-bottom: 30px;
	margin: 0 auto 135px;
}
.csr_top::before,
.csr_top::after {
	position: absolute;
	top: 0;
	left: 50%;
	width: 500%;
	transform: translateX(-50%);
	content: "";
	z-index: -1;
}
.csr_top::before {
	height: 98px;
	background-color: #fff;
}
.csr_top::after {
	height: 100%;
	z-index: -2;
	background-color: #F4F0E3;
}
.l_csr_top {
	width: 51.2%;
}
.l_csr_top h2 {
	line-height: 1;
	border-bottom: 3px solid #B19E6A;
	padding-bottom: 30px;
	margin-bottom: 50px;
}
.l_csr_top h2 img {
	max-width: 218px;
}
.l_csr_top p {
	margin: 0;
	line-height: 1.6;
}
.l_csr_top p.read_csrtop {
	color: #B19E6A;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 45px;
	padding-right: 15px;
}
.l_csr_top p.cap_csrtop {
	padding-right: 15px;
}
.csr_topimage {
	width: 100%;
	max-width: 665px;
}
.csr_img01 {
	position: relative;
	width: 100%;
	text-align: center;
	margin: -155px auto 35px;
	z-index: 2;
}

.csr h3,
h3.entry-title02 {
	color: #174586;
	font-size: 38px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	border: none;
	background-color: #F4F0E3;
	padding: 15px;
	margin-bottom: 40px;
}
.csr h3::before,
h3.entry-title02::before {
	display: none;
}
.read_csr01 {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 55px;
}

.safety_goal {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 75px;
}
.title_safety_goal {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	width: 154px;
	height: 154px;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	background-color: #174586;
	margin: 0 5.8% 0 0;
}
.safety_goal ol {
	margin: 0;
	padding: 0;
}
.safety_goal ol li {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 25px;
	padding: 0;
}
.safety_goal ol li:last-child {
	margin-bottom: 0;
}
.safety_goal_no {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	width: 36px;
	height: 36px;
	font-size: 18px;
	font-weight: 700;
	margin-right: 10px;
	background-color: #99998B;
}
.safety_goal_txt {
	display: inline-block;
	width: calc(100% - 46px);
	font-size: 20px;
	font-weight: 600;
}

.csr h4 {
	font-size: 30px;
	font-weight: 500;
	line-height: 1.2;
	border-left: 10px solid #174586;
	padding: 0 0 4px 20px;
	margin-bottom: 30px;
}
.safety_img02 {
	width: 100%;
	max-width: 1142px;
	text-align: center;
	margin: 0 auto 30px;
}

.csrbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.csrlist {
	width: 45.4%;
	margin-bottom: 70px;
}
.csrlist.csr_wide {
	width: 100%;
}
.csr .csrlist h4 {
	margin-bottom: 15px;
}
.csrlist p {
	line-height: 1.8;
	margin-bottom: 20px;
}
.csrlist p.jisshi_title {
	background: none;
	color: #333;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 0;
}
.csr_img {
	width: calc(100% - 40px);
	margin: 0 auto;
}
.csr_img.csr_img02 {
	margin: 0 auto 30px;
}
.csr_img.csr_img02:last-of-type {
	margin: 0 auto;
}
.csr_naiyo {
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #F4F0E3;
	padding: 30px 40px 40px;
	margin-top: 55px;
}

.csr_naiyo ul.jyusho li {
	font-size: 15px;
}

.csr_naiyo02 {
	padding: 25px 20px;
}
.csr_naiyo::before {
	position: absolute;
	left: 19%;
	top: -20px;
	width: 69px;
	height: 38px;
	background-image: url("img/arrow_d_blue.svg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	content: "";
}
.csr_naiyo02::before {
	left: 50%;
	transform: translateX(-50%);
}
.l_csr_naiyo {
	width: 46.4%;
}
.csr_naiyo02 .l_csr_naiyo,
.csr_naiyo03 .l_csr_naiyo {
	width: 100%;
}
.csr_naiyo ul,
.naiyo ul {
	list-style-type: disc;
	margin: 0;
	padding: 0 0 35px 1.5em;
}
.csr_naiyo ul.jyusho {
	list-style-type: none;
}
.naiyo ul li,
.csr_naiyo ul li,
.csr_naiyo .nm,
.csr_naiyo dl dt,
.csr_naiyo dl dd {
	font-size: 18px;
	line-height: 1.7;
	margin: 0;
	padding: 0;
}
.naiyo ul li {
	font-size: 15px;
}
.csr_naiyo dl,
.csr_naiyo ul.jyusho li,
.csr_naiyo ul.jisshilist {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.csr_naiyo ul.jyusho {
	padding-left: 0;
}
.csr_naiyo ul.jisshilist {
	align-items: center;
	list-style-type: none;
	padding-left: 0;
}
.csr_naiyo ul.jisshilist li {
	width: auto;
	margin-bottom: 10px;
	font-size: 17px;
}
.csr_naiyo ul.jisshilist.jisshilist_wide li {
	width: 100%;
}
.csr_naiyo ul li .etc {
	display: inline-block;
	margin-left: 5em;
}

.zero-carbon .youtube-wrap {
	max-width: 900px;
	margin: 0 auto;
}

.jisshi_title {
	display: inline-block;
	color: #fff;
	background-color: #174586;
	padding: 0 5px;
	margin-right: 10px;
}

.safety_photo {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.safety_photo figure {
	width: 46.4%;
	margin-bottom: 60px;
}
.safety_photo figure:nth-child(3),
.safety_photo figure:nth-child(4) {
	margin-bottom: 30px;
}
.csr_naiyo dl {
	margin-bottom: 50px;
}
.csr_naiyo dl dt {
	width: 100px;
}
.csr_naiyo dl dd {
	width: calc(100% - 100px);
}
.csr_naiyo table th,
.csr_naiyo table td {
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	padding: 10px;
	background-color: #fff;
	border: 1px solid #707070;
}
.csr_naiyo table th {
	width: auto;
}
.csr_naiyo table thead th:nth-of-type(1) {
	width: 70%;
}
.csr_naiyo table tbody th {
	text-align: left;
}

.sdt_txt01,
.sdt_txt02,
.sdt_txt03 {
	display: inline-block;
	width: auto;
}
.sdt_txt01 {
	width: 230px;
}
.sdt_txt02 {
	width: 170px;
}
.sdt_txt03 {
}

.r_csr_naiyo .sdt_txt01 {
	width: 280px;
}

.r_csr_naiyo {
	width: 44.3%;
}
.r_csr_naiyo480 {
	width: 42.1%;
}
.csr_naiyo02 .csr_img,
.r_csr_naiyo .csr_img {
	width: 100%;
}
.c_csr_naiyo {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.flex-item-center figure {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center; 
}

.c_csr_naiyo .csr_img {
	width: 48.5%;
	margin: 0;
}
.c_csr_naiyo .csr_img img {
	width: 100%;
}
.csr h5 {
	width: 100%;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 20px;
}


/**********************************************
▼2023 rugsole
**********************************************/
/* --------------------------------
padding fix 5 10 15 20 30 45 60
-------------------------------- */
.pt0  { padding-top: 0px; }
.pt5  { padding-top: 5px; }
.pt10 {	padding-top: 10px; }
.pt15 {	padding-top: 15px; }
.pt20 {	padding-top: 20px; }
.pt30 {	padding-top: 30px; }
.pt45 {	padding-top: 45px; }
.pt60 {	padding-top: 60px; }

.pb0  { padding-bottom: 0px; }
.pb5  { padding-bottom: 5px; }
.pb10 {	padding-bottom: 10px; }
.pb15 {	padding-bottom: 15px; }
.pb20 {	padding-bottom: 20px; }
.pb30 {	padding-bottom: 30px; }
.pb45 {	padding-bottom: 45px; }
.pb60 {	padding-bottom: 60px; }

.pr0  { padding-right: 0px; }
.pr5  { padding-right: 5px; }
.pr10 {	padding-right: 10px; }
.pr15 {	padding-right: 15px; }
.pr20 {	padding-right: 20px; }
.pr30 {	padding-right: 30px; }
.pr45 {	padding-right: 45px; }
.pr60 {	padding-right: 60px; }

.pl0  { padding-left: 0px; }
.pl5  { padding-left: 5px; }
.pl10 {	padding-left: 10px; }
.pl15 {	padding-left: 15px; }
.pl20 {	padding-left: 20px; }
.pl30 {	padding-left: 30px; }
.pl45 {	padding-left: 45px; }
.pl60 {	padding-left: 60px; }

.ph0  { padding-top: 0px; padding-bottom: 0px; }
.ph5  { padding-top: 5px; padding-bottom: 5px; }
.ph10 { padding-top: 10px; padding-bottom: 10px; }
.ph15 { padding-top: 15px; padding-bottom: 15px; }
.ph20 { padding-top: 20px; padding-bottom: 20px; }
.ph30 { padding-top: 30px; padding-bottom: 30px; }
.ph45 { padding-top: 45px; padding-bottom: 45px; }
.ph60 { padding-top: 60px; padding-bottom: 60px; }

.pw0  { padding-right: 0px; padding-left: 0px; }
.pw5  { padding-right: 5px; padding-left: 5px; }
.pw10 { padding-right: 10px; padding-left: 10px; }
.pw15 { padding-right: 15px; padding-left: 15px; }
.pw20 { padding-right: 20px; padding-left: 20px; }
.pw30 { padding-right: 30px; padding-left: 30px; }
.pw45 { padding-right: 45px; padding-left: 45px; }
.pw60 { padding-right: 60px; padding-left: 60px; }


@media only screen and (min-width: 801px) {
	.csr_img_col {
		display: flex;
		width: 100%;
		gap: 30px;
	}

	.csr_img2col {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		gap: 30px;
	}
	.c_csr_naiyo.csr_img2col .csr_img {
		width: calc((100% - 30px) / 2)
	}
	.csr_img2box {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		gap: 30px;
	}
	.csr_img2box .c_csr_naiyo {
		width: calc((100% - 30px) / 2)
	}
	.csr_img2box .c_csr_naiyo .csr_img {
		display: flex;
		width: 100%;
		flex-direction: column;
		align-items: center;
		gap: 30px auto;
	}

	.resources02 .l_csr_naiyo {
	    width: 30%;
	}
	.resources02 .r_csr_naiyo {
    width: 60%;
	}
}
/***********************
▲2023 rugsole
***********************/


/*
shikenshitsu
*/
.read_shikenshitsu {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.7;
	margin-bottom: 40px;
	text-align: center;
}
.read_shikenshitsu_sub {
	display: block;
	font-size: 17px;
	font-weight: 500;
	padding-top: 10px;
}
.think,
.txt_space {
	display: inline-block;
	padding-left: 1em;
}
.txt_center {
	text-align: center;
}
.shikenshitsubox {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding-top: 35px;
}
.shikenshitsu_img {
	width: 53.7%;
}
.r_shikenshitsu {
	width: 41.7%;
}
.r_shikenshitsu p {
	margin-bottom: 45px;
}
.r_shikenshitsu h4 {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 10px;
}
.btn_list {
	margin: 0;
	padding: 0 0 20px;
}
.btn_list li {
	margin: 0 0 10px;
	padding: 0;
}
.btn_list li a {
	text-align: left;
	padding: 3px 10px 3px 20px;
}
.accessmap,
.youtube {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	margin-bottom: 40px;
	max-height: 685px;
}
.youtube {
	max-height: inherit;
	margin-bottom: 0;
}
.accessmap iframe,
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.video-wrap {
	max-width: 1000px;
	margin: 0 auto;
}

/*
tests
*/
.tests {
	padding-bottom: 0;
}
.tests p {
	margin-bottom: 50px;
}
.tests p.read_tests {
	font-weight: 700;
	margin-bottom: 20px;
}
.testsbox,
.sliderbox {
	display: flex;
	justify-content: space-between;
	margin-bottom: 75px;
}
.l_tests,
.l_slider {
	width: 49%;
	max-width: 670px;
}
.r_tests,
.r_slider {
	width: 45.8%;
}
.r_tests h5 {
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
	padding: 5px;
	margin-bottom: 0;
	background-color: #99998B;
}
.naiyo {
	background-color: #F4F0E3;
	padding: 25px;
}
.naiyo p {
	margin-bottom: 25px;
}
.naiyo p:last-of-type {
	margin-bottom: 0;
}
.naiyo ul:last-of-type {
	padding-bottom: 0;
}
.naiyo dl {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 35px 20px 0;
}
.naiyo dl dt,
.naiyo dl dd {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
}
.naiyo dl dt {
	color: #fff;
	width: 230px;
	background-color: #174586;
	padding: 2px 2px 2px 10px;
	margin: 0 0 15px;
}
.naiyo dl dd {
	width: 100%;
	margin: 0 0 25px;
	padding: 0 0 0 10px;
}

.tests_slider,
.slider {
	margin: 0 auto 30px;
	padding: 0;
}
.tests_slider li,
.slider li {
	position: relative;
	margin: 0;
	padding: 0;
}
.caption_txt {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 45px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 17px;
	font-weight: 500;
	text-align: center;
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
	z-index: 2;
}
.l_tests .caption_txt,
.l_slider .caption_txt {
	height: 60px;
	font-size: 20px;
}
.tests_slider_thumbnail,
.slider_thumbnail {
	display: block!important;
}
.tests_slider_thumbnail .slick-track,
.slider_thumbnail .slick-track {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	transform: none!important;
}
.tests_slider_thumbnail .slick-slide,
.slider_thumbnail .slick-slide {
	width: 15.5%!important;
	margin: 0 5.6% 35px 0;
	cursor: pointer;
}
.tests_slider_thumbnail .slick-slide:nth-child(5n),
.slider_thumbnail .slick-slide:nth-child(5n) {
	margin: 0 0 35px;
}


/*
uav
*/
.uav {
	padding-bottom: 100px;
}
.uav_head {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 50px;
}
.uav_logo {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 230px;
	font-weight: 700;
	border: 1px solid #707070;
	padding: 15px 15px 10px;
	line-height: 1;
	margin: 0 30px 0 0;
}
.uav_txt {
	font-size: 105px;
	line-height: 0.5;
}
.uav_logo small {
	display: block;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	padding-top: 30px;
}
.r_uavhead {
	width: auto;
}
.r_uavhead p,
.read_uav {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0;
}
.r_uavhead p {
	width: 100%;
}
.uav_photo {
	display: flex;
	justify-content: space-between;
}
.uav_img {
	position: relative;
}
.uav_img img {
	width: 100%;
}
.uav_img01 {
	width: 69.5%;
}
.r_uav_photo {
	width: 30.5%;
}

.uav_movie {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.half_movie,
.youtube_thumbnail {
	width: 47.6%;
}


/*
analysis
*/
.read_analysis {
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 55px;
}
.analysis_photo,
.technology_photo {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.analysis_img,
.technology_img {
	position: relative;
	width: 50%;
}
.naiyo .analysis_photo .analysis_img {
	width: 47.9%;
}
.technology_img_full,
.technology_img_full img,
.analysis_img img,
.technology_img img {
	width: 100%;
}
.technology_img_full {
	margin: 0 auto 35px;
}
.analysis_naiyo,
.technology_naiyo {
	display: flex;
	align-items: flex-start;
}
.naiyo h4 {
	display: inline-block;
	color: #fff;
	font-size: 20px;
	padding: 15px;
	margin: 0 35px 25px 0;
	background-color: #99998B;
}
.analysis_naiyo ul,
.technology_naiyo ul {
	width: auto;
	margin: 0 10% 0 0;
	padding-bottom: 0;
}


/*
patent
*/
.read_ns {
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.7;
	margin-bottom: 55px;
}
.read_ns_sub {
	display: block;
	font-size: 15px;
	font-weight: 500;
}

.patent02 h3 {
	margin-bottom: 80px;
}
.concrete {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 50px;
}
.technology h4.t_concrete01,
.technology h4.t_concrete02 {
	margin-bottom: 35px;
}
.technology h4.t_concrete01 {
	background-color: #666666;
}
.technology h4.t_concrete02 {
	background-color: #66A666;
}
.l_concrete {
	width: 69.3%;
}
.concrete_img,
.concrete_img img,
.concrete_img02 img {
	width: 100%;
}
.concrete_img02 {
	width: 29.5%;
}
.concretelist {
	margin: 0 auto 50px;
	padding: 0 11.4%;
}
.concretelist li {
	position: relative;
	font-size: 15px;
	margin-bottom: 0;
	padding-left: 18px;
}
.concretelist li::before {
	position: absolute;
	left: 0;
	top: 7px;
	width: 15px;
	height: 15px;
	border: 1px solid #333;
	border-radius: 50%;
	content: "";
}
.arrow_d_ns {
	text-align: center;
	margin: 0 auto 40px;
}

.nsseko {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.nsseko_img {
	width: 38.1%;
}
.nslist {
	width: 54.6%;
	margin: 0;
	padding: 0;
}

.read_ns02 {
	margin-bottom: 45px;
}
.technology_img02 {
	width: 45.3%;
}
.t_ns {
	margin: 0;
}
.t_ns th,
.t_ns td {
	font-weight: 500;
	background-color: #fff;
	border: 1px solid #707070;
	padding: 10px 15px;
}
.t_ns thead th {
	width: auto;
	text-align: center;
}
.t_ns tbody td:nth-of-type(2),
.t_ns tbody td:nth-of-type(3) {
	text-align: center;
}
.attention_ns {
	padding: 0;
	margin:  0 0 90px;
	counter-reset: li;
}
.attention_ns li {
	position: relative;
	font-size: 15px;
	padding-left: 35px;
	margin-bottom: 0;
}
.attention_ns li::before {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	font-size: 15px;
	counter-increment: li;
	content: "注"counter(li)")";
}
.nintei {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-bottom: 100px;
}
.nintei_img {
	width: 38.7%;
}
.r_nintei {
	width: 54.7%;
}
.r_nintei p {
	font-size: 17px;
	line-height: 1.8;
	margin: 0;
}
.naiyo p.hanbaimoto {
	font-size: 20px;
	font-weight: 700;
}


/*
newtec
*/
.newtec_merit {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 30px 0 80px;
}
.ict_img01 {
	width: 40%;
}
.r_newtec_merit {
	width: 54.2%;
}
.technologybox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
.technology_shosai {
	width: 47.6%;
	margin-bottom: 70px;
}
.technology_shosai p {
	margin: 0;
}
.cim_merit {
	margin-bottom: 130px;
}
.photo_half {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	padding-top: 30px;
}
.photo_half figure {
	width: 48.8%;
}
.photo_half figure img {
	width: 100%;
}


/*
bim
*/
.bim_shoukai {
	display: block;
	padding-top: 30px;
}
.bim_shoukai a {
	display: inline-block;
	margin-left: 25px;
	color: #4377CC;
	text-decoration: none;
}
.bim_shoukai a:hover {
	text-decoration: underline;
}

.read_bim {
	margin-bottom: 75px;
}
.read_bim strong {
	font-size: 17px;
}
.cim_photobox {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.cim_photo {
	width: 37.8%;
}
.cim_photobox p {
	width: 58.8%;
}



/*
member
*/
.contentbox .member {
	width: 100%;
	background-color: #FFE6E6;
	padding: 20px 20px 0;
	margin-bottom: 90px;
	overflow: hidden;
}
.member02 {
	background-color: #DEEFFB;
}
.contentbox .member h2 {
	display: flex;
	align-items: center;
	font-size: 32px;
	line-height: 1.5;
	margin-bottom: 30px;
	padding: 0;
}
.member_subtitle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	color: #fff;
	font-size: 40px;
	text-align: center;
	line-height: 1;
	background-color: #93243A;
	margin-right: 10px;
}
.member02 .member_subtitle {
	background-color: #174586;
}
.contentbox .member h3 {
	color: #93243A;
	font-size: 26px;
	font-weight: 700;
	background: none;
	border-left: 5px solid #93243A;
	line-height: 1.2;
	margin-bottom: 20px;
	padding: 10px;
}
.member02 h3 {
	color: #003375;
	border-left: 5px solid  #003375;
	margin-bottom: 45px;
}
.contentbox .member h3::before {
	display: none;
}
.memberbox {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
}
.memberbox::after {
	display: block;
	width: 48.1%;
	content: "";
}
.memberlist {
	width: 48.1%;
	background-color: #fff;
	padding: 15px;
	margin-bottom: 50px;
}
.memberlist p {
	font-size: 18px;
	line-height: 1.7;
	margin-bottom: 25px;
}
.memberlist ol,
.nslist,
.numberlist {
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}
.numberlist {
	margin: 0;
	padding-top: 30px;
}
.memberlist ol li,
.nslist li,
.numberlist li {
	position: relative;
	font-size: 15px;
	line-height: 1.7;
}
.numberlist li {
	font-size: 20px;
	margin: 0;
}
.memberlist a {
	color: #174586;
}
.caption_member {
	background-color: #FEF799;
	padding: 15px;
}
.memberlist .caption_member p {
	margin: 0;
}
.caption_member p strong {
	color: #FF0000;
	font-weight: 500;
}

.download {
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
}
.download p {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}
.download p a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	min-height: 105px;
	text-decoration: none;
	border: 5px solid #707070;
	background-color: #F2F2E0;
	padding: 10px 25px;
}
.memberlist .download p a {
	color: #333;
}
.download p a.pdf,
.download p a.xls,
.download p a.xlsx,
.download p a[href$=".pdf"],
.download p a[href$=".xls"],
.download p a[href$=".xlsx"] {
	padding: 10px 10px 10px 95px;
	background-repeat: no-repeat;
	background-position: 25px center;
}
.download p a.pdf,
.download p a[href$=".pdf"] {
	background-image: url("img/icon_pdf.svg");
}
.download p a.xls,
.download p a.xlsx,
.download p a[href$=".xls"],
.download p a[href$=".xlsx"] {
	background-image: url("img/icon_xls.svg");
}
.download p a:hover {
	text-decoration: underline;
}


.ehs-guidelines h4 {
  color: #043275;
	font-size: 16px;
  margin-bottom: 15px;
}

.memberlist.box_wide {
    width: 100%;
}

.memberlist .box_flex {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		gap: 45px;
}

.memberlist .box_flex .box_wide_contents {
	width: 100%;
}

.download_list {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
}

@media only screen and (min-width: 801px) {

.memberlist .box_flex .box_wide_contents {
	width: calc((100% - 45px) / 2);
}

.ehs-guidelines h4 {
  font-size: 22px;
}

}

/*
pickup
*/
.pickup_top {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	width: 100%;
	height: calc(100vh - 80px);
	padding: 0;
	background-image: url("img/pickup_topimage.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	margin-bottom: 20px;
}
.pickup_top h2 {
	width: 100%;
	text-align: center;
	margin: 0 auto 60px;
}
.pickup_top p {
	width: 100%;
	color: #fff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.7;
	text-align: center;
	margin-bottom: 30px;
}
.pickup_top p:last-of-type {
	margin: 0;
}

.scrolldown {
	display: block;
	position: absolute;
	bottom: 20px;
	right: 40px;
	z-index: 1;
	height: 150px;
	padding-right: 25px;
	pointer-events: none;
}
.scrolldown.scrolldown_blue {
	z-index: 4;
	bottom: auto;
}
.scrolldown::after {
	content:"";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1px;
	height: 100%;
	background: #fff;
}
.scroll_txt {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	color: #fff;
	font-size: 12px;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}
.scrolldown.scrolldown_blue .scroll_txt {
	color: #174586;
}
.scrolldown::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #fff;
	animation: circlemove 1.6s ease-in-out infinite,cirlemovehide 1.6s ease-out infinite;
}
.scrolldown.scrolldown_blue::after,
.scrolldown.scrolldown_blue::before {
	background: #174586;
}

@keyframes circlemove {
	0% {
		top: 0;
	}
	100% {
		top: calc(100% - 5px);
	}
 }
@keyframes cirlemovehide {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	80% {
		opacity: 0.9;
	}
	100% {
		opacity: 0;
	}
 }

.pickup {
	position: relative;
	width: 100%;
	height: 768px;
	padding: 0;
	margin-bottom: 20px;
}
.pickup_child,
.pickuplink {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	width: 100%;
}
.pickup_child {
	height: calc(100vh - 80px);
	margin-bottom: 110px;
}
.pickuplink {
	height: 100%;
	text-decoration: none;
	margin: 0 auto;
	overflow: hidden;
}
.pickup_child::before,
.pickuplink::before {
	position: absolute;
	left: 0;
	top: 0;
	transform: scale(1);
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	content: "";
	z-index: -1;
	transition: all 0.3s ease;
}
.pickup_child01::before,
.pickup01 .pickuplink::before {
	background-image: url("img/pickup01.jpg");
}
.pickup_child02::before,
.pickup02 .pickuplink::before {
	background-image: url("img/pickup02.jpg");
}
.pickuplink:hover::before {
	transform: scale(1.1);
}

.pickup h3 {
	color: #333;
	display: flex;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	width: 100%;
	height: 260px;
	font-weight: 600;
	text-align: center;
	background: none;
	border: none;
	background-image: url("img/bg_pickup.svg");
	background-repeat: no-repeat;
	background-position: center center;
	margin: 0 auto 5px;
}
.pickup h3::before {
	display: none;
}
.p_no,
.p_title,
.p_subtitle {
	display: block;
	width: 100%;
}
.p_no {
	font-size: 55px;
	font-weight: 700;
	line-height: 1;
}
.p_title {
	font-size: 25px;
	line-height: 1.5;
	padding: 15px 0 15px;
}
.p_subtitle {
	font-size: 18px;
}

.btn_black,
.btn_black_nolink {
	width: 100%;
	max-width: 228px;
	margin: 0 auto;
}
.btn_black a,
.btn_black_nolink {
	display: block;
	font-size: 14px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background-color: #000;
	padding: 10px;
}


/*
pick01,
pick02
*/
#pickupcontents {
	position: relative;
	width: 100%;
	background-color: #DEEFFB;
	background-image: url("img/bg_pickupcontents01.svg");
	background-repeat: no-repeat;
	background-position: center 55px;
	padding: 110px 0;
	min-height: 945px;
}
#pickupcontents.pickupcontents02 {
	background-color: #FBF5DE;
	background-image: url("img/bg_pickupcontents02.svg");
}
#pickupcontents h3 {
	position: absolute;
	left: 0;
	top: -110px;
	transform: translateY(-50%);
	color: #174586;
	font-family: 'Open Sans', sans-serif;
	font-size: 75px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
}
#pickupcontents.pickupcontents02 h3 {
	color: #FF9031;
}
#pickupcontents h3::before {
	display: none;
}

.pickupcontentsbox {
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.pickupcontentsbox02 {
	display: block;
}
.l_pickupcontents {
	position: relative;
	width: 42.5%;
}
.l_pickupcontents p {
	font-size: 17px;
	line-height: 1.8;
	margin-bottom: 15px;
}
.l_pickupcontents p.read_pt_top {
	color: #FF9031;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 5px;
}
.pt_photo {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.pt_img {
	width: 48.2%;
}
.pt_img.pt_wide {
	width: 100%;
	margin-bottom: 20px;
}
.pickup_fukushima {
	position: absolute;
	width: 60.6%;
	top: 20px;
	left: -14%;
	z-index: 0;
}
.fukushima_map {
	position: relative;
	z-index: 0;
	width: 100%;
}
.f_area {
	position: absolute;
	z-index: 1;
	opacity: 0.65;
}
.f_area.active {
	opacity: 1;
	z-index: 3;
}
.fukushima01 {
	width: 20.6%;
	top: 36.2%;
	left: 57.8%;
	z-index: 3;
}
.fukushima02 {
	width: 10%;
	top: 22.54%;
	left: 76%;
	z-index: 2;
}
.fukushima03 {
	width: 10%;
	top: 30.1%;
	left: 51.8%;
	z-index: 2;
}
.r_pickupcontents {
	width: 53.1%;
}
.pickupcontentsbox02 .r_pickupcontents {
	margin: 0 0 0 auto;
}
.read_pickupcontents {
	font-size: 16px;
	line-height: 1.9;
	margin-bottom: 65px;
}

.pickupmenu,
.pickupmenu li {
	width: 100%;
	margin: 0;
	padding: 0;
}
.pickupmenu li {
	margin-bottom: 25px;
	height: 135px;
}
.pickupmenu li a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-end;
	align-items: flex-end;
	width: 100%;
	height: 100%;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	overflow: hidden;
	padding: 0 5px 10px 25px;
}
.bnp_title,
.ps_title,
.bnp_number,
.ps_number,
.bnp_txt,
.ps_txt {
	position: relative;
	z-index: 2;
	line-height: 1;
	display: inline-block;
}
.bnp_title,
.ps_title {
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
}
.bnp_number,
.ps_number {
	font-family: 'Oswald', sans-serif;
	font-size: 48px;
	padding: 0 35px 0 10px;
}
.ps_number {
	padding: 0 0 0 5px;
}
.bnp_txt {
	font-size: 38px;
}
.ps_txt {
	display: block;
	font-size: 40px;
	padding-top: 20px;
}

.pickupmenu li a::before,
.pickupmenu li a::after {
	position: absolute;
	left: 0;
	content: "";
}
.pickupmenu li a::before {
	top: 0;
	width: 100%;
	height: 100%;
	transform: scale(1.0);
	transition: all 0.3s ease;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	z-index: 0;
}
.pickupmenu li.pm0101 a::before {
	background-image: url("img/bn_pickup0101.jpg");
}
.pickupmenu li.pm0102 a::before {
	background-image: url("img/bn_pickup0102.jpg");
}
.pickupmenu li.pm0103 a::before {
	background-image: url("img/bn_pickup0103.jpg");
}
.pickupmenu li.pm0201 a::before {
	background-image: url("img/bn_pickup0201.jpg");
}
.pickupmenu li.pm0202 a::before {
	background-image: url("img/bn_pickup0202.jpg");
}
.pickupmenu li.pm0203 a::before {
	background-image: url("img/bn_pickup0203.jpg");
}
.pickupmenu li.pm0204 a::before {
	background-image: url("img/bn_pickup0204.jpg");
}
.pickupmenu li.pm0205 a::before {
	background-image: url("img/bn_pickup0205.jpg");
}
.pickupmenu li a:hover::before {
	transform: scale(1.1);
}
.pickupmenu li a::after {
	bottom: 0;
	width: 100%;
	height: 50px;
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	z-index: 1;
}

.pickupbox {
	width: 100%;
	background-image: url("img/bg_pickup01.svg");
	background-repeat: no-repeat;
	background-position: center 100px;
	padding: 120px 0 180px;
}
.pickupbox02 {
	background-image: url("img/bg_pickup02.svg");
	background-position: center 160px;
}
.pickup_naiyo {
	position: relative;
	width: 100%;
}
.pickup_naiyo::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 550px;
	content: "";
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	z-index: -1;
}
.pc0101::after {
	background-image: url("img/bg_p0101.jpg");
}
.pc0102::after {
	background-image: url("img/bg_p0102.jpg");
	bottom: 70px;
}
.pc0103::after {
	background-image: url("img/bg_p0103.jpg");
	bottom: 70px;
}
.pc0201::after {
	background-image: url("img/bg_p0201.jpg");
	bottom: 40px;
}
.pc0202::after {
	background-image: url("img/bg_p0202.jpg");
	bottom: -40px;
}
.pc0203::after {
	background-image: url("img/bg_p0203.jpg");
	bottom: 40px;
}
.pc0204::after {
	bottom: -40px;
	background-image: url("img/bg_p0204.jpg");
}
.pc0205::after {
	bottom: -70px;
	background-image: url("img/bg_p0205.jpg");
}


.pickup_shosai {
	width: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	margin-bottom: 20px;
}
.pickup_shosai_r {
	margin-left: auto;
}
.pickup_shosai h4 {
	color: #174586;
	margin-bottom: 25px;
}
.pickupbox02 .pickup_shosai h4 {
	color: #FF9031;
}
.pickup_shosai p {
	font-size: 16px;
	line-height: 1.9;
	margin: 0;
}
.pickup_shosai p.read_pickup_shosai {
	color: #174586;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	line-height: 2;
	margin-bottom: 25px;
}
.pickupbox02 .pickup_shosai p.read_pickup_shosai {
	color: #FF9031;
}
.pickup_shosai p.read_pickup_shosai_s {
	display: inline-block;
	padding-left: 75px;
}
.pickup_shosai p.cap_pickup_shosai {
	font-weight: 700;
	line-height: 1.8;
	margin-bottom: 25px;
}
.pickup_shosai p.shomei_pickup {
	padding-top: 15px;
	text-align: right;
	margin: 0;
}

.pickupslider.slick-slider {
	width: 360px;
	margin: 0 auto;
}
.p0101,
.p0101_2 {
	max-width: 451px;
	background-image: url("img/bg_pickup0101.svg");
	padding: 30px 0 25px;
}
.p0101_2 {
	background-image: url("img/bg_pickup0101_2.svg");
}
.p0102,
.p0102_2 {
	max-width: 726px;
	background-image: url("img/bg_pickup0102.svg");
	padding: 25px 55px 50px 75px;
	margin-bottom: 0;
}
.p0102_2 {
	max-width: 698px;
	background-image: url("img/bg_pickup0102_2.svg");
	margin-bottom: 50px;
}
.p0103 {
	max-width: 470px;
	background-image: url("img/bg_pickup0103.svg");
	padding: 30px 0 55px 30px;
	margin-bottom: 115px;
}
.p0103_2 {
	max-width: 517px;
	padding: 30px 50px 100px 30px;
	background-image: url("img/bg_pickup0103_2.svg");
	margin-bottom: 100px;
}
.p0201 {
	max-width: 542px;
	background-image: url("img/bg_pickup0201.svg");
	padding: 50px 90px 55px 95px;
}
.p0201_2 {
	max-width: 470px;
	background-image: url("img/bg_pickup0201_2.svg");
	padding: 50px 50px 55px;
}
.p0202,
.p0202_2 {
	max-width: 618px;
	background-image: url("img/bg_pickup0202.svg");
	padding: 0 30px 45px 0;
	margin-bottom: 0;
}
.p0202_2 {
	background-image: url("img/bg_pickup0202_2.svg");
}
.p0203 {
	max-width: 570px;
	background-image: url("img/bg_pickup0203.svg");
	padding: 30px 45px 50px 80px;
	margin-bottom: 50px;
}
.p0203_2 {
	max-width: 1220px;
	background-image: url("img/bg_pickup0203_2.svg");
	padding: 90px 45px 60px 70px;
	margin-bottom: 200px;
}
.p0301 {
	max-width: 498px;
	background-image: url("img/bg_pickup0301.svg");
	padding: 30px 65px 75px 75px;
}
.p0301_2 {
	max-width: 430px;
	background-image: url("img/bg_pickup0301_2.svg");
	padding: 15px 40px 40px;
}
.p0302,
.p0302_2 {
	max-width: 692px;
	background-image: url("img/bg_pickup0302.svg");
	padding: 20px 0px 90px 80px;
	margin-bottom: 0;
}
.p0302_2 {
	padding: 10px 30px 90px 50px;
	background-image: url("img/bg_pickup0302_2.svg");
	margin-bottom: 50px;
}
.p0303 {
	max-width: 594px;
	background-image: url("img/bg_pickup0303.svg");
	padding: 25px 80px 40px 70px;
	margin-bottom: 0;
}
.p0303_2 {
	max-width: 542px;
	background-image: url("img/bg_pickup0303_2.svg");
	padding: 25px 80px 0px 30px;
	margin-bottom: 135px;
}
.p0401_2 {
	max-width: 442px;
	background-image: url("img/bg_pickup0401_2.svg");
	padding: 20px 55px 15px 30px;
	margin-bottom: 70px;
}
.p0402_2 {
	position: relative;
	right: -100px;
	max-width: 705px;
	background-image: url("img/bg_pickup0402_2.svg");
	padding: 0px 75px 80px 0px;
}
.p0403_2 {
	position: relative;
	top: -50px;
	max-width: 555px;
	background-image: url("img/bg_pickup0403_2.svg");
	padding: 95px 40px 120px 50px;
	margin-bottom: 200px;
}
.p0501_2 {
	max-width: 442px;
	background-image: url("img/bg_pickup0501_2.svg");
	padding: 20px 35px 40px 50px;
	margin-bottom: 70px;
}
.p0502_2 {
	max-width: 690px;
	background-image: url("img/bg_pickup0502_2.svg");
	padding: 0px 10px 90px 80px;
}
.p0503_2 {
	max-width: 508px;
	background-image: url("img/bg_pickup0503_2.svg");
	padding: 70px 40px 65px 15px;
	margin-bottom: 250px;
}

.pickup_img_shosai {
	width: 100%;
	padding-top: 40px;
}
.ps_photo {
	width: 100%;
	max-width: 363px;
	margin: 0;
}
.ps_photo.ps_photo_wide {
	max-width: 600px;
}
.pickup_works {
	position: relative;
	width: 100%;
	background-color: #DEEFFB;
	padding: 85px 20px 55px;
}
.pickup_works02  {
	background-color: #FBF5DE;
}
.pickup_works h3 {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%,-50%);
	color: #174586;
	font-size: 40px;
	font-weight: 700;
	background: none;
	border: none;
	margin: 0;
	padding: 0;
}
.pickup_works02 h3 {
	color: #FF9031;
}
.pickup_works h3::before {
	display: none;
}
.pickup_works_slider {
	width: 100%;
	max-width: 1135px;
	margin: 0 auto 50px;
}
.pickup_works_slider .slick-slide {
	width: 350px;
}
.pickup_works_slider li a {
	display: block;
	text-align: center;
	text-decoration: none;
	padding-right: 25px;
}
.pw_thumbnail,
.pw_date,
.pw_title {
	display: block;
}
.pw_thumbnail {
	width: 100%;
	margin-bottom: 5px;
}
.pw_thumbnail img {
	width: 354px;
	height: 265px;
	object-fit: cover;
}
.pw_title {
	font-size: 17px;
	font-weight: 900;
}


/*
saiyo
*/

.page-template-page-recruit main,
.page-template-page-recruit-new main {
  background-image:
    repeating-linear-gradient(
      -10deg,
      transparent 0,
      transparent 900px,
      rgb(222,239,251) 900px,
      rgb(222,239,251) 1800px
    ),
    url("img/bg_saiyo.png");
  background-repeat: repeat, repeat;
  background-size: auto, auto;
}

.topimage_saiyo {
	position: relative;
	width: 100%;
	height: 36.5vw;
	max-height: 700px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding: 0;
	margin-bottom: 50px;
	z-index: 3;
}
.topimage_saiyo.saiyo {
	margin-bottom: 50px;
}

.parent-pageid-20 .topimage_saiyo {
	margin-bottom: 80px;
}




.page-template-page-recruit-new .topimage_saiyo,
.page-template-page-recruit .topimage_saiyo
 {
	background-image: url("img/saiyo/topimage_saiyo.jpg");
}
.voice2024kenchiku .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2024kenchiku.jpg");
}
.voice2024doboku .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2024doboku.jpg");
}
.voice2021eigyo .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2021eigyo.jpg");
}
.voice2022kanri .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2022kanri.jpg");
}


.page-id-20 .topimage_saiyo {
	background-image: url("img/saiyo/topimage_saiyo.jpg");
}
.page-id-54 .topimage_saiyo {
	background-image: url("img/topimage_voice01.jpg");
}
.page-id-703 .topimage_saiyo {
	background-image: url("img/topimage_voice02.jpg");
}
.page-id-714 .topimage_saiyo {
	background-image: url("img/topimage_voice03.jpg");
}
.page-id-718 .topimage_saiyo {
	background-image: url("img/topimage_voice04.jpg");
}
.page-id-720 .topimage_saiyo {
	background-image: url("img/topimage_voice05.jpg");
}
.topimage_saiyo.voice06 {
	background-image: url("img/topimage_voice06.jpg");
}
.topimage_saiyo.voice07 {
	background-image: url("img/topimage_voice07.jpg");
}
.topimage_saiyo.voice08 {
	background-image: url("img/topimage_voice08.jpg");
}
.topimage_saiyo.voice09 {
	background-image: url("img/topimage_voice09.jpg");
}


.topimage_saiyo .cbox {
	height: 100%;
}
.topimage_saiyo h1 {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 29.9vw;
	max-width: 575px;
}

.saiyo {
	position: relative;
	width: 100%;
	padding-bottom: 0;
	margin: 0 auto 340px;
}

.page-template-page-recruit-new .saiyo-new,
.page-template-page-recruit .saiyo {
	margin: 0 auto 150px;
}

.saiyo04 {
	margin-bottom: 100px;
}
.bg_saiyo::before {
	position: absolute;
	left: 50%;
	top: -30%;
	width: 500%;
	height: 160%;
	min-height: 675px;
	content: "";
	background-color: #DEEFFB;
	transform: translateX(-50%) rotate(-10deg);
	z-index: -1;
}
.saiyo_top.bg_saiyo::before {
	top: 10%;
	height: 100%;
}
.voice_top.bg_saiyo::before {
	top: 10%;
	height: 110%;
}
.read_saiyo,
.read_voice {
	width: auto;
	text-align: center;
	margin: 0 auto 70px;
}
.saiyo h2 {
	width: auto;
	text-align: center;
	margin: 0 auto 30px;
}
.read_voice {
	margin: 0 auto 125px;
}
.saiyo_top.saiyo h2 {
	width: 100%;
	max-width: 500px;
	color: #fff;
	font-size: 25px;
	line-height: 1.2;
	letter-spacing: 0.05em;
	background-color: #174586;
	padding: 5px;
	margin-bottom: 50px;
}

.saiyo h2 img,
.read_saiyo img,
.read_voice img {
	text-align: center;
	margin: 0 auto;
	transform: scale(0.8);
}
.read_saiyo img,
.read_voice img {
	transform: scale(1);
}
.saiyo03 h2 {
	max-width: 577px;
}
.saiyo04 h2 {
	max-width: 334px;
}
.cap_saiyo p {
	font-size: 23px;
	line-height: 2.2;
	color: #174586;
	margin: 0 auto 50px;
	text-align: center;
}
.cap_saiyo p:last-child {
	margin: 0 auto;
}

.saiyo_knowlist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
.saiyo_know {
	width: 48.1%;
}
.saiyo_know h3 {
	margin-bottom: 10px;
}
.saiyo_knownaiyo {
	width: 100%;
	min-height: 340px;
	background-color: #fff;
	padding: 55px 20px 30px;
	margin-bottom: 50px;
}
.saiyo_knownaiyo p {
	width: 100%;
	max-width: 470px;
	font-size: 15px;
	line-height: 2;
	margin: 0 auto;
}
.saiyo_knownaiyo p.read_know {
	max-width: inherit;
	color: #174586;
	font-size: 42px;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 30px;
}
.s_know {
	display: inline-block;
}
.s_year {
	font-size: 17px;
	line-height: 1;
}
.know_value {
	display: inline-block;
	font-size: 130px;
	line-height: 1;
	padding: 0 10px;
}

.torikumi {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
.torikumi li {
	width: 50%;
	margin: 0;
	padding: 0;
}
.torikumi li:nth-child(1) {
	margin-top: 60px;
}
.torikumi li a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 405px;
	text-decoration: none;
	text-align: center;
	overflow: hidden;
	background-image: url("img/bg_pickup.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 342px 340px;
}
.torikumi li a::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transition: all 0.3s ease;
	z-index: -1;
}
.torikumi li .p_no {
	font-size: 75px;
	line-height: 1;
}
.torikumi li .p_title {
	font-size: 30px;
}

.torikumi li:nth-child(1) a::before {
	background-image: url("img/torikumi_img01.jpg");
}
.torikumi li:nth-child(2) a::before {
	background-image: url("img/torikumi_img02.jpg");
}
.torikumi li a:hover::before {
	transform: scale(1.1);
}

.voicelist {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}

.voice-link4 {
	justify-content: center;
	gap: 1.2%;
}

.voicelist li {
	width: 19%;
	margin: 0;
	padding: 0;
}
.voicelist li:nth-child(1) {
	margin-top: 140px;
}
.voicelist li:nth-child(2) {
	margin-top: 105px;
}
.voicelist li:nth-child(3) {
	margin-top: 70px;
}
.voicelist li:nth-child(4) {
	margin-top: 35px;
}
.voicelist li a {
	display: block;
	color: #174586;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
}
.voicelist li a span {
	display: block;
}
.voicelist li a img {
	transition: all 0.3s ease;
}
.voicelist li a:hover img {
	opacity: 1;
	transform: scale(1.1);
}
.voicelist_img {
	width: 100%;
	margin-bottom: 30px;
	overflow: hidden;
}
.voicelist_nyusha {
	margin-bottom: 10px;
}
.voicelist_name {
	font-size: 25px;
}

.bn_entrylist {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}

.bn_entrylist li {
	width: 47.9%;
	margin: 0;
	padding: 0;
}
.bn_entrylist li:nth-child(1) {
	margin-top: 45px;
}
.bn_entrylist li a {
	display: block;
}


.recslidebox .slick-prev,
.recslidebox .slick-next {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 42%;
	display: block;
	width: 50px;
	height: 50px;
	padding: 0;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	background: #fff;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 14px auto;
	border-radius: 50%;
	z-index: 10;
}

.recslidebox .slick-next {
	right: -15px;
	background-image: url(img/next.svg);
}

.recslidebox .slick-prev {
	left: -15px;
	background-image: url(img/prev.svg);
}

.recslide {
	position: relative;
}

.slide-inner {
	height: 100%;
	margin: 10px;
	position: relative;
}

.recslide a:hover img {
	transform: scale(1.1);
}

.recslide figure,
.recslide a {
	position: relative;
	display: block;
	text-decoration: none;
	overflow: hidden;
}

.recslide .post-term {
	position: absolute;
	top: 15px;
	right: 15px;
	color: #ffffff;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.2;
	padding: 5px 15px;
	background: #000;
	border-radius: 10px;
}
.recslide .post-term.recruit01 {
	background: #FF9031;
}
.recslide .post-term.recruit02 {
	background: #3190FF;
}
.recslide h3 {
	position: relative;
	color: #174586;
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	background-color: transparent;
	margin: 0;
	padding: 0;
	border-left: none;
}

.recslide h3::before {
	content:none;
}

.recslide .post-date {
	position: relative;
	color: #174586;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.2;
	padding-top: 10px;
}

.recruit-data.bg_saiyo::before {
	position: absolute;
	left: 50%;
	top: -5%;
	width: 500%;
	height: 110%;
	min-height: 675px;
	content: "";
	background-color: #DEEFFB;
	transform: translateX(-50%) rotate(-10deg);
	z-index: -1;
}

.recruit_datalist {
	display: flex;
	flex-wrap: wrap;
	gap: 60px 5%;
	margin-bottom: 60px;
}

.recruit_datalist li {
	flex: 0 0 calc((100% - 10%) / 3);
}

.license-datawrap {
	display: flex;
	padding: 45px 15px;
	background: #FFFBE5;
	border-radius: 30px;
	margin-bottom: 60px;
}

.license_datalist.license-col1 {
	display: flex;
	width: 34%;
	padding: 30px;
	justify-content: center;
}

.license_datalist.license-col2 {
	display: flex;
	flex-wrap: wrap;
	gap: 32px 5%;
	width: 66%;
	justify-content: center;
}

.license_datalist.license-col2 li {
	flex: 0 0 calc((100% - 10%) / 2);
	text-align: center;
}

/*
voice
*/
.voicebox {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.voicebox.voicebox02 {
	flex-direction: row-reverse;
}
.l_voice {
	width: 50%;
}
.r_voice {
	width: 45.2%;
}
.voice_img,
.voice_img img {
	width: 100%;
}


.saiyo_colwrap {
	display: flex;
	gap: 5%;
	width: 100%;
}
.saiyo_colwrap .saiyo_coltxt {
	width: 60%;
	font-size: 16px;
	line-height: 2;
}
.saiyo_colwrap .saiyo_colimg {
	width: 35%;
}

.saiyo-table.bg_saiyo::before {
	position: absolute;
	left: 50%;
	top: -5%;
	width: 500%;
	height: 110%;
	min-height: 675px;
	content: "";
	background-color: #DEEFFB;
	transform: translateX(-50%) rotate(-10deg);
	z-index: -1;
}

.saiyo-table h4 {
	color: #ffffff;
	font-size: 24px;
	text-align: center;
	background: #003375;
	margin: 0;
	padding: 15px;
}

.saiyo-table table {
	border: none;
	margin-bottom: 0;
}

.recruit-tabs {
	display: flex;
	padding: 0 2px;
	background: #003375;
}

.recruit-tabs .tab-btn {
	position: relative;
	flex: 1;
	font-size: 18px;
	font-weight: 900;
	border-radius: 0;
	border: 2px solid #003375;
	cursor: pointer;
}

.recruit-tabs .tab-btn::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-top: 6px solid #003375;
	border-left: 6px solid #003375;
}

.recruit-tabs .tab-1 {
	background: #FBF5DE;
}
.recruit-tabs .tab-1:active,
.recruit-tabs .tab-1:hover {
	background: #ebe2bf;
}

.recruit-tabs .tab-2 {
	background: #C9E6FB;
}
.recruit-tabs .tab-2:active,
.recruit-tabs .tab-2:hover {
	background: #b6d4e9;
}

.saiyo .tab-content {
	display: none;
	background: #ffffff;
}

.saiyo .active {
	display: block;
}

.saiyo-table td {
	padding: 15px 15px 15px 35px;
	border-bottom: 2px solid #003375;
}

.saiyo-table .tab-table {
	background: #FFFDF3;
}

.saiyo-table .tab-table tr td:first-child {
	background: #EBE2BF;
	width: 160px;
	text-align: center;
	padding: 15px;
}

.saiyo-table #tab-content-2 {
	background: #f7fcff;
}

.saiyo-table #tab-content-2 tr td:first-child {
	background: #b6d4e9;
}

.saiyo-table .basic-table {
	background: #FFFFFF;
}
.saiyo-table .basic-table tr td:first-child {
	background: #EFEEEE;
	width: 160px;
	text-align: center;
	padding: 15px;
}

.recruti-entrywrap {
	background: #003375;
	padding: 3%;
}

.recruti-entrywrap h3 {
	text-align: center;
	background: transparent;
	border: none;
}

.recruti-entrywrap h3::before {
	content: none;
}


.recruit_entrylist {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.recruit_entrylist li {
    flex: 1 0 calc(50% - 30px);
    box-sizing: border-box;
}

.recruit_entrylist li:nth-child(3) {
    flex: 0 0 calc(50% - 15px);
    margin-left: auto;
}
/*
contact
*/
button,
input,
select,
textarea {
	padding: 15px;
	border: 1px solid #707070;
	border-radius: 5px;
	background: #fff;
}
button,
input {
    line-height: normal;
}
textarea {
	vertical-align: top;
}
input[type="checkbox"],
input[type="radio"],
input[type="file"],
input[type="hidden"],
input[type="image"],
input[type="color"] {
	padding: 0;
}
input,
select,
textarea {
	font-size: 16px;
}
input[type="text"],
input#your-tel,
input#your-email,
select,
textarea {
	width: 100%;
}
input#your-email,
input#your-zip,
input#your-tel {
	ime-mode: disabled;
}
::placeholder {
	color: #969696;
}
select,
input[type="submit"],
input[type="button"] {
	appearance: none;
	-webkit-appearance: none;
}

.t_contact {
	width: 100%;
	max-width: 930px;
	border: none;
	margin: 0 auto 70px;
}
.t_contact td,
.t_contact th {
	border: none;
}
.t_contact th {
	width: 20%;
	font-size: 17px;
	font-weight: 700;
	padding: 0 0 60px;
	background: none;
}
.t_contact th .necessary {
	display: block;
	font-size: 14px;
	color: #93243A;
}
.t_contact td {
	padding: 0 0 60px 10px;
}
.privacybox {
	width: 100%;
}
.privacy_scroll {
	width: 100%;
	height: 445px;
	padding: 0 20px;
	overflow-y: scroll;
	padding-right: 15px;
	margin-bottom: 110px;
}
.privacybox p,
.privacybox h4,
.privacybox ul li {
	font-size: 15px;
	font-weight: 400;
	line-height: 2;
	margin-bottom: 25px;
}
.privacybox p {
}
.privacybox h4 {
	font-weight: 700;
}
.privacybox ul {
	list-style-type: disc;
	padding: 0 0 25px 1em;
}
.privacybox ul li {
	margin: 0;
	padding: 0;
}

.doui {
	width: 100%;
	margin-bottom: 60px;
}
.privacybox .doui p {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin: 0 auto 30px;
}
.doui table {
	margin: 0;
	border: none;
}
.doui table th {
	display: none;
}
.doui table td {
	width: 100%;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
	border: none;
	padding: 0;
}
.doui table td .wpcf7-list-item {
	margin: 0;
}

#btn_contact {
	display: flex;
	justify-content: center;
	width: 100%;
    margin: 0 auto;
}
#btn_contact p {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0 auto;
}
form.wpcf7-form p.buttons-area .button-rewrite {
	margin: 0 45px 0 0!important;
}
form.wpcf7-form p.buttons-area .wpcf7-submit {
	margin: 0!important;
}
.done01 p {
	font-size: 24px;
	font-weight: 700;
	line-height: 2;
	text-align: center;
	margin: 0 auto;
}
.done01 .btn_center {
	padding-top: 80px;
}


/* --------------------------------
** page-sdgs
-------------------------------- */
.pickup-sdgs {
	margin-bottom: 0;
	padding-bottom: 0;
}

.container {
	position: relative;
	width: calc(100% - 50px);
	max-width: 1200px;
	margin: 0 auto;
	z-index: 2;
}


.pickup-sdgs .titlebox {
	margin-bottom: 0;
}

.pickup-sdgs__section-title {
	font-size: 38px;
	font-weight: 900;
	color: #003375;
	margin-bottom: 50px;
}

/*
pickup-sdgs__intro
*/
.pickup-sdgs__intro {
	position: relative;
	width: 100%;
	padding: 50px 0 30px;
	color: #ffffff;
	background: linear-gradient(rgba(51, 51, 51, 0.7), rgba(51, 51, 51, 0.7)),
							url(img/sdgs/pickup-sdgs__intro--bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.pickup-sdgs__intro .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: column;
	min-height: 260px;
	height: 100%;
}

.pickup-sdgs__intro--title {
	display: flex;
	width: 100%;
	justify-content: center;
	gap: 50px;
	align-items: center;
}

.pickup-sdgs__intro--text {
	text-align: center;
	line-height: 1.6;
}

/*
pickup-sdgs__aboutus
*/
.pickup-sdgs__aboutus {
	position: relative;
	width: 100%;
	padding: 50px 0;
	background: linear-gradient(rgba(222, 239, 251, 0.82), rgba(222, 239, 251, 0.82)),
							url(img/sdgs/pickup-sdgs__aboutus--bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.pickup-sdgs__aboutus .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: column;
	min-height: 260px;
	height: 100%;
}

.pickup-sdgs__aboutus--title {
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

.pickup-sdgs__aboutus--text {
	font-size: 18px;
	text-align: center;
	line-height: 1.6;
	margin-bottom: 60px;
}

.pickup-sdgs__aboutus--logo {
	text-align: center;
}

.pickup-sdgs__aboutus--logo-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	justify-content: center;
}

/*
pickup-sdgs__declaration
*/
.pickup-sdgs__declaration {
	position: relative;
	width: 100%;
	padding: 50px 0;
	background: linear-gradient(rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.82)),
							url(img/sdgs/pickup-sdgs__declaration--bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.pickup-sdgs__declaration--title {
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

.pickup-sdgs__declaration--text {
	font-size: 18px;
	text-align: center;
	line-height: 1.6;
	margin-bottom: 60px;
}

.pickup-sdgs__declaration--img {
	text-align: center;
}

/*
pickup-sdgs__declaration2col
*/
.pickup-sdgs__declaration2col {
	display: flex;
	padding-bottom: 0;
}

.pickup-sdgs__declaration2col > div {
	flex: 1;
	text-align: center;
}

.container__declaration2col {
	position: relative;
	height: 100%;
	width: calc(100% - 50px);
	max-width: 500px;
	margin: 0 auto;
	z-index: 2;
}

.pickup-sdgs__declaration2col-l > div {
	position: relative;
	width: 100%;
	padding: 50px 0 15px;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

.pickup-sdgs__declaration2col-l1 {
	background: linear-gradient(rgba(222, 239, 251, 0.82), rgba(222, 239, 251, 0.82)),
							url(img/sdgs/pickup-sdgs__declaration2col-l1--bg.jpg);
}

.pickup-sdgs__declaration2col-l2 {
	background: linear-gradient(rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.82)),
							url(img/sdgs/pickup-sdgs__declaration2col-l2--bg.jpg);
}

.pickup-sdgs__declaration2col-l3 {
	background: linear-gradient(rgba(222, 239, 251, 0.82), rgba(222, 239, 251, 0.82)),
							url(img/sdgs/pickup-sdgs__declaration2col-l3--bg.jpg);
}

.pickup-sdgs__declaration2col-l4 {
	background: linear-gradient(rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.82)),
							url(img/sdgs/pickup-sdgs__declaration2col-l4--bg.jpg);
}

.sdgs__contents-box {
	text-align: left;
	margin-bottom: 30px;
}

.sdgs__contents-box--title {
	position: relative;
	color: #333333;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
	background: none;
	margin: 0 0 20px;
	padding: 6px 10px 10px;
}

.sdgs__contents-box--title::before {
	position: absolute;
	left: -10px;
	top: 0;
	width: 7px;
	height: 100%;
	content: "";
	background-color: #003375;
	z-index: 1;
}

.sdgs__contents-box--desc {
	font-size: 17px;
	line-height: 1.4;
	margin-bottom: 25px;
}

.pickup-sdgs__declaration2col--logo-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin: 0 auto 20px;
	max-width: calc((110px* 5) + 60px);
}

.sdgs__contents-action p {
	line-height: 1.6;
	margin-bottom: 0;
}

.sdgs__contents-action ul {
	padding-left: 28px;
	list-style: disc;
}
.sdgs__contents-action li {
	line-height: 1.6;
	margin-bottom: 0;
}

.pickup-sdgs__declaration2col-r {
	position: relative;
	width: 100%;
	padding: 50px 0;
	background: #003375;
}

.pickup-sdgs__declaration2col-r > div {
	padding: 50px 0 15px;
}

.pickup-sdgs__declaration2col-r--img {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	justify-content: space-around;
	gap: 60px;
}

/*
pickup-sdgs__topics
*/
.pickup-sdgs__topics {
	position: relative;
	width: 100%;
	padding: 50px 0 80px;
	background: #DEEFFB;
}

.pickup-sdgs__topics--title {
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

.pickup-sdgs__topics--contents {
	max-width: 1020px;
	margin: 0 auto 30px;
}

.pickup-sdgs__topic2col {
	display: flex;
	max-width: 1020px;
	margin: 0 auto 30px;
	flex-direction: column;
}

.pickup-sdgs__topic2col > div {
	display: flex;
	flex: 1;
	text-align: center;
	align-items: center;
}

.pickup-sdgs__topic--text {
	font-size: 1.25rem;
	text-align: left;
	line-height: 2;
}

.pickup-sdgs__declaration2col-r--img-wrap {
	position: relative;
	display: inline-block;
}

.pickup-sdgs__declaration2col-r--img-link {
	position: absolute;
	top: 0%;
	left: 0%;
	width: 46%;
	height: 65%;
}

@media only screen and (min-width: 801px) {
	.pickup-sdgs__topic2col {
		display: flex;
		max-width: 1020px;
		margin: 0 auto 30px;
		flex-direction: row;
	}
	
	
}

/* --------------------------------
** digital-archives
-------------------------------- */
	.post-type-archive-digital-archives .site-content #content,
.tax-cat_archives .site-content #content {
	width: calc(100% - 286px);
	margin: 0;
}

.archives-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.archive-item {
	flex: 0 0 calc((100% - 32px) / 3);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 24px;
}

.archive-image {
	width: 100%;
	max-width: 576px;
	height: auto;
	object-fit: cover;
	border: 1px solid #ddd;
	margin-bottom: 8px;
}

.archive-term {
	display: block;
	text-align: center;
	margin-bottom: 10px;
	padding: 4px 5px;
	min-width: 90px;
	font-size: 12px;
	font-weight: bold;
	color: #ffffff;
	background: #707070;
}

.archive-date {
	display: block;
	margin-bottom: 10px;
	font-size: 14px;
	color: #262727;
}

.archive-title,
.archive-title a {
	font-size: 17px;
	font-weight: bold;
	padding: 0;
	background: none;
	color: #262727;
	border: none;
}

.archive-title::before {
	content: none;
}


/*
wp-pagenavi
*/
div.wp-pagenavi {
	position: relative;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	padding-top: 70px;
}
div.wp-pagenavi .smaller,
div.wp-pagenavi .current,
div.wp-pagenavi .larger {
}
.page-links {
	font-weight: bold;
}
.page-links a,
.wp-pagenavi a, .wp-pagenavi span {
	display: inline-block;
	color: #fff;
	width: 35px;
	height: 40px;
	font-size: 15px;
	font-weight: 400;
	margin: 0 10px 20px;
	padding: 10px 5px 0;
	background-color: #666;
	border: 1px solid #333!important;
	text-decoration: none;
	transition: all 0.3s;
}
.wp-pagenavi a.first,
.wp-pagenavi a.last {
	width: auto;
}
.wp-pagenavi .pages {
	display: none;
}
.page-links a:hover,
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	background-color: #93243A;
}
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	width: auto;
	background: #333;
}





/*
footer
*/
#footer {
	position: relative;
	width: 100%;
	margin: 0;
	z-index: 2;
}
#footer a {
	text-decoration: none;
}
.footermenu {
	padding: 55px 0;
	background-color: #333333;
}
.footermenu .cbox {
	display: flex;
	justify-content: center;
}
.footermenu nav {
	width: 17.1%;
	border-left: 1px solid #fff;
	padding: 0 15px;
}
.footermenu nav ul {
	margin: 0;
	padding: 0;
}
.footermenu nav ul li {
	margin: 0;
	padding: 0;
}
.footermenu nav ul li.fm {
	padding-top: 30px;
}
.footermenu nav ul li a {
	display: block;
	position: relative;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	text-decoration: none;
	padding-left: 1em;
}
.footermenu nav ul li ul li ul li a {
	padding-left: 2em;
}
.footermenu nav ul li a::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
	height: 12px;
	background-color: #fff;
	content: "";
}
.footermenu nav ul li ul li a::before {
	display: none;
}
.footermenu nav ul li ul li ul li a::before {
	display: block;
	left: 1em;
	width: auto;
	height: auto;
	background: none;
	content: "→";
}
.footermenu nav ul li a:hover {
	text-decoration: underline;
}

.siteinfo {
	background-color: #F5F5F0;
	text-align: center;
	padding: 35px 0;
}
.footer_logo {
	width: 100%;
	max-width: 290px;
	margin: 0 auto 35px;
}
.siteinfo p,
.siteinfo ul li {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
	color: #666;
}
.siteinfo p.footer_iso {
	margin-bottom: 25px;
}
.siteinfo p.footer_company {
	margin-bottom: 15px;
}
.footer_tel {
	display: inline-block;
	padding: 0 15px;
}
.siteinfo ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.siteinfo ul li {
	padding: 0 15px;
	border-right: 1px solid #666;
}
.siteinfo ul li:last-child {
	border: none;
	padding: 0 0 0 15px;
}

.copyright {
	color: #666;
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
	margin: 0 auto;
	padding: 20px 0;
}


/* --------------------------------
** page top
-------------------------------- */
#page-top {
    display: none;
    position: fixed;
    bottom: 60px;
    right: 30px;
    line-height: 1;
    z-index: 10;
    margin-bottom: 0;
}

#page-top a {
    background: #ffffff;
    text-align: center;
    text-decoration: none;
    display: block;
    border: 3px solid #174586;
		padding: 4px;
}


#wpadminbar {
	position: fixed;
}





/*
sp
*/

@media only screen and (max-width: 1360px) {


	/*
	header
	*/
	.site-header {
		height: 50px;
	}
	.site-title {
		left: 5px;
	}
	.site-title h1 {
		max-width: 154px;
	}
	#mainmenu {
		display: none;
	}
	#toggle {
		display: block;
		position: absolute;
		top: 0px;
		right: 0px;
		width: 50px;
		height: 50px;
		background-color: #174586;
		text-align: center;
		cursor: pointer;
		z-index: 4;
	}
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
		position: relative;
		width: 50px;
		height: 50px;
		text-decoration: none;
		outline: none;
	}
	.menu-trigger span {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: 30px;
		height: 4px;
		background-color: #fff;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 13px;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 23px;
	}
	.menu-trigger span:nth-of-type(3) {
		top: 33px;
	}
	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translate(-50%,10px) rotate(-45deg);
		transform: translate(-50%,10px) rotate(-45deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translate(-50%,-10px) rotate(45deg);
		transform: translate(-50%,-10px) rotate(45deg);
	}

	#spmainmenu {
		position: fixed;
		top: 50px;
		left: 0;
		width: 100%;
		height: 100vh;
		background-color: #8BA6D2;
	}
	#spmainmenu.open {
		z-index: 2;
	}
	.spmenubox {
		width: 100%;
		height: 85vh;
		overflow-y: auto;
		padding: 25px;
	}
	.spmenubox p {
		color: #fff;
		font-size: 15px;
		line-height: 1.6;
		font-weight: 400;
		margin: 0;
	}
	.spmenubox p a {
		color: #fff;
	}
	#spmainmenu ul {
		padding: 0;
		margin: 0;
	}
	#spmainmenu ul li {
		width: 100%;
		margin: 0 0 8px;
		padding: 0;
	}
	#spmainmenu ul li.spmtechnology {
		margin: 0;
	}
	#spmainmenu ul li.spmrecruit {
		margin: 8px 0;
	}
	#spmainmenu ul:first-child {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-start;
	}
	#spmainmenu ul li a {
		position: relative;
		display: block;
		color: #333;
		font-size: 15px;
		line-height: 1.6;
		text-decoration: none;
		background-color: #fff;
		padding: 6px 15px;
	}
	#spmainmenu ul li.subm a::before,
	#spmainmenu ul li.subm02 a::before,
	#spmainmenu ul li.spmtechnology a::before {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 3px;
		width: 30px;
		height: 30px;
		content: "";
		background-image: url("img/bg_spmainmenu_off.svg");
		background-repeat: no-repeat;
		background-position: center top;
	}
	#spmainmenu ul li.subm02 a::before {
		width: 20px;
		height: 20px;
		right: 5px;
		background-image: url("img/bg_spmainmenu_off02.svg");
	}
	#spmainmenu ul li.subm a.open::before,
	#spmainmenu ul li.spmtechnology a.open::before {
		background-image: url("img/bg_spmainmenu_on.svg");
	}
	#spmainmenu ul li.subm02 a.open::before {
		background-image: url("img/bg_spmainmenu_on02.svg");
	}

	#spmainmenu ul li.spmhalf {
		width: 46.2%;
		margin: 25px 0;
	}
	#spmainmenu ul li.spmhalf a {
		text-align: center;
		padding: 60px 5px 20px;
		background-repeat: no-repeat;
	}
	#spmainmenu ul li.spmpartner a {
		background-image: url("img/bg_spmpartner.svg");
		background-position: center 15px;
		background-color: #F5F5F0;
	}
	#spmainmenu ul li.spmcontact a {
		color: #fff;
		background-image: url("img/bg_spmcontact.svg");
		background-position: center 20px;
		background-color: #174586;
	}
	#spmainmenu ul li ul,
	#spmainmenu ul#menu-spmainmenu02 {
		display: none;
		background-color: #fff;
		padding: 0 3px 3px;
		margin: 0 auto;
	}
	#spmainmenu ul li ul li,
	#spmainmenu ul#menu-spmainmenu02 li {
		margin: 0;
	}
	#spmainmenu ul li ul li a,
	#spmainmenu ul#menu-spmainmenu02 li a {
		padding: 6px 12px;
		font-size: 12px;
		border-top: 1px solid #707070;
	}
	#spmainmenu ul#menu-spmainmenu02 li a {
		border: none;
		border-bottom: 1px solid #707070;
	}
	#spmainmenu ul#menu-spmainmenu02 li.spmlaborator a {
		border-top: 1px solid #707070;
	}
	#spmainmenu ul#menu-spmainmenu02 li.spmlaborator ul li a {
		border-top: none;
	}
	#spmainmenu ul#menu-spmainmenu02 li ul li a {
		padding: 6px 12px 6px 20px;
	}
	#spmainmenu ul li ul li:last-child a {
		border-bottom: 1px solid #707070;
	}
	#spmainmenu ul li ul li a::before {
		display: none;
	}


	main {
		padding-top: 50px;
	}

	.pickup_top,
	.pickup_child {
		height: calc(100vh - 35px);
	}

	/* --------------------------------
	** page-sdgs
	-------------------------------- */
	.pickup-sdgs__intro {
    padding: 100px 0 60px;
	}

	.pickup-sdgs__intro--title {
    gap: 15px;
    flex-direction: column;
		margin-bottom: 100px;
	}

	.pickup-sdgs__declaration2col {
    flex-direction: column;
	}



}


@media only screen and (max-width: 800px) {

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}

	p,
	ul li,
	ol li {
		font-size: 15px;
		line-height: 1.7;
	}


	.page_title {
		height: 60px;
		background-image: url("img/bg_pagetitle_sp.jpg");
	}
	.page_title h1 {
		font-size: 18px;
		margin: 0 auto 10px;
	}
	h2 {
		font-size: 18px;
	}
	h3,
	.technology h4,
	h3.entry-title a {
		font-size: 15px;
		padding: 10px 10px 12px;
	}
	.titlebox {
		height: 90px;
		margin-bottom: 55px;
	}
	.titlebox h2 {
		padding-bottom: 10px;
	}
	.titlebox h2::after {
		width: 200px;
	}


	/*
	breadcrumb
	*/
	#breadcrumb {
		padding: 10px 25px;
	}
	#content {
		display: flex;
		flex-wrap: wrap;
	}
	.contentbox {
		width: 100%;
		order: 1;
	}
	.site-content #content {
		display: block;
		width: 100%;
	}
	.site-content {
		display: block;
		max-width: none;
		width: 100%;
		padding: 0 25px;
		margin: 0 auto 100px;
	}
	#secondary {
		width: 100%;
		padding-top: 100px;
	}
	table th,
	table td {
		display: block;
		width: 100%;
		padding: 5px 10px;
	}
	table th {
		width: 100%;
	}
	.table-scarea, .table-scarea1, .table-scarea2, .table-scarea3 {
		margin-bottom: 20px;
	}
	.table-scarea table {
		min-width: inherit;
	}

	.btn a,
	.btn02 a,
	input[type="submit"],
	input[type="button"] {
		font-size: 14px;
	}


	/*
	topimage
	*/
	.topimage,
	.video_wrapper {
		width: 100%;
		height: 56.25vw;
		min-height: inherit;
	}
	.video_wrapper > video {
		width: 100%;
		height: 100%;
	}
	.video_wrapper {
		min-height: 105%!important;
		min-width: 105%!important;
		top: -5%!important;
	}



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


	/*
	hometop
	*/
	.hometop {
		display: block;
		width: 100%;
	}
	.homefuture {
		display: flex;
		width: 100%;
		background: none;
		min-height: 40vw;
		padding-left: 0px;
	}
	.l_homefuture {
		width: 60%;
		color: #fff;
		border-left: 3px solid #93243A;
		padding: 0 0 0 8px;
		margin: 0 0 0 8px;
	}
	.l_homefuture h2 {
		max-width: 165px;
		margin: 0 0 10px;
	}

	.l_homefuture p {
		font-size: 9px;
	}
	.homefuture_img {
		position: absolute;
		top: 0;
		right: 0;
		width: 40vw;
	}
	.homefuture_img img {
		width: 100%;
	}

	.homenews {
		width: 100%;
	}
	.homenews h2 {
		text-align: center;
		background-color: #F5F5F0;
		padding: 12px 10px;
	}
	.homenews h2 a {
		font-size: 18px;
	}
	.homenews ul {
		padding: 15px 25px 20px;
	}
	.homenews ul li {
		margin: 0 0 25px;
	}
	.entrydate {
		font-size: 12px;
	}
	.entrytitle {
		display: block;
		font-size: 15px;
	}


	/*
	hometrajectory
	*/
	.homecontent h2 {
		font-size: 18px;
		margin: 0 auto 15px;
	}
	.homecontent.hometrajectory h2 {
		padding: 30px 0 70px;
	}
	.hometrajectory {
		padding-bottom: 25px;
	}
	.bn_hometrajectory {
		width: calc(100% - 50px);
		margin: -55px auto 0;
	}
	.bn_hometrajectory a img {
		width: 100%;
		transform: none;
	}
	.bn_hometrajectory a:hover img {
		transform: none;
	}


	/*
	homeworksbox
	*/
	.homeworks {
		padding-bottom: 50px;
	}
	.homeworksbox {
		display: block;
	}
	.homeworksbox a {
		width: 100%;
		height: 77.5vw;
		min-height: 290px;
	}
	.homeworksbox a:nth-child(1)::before {
		background-image: url("img/bg_homework01_sp.jpg");
	}
	.homeworksbox a:nth-child(2)::before {
		background-image: url("img/bg_homework02_sp.jpg");
	}
	.homeworksbox a h3 {
		width: 108px;
		height: 108px;
		font-size: 20px;
	}
	.homeworksbox a:hover h3,
	.homeworksbox a:hover::before {
		transform: scale(1);
	}


	/*
	homecsr
	*/
	.homecsr {
		padding-bottom: 45px;
		margin-bottom: 65px;
	}
	.homecsr::after {
		bottom: 4px;
		height: 100px;
	}
	.csrslide a h3 {
		height: 58px;
		font-size: 18px;
	}
	.csrslide a:hover figure {
		transform: scale(1);
	}


	/*
	information
	*/
	.entrylink {
		display: block;
		border-bottom: 1px solid #174586;
		padding: 20px 0;
	}
	.entrylink:first-of-type {
		padding: 0 0 20px;
	}
	.entry-img,
	.evaluation-img {
		width: 40%;
		margin: 0 20px 15px 0;
	}
	.r_entry,
	.entrylink02 .r_entry {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		width: 100%;
	}
	.entry-head {
		margin-bottom: 15px;
	}
	.entry-date {
	}
	.r_entry h3 {
		width: 100%;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	.entry-shosai {
		display: block;
	}
	.entry-content h2 {
		font-size: 15px;
		margin-bottom: 15px;
	}
	.entry-content p {
		margin-bottom: 35px;
	}
	.entry-content p.entry-head {
		display: block;
		margin-bottom: 40px;
	}
	.entry-content .entry-cat {
		margin-bottom: 5px;
	}
	.entry-content .entry-date {
		display: block;
		margin-left: 0px;
	}
	#secondary .sidemenu ul li a:hover {
		font-weight: 400;
		background-color: #99998B;
	}
	#secondary .sidemenu ul li a.current:hover {
		background-color: #174586;
		font-weight: 900;
	}

	/*
	corporation
	*/
	.pagemenu {
		order: 2;
		margin-bottom: 0;
		padding-top: 85px;
	}
	.pagemenu_bottom {
		display: none;
	}
	.pagemenu.sp {
		border-top: 1px solid #174586;
		padding-top: 70px;
		margin-top: 70px;
	}
	.pagemenu ul {
		display: block;
	}
	.pagemenu ul li {
		width: 100%;
		margin: 0 auto 20px;
	}
	.pagemenu ul li:last-child {
		margin: 0;
	}
	.pagemenu ul li a {
		font-size: 15px;
		font-weight: 400;
		line-height: 1.2;
		text-align: left;
		border-radius: 0px;
		padding: 6px;
	}
	.pagemenu ul li a:hover {
		background-color: #99998B;
	}
	.pagemenu ul li.current-menu-item a,
	.pagemenu ul li.current-menu-item a,
	.tax-cat_evaluation .pagemenu ul li.menu-item-339 a,
	.pagemenu ul li.current-menu-item a:hover {
		background-color: #174586;
		font-weight: 900;
	}

	.read_corporation {
		display: block;
		margin: 0 auto 30px;
	}
	.read_corporation01 {
		display: block;
		font-size: 20px;
		padding: 10px 0 0;
	}

	.president {
		display: block;
	}
	.president_img {
		width: 100%;
		margin: 0 auto 30px;
	}
	.president_img img {
		width: 100%;
	}
	.r_president {
		width: 100%;
	}
	.r_president p {
		font-size: 15px;
		line-height: 1.5;
	}
	.r_president p.shomei {
		display: block;
		text-align: right;
	}
	.katagaki {
		display: block;
		padding: 0 70px 10px 0;
	}
	.president_name {
		width: 100%;
		padding: 0;
	}


	/*
	about
	*/
	.t_about dl {
		padding: 0;
	}
	.t_about dl dt,
	.t_about dl dd {
		font-size: 14px;
		line-height: 1.6;
	}
	.t_about dl dt {
		width: 85px;
	}
	.t_about dl dd {
		width: calc(100% - 85px);
	}
	.t_about .komelist {
		margin: 0 0 10px;
	}
	.t_shikaku {
		display: block;
		padding: 10px;
	}
	.t_shikaku ul {
		width: 100%;
	}
	.t_shikaku ul:first-child {
		margin: 0;
	}


	/*
	philosophy
	*/
	.longgoal li {
		font-size: 16px;
		padding: 0 0 0 40px;
		margin: 0 0 35px;
	}
	.longgoal li::before {
		width: 30px;
		height: 30px;
		font-size: 14px;
	}

	.integration {
		padding: 35px 20px 0;
	}
	.integration dl {
		display: block;
	}
	.integration dt {
		width: 175px;
		font-size: 16px;
		padding: 8px;
		margin-bottom: 15px;
	}
	.integration dd {
		width: 100%;
		margin-bottom: 50px;
	}
	.integration dd.read_integration {
		font-size: 22px;
	}
	.integration dl ol {
		margin-bottom: 25px;
	}


	/*
	history
	*/
	.history01 {
		display: flex;
		flex-wrap: wrap;
		padding-bottom: 45px;
	}
	.history01 h2 {
		width: 100%;
		font-size: 30px;
		line-height: 1.3;
		margin: 0 0 20px;
		order: 1;
	}
	.read_dna {
		width: 100%;
		margin-bottom: 0px;
		order: 4;
	}
	.dna_img01 {
		position: relative;
		right: auto;
		top: auto;
		width: 100%;
		margin: 0 auto 10px;
		order: 3;
	}
	.kinen_photo {
		display: block;
		order: 2;
		margin-bottom: 20px;
	}
	.kinen_photo p {
		margin: 0;
	}
	.dna_img02 {
		width: 100%;
		margin: 0 auto 10px;
		text-align: center;
	}

	.history_head {
		flex-wrap: wrap;
		margin-bottom: 20px;
	}
	.history_year {
		width: 100%;
		padding: 10px;
	}
	.history_year h3 {
	}
	.history_img {
		width: 33.2%;
	}
	.history_img_half {
		width: 50%;
	}

	.btn_historymore {
		display: flex;
		justify-content: center;
		margin: 20px 0 55px;
	}
	.history_open {
		display: none;
		margin-bottom: 0;
	}
	.history02 table.t_history th,
	.history02 table.t_history td {
		border-bottom: 1px solid #CCCCBD;
	}
	.history02 .history_open table,
	.history02 .history_open table th {
		border-top: none;
	}


	.history02 table th,
	.history02 table td {
		padding: 5px 10px;
	}
	.h1998_img04 {
		width: 100%;
		max-width: inherit;
	}



	/*
	office
	*/
	.t_office th {
		font-size: 15px;
		text-align: left;
	}
	.t_office td {
		font-size: 14px;
		line-height: 1.5;
		padding: 10px;
	}
	.office_address {
		width: calc(100% - 90px);
	}
	.office_map {
		margin: 0 5px 0 25px;
	}


	/*
	organization
	*/
	.organizationlist {
		display: block;
	}
	.organizationlist table {
		width: 100%;
	}
	.organizationlist table tbody th {
		width: 100%;
		text-align: left;
	}



	/*
	works
	*/
	.works_topslide h2 {
		font-size: 15px;
		max-width: 230px;
		padding: 10px;
	}

	.worksmenu ul li {
		width: 100%;
		min-width: inherit;
		max-width: inherit;
	}
	.worksmenu ul li a {
		padding: 6;
	}
	.workslist ul {
		display: block;
	}
	.workslist ul li {
		width: 100%;
	}
	.works_thumbnail {
		margin: 0 auto 10px;
	}
	.works_thumbnail img {
		height: 200px;
	}
	.works_date {
		margin-bottom: 5px;
	}

	.works-entry h4 {
		font-size: 15px;
		font-weight: 700;
	}
	.works-date {
		font-size: 15px;
		margin-bottom: 15px;
	}
	.workssliderbox {
		margin: 0 auto 30px;
	}
	.worksslider {
		margin: 0 auto;
	}
	.worksslider_thumbnail {
		display: none!important;
	}
	.t_works {
		margin-bottom: 20px;
	}
	.works_comment {
		padding: 15px;
		margin: 0 auto 35px;
	}


	/*
	shikenshitsu
	*/
	.read_shikenshitsu {
		font-size: 17px;
		margin-bottom: 30px;
	}
	.shikenshitsu01 .read_shikenshitsu {
		text-align: left;
	}
	.read_shikenshitsu_sub {
		font-size: 15px;
	}
	.shikenshitsu02 .txt_center {
		text-align: left;
	}
	.think,
	.txt_space {
		display: block;
		padding-left: 0;
	}
	.shikenshitsubox {
		display: block;
		padding-top: 0;
	}
	.shikenshitsu_img {
		width: 100%;
		text-align: center;
		margin: 0 auto 25px;
	}
	.shikenshitsu_img img,
	.r_shikenshitsu {
		width: 100%;
	}
	.accessmap {
		margin-bottom: 25px;
	}


	/*
	tests
	*/
	.tests p {
		margin-bottom: 40px;
	}
	.testsbox,
	.sliderbox {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		margin-bottom: 40px;
	}
	.l_tests,
	.l_slider {
		width: 100%;
		max-width: inherit;
	}
	.r_tests,
	.r_slider {
		width: 100%;
		margin-bottom: 25px;
	}
	.naiyo {
		padding: 15px;
	}
	.naiyo dl {
		padding: 15px ;
	}
	.naiyo dl dt,
	.naiyo dl dd {
		font-size: 15px;
	}
	.naiyo dl dt {
		padding: 2px 5px 5px 10px;
	}
	.caption_txt,
	.l_tests .caption_txt,
	.slider .caption_txt {
		height: 30px;
		font-size: 17px;
	}
	.tests_slider_thumbnail .slick-slide,
	.slider_thumbnail .slick-slide {
		width: 21.2%!important;
		margin: 0 5% 20px 0;
	}
	.tests_slider_thumbnail .slick-slide:nth-child(4n),
	.slider_thumbnail .slick-slide:nth-child(4n) {
		margin: 0 0 20px;
	}
	.tests_slider_thumbnail .slick-slide:nth-child(5n),
	.slider_thumbnail .slick-slide:nth-child(5n) {
		margin: 0 5% 20px 0;
	}


	/*
	uav
	*/
	.uav {
		padding-bottom: 55px;
	}
	.uav_head {
		display: block;
		margin: 0 auto 35px;
	}
	.uav_logo {
		width: 200px;
		padding: 15px 10px 10px;
		margin: 0 auto 35px;
	}
	.uav_txt {
		font-size: 90px;
	}
	.uav_logo small {
		font-size: 10px;
		padding-top: 25px;
	}
	.r_uavhead,
	.r_uavhead p,
	.read_uav {
		width: 100%;
		font-size: 17px;
	}
	.uav_photo {
		display: block;
	}
	.uav_img01,
	.r_uav_photo,
	.half_movie,
	.youtube_thumbnail,
	.youtube_thumbnail img {
		width: 100%;
	}
	.uav_movie {
		display: block;
		margin-bottom: 0px;
	}
	.half_movie,
	.youtube_thumbnail {
		margin-bottom: 25px;
	}
	.bim_shoukai a {
		display: block;
		margin-left: 0px;
	}
	.bim_shoukai a:hover {
		text-decoration: none;
	}


	/*
	analysis
	*/
	.read_analysis {
		font-size: 17px;
		text-align: left;
		margin-bottom: 30px;
	}
	.analysis_photo,
	.technology_photo {
		display: block;
		margin-bottom: 0px;
	}
	.analysis_img,
	.technology_img,
	.naiyo .analysis_photo .analysis_img {
		width: 100%;
	}
	.analysis_img,
	.technology_img {
		margin: 0 auto 20px;
	}
	.analysis_naiyo,
	.technology_naiyo {
		display: block;
	}
	naiyo h4 {
		margin: 0 0 20px;
	}
	.analysis_naiyo ul,
	.technology_naiyo ul {
		width: 100%;
		margin: 0 0 20px;
	}
	.analysis_naiyo ul:last-of-type,
	.technology_naiyo ul:last-of-type {
		margin-bottom: 0;
	}


	/*
	patent
	*/
	.read_ns {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.patent02 h3 {
		margin-bottom: 40px;
	}
	.concrete {
		display: block;
		margin-bottom: 0px;
	}
	.technology h4.t_concrete01,
	.technology h4.t_concrete02 {
		margin-bottom: 15px;
	}
	.l_concrete,
	.concrete_img02{
		width: 100%;
	}
	.concrete_img {
		margin: 0 auto 20px;
	}
	.concretelist {
		margin: 0 auto 35px;
		padding: 0;
	}
	.concretelist:last-of-type {
		margin: 0 auto;
	}
	.arrow_d_ns {
		margin: 0 auto 20px;
	}

	.nsseko {
		display: block;
	}
	.nsseko_img {
		width: 100%;
		margin: 0 auto 20px;
	}
	.nsseko_img img,
	.technology_img02 img,
	.nslist {
		width: 100%;
	}

	.read_ns02 {
		margin-bottom: 25px;
	}
	.technology_img02 {
		width: 100%;
		margin: 0 auto 20px;
	}
	.attention_ns {
		margin: 0 0 60px;
	}
	.naiyo p.hanbaimoto {
		font-size: 17px;
	}
	.t_ns th,
	.t_ns td {
		display: table-cell;
	}
	.nintei {
		display: block;
		margin-bottom: 50px;
	}
	.nintei_img {
		width: 100%;
		margin: 0 auto 25px;
	}
	.nintei_img img,
	.r_nintei {
		width: 100%;
	}
	.r_nintei p {
		font-size: 15px;
	}
	.naiyo p.hanbaimoto {
		font-size: 20px;
		font-weight: 700;
	}



	/*
	newtec
	*/
	.newtec_merit {
		display: block;
		padding: 0 0 40px;
	}
	.ict_img01 {
		width: 100%;
		margin: 0 auto 20px;
	}
	.ict_img01 img,
	.r_newtec_merit {
		width: 100%;
	}
	.technologybox {
		display: block;
	}
	.technology_shosai {
		width: 100%;
		margin-bottom: 50px;
	}
	.cim_merit {
		margin-bottom: 60px;
	}
	.photo_half {
		display: block;
	}
	.photo_half figure {
		width: 100%;
		margin: 0 auto 20px;
	}



	/*
	member
	*/
	.member {
		padding: 15px;
		margin-bottom: 50px;
	}
	.member h2 {
		font-size: 20px;
		margin-bottom: 15px;
	}
	.member_subtitle {
		width: 40px;
		height: 40px;
		font-size: 26px;
		margin-right: 5px;
	}
	.member h3 {
		font-size: 18px;
		margin-bottom: 15px;
	}
	.member02 h3 {
		margin-bottom: 15px;
	}
	.memberbox {
		display: block;
	}
	.memberbox::after {
		display: none;
	}
	.memberlist {
		width: 100%;
		margin-bottom: 30px;
	}
	.memberlist p {
		font-size: 15px;
		margin-bottom: 25px;
	}
	.memberlist ol,
	.numberlist {
		margin: 0 0 20px;
	}
	.memberlist ol li,
	.numberlist li {
		font-size: 15px;
	}
	.memberlist .download p {
		font-size: 16px;
		margin: 0;
	}
	.download p a {
		min-height: 75px;
		border: 3px solid #707070;
		padding: 10px 25px;
	}
	.download p a.pdf,
	.download p a.xls,
	.download p a.xlsx,
	.download p a[href$=".pdf"],
	.download p a[href$=".xls"],
	.download p a[href$=".xlsx"] {
		padding: 10px 10px 10px 60px;
		background-position: 15px center;
		background-size: 30px 38px;
	}


	/*
	csr
	*/
	.csr_top {
		display: block;
		padding-bottom: 0;
	}
	.csr_top02 {
		margin-bottom: 40px;
	}
	.csr_top::before,
	.csr_top::after {
		display: none;
	}
	.l_csr_top {
		width: 100%;
	}
	.l_csr_top h2 {
		width: 100%;
		text-align: center;
		max-width: 163px;
		line-height: 1;
		border-bottom: none;
		padding: 0;
		margin: 0 auto 35px;
	}
	.l_csr_top h2 img {
		max-width: inherit;
	}
	.l_csr_top p {
		position: relative;
		text-align: center;
		margin: 0;
	}
	.l_csr_top p.read_csrtop {
		width: calc(100% + 50px);
		font-size: 24px;
		border-bottom: 3px solid #B19E6A;
		padding: 0 25px 15px;
		margin: 0 0 0 -25px;
	}
	.l_csr_top p.cap_csrtop {
		padding: 15px 25px;
	}
	.l_csr_top p.cap_csrtop::after {
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: 1000%;
		height: 100%;
		content: "";
		background-color: #F4F0E3;
		z-index: -1;
	}
	.csr_topimage {
		width: calc(100% + 50px);
		max-width: none;
		background-color: #F4F0E3;
		margin: 0 0 0 -25px;
		padding-bottom: 45px;
	}
	.csr_img01 {
		width: calc(100% + 50px);
		margin: -80px 0 35px -25px;

	}
	.csr_topimage img,
	.csr_img01 img,
	.csr_topimage img,
	.csr_img img,
	.safety_img02 img {
		width: 100%;
	}

	.csr h3,
	h3.entry-title02 {
		width: calc(100% + 50px);
		font-size: 26px;
		padding: 15px;
		margin: 0 0 35px -25px;
	}
	.read_csr01 {
		font-size: 18px;
		line-height: 1.3;
	}

	.safety_goal {
		display: block;
		margin-bottom: 0;
	}
	.title_safety_goal {
		width: 118px;
		height: 118px;
		font-size: 18px;
		font-weight: 700;
		margin: 0 auto 45px;
	}
	.safety_goal ol li,
	.safety_goal ol li:last-child {
		margin-bottom: 35px;
	}
	.safety_goal_txt {
		font-size: 18px;
	}

	.csr h4 {
		font-size: 22px;
		padding: 10px 0 10px 12px;
		margin-bottom: 30px;
	}

	.csrbox {
		display: block;
	}
	.csrlist {
		width: 100%;
		margin-bottom: 45px;
	}
	.csr .csrlist h4 {
		margin-bottom: 30px;
	}
	.csrlist p {
		line-height: 1.5;
	}
	.csrlist p.jisshi_title {
		font-size: 17px;
	}
	.csr_img {
		width: 100%;
		margin: 0 auto 30px;
	}

	.csr_naiyo {
		width: calc(100% + 50px);
		display: block;
		padding: 50px 20px 20px;
		margin: 35px 0 0 -25px;
	}
	.csr_naiyo::before {
		left: 50%;
		transform: translateX(-50%);
	}
	.l_csr_naiyo {
		width: 100%;
	}
	.csr_naiyo ul li,
	.csr_naiyo ul.jisshilist li,
	.csr_naiyo .nm,
	.csr_naiyo dl dt,
	.csr_naiyo dl dd {
		font-size: 16px;
		line-height: 1.9;
	}
	.csr_naiyo ul li .etc {
		width: 100%;
		margin: 0;
		text-align: right;
	}
	.c_csr_naiyo {
		display: block;
	}
	.c_csr_naiyo .csr_img {
		width: 100%;
		margin: 0 auto 30px;
	}
	.r_csr_naiyo {
		width: 100%;
	}
	.csr h5 {
		font-size: 20px;
		line-height: 1.5;
	}
	.csr_naiyo table th,
	.csr_naiyo table td {
		display: table-cell;
		width: auto;
		font-size: 15px;
	}
	.csr_naiyo table tbody th {
		text-align: left;
	}
	.safety_photo {
		width: 100%;
		display: block;
	}
	.safety_photo figure {
		width: 100%;
		margin-bottom: 30px;
	}
	.safety_photo figure img {
		width: 100%;
	}



	/*
	pickup
	*/
	.pickup_top {
		background-image: url("img/pickup_topimage_sp.jpg");
		margin-bottom: 20px;
		padding: 0 20px;
	}
	.pickup_top h2 {
		width: 100%;
		max-width: 230px;
		margin: 0 auto 30px;
	}
	.pickup_top p {
		font-size: 14px;
	}

	.scrolldown {
		right: 20px;
	}

	.pickup {
		height: 106vw;
		min-height: 400px;
	}
	.pickup_child {
		height: calc(100vh - 35px);
		margin-bottom: 40px;
	}
	.pickuplink:hover::before {
		transform: scale(1);
	}
	.pickup_child01::before,
	.pickup01 .pickuplink::before {
		background-image: url("img/pickup01_sp.jpg");
	}
	.pickup02 .pickuplink::before {
		background-image: url("img/pickup02_sp.jpg");
	}
	.pickup h3 {
		height: 200px;
		background-size: contain;
	}
	.p_no {
		font-size: 35px;
	}
	.p_title {
		font-size: 18px;
	}
	.p_subtitle {
		font-size: 13px;
	}
	.btn_black,
	.btn_black_nolink {
		max-width: 176px;
	}
	.btn_black a,
	.btn_black_nolink {
		font-size: 13px;
		padding: 5px;
	}




	/*
	pick01,
	pick02
	*/
	#pickupcontents {
		position: relative;
		background-image: url("img/bg_pickupcontents01_sp.svg");
		background-position: center 55px;
		background-size: 123vw auto;
		padding: 50px 25px;
	}
	#pickupcontents.pickupcontents02 {
		background-image: url("img/bg_pickupcontents02_sp.svg");
		background-position: center 50px;
		background-size: 135vw auto;
	}
	#pickupcontents h3 {
		top: -50px;
		font-size: 35px;
	}

	.pickupcontentsbox {
		display: block;
	}
	.l_pickupcontents {
		width: 100%;
		margin-bottom: 35px;
	}
	.l_pickupcontents p {
		font-size: 16px;
		margin-bottom: 35px;
	}
	.l_pickupcontents p.read_pt_top {
		font-size: 22px;
		text-align: center;
		margin-bottom: 25px;
	}
	.pickup_fukushima {
		position: static;
		width: 86.2%;
		top: auto;
		left: auto;
		margin: 0 auto 50px;
	}
	.fukushima_map img {
		width: 100%;
	}
	.f_area {
		display: none;
	}
	.r_pickupcontents {
		width: 100%;
	}
	.read_pickupcontents {
		margin-bottom: 45px;
	}

	.pickupmenu li a {
		padding: 0 5px 10px 15px;
	}
	.bnp_title,
	.ps_title {
		font-size: 22px;
	}
	.bnp_number,
	.ps_number {
		font-size: 35px;
		padding: 0 0 0 5px;
	}
	.bnp_txt {
		display: block;
		font-size: 30px;
		width: 100%;
		padding-top: 10px;
	}
	.ps_txt {
		font-size: 27px;
		padding-top: 10px;
	}
	.pickupmenu li.pm0101 a::before {
		background-image: url("img/bn_pickup0101_sp.jpg");
	}
	.pickupmenu li.pm0102 a::before {
		background-image: url("img/bn_pickup0102_sp.jpg");
	}
	.pickupmenu li.pm0103 a::before {
		background-image: url("img/bn_pickup0103_sp.jpg");
	}
	.pickupmenu li.pm0201 a::before {
		background-image: url("img/bn_pickup0201_sp.jpg");
	}
	.pickupmenu li.pm0202 a::before {
		background-image: url("img/bn_pickup0202_sp.jpg");
	}
	.pickupmenu li.pm0203 a::before {
		background-image: url("img/bn_pickup0203_sp.jpg");
	}
	.pickupmenu li.pm0204 a::before {
		background-image: url("img/bn_pickup0204_sp.jpg");
	}
	.pickupmenu li.pm0205 a::before {
		background-image: url("img/bn_pickup0205_sp.jpg");
	}
	.pickupmenu li a:hover::before {
		transform: scale(1.0);
	}

	.pickupbox {
		background: none;
		padding: 55px 0 20px;
	}
	.pickup_naiyo .cbox {
		display: flex;
		flex-wrap: wrap;
	}
	.p0402_2 {
		right: auto;
	}
	.p0403_2 {
		top: 0;
	}
	.pickup_shosai:nth-of-type(1) {
		max-width: inherit;
		background-image: url("img/bg_pickup0101_sp.svg");
		order: 3;
		margin-bottom: 80px;
		padding: 45px 55px 35px;
	}
	.pickupbox02 .pickup_shosai:nth-of-type(1) {
		background-image: url("img/bg_pickup0201_sp.svg");
		padding: 45px 25px 35px;
	}
	.pickup_shosai:nth-of-type(2) {
		max-width: inherit;
		background-image: url("img/bg_pickup0102_sp.svg");
		order: 1;
		margin-bottom: 35px;
		padding: 25px 25px 40px;
	}
	.pickupbox02 .pickup_shosai:nth-of-type(2) {
		background-image: url("img/bg_pickup0202_sp.svg");
	}
	.pickup_shosai:nth-of-type(3) {
		max-width: inherit;
		background-image: url("img/bg_pickup0103_sp.svg");
		order: 2;
		margin-bottom: 20px;
		padding: 25px 25px 85px;
	}
	.p0103_2.pickup_shosai,
	.p0403_2.pickup_shosai,
	.p0503_2.pickup_shosai {
		background-image: url("img/bg_pickup0203_01_sp.svg");
		background-size: contain;
		padding: 25px 25px 65px;
	}
	.p0203_2.pickup_shosai {
		background-image: url("img/bg_pickup0203_02_sp.svg");
		background-size: contain;
		padding: 25px;
	}
	.p0303_2.pickup_shosai {
		background-image: url("img/bg_pickup0203_03_sp.svg");
		background-size: contain;
		padding: 25px;
	}

	.pickup_naiyo::after {
		display: none;
	}
	.pickup_shosai_r {
		margin: 0 auto;
	}
	.pickup_shosai h4 {
		margin-bottom: 15px;
	}
	.pickupslider.slick-slider {
		width: 100%;
		margin: 0 auto;
	}
	.pickup_shosai p.read_pickup_shosai {
		line-height: 1.6;
	}
	.pickup_shosai p.read_pickup_shosai_s {
		display: block;
		padding-left: 0;
	}
	.ps_photo,
	.ps_photo.ps_photo_wide {
		max-width: inherit;
	}
	.ps_photo {
		width: 100%;
	}


	.pickup_works {
		padding: 75px 55px 50px;
	}
	.pickup_works h3 {
		font-size: 27px;
	}
	.pickup_works_slider {
		width: 100%;
		margin: 0 auto 35px;
	}
	.pickup_works_slider .slick-slide {
		width: 100%;
	}
	.pickup_works_slider li a {
		padding-right: 0;
	}
	.pw_thumbnail {
		margin-bottom: 15px;
	}
	.pw_thumbnail img {
		height: 57.3vw;
	}


	/*
	saiyo
	*/
	.page-id-20 main,
	.parent-pageid-20 main {
		background-size: 8px 8px;
	}

	.page-template-page-recruit main,
  .page-template-page-recruit-new main {
    background-image:
      repeating-linear-gradient(
        -10deg,
        transparent 0,
        transparent 450px,
        rgb(222,239,251) 450px,
        rgb(222,239,251) 900px
      ),
      url("img/bg_saiyo.png"); /* ドットは奥に */
    background-repeat: repeat, repeat;
    background-size: auto, 8px auto;
  }

	.topimage_saiyo {
		margin-bottom: 30px;
		z-index: 3;
	}
	.parent-pageid-20 .topimage_saiyo {
		margin-bottom: 30px;
		height: 106vw;
	}


.voice2024kenchiku .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2024kenchiku_sp.jpg");
}
.voice2024doboku .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2024doboku_sp.jpg");
}
.voice2021eigyo .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2021eigyo_sp.jpg");
}
.voice2022kanri .topimage_saiyo {
	background-image: url("img/saiyo/topimage_voice2022kanri_sp.jpg");
}




	.page-id-54 .topimage_saiyo {
		background-image: url("img/topimage_voice01_sp.jpg");
	}
	.page-id-703 .topimage_saiyo {
		background-image: url("img/topimage_voice02_sp.jpg");
	}
	.page-id-714 .topimage_saiyo {
		background-image: url("img/topimage_voice03_sp.jpg");
	}
	.page-id-718 .topimage_saiyo {
		background-image: url("img/topimage_voice04_sp.jpg");
	}
	.page-id-720 .topimage_saiyo {
		background-image: url("img/topimage_voice05_sp.jpg");
	}
	.topimage_saiyo.voice06 {
		background-image: url("img/topimage_voice06_sp.jpg");
	}
	.topimage_saiyo.voice07 {
		background-image: url("img/topimage_voice07_sp.jpg");
	}
	.topimage_saiyo.voice08 {
		background-image: url("img/topimage_voice08_sp.jpg");
	}
	.topimage_saiyo.voice09 {
		background-image: url("img/topimage_voice09_sp.jpg");
	}

	.topimage_saiyo h1 {
		left: 25px;
		bottom: 20px;
		top: auto;
		transform: none;
		width: 53.6vw;
		max-width: inherit;
	}
	.topimage_saiyo h1 img {
		width: 100%;
	}


	.saiyo {
		margin: 0 auto 120px;
	}
	.saiyo04 {
		margin-bottom: 30px;
	}

	.bg_saiyo::before {
		top: -5%;
		height: 112%;
		min-height: inherit;
		transform: translateX(-50%) rotate(-10deg);
	}

	.saiyo_top.bg_saiyo::before {
		top: 10%;
		height: 105%;
	}

	.voice_top.bg_saiyo::before {
		top: 5%;
		height: 100%;
	}

	.read_saiyo,
	.saiyo h2 {
		margin: 0 auto 35px;
	}
	.read_saiyo {
		max-width: 338px;
	}
	.read_voice {
		margin: 0 auto 45px;
	}
	.read_voice02 {
		max-width: 298px;
	}
	.read_voice03 {
		max-width: 277px;
	}
	.read_voice04 {
		max-width: 209px;
	}
	.read_voice05 {
		max-width: 304px;
	}

	.saiyo_top.saiyo h2 {
		max-width: 190px;
		font-size: 17px;
		line-height: 1.4;
		padding: 15px 5px;
	}
	.saiyo03 h2 {
		max-width: 192px;
	}
	.saiyo04 h2 {
		max-width: 170px;
	}
	.cap_saiyo p {
		font-size: 17px;
		margin-bottom: 40px;
	}
	.cap_saiyo p:last-child {
		margin-bottom: 0;
	}

	.saiyo_knowlist {
		display: block;
	}
	.saiyo_know {
		width: 100%;
		min-height: inherit;
		margin: 0;
	}
	.saiyo_knownaiyo {
		padding: 40px 10px 25px;
		margin-bottom: 30px;
	}
	.saiyo_knownaiyo p {
		max-width: inherit;
	}
	.saiyo_knownaiyo p.read_know {
		max-width: inherit;
		font-size: 27px;
		margin-bottom: 25px;
	}
	.s_year {
		display: none;
	}
	.know_value {
		font-size: 85px;
		padding: 0 4px;
	}

	.torikumi {
		display: block;
	}
	.torikumi li {
		width: calc(100% + 50px);
		margin-left: -25px;
	}
	.torikumi li:nth-child(1) {
		margin: 0 0 10px -25px;
	}
	.torikumi li a {
		height: 400px;
		background-size: 201px 200px;
	}
	.torikumi li .p_no {
		font-size: 35px;
	}
	.torikumi li .p_title {
		font-size: 18px;
	}
	.torikumi li:nth-child(1) a::before {
		background-image: url("img/pickup01_sp.jpg");
	}
	.torikumi li:nth-child(2) a::before {
		background-image: url("img/pickup02_sp.jpg");
	}
	.torikumi li a:hover::before {
		transform: scale(1);
	}

	.voicelist {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0;
}
	.voicelist li {
		width: 48.3%;
		margin-bottom: 25px;
	}
	.voicelist li:nth-child(1),
	.voicelist li:nth-child(3),
	.voicelist li:nth-child(5) {
		margin-top: 35px;
	}
	.voicelist li:nth-child(2),
	.voicelist li:nth-child(4) {
		margin: 0 0 0 3%;
	}
	.voicelist li a {
		font-size: 13px;
	}
	.voicelist li a:hover img {
		transform: scale(1);
	}
	.voicelist_name {
		font-size: 16px;
	}

	.bn_entrylist {
		display: block;
	}
	.bn_entrylist li,
	.bn_entrylist li img {
		width: 100%;
	}
	.bn_entrylist li:nth-child(1) {
		margin: 0 0 25px;
	}

	.saiyo_colwrap {
    display: flex;
    gap: 40px;
    width: 100%;
    flex-direction: column-reverse;
	}

	.saiyo_colwrap .saiyo_coltxt,
	.saiyo_colwrap .saiyo_colimg {
		display: block;
		width: 100%;
	}

	.saiyo h2 img,
	.read_saiyo img,
	.read_voice img {
    text-align: center;
    margin: 0 auto;
    transform: scale(1);
}

.saiyo-table td {
	padding: 15px;
}
	.saiyo-table .basic-table tr td:first-child,
	.saiyo-table .tab-table tr td:first-child {
    width: 100%;
    text-align: left;
    padding: 5px 15px;
    border-bottom: none;
}

.saiyo-table.bg_saiyo::before {
	position: absolute;
	top: -2%;
	height: 105%;
}

.recruit_datalist li {
	flex: 0 0 calc((100% - 5%) / 2);
}

.license-datawrap {
	display: flex;
	padding: 45px 15px;
	background: #FFFBE5;
	border-radius: 30px;
	flex-direction: column;
	align-items: center;
}

.license_datalist.license-col1 {
	width: auto;
	padding: 30px;
}

.license_datalist.license-col2 {
	width: auto;
}
.recruit_entrylist {
	display: flex;
	gap: 15px;
	flex-direction: column;
}
.recruit_entrylist li {
	flex: 1 0 100%;
}

	/*
	voice
	*/
	.voice_top h2 {
		max-width: 207px;
	}
	.voicebox {
		display: block;
	}
	.l_voice {
		width: 100%;
		margin-bottom: 20px;
	}
	.r_voice {
		width: 100%;
	}





	/*
	contact
	*/
	.t_contact {
		width: 100%;
		max-width: 930px;
		border: none;
		margin: 0 auto 70px;
	}
	.t_contact th {
		width: 100%;
		font-size: 18px;
		padding: 0 0 10px;
	}
	.t_contact th .necessary {
		font-size: 14px;
	}
	.t_contact td {
		width: 100%;
		padding: 0 0 40px;
	}
	.privacy_scroll {
		margin-bottom: 60px;
	}
	.privacybox p,
	.privacybox h4,
	.privacybox ul li {
		font-size: 14px;
	}

	.doui {
		margin-bottom: 40px;
	}
	.privacybox .doui p,
	.doui table td {
		font-size: 16px;
	}

	#btn_contact p {
		display: block;
		width: 100%;
	}
	form.wpcf7-form p.buttons-area .button-rewrite,
	form.wpcf7-form p.buttons-area .wpcf7-submit {
		margin: 0 auto 25px!important;
	}
	.done01 p {
		font-size: 16px;
	}
	.done01 .btn_center {
		padding-top: 40px;
	}

	/* --------------------------------
	** page-sdgs
	-------------------------------- */
	.pickup-sdgs__section-title {
    font-size: 28px;
    font-weight: 900;
    color: #003375;
    margin-bottom: 50px;
	}

	.pickup-sdgs__aboutus--text {
    text-align: left;
	}

	.pickup-sdgs__aboutus--logo-list li {
    flex: 1 1 calc(100% / 3 - 15px);
    box-sizing: border-box;
	}

	/* --------------------------------
	** digital-archives
	-------------------------------- */
	.post-type-archive-digital-archives .site-content #content,
	.tax-cat_archives .site-content #content {
		display: block;
		width: 100%;
	}

	.archive-item {
		flex: 0 0 calc((100% - 16px) / 2);
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 24px;
	}
	

	/*
	footer
	*/
	.footermenu {
		padding: 25px 0;
	}
	.footermenu .cbox {
		display: block;
	}
	.footermenu nav {
		width: calc(100% - 50px);
		border-left: none;
		padding: 0;
		margin: 0 auto;
	}
	.footermenu nav ul li {
		margin: 0 0 20px;
	}
	.footermenu nav ul li.spmrecruit {
		margin-top: 20px;
	}
	.footermenu nav ul li.spmhome,
	.footermenu nav ul#menu-spmainmenu02-1 {
		display: none;
	}
	.footermenu nav ul li a {
		color: #fff;
		font-size: 15px;
		border: 1px solid #fff;
		line-height: 1.8;
		padding: 5px 10px;
	}
	.footermenu nav ul li a:hover {
		text-decoration: none;
	}
	.footermenu nav ul li ul {
		display: none;
		padding-top: 15px;
	}
	.footermenu nav ul li.spmhome,
	.footermenu nav ul li ul li,
	.footermenu nav ul#menu-spmainmenu02-1 li {
		margin: 0;
	}
	.footermenu nav ul li ul li a,
	.footermenu nav ul#menu-spmainmenu02-1 li a {
		font-size: 13px;
		border: none;
		padding: 3px 10px;
	}
	.footermenu nav ul li ul li ul,
	.footermenu nav ul#menu-spmainmenu02-1 li ul {
		padding-top: 0;
	}
	.footermenu nav ul li.subm a::after,
	.footermenu nav ul li.spmtechnology a::after,
	.footermenu nav ul#menu-spmainmenu02-1 li a::after {
		position: absolute;
		display: block;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
		width: 10px;
		height: 10px;
		background-image: url("img/bg_footersp_off.svg");
		background-repeat: no-repeat;
		background-position: center center;
		content: "";
	}
	.footermenu nav ul li.subm a.open::after,
	.footermenu nav ul li.spmtechnology a.open::after,
	.footermenu nav ul#menu-spmainmenu02-1 li a.open::after {
		background-image: url("img/bg_footersp_on.svg");
		background-size: 10px 1px;
	}
	.footermenu nav ul li a::before,
	.footermenu nav ul li.subm ul li a::after,
	.footermenu nav ul#menu-spmainmenu02-1 li ul li a::after {
		display: none;
	}
	.footermenu nav ul#menu-spmainmenu02-1 li ul li a {
		padding: 3px 10px 3px 25px;
	}



	.siteinfo {
		padding: 50px 0 40px;
	}
	.footer_logo {
		max-width: 243px;
	}
	.siteinfo p,
	.siteinfo ul li {
		font-size: 12px;
	}
	.siteinfo p.footer_company {
		margin-bottom: 40px;
	}
	.footer_tel {
		padding: 0 12px;
	}
	.siteinfo ul li {
		padding: 0 12px;
	}
	.siteinfo ul li:first-child {
		padding: 0 12px 0 0;
	}
	.siteinfo ul li:last-child {
		padding: 0 0 0 12px;
	}

	.copyright {
		font-size: 12px;
	}

	/* --------------------------------
	** page top
	-------------------------------- */
	#page-top {
	    display: none;
	    position: fixed;
	    bottom: 15px;
	    right: 15px;
	    line-height: 1;
	    z-index: 10;
	    margin-bottom: 0;
	}

	#page-top a {
	    background: #ffffff;
	    text-align: center;
	    text-decoration: none;
	    display: block;
	    border: 3px solid #174586;
	    padding: 4px;
	    width: 60px;
	    height: auto;
	}
}


@media only screen and (max-width: 500px) {

	.p0103_2.pickup_shosai,
	.p0403_2.pickup_shosai,
	.p0503_2.pickup_shosai,
	.p0203_2.pickup_shosai,
	.p0303_2.pickup_shosai {
		background-size: cover;
	}

	/* --------------------------------
	** digital-archives
	-------------------------------- */
	.archive-item {
		flex: 1 1 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 24px;
	}

}
