@charset "utf-8";
/*---------------------------------------------------------
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 ,input,textarea,select{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Noto Sans JP', sans-serif;
	box-sizing:border-box;
	position:relative;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
} */

* {
	-webkit-text-size-adjust: 100%;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	max-width:100%;
	height:auto;
	vertical-align:bottom;
	image-rendering: -webkit-optimize-contrast;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
}

body {
	background: #fff;
	font-size: 16px;
	font-feature-settings: "palt"; 
	color: #000;
	line-height: 1.5;
}
a {
	color: #000;
	outline: none;
	text-decoration:none;
	transition: .3s ;
}
a:hover{
	color:#666;
}
iframe{
	width:100%;
}
.sp {
	display: none!important;
}
/*---------------------------------------------------------
Common
---------------------------------------------------------*/
.container{
	max-width:1000px;
	width:92%;
	margin:auto;
}
main#front{
	margin-top:150px;
}
.red{
	color:#e50012;
}
/* .breadcrumbs{
	background:#fafafa;
	color:#666;
	font-size:12px;
	padding:0.5em 2%;
	margin-top:140px;
}
.breadcrumbs a{
	color:#333;
}
.breadcrumbs a:hover{
	text-decoration:underline;
} */
.pager{
	display:flex;
	justify-content:flex-end;
}
.pager span,
.pager a{
	display:flex;
	justify-content:center;
	align-items:center;
	border:1px solid #E9E5DF;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	width:36px;
	height:36px;
	margin:0 4px;
	transition:0.3s;
}
.pager span,
.pager a:hover{
	background:#008fd9;
	border:1px solid #008fd9;
	color:#fff;
}
/*---------------------------------------------------------
slider
---------------------------------------------------------*/
.sliderArea {
	background: #fff;
	overflow: hidden;
	padding-bottom:20px;
}
.sdgs .sliderArea{
	margin-bottom:60px;
}
.sliderWide {
	max-width: 100%;
	margin: 0 auto;
}
.sliderWide .slick-arrow {
	transition-duration: 0.3s;
}
.sliderWide:hover .slick-arrow {
	opacity: 1;
}
.slick-slider{
	position:unset;
}
.slider {
	max-width: 500px;
	margin: 0 auto;
	padding: 0;
}
#sdgs.slider .slick-slide {
	max-width: 100%;
	width:300px;
}
.slider .slick-list {
	overflow: visible;
}
.slider .slick-slide {
	padding: 0 10px;
	transition-duration: 0.3s;
	box-sizing:border-box;
}
.slider .slick-slide.slick-current {
	opacity: 1;
}
.slider .slick-slide a {
	display: block;
}
.slider .slick-slide a:hover {
	display: block;
	opacity: .7;
}
.sdgs .slick-slide::after{
	content:"";
	width:calc(100% - 20px);
	height:8px;
	border-bottom:8px solid #fff;
	position:absolute;
	bottom:-8px;
	left:0;
	right:0;
	margin:auto;
}
.slick-slide.c1::after{
	border-color:#e5243b;
}
.slick-slide.c2::after{
	border-color:#DDA63A;
}
.slick-slide.c3::after{
	border-color:#4C9F38;
}
.slick-slide.c4::after{
	border-color:#C5192D;
}
.slick-slide.c5::after{
	border-color:#FF3A21;
}
.slick-slide.c6::after{
	border-color:#26BDE2;
}
.slick-slide.c7::after{
	border-color:#FCC30B;
}
.slick-slide.c8::after{
	border-color:#A21942;
}
.slick-slide.c9::after{
	border-color:#FD6925;
}
.slick-slide.c10::after{
	border-color:#DD1367;
}
.slick-slide.c11::after{
	border-color:#FD9D24;
}
.slick-slide.c12::after{
	border-color:#BF8B2E;
}
.slick-slide.c13::after{
	border-color:#3F7E44;
}
.slick-slide.c14::after{
	border-color:#0A97D9;
}
.slick-slide.c15::after{
	border-color:#56C02B;
}
.slick-slide.c16::after{
	border-color:#00689D;
}
.slick-slide.c17::after{
	border-color:#19486A;
}

.slider img {
	height: auto;
	width: 100%;
}
.slick-prev, .slick-next {
	z-index: 1;
}
.slider-arrow {
	position: absolute;
	top: 50%;
	height: 36px;
	margin-top: -18px;  /* 高さの半分だけネガティブマージン */
	color: #fff;
	line-height: 36px;
	font-size: 36px;
	cursor: pointer;
	z-index: 10;  /* 重要 */
}
.slider-prev {
	left: 2%;
}
.slider-next {
	right: 2%;
}
.slick-dots {
	left: 0;
	right: 0;
}
/*---------------------------------------------------------
announce
---------------------------------------------------------*/
#important{
	background: #fafafa;
	padding:40px 0;
}
#announce{
	padding:60px 0;
}
.important{
	display:flex;
	border:1px solid #E9E5DF;
	border-radius:10px;
	overflow:hidden;
}
.important h3{
	background:#f5f5f5;
	display:flex;
	justify-content:center;
	align-items:center;
	color:#e50012;
	font-size:1.25em;
	font-weight:600;
	width:28%;
}
.important h3:after{
	content: "";
	width: 48%;
	height: 4px;
	background: #e50012;
	position: absolute;
	top: 60%;
	left: 0;
	right: 0;
	margin: auto;
}
.important ul{
	background:#fff;
	border-left:1px solid #E9E5DF;
	display:flex;
	flex-direction:column;
	align-items:center;
	width:72%;
	padding:5%;
}
.important ul li,
.announce ul li{
	width:100%;
	padding-bottom:1em;
	margin-bottom:1em;
}
.important ul li:not(:last-child),
.announce ul li{
	border-bottom:1px solid #E9E5DF;
}
.important ul li:last-child{
	padding-bottom:0;
	margin-bottom:0;
}
.important ul a,
.announce ul a{
	display:flex;
}
.important .date,
.announce .date{
	width:25%;
}
.important .ttl,
.announce .ttl{
	flex:1;
}
.announce{
	display:block;
}
.announce h3{
	font-size:2.25em;
	font-weight:600;
	text-align:center;
	margin-bottom: 40px;
}
.announce h3 small{
	display:block;
	color:#000;
	font-size:16px;
	font-weight:300;
}
.announce ul{
	display:flex;
	flex-direction:column;
	align-items:center;
	width:100%;
}
.announce .more{
	padding-right: 1em;
	margin-left: auto;
	display: table;
}
.announce .more:after{
	position: absolute;
	top: 0.6em;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.announce .more:hover:after{
	opacity:.6;
}
/*---------------------------------------------------------
top banner
---------------------------------------------------------*/
#top_bnr{
	background:#fafafa;
	padding:60px 0;
}
#top_bnr ul li:not(:last-child){
	margin-bottom:60px;
}
/*---------------------------------------------------------
top movie
---------------------------------------------------------*/
#top_movie{
	margin:60px 0 ;
}
#top_movie h2{
	background:url("img/icn_movie.svg") no-repeat top center / 77px;
	font-size:1.875em;
	font-weight:600;
	text-align:center;
	padding-top:88px;
	margin-bottom:45px;
}
#top_movie ul{
	display:flex;
	justify-content:space-between;
}
#top_movie ul li{
	width:30%;
}
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.movie-wrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
#top_movie h4{
	font-size:14px;
	text-align:center;
	margin-top:1em;
}
/*---------------------------------------------------------
top business
---------------------------------------------------------*/
#top_business{
	margin-bottom:100px;
}
#top_business h2{
	background:url("img/icn_bus.svg") no-repeat top center / 77px;
	font-size:1.875em;
	font-weight:600;
	text-align:center;
	padding-top:88px;
	margin-bottom:45px;
}
#top_business ul{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#top_business ul li{
	width:49.5%;
	margin-bottom:2em;
}
#top_business ul li:nth-child(5),
#top_business ul li:last-child{
	width:100%;
	margin-bottom:0;
}
/*---------------------------------------------------------
top sightseeing
---------------------------------------------------------*/
#top_sightseeing{
	margin-bottom:100px;
}
#top_sightseeing h2{
	background:url("img/icn_division.svg") no-repeat top center / 77px;
	font-size:1.875em;
	font-weight:600;
	text-align:center;
	padding-top:88px;
	margin-bottom:45px;
}
#top_sightseeing ul{
	display:flex;
	justify-content:space-between;
}
#top_sightseeing ul li{
	border-bottom:1px solid #E9E5DF;
	width:32%;
	padding-bottom:2em;
}
#top_sightseeing figcaption{
	font-size:18px;
	font-weight:300;
	line-height:1.8;
	text-align:center;
	margin-top:0.5em;
}
#top_sightseeing figcaption span,
#top_sightseeing figcaption strong{
	font-weight:600;
}
/*---------------------------------------------------------
sns
---------------------------------------------------------*/
#sns{
	text-align:center;
}
#sns h3{
	font-size: 1.525em;
	font-weight:bold;
	margin-bottom:1em;
}
#sns ul{
	display:flex;
	justify-content:center;
}
#sns ul li{
	max-width:64px;
	width:20%;
	margin:0 10px;
}
/*---------------------------------------------------------
group
---------------------------------------------------------*/
#group{
	background-color: rgba(231, 231, 231, 1);
	background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(227, 227, 227, 1) 4px, rgba(227, 227, 227, 1) 8px );
	padding:120px 0;
}
#group:before{
	background: url(img/sep.svg) no-repeat top center / 100%;
	content: "";
	width: 100%;
	height: 60px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
#group h2{
	font-size:4em;
	font-weight:600;
	text-align:center;
	margin-bottom:45px;
}
#group h2{
	font-size:4em;
	font-weight:900;
	text-align:center;
	margin-bottom:40px;
	z-index:2;
}
#group h2:after{
	content:"";
	background:#E60A17;
	border-radius:50%;
	width:140px;
	height:140px;
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	margin:auto;
	z-index:-1;
}
#group .company {
	width: 92%;
	max-width: 900px;
	margin: 0 auto 60px;
}
#group p{
	font-size:24px;
	text-align:center;
	margin-bottom:80px;
	
}
#group h3{
	font-size:2.25em;
	font-weight:300;
	text-align:center;
	margin-bottom:50px;
}
#group ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	max-width: 1200px;
	margin: 0 auto 80px;
}
#group ul.bus{
	max-width:1000px;
}
#group ul li{
	width:298px;
}
#group .other{
	max-width: 1200px;
	margin: auto;
}
#group .other div{
	text-align:center;
}
#group .other ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	max-width: 1200px;
	margin: 0 auto 80px;
}
/*---------------------------------------------------------
Archive / single
---------------------------------------------------------*/
#archive{
	padding:40px 0 150px;
}
#single{
	padding:100px 0 50vh;
}
#archive .announce{
	margin-bottom:60px;
}
#archive h2{
	color: #008fd9;
	font-size: 2.25em;
	font-weight: 600;
}
#single h2{
	font-size: 2.25em;
	font-weight: 600;
	margin-bottom:1em;
}
#archive h2 small{
	display: block;
	color: #000;
	font-size: 16px;
	font-weight: 300;
	margin-bottom:60px;
}
#single .date{
	color:#666;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	font-size:.8em;
}
/*---------------------------------------------------------
recruit
---------------------------------------------------------*/
#recruit{
	padding:40px 0 150px;
}
#recruit figure{
	margin-bottom:100px;
}
#recruit figure img{
	width:100%;
	height:auto;
}
#recruit h3 {
	color: #008fd9;
	font-size: 2.25em;
	font-weight: 600;
	margin-bottom:.5em;
}
#recruit h3.j-d{
	display:table;
	border: 4px solid #000;
	color:#000;
	font-size: 2.25em;
	font-weight: 600;
	position: relative;
	padding: 0.2rem 4rem;
	text-align:center;
	margin:0 auto 60px;
}
#recruit h3.j-d:before {
	content:"";
	background: #fff100;
	position: absolute;
	bottom: -8px;
	right: -10px;
	width: 102%;
	height: 105%;
	z-index: -1;
}
#recruit p{
	font-size:1.125em;
	line-height:2;
	margin-bottom:2em;
}
#recruit .announce{
	margin-bottom:100px;
}
#recruit .r_bnr{
	display:flex;
	justify-content:space-between;
	margin-bottom:100px;
}
#recruit h4 {
	background: url(img/icn_buil.svg) no-repeat top center / 77px;
	font-size: 1.875em;
	font-weight: 600;
	text-align: center;
	padding-top: 88px;
	margin-bottom: 45px;
}
#recruit .facility .tokyo{
	border:1px solid #E9E5DF;
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
	padding:20px;
}
#recruit .facility .tokyo .movie-wrap,
#recruit .facility .tokyo .add{
	width:48%;
}
#recruit .facility .tokyo .movie-wrap{
	padding-bottom: calc(56.25% / 2);
}
#recruit h5{
	font-size: 1.55em;
	font-weight: 600;
}
#recruit i{
	font-size: 1.55em;
	font-weight: 600;
	margin-right:.4em;
	vertical-align: bottom;
}
#recruit strong{
	font-size: 1.25em;
	font-weight: 600;
}
#recruit .facility .dormitory{
	margin-top:30px;
}
#recruit .facility .dormitory figure{
	display:flex;
	align-items:center;
	margin-bottom:0;
}
#recruit .facility .dormitory figure img{
	width:auto;
	margin-right:20px;
}
#recruit ul.office{
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	margin:30px 0 100px;
}
#recruit ul.office li{
	width:30%;
	padding:10px 0;
}
#recruit ul.office li:nth-child(2){
	border-right:1px solid #E9E5DF;
	border-left:1px solid #E9E5DF;
	width: 36%;
	padding: 10px 2%;
}
#recruit .btnList {
	display: flex;
	justify-content: space-between;
	width:100%;
	margin-bottom:60px;
}
#recruit .ask{
	border: 1px solid #E9E5DF;
	border-radius: 10px;
	display:flex;
	align-items:center;
	padding: 20px;
	text-align: center;
	color: #e60012;
	margin-bottom:60px;
}
#recruit .ask h5{
	width:50%;
}
#recruit .ask div{
	text-align:left;
}
#recruit .ask a{
	font-size:1.5em;
	font-weight:500;
	line-height: 2;
	color: #000;
}
#recruit .recruit-pr{
	display:flex;
	justify-content: center;
	align-items:center;
	margin:60px 0;
}
#recruit .recruit-pr li{
	border: 1px solid #E9E5DF;
	margin:0 2%;
}
#recruit dl{
	border-bottom: 1px solid #E9E5DF;
	display:flex;
	width:80%;
	padding:1em 10px;
	margin:0 auto 1em;
}
#recruit dl dt{
	font-size:1.125em;
	font-weight:600;
	width:30%;
}
#recruit dl dd{
	width:70%;
}
#recruit a.interview{
	display: table;
	border: 1px solid #aaa;
	padding: 0.5em 2em;
	margin: 3em auto;
}
/*---------------------------------------------------------
Page
---------------------------------------------------------*/
#page{
	padding:40px 0 150px;
}
#page h2{
	font-size:3em;
	font-weight:600;
	margin-bottom:45px;
}
#page h2.page{
	margin-bottom:10px;
}
#page .pageimg{
	margin-bottom:40px;
}
#page h3{
	color:#E60012;
	font-size:2em;
	font-weight:600;
	margin-bottom:1em;
}
#page h4{
	color:#E60012;
	font-size:1.5em;
	font-weight:600;
	margin-bottom:1em;
}
#page.sdgs h4{
	color:#000;
	text-align:center;
}
#page.sdgs h3{
	color:#000;
	font-size:2em;
	font-weight:900;
	text-align:center;
	margin-bottom:40px;
	z-index:2;
}
#page.sdgs h3:after{
	content:"";
	background:#E60A17;
	border-radius:50%;
	width:100px;
	height:100px;
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	margin:auto;
	z-index:-1;
}
#page strong{
	font-size:1.125em;
	font-weight:600;
}
#page p{
	line-height:2;
	margin-bottom:2em;
}

#page a{
	color: #008fd9;
}
#page a:hover{
	text-decoration:underline;
}
.mw_wp_form .error {
	font-weight: 600;
	position: absolute;
	bottom: -1.5em;
	left: 0;
}
#page dl{
	display:flex;
	border:1px solid #E9E5DF;
	border-bottom:0;
	line-height:2;
}
#page dl.last{
	border-bottom:1px solid #E9E5DF;
}
#page dl dt{
	display:flex;
	justify-content:center;
	align-items:center;
	background: #fafafa;
	border-right: 1px solid #E9E5DF;
	width:24%;
	padding:1em;
	
}
#page dl dd{
	padding:1em;
	flex:1;
}
#page dl dd a{
	color: #008fd9;
}
.safety ol{
	list-style: decimal inside;
	line-height:2;
}
.safety ol li {
	font-size:1.125em;
	font-weight: 500;
	margin-bottom:2em;
}
.safety ol li ol{
	margin:1em 0 1em 2em;
	list-style: decimal outside;
}
.safety ol li ul{
	margin:1em 0 1em 2em;
	list-style: circle outside;
}
.safety ol li ol li,
.safety ol li ul li{
	font-size:.875em;
	font-weight:300;
	margin-bottom: 1em;
}
.safety ol li div{
	font-size:.875em;
	font-weight:300;
	margin:1em 0 1em 2em;
}
figure.star{
	display:flex;
	align-items:center;
	margin:60px 0;
}
figure.star img{
	height:100%;
}
figure.star figcaption{
	flex:1;
	line-height:2;
	margin-left:2em;
}
#page figure.star figcaption h3{
	margin-bottom:0;
}
.chartered table{
	width:100%;
	margin-bottom:40px;
}
.chartered table th{
	background:#fafafa;
	border:1px solid #E9E5DF;
	padding:0.5em 1em;
	vertical-align:middle;
}
.chartered table td{
	border:1px solid #E9E5DF;
	padding:0.5em 1em;
	vertical-align:middle;
	text-align:center;
}
.chartered table td.name{
	text-align:left;
}
.chartered table tr:last-child th,
.chartered table tr:last-child td{
	border-top:1px double #ccc;
}
.chartered table td a{
	display:block;
}
.bus{
	margin-bottom:60px;
}
.bus .ttl{
	display:flex;
	align-items: center;
	border-bottom: 1px solid #E9E5DF;
	padding-bottom:20px;
	margin-bottom:20px;
}
.bus .ttl .icn{
	width:86px;
	margin-right:2%;
}
#page .bus .ttl h2{
	font-size: 4em;
	font-weight: 400;
	margin-bottom:0;
}
.bus .detail{
	display:flex;
}
.bus .photo{
	width:50%;
}
.bus .equipment{
	width:50%;
	padding-left:5%;
}
.bus .photo .main{
	border: 1px solid #E9E5DF;
	margin-bottom:10px;
}
.bus .photo ul{
	display:flex;
	justify-content:space-between;
}
.bus .photo ul li{
	border: 1px solid #E9E5DF;
	padding:2px;
}
.bus .photo ul li:not(:last-child){
	margin-right:5px;
}
.bus .equipment ul{
	
}
.bus .equipment ul li{
	border-bottom: 1px dashed #bbb;
	padding:10px ;
}
.bus .equipment ul li.icon{
	display:flex;
}
.bus .equipment ul li.icon img{
	width:13.5%;
	margin-right:5px;
}
.bus .equipment ul li.icon img:last-child{
	margin-right:0;
}
.bus .equipment ul li a{
	margin-right:1em;
}
.bus .equipment ul li a i{
	font-size:1.5em;
	color:#999;
	margin-right: 5px;
	vertical-align: bottom;
	
}
.chartered ul.office{
	display:flex;
	justify-content:space-between;
	width:100%;
	margin:30px 0 100px;
}
.chartered ul.office li{
	width:25%;
	padding: 10px 2%;
}
.chartered ul.office li:not(:last-child){
	border-right:1px solid #E9E5DF;
}
.chartered ul.office li:first-child{
	padding-left:0;
}
.chartered ul.office li:last-child{
	padding-right:0;
}
ul.inquiry{
	display:flex;
	flex-wrap: wrap;
	font-size: 1.5em;
	margin-bottom: 4em;
}
ul.inquiry li{
	width:50%;
	margin-bottom: 1em;
}
ul.inquiry li small{
	display: block;
	font-size:0.8em;
}
ul.inquiry li i{
	margin-right:0.5em;
}
.eco{
	color:#299c31;
	text-align:center;
}
.eco .bd{
	border: 5px solid #299c31;
	border-radius: 10px;
	width: 80%;
	padding: 60px 30px;
	margin: auto;
}
.eco .bd h5{
	font-size:2em;
	font-weight:600;
	margin-bottom:2em;
}
#page .eco .bd strong{
	display:block;
	font-size:1.25em;
	font-weight:600;
	margin:2em 0;
}
.eco .block{
	display:flex;
	align-items:center;
	margin-bottom:60px;
}
.eco .block .text{
	flex:1;
	line-height: 2;
	text-align:left;
	padding-right:20px;
}
.eco .block .text b{
	display:block;
	font-size:1.25em;
	font-weight:600;
	line-height: 1;
	margin-bottom:.5em;
}
.msg figure{
	margin-bottom:40px;
}
#page.supporting-women h2{
	display:none;
}
#page .women{
	background:
		url("img/up_arc.svg") no-repeat top center / 100%,
		url("img/down_arc.svg") no-repeat bottom center / 100%;
	padding: 100px 0;
}
figure.wo_logo{
	width: 40%;
	margin: 60px auto 0;
}
figure.wo_logo img{
	width:100%;
}
/*---------------------------------------------------------
Entry
---------------------------------------------------------*/
.entry form{
	max-width: 680px;
	font-size: 1.125em;
	font-weight: 300;
	margin: auto;
	border: 1px solid #ccc;
	border-radius: 10px;
	padding: 40px;
}
#page.entry form p{
	margin-bottom:0.5em;
}
.entry form small {
	font-size: 0.8em;
	color: #008fd9;
}

.entry .mw_wp_form_preview form small{
	display:none;
}
.entry .mw_wp_form_preview .block{
	display:flex;
	flex-wrap:wrap;
	border-bottom: 1px solid #E9E5DF;
}
.entry .mw_wp_form_preview .block p{
	font-weight:600;
	margin-right: 1em;
}
.entry .mw_wp_form_preview .block p::after{
	content:"：";
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	margin:auto;
}
.entry form div.block{
	border-bottom: 1px dashed #ccc;
	margin-bottom: 1em;
	padding-bottom:1em;
}
.entry form input[type="text"],
.entry form textarea,
.entry form input[type="email"]{
	border: 1px solid #ccc;
	border-radius: 4px;
	padding: 0.5em 1em;
	width: 100%;
}
.entry form select{
	border: 1px solid #ccc;
	border-radius: 4px;
	padding: 0.5em 1em;
}
.entry form input.age{
	width:5em;
}
.entry form input.zip{
	width:8em;
}
.entry form input[type=submit] {
	text-align: center;
	display: block;
	border: 0;
	background: #d51323;
	border-radius: 4px;
	box-shadow: 4px 4px 0px 0 #00a0e9;
	color: #fff;
	font-size: 1.125em;
	font-weight: 400;
	width:100%;
	padding: 0.3em 0 0.5em;
	margin-top: 20px;
	transition: all 0.1s ease 0s;
	cursor: pointer;
	position: relative;
}
.entry form input[type=submit]:hover {
	text-decoration: none;
	transform: translate3d(4px, 4px, 0);
	box-shadow: none;
}
/*---------------------------------------------------------
SDGs
---------------------------------------------------------*/
.sdgs .ex{
	margin-top:100px;
}
.sdgs .ex .notes{
	border-bottom: dotted 5px #999;
	padding-bottom: .5em;
	margin-bottom: 2em;
	text-align: right;
}
.notes .i1{
	background:url("img/j-ic.svg") no-repeat left top 4px / 18px;
	padding-left:1.2em;
}
.notes .i2{
	background:url("img/h-ic.svg") no-repeat left top 4px / 18px;
	padding-left:1.2em;
}
.notes .i3{
	background:url("img/m-ic.svg") no-repeat left top 4px / 18px;
	padding-left:1.2em;
}
.notes .i4{
	background:url("img/c-ic.svg") no-repeat left top 4px / 18px;
	padding-left:1.2em;
}
.ex_body{
	display:flex;
	border-bottom: dotted 5px #999;
	padding-bottom: 2em;
	margin-bottom:4em;
}
.ex_body figure{
	width:20%;
	margin-right:5%;
}
.ex_body .txt{
	width:75%;
}
#page .ex_body .txt p{
	margin-bottom:1em;
}
.efforts li{
	margin-top:.5em;
}
.efforts .ico{
	display: inline-block;
	width: 20px;
	margin: 0 2px;
}
.ex .sep{
	border-radius: 50% 50% 50% 50%;
	height: 10px;
	margin-bottom: 1em;
}
.no1 .sep{
	background:#e5243b;
}
.no2 .sep{
	background:#DDA63A;
}
.no3 .sep{
	background:#4C9F38;
}
.no4 .sep{
	background:#C5192D;
}
.no5 .sep{
	background:#FF3A21;
}
.no6 .sep{
	background:#26BDE2;
}
.no7 .sep{
	background:#FCC30B;
}
.no8 .sep{
	background:#A21942;
}
.no9 .sep{
	background:#FD6925;
}
.no10 .sep{
	background:#DD1367;
}
.no11 .sep{
	background:#FD9D24;
}
.no12 .sep{
	background:#BF8B2E;
}
.no13 .sep{
	background:#3F7E44;
}
.no14 .sep{
	background:#0A97D9;
}
.no15 .sep{
	background:#56C02B;
}
.no16 .sep{
	background:#00689D;
}
.no17 .sep{
	background:#19486A;
}
.no1 .circle{
	color:#e5243b;
}
.no2 .circle{
	color:#DDA63A;
}
.no3 .circle{
	color:#4C9F38;
}
.no4 .circle{
	color:#C5192D;
}
.no5 .circle{
	color:#FF3A21;
}
.no6 .circle{
	color:#26BDE2;
}
.no7 .circle{
	color:#FCC30B;
}
.no8 .circle{
	color:#A21942;
}
.no9 .circle{
	color:#FD6925;
}
.no10 .circle{
	color:#DD1367;
}
.no11 .circle{
	color:#FD9D24;
}
.no12 .circle{
	color:#BF8B2E;
}
.no13 .circle{
	color:#3F7E44;
}
.no14 .circle{
	color:#0A97D9;
}
.no15 .circle{
	color:#56C02B;
}
.no16 .circle{
	color:#00689D;
}
.no17 .circle{
	color:#19486A;
}
ul.sdgs-company{
	display:flex;
	flex-wrap:wrap;
	width: 80%;
	margin: 0 auto 6px;
}
ul.sdgs-company li{
	display:flex;
	justify-content:center;
	align-items:center;
	margin-bottom:30px;
}
ul.sdgs-company li:first-child{
	width:100%;
	text-align:center;
}
ul.sdgs-company li:nth-child(3){
	text-align:center;
}
ul.sdgs-company li:last-child{
	text-align:right;
}
ul.sdgs-company li:not(:first-child){
	width:calc( 100% / 3);
}
ul.sdgs-company li img{
	width:80%;
}
figure.sdgs{
	width:70%;
	margin:auto;
}
/*---------------------------------------------------------
Sports
---------------------------------------------------------*/
#page.sports{
	text-align:center;
}
#page.sports h1{
	margin-bottom:15px;
}
.sports ul.teams{
	display:flex;
	justify-content:space-between;
	margin-bottom:80px;
}
#page.sports h2{
	font-size:60px;
	font-weight:900;
}
#page.sports h2 span{
	display:block;
	font-size:0.5em;
}
#page.sports p{
	font-size:30px;
	margin-bottom:0;
}
#page.sports .sep{
	display:block;
	margin:30px 0;
}
#page.sports .japan{
	margin-top:80px;
}
#page.sports .japan p{
	color:#182987;
	font-size: 1.5em;
	line-height: 1.3;
	width:72%;
	text-align:left;
	margin:auto;
}
#page.sports .mg80{
	margin:80px 0;
}
#page.sports .lists li{
	margin-bottom:40px;
}
@media screen and (max-width: 820px) {
	#page.sports h1{
		width: 80%;
		margin: 0 auto 15px;
	}
	.sports ul.teams{
		flex-wrap:wrap;
		margin-bottom: 40px;
	}
	.sports ul.teams li{
		width:32%;
		margin-bottom:20px;
	}
	#page.sports h2 {
		font-size: 36px;
	}
	#page.sports p {
		font-size: 16px;
	}
	#page.sports .sep img.circle{
		width:30px;
	}
	#page.sports .japan p {
		font-size: 1.25em;
		width: 100%;
	}
	#page.sports .mg80 {
		margin: 40px 0;
	}
}
/*---------------------------------------------------------
Mobile
---------------------------------------------------------*/
/*Media Queries*/

@media screen and (max-width: 820px) {
	body, html {
		min-width: 100%;
	}
	body {
		font-size: 14px;
	}
	img {
		max-width: 100%;
		width:100%;
	}
	img.sp {
		width: 100%;
	}
	.pc {
		display: none!important;
	}
	.sp {
		display: block!important;
	}
	main#front{
		margin-top:90px;
	}
	/* .breadcrumbs{
		font-size:10px;
		margin-top:80px;
	} */
	/* header{
		background:#fff url("img/hd_bgs.svg") no-repeat top center/ 101%;
		height:80px;
	}
	header h1 img {
		width: 180px;
	}
	header .navi{
		display: none;
		position: fixed;
		z-index: -1;
		top: 80px;
		left: 0;
		background: #fff;
		width: 100%;
		height: 100%;
		overflow-y: scroll;
		padding:0 15px 150px;
		opacity: 0;
		transition: opacity .6s ease, visibility .6s ease;
	} */
	.hamburger {
		display : block;
		position: absolute;
		z-index : 3;
		top:25px;
		right : 10px;
		width : 32px;
		height: 32px;
		cursor: pointer;
		text-align: center;
		z-index:10;
	}
	.hamburger span {
		display : block;
		position: absolute;
		width   : 20px;
		height  : 2px ;
		left    : 6px;
		background : #000;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {
		top: 8px;
	}
	.hamburger span:nth-child(2) {
		top: 15px;
	}
	.hamburger span:nth-child(3) {
		top: 22px;
	}
	.hamburger.active span:nth-child(1) {
		top : 16px;
		left: 6px;
		background :#000;
		-webkit-transform: rotate(-45deg);
		-moz-transform   : rotate(-45deg);
		transform        : rotate(-45deg);
	}
	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 16px;
		background :#000;
		-webkit-transform: rotate(45deg);
		-moz-transform   : rotate(45deg);
		transform        : rotate(45deg);
	}
	/* header .navi.active {
		display:flex;
		flex-direction:column-reverse;
		align-items: inherit;
		justify-content: flex-end;
		opacity: 1;
		z-index: 10;
	}
	header nav{
		display:block;
	}
	header nav ul{
		display: flex;
		flex-direction: column-reverse;
		width: 100%;
		justify-content: flex-start;
	}
	header nav ul li {
		border-bottom: 1px solid #E9E5DF;
		font-weight: 300;
		line-height: 3;
		padding: 0 1em;
		margin: 0;
	}
	header nav ul li:after,
	header .btns a:after{
		position: absolute;
		top: calc( 50% - 6px );
		right: 10px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 6px;
		height: 6px;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#google_language_translator img{
		width:auto;
	}
	header .btns {
		flex-direction: column;
		width:100%;
		height:auto;
	}
	header .btns a {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		font-size: 14px;
		font-weight: 300;
		line-height:3;
		width: 100%;
		padding-left:1em;
	}
	header .btns a img{
		width:18px;
		margin-right:0.5em;
	}
	header .btns a.inquiry{
		border:0;
		border-bottom: 1px solid #E9E5DF;
	}
	header .btns a.recruit {
		background: unset;
		border-bottom: 1px solid #E9E5DF;
		color: #000;
	} */
	.slider-arrow{
		color:#bbb;
	}
	.important {
		flex-direction: column;
		border-radius:5px;
	}
	.important h3{
		line-height: 4;
		width: 100%;
	}
	.important h3:after {
		width: 40%;
		top: 70%;
	}
	.important ul{
		border-left:0;
		font-size:12px;
		width: 100%;
		padding: 5% 4%;
	}
	.important .date, .announce .date {
		width: 35%;
	}
	#announce {
		padding: 40px 0;
	}
	.announce {
		flex-direction:column;
	}
	.announce h3{
		display:flex;
		align-items: baseline;
		width:100%;
		margin-bottom: .5em;
	}
	.announce h3 small{
		font-size:14px;
		margin-left:1em;
	}
	.announce ul {
		font-size:12px;
		width: 100%;
		padding: 2% 0 ;
	}
	#top_bnr{
		padding: 40px 0;
	}
	#top_bnr ul li:not(:last-child) {
		margin-bottom: 15px;
	}
	#top_movie {
		margin: 40px 0;
	}
	#top_business{
		margin-bottom:20px;
	}
	#top_movie h2,
	#top_business h2,
	#top_sightseeing h2,
	#recruit h4	{
		background-size: 48px;
		font-size: 1.5em;
		font-weight: 600;
		text-align: center;
		padding-top: 58px;
		margin-bottom: 45px;
	}
	#top_movie ul{
		flex-direction:column;
	}
	#top_movie ul li {
		width: 100%;
		margin-bottom: 30px;
	}
	#top_business,
	#top_sightseeing{
		margin-bottom: 60px;
	}
	#top_business ul{
		flex-direction:column;
	}
	#top_business ul li {
		width: 100%;
		margin-bottom: 1em;
	}
	#top_sightseeing ul{
		flex-direction:column;
	}
	#top_sightseeing ul li {
		border-bottom: 0;
		width: 100%;
	}
	#group{
		padding:60px 0;
	}
	#group h2 {
		font-size: 1.5em;
		margin-bottom: 50px;
	}
	#group h2:after {
		width: 5em;
		height: 5em;
	}
	#group p{
		font-size:18px;
	}
	#group h3 {
		font-size: 1.5em;
		margin-bottom: 30px;
	}
	#group .other{
		flex-direction:column;
	}
	#group .other div {
		width: 100%;
	}
	#group div.other div:nth-child(1){
		margin-bottom:80px;
	}
	#archive {
		padding: 30px 0 50px;
	}
	#single{
		padding:30px 0 30vh;
	}
	#recruit {
		padding: 30px 0 50px;
	}
	#page{
		padding: 30px 0 50px;
	}
	#page h2 {
		font-size: 2em;
		margin-bottom: 20px;
	}
	#recruit figure {
		margin-bottom: 20px;
	}
	#recruit .announce {
		margin-bottom: 30px;
	}
	#recruit .r_bnr {
		flex-direction:column;
		margin-bottom: 30px;
	}
	#recruit .r_bnr a{
		display:block;
		width:100%;
		margin-bottom:10px;
	}
	#recruit .facility{
		flex-direction:column;
	}
	#recruit .facility .tokyo {
		flex-direction:column;
		padding: 10px;
	}
	#recruit .facility .tokyo .movie-wrap,
	#recruit .facility .tokyo .add {
		width: 100%;
	}
	#recruit .facility .tokyo .add{
		border-bottom: 1px solid #E9E5DF;
		padding-bottom:20px;
	}
	#recruit .facility .tokyo .movie-wrap {
		padding-bottom: 56.25%;
	}
	#recruit h5{
		text-align:center;
	}
	#recruit ul.office {
		flex-direction:column;
		margin: 30px 0 40px;
	}
	#recruit ul.office li {
		width: 100%;
		padding: 10px 0;
	}
	#recruit ul.office li:nth-child(2) {
		border: 1px solid #E9E5DF;
		border-width: 1px 0 1px 0;
		width: 100%;
		padding: 10px 0;
	}
	#recruit h3{
		font-size:1.5em;
	}
	#recruit h3.j-d{
		font-size:1.5em;
		margin-bottom:20px;
	}
	#recruit .btnList{
		flex-wrap:wrap;
		margin-bottom: 30px;
	}
	#recruit .btnList li{
		width:30%;
		margin-bottom:12px;
	}
	#recruit .ask {
		border-radius: 5px;
		flex-wrap:wrap;
		justify-content: center;
		padding: 10px;
		text-align: center;
		margin-bottom: 30px;
	}
	#recruit .ask h5 {
		width: 100%;
	}
	#recruit .recruit-pr {
		flex-wrap:wrap;
		margin: 20px 0;
	}
	#recruit .recruit-pr li:not(:first-child) {
		border:0;
		width:48%;
		margin: 10px 0 ;
	}
	#recruit dl{
		width:100%;
	}
	figure.star{
		flex-direction:column;
		margin:30px 0;
	}
	figure.star img{
		width:60%;
	}
	.tbwrap{
		overflow: auto;
		width: 100%;
	}
	.chartered table td,
	.chartered table th{
		white-space:nowrap;
	}
	.bus .ttl .icn {
		width: 64px;
	}
	#page .bus .ttl h2 {
		font-size: 3em;
	}
	.bus .detail {
		flex-direction: column;
	}
	.bus .photo,.bus .equipment{
		width:100%;
		padding:0;
	}
	.bus .equipment ul li {
		padding: 10px 0;
	}
	.bus .equipment ul li.icon img {
		width: 13%;
	}
	ul.inquiry li {
		width: 100%;
	}
	#page.contact h3{
		font-size:1.5em;
	}
	ul.inquiry{
		margin-bottom:2em;
	}
	.eco .bd {
		border: 3px solid #299c31;
		border-radius: 5px;
		width: 100%;
		padding: 30px 20px;
	}
	.eco .bd h5 {
		font-size: 1.85em;
	}
	.eco .block {
		flex-direction:column;
		margin-bottom: 30px;
	}
	.eco .block .text b img{
		width:auto;
	}
	footer{
		font-size:12px;
	}
	footer ul{
		justify-content: center;
	}
	footer ul li{
		margin:0 3% 1em;
	}
	footer::before {
		display: block;
		content: "";
		background: url(img/ft_bg.png) no-repeat bottom center / cover;
		height: 30px;
		width: 100%;
		position: absolute;
		top: -27px;
		left: 0;
	}
	#page-top{
		width:48px;
	}
	#page.sdgs h4 {
		font-size: 1.4em;
	}
	/* header.sdgs {
		height: 100px;
	}
	header.sdgs h1 {
		margin-top: 50px;
	}
	header.sdgs h1 img {
		width: 300px;
	} */
	.sdgs .ex .notes{
		font-size:.6em;
		line-height:2;
		text-align:center;
	}
	figure.sdgs,
	ul.sdgs-company{
		width:100%;
	}
	ul.sdgs-company li:first-child img{
		width:50%;
	}
	.notes span{
		display: inline-block;
		line-height: 16px;
	}
	.notes .i1,.notes .i2,
	.notes .i3,.notes .i4{
		background-size:16px;
		background-position:left center;
		padding-left: 2em;
	}
	.ex_body{
		display:block;
		border-bottom: dotted 5px #999;
		padding-bottom: 2em;
		margin-bottom:4em;
	}
	.ex_body figure{
		width:40%;
		margin:0 auto 2em;
	}
	.ex_body .txt{
		width:100%;
	}
	#page .women{
		background:
			url("img/up_arc.svg") no-repeat top center / 100%,
			url("img/down_arc.svg") no-repeat bottom center / 100%;
		padding: 50px 0;
	}
	figure.wo_logo {
		width: 60%;
		margin: 30px auto 0;
	}
	#sns {
		margin-bottom: 30px;
	}
	#sns ul li{
		max-width:40px;
	}
}
