@charset "utf-8";
/* -----------------------------------------------------------------
MODULE CSS
LAST UPDATE:
--------------------------------------------------------------------*/
html {
	color: #333;
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	/*font-family: "Noto Sans Japanese", "PT Sans", "游ゴシック Bold", "Yu Gothic Bold", 游ゴシック, YuGothic-Bold, "Hiragino Sans", ヒラギノ角ゴシック, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;*/
	font-size: 62.5%; /*10px*/
	line-height: 1.4;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
body {
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	font-weight: 300;
}
body, html {
	height: 100%;
}
textarea, select {
	-webkit-appearance: none;
}
p {
	margin-bottom: 30px;
}
#contents.thanks .section p {
	margin-bottom: 20px;
}
p:last-child {
	margin-bottom: 0;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	color: #000;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
#page_top {
	display: block;
	line-height: 0;
	font-size: 0;
	height: 0;
	width: 0;
	overflow: hidden;
}
.mt0 {
	margin-top: 0 !important;
}
.b {
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	body {
		line-height: 1.7em;
	}
	body.fixed {
		overflow: hidden;
	}
	p {
		margin-bottom: 20px;
	}
	.pcOnly {
		display: none;
	}
}
/*--------------------------------
header
---------------------------------*/
header {
	position: relative;
	background: #0A0A0A;
	z-index: 11;
}
header .inner {
	position: relative;
	padding: 20px 40px;
}
header .inner .logo {
	height: 26px;
	width: auto;
}
header .inner .btn_contact {
	position: absolute;
	top: 0;
	right: 0;
}
header .inner .btn_contact a {
	background: #F7B400;
	display: block;
	width: 180px;
	height: 66px;
	line-height: 66px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	overflow: hidden;
	position: relative;
	z-index: 2;
}
header .inner .btn_contact a:hover {
	text-decoration: none;
}
header .inner .btn_contact a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 66px solid #fff;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
	z-index: -1;
}
header .inner .btn_contact a:hover:before {
	transform: translateX(0);
}
#h_menu {
	display: none;
}
#h_nav {
	display: none;
}
@media screen and (max-width: 767px) {
	header .inner {
		padding: 10px 20px;
	}
	header .inner .logo img {
		height: 20px;
	}
	header .inner .btn_contact {
		display: none;
	}
	#h_menu {
		display: block;
		position: absolute;
		top: 15px;
		right: 20px;
		width: 20px;
		height: 17px;
	}
	#h_menu span {
		position: absolute;
		height: 3px; /*線の太さ*/
		width: 20px; /*長さ*/
		background: #fff;
		display: block;
		content: '';
		transition: all 0.3s;
	}
	#h_menu:before, #h_menu:after {
		position: absolute;
		content: "";
		height: 3px; /*線の太さ*/
		width: 20px; /*長さ*/
		background: #fff;
		transition: all 0.3s;
	}
	#h_menu.open span {
		top: 7px;
		right: 0;
		transform: rotate(-45deg);
	}
	#h_menu.open:after {
		top: 7px;
		right: 0;
		transform: rotate(45deg);
	}
	#h_menu.open:before {
		opacity: 0
	}
	#h_menu:before {
		top: 7px;
	}
	#h_menu:after {
		bottom: 0;
	}
	#h_nav.show {
		visibility: visible;
		opacity: 1;
	}
	#h_nav {
		display: block;
		transition: .4s ease-in-out;
		visibility: hidden;
		opacity: 0;
		padding: 76px 20px 20px;
		position: fixed;
		z-index: 10;
		background: #fff;
		width: 100%;
		box-sizing: border-box;
		top: 0;
		overflow-y: auto;
		height: 100%;
	}
	#h_nav > ul > li.home {
		margin-top: 20px;
	}
	#h_nav ul li p {
		position: relative;
		font-weight: bold;
		padding: 20px 0;
		line-height: 1;
		border-bottom: 1px solid #0A0A0A;
		margin-bottom: 0;
	}
	#h_nav ul li p::before, #h_nav ul li p::after {
		position: absolute;
		top: 50%;
		right: 0;
		content: '';
		display: inline-block;
		width: 20px;
		height: 20px;
		border-top: 2px solid #0A0A0A;
		margin-top: 0;
	}
	#h_nav ul li p:after {
		right: 10px;
		transform: rotate(90deg);
		margin-top: -10px;
	}
	#h_nav ul li p.open:after {
		opacity: 0;
	}
	#h_nav > ul > li > a {
		padding: 10px 0;
		display: block;
		font-weight: bold;
	}
	#h_nav ul li a:hover {
		text-decoration: none;
	}
	#h_nav > ul > li > ul {
		display: none;
		padding: 10px 0;
		border-bottom: 1px solid #0A0A0A;
	}
	#h_nav > ul > li p.open + ul {
		display: block;
	}
	#h_nav > ul > li > ul li a {
		padding: 10px 5px;
		display: block;
	}
	#h_nav > ul > li > ul li.cur a {
		color: #F7B400;
	}
	#h_nav .bnr_area {
		padding: 30px 0 0;
		background: #fff;
	}
	#h_nav .bnr_area .inner {
		padding: 0;
	}
	#h_nav .bnr_area ul {
		margin: 0 -10px;
		overflow: hidden;
		box-sizing: border-box;
		text-align: center;
		font-size: 0;
		letter-spacing: 0;
	}
	#h_nav .bnr_area ul li {
		display: inline-block;
		padding: 0 10px 20px;
		width: 50%;
		box-sizing: border-box;
	}
	.bnr_area ul li a {
		display: block;
		border: 1px solid #0A0A0A;
		box-sizing: border-box;
		overflow: hidden;
	}
	.bnr_area ul li a img {
		width: 100%;
		transition: 0.4s ease-in-out;
	}
	.bnr_area ul li a:hover img {
		transform: scale(1.2);
	}
}
/*--------------------------------
contents
---------------------------------*/
#wrap {
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
}
#contents_wrap {
	position: relative;
}
#contents section {
	padding: 100px 20px;
	background: #fff;
}
#contents.single section {
	padding: 0 0 80px;
}
#contents section#info {
	background: #F4F4F6;
	display: flex;
}
#contents section#info .inner {
	flex: 2;
	margin: 0 10px;
}
#contents section#work {
	padding-bottom: 20px;
}
#contents section#job {
	background: none;
}
/*#contents section#job {
	background: url("../img/bg_job.jpg") no-repeat center 0;
	background-size: cover;
	background-attachment: fixed !important;
}*/
#contents section#job:before {
	content:"";
	display:block;
	position: relative;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	height:100vh;
	background-repeat:no-repeat;
	background-position:50% 0%;
	background-image:url("../img/bg_job.jpg");
	background-size:cover;
}
#contents section#job.fixed:before {
	position: fixed;
}
#contents {
	position: relative;
	z-index: 2;
}
#contents .inner_wrap {
	background: #fff;
}
#contents .inner {
	max-width: 1120px;
	margin: 0 auto;
	overflow: hidden;
}
#contents.entry .inner {
	max-width: 800px;
}
#contents.index .inner {
	max-width: 1080px;
}
#contents.index .bnr_pickup .inner {
	max-width: 1120px;
}
#contents > .inner {
	padding: 0 20px;
}
#contents .inner_wrap > .inner {
	padding: 0 20px;
}
#contents section .inner h2 {
	font-size: 25px;
	font-weight: bold;
	margin-bottom: 20px;
}
#contents section#job .inner h2 {
	color: #fff;
}
.main_visual {
	width: 100%;
	height: 700px;
	/*background: url("../img/mv.jpg") no-repeat center 0;
	background-size: auto 766px;
	background-attachment: fixed;*/
	background: #0A0A0A;
	position: relative;
	z-index: 2;
}
.main_visual video {
	position: fixed;
	top: -23px;
	width: 1600px;
	left: 50%;
	margin-left: -800px;
}
.title_wrap {
	width: 100%;
	height: 434px;
	/*background: url("../img/bg_archieve.jpg") no-repeat center top;*/
	background-size: 1920px auto;
	background-attachment: fixed !important;
	line-height: 1.8;
}
.title_wrap:before {
	content:"";
	display:block;
	position: fixed;
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	height:258px;
	background-repeat:no-repeat;
	background-position:50% 0%;
	background-image:url("../img/bg_archieve.jpg");
	background-size:cover;
}
.archive .title_wrap:before {
	height: 532px;
}
.single .title_wrap, .entry .title_wrap, .career_info .title_wrap {
	height: 160px;
}
.single .title_wrap:before {
	background-size: 1920px auto;
	background-position: center -100px !important;
}
.entry .title_wrap:before {
	background: url("../img/bg_entry.jpg") no-repeat center top;
	background-size: 1920px auto;
}
.title_wrap .inner {
	width: 458px;
	margin: 0 auto;
}
.archive .title_wrap .inner .title {
	padding-top: 130px;
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-bottom: 2px solid #0A0A0A;
}
.title_wrap .inner .title {
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	padding-top: 60px;
}
.archive .title_wrap .inner p {
	font-weight: bold;
}
.title_area {
	position: relative;
	padding-bottom: 40px;
	margin-bottom: 80px;
	border-bottom: 1px solid #707070;
}
.title_area h1 {
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.6;
}
.career_info .title_area h1 {
	margin-top: 20px;
}
.title_area .main_img {
	margin-bottom: 40px;
}
.title_area .main_img img {
	max-width: 100%;
}
.title_area ul li {
	display: inline-block;
	text-align: center;
	width: 120px;
	padding: 0;
	font-size: 12px;
	font-weight: bold;
	margin: 0 0 10px;
	height: 26px;
	line-height: 26px;
	box-sizing: border-box;
}
.title_area ul li.types {
	color: #fff;
	background: #F7B400;
}
.title_area ul li.tags {
	width: auto;
	padding: 0 5px;
	border: 1px solid #0A0A0A;
	margin-left: 10px;
}
.title_area .status {
	display: inline-block;
	text-align: center;
	width: 120px;
	padding: 8px 0;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	background: #E51919;
	line-height: 1;
	margin: 0 0 10px 20px;
	;
}
.title_area .status.end {
	background: #7E7E7E;
}
.title_area .lead {
	font-weight: bold;
}
article {
	line-height: 1.8;
}
article section h2 {
	border-left: 5px solid #0A0A0A;
	padding-left: 10px;
	font-size: 25px;
	font-weight: bold;
	margin-bottom: 40px;
	line-height: 1.6;
}
article section p a {
	color: #F7B400;
}
article section .txt_area p:not(:last-child) {
	margin-bottom: 40px;
}
.main_visual ul li {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	visibility: hidden;
	animation: anime_slider_fade 12s 0s infinite;
}
.main_visual ul li img {
	width: 100%;
	height: auto;
}
.main_visual ul li:nth-of-type(2) {
	animation-delay: 4s;
}
.main_visual ul li:nth-of-type(3) {
	animation-delay: 8s;
}
.main_visual h1 {
	text-align: center;
	margin-top: -25px;
	color: #fff;
	position: absolute;
	z-index: 10;
	top: 50%;
	width: 100%;
	font-size: 50px;
	text-shadow: 1px 2px 3px #808080;
}
@keyframes anime_slider_fade {
    0% {
        visibility: visible;
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    33.3% {
        opacity: 1;
    }
    48.3% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@media screen and (max-width: 1120px) {
	.main_visual {
		height: 506px;
	}
	.main_visual video {
		top: 4px;
		width: 1120px;
		margin-left: -560px;
	}
	.main_visual ul li {
		position: fixed;
		top: 0;
		left: 50%;
		margin-left: -458px;
	}
	.main_visual ul li img {
		width: 916px;
		height: auto;
	}
	.single .title_wrap:before {
		background-size: 1120px auto !important;
		background-position: center 0 !important;
	}
}
@media screen and (max-width: 767px) {
	.main_visual {
		height: 238px;
	}
	.main_visual video {
		position: fixed;
		top: 17px;
		width: 526px;
		left: 50%;
		margin-left: -263px;
	}
	.main_visual ul li {
		position: fixed;
		top: 0;
		left: 50%;
		margin-left: -240px;
	}
	.main_visual ul li img {
		width: auto;
		height: 300px;
	}
	.main_visual h1 {
		font-size: 18px;
	}
	#contents section {
		padding: 50px 20px;
	}
	#contents.single section {
		padding: 0 0 40px;
	}
	#contents section .inner h2 {
		font-size: 20px;
	}
	.title_wrap {
		height: 250px;
	}
	.title_wrap:before {
		background-size: auto 342px !important;
	}
	.single .title_wrap:before {
		background-size: 767px auto !important;
		background-position: 50% 0 !important;
	}
	.single .title_wrap, .entry .title_wrap, .career_info .title_wrap {
		height: 60px;
	}
	.entry .title_wrap:before {
		background-size: 767px auto !important;
		background-position: 50% 0 !important;
	}
	.title_wrap .inner {
		width: 100%;
		padding: 20px 40px 0;
		box-sizing: border-box;
	}
	.single .title_wrap .inner, .entry .title_wrap .inner {
		padding: 20px 0 0;
	}
	.title_wrap .inner .title {
		font-size: 20px;
		padding: 0;
	}
	.single .title_wrap .inner .title, .entry .title_wrap .inner .title {
		line-height: 1;
	}
	.title_area {
		padding-bottom: 20px;
		margin-bottom: 40px;
	}
	.title_area h1 {
		font-size: 20px;
	}
	.title_area .main_img {
		margin-bottom: 20px;
	}
	article section h2 {
		border-left: 5px solid #0A0A0A;
		font-size: 20px;
		margin-bottom: 20px;
	}
	.archive .title_wrap .inner .title {
		padding-top: 0;
		padding-bottom: 10px;
		margin-bottom: 20px;
		border-bottom: 2px solid #0A0A0A;
	}
}
.breadcrumbs {
	width: 100%;
	padding: 40px 0;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1;
}
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span:not(.extend) {
	display: inline-block;
	margin: 0 10px;
	border: 1px solid #0A0A0A;
	line-height: 30px;
	text-align: center;
	width: 30px;
	height: 30px;
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
}
.wp-pagenavi a:hover {
	background: #0A0A0A;
	color: #fff;
	text-decoration: none;
}
.wp-pagenavi span:not(.extend) {
	background: #0A0A0A;
	color: #fff;
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
	position: relative;
	text-indent: -9999px;
}
.wp-pagenavi a.previouspostslink::after {
	content: "";
	position: absolute;
	top: 9px;
	right: 7px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #0A0A0A;
	border-right: 1px solid #0A0A0A;
	transform: rotate(-135deg);
}
.wp-pagenavi a.nextpostslink::after {
	content: "";
	position: absolute;
	top: 9px;
	left: 7px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #0A0A0A;
	border-right: 1px solid #0A0A0A;
	transform: rotate(45deg);
}
.wp-pagenavi a.previouspostslink:hover::after, .wp-pagenavi a.nextpostslink:hover::after {
	border-top-color: #fff;
	border-right-color: #fff;
}
main {
	float: left;
	width: 100%;
	box-sizing: border-box;
	margin-right: -330px;
	padding-right: 330px;
	margin-bottom: 80px;
	transition: margin 0.4s, padding 0.4s;
}
.career_info main {
	margin-right: 0;
	padding-right: 0;
}
.entry main {
	margin-right: 0;
	padding-right: 0;
	margin-bottom: 80px;
}
.main_wrap {
	position: relative;
}
.end_layer {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 0;
	left: 0;
}
.end_layer p {
	width: 100%;
	text-align: center;
	font-size: 50px;
	line-height: 50px;
	font-weight: bold;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -25px;
	color: #fff;
}
side {
	float: right;
	width: 250px;
	margin-bottom: 80px;
}
side .local_nav {
	margin-bottom: 80px;
}
side .local_nav .title {
	font-size: 15px;
	font-weight: bold;
	border-bottom: 1px solid #0A0A0A;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
side .local_nav ul {
	padding: 0 10px;
}
side .local_nav ul li:not(:last-child) {
	margin-bottom: 20px;
}
side .local_nav ul li.cur a, side .local_nav ul li a:hover {
	color: #F7B400;
	text-decoration: none;
}
@media screen and (max-width: 1120px) {
	main {
		margin-right: 0;
		padding-right: 0;
	}
	side {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.breadcrumbs {
		padding: 20px 0;
		font-size: 10px;
	}
	.entry main {
		margin-bottom: 40px;
	}
	.end_layer p {
		font-size: 25px;
		line-height: 25px;
		margin-top: -12px;
	}
}
/*--------------------------------
modules
---------------------------------*/
.info_box {
	background: #fff;
	padding: 20px 40px;
}
.info_box ul li:not(:last-child) {
	border-bottom: 1px solid #707070;
}
.info_box ul li a {
	display: block;
	padding: 20px 0;
	overflow: hidden;
}
.info_box ul li a .wrap, .career_info ul li a .wrap {
	float: left;
	width: 210px;
}
.career_info ul li {
	display: flex;
}
.career_info ul li a {
	    width: 100%;
}
.career_info ul li a .wrap {
	width: 100%;
}
.career_info ul li a .info_title {
	width: 100%;
	margin-top: 30px;
	display: block;
}
.info_box ul li a .date, .career_info ul li a .date, .title_area .wrap .date {
	font-size: 12px;
}
.info_box ul li a .cat {
	text-align: center;
	width: 100px;
	padding: 8px 0;
	color: #fff;
	font-size: 10px;
	font-weight: bold;
	margin: 0 0 0 20px;
	background: #F7B400;
	display: inline-block;
	line-height: 1;
	vertical-align: middle;
}
.info_box ul li a .title {
	display: block;
	float: left;
	width: 100%;
	margin-left: -240px;
	padding: 3px 0 0 240px;
}
.info_box ul li a:hover {
	text-decoration: none;
}
.info_box ul li a:hover .title, .info_box ul li a:hover .info_title {
	text-decoration: underline;
}
.info_box ul a.more {
	display: block;
  font-size: 12px;
  font-weight: bold;
  text-align: right;
  margin-top: 20px;
}
.career_info .title_area {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.types_box ul {
	overflow: hidden;
	margin: 0 -10px;
}
.types_box ul li {
	float: left;
	padding: 0 10px;
	margin-bottom: 80px;
	width: 50%;
	box-sizing: border-box;
}
.types_box ul li a {
	position: relative;
	display: block;
	padding-bottom: 120px;
}
.types_box ul li a .img {
	overflow: hidden;
	display: block;
	text-align: center;
}
.types_box ul li a .img img {
	transition: 0.5s ease-in-out;
	width: 100%;
}
.types_box ul li a:hover .img img {
	transform: scale(1.2);
}
.types_box ul li a .box {
	position: absolute;
	bottom: 0;
	left: 50%;
	background: #fff;
	padding: 40px 0;
	width: 300px;
	margin-left: -150px;
	box-shadow: 0px 3px 6px rgba(94, 94, 94, 0.16);
}
.types_box ul li a .box .title {
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	line-height: 1;
}
.types_box ul li a .box .btn {
	position: relative;
	background: #F7B400;
	text-align: center;
	font-weight: bold;
	padding: 25px 0;
	width: 220px;
	margin: 0 auto;
	overflow: hidden;
	z-index: 2;
	line-height: 1;
	transition: color 0.4s ease-in-out;
}
.types_box ul li a:hover .box .btn {
	text-decoration: none;
	color: #fff;
}
.types_box ul li a .box .btn:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 108px solid #0A0A0A;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
	z-index: -1;
}
.types_box ul li a:hover .box .btn:before {
	transform: translateX(0);
}
/* job_box */
.job_box ul {
	overflow: hidden;
}
.job_box ul li {
	float: left;
	width: 50%;
	border: 1px solid #0A0A0A;
	box-sizing: border-box;
	background: #fff;
}
.job_box ul li:nth-child(n+3) {
	border-top: none;
}
.job_box ul li:nth-child(2n) {
	border-left: none;
}
.job_box ul li a {
	position: relative;
	font-size: 20px;
	display: block;
	overflow: hidden;
	width: 100%;
	padding: 40px;
	text-transform: uppercase;
	background-color: transparent;
}
.job_box ul li a:hover {
	text-decoration: none;
}
.job_box ul li a span {
	position: relative;
	display: block;
}
.job_box ul li a span:before {
	content: "";
	position: absolute;
	width: 25px;
	height: 1px;
	background: #0A0A0A;
	right: 0;
	top: 50%;
}
.job_box ul li a span:after {
	content: "";
	position: absolute;
	width: 10px;
	height: 1px;
	background: #0A0A0A;
	right: 0;
	top: 50%;
	transform: rotate(45deg);
	margin-top: -4px;
}
.job_box ul li a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 108px solid #F7B400;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
}
.job_box ul li a:hover:before {
	transform: translateX(0);
}
.index .bnr_area {
	padding: 100px 0;
	background: #fff;
}
.index .bnr_area .inner {
	padding: 0 20px;
}
.index .bnr_area ul {
	margin: 0 -10px;
	overflow: hidden;
	box-sizing: border-box;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}
.index .bnr_area ul li {
	display: inline-block;
	padding: 0 10px;
	width: 25%;
	box-sizing: border-box;
}
.bnr_area ul li a {
	display: block;
	border: 1px solid #0A0A0A;
	box-sizing: border-box;
	overflow: hidden;
}
.bnr_area ul li a img {
	width: 100%;
	transition: 0.4s ease-in-out;
}
.bnr_area ul li a:hover img {
	transform: scale(1.2);
}
side .bnr_area {
	background: #fff;
}
side .bnr_area ul {
	overflow: hidden;
	box-sizing: border-box;
}
side .bnr_area ul li:not(:last-child) {
	margin-bottom: 20px;
}
side .bnr_area ul li h2 {
	display: none;
}
.bnr_pickup {
	padding: 100px 0 0;
	background: #fff;
}
.bnr_pickup .inner {
	padding: 0 20px;
}
.bnr_pickup ul {
	margin: 0 -10px;
	overflow: hidden;
	box-sizing: border-box;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}
.bnr_pickup ul li {
	display: inline-block;
	padding: 0 10px;
	width: 50%;
	box-sizing: border-box;
	position: relative;
}
.bnr_pickup ul li .wp-caption {
	width: 100% !important;
}
.bnr_pickup ul li h2 {
	position: absolute;
	font-size: 20px;
	text-align: center;
	z-index: 10;
	top: 20px;
	left: 0;
	width: 100%;
	pointer-events: none;
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 1.0);
}
.bnr_pickup ul li a {
	display: block;
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
}
.bnr_pickup ul li a img {
	width: 100% !important;
}
.bnr_pickup ul li .wp-caption-text {
	position: absolute;
	line-height: 30px;
	height: 30px;
	text-align: center;
	background: #fff;
	bottom: 20px;
	font-size: 15px;
	font-weight: bold;
	pointer-events: none;
	transform: translateX(-50%);
	padding: 0 10px;
}
.bnr_pickup ul li#media_image-3 .wp-caption-text {
	width: 320px;
}
.bnr_pickup ul li a img {
	width: 100%;
	transition: 0.4s ease-in-out;
}
.bnr_pickup ul li a:hover img {
	transform: scale(1.2);
	opacity: 0.8;
}

/* archive_list */
.archive_list > ul {
	border-top: 1px solid #0A0A0A;
	margin-bottom: 40px;
}
.archive_list > ul > li {
	border-bottom: 1px solid #0A0A0A;
}
.archive_list ul li a {
	display: block;
	overflow: hidden;
	padding: 40px 0;
	position: relative;
}
.archive_list ul li a .thumb {
	position: relative;
	float: left;
	width: 340px;
	overflow: hidden;
}
.archive_list ul li a .thumb img {
	width: 100%;
	transition: 0.4s ease-in-out;
}
.archive_list ul li a:hover .thumb img {
	transform: scale(1.2);
}
.archive_list ul li a .txt_area {
	float: right;
	width: 100%;
	margin: 0 0 20px -380px;
	padding-left: 380px;
	box-sizing: border-box;
}
.archive_list ul li a .txt_area .title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.5;
}
.archive_list ul li a .txt_area .cat,
.archive_list ul li a .txt_area .tag {
	overflow: hidden;
	margin: 0 -7px;
	font-weight: bold;
}
.archive_list ul li a .txt_area ul li {
	float: left;
	margin: 0 7px;
	font-size: 10px;
	padding: 0 5px;
	font-weight: bold;
	box-sizing: border-box;
	line-height: 23px;
	height: 23px;
}
.archive_list ul li a .txt_area .cat li {
	color: #fff;
	background: #F7B400;
}
.archive_list ul li a .txt_area .tag li {
	border: 1px solid #0A0A0A;
}
.archive_list ul li a .txt_area .cat li.status {
	background: #E51919;
}
.archive_list ul li a .txt_area .cat li.end {
	background: #7E7E7E;
}
.archive_list ul li a .txt_area .tag {
	margin-top: 10px;
}


.archive_list ul li a .txt_area .txt {
	margin: 15px 0 0;
	line-height: 1.8;
}
.archive_list ul li a .txt_area .more {
	position: absolute;
	right: 0;
	bottom: 40px;
	;
}
.archive_list ul li.new a .thumb:before {
	border-color: #E51919 transparent transparent transparent;
	border-style: solid;
	border-width: 54px 56px 0 0;
	content: "";
	height: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	z-index: 2;
}
.archive_list ul li.new a .thumb:after {
	color: #fff;
	content: "NEW";
	font-size: 12px;
	position: absolute;
	top: 12px;
	left: 3px;
	transform: rotate(-44deg);
	z-index: 3;
	font-weight: bold;
}
/* other_list */
#contents.single section.other {
	border-top: 1px solid #0A0A0A;
	padding: 80px 0 40px;
}
.other_list {
	overflow: hidden;
}
.other_list > ul {
	margin: 0 -20px 40px;
}
.other_list > ul > li {
	width: 50%;
	float: left;
	box-sizing: border-box;
	padding: 0 20px 40px;
}
.other_list ul li a {
	display: block;
	overflow: hidden;
}
.other_list ul li a:hover {
	text-decoration: none;
}
.other_list ul li a:hover .thumb img {
	transform: scale(1.2);
}
.other_list ul li a .thumb {
	position: relative;
	margin-bottom: 10px;
	overflow: hidden;
}
.other_list ul li a .thumb img {
	width: 100%;
	transition: 0.4s ease-in-out;
}
.other_list ul li a .txt_area {}
.other_list ul li a .txt_area .title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}
.other_list ul li a .txt_area .cat {
	overflow: hidden;
	margin: 0 -7px;
}
.other_list ul li a .txt_area .cat li {
	float: left;
	margin: 0 7px;
	font-size: 10px;
	color: #fff;
	padding: 5px;
	background: #F7B400;
	line-height: 1;
}
.other_list ul li a .txt_area .cat li.status {
	background: #E51919;
}
.other_list ul li a .txt_area .cat li.end {
	background: #7E7E7E;
}
.other_list ul li a .txt_area .txt {
	margin: 10px 0 0;
}
.other_list ul li a .txt_area .more {
	text-align: right;
}
.other_list ul li.new a .thumb:before {
	border-color: #E51919 transparent transparent transparent;
	border-style: solid;
	border-width: 54px 56px 0 0;
	content: "";
	height: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	z-index: 2;
}
.other_list ul li.new a .thumb:after {
	color: #fff;
	content: "NEW";
	font-size: 12px;
	position: absolute;
	top: 10px;
	left: 3px;
	transform: rotate(-44deg);
	z-index: 3;
	font-weight: bold;
}
/* dl_table */
.dl_table {
	border-bottom: 1px solid #0A0A0A;
}
.dl_table dl {
	overflow: hidden;
	border-top: 1px solid #0A0A0A;
}
.dl_table dl dt {
	display: table-cell;
	padding: 10px 20px;
	width: 200px;
	background: #FFDB7A;
	font-weight: bold;
	vertical-align: middle;
}
.dl_table dl dd {
	display: table-cell;
	padding: 10px 20px;
}
/* baloon_box */
.baloon_box {
	overflow: hidden;
	width: 100%;
}
.baloon_box .img {
	float: left;
	border-radius: 50%;
	margin-right: 35px;
}
.baloon_box .img img {
	width: 100px;
	height: 100px;
	object-fit: cover;
	margin-top: 20px;
	border: 3px solid #F7B400;
	border-radius: 50%;
}
.baloon_box .txt {
	width: 100%;
	float: right;
	padding-left: 135px;
	margin-left: -135px;
	box-sizing: border-box;
}
.baloon_box .txt p {
	border: 1px solid #0a0a0a;
	border-radius: 5px;
	padding: 20px;
	position: relative;
}
.baloon_box .txt p:before {
	content: "";
	position: absolute;
	top: 50px;
	left: -30px;
	border: 10px solid transparent;
	border-right: 20px solid #FFF;
	z-index: 2;
}
.baloon_box .txt p:after {
	content: "";
	position: absolute;
	top: 49px;
	left: -32px;
	border: 11px solid transparent;
	border-right: 21px solid #0a0a0a;
	z-index: 1;
}
.messsage .baloon_box:not(:last-child) {
	margin-bottom: 20px;
}
.float_btn {
	height: 112px;
}
.float_btn.fixed p {
	position: fixed;
}
.float_btn p {
	width: 100%;
	position: relative;
	left: 0;
	bottom: 0;
	padding: 20px 0;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0px -5px 15px #00000029;
	z-index: 5;
}
.float_btn p a {
	display: block;
	margin: 0 auto;
	width: 280px;
	height: 72px;
	line-height: 72px;
	text-align: center;
	font-size: 25px;
	font-weight: bold;
	color: #fff;
	background: #F7B400;
	box-shadow: 0px 5px 6px #00000029;
	transition: color 0.4s ease-in-out;
	position: relative;
	overflow: hidden;
	z-index: 2;
}
.float_btn p a:hover {
	text-decoration: none;
}
.float_btn p a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 108px solid #0A0A0A;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
	z-index: -1;
}
.float_btn p a:hover:before {
	transform: translateX(0);
}
@media screen and (max-width: 1120px) {
	.bnr_pickup ul li h2 {
		font-size: 15px;
		top: 50%;
		margin-top: -20px;
	}
	#contents section#info {
		display: block;
	}
	#contents section#info .inner {
		margin-bottom: 30px;
	}
	#contents section#info .inner:nth-child(2) {
		margin-bottom: 0;
	}
	.bnr_pickup ul li .wp-caption-text {
		line-height: 23px;
		height: 23px;
		bottom: inherit;
		font-size: 10px;
		top: 50%;
		margin-top: 5px;
	}
	.bnr_pickup ul li#media_image-3 .wp-caption-text {
		width: 220px;
	}
}
@media screen and (max-width: 767px) {
	.info_box {
		padding: 20px;
	}
	.info_box ul li a .date {
		font-size: 12.5px;
	}
	.info_box ul li a .cat {
		padding: 5px 0 4px;
		margin: 0 0 0 20px;
		vertical-align: text-top;
	}
	.info_box ul li a .title {
		font-size: 12.5px;
		display: block;
		margin: 0;
		padding: 0;
	}
	.info_contents img {
		max-width: 100%;
	}
	.types_box ul {
		margin: 0;
	}
	.types_box ul li {
		padding: 0;
		margin-bottom: 45px;
		width: 100%;
	}
	.types_box ul li a {
		padding-bottom: 60px;
	}
	.types_box ul li a .img {
		max-width: 374px;
		margin: 0 auto;
	}
	.types_box ul li a .box {
		padding: 20px 0;
		width: 200px;
		margin-left: -100px;
	}
	.types_box ul li a .box .title {
		font-size: 15px;
	}
	.types_box ul li a .box .btn {
		padding: 20px 0;
		width: 160px;
		font-size: 10px;
	}
	.job_box ul {
		overflow: hidden;
	}
	.job_box ul li {
		width: 100%;
	}
	.job_box ul li a {
		position: relative;
		display: block;
		padding: 15px 20px;
		font-size: 15px;
	}
	.job_box ul li a:before, .job_box ul li a:after {
		display: none;
	}
	.job_box ul li:nth-child(n+2) {
		border-top: none;
	}
	.job_box ul li:nth-child(2n) {
		border-left: 1px solid #0A0A0A;
	}
	.index .bnr_area {
		padding: 50px 0 30px;
	}
	.index .bnr_area ul {
		margin: 0 -10px;
		overflow: hidden;
		box-sizing: border-box;
	}
	.index .bnr_area ul li {
		padding: 0 10px 20px;
		width: 50%;
	}
	.archive_list ul li a {
		padding: 20px 0;
	}
	.archive_list ul li a .thumb {
		width: 100%;
		margin-bottom: 10px;
	}
	.archive_list ul li a .txt_area {
		margin: 0 0 20px;
		padding: 0;
	}
	.archive_list ul li a .txt_area .more {
		position: static;
		text-align: right;
	}
	/* other_list */
	.other_list > ul {
		margin: 0 -10px 20px;
	}
	.other_list > ul > li {
		padding: 0 10px 20px;
	}
	.other_list ul li a .txt_area .title {
		font-size: 15px;
	}
	.other_list ul li a .txt_area .cat {
		margin: 0 -3px;
	}
	.other_list ul li a .txt_area .cat li {
		margin: 0 3px;
		padding: 5px 2px;
	}
	/* dl_table */
	.dl_table {
		border-bottom: none;
	}
	.dl_table dl dt {
		display: block;
		padding: 10px 20px;
		width: 100%;
	}
	.dl_table dl dd {
		display: block;
		padding: 20px;
	}
	/* baloon_box */
	.baloon_box .img {
		text-align: center;
		float: none;
		border-radius: 50%;
		margin: 0 auto;
	}
	.baloon_box .img img {
		margin-top: 25px;
	}
	.baloon_box .txt {
		width: 100%;
		padding-left: 0;
		margin-left: 0;
	}
	.baloon_box .txt p:before {
		content: "";
		position: absolute;
		top: inherit;
		bottom: -30px;
		left: 50%;
		margin-left: -10px;
		border: 10px solid transparent;
		border-top: 20px solid #FFF;
		z-index: 2;
	}
	.baloon_box .txt p:after {
		content: "";
		position: absolute;
		top: inherit;
		bottom: -32px;
		left: 50%;
		margin-left: -11px;
		border: 11px solid transparent;
		border-top: 21px solid #0a0a0a;
		z-index: 1;
	}
	.messsage .baloon_box:not(:last-child) {
		margin-bottom: 20px;
	}
	.float_btn {
		height: 92px;
	}
	.float_btn p {
		padding: 20px 0;
	}
	.float_btn p a {
		width: 270px;
		height: 52px;
		line-height: 52px;
		font-size: 20px;
	}
	ul li.new a .thumb:before {
		border-width: 47px 46px 0 0 !important;
	}
	ul li.new a .thumb:after {
		font-size: 10px !important;
		top: 6px !important;
		left: 4px !important;
	}
	.bnr_pickup {
		padding: 50px 0 0;
	}
	.bnr_pickup ul {
		margin: 0;
	}
	.bnr_pickup ul li {
		display: block;
		padding: 0;
		width: 100%;
		max-width: 375px;
		margin: 0 auto;
	}
	.bnr_pickup ul li:not(:first-child) {
		margin-top: 20px
	}
}
/*--------------------------------
footer
---------------------------------*/
.page_top p {
	position: relative;
	bottom: 40px;
	right: 10px;
	z-index: 9;
	float: right;
}
.page_top.fixed p {
	position: fixed;
	bottom: 20px;
}
.page_top p a {
	display: block;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	text-indent: -9999px;
	overflow: hidden;
	background: #fff;
	position: relative;
	border: 1px solid #0A0A0A;
	transition: border-color .4s ease-out, background-color .4s ease-out;
}
.page_top p a:before {
	position: absolute;
	top: 29px;
	left: 24px;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 15px 20px 15px;
	border-color: transparent transparent #0A0A0A transparent;
	transition: border-color .4s ease-out;
}
.page_top p a:hover {
	background: #F7B400;
	border-color: #F7B400;
}
.page_top p a:hover:before {
	border-color: transparent transparent #fff transparent;
}
footer {
	position: relative;
	width: 100%;
	background: #0A0A0A;
	padding: 0 20px;
	box-sizing: border-box;
	z-index: 2;
}
footer .inner {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding-top: 80px;
}
footer .inner .logo {
	text-align: center;
}
footer .inner .logo a {
	display: inline-block;
}
footer .inner .logo a img {
	height: 26px;
}
footer .inner #nav_main {
	margin-top: 80px;
}
footer .inner #nav_main nav {
	overflow: hidden;
	margin-bottom: 30px;
}
footer .inner #nav_main nav p {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
}
footer .inner #nav_main nav ul li {
	float: left;
	margin: 0 20px 10px 0;
	line-height: 1;
}
footer .inner #nav_main nav ul li:last-child {
	margin-right: 0;
}
footer .inner #nav_main nav ul li a {
	font-size: 15px;
	color: #fff;
}
footer .inner #nav_sub {
	text-align: center;
	border-top: 1px solid #fff;
	padding: 20px 0;
}
footer .inner #nav_sub nav ul {
	margin: 0 -10px;
}
footer .inner #nav_sub nav ul li {
	display: inline-block;
	padding: 0 10px
}
footer .inner #nav_sub nav ul li a {
	color: #fff;
	line-height: 1;
}
footer .copyright {
	text-align: center;
	background: #fff;
	font-size: 10px;
	padding: 5px 0;
	margin: 0 -20px;
}
@media screen and (max-width: 767px) {
	.page_top p {
		bottom: 20px;
		right: 10px;
	}
	.page_top p a {
		width: 40px;
		height: 40px;
	}
	.page_top p a:before {
		top: 14px;
		left: 12px;
		border-width: 0 7px 10px 7px;
	}
	footer .inner {
		padding-top: 40px;
	}
	footer .inner #nav_main {
		margin-top: 40px;
	}
	footer .inner #nav_main nav p {
		font-size: 13px;
		margin-bottom: 10px;
	}
	footer .inner #nav_main nav ul li a, footer .inner #nav_sub nav ul li a {
		font-size: 10px;
	}
	footer .inner #nav_sub nav ul {
		margin: 0 -8px;
	}
	footer .inner #nav_sub nav ul li {
		padding: 0 8px
	}
}
.entry_table {
	width: 100%;
	margin: 0 auto;
}
.entry_table dl {
	display: table;
	width: 100%;
	margin-bottom: 5px;
}
.entry_table dl:last-child {
	border-bottom: none;
}
.entry_table dl dt {
	display: table-cell;
	width: 230px;
	padding: 10px 20px;
	background: #ECECEC;
	position: relative;
	vertical-align: middle;
	font-weight: bold;
}
.mw_wp_form_confirm .entry_table dl dt {
	padding: 20px;
}
.mw_wp_form_input .entry_table dl dt, .mw_wp_form_input .entry_table dl dd.seminar {
	padding-top: 8px;
}
.entry_table dl.required dt:after {
	content: "必須";
	color: #fff;
	background: #FF5252;
	font-size: 12px;
	float: right;
	line-height: 20px;
	height: 20px;
	width: 40px;
	text-align: center;
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -10px;
}
.entry_table dl dd {
	display: table-cell;
	vertical-align: top;
	margin: 0;
	padding: 10px 20px;
}
.mw_wp_form_confirm .entry_table dl dd {
	padding: 20px
}
.entry_table dl dd textarea {
	line-height: 1.4;
}
.entry_table dl dd.error_input input,
.entry_table dl dd.error_input textarea {
	border-color: #ffdcdc
}
.entry_table dl dd .notice {
	margin: 10px 0 0;
}
.entry_table dl dd .notice.email {
	margin-bottom: 10px;
}
.mw_wp_form_confirm .entry_table dl dd .notice {
	display: none;
}
.entry_table dl dd .input_col2 {
	overflow: hidden;
	margin: 0 -5px;
}
.entry_table dl dd .input_col2 div {
	width: 50%;
	max-width: 180px;
	padding: 0 5px;
	float: left;
	box-sizing: border-box;
}
.mw_wp_form_confirm .entry_table dl dd .input_col2 div {
	width: auto;
}
.entry_table dl dd .input_col2 div p {
	font-weight: bold;
	margin-bottom: 5px;
}
.entry_table dl dd .input_col2 div input {
	max-width: 100%;
}
.entry_table dl dd input[type="text"], .entry_table dl dd input[type="email"], .entry_table dl dd select, .entry_table dl dd textarea {
	border: 1px solid #707070;
	border-radius: 0;
	padding: 10px;
	display: block;
	box-sizing: border-box;
	width: 100%;
	font-size: 15px;
	-webkit-appearance: none;
}
.entry_table dl dd input#grade,
.entry_table dl dd input#age {
	width: 50px;
	display: inline-block;
}
.entry_table dl dd input[name="tel"] {
	max-width: 160px;
}
.entry_table dl dd select {
	max-width: 185px;
}
.entry_table dl dd select.time {
	display: inline-block;
}
.entry_table dl dd.seminar select {
	max-width: 360px;
}
.entry_table dl dd.seminar select:disabled {
	color: #A0A0A0;
}
.entry_table dl dd select:disabled {
	color: #A0A0A0;
}
.entry_table dl dd input#school {
	max-width: 100%;
}
.entry_table .area-btn {
	text-align: center;
	font-size: 0;
	letter-spacing: -10px;
	margin-top: 60px;
}
.entry_table dl dd .input_col2 {
	overflow: hidden;
	margin: 0 -10px;
}
.entry_table dl dd .input_col2 div {
	width: 50%;
	padding: 0 10px;
	float: left;
	box-sizing: border-box;
}
.mw_wp_form_confirm .entry_table dl dd .input_col2 div {
	width: auto;
}
.entry_table dl dd .input_col2 div p {
	font-weight: bold;
	margin-bottom: 5px;
}
.entry_table dl dd .input_col2 div input {
	max-width: 100%;
}
.entry_table dl dd input[type="text"], .entry_table dl dd input[type="email"], .entry_table dl dd select, .entry_table dl dd textarea {
	border: 1px solid #BEBEBE;
	border-radius: 0;
	padding: 10px 15px;
	display: block;
	box-sizing: border-box;
	width: 100%;
}
.step_list {
	margin: 100px 0 40px;
}
.step_list p {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.mw_wp_form_confirm .step_list p.input, .mw_wp_form_input .step_list p.confirm {
	display: none;
}
.step_list ul {
	overflow: hidden;
	margin-bottom: 40px;
}
.step_list ul li {
	width: 33.33333%; /* 未対応ブラウザ用 */
	width: -webkit-calc(100% / 3); /* ベンダープレフィックス */
	width: calc(100% / 3);
	float: left;
	text-align: center;
	padding: 0 20px;
}
.step_list ul li span {
	height: 50px;
	line-height: 50px;
	font-size: 20px;
	font-weight: bold;
	display: block;
	background: #F4F4F6;
	position: relative;
}
.step_list ul li:not(:last-child) span:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -12px;
	border: 12px solid transparent;
	border-left: 16px solid #F4F4F6;
}
.step_list ul li:last-child:after {
	display: none;
}
.mw_wp_form_input .step_list ul li:nth-child(1) span, .mw_wp_form_confirm .step_list ul li:nth-child(2) span, .mw_wp_form_complete .step_list ul li:nth-child(3) span {
	background: #0A0A0A;
	color: #fff;
}
.mw_wp_form_input .step_list ul li:nth-child(1) span:after, .mw_wp_form_confirm .step_list ul li:nth-child(2) span:after {
	border-left: 16px solid #0A0A0A;
}
.entry_field {
	margin-bottom: 10px;
}
.entry_field p {
	display: inline-block;
	margin: 0 0 10px;
}
.entry_field .types {
	display: inline-block;
	text-align: center;
	width: 130px;
	padding: 8px 0;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	background: #F7B400;
	line-height: 1;
	margin-right: 5px;
}
.entry_field .title {
	font-size: 15px;
	font-weight: bold;
}
.entry_table dl.type01,
.entry_table dl.type02,
.entry_table dl.type03 {
	display: none;
}
.entry_table.type01 .type01,
.entry_table.type02 .type02,
.entry_table.type03 .type03 {
	display: block;
}
input[type="radio"] {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.radio {
	padding: 6px 0;
}
.radio label {
	position: relative;
	display: inline-block;
	margin: 0 15px 5px 0;
}
.radio label:last-child {
	margin-right: 0;
}
.radio label span {
	display: inline-block;
	padding-left: 25px;
	line-height: 1;
	vertical-align: bottom;
}
.radio label input[type="radio"] {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
.radio label input[type="radio"] + span::before {
	position: absolute;
	display: inline-block;
	content: '';
	box-sizing: border-box;
	border-radius: 22px;
	z-index: 0;
	top: 3px;
	left: 0;
	background-color: #fff;
	width: 20px;
	height: 20px;
	border: 1px solid #707070;
}
.radio label input[type="radio"]:checked + span::after {
	position: absolute;
	display: inline-block;
	content: '';
	box-sizing: border-box;
	border-radius: 22px;
	z-index: 0;
	top: 9px;
	left: 6px;
	background-color: #0A0A0A;
	width: 8px;
	height: 8px;
}
.mw_wp_form_confirm .agree, .mw_wp_form_confirm .confirm_email {
	display: none;
}
.agree .checkbox {
	text-align: center;
}
.checkbox label {
	position: relative;
}
.checkbox label:before {
	content: "必須";
	color: #fff;
	background: #FF5252;
	font-size: 12px;
	float: right;
	line-height: 20px;
	height: 20px;
	width: 40px;
	text-align: center;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -10px;
}
.checkbox label input {
	display: none;
}
.checkbox label input[type="checkbox"] + span {
	padding-left: 90px;
	line-height: 1;
}
.checkbox label input[type="checkbox"] + span:before {
	content: '';
	position: absolute;
	width: 15px;
	height: 15px;
	left: 60px;
	top: 2px;
	background: #fff;
	border: 1px solid #707070;
	box-sizing: border-box;
}
.checkbox label input[type="checkbox"]:checked + span:after {
	z-index: 1;
	content: '';
	position: absolute;
	top: 8px;
	left: 66px;
	display: block;
	margin-top: -8px;
	width: 6px;
	height: 10px;
	border-right: 3px solid #0A0A0A;
	border-bottom: 3px solid #0A0A0A;
	transform: rotate(45deg);
}
.entry_table .area_btn {
	text-align: center;
	margin-top: 40px;
	font-size: 0;
	letter-spacing: -10px;
}
.entry_table .area_btn button {
	display: inline-block;
	font-size: 15px;
	text-align: center;
	width: 100%;
	max-width: 230px;
	border: 1px solid #0A0A0A;
	border-radius: 0;
	background: #fff;
	padding: 20px 0;
	line-height: 1;
	margin: 0 30px;
	position: relative;
	transition: color .4s ease-out, background .4s ease-out;
	cursor: pointer;
	letter-spacing: normal;
	overflow: hidden;
	z-index: 2;
}
.entry_table .area_btn button.back {
	background: #0A0A0A;
	color: #fff;
}
.entry_table .area_btn button:hover {
	text-decoration: none;
}
.entry_table .area_btn button:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 108px solid #F7B400;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
	z-index: -1;
}
.entry_table .area_btn button.back:before {
	border-bottom: 108px solid #fff;
}
.entry_table .area_btn button.back:hover {
	color: #0A0A0A;
}
.entry_table .area_btn button:not(:disabled):hover:before {
	transform: translateX(0);
}
.entry_table .area_btn button.next:disabled {
	background: #ECECEC;
	color: #ccc;
	border-color: #ECECEC;
	cursor: default;
}
.entry_table .area_btn button span {
	z-index: 2;
	font-weight: bold;
	position: relative;
}
/*.entry_table .area_btn button:before {
	content: "";
	background: #0A0A0A;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transform-origin: 0 50%;
	transform: scaleX(0);
	transition: transform .3s ease-out;
	z-index: 1;
}*/
.entry_table .area_btn button:not(:disabled):hover:before {
	transform: scaleX(1);
}
.agree {
	margin-top: 40px;
}
.agree p {
	text-align: center;
}
.agree p a {
	font-weight: bold;
	position: relative;
	padding-right: 20px;
}
.agree p a:before {
	content: "";
	width: 10px;
	height: 7px;
	border: 1px solid #0A0A0A;
	position: absolute;
	right: 0;
	top: 3px;
	background: #fff;
}
.agree p a:after {
	content: "";
	width: 10px;
	height: 7px;
	border: 1px solid #0A0A0A;
	position: absolute;
	right: 5px;
	top: 7px;
	background: #fff;
}
.mw_wp_form .error {
	display: block;
	margin-top: 10px;
	color: #FF5252;
}
.contact_box {
	padding: 20px;
	background: #ECECEC;
	margin-bottom: 80px;
}
.contact_box dl dt {
	font-weight: bold;
}
.btn_back a {
	position: relative;
	display: block;
	width: 230px;
	padding: 20px;
	text-align: center;
	font-weight: bold;
	margin: 0 auto;
	border: 1px solid #0A0A0A;
	overflow: hidden;
	z-index: 2;
}
.btn_back a:before {
	content: "";
	position: absolute;
	top: 0;
	right: -50px;
	bottom: 0;
	left: 0;
	border-right: 50px solid transparent;
	border-bottom: 108px solid #F7B400;
	transform: translateX(-100%);
	box-sizing: border-box;
	transition: 0.4s ease-in-out;
	z-index: -1;
}
.btn_back a:hover {
	text-decoration: none;
}
.btn_back a:hover:before {
	transform: translateX(0);
}
@media screen and (max-width: 767px) {
	.step_list {
		margin: 40px 0;
	}
	.step_list ul {
		width: 280px;
		margin: 0 auto 40px;
	}
	.step_list ul li {
		padding: 0 12px;
	}
	.step_list ul li:not(:last-child) span:after {
		margin-top: -5px;
		border-width: 5px;
		border-left-width: 8px;
	}
	.mw_wp_form_input .step_list ul li:nth-child(1) span:after, .mw_wp_form_confirm .step_list ul li:nth-child(2) span:after {
		border-left-width: 8px;
	}
	.step_list ul li span {
		font-size: 10px;
		height: 25px;
		line-height: 25px;
	}
	.step_list p {
		font-size: 15px;
		text-align: left;
	}
	.entry_table dl {
		margin-bottom: 0;
	}
	.entry_table dl dt {
		width: 100%;
		display: block;
		padding: 5px 10px !important;
	}
	.mw_wp_form_confirm .entry_table dl dd {
		padding: 10px;
	}
	.entry_table dl.required dt:after {
		right: 10px;
	}
	.entry_table dl dd {
		display: block;
		padding: 10px 0;
		margin-bottom: 10px;
		font-size: 16px;
	}
	.entry_table .entry_wrap dl:last-child dd {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.entry_table dl dd .notice {
		font-size: 10px;
		margin: 5px 0 0;
	}
	.radio {
		padding: 0;
	}
	.agree {
		margin-top: 30px;
	}
	.agree p {
		margin-bottom: 10px;
	}
	.checkbox label input[type="checkbox"] + span {
		font-size: 10px;
		padding-left: 70px;
	}
	.entry_table dl dd textarea {
		height: 170px;
	}
	.checkbox label input[type="checkbox"] + span:before {
		left: 50px;
	}
	.checkbox label input[type="checkbox"]:checked + span:after {
		left: 56px;
	}
	.entry_table .area_btn {
		margin: 30px -10px;
	}
	.entry_table .area_btn button {
		padding: 10px 0;
		width: 270px;
	}
	.entry_table .area_btn button {
		width: 130px;
		margin: 0 10px;
	}
	.entry_table dl dd input[type="text"], .entry_table dl dd input[type="email"], .entry_table dl dd select, .entry_table dl dd textarea {
		font-size: 16px;
	}
	.radio label input[type="radio"] + span::before {
		top: 6px;
	}
	.radio label input[type="radio"]:checked + span::after {
		top: 12px;
	}
	.mw_wp_form .error {
		font-size: 10px;
		margin: 0;
	}
}