@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;
}
* {
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	min-height: 0vw;
}
body,
input,
textarea,
body.custom-font-enabled {
	font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-weight: 500;
}
body {
	line-height: 1;
	background: #fff;
}
body.home,
body.page-id-489,
body.page-id-697 {
	display: none;
}
body.page-id-575 {
	position: relative;
	background-color: #E5D2B4;
}
body.page-id-575::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-image: url("img/noisy_anime_4.gif");
	background-position: left top;
	background-repeat: repeat;
	background-size: 180px 180px;
	mix-blend-mode: color-burn;
	z-index: 9;
	pointer-events: none;
}
body.page-id-575.is_body,
body.page-id-575.rc_body {
	overflow: hidden;
}
body.page-id-575.rc_body::before {
	z-index: 10010;
}
body.recruit-contact {
	background: none;
}

.body,
html {
	height: 100%;
}
ol,
ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption,
th,
td {
	font-weight: normal;
	text-align: left;
}
.mon {
	font-family: 'Montserrat', sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height: 1.5em;
	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 {
	margin-bottom: 15px;
	line-height: 2;
}
ul li,
ol li {
	line-height: 150%;
	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 {
	font-weight: bold;
}
dd {
	margin: 0 0 18px 20px;
}
strong {
	font-weight: 700;
}
cite,
i {
	font-style: normal;
}
em { 
	font-weight: 700;
}
big {
	font-size: 131.25%;
}
del {
	color: #333;
}
ins {
	background: #fff9c0;
	text-decoration: none;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin: 24px;
	margin-bottom: 1.714285714rem;
}
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;
}
area{
	border: none;
	outline: none;
}

/* 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;
}
#wpadminbar {
	position: fixed;
}

body {
	font-size: 15px;
	color: #2e2e2e;
}
a {
	outline: none;
	color: #2e2e2e;
	text-decoration: underline;
}
a:hover {
	color: #005FAC;
	text-decoration: none;
}
a img {
    backface-visibility: hidden;
	transition: 0.3s;
}
a:hover img {
	opacity:0.7;
	filter:alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.pc {
	display: block;
}
.sp {
	display: none;
}
ul.komelist {
	margin: 0 0 25px;
	padding: 0;
}
ul.komelist li {
	list-style: none;
	margin-left: 1em;
	font-size: 14px;
}
ol.komelist li {
	margin-left: 1em;
	font-size: 14px;
	position: relative;
}
ul.komelist li::before {
	color: #f00;
	content:"※";
	margin-left: -1em;
}
ol.komelist li::before {
	content:"※";
	position: absolute;
	top: 0;
	left: -2.2em;
}

/* Page structure */
#page {
	position: relative;
	margin: 0 auto;
	overflow: visible;
	padding: 0;
	background: none;
}
#container {
	position: relative;
}
.page-id-575 #container {
	position: relative;
	overflow: hidden;
}
#main {
	position: relative;
	width: 100%;
	z-index: 1;
	overflow: hidden;
	padding-top: 90px;
}
.home #main,
.page-id-697 #main {
	padding-top: 0;
}
.page-id-575 #main {
	padding: 0 0 0 104px;
	z-index: auto;
}
#content {
	position: relative;
	width: 100%;
	margin: 0 auto;
	z-index: 2;
}
.page-id-575 #content {
	z-index: auto;
}
#content.fullcontent {
	width: 100%;
	max-width: none;
}
#site-content {
	position: relative;
	display: flex;
	justify-content: space-between;
    width: calc(100% - 40px);
    max-width: 1140px;
    margin: 0 auto;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
#site-content #content {
	width: 66.7%;
	border-top: 3px solid #353535;
	margin: 0;
	padding: 30px 0 0; 
}
.single #site-content #content {
	border: none;
	padding: 0 0 50px;
}
.cbox {
	position: relative;
	width: calc(100% - 40px);
	max-width: 1140px;
	margin: 0 auto;
}
.cbox1310 {
	max-width: 1310px;
}
.cbox790 {
	max-width: 790px;
}
.cbox865 {
	max-width: 865px;
}
.cbox1000 {
	max-width: 1000px;
}
#secondary {
	width: 285px;
	padding-bottom: 50px;
	margin-left: 20px;
}


#stalker {
    pointer-events: none;
    position: fixed;
    top: -21px;
    left: -21px;
    width: 42px;
    height: 42px;
    z-index: 10011;
	transition: all 0.2s ease-out;
	mix-blend-mode: difference;
}
#stalker.stalker_link {
	top: -40px;
	left: -40px;
	width: 80px;
	height: 80px;
}
#stalker.stalker_no::before {
	background: none;
}
#stalker::before,
#stalker::after {
	position: fixed;
	left: 0;
	top: 0;
	background-repeat: no-repeat;
	background-position: center center;
	content: "";
	transition: all 0.4s ease-out;
}
#stalker::before {
    width: 42px;
    height: 42px;
	background-image: url("img/icon_stalker.svg");
	background-size: cover;
}
#stalker::after {
	width: 100%;
	height: 100%;
}
#stalker.stalker_link::before {
	width: 80px;
	height: 80px;
	animation: stalker 3.5s linear 0s infinite;
}
#stalker.stalker_link::after {
	background-image: url("img/icon_right.svg");
}
#stalker.stalker_modal::after {
	background-image: url("img/icon_modal.svg");
}
#stalker.stalker_window::after {
	transform: rotate(-45deg);
}

@keyframes stalker {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}




/*
header
*/
header {
	position: fixed;
	width: 100%;
	height: 90px;
	top: 0;
	opacity: 1;
	
	z-index: 10;
	margin: 0;
	transition: .5s;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#site-title2 {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	position: fixed;
	left: 0;
	top: 0;
	width: 104px;
	height: 100vh;
	background-color: #fff;
	z-index: 10000;
	padding: 30px 0;
	transition: none;
}
.is_body #site-title2,
.rc_body #site-title2 {
	z-index: 10010;
}
.site-header {
	width: 100%;
	height: 90px;
	background: #fff;
	overflow: visible;
}
.home .site-header,
.page-id-697 .site-header {
	background: none;
}
.home .site-header.open-header,
.home .site-header.hover-header,
.page-id-697 .site-header.open-header,
.page-id-697 .site-header.hover-header,
.site-header.active-header {
	background: #fff;
}
.site-header.fade-header {
	top: -15px;
	opacity: 0;
}
#branding {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
header #site-title {
	position: absolute;
	top: 27px;
	left: 30px;
	margin: 0;
}
header #site-title h1 {
	width: 241px;
	margin: 0;
	padding: 0;
}
#site-title2 h1,
.mainmenu h1 {
	font-size: 15px;
	font-weight: 500;
	writing-mode: vertical-rl;	
	margin: 0;
	padding: 0;
}
.mainmenu h1 {
	position: fixed;
	top: 125px;
	right: 35px;
	opacity: 0;
	transition: all 0.2s ease-in 0.2s;
}
.mainmenu h1.active {
	opacity: 1;
}
#site-title2 h1 a,
.mainmenu h1 a {
	display: flex;
	text-decoration: none;
	justify-content: center;
	align-items: center;
	color: #191919;
}
.mainmenu h1 a {
	color: #fff;
}
#site-title2 h1 a:hover {
	color: #191919;
}
.mainmenu h1 img {
	margin-bottom: 25px;
}

#site-title a:hover img,
#site-title2 a:hover img,
.mainmenu h1 a:hover img {
	opacity:1.0;
	filter:alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

/* Navigation Menu */
.main-navigation { 
	float: right;
	width: 100%;
	max-width: 540px;
	margin: 35px 190px 0 0;
}
.main-navigation ul {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 0;
	padding: 0;
}
.main-navigation ul li {
	width: auto;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.main-navigation ul li:last-child {
	margin: 0;
}
.main-navigation ul li a {
	position: relative;
	display: block;
	width: 100%;
	color: #2e2e2e;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
	margin: 0 auto;
	padding-bottom: 30px;
	outline: none;
	transition: .5s;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.main-navigation ul li.current-menu-item a::before,
.main-navigation ul li.current-page-ancestor a::before,
.main-navigation ul li.current a::before,
.main-navigation ul li a:hover::before {
	position: absolute;
	left: 50%;
	bottom: 15px;
	transform: translateX(-50%);
	width: 35px;
	height: 3px;
	background-color: #005FAC;
	content: "";
}
#header_contact,
#header_youtube {
	position: absolute;
	top: 20px;
	width: 54px;
	height: 54px;
}
#header_youtube {
	right: 90px;
}
#header_contact {
	right: 20px;
}

#header_contact a,
#header_youtube a {
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
}
#header_youtube a {
	background-color: #FFFFFF;
}
#header_contact a {
	background-color: #005FAC;
}
#header_youtube a img {
	width: 26px;
}
#header_contact a img {
	width: 23px;
}
nav#spmainmenu,
#toggle {
	display: none;
}

#toggle2 {
	display: block;
	position: fixed;
	top: 0px;
	right: 0px;
	width: 100px;
	height: 100px;
	cursor: pointer;
	z-index: 10001;
	background-color: #191919;
}
.menu-trigger2,
.menu-trigger2 span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
	outline: none;
}
.menu-trigger2 {
	position: relative;
	width: 100px;
	height: 100px;
	text-decoration: none;
}
.menu-trigger2 span {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 40px;
	height: 3px;
	background-color: #fff;
}
.menu-trigger2 span:nth-of-type(1) {
	top: 38px;
}
.menu-trigger2 span:nth-of-type(2) {
	top: 50px;
}	
.menu-trigger2 span:nth-of-type(3) {
	width: 20px;
	left: calc(50% + 10px);
	top: 62px;
}	
.menu-trigger2.active span:nth-of-type(1) {
	-webkit-transform: translate(-50%,14px) rotate(-45deg);
	transform: translate(-50%,14px) rotate(-45deg);
}
.menu-trigger2.active span:nth-of-type(2) {
	-webkit-transform: translate(-50%,2px) rotate(45deg);
	transform: translate(-50%,2px) rotate(45deg);
}
.menu-trigger2.active span:nth-of-type(3) {
	display: none;
}


.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(209,193,166,0.9);
	z-index: 11;
}
.mainmenu {
	position: fixed;
	top: 0;
	right: 0;
	width: 566px;
	height: 100vh;
	background-color: #191919;
	z-index: 12;
	padding-top: 100px;
	transform: translateX(566px);
	transition: all 0.3s ease-in;
}
.mainmenu.active {
	transform: translateX(0);
}
.mainmenubox {
	height: 100vh;
	overflow-y: auto;
	padding: 0 105px 150px 85px;
}
.recruitmenu ul {
	margin: 0;
	padding: 0;
}
.recruitmenu ul li {
	opacity: 0;
	margin: 0 0 15px;
	padding: 0;
	transform: translateX(15px);
}
.recruitmenu.active ul li {
	opacity: 1;
	transform: translateX(0);
}
.recruitmenu.active ul li:nth-child(1) {
	transition: all 0.2s ease-in 0.1s;
}
.recruitmenu.active ul li:nth-child(2) {
	transition: all 0.2s ease-in 0.2s; 
}
.recruitmenu.active ul li:nth-child(3) {
	transition: all 0.2s ease-in 0.3s; 
}
.recruitmenu.active ul li:nth-child(4) {
	transition: all 0.2s ease-in 0.4s; 
}
.recruitmenu.active ul li:nth-child(5) {
	transition: all 0.2s ease-in 0.5s; 
}
.recruitmenu.active ul li:nth-child(6) {
	transition: all 0.2s ease-in 0.6s; 
}
.recruitmenu.active ul li:nth-child(7) {
	transition: all 0.2s ease-in 0.7s; 
}

.recruitmenu ul li a {
	display: block;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.2;
	transition: all 0.3s linear;
	cursor: none;
}
.en_menu {
	display: block;
    font-family: 'Oswald', sans-serif;
	font-size: 40px;
	line-height: 1.5;
}

.header_banner {
	width: 100%;
	margin: 0;
	padding: 25px 0 35px;
}
.header_banner li {
	opacity: 0;
	transform: translateX(15px);
	margin-bottom: 15px;
}
.header_banner li.bn_winc {
	max-width: 234px;
}
.header_banner.active li {
	opacity: 1;
	transform: translateX(0);
}
.header_banner.active li {
	transition: all 0.2s ease-in 0.8s; 
}
.header_banner.active li:nth-child(2) {
	transition: all 0.2s ease-in 0.9s; 
}
.header_banner.active li:nth-child(3) {
	transition: all 0.2s ease-in 1s; 
}
.header_banner.active li a {
	cursor: none;
}
.recruitmenu02 {
	margin: 0;
	padding: 0 0 10px;
}
.recruitmenu02 li {
	opacity: 0;
	transform: translateX(15px);
	margin: 0;
	padding: 0 0 5px;
}
.recruitmenu02.active li {
	opacity: 1;
	transform: translateX(0);
}
.recruitmenu02.active li:nth-child(1) {
	transition: all 0.2s ease-in 1s; 
}
.recruitmenu02.active li:nth-child(2) {
	transition: all 0.2s ease-in 1.1s; 
}
.recruitmenu02 li a {
	display: inline-block;
	color: #C6C6C6;
	font-size: 12px;
	font-weight: 500;
	text-decoration: none;
	padding-right: 50px;
	background-image: url("img/icon_link_gray.svg");
	background-repeat: no-repeat;
	background-position: right center;
	transition: all 0.3s linear;
	cursor: none;
}
.mainmenu .copyright {
	opacity: 0;
	transform: translateX(15px);
	font-size: 12px;
	font-weight: 500;
	color: #7B7B7B;
}
.mainmenu .copyright.active {
	opacity: 1;
	transform: translateX(0px);
	transition: all 0.2s ease-in 1.2s; 
}
.recruitmenu ul li a:hover,
.recruitmenu02 li a:hover {
	opacity: 0.5;
}


.submenubox {
	display: none;
	position: absolute;
	left: 50%;
	top: 88px;
	transform: translateX(-50%);
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	width: 100.5%;
	height: 100%;
	min-height: 220px;
	margin: 0 auto;
	padding: 75px 10px;
	background: #353535;
	
	transition: .2s linear;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#h01.submenubox {
	min-height: 350px;
}
.submenubox.active {
	display: block;
	max-height: 9999px;
	opacity: 1;
	animation: submenubox 0.2s linear 0s forwards;
}
@keyframes submenubox {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.menubox {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
	height: 100%;
}
#h01 .menubox {
	display: flex;
	justify-content: space-between;
}
.l_menubox {
	width: 24.1%;
}
.r_menubox {
	width: 68.9%;
}
.r_menubox p {
	position: relative;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 25px;
	padding-left: 25px;
}
.r_menubox p::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 1px;
	background-color: #9D9D9D;
	content: "";
}
.storymenu ul {
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
.storymenu ul li {
	position: relative;
	width: 33%;
	height: 150px;
	margin: 0 5px 0 0;
	padding: 0;
}
.storymenu ul li::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	transition: .3s linear;
}
.storymenu ul li:nth-child(1)::before {
	background-image: url("img/bg_mstory01.jpg");
}
.storymenu ul li:nth-child(2)::before {
	background-image: url("img/bg_mstory02.jpg");
}
.storymenu ul li:nth-child(3)::before {
	background-image: url("img/bg_mstory03.jpg");
}
.storymenu ul li:hover::before {
	opacity: 0.7;
}
.storymenu ul li a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	z-index: 2;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.storymenu ul li a::before,
.episodelist a::before {
	position: absolute;
	right: 0;
	bottom: 0;
	content: "";
	width: 35px;
	height: 35px;
	background-color: #fff;
	background-image: url("img/arrow_r_black.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 7px 11px;
}
.storymenu ul li a::before {
	right: 1px;
}
.ep_no {
	display: block;
	width: 55px;
	line-height: 1;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 8px;
	margin: 0 15px 0 20px;
	border-right: 1px solid#fff;
}
.ep_no strong {
	display: block;
	font-size: 35px;
	font-weight: 600;
}
.openmenu ul,
.openmenu ul li {
	margin: 0;
	padding: 0;
}
.openmenu ul {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
#h04 .openmenu ul {
	justify-content: center;
}
.l_menubox .openmenu ul {
	flex-wrap: wrap;
}
.openmenu ul li {
	width: 25%;
	line-height: 1.5;
	margin-right: 10px;
}
.l_menubox .openmenu ul li {
	width: 100%;
	margin: 0 0 30px;
}
.openmenu ul li:last-child {
	margin-right: 0;
}
.openmenu ul li a {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	border: 1px solid #fff;
	padding: 18px 0;
	transition: .3s linear;
	background-image: url("img/arrow_r_white.png");
	background-position: 90% center;
	background-repeat: no-repeat;
	background-size: 8px 11px;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.openmenu ul li.oyoutube a {
	background-image: none;
}
.openmenu ul li.oyoutube a .oyoutube_txt {
	display: inline-block;
	background-image: url("img/icon_link.svg");
	background-position: right 40%;
	background-repeat: no-repeat;
	padding-right: 30px;
}
.openmenu ul li.om a {
	border: none;
	border-bottom: 1px solid #fff;
	text-align: left;
	background-image: url("img/bg_spmenu.png");
	background-position: 20px center;
	background-repeat: no-repeat;
	background-size: 5px 6px;
	padding: 18px 0 18px 40px;
}
.openmenu ul li a:hover {
	background-color: #4E4E4E;
	background-position: 93% center;
}
.openmenu ul li.oyoutube a:hover {
	background-position: 90% 45%;
}
.openmenu ul li.om a:hover {
	background-position: 20px center;
}
h1.entry-title,
h1.archive-title,
h1.page-title,
h2.page-title,
.home h2,
.page-id-697 h2 {
	position: relative;
	width: 100%;
	font-size: 63px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	text-align: left;
	line-height: 1.5;
	margin: 0;
	padding: 0;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
h2,
.entry-content h2 {
	position: relative;
	line-height: 1.5;
	font-size: 42px;
	font-weight: bold;
	padding: 0;
	margin-bottom: 45px;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.home h2,
.page-id-697 h2 {
	font-size: 65px;
	margin-bottom: 35px;
}
h2.fs65 {
	font-size: 65px;
}
h1.page-title,
h2.page-title{
	position: relative;
	font-size: 26px;
	padding-left: 65px;
	margin-bottom: 90px;
}
h1.page-title02 {
	margin-bottom: 0;
}
h1.page-title::before,
h2.page-title::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 1px;
	background-color: #353535;
	content: "";
}
h1.entry-title small,
h1.page-title small,
h2.page-title small,
h2 .s_title,
h2 small,
h2 em {
	display: block;
	font-size: 16px;
	font-weight: bold;
	font-family: Avenir , "Open Sans" , "Helvet　ica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
h1 em,
.next-episode h2 em {
	display: inline-block;
	margin-left: 10px;
	font-style: normal;
}
h1.page-title small,
h2.page-title small {
	display: inline-block;
	margin-left: 30px;
	vertical-align: middle;
}
.entry-content h2 a,
h2.entry-title a {
	display: block;
	text-decoration: none;
	outline: none;
}
.entry-content h2 a:hover,
h2.entry-title a:hover {
	text-decoration: underline;
}
h3,
.entry-content h3 {
    position: relative;
	clear: none;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 25px;
	padding: 0;
}
.entry-content h4 {
	font-size: 18px;
	font-weight: 700;
	padding: 0;
	line-height: 1.5;
	margin: 0;
}
.entry-content h5 {
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	margin: 0 0 15px;
}
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;
}
table th,
table td {
	font-size: 16px;
	padding: 30px 10px;
	line-height: 1.8;
	text-align: left;
	border-bottom: 1px solid #E0E0E0;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
table th {
	width: 20%;
	font-weight: bold;
}
table.samewide {
    table-layout: fixed;
}
table.samewide th,
table.samewide td,
table.samewide thead th {
    width: auto;
}

.attention,
.attention a {
	color: #F00;
}
section {
	clear: both;
	padding-bottom: 80px;
}
section section:last-child {
	padding-bottom: 0;
}
.wspace {
	clear: both;
	padding-bottom: 80px;
}
.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;
}


/*
breadcrumb
*/
#breadcrumb {
	width: calc(100% - 40px);
	max-width: 1140px;
	margin: 0 auto;
	padding: 35px 0;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#breadcrumb.breadcrumb_white {
	width: 100%;
	max-width: inherit;
	background-color: #fff;
}
#breadcrumb p {
	font-size: 14px;
	margin: 0;
}
#breadcrumb p a {
	text-decoration: none;
}
#breadcrumb p a:hover {
	text-decoration: underline;
}
#breadcrumb p span {
	display: inline-block;
	margin: 0 5px;
}




/*
topimage
*/
#loader {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: #fff;
	z-index: 100;
}
#loadimage {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	max-width: 535px;
}
.read_load {
	font-size: 18px;
	font-weight: bold;
	margin: -20px 0 0 auto;
	text-align: right;
}
.read_load .clip-text.left {
	text-transform: uppercase;
	transition: all 1s ease; 
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
}
.read_load .clip-text.left.reveal {
	clip-path: inset(0);
}
#topimage {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.home #topimage,
.page-id-697 #topimage {
	height: 56.2vw;
}
#read_topimage,
.read_topimage {
	position: fixed;
	display: block;
	left: 8.1vw;
	top: 17vw;
	width: 22%;
	z-index: 2;
}
#read_topimage img {
	width: 16.6%;
}
.read_topimage {
	position: absolute;
	display: block;
	left: 11.7vw;
	top: 50%;
	transform: translateY(-100%);
	font-size: 33px;
	font-weight: bold;
	margin: 0;
	z-index: 2;
	width: auto;
}
.read_topimage02 {
	font-size: 28px;
	transform: translateY(-50%);
	z-index: 3;
}
#r_topimage {
	position: relative;
	width: 62.4vw;
    text-align: right;
	margin: 0 0 0 auto;
}
#r_topimage02 {
	width: 100%;
}
#r_topimage03 {
	position: relative;
	width: 51%;
	margin: 0 0 0 auto;
	z-index: 2;
}
#topslide,
#topslide_sp,
#topimage_dummy {
	position: relative;
	width: 100%;
	z-index: -1;
}
#topslide,
#topslide_sp {
	display: block!important;
	position: fixed;
	z-index: 0;
}
#topslide_sp {
	display: none!important;
}
#topimage_dummy img,
#r_topimage02 img,
#r_topimage03 img {
	width: 100%;
}
#topslide .slick-slide img,
#topslide_sp .slick-slide img {
	width: 100%;
	opacity: 0;
	max-width: 62.4vw;
	transform: scale(1.1);
	overflow: hidden;
}
#topslide .slick-slide.slick-active img,
#topslide_sp .slick-slide.slick-active img{
	animation: topimage 1s linear 0s forwards;
}
@keyframes topimage {
	0% {
		opacity: 0;
		transform: scale(1.1);
	}
	30% {
		opacity: 1;
		transform: scale(1.07);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
/*#los01 {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 89.2%;
	max-width: 100%;
	height: auto;
	transform: translate(-50%, -40%);
	z-index: 2;
}*/
#los01 {
	position: fixed;
	right: 5.2%;
	top: 23vw;
	width: 53%;
	height: auto;
	z-index: 1;
}

/* IE */
@media all and (-ms-high-contrast: none) {
	#los01 {
		top: 0;
	}
}
#clipmask {
	position: relative;
	z-index: 10;
}
#los01 .st0 {
	fill:none;
	stroke:#FFFFFF;
	stroke-width:20;
	stroke-linecap:round;
	stroke-linejoin:round;
	stroke-miterlimit:10;
	stroke-dasharray: 1500;
	stroke-dashoffset:1500;
}

#wave,
#wave02,
#wave03 {
	position: fixed;
	left: 0;
	top: 38.7vw;
	width: 100%;
	height: 173px;
	overflow: hidden;
	z-index: 2;
}
#wave02 {
	position: absolute;
	top: 31.7vw;
}
#wave03 {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#w1 {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 173px;
	background-image: url(img/wave1.png);
	background-repeat: repeat-x;
	background-position: 0 0;
	background-size: contain;
	animation: wave1 300s linear infinite;
}
#w2 {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 173px;
	background-image: url(img/wave2.png);
	background-repeat: repeat-x;
	background-position: 0 0;
	background-size: contain;
	animation: wave2 450s linear infinite;
}
@keyframes wave1 {
	from {
		background-position: 0 0;
	}
    to {
		background-position: 3600px 0;
	}
}
@keyframes wave2 {
	from { 
		background-position: 1200px 0;
	}
    to {
		background-position: 4800px 0; 
	}
}

#top_news {
	position: fixed;
	left: 0;
	top: 47vw;
	width: 100%;
	max-width: 525px;
	padding: 15px 15px 15px 45px;
	z-index: 2;
	opacity: 0;
	background-color: #fff;
	transition: all 0.3s ease;
}
#top_news.fadein {
	opacity: 1;
}
#top_news.start {
	left: -20px;
	opacity: 0;
}
#top_news ul,
#top_news ul li {
	margin: 0;
	padding: 0;
}
#top_news ul {
	opacity: 0;
	transition: opacity .25s ease;
}
#top_news ul.slick-initialized {
	opacity: 1;
}
#top_news ul li a {
	display: flex;
	align-content: center;
	align-items: center;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
}
#top_news ul li a .top_date {
	display: inline-block;
	color: #005FAC;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	padding-right: 15px;
}
#top_news ul li a .top_newmark {
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 16px;
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	background-color: #E07263;
	border-radius: 3px;
	margin-right: 15px;
}
#top_news ul li a .top_cat {
	position: relative;
	display: inline-block;
	padding-right: 15px;
	margin-right: 10px;
}
#top_news ul li a .top_cat::after {
	position: absolute;
	right: 0;
	top: 0;
	width: 1px;
	height: 100%;
	content: "";
	background-color: #C9C9C9;
}


#top_regular {
	display: block;
	position: fixed;
	right: 35px;
	top: 34vw;
	z-index: 2;
	opacity: 0;
	transition: all 0.3s ease;
}
#top_regular.fadein {
	opacity: 1;
}
#top_regular.start {
	right: -20px;
	opacity: 0;
}
#top_regular .regularlink {
	display: block;
	width: 100%;
	max-width: 245px;
	text-decoration: none;
	transition: all 0.3s ease;
	background-color: rgba(255,255,255,0.8);
	border-radius: 7px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.16);
	padding: 30px 35px 15px;
	margin: 0 0 -133px auto;
}
#top_regular .regularlink:hover {
	color: #2e2e2e;
	background-color: rgba(255,255,255,0.9);
}
#top_regular .regularlink h2 {
	position: relative;
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 10px;
	padding: 0;
}
#top_regular .regularlink h2::before {
	position: absolute;
	left: -35px;
	top: 50%;
	transform: translateY(-50%);
	width: 25px;
	height: 4px;
	content: "";
	background-color: #035FAC;
}
.bn-consulting {
	display: block;
	max-width: 360px;
	margin-top: 153px;
}
.bn-consulting img {
	box-shadow: 5px 5px 5px rgba(0,0,0,0.16);
	border-radius: 7px;
}




.top_regular_en {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 500;
	margin-left: 10px;
}
.top_regular_date {
	color: #888888;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 500;
	margin-bottom: 10px;
}
.top_regular_title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.6;
	margin: 0;
}
#top_regular .regularlink:hover .top_regular_title {
	color: #035FAC;
}


/*
homeabout
*/
#homeabout {
	position: relative;
	width: 62.4vw;
	margin: 0 0 0 auto;
	background-color: #fff;
	padding: 200px 0 230px;
	z-index: 1;
}
#r_homeabout {
	width: 100%;
	padding: 0 70px;
	
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
#r_homeabout p {
	font-size: 17px;
	font-weight: bold;
	line-height: 2.8;
	margin-bottom: 30px;
}
#r_homeabout p.btn {
	margin-top: 60px;
}




/*
homewhite
*/
#homewhite {
	position: relative;
	z-index: 3;
	background-color: #fff;
}
#homewhite::before {
	position: absolute;
	left: 0;
	top: -230px;
	width: 100%;
	height: 230px;
	content: "";
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 80%);	
}
.btn {
	width: 100%;
	max-width: 320px;
	margin: 0;
}
.btn a {
    position: relative;
    display: block;
    width: 100%;
	color: #005FAC;
    font-size: 15px;
    font-weight: bold;
	text-align: center;
    text-decoration: none;
    border: 1px solid #AFC9DE;
    padding: 20px 10px;
	border-radius: 8px;
    overflow: hidden;
	transition: 0.3s;
    text-transform: uppercase;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.btn2 a {
	color: #fff;
	font-size: 18px;
	border: 1px solid #fff;
	padding: 25px 10px;
}
.btn a span {
	position: relative;
	z-index: 2;
}
.btn a::before,
.btn3::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: 0;
	opacity: 0;
	border-radius: 8px;
	background: linear-gradient(45deg,  #1e4baf 0%,#3193e0 100%);
	animation: fadeout 0.3s linear 0s forwards;
}
.btn a::after,
.btn3::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-image: url("img/arrow_r_blue.png");
	background-position: 90% center;
	background-repeat: no-repeat;
	background-size: 10px 13px;
	z-index: 2;
	transition: 0.3s;
}
.btn2 a::after {
	background-image: url("img/arrow_r_white.png");
}
.btn a:hover {
	color: #fff;
}
.btn a:hover::before,
.btn3:hover::before {
	animation: fadein 0.3s linear 0s forwards;
}
.btn a:hover::after,
.btn3:hover::after {
	background-image: url("img/arrow_r_white.png");
	background-position: 91.5% center;
}
.btn2 a:hover {
	border: 1px solid #1e4baf;
}


@keyframes fadein {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeout {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}


/*
homeservice
*/
#homeservicecontent {
	display: flex;
	justify-content: center;
}
#l_homeservice {
	width: 25.4%;
	padding-top: 40px;
	margin: 0 9.2% 0 6.1%;
}
#l_homeservice h2 {
	opacity: 0;
}
.read_home {
	letter-spacing: 0.06em;
	font-weight: bold;
}
#l_homeservice .read_home {
	margin-bottom: 0;
}
#servicetotal {
	position: relative;
	width: 100%;
	height: 87px;
	max-width: 240px;
	padding: 100px 0;
	margin: 0 auto;
}
.slick-counter {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	font-size: 16px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}
.slick-counter-svg {
    z-index: 1;
    position: absolute;
    width: 86px;
    height: 86px;
    margin: 0 auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	opacity: 0;
}
.slick-counter-svg.start {
	opacity: 1;
}
.slick-counter-svg svg {
    transform: rotate(-90deg);
}
.slick-counter-svg.start svg circle {
    fill: transparent;
    stroke: #005FAC;
    stroke-width: 2;
    animation: circle 5.5s infinite linear;
}
@keyframes circle {
	0% { 
		stroke-dasharray: 0 270;
	}
	11.1% { 
		stroke-dasharray: 0 270;
	}
	88.9% {
		stroke-dasharray: 270 270;
	}
	100% {
		stroke-dasharray: 270 270;
	}
}


#r_homeservice {
	width: 54.8%;
	background-image: url("img/bg_task.png");
	background-repeat: no-repeat;
	background-position: center top;
	min-height: 724px;
	min-width: 718px;
	padding: 55px 45px 35px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.hometask {
	position: relative;
	width: 100%;
	max-width: 525px;
	margin: 0;
	padding-top: 70px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.hometask h3 {
	position: absolute;
	left: 35px;
	top: 45px;
	text-align: center;
	font-size: 16px;
	color: #005FAC;
	margin: 0;
	padding: 0;
}
.hometask h3 .task_title,
.hometask h3 .task_no {
	display: block;
	font-size: 13px;
	font-family: 'Montserrat', sans-serif;
}
.hometask h3 .task_no {
	position: relative;
	font-size: 53px;
	line-height: 1;
	margin-bottom: 10px;
	padding-bottom: 10px;
}
.hometask h3 .task_no::before {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	content: "";
	width: 16px;
	height: 2px;
	background: #005FAC;
}
.task_img {
	width: 100%;
	max-width: 235px;
	margin: 0 auto;
	text-align: center;
}
.task_naiyo {
	width: 100%;
	max-width: 360px;
	margin: 0 auto;
}
.task_naiyo p {
	font-size: 15px;
}
.read_task {
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	margin: 0 auto 15px;
}


/*
homeworkflow
*/
#homeworkflow {
	width: 100%;
	max-width: 1366px;
	height: 100%;
	margin: 0 auto;
	padding-bottom: 95px;
}
#bg_homeworkflow {
	position: relative;
	width: 100%;
	max-width: 1310px;
	background-color: #E2ECF5;
	padding: 70px 0;
	margin: 0 auto;
}
.home #homeworkflow h2,
.page-id-697 #homeworkflow h2 {
	text-align: center;
	margin-bottom: 50px;
}
#homeworkflow .read_home {
	text-align: center;
	margin-bottom: 45px;
	letter-spacing: 0.06;
}

#homeflowcontent {
	position: relative;
	display: flex;
	justify-content: space-between;
	z-index: 1;
}
#homeflowcontent::before {
	position: absolute;
	left: 50%;
	top: 80px;
	transform: translateX(-50%);
	width: 1366px;
	height: 27px;
	background-image: url("img/bg_workflow.png");
	background-position: center center;
	background-repeat: no-repeat;
	content: "";
	z-index: 2;
	overflow: hidden;
}
.homeflowbox {
	position: relative;
	width: 230px;
	z-index: 3;
	opacity: 0;
	transform: translateX(-50px);
}
.homeflowbox:nth-child(1).start {
	animation: homeworkflow 0.5s linear 0s forwards;
}
.homeflowbox:nth-child(2).start {
	animation: homeworkflow 0.5s linear 0.2s forwards;
}
.homeflowbox:nth-child(3).start {
	animation: homeworkflow 0.5s linear 0.4s forwards;
}
.homeflowbox:nth-child(4).start {
	animation: homeworkflow 0.5s linear 0.6s forwards;
}
@keyframes homeworkflow {
	0% {
		opacity: 0;
		transform: translateX(-50px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}
.flow_img {
	width: 83%;
	text-align: center;
	margin: 0 auto 30px;
}
.homeflowbox h3 {
	position: relative;
	width: 100%;
	max-width: 160px;
	border: 1px solid #707070;
	border-radius: 6px;
	font-size: 15px;
	text-align: center;
	padding: 3px;
	margin: 0 auto 25px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.homeflowbox h3::before {
	position: absolute;
	left: 50%;
	top: -40px;
	transform: translateX(-50%);
	width: 1px;
	height: 40px;
	background-color: #707070;
	content: "";
}
.homeflowbox p {
	font-size: 15px;
	margin: 0;
	letter-spacing: 0;
}
.homeflowbox p.cap_homeflow {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	font-size: 17px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	min-height: 52px;
	margin-bottom: 52px;
}





/*
parallax
*/
.bg_parallax {
	position: relative;
	width: 100%;
	height: 533px;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
}
.mobile .bg_parallax {
	background-attachment: inherit;
}
#homeimg01 {
	background-image: url("img/homeimg01.jpg");
	padding: 0;
	margin-bottom: 120px;
}


/*
homeinformation
*/
.home #homeinformation h2,
.page-id-697 #homeinformation h2 {
	font-size: 48px;
}
#homeinformation .cbox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.homehalf {
	width: 47.4%;
}
#homenews,
#homemovie {
	margin-bottom: 80px;
}
#homenews {
	padding-top: 60px;
}
#homenews.homewide {
	width: 100%;
	max-width: 680px;
	margin: 0 auto 80px;
}
#homenews ul {
	width: 100%;
	margin: 0;
	padding: 0;
}
#homenews ul li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 14px;
	margin: 0 0 36px;
	padding: 0;
}
#homenews ul li .entrydate,
.blogcontent .entrydate {
	color: #888888;
	width: 80px;
	margin-right: 25px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}
#homenews ul li a {
	width: calc(100% - 105px);
	font-weight: bold;
	text-decoration: none;
}
#homenews ul li a:hover {
	text-decoration: underline;
}
.btn_more {
	width: 100%;
	max-width: 125px;
	margin: 0 0 0 auto;
}
.btn_more a,
.linkmenu li a {
	display: block;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	width: 100%;
	border: 1px solid #C9C9C9;
	line-height: 1.5;
	background-image: url("img/arrow_r_gray.png");
	background-position: 90% center;
	background-repeat: no-repeat;
	background-size: 7px 10px;
	padding: 10px 0;
	transition: 0.3s;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.btn_more a:hover,
.linkmenu li a:hover {
	color: #2e2e2e;
	background-color: #F7F7F7;
	background-position: 93% center;
}

#homemovie {
	background-color: #F2F2F2;
	border-radius: 90px;
	text-align: center;
	padding: 60px 20px 50px;
}
#homemovie h2 {
	line-height: 1.4;
	text-align: center;
	color: #005FAC;
	margin-bottom: 30px;
}
#homemovie h2 .s_title {
	color: #2E2E2E;
}
.icon_movie {
	margin: 0 auto 15px;
}
#homemovie h3 {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 20px;
}
.read_homemovie {
	line-height: 1.9;
	margin-bottom: 25px;
}
.btn_channel {
	width: 100%;
	max-width: 192px;
	margin: 0 auto;
}
.btn_channel a {
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
	border: 1px solid #C9C9C9;
	background-image: url("img/icon_youtube.svg");
	background-repeat: no-repeat;
	background-position: right 18px top 45%;
	background-size: 26px 18px;
	padding: 12px 33px 12px 0;
	line-height: 1;
	transition: all 0.3s ease;
}
.btn_channel a:hover {
	color: #2E2E2E;
	background-color: #F7F7F7;
}


/*#homeblog,
#homeregular {
	width: 38.6%;
}
#homeblog.homehalf,
#homeregular.homehalf {
	width: 47.4%;
}*/
.blogcontent a {
	display: flex;
	justify-content: space-between;
	width: 100%;
	border-bottom: 1px solid #E0E0E0;
	padding-bottom: 20px;
	margin-bottom: 20px;
	text-decoration: none;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.blog_img {
	width: 36.8%;
}
.blogcontent .entrytitle {
	width: 56.8%;
	margin: 0;
	font-size: 14px;
}
.blogcontent .entrydate {
	display: block;
	width: 100%;
}


/*
homerecruit
*/
#homerecruit {
	padding: 130px 0 95px;
	background-color: #E9EAE4;
}
#homerecruit h2,
#homerecruit .read_home {
	text-align: center;
}
#homerecruit .read_home {
	margin-bottom: 60px;
}
#homerecruit .btn {
	margin: 0 auto 50px;
}
.linkmenu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	max-width: 665px;
	margin: 0 auto;
	padding: 0;
}
.linkmenu li {
	width: 48.9%;
	margin: 0 0 15px;
	padding: 0;
}
.linkmenu li:last-child {
	margin: 0;
}
.linkmenu li:nth-child(1) {
	order: 1;
}
.linkmenu li:nth-child(2) {
	order: 3;
}
.linkmenu li:nth-child(3) {
	order: 2;
}
.linkmenu li:nth-child(4) {
	order: 4;
}
.linkmenu li a {
	display: block;
	width: 100%;
	text-align: left;
	padding: 20px 30px 20px 40px;
	background-color: #E9EAE4;
}
.linkmenu02 li a {
	background-color: #fff;
}
.linkmenu li a:hover {
	background-color: #fff;
	background-position: 91% center;
}
.linkmenu02 li a:hover {
	background-color: #E9EAE4;
}

/*
about
*/
#page_topimage {
	position: relative;
	width: 100%;
	margin-bottom: 130px;
}
#page_topimage figure {
	position: relative;
	width: 75vw;
	margin: 0 0 0 auto;
	z-index: 1;
	overflow: hidden;
}
#page_topimage figure img {
	position: relative;
	width: 100%;
	transform: scale(1.1);
	overflow: hidden;
	z-index: 1;
	opacity: 0;
}
#page_topimage figure img.start {
	animation: topimage 1s linear 0s forwards;
}

#page_topimage h1 {
	position: absolute;
	left: 8.1vw;
	bottom: 8vw;
	z-index: 2;
}

.type_fade,
.type_fade span {
	opacity: 0;
}
.home .type_fade,
.page-id-697 .type_fade {
	opacity: 1;
}
#about01,
#about02 {
	padding-bottom: 265px;
}
#about03 {
	padding-bottom: 155px;
}
.ot {
	position: relative;
	z-index: 2;
}
.l_ot {
	position: absolute;
	left: 8.1vw;
	top: 7vw;
	width: 100%;
	max-width: 600px;
}
#about02 .l_ot {
	left: auto;
	right: 8.1vw;
	max-width: 430px;
}
.l_ot h2 {
	opacity: 0;
}
.l_ot h2 small {
	display: inline-block;
	font-size: 14px;
	margin-bottom: 20px;
}
.l_ot h2 em {
	display: inline-block;
	font-size: 14px;
	font-style: normal;
	color: #A7A7A7;
	margin-left: 10px;
}
.l_ot p,
.read {
	width: 100%;
	max-width: 360px;
	margin: 0;
}
.read790 {
	max-width: 790px;
	margin: 0 auto 95px;
}
.r_ot {
	width: 59.7vw;
	margin: 0 0 0 auto;
	min-width: 600px;
}
#about02 .r_ot {
	margin: 0;
}
.r_ot img {
	width: 100%;
}

.ot_sub {
	display: flex;
	align-items: center;
	position: relative;
	width: 91.9%;
	padding: 120px 0 100px;
	background-image: url("img/bg_ourthought.png");
	background-repeat: repeat;
	background-position: left top;
	margin: -50px 0 0;
	z-index: 1;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#about02 .ot_sub {
	margin: -50px 0 0 auto;
}
.l_ot_sub {
	width: 29.2%;
	margin: 0 6vw 0 11.2vw;
}
#about02 .l_ot_sub {
	margin: 0 6vw 0 5.6vw;
}
.r_ot_sub {
	width: 39.4%;
}
.r_ot_sub p {
	font-size: 15px;
	margin: 0;
}
.r_ot_sub p.read_ot {
	color: #005FAC;
	font-size: 26px;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.8;
	margin-bottom: 20px;
}
.r_ot_sub p.btn {
	max-width: inherit;
	margin-top: 50px;
}

#about04 {
	position: relative;
	padding-bottom: 170px;
}
#about04::before,
#philosophy01::before {
	position: absolute;
	left: 0;
	top: 45px;
	width: 100%;
	height: 131px;
	content: "";
	background-image: url(img/wave3.png);
	background-repeat: repeat-x;
	background-position: 0 0;
}
#about04 h2 {
	font-size: 18px;
	text-align: center;
	margin-bottom: 30px;
}
.s_blue {
	font-size: 22px;
	letter-spacing: 0.08em;
	color: #005FAC;
}
.read_about {
	font-size: 42px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 60px;
}
#about04 .read_about {
	text-align: center;
}
#aboutslide .slick-slide img {
	padding-right: 10px;
}
#aboutslide {
	opacity: 0;
	transition: opacity .3s linear;
}
#aboutslide.slick-initialized {
	opacity: 1;
}
#about05 {
	position: relative;
	background-color: #E9EAE4;
	padding-top: 115px;
}
#about05 .cbox {
	max-width: 950px;
}
.nextcontents {
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
}
.l_nextcontents {
	width: 25.3%;
}
.r_nextcontents {
	width: 67.4%;
	padding-top: 35px;
}
.r_nextcontents p {
	margin: 0;
}
.r_nextcontents p.read_about {
	margin-bottom: 40px;
}

.episodelist {
	display: flex;
	justify-content: space-between;
}
.episodelist a {
	display: block;
	position: relative;
	width: 31.4%;
	color: #fff;
	text-decoration: none;
}
.episodelist a::before {
	z-index: 2;
}
.episodelist figure {
	position: relative;
	z-index: 1;
}
.episodelist p {
	position: absolute;
	left: 25px;
	bottom: 25px;
	font-size: 20px;
	font-weight: bold;
	margin: 0;
	z-index: 2;
	line-height: 1.4;
}
.episodelist p small {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	margin-bottom: 3px;
}
[data-aos="fadeup"]  {
	transform: translate(0, 50px);
	opacity: 0;
	transition-property: transform, opacity;
}
[data-aos="fadeup"].aos-animate {
	transform: translate(0, 0);
	opacity: 1;	
}


/*
history
*/
#history {
	position: relative;
	width: 100%;
	max-width: 875px;
	margin: 0 auto 100px;
	padding: 0 0 80px 105px;
}
#history::before,
#history::after {
	position: absolute;
	content: "";
	z-index: 2;
}
#history::before {
	top: 45px;
	left: 0;
	width: 1px;
	height: 100%;
	background-color: #707070;
}
#history::after {
	left: -4px;
	bottom: -50px;
	width: 10px;
	height: 14px;
	background-image: url(img/bg_history02.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 10px 14px;
}

#history dl {
	padding: 0;
	margin: 0;
}
#history dl dt {
	position: relative;
	display: flex;
	align-items: center;
	color: #888888;
	line-height: 2;
	letter-spacing: 0.06em;
	margin: 60px 0 15px 0;
	padding: 0;
	vertical-align: middle;
}
#history dl:first-child dt {
	margin: 0 0 15px;
}
#history dl dt:first-child {
	margin: 65px 0 15px 0;
}
#history dl dt::before,
#history dl dt::after {
	position: absolute;
	left: -109px;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	background-color: #005FAC;
	z-index: 3;
}
#history dl dt::before {
	width: 9px;
	height: 9px;
	border-radius: 50%;
}
#history dl dt::after {
	width: 70px;
	height: 1px;
}
#history dl dt .h_year {
	color: #005FAC;
	font-family: 'EB Garamond', serif;
	font-size: 36px;
	font-weight: 400;
	margin-right: 30px;
	vertical-align: middle;
	line-height: 1;
}
#history dl dt.l_year  {
	margin-bottom: 20px;
}
#history dl dt.l_year .h_year {
	font-size: 85px;
	font-weight: 500;
}
#history dl dt small {
	display: inline-block;
	padding-top: 5px;
}

#history dl dd {
	display: flex;
	font-weight: bold;
	margin: 0 0 10px;
	padding: 0;
	line-height: 1.5;
}
#history dl dd:last-child {
	margin: 0 0 40px;
}
#history dl dd .h_month {
	width: 65px;
	flex-shrink: 0;	
}
#history dl dd.l_shosai{
	font-size: 30px;
	margin-bottom: 40px;
}
.highlight {
	position: relative;
	width: 100%;
	padding: 75px 0;
	margin-bottom: 20px;
}
.highlight::before {
	position: absolute;
	left: -500%;
	top: 0;
	width: 1000%;
	height: 100%;
	content: "";
	background-image: url(img/bg_history.jpg);
	background-repeat: repeat;
	background-position: left top;
	z-index: 0;
}
.highlight h2 {
	font-size: 20px;
	color: #005FAC;
	margin-bottom: 25px;
	padding: 0;
}
.highlight h2 small {
	font-size: 14px;
	color: #888888;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	margin-bottom: 15px;
}
.highlightbox {
	position: relative;
	display: flex;
	justify-content: space-between;
	z-index: 3;
}
.highlightbox_wide {
	display: block;
}
.l_highlight {
	width: 52.3%;
}
.highlightbox_wide .l_highlight {
	width: 100%;
}
.l_highlight p {
	margin: 0;
}
.r_highlight {
	width: 41.8%;
}
.r_highlight figure {
	margin-bottom: 10px;
}
.r_highlight figure:last-child {
	margin-bottom: 0;
}




/*
episode
*/
.page-template-page-episode #main {
	padding-top: 0;
}
.eplist {
	position: relative;
    width: 100%;
    min-height: 100vh;
}
.bg_ep {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: all 0.3s linear 0s;
    z-index: -1;
	overflow: hidden;
}
.show .bg_ep {
    opacity: 1;
}
.bg_ep::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
	content: "";
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
.show .bg_ep::before {
	transform: scale(1);
	animation: zoomin 40s linear 0.3s forwards;
}
.eplist::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: 0;
	background-color: rgba(0,0,0,0.5);
	opacity: 0;
}
.eplist.glow::after {
	animation: fadein 0.3s linear 0s forwards;
}
@keyframes zoomin {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.5);
	}
}
#ep_bg01::before {
	background-image: url(img/bg_ep01.jpg);
}
#ep_bg02::before {
	background-image: url(img/bg_ep02.jpg);
}
#ep_bg03::before {
	background-image: url(img/bg_ep03.jpg);
}
#ep_bg04::before {
	background-image: url(img/bg_ep04.jpg);
}
#ep_bg05::before {
	background-image: url(img/bg_ep05.jpg);
}
#ep_bg06::before {
	background-image: url(img/bg_ep06.jpg);
}
#ep_bg07::before {
	background-image: url(img/bg_ep07.jpg);
}
#ep_bg08::before {
	background-image: url(img/bg_ep08.jpg);
}
#ep_bg09::before {
	background-image: url(img/bg_ep09.jpg);
}
.eplist .cbox {
	z-index: 2;
}
.episode-title {
	position: relative;
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	height: 100vh;
	margin-bottom: 260px;
}
.episode-title h1 {
	color: #fff;
	width: 100%;
	text-align: center;
	max-width: 759px;
	margin: 0 auto;
}
.episode-title h1 small {
	display: block;
	width: 100%;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	margin-bottom: 15px;
	text-align: center;
}
.episode-title p {
	position: absolute;
	right: 0;
	bottom: 50px;
	color: #fff;
	font-weight: bold;
	text-align: right;
	margin: 0;
}
.episode-title p::after {
	display: block;
	position: relative;
	font-size: 15px;
	line-height: 1.5;
	width: 33px;
	height: 1px;
	content: "";
	background-color: #fff;
	margin: 20px 0 0 auto;
}

.episode-naiyo {
	width: 100%;
	margin: 0 auto 890px;
}
.episode-naiyo02 {
	max-width: 600px;
}
.episode-naiyo h2 {
	color: #fff;
	font-size: 26px;
	line-height: 2;
	letter-spacing: 0.5em;
	padding: 0;
	margin: 0 0 120px;
}
.episode-naiyo h2 small {
	display: block;
	font-size: 28px;
	font-weight: 300;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0;
	margin-bottom: 45px;
}
.episode-naiyo p {
	width: 100%;
	max-width: 580px;
	color: #fff;
	line-height: 3;
	font-size: 15px;
	font-weight: bold;
	margin: 0 0 0 auto;
}
.episode-naiyo02 p {
	max-width: inherit;
	margin: 0;
}
.episodeend {
	position: relative;
	width: 100%;
	background-color: #fff;
	padding: 150px 0 250px;
}
.episodeend::before {
	position: absolute;
	left: 0;
	top: -300px;
	display: block;
	width: 100%;
	height: 300px;
	content: "";
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 90%);
}
.episodeend figure {
	width: 100%;
	max-width: 884px;
	margin: 0 auto;
	text-align: center;
}

.next-episode {
	width: 100%;
}
.next-episode a {
	position: relative;
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	padding: 215px 20px;
	background-color: #F2F2F2;
	transition: 0.5s;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.next-episode a::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	opacity: 0;
	z-index: 1;
}
#ne02 a::before {
	background-image: url(img/bg_ep04.jpg);
}
#ne03 a::before {
	background-image: url(img/bg_ep07.jpg);
}
.next-episode a:hover::before {
	animation: fade 0.5s linear 0s forwards;
}
.next-episode h2 {
	position: relative;
	font-size: 23px;
	margin: 0;
	padding: 0;
	text-align: center;
	z-index: 2;
}
.next-episode h2 small {
	font-size: 14px;
	margin-bottom: 10px;
}
.next-episode h2 small em {
	font-size: 14px;
}
.next-episode a:hover h2 {
	color: #fff;
}
@keyframes fade {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

#ne04 {
	width: 100%;
	background-color: #F2F2F2;
	padding: 170px 0;
}
#ne04 h2 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 10px;
	padding: 0;
}
#ne04 h2 small {
	font-size: 14px;
}
#ne04 .cap_ec {
	text-align: center;
	margin-bottom: 35px;
}
#ne04 .btn {
	max-width: 495px;
	margin: 0 auto;
}


/*
service
*/
#service01 .cbox {
	z-index: 2;
}
#service01 .read {
	max-width: 660px;
}
#service_img01 {
	position: relative;
	background-color: #F7F7F5;
	padding: 125px 20px 60px;
	margin: -65px 0 135px;
	z-index: 1;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#service_img01 figure {
	width: 100%;
	max-width: 1145px;
	margin: 0 auto;
	text-align: center;
}
#service02 {
	width: calc(100% - 40px);
	max-width: 1200px;
	margin: 0 auto;
}
.backoffice {
	position: relative;
}
.l_backoffice {
	position: relative;
	width: 57%;
	z-index: 1;
}
.r_backoffice {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 46%;
	z-index: 2;
}
.r_backoffice h2 {
	font-size: 36px;
}
.r_backoffice .read {
	max-width: inherit;
}
#detailmenu ul li {
	width: 32%;
	margin: 0;
	padding: 0;
}
#detailmenu ul li a {
	display: block;
	width: 100%;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.8;
	text-decoration: none;
	text-align: center;
	border: 1px solid #C9C9C9;
	padding: 55px 10px;
	transition: 0.3s;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#detailmenu ul li a:hover {
	color: #2e2e2e;
	background-color: #fff;
}
#detailmenu ul li a .detail-img {
	display: block;
	width: 29.6%;
	margin: 0 auto 20px;
}
#detailmenu ul li a small {
	display: block;
	position: relative;
	font-size: 14px;
	padding-bottom: 10px;
	margin-top: 30px;
	transition: 0.3s;
}
#detailmenu ul li a:hover small {
	letter-spacing: 0.2em;
}
#detailmenu ul li a small::before {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 70px;
	height: 1px;
	content: "";
	background-color: #707070;
	transition: 0.3s;
}
#detailmenu ul li a:hover small::before {
	width: 100px;
}


/*
consulting
*/
.sctitle {
	text-align: center;
}
.servicemenu {
	position: absolute;
	top: 0px;
	width: 100%;
	background-color: #fff;
	padding: 30px 20px 0;
	z-index: 10;
	border-top: 1px solid #fff;
	box-shadow: 0px 9px 6px -3px rgba(0,0,0,0);
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.servicemenu.start {
	border-top: 1px solid #C9C9C9;
	box-shadow: 0px 9px 6px -3px rgba(0,0,0,0.16);
}
.servicemenu ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
.servicemenu ul li {
	width: auto;
	margin: 0 5px 30px;
	padding: 0;
}
.servicemenu ul li a {
	display: block;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	background-color: #fff;
	background-image: url(img/arrwo_d_gray.png);
	background-position: 25px center;
	background-repeat: no-repeat;
	background-size: 13px 8px;
	border: 1px solid #C9C9C9;
	border-radius: 22px;
	padding: 8px 45px 8px 50px;
	transition: 0.3s;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.servicemenu ul li a:hover {
	color: #2e2e2e;
	background-color: #f2f2f2;
	background-position: 25px 60%;
}

#service-content {
	position: relative;
	padding-top: 210px;
}
.service-naiyo {
	padding: 100px 65px;
	margin-bottom: 90px;
	background-color: #EDF6FF;
	border-radius: 10px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.page-id-30 .service-naiyo {
	background-color: #FCF4EC;
}
.page-id-32 .service-naiyo {
	background-color: #F0F8EC;
}
.service-naiyo h3 {
	position: relative;
	font-size: 34px;
	text-align: center;
	padding: 0 0 20px;
	margin-bottom: 60px;
}
.service-naiyo h3::before {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 32px;
	height: 5px;
	content: "";
	background-color: #005FAC;
}
.page-id-30 .service-naiyo h3::before {
	background-color: #E07263;
}
.page-id-32 .service-naiyo h3::before {
	background-color: #71B74F;
}
.service-kadai {
	background-color: #fff;
	padding: 70px;
	margin-bottom: 50px;
	border-radius: 10px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.service-kadai h4,
h4.feature-title {
	font-size: 28px;
	text-align: center;
	margin: 0 auto 45px;
	padding: 0;
}
.service-kadai ul {
	margin: 0;
	padding: 0;
}
.service-kadai ul li {
	position: relative;
	display: block;
	width: 100%;
	font-size: 18px;
	font-weight: bold;
	background-color: #F2F2F2;
	background-image: url(img/check_blue.png);
	background-position: 55px center;
	background-repeat: no-repeat;
	background-size: 20px 16px;
	border-radius: 10px;
	padding: 25px 95px;
	margin: 0 0 25px; 
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.page-id-30 .service-kadai ul li {
	background-image: url(img/check_orange.png);
}
.page-id-32 .service-kadai ul li {
	background-image: url(img/check_green.png);
}
.service-kadai ul li:last-child {
	margin: 0;
}
.flow_d {
	width: 100%;
	max-width: 35px;
	text-align: center;
	margin: 0 auto 15px;
}
h4.feature-title {
	margin-bottom: 80px;
}
.service-feature {
	display: flex;
}
.featurelist {
	counter-increment: cnt;
	width: 33.3%;
	padding: 0 30px 40px;
	min-height: 510px;
	border-right: 1px solid #C9C9C9;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.featurelist:nth-child(1) {
	padding: 0 30px 40px 0;
}
.featurelist:nth-child(3) {
	padding: 0 0 40px 30px;
	border: none;
}
.featurelist h5 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	flex-wrap: wrap;
	min-height: 105px;
	line-height: 1.5;
	font-size: 20px;
	text-align: center;
	margin: 0 auto 30px;
	padding: 50px 0 0;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.featurelist h5::before {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	color: #fff;
	width: 30px;
	height: 30px;
	font-size: 18px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	background-color: #005FAC;
	border-radius: 50%;
	margin: 0 auto 15px;	
	content: counter(cnt);
}
.page-id-30 .featurelist h5::before {
	background-color: #E07263;
}
.page-id-32 .featurelist h5::before {
	background-color: #71B74F;
}
.featurelist p {
	margin: 0;
}
.bnc-center {
	max-width: 360px;
	margin: 60px auto 0;
}
.bnc-center .bn-consulting {
	margin-top: 0;
}


/*
company
*/
.naiyo {
	position: relative;
	width: 100%;
	max-width: 1140px;
	background-color: #fff;
	margin: -150px auto 0;
	padding: 50px 0;
	z-index: 2;
}
.naiyo02 {
	margin: 0 auto;
}
.company_shosai {
	width: calc(100% - 40px);
	max-width: 960px;
	margin: 0 auto;
}
.company_shosai p {
	margin-bottom: 35px;
}
.company_shosai p.shomei {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	font-size: 14px;
	font-weight: bold;
	margin: 0;
}
.company_shosai p.shomei .president_name {
	display: block;
	width: 151px;
	margin-left: 20px;
}

.pagemenu {
	background-color: #E9EAE4;
	padding: 75px 0;
}
.pagemenu h2 {
	font-size: 23px;
	text-align: center;
	margin-bottom: 40px;
}
.pagemenu h2 small {
	font-size: 14px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	margin-bottom: 10px;
}
.pagemenu ul {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
	padding: 0;
}
#companymenu ul li {
	width: 23.2%;
	margin: 0;
	padding: 0;
}
#companymenu ul li a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	padding: 20px 0;
	border: 1px solid #C9C9C9;
	text-decoration: none;
	background-image: url(img/arrow_r_gray.png);
	background-repeat: no-repeat;
	background-position: 90% center;
	background-size: 7px 10px;
	transition: 0.3s;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#companymenu ul li a:hover {
	color: #2e2e2e;
	background-color: #fff;
	background-position: 92% center;
}


/*
philosophy
*/
.philosophylist {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 525px;
	margin: 0 auto 60px;
}
.philosophylist li {
	font-size: 54px;
	font-weight: bold;
	border-bottom: 10px solid #E9EAE4;
	margin: 0;
	padding: 0 0 10px;
}
.company_shosai p.read_philosophy {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 95px;
}
#philosophy01 {
	position: relative;
}
#philosophy01::before {
	top: 50%;
	transform: translateY(-120%);
	z-index: 3;
}
#philosophy_img01,
#philosophy_img01 img {
	width: 100%;
}
#philosophy02 .naiyo {
	padding: 75px 0;
}
.company_shosai p.read_philosophy02 {
	font-size: 20px;
}
.corevaluelist {
	width: 100%;
	max-width: 470px;
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
}
.corevaluelist li {
	position: relative;
	counter-increment: cnt;
	font-size: 18px;
	font-weight: bold;
	padding: 25px 0 25px 3em;
	border-bottom: 1px solid #C9C9C9;
	margin: 0;
}
.corevaluelist li::before {
	content: "0"counter(cnt)".";
	display: inline-block;
	width: 3em;
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	color: #005FAC;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}


/*
outline
*/
#outlinemenu {
	width: 100%;
	background-color: #F2F2F2;
	padding: 35px 0;
	margin-bottom: 40px;
}
#outlinemenu ul {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 0;
}
#outlinemenu ul li {
	width: auto;
	margin: 0 45px;
	padding: 0;
}
#outlinemenu ul li a {
	display: block;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	padding-left: 30px;
	background-image: url(img/arrwo_d_gray.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 13px 8px;
}
#outlinemenu ul li a:hover {
	color: #9a9a9a;
	background-position: left 60%;
}
.naiyo780,
.naiyo920 {
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
}
.naiyo920 {
	max-width: 920px;
}
.bg01 {
	background-color: #E9EAE4;
}
#outline02 {
	padding: 95px 0 0;
	margin-bottom: 150px;
}
#outline02 h2,
#outline02 h3 {
	font-size: 26px;
	margin-bottom: 10px;
	padding: 0;
}
#outline02 h3 {
	font-size: 20px;
}
.accessmap,
.accessmap iframe {
	width: 100%;
}
.accessmap {
	margin-bottom: 20px;
}

.office {
	display: flex;
	justify-content: space-between;
}
.officelist {
	margin-bottom: 100px;
}
.officelist02 {
	width: 45%;
}
.toho {
	font-size: 14px;
	font-weight: bold;
	color: #656565;
	margin: 0;
	padding: 0;
}

#outline03 h2 {
	font-size: 20px;
	text-align: center;
	border-bottom: 1px solid #888888;
	padding: 0 0 25px;
	margin-bottom: 50px;
}
.partnerlist {
	display: flex;
	margin-bottom: 50px;
}
.partnerlist ul {
	width: 40%;
	margin: 0 10% 0 0;
	padding: 0;
}
.partnerlist ul:nth-child(2n) {
	width: 50%;
	margin: 0;
}
.partnerlist ul li {
	margin-bottom: 5px;
	padding: 0;
}
.keisho {
	font-size: 12px;
	margin: 0;
	text-align: right;
}


/*
culture
*/
#culture01 {
	padding: 70px 0 125px;
}
.culturelist {
	display: flex;
	flex-wrap: wrap;
}
.culturebox {
	width: 29.6%;
	margin: 0 5.5% 100px 0;
}
.culturebox:nth-child(3n) {
	margin: 0 0 100px;
}
.culture_img {
	width: 100%;
	margin: 0 auto 40px;
	text-align: center;
}
.culture_img02 img {
	border: 1px solid #E0E0E0;
}
.culturebox h2 {
	font-size: 20px;
	text-align: center;
	min-height: 64px;
	color: #005FAC;
	padding: 0;
	margin: 0 0 30px;
	line-height: 1.6;
}
.culturebox p {
	margin: 0;
}
.bikou {
	width: 100%;
	max-width: 550px;
	margin: -100px 0 0 auto;
}


/*
recruit
*/
body.page-id-575,
.page-id-575 a {
	color: #191919;
}
.culture_slide p a:hover,
.doui_txt a:hover {
	color: #191919;
	opacity: 0.7;
}
.page-id-575 a,
.page-id-575 a:focus { 
	outline: none;
}
#recruit01 {
	padding-top: 75px;
}
#recruit01 h2 {
	font-size: 24px;
	text-align: center;
	line-height: 1.8;
}

#recruit01.recruit01 {
	position: relative;
	width: 100%;
	height: 100vh;
	padding: 0;
	margin-bottom: 28.6vw;
}
.recruit01 img {
	width: 100%;
}

.load_recruit {
	position: relative;
	width: 100%;
	height: 100vh;
	z-index: 10;
}
.recruit_loading {
	position: absolute;
	left: 50%;
	top: 50%;
	color: #fff;
	font-size: 13px;
	transform: translate(-50%,-50%);
	animation: recruit_loading 0.3s linear infinite;
}
@keyframes recruit_loading {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.load_circle,
.load_a {
	position: absolute;
	left: 50%;
	top: 50%;
	opacity: 0;
}
.load_circle {
	width: 26.7%;
	opacity: 0;
	transform: translate(-50%,-50%) scale(1.3) rotate(-25deg);
	transform-origin: center;
	transition: all 0.4s ease-out;
}
.load_circle.start {
	opacity: 1;
	transform: translate(-50%,-50%) scale(1) rotate(0deg);
}
.load_a {
	width: 18.1%;
	transition: all 0.4s ease-out;
	transform: translate(-50%,-45%);
}
.load_a01 {
	z-index: 11;
}
.load_a02 {
	z-index: 12;
}
.load_a01.start,
.load_a02.start {
	opacity: 1;
}

.recruit_topbox,
.recruit_toptxt,
.recruit_topimage {
	position: absolute;
}
.recruit_topbox {
	height: 100%;
	top: 0;
}
.recruit_toptxt {
	opacity: 0;
	transform: translateX(15px);
	transition: all 0.2s linear;
}
.recruit_toptxt.start {
	transform: translateX(0);
	opacity: 1;
}
.recruit_topimage {
	opacity: 0;
	transform: translateY(6px);
}
.recruit_topimage.start {
	animation: recruit_topimage 0.2s linear 0s forwards;
}
@keyframes recruit_topimage {
	0% {
		opacity: 0;
		transform: translateY(6px);
	}
	37.5% {
		opacity: 1;
		transform: translateY(0px);
	}
	75% {
		opacity: 1;
		transform: translateY(3px);
	}
	100% {
		opacity: 1;
		transform: translateY(0px);
	}
}

.recruit_top01 {
	width: 57.6%;
	left: 0;
}
.recruit_toptxt0101 {
	width: 100%;
	top: -5.5%;
	left: -2.1%;
	z-index: 1;
}
.recruit_toptxt0102 {
	width: 75.5%;
	top: 5.8%;
	left: 9%;
	z-index: 3;
}
.recruit_toptxt0103 {
	width: 35.8%;
	top: 16.9%;
	left: 14.4%;
	z-index: 1;
}
.recruit_topimage0101 {
	width: 38.1%;
	top: 11.5%;
	left: 0.7%;
	z-index: 2;
}
.recruit_topimage0102 {
	width: 13.5%;
	top: 32.5%;
	left: 42%;
	z-index: 2;
}

.recruit_top02 {
	width: 39.2%;
	right: 0;
}
.recruit_toptxt0201 {
	width: 43.4%;
	top: 16.5%;
	left: 40%;
	z-index: 2;
}
.recruit_toptxt0202 {
	width: 62.6%;
	top: 19.5%;
	right: -29.3%;
	z-index: 1;
}
.recruit_topimage0201 {
	width: 40%;
	top: 13.4%;
	left: 1%;
	z-index: 1;
}
.recruit_topimage0202 {
	width: 16.4%;
	top: 0;
	left: 46.5%;
	z-index: 1;
}

.recruit_top03 {
	width: 17.4%;
	left: 0;
}
.recruit_toptxt0301 {
	width: 71%;
	top: 68.2%;
	left: -4.5%;
	z-index: 1;
}
.recruit_topimage0301 {
	width: 67.3%;
	left: 31%;
	top: 50.6%;
	z-index: 2;
}

.recruit_top04 {
	width: 42.9%;
	left: 0;
}
.recruit_toptxt0401 {
	width: 56.6%;
	bottom: 4.5%;
	left: -1%;
	z-index: 1;
}
.recruit_toptxt0402 {
	width: 56.6%;
	bottom: 0;
	left: 12%;
	z-index: 3;
}
.recruit_topimage0401 {
	width: 63.5%;
	right: 0;
	bottom: -5.4%;
	z-index: 2;
}

.recruit_top05 {
	width: 50.3%;
	right: 0;
	
}
.recruit_toptxt0501 {
	width: 92.1%;
	bottom: 4.7%;
	left: 0;
	z-index: 1;
}
.recruit_toptxt0502 {
	width: 77.5%;
	bottom: -2%;
	right: -4.7%;
	z-index: 3;
}
.recruit_topimage0501 {
	width: 75.2%;
	right: -12%;
	bottom: -1%;
	z-index: 2;
}

.recruit-content h2 {
	font-size: clamp(16px, 1.5vw, 28px);	
	font-weight: 700;
	line-height: 1.45;
	margin-bottom: 60px;
	padding: 0;
}
.en_recruit {
	display: block;
    font-family: 'Oswald', sans-serif;
	font-size: 88px;
	font-size: clamp(71px, 6.4vw, 123px);	
	line-height: 1.1;
	margin-bottom: 5px;
}
.rt_s .en_recruit {
	margin-bottom: 15px;
}
#recruit02 {
	position: relative;
	padding: 0 0 5vw;
}
.recruit-content #recruit02 h2 {
	position: relative;
	text-align: center;
	margin-bottom: 20px;
	z-index: 10;
}
.recruit-content #recruit02 h2 .en_recruit {
	font-size: 36px;
}
.read_recruitmessage {
	position: relative;
	font-size: 58px;
	font-weight: 700;
	text-align: center;
	line-height: 1.4;
	margin-bottom: 40px;
	text-shadow: 0px 0px 1px #191919,0px 0px 1px #191919,0px 0px 1px #191919,0px 0px 1px #191919,0px 0px 1px #191919;
	z-index: 10;
}
.messagebox {
	position: relative;
	width: 530px;
	margin: 0 auto;
	z-index: 10;
}
.messagebox p {
	font-size: 16px;
	font-weight: 700;
	line-height: 2.3;
	margin: 0;
}

.message_img {
	position: absolute;
}
.message_img img {
	width: 100%;
}
.message_img01 {
	top: -19%;
	left: -3.5%;
	width: 29%;
	z-index: 3;
}
[data-aos="faderight2"] {
	opacity: 0;
	transform: translateX(-3px);
}
[data-aos="faderight2"].aos-animate {
	animation: message_img01 0.3s linear 0s forwards;
}
@keyframes message_img01 {
	0% {
		opacity: 0;
		transform: translateX(-3px);
	}
	37.5% {
		opacity: 1;
		transform: translateX(3px);
	}
	75% {
		opacity: 1;
		transform: translateX(0px);
	}
	90% {
		opacity: 1;
		transform: translateX(3px);
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}


.message_txt01 {
	width: 21.9%;
	top: 10%;
	left: -6.3%;
	z-index: 2;
}
.message_txt02 {
	width: 6.9%;
	top: -5%;
	right: 15.3%;
	z-index: 2;
}
.message_txt03 {
	width: 9.5%;
	top: -16%;
	right: 10.7%;
	z-index: 1;
}
.message_img0201 {
	top: 18%;
	right: 6.7%;
	width: 13.3%;
	z-index: 2;
}
.message_img0202 {
	top: 50%;
	right: 0%;
	width: 10.3%;
	z-index: 2;
}
[data-aos="fadeup2"] {
	opacity: 0;
	transform: translateY(6px);
}
[data-aos="fadeup2"].aos-animate {
	animation: fadeup2 0.2s linear 0s forwards;
}
@keyframes fadeup2 {
	0% {
		opacity: 0;
		transform: translateY(6px);
	}
	37.5% {
		opacity: 1;
		transform: translateY(0px);
	}
	75% {
		opacity: 1;
		transform: translateY(3px);
	}
	100% {
		opacity: 1;
		transform: translateY(0px);
	}
}

#recruit03 {
	position: relative;
	padding-bottom: 190px;
}
.interview_img {
	position: absolute;
}
.interview_img img {
	width: 100%;
}
.interview_img01 {
	position: relative;
	width: 9.3%;
	margin: 0 0 -1% 13%;
	z-index: 3;
}
.interview_txt01 {
	width: 17%;
	top: 0.5%;
	left: 0;
	z-index: 4;
}
.interview_txt02 {
	width: 26.1%;
	top: 1%;
	left: 9.1%;
	z-index: 2;
}
.interview_img02 {
	width: 16.6%;
	top: 3.7%;
	left: 67.5%;
	z-index: 4;
}
.interview-content {
	position: relative;
	width: 100%;
	overflow: hidden;
}
.interview_txt03 {
	position: fixed;
	width: 109px;
	top: 0;
	right: 0;
	z-index: -1;
	transition: all 0.3s ease;
	transform: translateY(10px);
	opacity: 0;
}
.interview_txt03.start {
	transform: translateY(0);
}
.interview_txt03.start.fadein {
	opacity: 1;
}
.interview_txt03.start img:nth-child(1) {
	animation: interview_txt0301 80s -40s linear infinite;
}
.interview_txt03.start img:nth-child(2) {
	animation: interview_txt0302 80s linear infinite;
}
@keyframes interview_txt0301 {
	0% {
		transform: translateY(100%);
	}
	100% {
		transform: translateY(-100%);
	}
}
@keyframes interview_txt0302 {
	0% {
		transform: translateY(0);
	}
	to {
		transform: translateY(-200%);
	}
}
.interview-end {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 1px;
	height: 1px;
	z-index: 0;
}
.interviewbox {
	position: relative;
	background-color: #fff;
	padding: 105px 0 85px;
	width: 91.8%;
	max-width: 1534px;
	min-width: 1159px;
	border-radius: 0 6px 6px 0;
}
.interviewbox h2 {
	z-index: 10;
	margin-left: 115px;
}
.interview_top {
	display: block;
	color: #191919;
	text-decoration: none;
	position: relative;
	width: 90.5%;
	margin: 0 0 85px;
	z-index: 10;
	cursor: none;
}
.interview_top:hover {
	color: #191919;
}
.interview_top:hover img {
	opacity: 1;
}
.interview_top:last-child {
	margin-bottom: 0;
}
.interview_top:nth-child(odd) {
	margin-left: auto;
}
.interview_topimage {
	position: relative;
	width: 100%;
	z-index: 0;
}
.read_interview_top {
	position: absolute;
	z-index: 1;
	overflow: hidden;
	transition: all 0.7s ease-in-out;
}
.read_interview_top img {
	width: 100%;
}
.read_interview_top figure {
	width: 100%;
	transition: all 0.6s ease-in-out;
}
.read_interview_top figure:nth-child(1) {
	position: relative;
	z-index: 0;
}
.read_interview_top figure:nth-child(2) {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
}
.read_interview_top figure.fadeout {
	opacity: 0;
}
.read_interview_top figure.fadein {
	opacity: 1;
}

.read_interview_top01 {
	width: 64.9%;
	top: 0;
	right: 0;
}
.read_interview_top02 {
	width: 100%;
	top: 33%;
	left: 0;
}
.read_interview_top01 figure:nth-child(1),
.read_interview_top03 figure:nth-child(1) {
	clip-path: inset(0 0 100% 0);
}
.read_interview_top01.start figure:nth-child(1),
.read_interview_top03.start figure:nth-child(1) {
	clip-path: inset(0 0 0 0);
}
.read_interview_top02 figure:nth-child(1),
.read_interview_top04 figure:nth-child(1) {
	clip-path: inset(0 100% 0 0);
}
.read_interview_top02.start figure:nth-child(1),
.read_interview_top04.start figure:nth-child(1) {
	clip-path: inset(0 0% 0 0);
}
.read_interview_top03 {
	width: 51.6%;
	top: 3.4%;
	left: 2.1%;
}
.read_interview_top04 {
	width: 67%;
	top: 16.8%;
	left: 0;
}

.interview_head {
	position: absolute;
	z-index: 2;
}
#interview_modal .interview_head {
	position: static;
}
.interview_head.txt_white {
	color: #fff;
}
.interview_top01 .interview_head {
	left: 45px;
	bottom: 45px;
}
.interview_top02 .interview_head {
	top: 35px;
	right: 45px;
}
.interview_top03 .interview_head {
	right: 165px;
	bottom: 215px;
}
.interview_top04 .interview_head {
	left: 50px;
	bottom: 125px;
}
.interview_job {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 3px;
}
.interview_nendo {
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.7;
	width: 120px;
	height: 28px;
	border: 1px solid #303339;
	border-radius: 14px;
	margin-bottom: 10px;
}
.interview_head.txt_white .interview_nendo {
	border: 1px solid #fff;
}
.interview_name {
	font-size: 20px;
	font-weight: 700;
	margin: 0;
}

.interview_slide {
	display: flex!important;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
}
.interview_slider .slick-list {
	overflow: visible!important;
}
.interview_img_l {
	position: sticky;
	left: 0;
	top: 0;
	width: 45.8%;
	height: 100vh;
}
.interview_img_l img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.interview_img_l::after {
	position: absolute;
	right: -44px;
	top: 50%;
	transform: translateY(-50%);
	width: 88px;
	height: 88px;
	content: "";
	background-image: url("img/icon_alfa.svg");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
}
.r_interview {
	width: 54.2%;
	height: 100vh;
	padding: 165px 20px 0 50px;
	overflow-y: auto;
}
.r_interview_content {
	width: 100%;
	max-width: 480px;
	color: #2e2e2e;
	margin: 0 auto;
}
.read_interview_r {
	font-size: 41px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 35px;
}
.r_interview .interview_head {
	margin-bottom: 80px;
}
.interview_shosai {
	margin-bottom: 145px;
}
.interview_shosai h3 {
	font-size: 22px;
	line-height: 1.8;
	margin-bottom: 35px;
}
.interview_shosai p {
	font-size: 15px;
	line-height: 2.1;
	margin: 0;
}
.watashino {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
.l_watashino {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 68.7%;
}
.watashino_img {
	width: 31.7%;
}
.watashino_img img {
	width: 100%;
}
.read_watashino {
	width: auto;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.7;
	text-decoration: underline;
	text-underline-offset: 7px;
	text-decoration-skip-ink: none;
	margin-bottom: 0;
}
.icon_watashino {
	width: 26.3%;
}
.f_watashino {
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 100%;
	border: 6px solid #191919;
	padding: 35px;
	margin-bottom: 55px;
}
.f_watashino::before {
	position: absolute;
	left: 66.3%;
	top: -30px;
	content: "";
	width: 46px;
	height: 30px;
	background-image: url("img/bg_f_watashino.png");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	background-color: #fff;
}
.f_watashino p {
	width: 54.8%;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}
.watashino_photo {
	width: 36.9%;
}
.interview_bottom {
	display: flex;
	width: 100%;
	height: 125px;
}



#recruit04 {
	position: relative;
	padding: 0 20px 0;
	margin-bottom: 215px;
}
.recruit_title {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	max-width: 990px;
	margin: 0 auto 55px;
	z-index: 10;
}
.recruit-content .recruit_title h2 {
	display: inline-block;
	margin-bottom: 0;
}
.read_recruit_title {
	position: relative;
	display: inline-block;
	font-size: 21px;
	font-weight: 700;
	margin: 0;
}
#recruit05 .read_recruit_title {
	font-size: 31px;
	line-height: 1.8;
}
.u_txt {
	position: relative;
	border-bottom: 6px solid #191919;
	padding-bottom: 10px;
}
#recruit05 .u_txt {
	padding-bottom: 5px;
}
.bg_aboutus {
	position: absolute;
	left: 0;
	bottom: 47px;
	width: 100%;
	height: 457px;
	z-index: -1;
	overflow: hidden;
	mix-blend-mode: multiply;
}
.bg_aboutus figure {
	position: relative;
}
.bg_aboutus figure img {
	width: 100%;
}

.aboutusbox {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 990px;
	margin: 0 auto 185px;
}
.aboutuslist {
	width: 30%;
	background-color: #fff;
	border-radius: 5px;
	padding: 55px 40px;
	opacity: 0;
	transform: translateX(-15px);
}
.aboutuslist.start {
	opacity: 1;
	transform: translateX(0);
}
.aboutuslist.start:nth-child(1) {
	transition: all 0.3s linear 0s;
}
.aboutuslist.start:nth-child(2) {
	transition: all 0.3s linear 0.3s;
}
.aboutuslist.start:nth-child(3) {
	transition: all 0.3s linear 0.6s;
}
.icon_aboutus {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 95px;
	text-align: center;
	margin-bottom: 30px;
}
.icon_aboutus02 figure {
	max-width: 94px;
	margin: 0 auto;
}
.icon_aboutus_off {
	position: relative;
	width: 100%;
	z-index: 1;
	opacity: 1;
}
.icon_aboutus_on {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	transform: translate(-50%,-50%);
	z-index: 2;
	opacity: 0;
}
.aboutuslist.start:nth-child(1) .icon_aboutus_off {
	transition: all 0.4s ease-out 0.4s;
	opacity: 0;
}
.aboutuslist.start:nth-child(1) .icon_aboutus_on {
	transition: all 0.4s ease-out 0.4s;
	opacity: 1;
}
.aboutuslist.start:nth-child(2) .icon_aboutus_off {
	transition: all 0.4s ease-out 0.7s;
	opacity: 0;
}
.aboutuslist.start:nth-child(2) .icon_aboutus_on {
	transition: all 0.4s ease-out 0.7s;
	opacity: 1;
}
.aboutuslist.start:nth-child(3) .icon_aboutus_off {
	transition: all 0.4s ease-out 1s;
	opacity: 0;
}
.aboutuslist.start:nth-child(3) .icon_aboutus_on {
	transition: all 0.4s ease-out 1s;
	opacity: 1;
}

.aboutuslist h3 {
	position: relative;
	font-size: 20px;
	text-align: center;
	line-height: 1.2;
	padding: 0;
	margin-bottom: 30px;
	z-index: 10;
}
.aboutuslist p {
	position: relative;
	font-size: 14px;
	line-height: 2;
	margin-bottom: 0;
	z-index: 10;
}

.btn_center {
	display: flex;
	justify-content: center;
}
.btn_recruit {
	position: relative;
	width: 100%;
	height: 88px;
	max-width: 355px;
	margin: 0;
	z-index: 10;
}
.btn_recruit_s {
	height: 62px;
}
.btn_recruit a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	background-color: #191919;
	padding: 0 10px;
	transition: all 0.3s ease-out;
	cursor: none;
}
.btn_recruit a:hover {
	letter-spacing: 0.12em;
}
.btn_recruit a::before {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 2px;
	content: "";
	background-color: #fff;
	transition: all 0.3s ease-out;
}
.btn_recruit a:hover::before {
	width: 30px;
}
.btn_txt {
	display: inline-block;
	padding-right: 35px;
	background-image: url("img/icon_link_gray.svg");
	background-repeat: no-repeat;
	background-position: right 1px center;
	background-size: 12px 12px;
}

#recruit05 {
	position: relative;
	padding: 0 9.9vw 15.8vw;
}
#recruit05 .recruit_title {
	max-width: 1435px;
	min-width: 845px;
}
.recruit_culturebox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1435px;
	min-width: 845px;
	margin: 0 auto;
}
.recruit_culture {
	display: block;
	text-decoration: none;
	position: relative;
	width: 49.5%;
	opacity: 0;
	transform: translateY(10px);
	cursor: none;
}
[data-aos="bounce"].aos-animate {
	animation: recruit_culture 0.4s linear 0s forwards;
}
@keyframes recruit_culture {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}
	37.5% {
		opacity: 1;
		transform: translateY(0px);
	}
	75% {
		opacity: 1;
		transform: translateY(6px);
	}
	100% {
		opacity: 1;
		transform: translateY(0px);
	}
}

.recruit_culture:hover {
	color: #191919;
}
.recruit_culture:hover img {
	opacity: 1;
}
.recruit_culture:nth-child(odd) {
	margin-left: -3%;
}
.recruit_culture02 {
	margin-top: 80px;
}
.recruit_culture03 {
	margin-top: -55px;
	margin-bottom: 95px;
}
.recruit_culture04 {
	margin-top: 70px;
}
.recruit_culture05 {
	margin-bottom: 90px;
}
.recruit_culture06 {
	margin-top: 85px;
}
.recruit_culture07 {
	margin-bottom: 90px;
}
.recruit_culture08 {
	margin-top: 105px;
}
.recruit_culture09 {
	margin-top: -45px;
}

.recruit_culture_no {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	color: rgba(255,255,255,0.4);
    font-family: 'Oswald', sans-serif;
	font-size: 110px;
	font-weight: 700;
	line-height: 1;
}
.recruit_culture_img {
	position: relative;
	z-index: 1;
	transform: rotate(0deg);
	margin: 0 auto;
	animation: recruit_culture_img_out 0.4s ease-out 0s forwards;
}
.recruit_culture:hover .recruit_culture_img {
	animation: recruit_culture_img 0.4s ease-out 0s forwards;
}
@keyframes recruit_culture_img {
	0% {
		transform: rotate(0deg);
	}
	25% {
		transform: rotate(-2deg);
	}
	50% {
		transform: rotate(-1.6deg);
	}
	75% {
		transform: rotate(-2deg);
	}
	90% {
		transform: rotate(-1.8deg);
	}
	100% {
		transform: rotate(-2deg);
	}
}
@keyframes recruit_culture_img_out {
	0% {
		transform: rotate(-2deg);
	}
	25% {
		transform: rotate(-1.6deg);
	}
	50% {
		transform: rotate(-2deg);
	}
	75% {
		transform: rotate(-1.6deg);
	}
	75% {
		transform: rotate(-0.2deg);
	}
	100% {
		transform: rotate(0deg);
	}
}
.recruit_culture_img img {
	width: 100%;
}
.recruit_culture01 .recruit_culture_img {
	width: 93.1%;
}
.recruit_culture02 .recruit_culture_img {
	width: 67.5%;
}
.recruit_culture02 .recruit_culture_img img {
	transform: translateX(5%);
}
.recruit_culture03 .recruit_culture_img {
	width: 87.9%;
}
.recruit_culture04 .recruit_culture_img {
	width: 63.8%;
}
.recruit_culture05 .recruit_culture_img img {
}
.recruit_culture05 .recruit_culture_img {
	width: 97.4%;
}
.recruit_culture06 .recruit_culture_img {
	width: 94.5%;
}
.recruit_culture07 .recruit_culture_img {
	width: 85.7%;
}
.recruit_culture08 .recruit_culture_img {
	width: 63.4%;
}
.recruit_culture08 .recruit_culture_img img {
	transform: translate(4%,-35px);
}
.recruit_culture09 .recruit_culture_img {
	width: 90.5%;
}

.read_recruit_culture {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}
.recruit_culture01 .read_recruit_culture {
	margin-top: -50px;
}
.recruit_culture02 .read_recruit_culture {
	margin-top: -40px;
}
.recruit_culture03 .read_recruit_culture {
	margin-top: -45px;
}
.recruit_culture04 .read_recruit_culture {
	margin-top: -50px;
}
.recruit_culture05 .read_recruit_culture {
	margin-top: -15px;
}
.recruit_culture06 .read_recruit_culture {
	margin-top: 10px;
}
.recruit_culture08 .read_recruit_culture {
	margin-top: -90px;
}
.recruit_culture09 .read_recruit_culture {
	margin-top: -50px;
}

.read_recruit_culture p {
	position: relative;
	color: #fff;
	font-size:clamp(20px, 1.5vw, 28px);
	font-weight: 700;
	line-height: 2;
	margin: 0;
	z-index: 10;
	transition: all 0.4s ease-in-out;
}
.recruit_culture:hover .read_recruit_culture p {
	color: #191919;
}
.read_recruit_culture p span {
	position: relative;
	padding: 5px 10px;
	z-index: 2;
}
.read_recruit_culture p span::before,
.read_recruit_culture p span::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	transition: all 0.2s ease-out;
}
.read_recruit_culture p span::before {
	background-color: #000;
	z-index: -2;
}
.read_recruit_culture p span::after {
	width: 0;
	background-color: #fff;
	z-index: -1;
}
.recruit_culture:hover .read_recruit_culture p span::after {
	width: 100%;
}
.tag_recruit_culture {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.tag_recruit_culture li {
	font-size: 13px;
	font-size:clamp(13px, 1vw, 18px);
	
	font-weight: 700;
	margin: 5px 0 0 20px;
}
.recruitculture_txt01 {
	position: absolute;
	right: -0.4%;
	bottom: 11.8vw;
	width: 33.1%;
}
.recruitculture_txt01 img {
	width: 100%;
}

.culture_slide {
	display: flex!important;
	align-items: center;
	justify-content: space-between;
	width: 78.3%!important;
	height: 100vh;
	margin: 0 auto;
}
.culture_slide .slick-list {
	overflow: visible!important;
}
.l_rc {
	width: 42.4%;
}
.l_rc h3 {
    font-family: 'Oswald', sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 10px;
}
.l_rc p {
	font-size: 16px;
	font-weight: 500;
	line-height: 2.1;
	letter-spacing: 0.02em;
	margin-bottom: 0;
}
.l_rc p.rc_link {
	padding-top: 40px;
}
.l_rc p.rc_link a {
	display: inline-block;
	background-image: url("img/icon_link_black.svg");
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 20px;
}
.tag_rc {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 15px;
	margin: 0;
}
.tag_rc li {
	display: inline-block;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	background-color: #191919;
	border-radius: 14px;
	padding: 5px 15px 4px;
	margin: 0 10px 10px 0;
}
.l_rc p.read_rc {
	font-size: 42px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0;
	margin-bottom: 15px;
}
.r_rc {
	position: relative;
	width: 57.6%;
}
.rc_no {
	position: absolute;
	right: 0;
	top: 0;
	color: rgba(255,255,255,0.4);
    font-family: 'Oswald', sans-serif;
	font-size: 211px;
	font-weight: 700;
	line-height: 0.5;
	z-index: 0;
}
.rc_img {
	position: relative;
	margin: 0 auto 15px;
	z-index: 1;
}
#rc01 .rc_img {
	width: 93%;
	margin: 0 0 15px auto;
}
#rc02 .rc_img {
	width: 67.5%;
}
#rc03 .rc_img {
	width: 98.2%;
}
#rc04 .rc_img {
	width: 63.5%;
}
#rc05 .rc_img {
	width: 96.5%;
}
#rc06 .rc_img {
	width: 93.9%;
	margin: 0 0 15px auto;
}
#rc07 .rc_img {
	width: 86.8%;
	margin: 0 0 15px 9.6%;
}
#rc08 .rc_img {
	width: 64%;
}
#rc09 .rc_img {
	width: 90.4%;
	margin: 0 0 15px 6.1%;
}
.rc_img img {
	width: 100%;
}
.cap_rc {
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	margin: 0 auto;
}
#rc06 .cap_rc {
	transform: translateX(14%);
}
#rc07 .cap_rc {
	transform: translateX(4%);
}
 #rc08 .cap_rc {
	transform: translateX(4%);
}
 #rc09 .cap_rc {
	transform: translateX(2%);
}

#recruit06 {
	position: relative;
	padding-bottom: 170px;
	z-index: 10;
}
.recruit-content h2.rt_center {
	text-align: center;
	margin-bottom: 45px;
}

.requirements_scroll {
	width: 100%;
	height: 640px;
	background-color: #fff;
	border-radius: 5px;
	margin: 0 auto;
	padding: 60px;
	overflow-y: auto;
}
.requirements_scroll table th,
.requirements_scroll table td {
	font-size: 15px;
	border-bottom: 1px solid #ababab;
}
.requirements_scroll table th {
	font-weight: 700;
	vertical-align: middle;
}

#recruit07 {
	position: relative;
	padding-bottom: 160px;
	z-index: 10;
}
.read_entry {
	font-size: 15px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 30px;
}
.recruit-contact-box {
	width: 100%;
	height: 100%;
}
.recruit-contact-box iframe {
	border: none;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
}
#recruitform {
	width: 100%;
	padding: 0 4px;
	height: 100%;
}
#recruitform table th,
#recruitform table td {
	color: #191919;
	font-size: 15px;
	font-weight: 700;
	border: none;
	padding: 10px 0;
}
#recruitform table td.check_doui {
	text-align: center;
}
#recruitform p {
	color: #191919;
}
.doui_txt {
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 2;
	padding-top: 30px;
	margin-bottom: 20px;
}

#recruit08 {
	position: relative;
	padding: 120px 20px;
	overflow: hidden;
}
#recruit08::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #F4EEE6;
	mix-blend-mode: multiply;
	z-index: -1;
}
.recruit_blog {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 865px;
	margin: 0 auto;
}
.l_recruit_blog {
	position: relative;
	width: 31.2%;
	z-index: 10;
}
.r_recruit_blog {
	width: 50.9%;
}
.r_recruit_blog .blogcontent a {
	border-bottom: 1px solid #fff;
}
.r_recruit_blog .blogcontent .entrydate {
	color: #fff;
    font-family: 'Oswald', sans-serif;
	font-size: 14px;
}
.r_recruit_blog .blogcontent .entrytitle {
	font-weight: 700;
}

.btn_recruittop {
	position: absolute;
	width: 230px;
	right: 65px;
	bottom: -41px;
}
.btn_recruittop a:hover img {
	opacity: 1;
}
.btn_recruittop01 {
	position: relative;
	width: 200px;
	animation: btn_recruittop01_out 0.4s ease-in-out forwards;
}
.btn_recruittop a:hover .btn_recruittop01 {
	animation: btn_recruittop01 0.4s ease-in-out forwards;
}
@keyframes btn_recruittop01 {
	0% {
		transform: translateY(0px);
	}
	37.5% {
		transform: translateY(-10px);
	}
	75% {
		transform: translateY(-7px);
	}
	100% {
		transform: translateY(-10px);
	}
}
@keyframes btn_recruittop01_out {
	0% {
		transform: translateY(-10px);
	}
	37.5% {
		transform: translateY(0px);
	}
	75% {
		transform: translateY(-3px);
	}
	100% {
		transform: translateY(0px);
	}
}
.btn_recruittop02 {
	position: absolute;
	right: 0;
	top: 100px;
}



/*
news
*/
.entry {
	border-bottom: 1px solid #E0E0E0;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.entrylink {
	display: flex;
	justify-content: space-between;
	text-decoration: none;
}
.entry-image {
	width: 34.2%;
}
.entrylink02 .entry-image {
	width: 100px;
}
.entry-shosai {
	width: 60.5%;
}
.entry-shosai02 {
	width: 100%;
	border: 1px solid #E0E0E0;
	padding: 45px;
	margin-bottom: 50px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.entrylink02 .entry-shosai {
	width: 175px;
}
.entry-shosai h2 {
	font-size: 18px;
	padding: 0;
	margin: 0 0 15px;
}
.entry-shosai02 h2 {
	font-size: 30px;
}
.entry-shosai h3 {
	font-size: 14px;
	margin: 0;
	padding: 0;
}

.entry-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 20px;
}
.entry-shosai02 .entry-head {
	margin-bottom: 0;
}
.entrylink02 .entry-head {
	margin-bottom: 10px;
}
.entry-date {
	color: #888888;
	width: 80px;
	margin: 0 25px 0 0;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}
.entrylink02 .entry-date {
	width: auto;
	font-size: 14px;
	margin-right: 10px;
}
.entry-cat {
	width: auto;
	margin: 0;
}
.entry-cat .c_cat {
	display: inline-block;
	font-size: 13px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	background-color: #005FAC;
	border-radius: 4px;
	padding: 0 25px;
	margin-right: 25px;
}
.entry-cat .c_cat02 {
	background-color: #60C198;
}
.entry-cat .c_cat03 {
	background-color: #BED54F;
}
.entrylink02 .entry-cat .c_cat {
	padding: 0 10px;
	margin: 0;
}
.entry-naiyo {
	font-size: 15px;
	line-height: 1.5;
}


/*
policy
*/
.policy {
	padding: 0 0 70px;
}
.policy:first-child {
	padding: 70px 0;
}
.policy h2 {
	font-size: 24px;
	line-height: 1.3;
	padding: 0;
	margin: 0 0 25px;
}
.policy h3 {
	font-size: 15px;
	line-height: 2;
	margin: 0;
	padding: 0;
}
.policy p {
	margin-bottom: 25px;
}
.policy ol {
	margin-bottom: 50px;
}
.policy ol li {
	line-height: 2;
	margin-bottom: 5px;
}
.policy ol li ol {
	margin: 0 0 35px;
}
.policy ol li ol li {
	list-style-type: none;
	counter-increment: cnt;
	padding-left: 2.5em;
	text-indent: -2.5em;
}
.policy ol li ol li::before {
	content: "（" counter(cnt) "）";
}
.madoguchi {
	text-align: right;
	margin: 0;
}
ul.policylist li {
	padding-left: 1em;
	text-indent: -1em;
}



/*
contanct
*/
#contact01 {
	padding: 60px 0 85px;
}
.read_contact {
	text-align: center;
	margin: 0 auto 55px;
}
.read_contact02 {
	padding-top: 55px;
	margin: 0 auto;
}
#contact01 h2,
#contact02 h2 {
	font-size: 20px;
	line-height: 1.6;
	text-align: center;
	padding: 30px 0 0;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 23px 20px;
}
#contact01 h2 {
	background-image: url(img/icon_tel.png);
	margin: 0 auto 35px;
}
#contact02 h2 {
	padding-bottom: 20px;
	border-bottom: 1px solid #C9C9C9;
	margin: 0 auto 0px;
	background-image: url(img/icon_mail.png);
}
#telbox {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 695px;
	margin: 0 auto;
}
.tellist {
	width: 49%;
	border: 1px solid #C9C9C9;
	padding: 30px 10px;
	
    -ms-box-sizing: border-box;
    box-sizing: border-box;	
}
.tel_office {
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	margin: 0 auto 5px;
}
.tel_office span,
.tel_office .dummyclass {
	display: block;
	font-size: 30px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}
.tel_address {
	text-align: center;
	font-size: 12px;
	margin: 0;
}

#contact02 .attention {
	display: inline-block;
	font-size: 20px;
	color: #005FAC;
	font-weight: bold;
	vertical-align: middle;
	margin-left: 10px;
}
.cap_contact {
	font-size: 14px;
	margin-bottom: 50px;
}
#contact02 .cap_contact .attention  {
	margin: 0 15px 0 0;
}
.t_contact th,
.t_contact td {
	display: block;
	width: 100%;
	font-size: 15px;
	border: none;
}
.t_contact th {
	padding: 0 0 5px;
}
.t_contact th .hosoku {
	display: inline-block;
	font-size: 11px;
	color: #889BAA;
	margin-left: 15px;
	vertical-align: middle;
	padding-bottom: 3px;
}
.t_contact td {
	padding: 0 0 30px;
}
.t_contact td.t_contact_naiyo {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.t_contact th.t_doui {
	display: none;
}
.t_contact td.btn_doui {
	padding: 20px 0;
	text-align: center;
}
.t_contact td.btn_doui label {
	font-size: 14px;
}


.contact_naiyo {
	padding: 10px 0 15px;
}
.contact_naiyo h3 {
	font-size: 14px;
	padding: 5px 0 5px 15px;
	margin: 0 auto 10px;
}
.contact_naiyo:nth-child(1) {
	width: 35%;
}
.contact_naiyo:nth-child(2) {
	width: 20%;
}
.contact_naiyo:nth-child(3) {
	width: 40%;
}
.contact_naiyo:nth-child(1) h3 {
	border-left: 5px solid #005FAC;
}
.contact_naiyo:nth-child(2) h3 {
	border-left: 5px solid #E07263;
}
.contact_naiyo:nth-child(3) h3 {
	border-left: 5px solid #71B74F;
}
#your-dounyu,
#dounyu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.t_contact td.t_jyusho {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 790px;
}
.jyusho {
	width: 46.3%;
	margin: 0 3% 20px 0;
}
.jyusho:nth-child(2n) {
	margin-right: 0;
}
.jyusho:nth-child(3),
.jyusho:nth-child(4) {
	margin-bottom: 0;
}
.contact_privacy {
	width: 100%;
	height: 205px;
	overflow-y: scroll;
	background: #fff;
	padding: 20px 70px;
	
	border: 1px solid #CFD1D1;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.contact_privacy h3 {
	text-align: center;
	font-size: 16px;
	color: #707070;
	margin-bottom: 20px;
	padding: 0;
}
.contact_privacy p {
	margin-bottom: 30px;
}
.contact_privacy p.shomei_privacy {
	text-align: right;
}
.contact_privacy p,
.contact_privacy ol li {
	color: #707070;
	font-size: 12px;
}
.contact_privacy ol {
	padding-bottom: 25px;
}
.contact_privacy ol li {
	margin-bottom: 10px;
}

button,
input,
select,
textarea {
	color: #333;
	padding: 5px;
	background-color: #F6F8FA;
	border: none;
	border: 1px solid #CDD6E1;
	border-radius: 5px;
}
button,
input {
    line-height: normal;
}
#btn_contact {
	width: 100%;
	max-width: 495px;
    margin: 40px auto 0;
}
#btn_contact p {
	position: relative;
	margin: 0 auto;
}
.btn_confirm::before,
.btn_back::before,
.btn_entry::before {
	position: absolute;
	left: 50%;
	top: 100px;
	transform: translateX(-50%);
	color: #191919;
	font-size: 16px;
	font-weight: 700;
	z-index: 6;
	opacity: 0.5;
	transition: all 0.3s ease-out;
	pointer-events: none;
}
.btn_entry::before,
.btn_back::before {
	opacity: 1;
}
.btn_confirm::before {
	content: "送信内容を確認する";
}
.btn_entry::before {
	content: "エントリーする";
}
.btn_back::before {
	content: "修正する";
}
.btn_confirm.active::before {
	opacity: 1;
}
.btn_confirm.active:hover::before,
.btn_entry:hover::before,
.btn_back:hover::before {
	color: #fff;
}

.btn3 {
	display: block;
	position: relative;
	margin: 0 auto 20px;
	transition: 0.3s;
	outline: none;
    border: 1px solid #AFC9DE;
	border-radius: 8px;
}
.btn3::before {
	border-radius: 8px;
}
input[type="submit"],
input[type="button"] {
	position: relative;
	display: block;
	width: 100%;
	color: #005FAC;
    font-size: 15px;
    font-weight: bold;
	text-align: center;
	background: none;
    border: none!important;
	transition: 0.3s;
    text-transform: uppercase;
    -ms-box-sizing: border-box;
    box-sizing: border-box;	
	cursor: pointer;
	margin: 0;
	-webkit-appearance: none;
	padding: 30px 10px;
	z-index: 5;
	border-radius: 8px;
}
.btn3:hover input[type="submit"],
.btn3:hover input[type="button"] {
	color: #fff;
}
.btn3 input[type="submit"],
.btn3 input[type="button"] {
	display: block!important;
	outline: none;
	border: none;
}
#recruitform input[type="submit"], 
#recruitform input[type="button"] {
	max-width: 510px;
    font-family: 'Oswald', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: none;
	text-align: center;
	color: #191919;
	border-radius: 0;
	margin-bottom: 20px;
	border: 6px solid #191919!important;
	transition: all 0.3s ease-out;
	padding: 30px 10px 60px;
}
#recruitform input[type="submit"]:hover, 
#recruitform input[type="button"]:hover {
	color: #fff;
	background-color: #191919;
}

#recruitform input[type="button"]:disabled,
#recruitform input[type="submit"]:disabled {
	cursor: default;
	opacity: 0.5;
}
#recruitform input[type="submit"]:disabled:hover, 
#recruitform input[type="button"]:disabled:hover {
	color: #191919;
	background: none;
}


textarea {
	vertical-align: top;
	
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
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: 15px;
	line-height: 24px;
}
select::-ms-expand {
	display: none;
}
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	width: 100%;
}
#recruitform input[type="text"],
#recruitform select,
#recruitform input[type="textarea"] {
	font-size: 16px;
	color: #191919;
	padding: 15px;
}
input#your-email,
input#email,
input#your-tel,
input#tel,
input#your-fax,
input#your-zip1,
input#zip1,
input#your-zip2,
input#zip2 {
	ime-mode: disabled;
}
input#your-zip1,
input#zip1 {
	width: 35%;
}
input#your-zip2,
input#zip2 {
	width: 45%;
}
#recruitform select,
#recruitform .wpcf7-list-item-label {
	margin-right: 20px;
}
#recruitform input#zip1 {
	width: 12%;
}
#recruitform input#zip2 {
	width: 15%;
}
span.wpcf7-list-item {
	margin: 0!important;
}
.wpcf7-checkbox span.wpcf7-list-item {
}
.contact_naiyo .wpcf7-list-item {
	display: block;
}
.wpcf7-list-item-label {
	display: inline-block;
	padding: 5px 0 5px 3px;
	cursor: pointer;
	line-height: 2;
}
div.wpcf7-response-output,
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
	display: none!important;
}

input[type="radio"] {
	position: absolute;
	opacity: 0;
}
input[type="radio"] + .wpcf7-list-item-label:before {
	content: "";
	background: #fff;
	border-radius: 100%;
	border: 1px solid #c9c9c9;
	display: inline-block;
	width: 16px;
	height: 16px;
	top: 0.3em;
	position: relative;
	margin-right: 8px;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
}
input[type="radio"]:checked + .wpcf7-list-item-label:before {
	background-color: #3077F5;
	border-color: #3077F5;
	box-shadow: inset 0 0 0 3px #f4f4f4;
}
input[type="radio"]:focus + .wpcf7-list-item-label:before {
	outline: none;
	border-color: #3077F5;
}
input[type="radio"]:disabled + .wpcf7-list-item-label:before {
	box-shadow: inset 0 0 0 3px #f4f4f4;
	border-color: #b4b4b4;
	background: #b4b4b4;
}
input[type="radio"] + .wpcf7-list-item-label:empty:before {
	margin-right: 0;
}

input[type="checkbox"] {
    display: none;
}
.wpcf7-checkbox .wpcf7-list-item-label {
	position: relative;
    display: inline-block;
	width: auto;
	cursor: pointer;
    padding: 0 0 0 27px;
    -ms-box-sizing: border-box;
    box-sizing: border-box;	
}
.wpcf7-checkbox .wpcf7-list-item-label::before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
	width: 16px;
	height: 16px;
    content: "";
    background: #fff;
    border: 1px solid #C9C9C9;
	border-radius: 4px;
    margin-top: -8px;
}
.wpcf7-checkbox .wpcf7-list-item-label::after {
    position: absolute;
    top: 50%;
    left: 5px;
    display: block;
    width: 5px;
	height: 9px;
    transform: rotate(45deg);
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: "";
    margin-top: -6px;
    opacity: 0;
}
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    opacity: 1;
}
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
	background-color: #3077F5;
    border: 1px solid #3077F5;
}

.error-messages li {
	color: #f00;
}


/*
#secondary
*/
#secondary ul,
#secondary ul li,
#secondary li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.sidemenu {
	position: relative;
	margin-bottom: 60px;
}
.sidemenu::before {
	position: absolute;
	left: 0;
	top: 10px;
	width: 100%;
	height: 2px;
	content: "";
	background-color: #C9C9C9;
	z-index: 1;
}
.sidemenu h2 {
	position: relative;
	display: inline-block;
	font-size: 22px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	background-color: #fff;
	padding: 0 15px 0 0;
	margin: -5px 0 25px;
	z-index: 2;
}
#secondary .sidemenu ul li {
	padding: 0;
	margin: 0 0 15px;
}
#secondary .sidemenu ul li a {
	display: block;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	background-image: url(img/bg_rlist.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 5px 7px;
	padding: 0 0 0 15px;
}


/*
wp-pagenavi
*/
div.wp-pagenavi {
	margin: 0 auto;
	text-align: center;
	padding: 30px 0 0;
}
.pages {
	display: none!important;
}
.page-links {
	font-weight: bold;
}
.page-links a,
.wp-pagenavi a, .wp-pagenavi span {
	display: inline-block;
	border: 1px solid #E0E0E0!important;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	color: #888;
	font-size: 16px;
	margin: 0 10px 10px;
	padding: 14px 18px;
}
.page-links a:hover,
.wp-pagenavi a:hover, 
.wp-pagenavi span.current {
	display: inline-block;
	background: linear-gradient(to bottom,  rgba(30,75,175,1) 0%,rgba(49,147,224,1) 100%);
	color: #fff;
}


/*
topBtn
*/
a#topBtn {
    display: block;
	position: fixed;
	bottom: 30px;
	right: 30px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
	background-color: #fff;
	background-image: url(img/btn_top.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 16px 17px;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.1);
	z-index: 5;
	transition: 0s;	

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}


/*
footer
*/
#footer {
	position: relative;
	width: 100%;
	color: #fff;
	background-image: url(img/bg_footer.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	margin: 0;
	padding: 80px 0 0;
	z-index: 3;

	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.footer {
	position: relative;
	z-index: 10;
	padding-left: 124px;
	background-color: #fff;
}
#logo_footer {
	width: 100%;
	max-width: 303px;
	margin: 0 0 70px;
}
#siteinfo {
	position: relative;
	flex-wrap: wrap;
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
.siteinfo {
	display: flex;
	justify-content: space-between;
	padding: 85px 0;
}
#l_footer {
	width: 29.8%;
}
.l_footer {
	width: 46%;
}
#l_footer a {
	color: #fff;
}
.logo_recruit_footer {
	margin-bottom: 15px;
}
.footer_company {
	font-weight: bold;
	margin-bottom: 20px;
}
.footer_company02 {
	margin-bottom: 40px;
}
.footer_address {
	font-size: 15px;
	margin: -5px 0 0;
}
.footer_map {
	font-size: 14px;
	margin-bottom: 30px;
}
.footer_map:last-child {
	margin-bottom: 0;
}
.footer_map a {
	display: inline-block;
}
.footer_map a:hover {
	text-decoration: underline;
}
.footer_map a span {
	background-image: url("img/icon_map.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 12px 14px;
	padding-left: 20px;
}
.footer_map02 a {
	cursor: none;
}
.footer_map02 a span {
	background-image: url("img/icon_map_black.svg");
}
#r_footer {
	display: flex;
	justify-content: space-between;
	width: 62.5%;
}
.r_footer {
	width: 45%;
}
.footer_banner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px 0;
	margin: 0;
	padding: 0;
}
.footer_banner li {
	margin: 0;
	padding: 0;
}
.footer_banner li.bn_winc {
	max-width: 234px;
}
.footer_banner li a {
	cursor: none;
}
.footermenu {
	width: auto;
	margin-right: 3%;
}
.footermenu:last-child {
	margin-right: 0;
}
.footermenu ul,
.footermenu ul li,
.footerbottommenu ul,
.footerbottommenu ul li {
	margin: 0;
	padding: 0;
}
.footermenu ul li a {
	display: block;
	color: #fff;
	text-decoration: none;
	font-weight: bold;
	margin-bottom: 15px;
}
.footermenu ul li ul li a {
	position: relative;
	font-size: 15px;
	padding-left: 15px;
	font-weight: normal;
}
.footermenu ul li ul li a::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 1px;
	background-color: #9D9D9D;
	content: "";
}
.footermenu ul li ul li ul {
	margin: -5px 0 15px;
}
.footermenu ul li ul li ul li a {
	font-size: 14px;
	margin-bottom: 3px;
}
.footermenu ul li ul li ul li a::before {
	display: none;
}

#footer .btn2 {
	position: relative;
	margin-bottom: 60px;
}
#footer .btn2::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	border: 2px solid #AFC9DE;
	transition: all 0.3s linear;
	border-radius: 8px;
	pointer-events: none;
	box-sizing: border-box;
}
#footer .btn2:hover::before {
	opacity: 0;
}
#footer .btn2 a {
	border: none;
}
#footer .btn2 a span {
	display: inline-block;
	padding-top: 1px;
}

.footer_youtube {
	position: absolute;
	right: 52px;
	bottom: 80px;
	width: 100%;
	max-width: 230px;
}
.footer_youtube a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding: 0 10px;
	height: 60px;
	border-radius: 8px;
	transition: all 0.3s linear;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.footer_youtube a::before,
.footer_youtube a::after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	border-radius: 8px;
	transition: all 0.3s linear;
	pointer-events: none;
	box-sizing: border-box;
}
.footer_youtube a::before {
	border: 2px solid #AFC9DE;
	opacity: 1;
}
.footer_youtube a::after {
	z-index: 0;
	background: linear-gradient(45deg, #1e4baf 0%,#3193e0 100%);
	opacity: 0;
}
.footer_youtube a:hover::before {
	opacity: 0;
}
.footer_youtube a:hover::after {
	opacity: 1;
}
.footer_youtube a .footer_youtube_txt {
	position: relative;
	display: inline-block;
	background-image: url("img/icon_youtube_white.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 26px 17px;
	height: 17px;
	padding-left: 35px;
	z-index: 1;
}
.footer_youtube a:hover .footer_youtube_txt {
	background-image: url("img/icon_youtube_white_on.svg");
}

#footerbottom {
	background-color: #000;
	padding: 20px 0;
}
.footerbottom {
	background-color: #191919;
	padding: 50px 0;
}
.admin-bar #footerbottom {
	padding: 20px 0 50px;
}
#footerbottom .cbox,
.footerbottom .cbox {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.footerbottommenu,
.footer_recruitmenu {
	width: auto;
}
.footerbottommenu ul,
.footer_recruitmenu ul {
	display: flex;
}
.footerbottommenu li a,
.footer_recruitmenu li a {
	color: #fff;
	font-size: 12px;
	padding: 0 15px;
	text-decoration: none;
	border-left: 1px solid #707070;
}
.footerbottommenu li:first-child a,
.footer_recruitmenu li:first-child a {
	border: none;
}
.footer_recruitmenu li:first-child a {
	margin-right: 15px;
}
.footer_recruitmenu li a {
	color: #C6C6C6;
	padding-right: 20px;
	background-image: url("img/icon_link_gray.svg");
	background-repeat: no-repeat;
	background-position: right 1px center;
	transition: all 0.3s linear;
	cursor: none;	
}
.footer_map a,
.footermenu ul li a,
.footerbottommenu li a {
	transition: 0.3s;
}
.footer_map a:hover,
.footermenu ul li a:hover,
.footer_recruitmenu li a:hover,
.footerbottommenu li a:hover {
	opacity:0.7;
	filter:alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
#copyright,
.copyright {
	width: auto;
	font-size: 12px;
	color: #656565;
	margin: 0;
}
.copyright {
	color: #7B7B7B;
}


/*
sp
*/
@media only screen and (max-width: 1000px) {

	#top_regular {
		right: 35px;
		top: 25vw;
	}


}




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


	/*
	homeworkflow
	*/
	.flowbox {
		position: relative;
		width: 100%;
		overflow-x: scroll;
		padding-bottom: 20px;
	}
	.flowbox::-webkit-scrollbar {
		height: 10px;
	}
    .flowbox::-webkit-scrollbar-track {
		background: #ddd;
        border-radius: 5px;
	}
	.flowbox::-webkit-scrollbar-thumb {
		background: #666;
		border-radius: 5px;
	}
	#homeworkflow .cbox {
		width: 100%;
	}
	#homeflowcontent {
		width: 100%;
		min-width: 1160px;
		padding: 0 20px;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#homeflowcontent::before {
		left: 50%;
		width: 1300px;
	}

	
	.read_topimage,
	.read_topimage02 {
		left: 20px;
		transform: translateY(-100%);
		font-size: 26px;
	}
	.read_topimage02 {
		transform: translateY(-50%);
	}
	

}

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

	/*
	header
	*/
	header,
	.site-header {
		height: 65px;
	}
	header #site-title {
		top: 23px;
		left: 20px;
	}
	header #site-title h1 {
		width: 164px;
	}
	
	.main-navigation,
	#header_contact,
	#header_youtube {
		display: none;
	}
	#toggle {
		display: block;
		position: absolute;
		top: 21px;
		right: 18px;
		float: right;
		width: 38px;
		height: 50px;
		text-align: center;
		padding-top: 0px;
		font-family: 'Montserrat', sans-serif;
		font-weight: 600;
		font-size: 12px;
		cursor: pointer;
		z-index: 4;
	}
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
		outline: none;
	}
	.menu-trigger {
		position: relative;
		width: 38px;
		height: 10px;
		text-decoration: none;
	}
	.menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #353535;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
		bottom: 0;
	}	
	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(4px) rotate(-30deg);
		transform: translateY(4px) rotate(-30deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
		-webkit-transform: translateY(-4px) rotate(30deg);
		transform: translateY(-4px) rotate(30deg);
	}
	.menu-trigger:hover {
		color: #353535;
	}
	.menu-trigger p {
		margin: 0;
	}
	.menu-trigger.active p {
		margin-left: -2px;
	}
	
	nav#spmainmenu {
		display: block;
		position: fixed;
		top: 0;
		width: 100%;
		height: 0;
		z-index: 3;
		background: #353535;
		overflow-y: scroll;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	nav#spmainmenu ul {
		display: none;
		width: 100%;
		background: #353535;
		padding: 30px 40px 0;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	nav#spmainmenu ul li {
		width: 100%;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	nav#spmainmenu ul li a {
		position: relative;
		display: block;
		color: #fff;
		width: 100%;
		font-size: 16px;
		font-weight: bold;
		text-align: left;
		text-decoration: none;
		border-bottom: 1px solid #E0E0E0;
		background-image: url("img/bg_spmenu.png");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 8px 10px;
		padding: 27px 25px 25px;
		margin: 0;
		outline: none;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	nav#spmainmenu ul li a::before,
	nav#spmainmenu ul li a::after {
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
		width: 13px;
		height: 1px;
		background-color: #C9C9C9;
		content: "";
	}
	nav#spmainmenu ul li a::after {
		right: 20px;
		transform: translateY(-50%) rotate(-90deg);
	}
	nav#spmainmenu ul li ul {
		background: none;
		padding: 0;
	}
	nav#spmainmenu ul li ul li a {
		font-size: 14px;
		font-weight: normal;
		padding: 22px 25px 20px;
		border-bottom: 1px dotted #888888;
		background: none!important;
	}
	nav#spmainmenu ul li ul li.smyoutube a {
		background-image: url("img/icon_link.svg")!important;
		background-repeat: no-repeat!important;
		background-position: right 17px top 45%!important;
	}
	nav#spmainmenu ul li ul li a::before {
		right: auto;
		left: 0;
	}
	nav#spmainmenu ul li ul li ul {
		padding: 15px 0 0;
	}
	nav#spmainmenu ul li ul li ul li a {
		font-size: 13px;
		padding: 0 25px 5px;
		border-bottom: none;
	}
	nav#spmainmenu ul li ul li ul li:last-child a {
		border-bottom: 1px solid #E0E0E0;
		padding: 0 25px 15px;
	}	
	nav#spmainmenu ul li ul li ul li a::before {
		display: none;
	}
	nav#spmainmenu ul#menu-spsubmenu {
		display: none;
		flex-wrap: wrap;
		justify-content: center;
		padding: 30px 40px 0;
	}
	nav#spmainmenu ul#menu-spsubmenu li {
		width: auto;
		margin-bottom: 10px;
	}
	nav#spmainmenu ul#menu-spsubmenu li a {
		font-size: 12px;
		padding: 0 10px;
		background: none;
		line-height: 1;
		border-bottom: none;
		border-left: 1px solid #707070;
	}
	nav#spmainmenu ul#menu-spsubmenu li:first-child a {
		border: none;
		padding: 0 10px 0 0;
	}
	nav#spmainmenu ul#menu-spsubmenu li.spmpolicy a {
		border: none;
	}
	nav#spmainmenu ul#menu-spsubmenu li.smcontact,
	nav#spmainmenu ul#menu-spsubmenu li.smyoutube {
		display: block;
		width: 100%;
	}
	nav#spmainmenu ul#menu-spsubmenu li.smcontact {
		margin: 30px auto 15px;
	}
	nav#spmainmenu ul#menu-spsubmenu li.smcontact a,
	nav#spmainmenu ul#menu-spsubmenu li.smyoutube a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 60px;
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		padding: 0 10px;
		border-radius: 8px;
		overflow: hidden;
		transition: 0.3s;
		text-transform: uppercase;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	nav#spmainmenu ul#menu-spsubmenu li.smcontact a {
		border: none;
		background: url("img/arrow_r_white.png") 90% center / 5px 8px no-repeat,linear-gradient(45deg,  #1e4baf 0%,#3193e0 100%);
	}
	nav#spmainmenu ul#menu-spsubmenu li.smyoutube a {
		border: 2px solid #AFC9DE;
		text-transform: none;
	}
	nav#spmainmenu ul#menu-spsubmenu li.smyoutube a .smyoutube_txt {
		display: inline-block;
		background-image: url("img/icon_youtube_white.svg");
		background-repeat: no-repeat;
		background-position: left top;
		background-size: 22px 15px;
		height: 15px;
		padding-left: 30px;
		padding-top: 1px;
	}
	
	nav#spmainmenu ul li.smrecruit a::before,
	nav#spmainmenu ul li.smrecruit a::after,
	nav#spmainmenu ul li.active2 a::after,
	nav#spmainmenu ul li ul li a::after,
	nav#spmainmenu ul#menu-spsubmenu li a::before,
	nav#spmainmenu ul#menu-spsubmenu li a::after {
		display: none;
	}
	
	#main {
		padding-top: 65px;
	}
	.home #main,
	.page-id-697 #main {
		padding-top: 0;
	}
	
	/*
	homeservice
	*/
	#homeservicecontent {
		display: block;
	}
	#l_homeservice {
		width: 100%;
		padding: 0;
		margin: 0 auto 40px;
	}
	.home #l_homeservice h2,
	.page-id-697 #l_homeservice h2 {
		text-align: center;
	}
	.read_home {
		text-align: center;
		font-weight: bold;
	}
	#l_homeservice .btn {
		text-align: center;
		margin: 0 auto;
	}
	#r_homeservice {
		margin: 0 auto;
		transform: translateX(8%);
	}
	
}

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

	body.page-id-575::before {

	}
	
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	section {
		clear: both;
		padding-bottom: 70px;
	}
	.wspace {
		padding-bottom: 70px;
	}
	#stalker {
		display: none;
	}
	.recruitmenu ul li a,
	.header_banner.active li a,
	.recruitmenu02 li a,
	.interview_top,
	.btn_recruit a,
	.recruit_culture,
	.footer_map02 a,
	.footer_banner li a,
	.footer_recruitmenu li a {
		cursor: pointer;
	}
	
	
	.home .site-header,
	.page-id-697 .site-header {
		background: #fff;
	}
	#site-title2 {
		display: block;
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 66px;
		background-color: #fff;;
		padding: 0;
	}
	#site-title2 h1 {
		position: fixed;
		left: 14px;
		top: 15px;
		width: auto;
		height: auto;
	}
	.is_body #site-title2,
	.rc_body #site-title2 {
		z-index: 10001;
	}
	#toggle2 {
		width: 66px;
		height: 66px;
	}
	.menu-trigger2 {
		width: 66px;
		height: 66px;
	}
	.menu-trigger2 span {
		width: 26px;
		height: 3px;
	}
	.menu-trigger2 span:nth-of-type(1) {
		top: 22px;
	}
	.menu-trigger2 span:nth-of-type(2) {
		top: 31px;
	}	
	.menu-trigger2 span:nth-of-type(3) {
		width: 14px;
		left: calc(50% + 6px);
		top: 40px;
	}	
	.menu-trigger2.active span:nth-of-type(1) {
		-webkit-transform: translate(-50%,11px) rotate(-45deg);
		transform: translate(-50%,11px) rotate(-45deg);
	}
	.menu-trigger2.active span:nth-of-type(2) {
		-webkit-transform: translate(-50%,2px) rotate(45deg);
		transform: translate(-50%,2px) rotate(45deg);
	}
	.menu-trigger2.active span:nth-of-type(3) {
		display: none;
	}
	
	.mainmenu {
		top: 66px;
		width: 100%;
		height: calc(100vh - 66px);
		transform: translateX(100%);
		padding-top: 0;
	}
	.mainmenu h1 {
		display: none;
	}
	.mainmenubox {
		padding: 60px 30px 200px;
	}

	.recruitmenu ul li a {
		font-size: 13px;
		line-height: 1.6;
	}
	.recruitmenu ul li:nth-child(1) {
		max-width: 191px;
	}
	.recruitmenu ul li:nth-child(2) {
		max-width: 138px;
	}

	.header_banner {
		padding: 25px 0 35px;
	}
	.recruitmenu ul li a:hover,
	.recruitmenu02 li a:hover {
		opacity: 1;
	}


	
	#main {
		padding-top: 75px;
	}
	.home #main,
	.page-id-697 #main {
		padding-top: 0;
	}
	.page-id-575 #main {
		padding: 0;
	}	
	#site-content {
		display: block;
	}
	#site-content #content {
		width: 100%;
		padding-bottom: 100px;
	}
	.single #site-content #content {
		padding-bottom: 100px;
	}
	#site-content #secondary {
		width: 100%;
		max-width: none;
		margin: 0;
		padding-bottom: 100px;
	}
	
	h1.entry-title,
	h1.archive-title {
		font-size: 41px;
	}
	h1.entry-title small,
	h1.page-title small,
	h2.page-title small,
	h2 .s_title,
	h2 small,
	h2 em {
		font-size: 13px;
	}
	h1.page-title small,
	h2.page-title small{
		margin-left: 12px;
	}
	h1.page-title small.nomargin {
		margin-left: 0;
	}
	h2,
	.entry-content h2 {
		font-size: 22px;
		margin-bottom: 25px;
	}
	h2.fs65 {
		font-size: 41px;
	}
	.entry-content h2 a,
	h2.entry-title a {
		display: block;
		text-decoration: none;
		outline: none;
	}
	.entry-content h2 a:hover,
	h2.entry-title a:hover {
		text-decoration: underline;
	}
	h1.page-title,
	h2.page-title {
		font-size: 19px;
		margin-bottom: 40px;
		padding-left: 50px;
	}
	h1.page-title::before,
	h2.page-title::before {
		width: 40px;
	}
	h1.page-title {
		margin-bottom: 0px;
	}
	h3,
	.entry-content h3 {
		font-size: 22px;
		font-weight: 700;
		line-height: 1.5;
		margin-bottom: 25px;
	}
	
	
	p {
		font-size: 15px;
		line-height: 2;
	}
	p.photo_l,
	p.photo_r {
		float: none;
		text-align: center;
		margin: 0;
		padding-bottom: 15px;
	}
	p.thumbnail {
		float: none;
		width: 100%;
		text-align: center;
		margin: 0 auto 15px;
	}
	p.thumbnail img {
		width: 100%;
	}
	table {
		border: none;
	}
	table th,
	table td {
		display: block;
		width: 100%;
		font-size: 15px;
		line-height: 2;
		padding: 0 0 10px;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	table td {
		padding: 10px 0 30px 15px;
		border-bottom: none;
	}
	.notbox {
		width: 100%;
		overflow-x: scroll;
		margin-bottom: 10px;
	}
	.notbox::-webkit-scrollbar {
		height: 10px;
	}
    .notbox::-webkit-scrollbar-track {
		background: #ddd;
        border-radius: 5px;
	}
	.notbox::-webkit-scrollbar-thumb {
		background: #666;
		border-radius: 5px;
	}
	table.notwide2 {
		min-width: 768px;
	}
	table.notwide th,
	table.notwide td {
		display: table-cell;
		width: auto;
		padding: 15px;
	}
	img.alignleft,
	img.alignright {
		float: none;
		display: block;
		width: auto;
		text-align: center;
		margin: 0 auto 20px;
	}
	.menu-trigger p {
		font-size: 12px;
	}
	#breadcrumb {
		padding: 35px 0 95px;
	}

	
	/*
	topimage
	*/
	#topimage {
		position: relative;
		height: 100%;
	}
	.home #topimage,
	.page-id-697 #topimage {
		height: 100%;
	}
	.page-id-16 #topimage {
		padding-top: 20px;
	}
	#loadimage {
		padding: 0 20px;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.read_load {
		font-size: 14px;
		margin: 0px 0 0 auto;
	}
	#read_topimage {
		left: 20px;
		top: 95px;
		width: 192px;
		z-index: 3;
	}
	.read_topimage {
		top: 35px;
		left: 20px;
		font-size: 26px;
		line-height: 1.6;
		transform: none;
	}
	.page-id-16 .read_topimage {
		position: static;
		top: auto;
		left: auto;
		font-size: 22px;
		width: calc(100% - 40px);
		margin: 0 auto;
		padding-top: 25px;
	}
	.read_topimage02 {
		position: static;
		top: auto;
		left: auto;
		transform: none;
		font-size: 22px;
		padding: 0 20px 20px;
	}
	#read_topimage img {
		width: 32px;
	}
	#r_topimage {
		width: calc(100vh - 155px);
		padding-top: 155px;
	}
	#r_topimage03 {
		width: calc(100% - 20px);
	}	
	#topslide {
		display: none!important;
	}
	#topslide_sp {
		display: block!important;
	}
	#topslide_sp .slick-list {
		width: 83.5vw;
		margin: 0 0 0 auto;
		overflow: hidden;
	}
	#topslide_sp .slick-slide img {
		max-width: 83.5vw;
	}
	#topslide_sp .slick-slide.slick-active img {
		animation: topimage 1s linear 0s forwards;
	}
	#los01 {
		width: 95%;
		right: -6%;
		top: 80vw;
	}
	#wave {
		top: 125vw;
	}
	#w1 {
		height: 73px;
		background-image: url(img/wave1.png);
		background-repeat: repeat-x;
		background-position: 0 0;
		background-size: cover;
	}
	#w2 {
		height: 73px;
		background-image: url(img/wave2.png);
		background-repeat: repeat-x;
		background-position: 0 0;
		background-size: cover;
	}

	
	#top_news {
		top: 115vw;
		max-width: 295px;
		padding: 15px 25px;
	}
	#top_news ul li a {
		flex-wrap: wrap;
		font-size: 12px;
	}
	#top_news ul li a .top_date {
		padding-right: 12px;
	}
	#top_news ul li a .top_newmark {
		width: 28px;
		height: 14px;
		font-size: 10px;
		border-radius: 2px;
		margin-right: 10px;
	}	
	#top_news ul li a .top_cat {
		padding-right: 0px;
		margin-right: 0px;
	}
	#top_news ul li a .top_cat::after {
		display: none;
	}
	#top_news ul li a .top_entry {
		display: block;
		width: 100%;
		padding-top: 5px;
	}
	

	#top_regular {
		right: auto;
		left: 0;
		top: 130vw;
		max-width: 295px;
		box-shadow: 0px 1px 2px rgba(0,0,0,0.16);
	}
	#top_regular.start {
		right: auto;
		left: -20px;
	}
	#top_regular .regularlink {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 15px 25px 10px;
		margin: 0 0 13px;
	}
	#top_regular .regularlink h2 {
		display: block;
		width: 100%;
		font-size: 13px;
		text-align: left;
		margin-bottom: 5px;
		padding: 0;
	}
	#top_regular .regularlink h2::before {
		left: -25px;
		width: 13px;
	}
	.top_regular_en {
		font-size: 9px;
		margin-left: 10px;
	}
	.top_regular_date {
		display: inline-block;
		width: 65px;
		font-size: 12px;
		font-weight: 600;
		margin-bottom: 0;
	}
	.top_regular_title {
		width: calc(100% - 65px);
		-webkit-line-clamp: 1;
		font-size: 12px;
	}
	.bn-consulting {
		max-width: 245px;
		margin-top: 0;
	}
	
	
	
	/*
	homeabout
	*/
	#homeabout {
		position: relative;
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#r_homeabout {
		padding: 270px 20px 110px;
	}
	#r_homeabout p {
		font-size: 15px;
		line-height: 1.8;
		margin-bottom: 30px;
	}
	#r_homeabout p.btn {
		margin-top: 60px;
	}
	.btn {
		max-width: 240px;
		margin: 0 auto;
	}
	.btn a,
	.btn3 {
		position: relative;
		font-size: 14px;
		font-weight: bold;
		padding: 15px 10px;
		color: #fff;
		background: url("img/arrow_r_white.png") 90% center / 5px 8px no-repeat,linear-gradient(45deg,  #1e4baf 0%,#3193e0 100%);
	}
	.btn3 {
		padding: 0;
	}
	.btn a::before,
	.btn a:hover::before,
	.btn3::before,
	.btn3:hover::before {
		animation: none;
	}
	.btn2 a {
		border: 1px solid #1e4baf;
	}
	
	
	.btn a::after,
	.btn2 a::after,
	.btn3::after {
		display: none;
	}
	
	
	/*
	homewhite
	*/
	#homewhite::before {
		top: -110px;
		height: 110px;
	}
	
	
	/*
	homeservice
	*/
	.home h2,
	.page-id-697 h2 {
		text-align: center;
		font-size: 35px;
		margin-bottom: 35px;
	}
	.home h2 .s_title,
	.page-id-697 h2 .s_title {
		font-size: 15px;
	}
	#l_homeservice {
		margin: 0 auto;
	}
	#servicetotal {
		display: none;
	}
	#homeservice .cbox {
		width: 100%;
	}
	#r_homeservice {
		width: 100%;
		background-image: url("img/bg_task_sp.png");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 412px 412px;
		min-width: 412px;
		min-height: 412px;
		padding: 0;
		margin-bottom: 0px;
		transform: none;
	}
	.hometask {
		display: block!important;
		width: 100%;
		max-width: 330px;
		margin: 0 auto;
		padding-top: 60px;
		transform: translateX(-5px);

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.hometask h3 {
		position: absolute;
		left: 20px;
		top: 50px;
		font-size: 12px;
	}
	.hometask h3 .task_title,
	.hometask h3 .task_no {
		font-size: 9px;
	}
	.hometask h3 .task_no {
		font-size: 39px;
		margin-bottom: 5px;
		padding-bottom: 5px;
	}
	.hometask h3 .task_no::before {
		width: 12px;
	}
	.task_img {
		width: 100%;
		max-width: 180px;
	}
	.task_naiyo {
		width: 100%;
		max-width: inherit;
		margin: 0 auto;
	}
	.task_naiyo p {
		width: 95%;
		font-size: 14px;
		margin: 0 auto;
	}
	.read_task {
		font-size: 18px;
		margin: 0 auto 115px;
	}	
	
	
	/*
	homeworkflow
	*/
	#bg_homeworkflow {
		padding: 45px 20px 70px;
	}
	#homeworkflow {
		padding-bottom: 50px;
	}
	.home #homeworkflow h2,
	.page-id-697 #homeworkflow h2 {
		margin-bottom: 30px;
	}
	#homeworkflow .read_home {
		font-size: 14px;
		margin-bottom: 10px;
	}
	#homeflowcontent {
		justify-content: flex-start;
		width: 1136px;
		padding: 0;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	#homeflowcontent::before {
		width: 1136px;
		height: 21px;
		left: -10px;
		transform: none;
		background-image: url("img/bg_workflow_sp.png");
		background-position: left center;
	}
	.flowbox {
		cursor: pointer;
	}
	.btn_swipe {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -70%);
		width: 145px;
		background-color: rgba(0,0,0,0.3);
		padding: 30px 20px;
		border-radius: 14px;
		z-index: 2;
		opacity: 0;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.btn_swipe.start {
		opacity: 0;
		animation: fadein 0.5s linear 0.5s forwards;
	}
	.btn_swipe.start.swipe {
		animation: fadeout 0.5s linear 0s forwards;
	}
	.homeflowbox {
		width: 230px;
		min-width: 230px;
		margin-right: 35px;
		padding: 0 10px;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.homeflowbox:first-child {
		margin: 0 45px 0 55px;
	}
	.flow_img {
		width: 180px;
		margin: 0 auto 5px;
	}
	.homeflowbox h3 {
		max-width: 125px;
		font-size: 12px;
		line-height: 1;
		padding: 9px 3px 6px;
		margin-bottom: 15px;
	}
	.homeflowbox h3::before {
		top: -25px;
		height: 25px;
	}
	.homeflowbox p {
		font-size: 14px;
		margin: 0;
	}
	.homeflowbox p.cap_homeflow {
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		font-size: 14px;
		font-weight: bold;
		line-height: 1.5;
		text-align: center;
		min-height: 40px;
		margin-bottom: 25px;
	}
	
	.bg_parallax {
		height: 53.3vw;
		margin-bottom: 65px;
		background-size: cover;
		background-attachment: inherit;
	}	
	.mobile .bg_parallax {
		background-attachment: inherit;
	}
	#homeimg01 {
		background-image: url("img/homeimg01.jpg");
		padding: 0;
		margin-bottom: 65px;
	}


	/*
	homeinformation
	*/
	.home #homeinformation h2,
	.page-id-697 #homeinformation h2 {
		font-size: 35px;
	}
	#homeinformation .cbox {
		display: block;
	}
	.homehalf {
		width: 100%;
		margin-bottom: 70px;
	}
	#homenews.homewide {
		max-width: inherit;
	}
	#homenews {
		padding-top: 0;
	}
	#homenews ul {
		width: 100%;
		margin: 0;
		padding: 0 0 20px;
	}
	#homenews ul li {
		width: 100%;
		display: block;
		margin: 0 0 35px;
		padding: 0;
	}
	#homenews ul li .entrydate,
	.blogcontent .entrydate {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	#homenews ul li a {
		width: 100%;
	}
	.btn_more {
		width: 100%;
		max-width: 125px;
		margin: 0 auto;
	}
	.btn_more a {
		display: block;
		font-size: 13px;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		width: 100%;
		border: 1px solid #C9C9C9;
		line-height: 1.5;
		background-image: url("img/arrow_r_gray.png");
		background-position: 90% center;
		background-repeat: no-repeat;
		background-size: 7px 10px;
		padding: 10px 0;
		transition: 0.3s;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.btn_more a:hover {
		color: #2e2e2e;
		border: 1px solid #C9C9C9;
		background: none;
		background-image: url("img/arrow_r_gray.png");
		background-position: 90% center;
		background-repeat: no-repeat;
		background-size: 7px 10px;
	}
	
	#homemovie {
		border-radius: 80px;
		padding: 50px 20px;
		margin-bottom: 70px;
	}
	#homemovie h2 {
		margin-bottom: 25px;
	}
	.read_homemovie {
		line-height: 2;
		margin-bottom: 25px;
	}
	.btn_channel a:hover {
		background-color: #F2F2F2;
	}
	
	

	/*#homeblog {
		width: 100%;
	}
	#homeblog.homehalf,
	#homeregular.homehalf {
		width: 100%;
		margin-bottom: 80px;
	}*/
	
	.blogcontent a {
		display: flex;
		justify-content: space-between;
		width: 100%;
		border-bottom: 1px solid #E0E0E0;
		padding-bottom: 20px;
		margin-bottom: 20px;
		text-decoration: none;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.blog_img {
		width: 36.8%;
	}
	.blogcontent .entrytitle {
		width: 56.8%;
		margin: 0;
		font-size: 14px;
	}
	
	
	#homerecruit {
		padding: 55px 0 45px;
	}
	#homerecruit .read_home {
		margin-bottom: 35px;
	}
	.linkmenu {
		display: block;
		max-width: 325px;
	}
	.linkmenu li {
		width: 100%;
	}
	
	
	/*
	about
	*/
	#page_topimage {
		margin-bottom: 60px;
	}
	#page_topimage figure {
		width: 87vw;
		padding-top: 35px;
	}
	#page_topimage figure img.start {
		animation: topimage 1s linear 0s forwards;
	}

	#page_topimage h1 {
		left: 20px;
		top: 0;
		bottom: auto;
	}
	#about01,
	#about02,
	#about03 {
		padding-bottom: 70px;
	}
	.l_ot,
	#about02 .l_ot {
		position: static;
		left: auto;
		top: auto;
		width: 100%;
		max-width: inherit;
		padding: 0 20px;
		margin-bottom: 40px;
	
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.l_ot h2 {
		margin: 0;
	}
	.l_ot h2 small {
		font-size: 11px;
		margin-bottom: 20px;
	}
	.l_ot h2 em {
		font-size: 11px;
		margin-left: 10px;
	}
	.read,
	.l_ot p {
		max-width: inherit;
	}
	.read790 {
		margin: 0 auto 45px;
	}
	.r_ot,
	#about02 .r_ot {
		width: calc(100% + 20px);
		margin: -20px 0 40px auto;
		min-width: inherit;
	}
	#about02 .r_ot {
		margin: -20px 0 40px;
	}

	.ot_sub {
		display: block;
		width: 100%;
		padding: 40px 20px;
		margin: 0;
	}
	#about02 .ot_sub {
		margin: 0;
	}
	.l_ot_sub {
		width: 70%;
		margin: 0 auto 25px;
	}
	#about02 .l_ot_sub {
		margin: 0 6vw 25px 6.5vw;
	}
	.r_ot_sub {
		width: 100%;
	}
	.r_ot_sub p.read_ot {
		text-align: center;
		font-size: 18px;
		margin-bottom: 20px;
	}
	.r_ot_sub p.btn {
		max-width: 240px;
		margin: 50px auto 0;
	}

	#about04 {
		padding-bottom: 70px;
	}
	#about04 h2 {
		margin-bottom: 15px;
	}
	#about04::before,
	#philosophy01::before {
		top: 25px;
		height: 50px;
		background-size: cover;
	}
	.read_about {
		font-size: 22px;
		margin-bottom: 30px;
	}
	.s_blue {
		font-size: 15px;
	}
	#aboutslide .slick-slide img {
		padding-right: 5px;
	}
	#about05 {
		padding-top: 50px;
	}
	.nextcontents {
		display: block;
		margin-bottom: 50px;
	}
	.l_nextcontents,
	.r_nextcontents {
		width: 100%;
		padding: 0;
	}
	.l_nextcontents h2 {
		text-align: center;
		margin-bottom: 10px;
	}
	.r_nextcontents p {
		margin: 0;
	}
	.r_nextcontents p.read_about {
		text-align: center;
		margin-bottom: 20px;
	}
	.episodelist {
		display: block;
	}
	.episodelist a img,
	.episodelist a {
		width: 100%;
	}
	.episodelist a {
		margin-bottom: 10px;
	}
	
	
	/*
	history
	*/
	#history {
		max-width: inherit;
		margin: 0 auto 100px;
		padding: 0 0 80px 35px;
	}
	#history::before {
		top: 25px;
	}
	#history::after {
		bottom: -30px;
	}

	#history dl dt {
		line-height: 2;
		margin: 30px 0 15px 0;
	}
	#history dl:first-child dt {
		margin: 0 0 15px;
	}
	#history dl dt:first-child {
		margin: 35px 0 15px 0;
	}
	#history dl dt::before,
	#history dl dt::after {
		left: -39px;
	}
	#history dl dt::after {
		width: 30px;
	}
	#history dl dt .h_year {
		font-size: 28px;
		margin-right: 10px;
	}
	#history dl dt.l_year  {
		margin-bottom: 20px;
	}
	#history dl dt.l_year .h_year {
		font-size: 44px;
	}
	#history dl dt small {
		font-size: 11px;
		padding-top: 5px;
	}

	#history dl dd {
		position: relative;
		font-size: 14px;
	}	
	#history dl dd:last-child {
		margin: 0 0 40px;
	}
	#history dl dd span {
		width: calc(100% - 60px);
	}
	#history dl dd .h_month {
		width: 60px;
	}
	#history dl dd.l_shosai{
		font-size: 22px;
		margin-bottom: 40px;
	}

	.highlight {
		padding: 30px 0;
		margin-bottom: 15px;
	}
	.highlight h2 {
		font-size: 16px;
		margin-bottom: 15px;
	}
	.highlight h2 small {
		font-size: 11px;
		margin-bottom: 10px;
	}
	.highlightbox {
		display: block;
	}
	.l_highlight,
	.highlightbox_wide .l_highlight {
		width: 100%;
	}
	.l_highlight {
		margin-bottom: 40px;
	}
	.l_highlight p {
		font-size: 13px;
	}
	.r_highlight {
		width: 66.6%;
		margin: 0 auto;
	}
	
	
	/*
	episode
	*/
	.show .bg_ep::before {
		top: 65px;
		transform: scale(1);
		animation: none;
	}
	#ep_bg01::before {
		background-image: url(img/bg_ep01_sp.jpg);
	}
	#ep_bg02::before {
		background-image: url(img/bg_ep02_sp.jpg);
	}
	#ep_bg03::before {
		background-image: url(img/bg_ep03_sp.jpg);
	}
	#ep_bg04::before {
		background-image: url(img/bg_ep04_sp.jpg);
	}
	#ep_bg05::before {
		background-image: url(img/bg_ep05_sp.jpg);
	}
	#ep_bg06::before {
		background-image: url(img/bg_ep06_sp.jpg);
	}
	#ep_bg07::before {
		background-image: url(img/bg_ep07_sp.jpg);
	}
	#ep_bg08::before {
		background-image: url(img/bg_ep08_sp.jpg);
	}
	#ep_bg09::before {
		background-image: url(img/bg_ep09_sp.jpg);
	}
	.episode-title h1 {
		max-width: inherit;
	}
	.episode-naiyo {
		width: 100%;
		margin: 0 auto 500px;
	}
	.episode-naiyo02 {
		max-width: inherit;
	}
	.episode-naiyo h2 {
		letter-spacing: 0.2em;
		font-size: 20px;
		margin: 0 0 60px;
	}
	.episode-naiyo h2 small {
		font-size: 20px;
		margin-bottom: 25px;
	}
	.episode-naiyo p {
		max-width: inherit;
		font-size: 15px;
		margin: 0;
	}
	.episodeend {
		padding: 100px 0 120px;
	}
	.episodeend::before {
		top: -400px;
		height: 400px;
	}
	.episodeend figure {
		width: 64.3%;
		margin: 0 auto;
	}

	.next-episode a {
		flex-wrap: wrap;
		padding: 150px 20px;
		background: none;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
		transition: 0;
	}
	.next-episode a::before {
		display: none;
	}
	#ne02 a {
		background-image: url(img/bg_ep04_sp.jpg);
	}
	#ne03 a {
		background-image: url(img/bg_ep07_sp.jpg);
	}
	.next-episode h2 {
		width: 100%;
		font-size: 18px;
		margin-bottom: 10px;
	}
	.next-episode h2 small,
	.next-episode h2 small em {
		font-size: 13px;
	}
	.next-episode a h2 {
		color: #fff;
	}
	.viewmore {
		color: #fff;
		width: 100%;
		max-width: 140px;
		font-size: 12px;
		font-family: 'Montserrat', sans-serif;
		border-radius: 20px;
		text-align: center;
		border: 1px solid #fff;
		margin: 0 auto;
		padding: 6px;
	
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	#ne04 {
		padding: 100px 0;
	}
	#ne04 h2 {
		line-height: 1.5;
		margin-bottom: 10px;
		padding: 0;
	}
	#ne04 h2 small {
		font-size: 14px;
	}
	#ne04 .btn {
		max-width: 495px;
		margin: 0 auto;
	}
	
	
	
	
	
	/*
	service
	*/
	#service_img01 {
		padding: 50px 0;
		margin: 60px 0 0;
	}
	#service02 {
		width: calc(100% - 40px);
		max-width: 1200px;
		margin: 0 auto;
	}
	.backoffice {
		display: flex;
		flex-direction: column-reverse;
	}
	.l_backoffice {
		width: 115%;
		margin: 0;
		transform: translateX(-6%);
	}
	.r_backoffice {
		position: static;
		right: auto;
		top: auto;
		transform: none;
		width: 100%;
		margin: 0 auto 40px;
	}
	#service01 .read {
		max-width: inherit;
	}
	#service01 h2,
	.r_backoffice h2 {
		font-size: 22px;
		line-height: 1.6;
		margin-bottom: 10px;
	}
	
	#detailmenu ul li {
		width: 100%;
		margin: 0 0 15px;
	}
	#detailmenu ul li a {
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: left;
		font-size: 20px;
		padding: 35px 10px;
	}
	#detailmenu ul li a:hover {
		background: none;
	}
	#detailmenu ul li a .detail-img {
		width: 80px;
		margin: 0;
	}
	#detailmenu ul li a .detail-shosai {
		display: block;
		width: 40%;
		max-width: 165px;
		margin-left: 20px;
	}
	#detailmenu ul li a small {
		padding-bottom: 5px;
		margin-top: 15px;
	}
	#detailmenu ul li a:hover small {
		letter-spacing: 0;
	}
	#detailmenu ul li a small::before {
		left: 0;
		transform: none;
	}
	#detailmenu ul li a:hover small::before {
		width: 70px;
	}
	
	
	/*
	consulting
	*/
	#service-content {
		position: relative;
		padding-top: 0px;
	}
	.sctitle {
		text-align: left;
	}
	.servicemenu {
		position: static;
		top: auto;
		width: calc(100% - 40px);
		background-color: #fff;
		padding: 25px 0 15px;
		box-shadow: none;
		margin: 0 auto;
	}
	.servicemenu ul {
		display: block;
	}
	.servicemenu ul li {
		width: auto;
		margin: 0 0 10px;
	}
	
	.service-naiyo {
		width: calc(100% + 40px);
		padding: 45px 20px;
		margin: 0 0 40px -20px;
		border-radius: 0;
	}
	.service-naiyo h3 {
		font-size: 22px;
	}

	.service-kadai {
		padding: 40px 20px;
	}
	.service-kadai h4,
	h4.feature-title {
		font-size: 22px;
		margin: 0 auto 30px;
	}
	.service-kadai ul {
		margin: 0;
		padding: 0;
	}
	.service-kadai ul li {
		font-size: 15px;
		background-position: 25px center;
		background-size: 20px 16px;
		padding: 25px 25px 25px 55px;
	}
	h4.feature-title {
		margin-bottom: 40px;
	}
	.service-feature {
		display: block;
	}
	.featurelist {
		width: 100%;
		padding: 30px 20px;
		border: none;
		border-bottom: 1px solid #C9C9C9;
		min-height: inherit;
	}
	.featurelist:nth-child(1) {
		padding: 0 20px 30px;
	}
	.featurelist:nth-child(3) {
		padding: 30px 20px;
		border-bottom: 1px solid #C9C9C9;
	}
	.featurelist h5 {
		min-height: inherit;
		font-size: 20px;
		margin: 0 auto 20px;
	}
	.featurelist h5::before {
		font-size: 16px;
	}
	.bnc-center {
		max-width: 245px;
		margin: 40px auto 0;
	}
	
	
	/*
	company
	*/
	.page-id-16 #topimage h1 {
		margin-bottom: 20px;
	}
	.naiyo {
		margin: 0 auto;
		padding: 50px 0;
	}
	#message01 .naiyo {
		padding: 0 0 50px;
	}
	.pagemenu {
		width: 100%;
		background-color: #E9EAE4;
		padding: 50px 0;
	}
	.pagemenu h2 {
		font-size: 20px;
		margin-bottom: 40px;
	}
	.pagemenu h2 small {
		font-size: 13px;
	}
	.pagemenu ul {
		width: calc(100% - 40px);
		margin: 0 auto;
		flex-wrap: wrap;
	}
	#companymenu ul li {
		width: 100%;
		margin: 0 auto 25px;
	}
	#companymenu ul li a {
		font-size: 14px;
		padding: 15px 0;
	}
	#companymenu ul li a {
		background-position: 95% center;
	}
	#companymenu ul li a:hover {
		background-color: #E9EAE4;
		background-position: 95% center;
	}	
	
	
	/*
	philosophy
	*/
	.philosophylist {
		justify-content: center;
		max-width: 525px;
		margin: 0 auto 40px;
	}
	.philosophylist li {
		font-size: 24px;
		border-bottom: 5px solid #E9EAE4;
		padding: 0 0 10px;
		margin: 0 10px;
	}
	.company_shosai {
		padding-top: 40px;
	}
	#message01 .company_shosai {
		padding-top: 30px;
	}
	.company_shosai p.read_philosophy {
		font-size: 18px;
		margin: 0 auto 40px;
	}
	#philosophy01::before {
		top: 180px;
		transform: none;
	}
	#philosophy01 .naiyo {
		padding: 55px 0 0;
	}
	#philosophy02 .naiyo {
		padding: 75px 0;
	}
	.company_shosai p.read_philosophy02 {
		font-size: 16px;
	}
	.corevaluelist {
		max-width: none;
	}
	.corevaluelist li {
		font-size: 16px;
		padding: 15px 0 15px 3em;
	}
	.corevaluelist li::before {
		font-size: 18px;
	}	
	
	
	/*
	outline
	*/
	.naiyo03 {
		padding: 30px 0;
	}
	#outlinemenu {
		padding: 25px 0;
		margin-bottom: 40px;
	}
	#outlinemenu ul {
		width: 100%;
		max-width: 160px;
		margin: 0 auto;
		flex-wrap: wrap;
	}
	#outlinemenu ul li {
		width: 100%;
		margin: 0 0 20px;
	}
	#outlinemenu ul li:last-child {
		margin: 0;
	}
	
	#outline02 {
		padding: 55px 0 10px;
		margin-bottom: 60px;
	}
	#outline02 h2,
	#outline02 h3 {
		font-size: 20px;
	}
	#outline02 h3 {
		font-size: 18px;
	}
	.office {
		display: block;
	}
	.officelist {
		margin-bottom: 40px;
	}
	.officelist02 {
		width: 100%;
	}

	#outline03 h2 {
		font-size: 18px;
		padding: 0 0 20px;
		margin-bottom: 30px;
	}
	.partnerlist {
		display: block;
		margin-bottom: 50px;
	}
	.partnerlist ul,
	.partnerlist ul:nth-child(2) {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	
	
	/*
	culture
	*/
	#culture01 {
		padding: 50px 0 60px;
	}
	.culturelist {
		display: block;
	}
	.culturebox {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
		margin: 0 auto 40px;
		padding-bottom: 40px;
		border-bottom: 1px solid #ccc;
	}
	.culturebox:nth-child(3n) {
		margin: 0 auto 40px;
	}
	.culture_img {
		display: block;
		margin: 0 auto 25px;
		order: 2;
	}
	.culture_img img {
		width: 100%;
	}
	.culturebox h2 {
		font-size: 20px;
		margin: 0 0 25px;
		min-height: inherit;
		line-height: 1.6;
		order: 1;
	}
	.culturebox p {
		order: 3;
	}
	.bikou {
		max-width: inherit;
		margin: 0 0 0 auto;
	}	
	

	
	/*
	recruit
	*/
	#recruit01 {
		padding-top: 30px;
	}
	#recruit01 h2 {
		font-size: 22px;
		margin-bottom: 40px;
	}

	#recruit01.recruit01 {
		margin-bottom: 10vw;
	}
	#recruit01.recruit01,
	.load_recruit,
	.recruit_topbox {
		height: 100vh;
	}	

	.load_circle {
		width: 64.8%;
		margin: 0 auto;
		text-align: center;
	}
	.load_a {
		width: 43.5%;
		margin: 0 auto;
		text-align: center;
	}

	.recruit01 img {
		width: auto;
	}
	.recruit_top01 {
		width: 100%
	}
	.recruit_toptxt0101 {
		top: calc(50% - 42%);
		left: calc(50% - 54%);
		width: 68%;
	}
	.recruit_toptxt0102 {
		width: 51.2%;
		top: calc(50% - 39%);
		left: calc(50% - 46%);
	}
	.recruit_toptxt0103 {
		display: none;
	}
	.recruit_topimage0101 {
		width: 48.2%;
		top: calc(50% - 39%);
		left: calc(50% - 51%);
	}
	.recruit_topimage0102 {
		display: none;
	}

	.recruit_top02 {
		width: 100%;
	}
	.recruit_toptxt0201 {
		width: 42.1%;
		top: calc(50% - 30%);
		left: calc(50% - -14%);
	}
	.recruit_toptxt0202 {
		width: 36%;
		top: calc(50% - 29%);
		left: calc(50% - -34%);
	}
	.recruit_topimage0201 {
		display: none;
	}
	.recruit_topimage0202 {
		width: 16%;
		top: calc(50% - 43%);
		left: calc(50% - -22%);
	}

	.recruit_top03 {
		display: none;
	}

	.recruit_top04 {
		width: 100%;
	}
	.recruit_toptxt0401 {
		width: 46.7%;
		top: calc(50% - -2%);
		left: calc(50% - -21%);
	}
	.recruit_toptxt0402 {
		width: 46.7%;
		top: calc(50% - -4%);
		left: calc(50% - -30%);
	}
	.recruit_topimage0401 {
		width: 52.8%;
		left: calc(50% - 65%);
		top: calc(50% - -3%);
	}

	.recruit_top05 {
		width: 100%;
	}
	.recruit_toptxt0501 {
		width: 78.7%;
		top: calc(50% - -27%);
		left: calc(50% - 35%);
	}
	.recruit_toptxt0502 {
		width: 76.8%;
		top: calc(50% - -34%);
		left: calc(50% - 22%);
	}
	.recruit_topimage0501 {
		width: 73.1%;
		right: auto;
		left: calc(50% - 12%);
		top: calc(50% - -15%);
	}
	
	.recruit-content h2 {
		font-size: 12px;	
		margin-bottom: 25px;
	}
	.en_recruit {
		font-size: 32px;
	}
	.rt_s .en_recruit {
		margin-bottom: 10px;
	}
	#recruit02 {
		padding: 30vw 20px 38vw;
	}
	.recruit-content #recruit02 h2 {
		font-size: 18px;
		text-align: left;
		margin-bottom: 0;
		z-index: 10;
	}
	.recruit-content #recruit02 h2 .en_recruit {
		font-size: 18px;
	}
	.read_recruitmessage {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		font-size: 27px;
		text-align: center;
		line-height: 1.1;
		writing-mode: vertical-rl;		
		text-orientation: upright;
		vertical-align: middle;
		margin-bottom: 60px;
		text-shadow: none;
	}
	.messagebox {
		width: 100%;
	}
	.messagebox p {
		max-width: 400px;
		margin: 0 auto;
		font-size: 13px;
		line-height: 2;
	}

	.message_img01 {
		top: 40vw;
		left: -20%;
		width: 53.9%;
	}
	.message_txt01 {
		width: 40.5%;
		top: 90vw;
		left: -22.7%;
	}
	.message_txt02 {
		width: 16%;
		top: 20vw;
		right: -4%;
	}
	.message_txt03 {
		width: 16%;
		top: 117vw;
		left: 0;
		right: auto;
	}
	.message_img0201 {
		top: 59.8vw;
		right: 7.7%;
		width: 25.3%;
		z-index: 3;
	}
	.message_img0202 {
		top: 26.8vw;
		right: 1.3%;
		width: 17.3%;
		z-index: 2;
	}
	
	#recruit03 {
		padding-bottom: 65px;
	}
	.interview_img01,
	.interview_txt01,
	.interview_txt02,
	.interview_txt03{
		display: none;
	}
	.interview_img02 {
		width: 34.7%;
		top: -4.7%;
		left: 50.7%;
	}
	.interviewbox {
		padding: 12vw 0 35px;
		width: 95.5%;
		min-width: inherit;
	}
	.interviewbox h2 {
		margin-left: 20px;
	}
	.interview_top {
		width: 90.5%;
		margin-bottom: 35px;
	}
	.interview_top:last-child {
		margin-bottom: 0;
	}
	.interview_topimage {
		margin-bottom: 10px;
	}
	.read_interview_top01 {
		width: 88.8%;
	}
	.read_interview_top02 {
		width: 100%;
		top: 14%;
	}
	.read_interview_top03 {
		width: 62.6%;
		top: 8%;
	}
	.read_interview_top04 {
		width: 89.1%;
		top: 39.5%;
	}

	.interview_head {
		position: static;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.interview_head.txt_white {
		color: #191919;
	}
	.interview_top01 .interview_head {
		left: auto;
		bottom: auto;
	}
	.interview_top02 .interview_head {
		top: auto;
		right: auto;
	}
	.interview_top03 .interview_head {
		right: auto;
		bottom: auto;
	}
	.interview_top04 .interview_head {
		left: auto;
		bottom: auto;
	}
	.interview_top01 .interview_head,
	.interview_top03 .interview_head {
		justify-content: flex-end;
	}
	
	.interview_job {
		display: block;
		width: 100%;
		margin-bottom: 0;
	}
	.interview_top01 .interview_job,
	.interview_top03 .interview_job {
		text-align: right;
	}
	.interview_nendo {
		font-size: 10px;
		width: 110px;
		height: 22px;
		border: 1px solid #303339;
		border-radius: 13px;
		margin: 0 10px 0 0;
	}
	.interview_head.txt_white .interview_nendo {
		border: 1px solid #303339;
	}
	.interview_name {
		font-size: 18px;
	}

	.interview_slide {
		display: block!important;
		height: 100vh;
		height: 100dvh;
		overflow-x: hidden;
		overflow-y: auto;
	}
	.interview_img_l {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		height: auto;
	}
	.interview_img_l::after {
		position: absolute;
		right: -5px;
		top: auto;
		bottom: 0;
		transform: translateY(50%);
	}
	.r_interview {
		width: 100%;
		padding: 25px 20px 0;
		overflow: visible;
	}
	.r_interview_content {
		width: 100%;
		max-width: inherit;
		margin: 0;
		padding-bottom: 130px;
	}
	.read_interview_r {
		font-size: 30px;
		margin-bottom: 30px;
	}
	.r_interview .interview_head {
		margin-bottom: 30px;
	}
	.interview_shosai {
		margin-bottom: 55px;
	}
	.interview_shosai h3 {
		font-size: 18px;
		line-height: 1.6;
		margin-bottom: 30px;
	}
	.interview_shosai p {
		font-size: 14px;
		line-height: 1.8;
	}
	.watashino {
		margin-bottom: 20px;
	}
	.l_watashino {
		width: 63.5%;
		justify-content: flex-start;
	}
	.watashino_img {
		width: 35.5%;
		margin-right: 7%;
	}
	.read_watashino {
		font-size: 18px;
	}
	.icon_watashino {
		width: 29.5%;
	}
	.f_watashino {
		width: calc(100% + 40px);
		padding: 35px 20px;
		transform: translateX(-20px);
		border-left: none;
		border-right: none;
	}
	.f_watashino p {
		width: 51.5%;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.8;
		margin: 0;
	}
	.watashino_photo {
		width: 38.9%;
	}
	.interview_bottom {
		position: fixed;
		left: 0;
		bottom: 66px;
		width: 100vw;
		height: 54px;
	}
	.admin-bar .interview_bottom {
		bottom: 110px;
	}
	#recruit04 {
		margin-bottom: 55px;
	}
	.recruit_title {
		display: block;
		margin: 0 auto 30px;
	}
	.recruit-content .recruit_title h2 {
		display: block;
		margin-bottom: 25px;
	}
	.read_recruit_title,
	#recruit05 .read_recruit_title {
		font-size: 15px;
	}
	.u_txt {
		position: relative;
		border-bottom: 4px solid #191919;
		padding-bottom: 5px;
	}
	.bg_aboutus {
		position: relative;
		left: -20px;
		bottom: auto;
		width: calc(100% + 40px);
		height: 36.3vw;
	}

	.aboutusbox {
		position: relative;
		display: block;
		margin: -20px auto 50px;
		z-index: 1;
	}
	.aboutuslist {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		width: calc(100% + 20px);
		border: 5px 0 0 5px;
		padding: 20px 30px 30px;
		transform: translateX(-15px);
		margin: 0 0 15px;
	}
	.aboutuslist.start {
		transform: translateX(0);
	}
	.icon_aboutus {
		position: relative;
		display: inline-block;
		width: 18.4%;
		min-height: inherit;
		margin-bottom: 15px;
		order: 2;
	}
	.icon_aboutus02 figure {
		max-width: inherit;
		margin: 0;
	}

	.aboutuslist h3 {
		font-size: 16px;
		text-align: left;
		line-height: 1.6;
		margin-bottom: 15px;
		order: 1;
	}
	.aboutuslist p {
		width: 100%;
		font-size: 13px;
		line-height: 1.8;
		order: 3;
	}
	.btn_recruit {
		height: 50px;
		max-width: 300px;
	}
	.btn_recruit_s {
		height: 50px;
		max-width: 215px;
	}
	.btn_recruit a {
		font-size: 14px;
	}
	.btn_recruit a:hover {
		letter-spacing: 0;
	}
	.btn_recruit a::before,
	.btn_recruit a:hover::before {
		width: 22px;
	}
	.btn_txt {
		padding-right: 25px;
	}
	
	#recruit05 {
		padding: 0 20px 0;
	}
	#recruit05 .recruit_title {
		min-width: inherit;
	}
	.recruit_culturebox {
		display: block;
		min-width: inherit;
	}
	.recruit_culture {
		width: 100%;
	}
	.recruit_culture:nth-child(odd) {
		margin-left: 0;
	}
	.recruit_culture01,
	.recruit_culture02,
	.recruit_culture03,
	.recruit_culture04,
	.recruit_culture05,
	.recruit_culture06,
	.recruit_culture07,
	.recruit_culture08,
	.recruit_culture09 {
		margin: 0 auto;
	}

	.recruit_culture_no {
		right: auto;
		left: 0;
		font-size: 68px;
	}
	.recruit_culture_img {
		transform: rotate(0deg);
		margin: 0 auto;
		animation: none;
	}
	.recruit_culture:hover .recruit_culture_img {
		animation: none;
	}
	.recruit_culture01 .recruit_culture_img {
		width: 82.6%;
		margin-left: 5.8%;
	}
	.recruit_culture02 .recruit_culture_img {
		width: 59.7%;
		margin-left: 29%;
	}
	.recruit_culture02 .recruit_culture_img img {
		transform: none;
	}
	.recruit_culture03 .recruit_culture_img {
		width: 88.1%;
	}
	.recruit_culture04 .recruit_culture_img {
		width: 50%;
	}
	.recruit_culture05 .recruit_culture_img img {
		transform: none;
	}
	.recruit_culture05 .recruit_culture_img {
		width: 88.1%;
	}
	.recruit_culture06 .recruit_culture_img {
		width: 88.1%;
	}
	.recruit_culture06 .recruit_culture_img img {
		transform: none;
	}
	.recruit_culture07 .recruit_culture_img {
		width: 70%;
	}
	.recruit_culture08 .recruit_culture_img {
		width: 50%;
	}
	.recruit_culture08 .recruit_culture_img img {
		transform: none;
	}
	.recruit_culture09 .recruit_culture_img {
		width: 70%;
	}

	.recruit_culture:nth-child(even) .read_recruit_culture,
	.recruit_culture:nth-child(even) .tag_recruit_culture {
		justify-content: flex-start;
	}
	.rc_box {
		position: relative;
		z-index: 3;
		transform: translateY(-100%);
	}
	.recruit_culture01 .read_recruit_culture,
	.recruit_culture02 .read_recruit_culture,
	.recruit_culture03 .read_recruit_culture,
	.recruit_culture04 .read_recruit_culture,
	.recruit_culture05 .read_recruit_culture,
	.recruit_culture06 .read_recruit_culture,
	.recruit_culture08 .read_recruit_culture,
	.recruit_culture09 .read_recruit_culture {
		margin-top: 0;
	}

	.read_recruit_culture p {
		font-size: 14px;
		text-align: left;
	}
	.recruit_culture:hover .read_recruit_culture p {
		color: #fff;
	}
	.read_recruit_culture p span {
		padding: 5px 10px;
	}
	.read_recruit_culture p span::after {
		display: none;
	}
	.tag_recruit_culture li {
		font-size: 10px;
		margin: 5px 0 0 15px;
	}
	.recruit_culture:nth-child(even) .tag_recruit_culture li {
		margin: 5px 15px 0 0;
	}
	.recruitculture_txt01 {
		display: none;
	}

	.culture_slide {
		display: block!important;
		width: 100%!important;
		height: 100vh;
		height: 100dvh;
		overflow-y: auto;
	}
	.l_rc {
		width: 100%;
		height: 100vh;
		padding: 25px 20px 0;
	}
	.l_rc p {
		font-size: 14px;
		line-height: 1.8;
		letter-spacing: 0;
	}
	.tag_rc li {
		font-size: 12px;
	}
	.l_rc p.read_rc {
		font-size: 26px;
		line-height: 1.4;
		text-align: center;
		margin-bottom: 25px;
	}
	.r_rc {
		position: relative;
		width: 100%;
		margin-bottom: 30px;
	}
	.rc_bottom {
		width: 1px;
		height: 150px;
	}
	.l_rc p.rc_no {
		right: auto;
		left: 0;
		font-size: 68px;
		font-weight: 700;
	}
	.l_rc p.cap_rc {
		font-size: 12px;
	}
	#rc06 .cap_rc,
	#rc07 .cap_rc {
		transform: none;
	}

	#recruit06 {
		padding-bottom: 60px;
	}
	.recruit-content h2.rt_center {
		text-align: left;
		margin-bottom: 25px;
	}

	.requirements_scroll {
		width: 100%;
		height: 100%;
		padding: 0 20px 10px;
		overflow-y: visible;
	}
	.requirements_scroll table th,
	.requirements_scroll table td {
		display: table-cell;
		padding: 20px 0;
	}
	.requirements_scroll table th {
		width: 85px;
		font-size: 14px;
		vertical-align: top;
	}	
	.requirements_scroll table td {
		width: calc(100% - 105px);
		font-size: 13px;
		padding-left: 20px;
	}
	
	
	#recruit07 {
		padding-bottom: 60px;
	}
	.read_entry {
		font-size: 14px;
		text-align: left;
		margin-bottom: 30px;
	}
	#recruitform table th,
	#recruitform table td {
		font-size: 14px;
	}
	#recruitform table th {
		padding: 0 0 5px;
	}
	#recruitform table td {
		padding: 0 0 30px;
	}
	#recruitform table td.check_doui {
		padding-bottom: 0;
	}	
	#recruitform input#zip1 {
		width: 30%;
	}
	#recruitform input#zip2 {
		width: 35%;
	}
	.doui_txt {
		font-size: 14px;
		line-height: 1.8;
		padding-top: 20px;
		text-align: left;
	}

	#recruit08 {
		padding: 40px 20px 60px;
	}
	#recruit08 .btn_recruit {
		margin: 0 auto;
	}
	.recruit_blog {
		display: block;
	}
	.l_recruit_blog {
		width: 100%;
	}
	.r_recruit_blog {
		width: 100%;
		margin-bottom: 25px;
	}
	.btn_recruittop {
		display: none;
	}
	
	
	
	
	/*
	news
	*/
	.entrylink {
		display: block;
	}
	.entry-image,
	.entrylink02 .entry-image,
	.entry-shosai,
	.entrylink02 .entry-shosai {
		width: 100%;
	}
	.entry-image {
		margin-bottom: 30px;
	}
	.entry-image img {
		width: 100%;
	}
	.entry-shosai02 {
		padding: 20px;
		margin-bottom: 40px;
	}
	.entry-shosai h2,
	.entry-shosai02 h2 {
		font-size: 18px;
	}

	
	/*
	policy
	*/
	.policy {
		padding: 0 0 50px;
	}
	.policy:first-child {
		padding: 0 0 50px;
	}
	.policy h2 {
		font-size: 20px;
		margin: 0 0 25px;
	}
	.policy h3 {
		font-size: 15px;
		margin: 0 0 5px;
	}

	/*
	#secondary
	*/
	.sidemenu h2 {
		font-size: 18px;
		margin: -2px 0 25px;
	}
	#secondary .sidemenu ul li a {
		font-size: 15px;
	}

	
	
	/*
	contanct
	*/
	#contact01 {
		padding: 0 0 40px;
	}
	.read_contact {
		text-align: center;
	}
	#contact01 h2,
	#contact02 h2 {
		font-size: 18px;
		line-height: 1.6;
	}
	#telbox {
		display: block;
		max-width: inherit;
	}
	.tellist {
		width: 100%;
		padding: 20px 10px;
		margin: 0 auto 15px;
	}
	.tel_office {
		line-height: 1.5;
	}
	.tel_office span,
	.tel_office .dummyclass {
		font-size: 22px;
	}

	.cap_contact {
		font-size: 14px;
		margin-bottom: 20px;
	}
	.t_contact th,
	.t_contact td {
		font-size: 14px;
	}
	.t_contact td.t_contact_naiyo {
		display: block;
	}
	.contact_naiyo {
		padding-top: 0px;
	}
	.contact_naiyo h3 {
		font-size: 14px;
		margin-bottom: 10px;
	}
	.contact_naiyo:nth-child(1),
	.contact_naiyo:nth-child(2),
	.contact_naiyo:nth-child(3) {
		width: 100%;
		margin-bottom: 25px;
	}
	.contact_naiyo:nth-child(3) {
		margin-bottom: 0;
	}
	.contact_naiyo:nth-child(1) h3 {
		border-left: 3px solid #005FAC;
	}
	.contact_naiyo:nth-child(2) h3 {
		border-left: 3px solid #E07263;
	}
	.contact_naiyo:nth-child(3) h3 {
		border-left: 3px solid #71B74F;
	}
	.wpcf7-list-item-label {
		font-size: 14px;
	}
	#your-dounyu {
		display: block;
	}
	#your-dounyu .wpcf7-list-item {
		display: block;
		width: 100%;
	}
	.t_contact td.t_jyusho {
		display: block;
		padding-right: 0;
	}
	.jyusho {
		width: 100%;
		margin: 0 auto 20px;
	}
	.jyusho:nth-child(2n),
	.jyusho:nth-child(3) {
		margin: 0 auto 20px;
	}
	.jyusho:nth-child(4) {
		margin: 0 auto;
	}
	
	.contact_privacy {
		padding: 20px;
	}
	.contact_privacy h3 {
		font-size: 14px;
		margin-bottom: 20px;
	}
	.btn3 input[type="submit"],
	.btn3 input[type="button"] {
		color: #fff;
	}
	
	.btn_confirm::before,
	.btn_back::before,
	.btn_entry::before {
		top: 70px;
		font-size: 13px;
	}
	.btn_confirm.active:hover::before,
	.btn_entry:hover::before,
	.btn_back:hover::before {
		color: #191919;
	}

	#recruitform input[type="submit"], 
	#recruitform input[type="button"] {
		font-size: 25px;
		padding: 30px 10px 50px;
		border: 3px solid #191919;
	}
	#recruitform input[type="submit"]:hover, 
	#recruitform input[type="button"]:hover {
		color: #191919;
		background: none;
	}
	
	/*
	footer
	*/
	#footer {
		position: relative;
		width: 100%;
		color: #fff;
		background-image: url(img/bg_footer.jpg);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		margin: 0;
		padding: 65px 0 0;
		z-index: 3;

		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.footer {
		padding-left: 0;
	}	
	#logo_footer {
		max-width: 250px;
		text-align: center;
		margin: 0 auto 45px;
	}
	#siteinfo {
		display: block;
		margin-bottom: 45px;
	}
	.siteinfo {
		display: block;
		padding: 45px 0 25px;
	}
	.l_footer,
	#l_footer,
	.r_footer {
		width: 100%;
	}
	#l_footer p {
		text-align: center;
	}
	.l_footer {
		margin-bottom: 25px;
	}
	.logo_recruit_footer {
		margin-bottom: 10px;
	}
	.footer_company02 {
		margin-bottom: 20px;
	}	
	.footer_address {
		font-size: 14px;
	}
	.footer_map a:hover {
		text-decoration: none;
	}
	#r_footer {
		display: none;
	}
	#footer .btn2 {
		margin-bottom: 15px;
	}
	#footer .btn2 a {
		display: flex;
		align-items: center;
		justify-content: center;
		border: none;
		height: 60px;
		padding: 0 10px;
	}
	#footer .btn2 a:hover {
		border: none;
	}
	#footer .btn2 a:hover {
		background: url(img/arrow_r_white.png) 90% center / 5px 8px no-repeat,linear-gradient(45deg, #1e4baf 0%,#3193e0 100%);
	}
	
	.footer_youtube {
		position: relative;
		right: auto;
		bottom: auto;
		max-width: 240px;
		margin: 0 auto 45px;
	}
	.footer_youtube a {
		font-size: 14px;
	}
	.footer_youtube a:hover::before {
		opacity: 1;
	}
	.footer_youtube a::after {
		display: none;
	}
	.footer_youtube a .footer_youtube_txt {
		padding-left: 30px;
		padding-top: 1px;
	}
	.footer_youtube a .footer_youtube_txt {
		height: 15px;
		line-height: 1;
		background-size: 22px 15px;
	}
	.footer_youtube a:hover .footer_youtube_txt {
		background-image: url("img/icon_youtube_white.svg");
	}
	
	.footer_banner {
		gap: 10px 0;
	}
	.footer_banner li:nth-child(1) {
		width: 55.6%;
	}
	.footer_banner li:nth-child(2) {
		width: 42.7%;
	}
	.footer_banner li.bn_winc {
		width: 55.6%;
		max-width: inherit;
	}
	.footer_banner li img {
		width: 100%;
	}
	
	
	#footerbottom,
	.admin-bar #footerbottom {
		padding: 35px 0 15px;
	}
	.footerbottom {
		background-color: #191919;
		padding: 25px 0;
	}
	.admin-bar .footerbottom {
		padding: 25px 0 70px;
	}
	#footerbottom .cbox,
	.footerbottom .cbox{
		display: block;
	}
	.footerbottommenu ul {
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 35px;
	}
	.footer_recruitmenu ul {
		display: block;
	}
	.footer_recruitmenu li a {
		padding: 0 20px 0 0;
		border: none;
	}
	#copyright {
		width: 100%;
		font-size: 12px;
		text-align: center;
	}
	
	
	
}


@media only screen and (max-width: 500px) {
	
	#recruit02 {
		padding: 5vw 20px 28vw;
	}
	.message_img01 {
		top: 9%;
	}
	.message_txt01 {
		top: 33%;
	}
	.message_txt02 {
		top: 0;
	}
	.message_txt03 {
		top: 67%;
	}
	.message_img0201 {
		top: 44.8vw;
		right: 10.7%;
	}
	.message_img0202 {
		top: 16.8vw;
	}
	
}

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

	#los01 {
		top: 90vw;
	}
	#wave {
		top: 155vw;
	}
	#top_news {
		top: 112vw;
	}
	#top_regular {
		top: 132vw;
	}

}

@media only screen and (max-width: 420px) {
	
	#detailmenu ul li a .detail-shosai {
		width: 55%;
		max-width: inherit;
	}
}


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

	#r_homeservice {
		padding-right: 20px;
	}

}


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

	/*
	homeservice
	*/
	#r_homeservice {
		background-size: 330px 330px;
		min-width: 330px;
		min-height: 330px;
	}
	.hometask {
		max-width: 280px;
		transform: none;
	}
	.hometask h3 {
		left: 25px;
		top: 35px;
		font-size: 12px;
	}
	.hometask h3 .task_no {
		font-size: 30px;
	}
	.task_img {
		max-width: 140px;
	}
	.task_naiyo {
		max-width: inherit;
		margin: 0 auto;
	}
	.task_naiyo p {
		width: 95%;
		font-size: 14px;
	}
	.read_task {
		font-size: 16px;
		margin: 0 auto 100px;
	}	

}