@charset "UTF-8";
.sp{
	display:none;
}
@media screen and (max-width:480px) {
/*------------------------------*/
/* header */
/*------------------------------*/
header{
	margin:0;
}
header #logo {
	width:200px;
    margin-top:10px;
    margin-left:5%;
    float:none;
    margin-right:0;
}
header #logo a {
    float: none;
	margin:0;
	height:auto;
}
header dl,
header h1{
	display:none;
}
.openbtn1 {
    top: 8px;
    right: 5%;
}
.btn_scroll {
	display:none;
}
#g-nav li a {
	font-size:18px;
}
/*------------------------------*/
/* topimg */
/*------------------------------*/
header + div{
	top:50px!important;
}
#topimg {
    height: 605px;
    padding-top: 180px;
    margin-left:5%;
}
#topimg #copy {
    padding: 30px 20px 30px 0;
    width: 200px;
    height:250px;
}
#topimg #copy dt {
    font-size: 14px;
    width: 30px;
}
#topimg #copy dd {
    font-size: 30px;
    width: 53px;
}
#topimg #news {
	display:none;
}
/*------------------------------*/
/* about */
/*------------------------------*/
#about{
	padding-bottom: 40px;
	margin-bottom:100px;
}
#about .title {
    font-size:50px;
    top: -115px;
}
#about dl{
	margin-top:-105px;
	overflow:hidden;
	width:94%;
}
#about dl dt{
	width:100%;
	height:250px;
	float:none;
	background-size:100% auto;
	margin-bottom:30px;
}
#about dl dd{
	width:100%;
	float:none;
}
#about dl dd h3 span{
	font-size:26px;
	height:40px;
	line-height:40px;
}
#about dl dd p{
	font-size:14px;
	margin-top:25px;
	margin-bottom:25px;
}
#about dl dd button{
	width:250px;
	padding: 0;
}
#about dl dd button a{
	height:50px;
	line-height:50px;
	font-size:16px;
}
/*------------------------------*/
/* numbers */
/*------------------------------*/
#numbers{
	margin-bottom:60px;
}
#numbers h2.title{
	margin-bottom:10px;
}
#numbers h3.title{
	text-align:center;
	font-size:50px;
	margin-bottom:30px;
}
#numbers ul#numbers_box {
	width:92%;
	display:block;
	gap:0;
	margin-bottom:40px;
}
#numbers ul#numbers_box > li{
	height:200px;
	width:100%;
	padding-top:20px;
	margin-bottom:30px;
}
#numbers ul#numbers_box > li h3{
	font-size:22.5px;
	margin-bottom:20px;
	line-height:22.5px;
}
#numbers ul#numbers_box > li h4{
	line-height:80px;
	margin-bottom:0px;
	font-size:38px;
}
#numbers ul#numbers_box > li h4 span{
	font-size:80px;
}
#numbers ul#numbers_box > li p{
	font-size:16px;
	line-height:16px;
}
#numbers ul li#box8 h4 {
    line-height:18px;
    font-size:16px;
	border-bottom:0;
	padding:0;
	display:block;
	width:80%;
	margin:0 auto 10px;
}
#numbers ul li#box8 h4 span {
    font-size:26px;
}
#numbers ul li#box9 h3 {
    line-height:1.4em;
	margin-bottom:20px;
}
#numbers ul li#box9 h4 {
    line-height:18px;
    font-size:16px;
	border-bottom:0;
	padding:0;
	display:block;
	margin:0 auto 10px;
}
#numbers ul li#box9 h4 span {
    font-size:26px;
}
#Numbers01 ul li#box5 h3{
	text-align:center;
	font-size:50px;
	letter-spacing:20px;
}
#numbers ul#numbers_box > li#box17 ul li,
#numbers ul#numbers_box > li#box18 ul li {
	font-size:14px;
}

#numbers button{
	display:block;
	border:0;
	background:none;
	width:250px;
	margin:0 auto 200px;
}
#numbers button a{
	height:80px;
	padding-top:15px;
}
#numbers button a span.eng{
	font-size:22px;
}
#numbers .dli-arrow-right {
	color: #333;
	top:-25px;
	right:20px;
}
/*------------------------------*/
/* welfare */
/*------------------------------*/
#welfare{
	margin-top:100px;
	margin:0;
	width:96%;
	margin-bottom:100px;
	padding:0 0px 30px;
    padding-left: 4%;
}
#welfare .title{
	font-size:60px;
	font-weight:normal;
	position:relative;
	left:0;
	top:-120px;
	margin-top:0px;
	text-align:center;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
}
#welfare dl{
	margin-top:0;
	overflow:hidden;
	width:94%;
	margin:0;
    margin-top: -120px;
}
#welfare dl dt{
	width:100%;
	height:250px;
	background-size:100% auto;
	margin-bottom:30px;
	float:none;
}
#welfare dl dd{
	width:100%;
	float:none;
	margin-left:0;
}
#welfare dl dd h3 span{
	font-size:26px;
	height:40px;
	line-height:40px;
}
#welfare dl dd p{
	font-size:14px;
	margin-top:25px;
	margin-bottom:25px;
}
#welfare dl dd button{
	width:250px;
	padding: 0;
}
/*------------------------------*/
/* interview */
/*------------------------------*/
#interview{
	margin-bottom:100px;
}
#interview h2.title{
	margin-bottom:10px;
}
#interview h3.title{
	font-size:50px;
	margin-bottom:30px;
}
#interview ul{
	width:90%;
	margin:auto;
	display:flex;
	gap:4%;
	margin-bottom:0px;
}
#interview ul li h3 {
	margin:0 auto 10px;
}
#interview ul li h4{
	font-size:14px;
	text-align:center;
}
/*------------------------------*/
/* training */
/*------------------------------*/
#training{
	margin-top:200px;
	width:96%;
	margin-bottom:100px;
	padding:0 0px 30px;
    padding-left: 4%;
}
#training .title{
	font-size:60px;
	font-weight:normal;
	position:relative;
	left:0;
	top:-120px;
	margin-top:0px;
	text-align:center;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
}
#training dl{
	margin-top:0;
	overflow:hidden;
	width:94%;
	margin:0;
    margin-top: -120px;
}
#training dl dt{
	width:100%;
	height:250px;
	background-size:100% auto;
	margin-bottom:30px;
	float:none;
}
#training dl dd{
	width:100%;
	float:none;
	margin-left:0;
}
#training dl dd h3 span{
	font-size:26px;
	height:40px;
	line-height:40px;
}
#training dl dd p{
	font-size:14px;
	margin-top:25px;
	margin-bottom:25px;
}
#training dl dd button{
	width:250px;
	padding: 0;
}
/*------------------------------*/
/* entry */
/*------------------------------*/
#entry{
	background:url(../images/common/bg.webp) repeat-x left 65px;
	padding-bottom:60px;
}
#entry dl{
	width:90%;
	margin:auto;
	margin-bottom:0px;
	display:flex;
}
#entry dl dt a,
#entry dl dd a{
	font-size:20px;
}
#entry p {
	width:90%;
	margin:auto;
    font-size: 16px;
    line-height: 2em;
}
#entry p br{
	display:none;
}

/*------------------------------*/
/* foot */
/*------------------------------*/
#foot{
	background:#282828;
	padding:60px 0;
}
#foot ul{
	width:70%;
	margin:0 auto 40px;
	padding-bottom:20px;
	border-bottom:2px solid #5f5f5f;
	display:flex;
	gap:15px;
	padding-left:0px;
}
#foot li{
	width:100%;
}
#foot li a::before{
	content: '';
	display:block;
	position:relative;
  	top:-20px;
  	left:-13px;
  	width:2px;
  	height:15px;
	background:#FFF;
}
#foot li a{
	font-size:16px;
	padding-bottom:10px;
	transition: .3s;
	position: relative;
	padding-left:0px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
#foot li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #CCC;
	transition: .3s;
}
#foot li a:hover::after {
	width: 100%;
}
#foot dl{
	width:70%;
	margin:auto;
	display:block;
}
#foot dl dt{
	width:100%;
	text-align:center;
}
#foot dl dt a{
	font-size:16px;
	color:#FFF;
	text-decoration:none;
	padding-right:25px;
	padding-bottom:10px;
	transition: .3s;
	position: relative;
	display:inline-block;
}
#foot dl dt a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #CCC;
	transition: .3s;
}
#foot dl dt a:hover::after {
	width: 100%;
}
#foot dl dt a::before {
    content: '';
    display: inline-block;
    position: relative;
    float: right;
    top: 6px;
    right: -10px;
    width: 16px;
    height: 15px;
    background: url(../images/common/link.png) no-repeat right top;
    background-size: 16px auto;
}
#foot dl dd{
	width:100%;
	font-size:16px;
	color:#FFF;
	text-align:center;
}
#pageTop a {
	width:60px;
	height:60px;
}

/*------------------------------*/
/* common */
/*------------------------------*/
.topimg{
	height:250px;
	background-size:auto 350px;
	margin-left:8%;
	margin-top:10px;
}
#breadcrumb{
	left:0;
	top:70px;
}
#breadcrumb dt{
	margin-bottom:0px;
	padding-bottom:20px;
}
#breadcrumb dt a,
#breadcrumb dd{
	font-size:12px;
}
#breadcrumb dt::before {
  	width: 7px;
  	height:7px;
  	left:9px;
  	bottom:6px;
}
#title_box{
	width:86%;
	margin-left:8%;
	margin-top:-50px;
	padding-top:30px;
	margin-bottom:30px;
}
#title_box h2{
	font-size:16px;
	margin-bottom:10px;
}
#title_box h3{
	font-size:38px;
	margin-bottom:15px;
}
#title_box p{
	font-size:14px;
}
#title_box p br{
	display:none;
}
.mb50{
	margin-bottom:50px !important;
}
.table {
	clear: both;
	border-collapse: collapse;
	width: 84%;
	box-sizing:border-box;
	margin:auto;
	border-top: 1px solid #CCC;
	margin-bottom:100px;
}
.table th {
	background:#f5f5f5;
	border-bottom: 1px solid #CCC;
	border-left: 1px solid #CCC;
	font-weight: normal;
	padding:15px 0;
	text-align: center;
	vertical-align: middle;
	width: 250px;
	font-size:16px;
	color: #333;
}
.table td {
	border: 1px solid #CCC;
	padding:15px 20px;
	text-align:left;
	font-size:16px;
	line-height:1.4em;
	background:#FFF;
	color: #333;
}
.sp{
	display:block;
}

/*------------------------------*/
/* aboutページ */
/*------------------------------*/
#topimg-about{
	background:url(../images/about/topimg.webp) no-repeat left top;
	background-size:auto 100%;
}
#aboutbody ul#about01{
	width:92%;
	gap:2%;
	margin-bottom:20px;
}
#aboutbody ul#about01 li{
	width:32%;
}
#aboutbody h2.title01{
	font-size:16px;
	margin:60px auto 20px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
#aboutbody h3.title02{
	font-size:22px;
	width:92%;
	margin:0 auto 20px;
	height:auto;
	line-height:1.6em;
	padding:10px 0;
}	
#aboutbody p.text{
	width:92%;
	margin:0 auto 60px;
	font-size:14px;
	text-align:left;
}
#aboutbody p.text br{
	display:none;
}
#omoi{
	width:92%;
	height:auto;
	padding-top:60px;
	padding-bottom:60px;
	margin-bottom:60px;
}
#aboutbody #omoi h2.title01{
	margin-top:0;
	margin-bottom:20px;
	font-size:16px;
}
#aboutbody #omoi h3.title02{
	font-size:22px;
	margin-bottom:20px;
}
#aboutbody h3.title03{
	font-size:22px;
	width:92%;
	margin:0 auto 20px;
	height:auto;
	line-height:1.6em;
}	
#aboutbody .service{
	display:block;
	gap:0;
	width:92%;
	margin:auto;
	margin-bottom:60px;
}
#aboutbody .service dt{
	width:100%;
	margin-bottom:10px;
}
#aboutbody .service dd{
	width:100%;
	text-align:left;
}
#aboutbody .service dd h3{
	font-size:22px;
}
#aboutbody .service dd h4{
	font-size:16px;
	color:#6587c0;
	margin-bottom:5px;
}
#aboutbody .service dd p{
	font-size:14px;
	margin-bottom:20px;
}
#aboutbody .service02{
	float:none;
}
#aboutbody .service02 dt{
  	order:1;
}
#aboutbody .service02 dd{
  	order:2;
}
/*------------------------------*/
/* numbersページ */
/*------------------------------*/
#numbers ul#numbers_box > li{
	margin-bottom:30px;
	display:block;
	width:100%;
}
#numbers ul#numbers_box > li#box10 h4,
#numbers ul#numbers_box > li#box11 h4,
#numbers ul#numbers_box > li#box12 h4,
#numbers ul#numbers_box > li#box13 h4,
#numbers ul#numbers_box > li#box14 h4,
#numbers ul#numbers_box > li#box15 h4{
	line-height:40px;
	font-size:26px;
}
#numbers ul#numbers_box > li#box18{
	height:300px;
}
/*------------------------------*/
/* welfare */
/*------------------------------*/
#welfarebody ul#twelfare01{
	width:92%;
	margin:auto;
	gap:2%;
	margin-bottom:20px;
}
#welfarebody ul#twelfare01 li{
	width:100%;
	width:32%;
}
#welfarebody ul#twelfare01 li img{
	width:100%;
	height:auto;
}
#welfarebody h2.title01{
	margin:0 auto 20px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
#welfarebody h3.title02{
	font-size:22px;
	width:92%;
	margin:0 auto 20px;
	height:auto;
	line-height:1.6em;
}		
#welfarebody p.text br{
	display:none;
}
#welfarebody p.text{
	width:92%;
	margin:auto;
	font-size:14px;
	text-align:left;
	margin-bottom:60px;
}
#welfare02{
	background:#b4daf1;
	padding:60px 0 10px;
	margin-bottom:100px;
}
#welfare02 h3.title02{
	font-size:22px;
	width:92%;
	margin:0 auto 20px;
	height:auto;
	line-height:1.6em;
}
#welfare02 p.text{
	margin-bottom:30px;
}
#welfare02 ul{
	width:92%;
	margin:auto;
	display:block;
	gap:0;
	margin-bottom:50px;
}
#welfare02 ul li{
	width:100%;
	margin-bottom:30px;
}
#welfare02 ul li h4{
	text-align:center;
	font-size:18px;
	margin-bottom:5px;
}
#welfare02 ul li p.img{
	margin-bottom:10px;
}
#welfare02 ul li p.text{
	margin:0;
	width:100%;
	text-align:left;
}
/*------------------------------*/
/* trainingページ */
/*------------------------------*/
#trainingbody ul#training01{
	width:92%;
	gap:2%;
	margin-bottom:20px;
}
#trainingbody ul#training01 li{
	width:32%;
}
#trainingbody h2.title01{
	font-size:16px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
#trainingbody h3.title02{
	font-size:22px;
	width:92%;
	margin:0 auto 20px;
	height:auto;
	line-height:1.6em;
}		
#trainingbody p.text{
	text-align:left;
	width:92%;
	margin:auto;
	font-size:14px;
	margin-bottom:60px;
}
#trainingbody p.text br{
	display:none;
}
#trainingbody dl{
	width:92%;
	margin:auto;
	display:block;
	gap:0;
	margin-bottom:60px;
}
#trainingbody dl dt{
	width:100%;
}
#trainingbody dl dd{
	width:100%;
}
#trainingbody dl dd h3.title03{
	font-size:22px;
	margin-bottom:10px;
	padding:10px;
	padding-left:0;
	border-bottom:1px solid #333;
}
#trainingbody dl dd p{
	font-size:14px;
}
/*------------------------------*/
/* interview */
/*------------------------------*/
#interviewbody h2.title01{
	font-size:16px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
#movie{
	width:92%;
	background:#87a5d7;
	text-align:center;
	margin:0 auto 60px;
	padding:20px;
	box-sizing:border-box;
}
#movie img{
	width:100%;
	height:auto;
}
#intervie01{
	width:100%;
	box-sizing:border-box;
	padding:20px 0 30px;
	margin-bottom:60px;
	display:block;
	gap:0;
}
#intervie01 dt{
	width:92%;
	margin:auto;
}
#intervie01 dd{
	width:92%;
	margin:auto;
}
#intervie01 dd h2.title01{
	margin:0 auto;
	margin-bottom:20px;
	margin-top:20px;
}
#intervie01 dd h3{
	font-size:22px;
	text-align:center;
	margin:0 auto;
}
#intervie01 dd p{
	text-align:center;
	margin-bottom:20px;
}
.intervie02{
	width:92%;
	box-sizing:border-box;
	margin:auto;
	text-align:left;
	margin-bottom:60px;
	display:block;
}
.intervie02 dt{
	width:100%;
	margin-bottom:10px;
}
.intervie02 dd{
	width:100%;
	text-align:left;
}
#interviewbody .right dt{
	order:1;
}
#interviewbody .right dd{
	order:2;
}
.intervie02 dd h3{
	font-size:22px;
	border-bottom:1px solid #333;
}
.intervie02 dd p{
	font-size:14px;
}
/*------------------------------*/
/* job01 */
/*------------------------------*/
#jobbody h2.title01{
	font-size:16px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
#job01 {
    width:92%;
    margin: auto;
    margin-bottom: 60px;
    display: block;
    gap:0;
}
#job01 li{
	width:100%;
	padding:10px;
	margin-bottom:10px;
}
#jobbody .table {
	width: 92%;
	margin-bottom:60px;
}
#jobbody .table th {
    padding:10px 0;
    width:30%;
    font-size: 14px;
}
#jobbody .table td {
    padding:10px;
    font-size:14px;
    line-height: 1.4em;
}
#job02{
	width:92%;
	margin:auto;
	margin-bottom:60px;
	display:block;
	gap:0;
}
#job02 li{
	box-sizing:border-box;
	width:100%;
	width:100%;
	padding:10px;
	margin-bottom:10px;
}
#job02 .triangle{
	content: '';
	display: block;
  	position:relative;
	width: 0;
	height: 0;
	top:0px;
	margin:auto;
	margin-bottom:10px;
	border-left:0px solid black;
	border-top:0px solid transparent;
	border-bottom:0px solid transparent;
	border-left: 15px solid transparent;
 	border-right:15px solid transparent;
  	border-top:  15px solid black;
}
#job02 li p{
	font-size:14px;
	margin:0;
}
.job03{
	width:84%;
	margin:auto;
	margin-bottom:100px;
}
.job03 dt{
	padding:10px 20px;
	font-size:16px;
}
.job03 dd{
	font-size:14px;
	margin-bottom:30px;
}
/*------------------------------*/
/* entrybody */
/*------------------------------*/
#entrybody{
	width:92%;
	margin:0 auto 30px;
}
#entrybody h2.title01 {
    margin: 0 auto 20px;
    border-top:1px solid #333;
    border-bottom: 1px solid #333;
}
#entrybody p.text{
	width:100%;
	font-size:14px;
}
#entrybody p br{
	display:none;
}
#entrybody .table {
	width:100%;
	border:0;
	margin-bottom:0px;
}
#entrybody .table th{
	display:block;
	width:100%;
	border:0;
	padding:5px 0;
	margin-bottom:10px;
	box-sizing:border-box;
}
#entrybody .table td{
	display:block;
	width:100%;
	padding:0;
	box-sizing:border-box;
	margin-bottom:20px;
	border:0;
}
#entrybody .table td li input{
	display:block;
	width:80%;
	margin-bottom:10px;
}
#entrybody .table td input.half{
	width:35%;
}
#entrybody .table td input[type="email"]{
	max-width:80%;
}
#entrybody .table td textarea{
	max-width:80%;
}
#entrybody button {
    width: 150px;
	font-size:14px;
}
div.mfp_buttons {
	margin-bottom:100px;
}
div.mfp_buttons .dli-arrow-right {
    right: 2px;
	width: 1em;
}
}