/*! normalize.css v2.1.3 | MIT License | git.io/normalize */img, legend {
	border:0
}
img, textarea {
	vertical-align:top
}
#contents.error, .entry .data .imageblock, .header1 {
	text-align:center
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display:block
}
audio, canvas, video {
	display:inline-block
}
audio:not([controls]) {
display:none;
height:0
}
[hidden], template {
display:none
}
html {
	font-family:sans-serif;
	-ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%
}
body, figure {
	margin:0
}
a {
	background:0 0;
	outline:0!important;
	-webkit-tap-highlight-color:transparent;
	text-decoration:none;
	color:#3e3e3e
}
a:focus {
	outline:dotted thin
}
a *, a img, a:active, a:hover {
	outline:0
}
abbr[title] {
	border-bottom:1px dotted
}
b, strong {
	font-weight:700
}
hr {
	box-sizing:content-box;
	height:0
}
mark {
	background:#ff0;
	color:#000
}
code, kbd, pre, samp {
	font-family:monospace, serif;
	font-size:1em
}
pre {
	white-space:pre-wrap
}
q {
	quotes:"\201C" "\201D" "\2018" "\2019"
}
small {
	font-size:80%
}
sub, sup {
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline
}
sup {
	top:-.5em
}
sub {
	bottom:-.25em
}
svg:not(:root) {
overflow:hidden
}
fieldset {
	border:1px solid silver
}
button, input, select, textarea {
	font-family:inherit;
	font-size:100%;
	margin:0
}
button, input {
	line-height:normal
}
button, select {
	text-transform:none
}
button, html input[type=button], input[type=reset], input[type=submit] {
	-webkit-appearance:button;
	cursor:pointer
}
button[disabled], html input[disabled] {
	cursor:default
}
input[type=checkbox], input[type=radio] {
	box-sizing:border-box;
	padding:0
}
input[type=search] {
	-webkit-appearance:textfield;
	box-sizing:content-box
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
-webkit-appearance:none
}
button::-moz-focus-inner, input::-moz-focus-inner {
border:0;
padding:0
}
textarea {
	overflow:auto
}
table {
	border-collapse:collapse;
	border-spacing:0
}
@font-face {
font-family:didot;
src:url(../fonts/theanodidot/theanodidot-regular.woff2) format("woff2"), url(../fonts/theanodidot/theanodidot-regular.woff) format("woff"), url(../fonts/theanodidot/theanodidot-regular.ttf) format("truetype")
}
@font-face {
font-family:SofiaProBold;
src:url(../fonts/SofiaPro/315543_0_0.eot);
src:url(../fonts/SofiaPro/315543_0_0.eot?#iefix) format("embedded-opentype"), url(../fonts/SofiaPro/315543_0_0.woff2) format("woff2"), url(../fonts/SofiaPro/315543_0_0.woff) format("woff"), url(../fonts/SofiaPro/315543_0_0.ttf) format("truetype")
}
@font-face {
font-family:SofiaProMedium;
src:url(../fonts/SofiaPro/315543_1_0.eot);
src:url(../fonts/SofiaPro/315543_1_0.eot?#iefix) format("embedded-opentype"), url(../fonts/SofiaPro/315543_1_0.woff2) format("woff2"), url(../fonts/SofiaPro/315543_1_0.woff) format("woff"), url(../fonts/SofiaPro/315543_1_0.ttf) format("truetype")
}
@font-face {
font-family:SofiaProBlack;
src:url(../fonts/SofiaPro/315543_2_0.eot);
src:url(../fonts/SofiaPro/315543_2_0.eot?#iefix) format("embedded-opentype"), url(../fonts/SofiaPro/315543_2_0.woff2) format("woff2"), url(../fonts/SofiaPro/315543_2_0.woff) format("woff"), url(../fonts/SofiaPro/315543_2_0.ttf) format("truetype")
}
@font-face {
font-family:SofiaProLight;
src:url(../fonts/SofiaPro/315543_3_0.eot);
src:url(../fonts/SofiaPro/315543_3_0.eot?#iefix) format("embedded-opentype"), url(../fonts/SofiaPro/315543_3_0.woff2) format("woff2"), url(../fonts/SofiaPro/315543_3_0.woff) format("woff"), url(../fonts/SofiaPro/315543_3_0.ttf) format("truetype")
}
@font-face {
font-family:SofiaProRegular;
src:url(../fonts/SofiaPro/315543_4_0.eot);
src:url(../fonts/SofiaPro/315543_4_0.eot?#iefix) format("embedded-opentype"), url(../fonts/SofiaPro/315543_4_0.woff2) format("woff2"), url(../fonts/SofiaPro/315543_4_0.woff) format("woff"), url(../fonts/SofiaPro/315543_4_0.ttf) format("truetype")
}
@font-face {
font-family:EssonnesHeadline-Regular;
src:url(../fonts/Essonnes/31729E_0_0.eot);
src:url(../fonts/Essonnes/31729E_0_0.eot?#iefix) format("embedded-opentype"), url(../fonts/Essonnes/31729E_0_0.woff2) format("woff2"), url(../fonts/Essonnes/31729E_0_0.woff) format("woff"), url(../fonts/Essonnes/31729E_0_0.ttf) format("truetype")
}
@font-face {
font-family:Helga;
src:url(../fonts/Helga/3192B5_0_0.eot);
src:url(../fonts/Helga/3192B5_0_0.eot?#iefix) format("embedded-opentype"), url(../fonts/Helga/3192B5_0_0.woff2) format("woff2"), url(../fonts/Helga/3192B5_0_0.woff) format("woff"), url(../fonts/Helga/3192B5_0_0.ttf) format("truetype")
}
blockquote, body, code, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, legend, li, ol, p, pre, td, textarea, th, ul {
	margin:0;
	padding:0
}
address, caption, cite, code, dfn, em, th, var {
	font-style:normal;
	font-weight:400
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:400;
	line-height:1.6
}
li {
	list-style:none
}
div, footer, h1, h2, h3, h4, h5, h6, header, li, section {
	box-sizing:border-box
}
html {
	font-size:62.5%;
	height:100%
}
dl, li, p {
	line-height:1.7
}
::selection {
background:#d5d3d2
}
::-moz-selection {
background:#d5d3d2
}
.fn {
	font-weight:400!important
}
.fb {
	font-weight:700!important
}
.fs12 {
	font-size:1.2rem
}
.list1 {
	margin:0 0 0 1.3em
}
.list1 li {
	line-height:1.6
}
ol.list1 li {
	list-style:decimal
}
.entry .data ul li, ul.list1 li {
	list-style:disc
}
span.inb {
	display:inline-block
}
body.ready {
	visibility:visible!important
}
.modal input, body.home, body.home #contents #carousel-visual {
	visibility:hidden
}
.defs {
	display:none
}
.entry .data {
	word-wrap:break-word
}
.entry .data a {
	text-decoration:underline
}
.entry .data a:hover {
	text-decoration:none
}
.entry .data img {
	margin:2em 0 1em;
	max-width:100%!important;
	height:auto
}
.entry .data iframe {
	max-width:100%
}
.entry .data hr {
	height:0;
	margin:0;
	padding:0;
	border-width:1px 0 0;
	border-style:solid;
	border-color:#000
}
.entry .data ol, .entry .data ul {
	margin-left:1.3em
}
.entry .data ol li {
	list-style:decimal
}
.entry .data em {
	font-style:italic
}
.entry .data blockquote {
	color:#999;
	padding-left:4em;
	position:relative;
	font-weight:700
}
.entry .data blockquote::after {
content:'';
background:#999;
width:3em;
height:1px;
position:absolute;
top:.8em;
left:0
}
.entry .data div, .entry .data hr, .entry .data ol, .entry .data p, .entry .data table, .entry .data ul {
	margin-top:1em
}
.entry .data h1, .entry .data h2, .entry .data h3, .entry .data h4, .entry .data h5, .entry .data h6 {
	font-weight:700;
	margin-top:3em;
	line-height:1.6
}
.entry .data table td, .entry .data table th {
	border:1px solid #ccc;
	padding:.3em
}
.entry .data table th {
	font-weight:700
}
.entry .data .wp-caption {
	margin-top:2em;
	max-width:100%
}
.entry .data .wp-caption img {
	width:100%;
	height:auto;
	margin:0
}
.entry .data .wp-caption p {
	margin:.5em 0 0
}
.entry .data .aligncenter {
	display:block;
	margin:0 auto
}
@-webkit-keyframes fade-in {
0% {
display:none;
opacity:0
}
1% {
display:block;
opacity:0
}
100% {
display:block;
opacity:1
}
}
@keyframes fade-in {
0% {
display:none;
opacity:0
}
1% {
display:block;
opacity:0
}
100% {
display:block;
opacity:1
}
}
.btn1, .btn2 {
	display:inline-block;
	position:relative;
	line-height:1;
	white-space:nowrap
}
body {
	font-family:"Hiragino Kaku Gothic ProN", YuGothic, "Yu Gothic", Meiryo, sans-serif;
	background:#e3e3e3;
	color:#2d2d2d;
	font-size:1.4rem;
	letter-spacing:1px;
	-webkit-font-smoothing:antialiased
}
.wrapper {
	background-color:#fff
}
#contents.error {
	margin-top:4em
}
#contents.error h1 {
	font-weight:700;
	font-size:200%;
	margin-bottom:3em
}
.header1 {
	border-top:1px solid #c7c7c7
}
.header1 .ttl {
	font-family:SofiaProBold;
	color:#343434;
	letter-spacing:.2em;
	line-height:1;
	margin-bottom:.2em
}

.header1 .ttl2 {
	color:#343434;
	letter-spacing:.2em;
	line-height:1;
	margin-bottom:.2em
}



.header2 {
	border-top:1px solid #c7c7c7
}
.header2 .ttl {
	font-family:SofiaProBold;
	color:#343434;
	letter-spacing:.2em;
	line-height:1;
	margin-bottom:.2em
}

.header2 .ttl2 {
	color:#343434;
	letter-spacing:.2em;
	line-height:1;
	margin-bottom:.2em
}



.btn1 span, .btn2 span {
	font-family:SofiaProRegular
}
.btn1 {
	border:1px solid #b6b6b6;
	color:#2d2d2d;
	padding:19px 30px;
	cursor:pointer
}
.btn1 span {
	background:url(../img/common/arrow-1.svg) 100% 50% no-repeat;
	background-size:22px auto;
	padding-right:35px
}
.btn2 {
	border:1px solid #fff;
	color:#fff;
	padding:19px 30px
}
.btn2 span {
	background:url(../img/common/arrow-2.svg) 100% 50% no-repeat;
	background-size:22px auto;
	padding-right:35px
}
.btn3, .btn4 {
	font-size:1.7rem;
	padding:20px 60px;
	border:0;
	color:#fff;
	display:inline-block;
	text-align:center;
	font-weight:700
}
.btn3 {
	background-color:#545454
}
.btn4 {
	background-color:#004da1;
	border-radius:5px
}
.arrow1 span, a.map {
	padding-right:35px;
	font-family:SofiaProRegular
}
.btn4.back {
	background-color:#545454
}
a.map {
	background:url(../img/common/arrow-1.svg) 100% 50% no-repeat;
	background-size:auto 90%;
	font-size:1.1rem;
	letter-spacing:0
}
.arrow1 {
	color:#fff;
	display:inline-block;
	line-height:1;
	white-space:nowrap
}
.arrow1 span {
	background:url(../img/common/arrow-2.svg) 100% 50% no-repeat;
	background-size:22px auto
}
body.modal-show {
	overflow:hidden
}
.modal .close-wrap {
	margin:0 auto 0 -350px;
	width:760px;
	position:fixed;
	top:0;
	left:50%
}
.modal .close {
	position:absolute;
	top:20px;
	right:30px;
	display:block;
	width:22px;
	height:22px;
	text-indent:-9999px;
	background:url(../img/common/close-1.png) no-repeat;
	background-size:100% auto
}
.modal-wrap label, .modal>label {
	color:#000;
	display:inline-block
}
.modal input {
	position:absolute;
	z-index:-9999
}
.modal>label {
	background:#FFD300
}
.modal-overlay {
	background:rgba(0, 0, 0, .6);
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	opacity:0;
	-webkit-transform:scale(.5);
	transform:scale(.5);
-webkit-transition:all .75s cubic-bezier(.65, -.55, .265, 1.55);
transition:all .75s cubic-bezier(.65, -.55, .265, 1.55);
	z-index:-999
}
.modal-wrap {
	position:relative;
	margin:0 auto;
	width:100%;
	max-height:100vh;
	overflow:auto;
	background:#fff;
	max-width:815px;
	padding:50px
}
.modal-wrap label {
	background:#FFD300;
	cursor:pointer
}
input.modal-check:checked~.modal-overlay {
opacity:1;
-webkit-transform:scale(1);
transform:scale(1);
z-index:999
}
#site-header a {
	color:#535353;
	font-family:SofiaProRegular;
	-webkit-font-smoothing:subpixel-antialiased
}
#site-footer, #site-footer a {
	color:#535353
}
#site-footer nav span {
	font-family:SofiaProBold;
	padding-right:1em;
	margin-right:1em;
	position:relative
}
#site-footer nav span::after {
content:'';
position:absolute;
top:50%;
right:0;
width:1px;
height:1em;
margin-top:-.5em;
background:#535353
}
#site-footer p {
	font-family:SofiaProMedium
}
body.home #contents header .ttl {
	position:relative;
	text-align:center
}
body.home #contents header .ttl::before {
content:'';
position:absolute;
top:50%;
left:0;
width:100%;
height:1px;
background-color:#c7c7c7
}
body.home #contents header .ttl span {
	position:relative;
	background:#fff;
	font-family:EssonnesHeadline-Regular;
	padding:0 1em
}
.news-detail, .news-list {
	position:relative
}
.news-detail img, .news-list img {
	width:100%
}
.news-detail .ttl, .news-list .ttl {
	font-weight:700;
	margin-top:1em
}
.news-detail .excerpt, .news-list .excerpt {
	margin-top:.5em;
	line-height:1.4
}
.news-detail .date, .news-list .date {
	margin-top:.8em;
	color:#8a8a8a;
	font-family:SofiaProRegular
}
body.news .pagination .page-numbers, body.news .pagination .screen-reader-text {
	display:none
}
body.news .pagination .page-numbers.next {
	display:inline-block
}
body.news #infscr-loading img, body.recruit .formarea .hiddenWrap {
	display:none
}
body.news #infscr-loading {
	clear:both;
	height:112px;
	position:relative
}
body.news #infscr-loading div em {
	position:absolute;
	text-indent:-9999px;
	top:50%;
	left:50%;
	width:30px;
	height:30px;
	border-radius:50%;
	border:2px solid #b6b6b6;
	border-right-color:transparent;
-webkit-animation:spin .8s linear infinite;
animation:spin .8s linear infinite;
	margin:-15px 0 0 -15px
}
@keyframes spin {
0% {
-webkit-transform:rotate(0);
transform:rotate(0);
opacity:.2
}
50% {
-webkit-transform:rotate(180deg);
transform:rotate(180deg);
opacity:1
}
100% {
-webkit-transform:rotate(360deg);
transform:rotate(360deg);
opacity:.2
}
}
@-webkit-keyframes spin {
0% {
-webkit-transform:rotate(0);
opacity:.2
}
50% {
-webkit-transform:rotate(180deg);
opacity:1
}
100% {
-webkit-transform:rotate(360deg);
opacity:.2
}
}
body.recruit .confWrap .hiddenWrap {
	display:inline
}
.mw_wp_form .errowrap .error, body.recruit .formlayout.mc .subPicture, body.recruit .formlayout.mc .support_office, body.recruit .formlayout.pt .subPicture, body.recruit .formlayout.pt .support_office, body.recruit .formlayout.pw .mainPicture {
	display:none
}
.mw_wp_form .error {
	color:red!important;
	font-size:1.2rem!important
}
.mw_wp_form .errowrap .error:first-child {
	display:block
}
.horizontal-item+.horizontal-item {
	margin-left:1em
}
.mw-wp-form_image img {
	width:300px;
	max-width:100%
}
.mw_wp_form_confirm .mw-wp-form_image+div, .mw_wp_form_confirm .red, .mw_wp_form_confirm dd .conf {
	display:none
}
