@charset "utf-8";






/*-----------------------------------------------
 content
-----------------------------------------------*/
.policy{
	color:#000!important;
}


.policy p{
	color:#000!important;
}

.policy li{
	color:#000!important;
}
.pankuzu{
	font-size:12px;
	position:relative;
	top:-50px;
	left:50px;
}

.emoji{
	position:static!important;
	min-width:0!important;

	
}

.nukos{
	top:-30px!important;
}

.aju_box h4 img{
	position:relative;
	top:4px;
	padding-right:2px;
}

.aju_box img{
	max-width:500px;
	height:auto;
}

.aju_box h2{
	font-size:20px;
	margin:20px 0;	
}


.aju_box ol{
	margin-left:30px;
	margin-bottom:30px;
	color: #008ccf;
}
.aju_box ol li{
	font-size:15px;
	margin-bottom:10px;
	line-height:160%;
}

.pagination {
    text-align: right;
    font-size: 14px;
    margin-top: 20px;
}

ol{
	list-style-type:decimal;
}

.ar_h2{
	margin-bottom:20px;
}

.ichi_p a{
	text-decoration:none!important;
	color:#FBb03B;
}
.bl_box{
	display:inline-block;
	width:45%;
	vertical-align:top;
	margin-bottom:25px;
	margin-right:40px;	
}
.bl_title{
	font-size:16px;
}
.bl_conent{
	font-size:14px;
}
.bl_img {
  width: 400px;
  height: 300px;
  overflow: hidden;
  position: relative;
}
 
.bl_box img {
  position: absolute;
  max-width: 500px;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}
.aju_box{
	padding:0 45px;
}

.aju_box dt{
	margin-bottom:5px;
	font-size:12px;	
	color:#666666;
}
.aju_box dd{
	margin-bottom:20px;	
}

.arc_box{
	background:#FFF;
	margin:30px 0;
	padding:30px;
}

.arc_box ul{
	margin-bottom:15px;
}

.arc_box li{
	display:inline;
	margin-right:15px;

}

div#content{
	padding-top: 220px;
}

div#content > div.inner{
	padding-bottom: 40px;
	background-color: #fff;
}


div#content h1 {
    margin-bottom: 30px;
    padding: 0 40px;
    border-bottom: 2px dashed #008ccf;
    background-image: url(../img/icon.png);
    background-position: right 40px top 0;
    background-repeat: no-repeat;
    font-size: 34px;
    font-weight: normal;
    color: #008ccf;
    padding-left: 0;
}
div#content h1 span{
	font-size: 21px;
}

div#content p.catch{
	margin-bottom: 30px;
	font-size: 26px;
	color: #008ccf;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#content{
		padding-top: 0;
	}
	
	div#content > div.inner{
		padding-bottom: 25px;
	}
	
	
	div#content h1 {
    padding: 5px 25px;
    background-size: 31px 23px;
    background-position: right 25px center;
    font-size: 5vw;
    font-weight: bold;
    padding-left: 0;
    margin-top: 15px;
}	
	div#content h1 span{
		font-size: 3.125vw;
	}
	
	div#content p.catch{
		margin-bottom: 10px;
		font-size: 3.125vw;
	}
	
	div#content p.catch br{
		display: none;
	}

}

/*-----------------------------------------------
 about
-----------------------------------------------*/

div#about > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
	min-height: 500px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-image: url(../img/company/president.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
}

div#about div.text{
	float: right;
	width: 582px;
}

div#about div.text h3{
	margin-bottom: 20px;
	font-size: 21px;
	font-weight: normal;
	letter-spacing: 0.5em;
	color: #008ccf;
}

div#about div.text p{
	font-size: 13px;
	line-height: 1.8;
	color: #008ccf;
}

div#about div.text p.name{
	margin-top: 20px;
	font-size: 21px;
	text-align: right;
}

div#about div.text p.name span{
	font-size: 12px;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#about{
		display: none;
	}
	
}

/*-----------------------------------------------
 corporate
-----------------------------------------------*/

div#corporate-sp{
	display: none;
}

div#corporate-sp div.inner,
div#corporate div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#corporate-sp table,
div#corporate table{
	width: 100%;
	border-top: 2px solid #008ccf;
	border-right: 2px solid #008ccf;
	border-left: 2px solid #008ccf;
}
div#corporate-sp table tr th,
div#corporate-sp table tr td,
div#corporate table tr th,
div#corporate table tr td{
	padding: 15px 30px;
	border-bottom: 2px solid #008ccf;
	font-size: 16px;
	font-weight: normal;
	color: #008ccf;
}

div#corporate-sp table tr th,
div#corporate table tr th{
	border-right: 2px solid #008ccf;
	text-align: left;
	background-image: url(../img/company/bg.png);
}

div#corporate-sp table tr td span,
div#corporate table tr td span{
	display: inline-block;
	min-width: 16em;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#corporate-sp{
		display: block;
	}
	
	div#corporate{
		display: none;
	}
	
	div#corporate-sp div.inner,
	div#corporate div.inner{
		margin-bottom: 20px;
		padding: 0 25px;
	}
	div#corporate-sp table tr th,
	div#corporate-sp table tr td,
	div#corporate table tr th,
	div#corporate table tr td{
		padding: 5px 10px;
		font-size: 3.125vw;
		color: #008ccf;
	}

	div#corporate-sp table tr td span,
	div#corporate table tr td span{
		min-width: 0;
	}
	
}

/*-----------------------------------------------
 business
-----------------------------------------------*/

div#business > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#business h3{
	margin-bottom: 10px;
	font-size: 21px;
	font-weight: normal;
	color: #008ccf;
}

div#business p{
	margin-bottom: 20px;
	font-size: 14px;
	color: #008ccf;
}

div#business div.image{
	float: right;
	width: 290px;
	margin-left: 20px;
}

div#business table{
	width: 100%;
	border-top: 2px solid #008ccf;
	border-right: 2px solid #008ccf;
	border-left: 2px solid #008ccf;
}

div#business table tr th,
div#business table tr td{
	padding: 15px 30px;
	border-bottom: 2px solid #008ccf;
	font-size: 16px;
	font-weight: normal;
	color: #008ccf;
}

div#business table tr th{
	font-size: 18px;
}

div#business table tr td{
	font-size: 16px;
}

div#business tr th{
	border-right: 2px solid #008ccf;
	text-align: left;
	background-image: url(../img/company/bg.png);
}


@media screen and (max-width:767px) and (min-width: 1px){
	
	div#business > div.inner{
	    margin-bottom: 20px;
	    padding: 0;
	}
	
	div#business h3{
		/* padding: 0 25px; */
		font-size: 3.75vw;
	}
	
	div#business p{
		padding: 0 25px;
		font-size: 3.125vw;
	}
	
	div#business div.image{
		float: none;
		width: 100%;
		margin: 0 0 10px 0;
	}
	
	div#business div.image img{
		width: 100%;
	}
	
	div#business table tr th,
	div#business table tr td{
		padding: 5px 10px;
		font-size: 3.125vw;
		color: #008ccf;
	}
	
	div#business table{
		width: auto;
	}

	div#business table tr td span{
		min-width: 0;
	}
	
}

/*-----------------------------------------------
 merit
-----------------------------------------------*/

div#merit > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#merit dl.point{
	margin-bottom: 30px;
}

div#merit dl.point dt{
	display: inline-block;
	position: relative;
	width: 169px;
	height: 109px;
	margin-right: 32px;
	padding-top: 20px;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #008ccf;
	text-align: center;
	font-size: 18px;
	color: #fff;
}

div#merit dl.point dt span{
	display: block;
	font-size: 30px;
}

div#merit dl.point dt div.arrow{
	position: absolute;
	z-index: 1;
    top: 37px;
    left: 169px;
}

div#merit dl.point dd{
	display: inline-block;
	position: relative;
	width: 169px;
	height: 109px;
	margin-right: 14px;
	padding: 10px;
	border: 1px solid #008ccf;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-image: url(../img/company/bg.png);
	font-size: 11px;
	line-height: 2;
	vertical-align: top;
	color: #008ccf;
}

div#merit dl.point dd:last-child{
	margin-right: 0;
}

div#merit dl.point dd div.plus{
	position: absolute;
	z-index: 1;
    top: 39px;
    left: 160px;

}

div#circle{
	position: relative;
	width: 920px;
	height: 910px;
	background-image: url(../img/company/circle.png);
}

div#circle ul.nav{
	cursor: pointer;
}

div#circle ul li.nav1{
	position: absolute;
    top: 132px;
    left: 230px;
}

div#circle ul li.nav2{
	position: absolute;
	top: 155px;
    left: 543px;
}

div#circle ul li.nav3{
	position: absolute;
    top: 388px;
    left: 676px;
}

div#circle ul li.nav4{
	position: absolute;
    top: 624px;
    left: 543px;
}

div#circle ul li.nav5{
	position: absolute;
	top: 601px;
    left: 239px;
}

div#circle ul li.nav6{
	position: absolute;
    top: 392px;
    left: 143px;
}

div#circle ul.nav li:hover{
	animation: btn 0.5s;
	-webkit-animation: btn 0.5s;
	-moz-animation: btn 0.5s;
}

div#circle ul.pop li{
	display: none;
}

div#circle ul.pop li.pop1{
	position: absolute;
    top: 5px;
    left: 370px;
}

div#circle ul.pop li.pop2{
	position: absolute;
    top: 48px;
    left: 630px;
}

div#circle ul.pop li.pop3{
	position: absolute;
	top: 488px;
    left: 776px;
}

div#circle ul.pop li.pop4{
	position: absolute;
    top: 746px;
    left: 634px;
}

div#circle ul.pop li.pop5{
	position: absolute;
    top: 746px;
    left: 61px;
}

div#circle ul.pop li.pop6{
	position: absolute;
    top: 238px;
    left: 11px;
}
	
div#circle-sp{
	display: none;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#merit div.inner{
		margin-bottom: 20px;
		padding: 0 25px;
	}
	
	div#merit dl.point dt{
		width: 100%;
		height: auto;
		margin-right: 0;
		margin-bottom: 10px;
		padding: 10px 0;
		font-size: 	3.75vw;
	}
	
	div#merit dl.point dt span{
		display: inline;
		margin-left: 5px;
		font-size: 5vw;
	}
	
	div#merit dl.point dd{
		width: 100%;
		height: auto;
		margin-bottom: 10px;
		font-size: 3.125vw;
	}
	
	div#merit dl.point dt div.arrow{
		top: auto;
		bottom: -35px;
		left: 0;
		width: 100%;
		text-align: center;
	}
	
	div#merit dl.point dt div.arrow img{
		transform: rotate(90deg);
	}
	
	div#merit dl.point dd div.plus{
		top: auto;
		bottom: -30px;
		left: 0;
		width: 100%;
		text-align: center;
	}
	
	div#circle{
		display: none;
	}
	
	div#circle-sp{
		display: block;
		position: relative;
	}
	
	div#circle-sp img{
		width: 100%;
	}
	
	div#circle-sp a{
		position: absolute;
		display: block;
		z-index: 1;
	}
	
	div#circle-sp a.pop1{
		top: 0;
		left: 16%;
		width: 28%;
		height: 31%;
	}
	
	div#circle-sp a.pop2{
		top: 5%;
		left: 59%;
		width: 20%;
		height: 22%;
	}
	
	div#circle-sp a.pop3{
		top: 40%;
		left: 78%;
		width: 20%;
		height: 22%;
	}
	
	div#circle-sp a.pop4{
		top: 77%;
		left: 60%;
		width: 19%;
		height: 21%;
	}
	
	div#circle-sp a.pop5{
		top: 72%;
		left: 19%;
		width: 25%;
		height: 29%;
	}
	
	div#circle-sp a.pop6{
	    top: 40%;
	    left: 2%;
	    width: 20%;
	    height: 23%;
	}
}

/*-----------------------------------------------
 advertisement
-----------------------------------------------*/

div#advertisement > div.inner{
	margin-bottom: 40px;
}
div#content div#advertisement p.catch{
	padding: 0 40px;	
}

div#advertisement div.image{
	line-height: 0;
}

div#advertisement div.radio-info{
	padding: 30px 40px 40px;
	background-color: #74acdd;
}

div#advertisement div.radio-info p{
	margin-bottom: 40px;
	font-size: 16px;
	color: #fff;
}

div#advertisement div.radio-info div.bnr{
	line-height: 0;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#advertisement > div.inner{
		margin-bottom: 20px;
		padding: 0;
	}
	
	div#content div#advertisement p.catch {
	    padding: 0 25px;
	}

	div#advertisement div.image img{
		width: 100%;
	}
	
	div#advertisement div.radio-info{
		padding: 25px;
	}

	div#advertisement div.radio-info p{
		margin-bottom: 20px;
		font-size: 3.125vw;

	}

	div#advertisement div.radio-info div.bnr img{
		width: 100%;
	}
}

/*-----------------------------------------------
 office
-----------------------------------------------*/

div#office > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#slider{
	width: 100%;
}

div#slider div.slide{
	display: inline-block;
	position: relative;
	width: 920px;
	height: 519px;
	margin: 0;
	letter-spacing: normal;
	vertical-align: middle;
}

div#slider div.slide img{
	margin: 0 auto;
	display: block;
}

div#slider div.slick-list{
	margin-bottom: 20px;
}

/* dots */

div#slider ul.slick-dots{
	width: 100%;
	height: 25px;
	line-height: 25px;
	letter-spacing: -.40em;
	text-align: center;
}

div#slider ul.slick-dots li{
	display: inline-block;
	position: relative;
	margin: 0 8px;
	letter-spacing: normal;
	vertical-align: middle;
}

div#slider .slick-dots li button
{
    width: 16px;
    height: 16px;
    font-size: 0;
    line-height: 0;
    display: block;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

div#slider .slick-dots li button:hover,
div#slider .slick-dots li button:focus
{
    outline: none;
}

div#slider .slick-dots li button:hover:before,
div#slider .slick-dots li button:focus:before
{
    opacity: 1;
}

div#slider .slick-dots li button:before
{
	content: '';
    line-height: 25px;
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    border-radius: 9px;
    text-align: center;
    color: #c9c9c9;
    background: #c9c9c9;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

div#slider .slick-dots li.slick-active button:before {
	color: #74ACDD;
	background: #74ACDD;
}

div#office p.check{
	display: none;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#office > div.inner{
		margin-bottom: 20px;
		padding: 0;
	}
	
	div#office p.catch{
		padding: 0 25px;
	}
	
	div#slider div.slide{
		height: auto;
	}
	
	div#slider div.slide img{
		width: 100%;
	}
	
	div#slider div.slick-list{
		margin-bottom: 0;
	}
	
	div#office p.check{
		display: block;
		background-color: #008ccf;
	}
	
	div#office p.check a{
		display: block;
		padding: 5px 25px;
		font-size: 3.125vw;
		color: #fff;
	}
	
	div#office p.check a::before{
		content: "▶︎";
	}
	
}

/*-----------------------------------------------
 navigator
-----------------------------------------------*/

div#navigator > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#navigator ul.staff-list li{
	margin-bottom: 30px;
	border: 1px solid #008ccf;
}

div#navigator ul.staff-list li div.image{
	float: left;
	width: 200px;
	line-height: 0;
}

div#navigator ul.staff-list li div.detail{
	float: right;
	width: 718px;
}

div#navigator ul.staff-list li div.detail h3{
	padding: 5px 15px;
	background-color: #008ccf;
	font-size: 21px;
	font-weight: normal;
	color: #fff;
}

div#navigator ul.staff-list li div.detail p.name{
	border-bottom: 1px dashed #008ccf;
	padding: 5px 15px;
	font-size: 25px;
	color: #008ccf;
}

div#navigator ul.staff-list li div.detail p.name span{
	margin-left: 30px;
	font-size: 16px;
}

div#navigator ul.staff-list li div.detail div.text{
	padding: 5px 15px;
}

div#navigator ul.staff-list li div.detail div.text p{
	font-size: 15px;
	color: #008ccf;
}

div#navigator ul.staff-list li div.detail div.text p.message{
	padding-left: 6.5em;
	text-indent: -6.5em;
}

div#navigator ul.staff-list li p.text-sp{
	display: none;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#navigator div.inner{
		margin-bottom: 20px;
		padding: 0 25px;
	}
	
	div#navigator ul.staff-list{
	    display: flex;
	    flex-wrap: wrap;
    }
	
	div#navigator ul.staff-list li{
		float: left;
		width: 50%;
	    flex-basis: auto;
		border: none;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	div#navigator ul.staff-list li:nth-child(odd){
		padding-right: 5px;
	}
	
	div#navigator ul.staff-list li:nth-child(even){
		padding-left: 5px;
	}
	
	div#navigator ul.staff-list li div.image{
		float: none;
		width: auto;
	}
	
	div#navigator ul.staff-list li div.image img{
		width: 100%;
	}
	
	div#navigator ul.staff-list li div.detail{
		float: none;
		width: auto;
	}
	
	div#navigator ul.staff-list li div.detail h3{
		display: none;
	}
	
	div#navigator ul.staff-list li div.detail p.name{
		margin-bottom: 5px;
		padding: 0;
		font-size: 4.375vw;
		text-align: left;
	}
	
	div#navigator ul.staff-list li div.detail p.name span{
		display: block;
		margin-left: 0;
		font-size: 3.125vw;
	}
	
	div#navigator ul.staff-list li div.detail div.text{
		display: none;
	}
	
	div#navigator ul.staff-list li p.text-sp{
		display: block;
		font-size: 3.125vw;
		color: #008ccf;
	}
	
}

/*-----------------------------------------------
 recruitment
-----------------------------------------------*/

div#recruitment > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

div#recruitment ul.staff-list li{
	float: left;
	width: 50%;
	
}

div#recruitment ul.staff-list li div{
	float: left;
	width: 106px;
	height: 106px;
	border: 1px solid #008ccf;
	border-radius: 53px;
	font-size: 26px;
	text-align: center;
	line-height: 106px;
	color: #008ccf;
}

div#recruitment ul.staff-list li p{
	float: left;
    width: 312px;
    padding: 0 20px;
	font-size: 14px;
	color: #008ccf;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#recruitment div.inner{
		margin-bottom: 20px;
		padding: 0 25px;
	}
	
	div#recruitment ul.staff-list li{
		float: none;
		width: auto;
		margin-bottom: 10px;
	}
	
	div#recruitment ul.staff-list li div{
		width: 80px;
		height: 80px;
		background-image: url(../img/bg.png);
		font-size: 3.4375vw;
		line-height: 80px;
	}
	
	div#recruitment ul.staff-list li p{
		float: none;
		width: auto;
		margin-left: 100px;
		padding: 0;
		font-size: 3.125vw;
	}
	
	div#recruitment ul.staff-list li:last-child{
		margin-bottom: 0;
	}
	
}

/*-----------------------------------------------
 inquiry
-----------------------------------------------*/

div#inquiry > div.inner{
	margin-bottom: 40px;
	padding: 0 40px;
}

@media screen and (max-width:767px) and (min-width: 1px){
	
	div#inquiry div.inner{
		margin-bottom: 20px;
		padding: 0 25px;
	}
	

.aju_box{
	padding:0 15px;
	
}

.bl_box{
	display:inline-block;
	width:45%;
	vertical-align:top;
	margin-bottom:10px;
	margin-right:10px;
}
.bl_title{
	font-size:14px;
}
.bl_conent{
	font-size:12px;
}
.bl_img {
  width: 100%;
  height: 30vw;
  overflow: hidden;
  position: relative;
}
 
.bl_box img {
  position: absolute;
  width: 100%;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}


.aju_box h2{
	font-size:20px;
	margin:20px 0;	
}



.aju_box img{
	width:100%;
}

.aju_box ol{
	margin-left:30px;
	margin-bottom:30px;
}
.aju_box ol li{
	font-size:14px;
	margin-bottom:10px;
	line-height:140%;
}

.aju_box img{
	max-width:100%;
	height:auto;
}

.aju_box h4 img{
	width:20px!important;	
}

.pankuzu{
	font-size:12px;
	position:static;
	padding:15px 0 0 15px;
}




}


/*-----------------------------------------------
 calendar
-----------------------------------------------*/

.month-event{
	background-color:#ffffff00 !important;

}

.month-event-title{
	background-color:#1cc5ff !important;
	color:#ffffff !important;
	text-align:center;
	display:block;
	width:90%;
	margin:0 auto;
}

.holiday-all{
	/* background-color:#b2d1ec !important; */
}

.holiday-title span{
	/* background-color:#b2d1ec !important; */
}
@media screen and (max-width:767px) and (min-width: 1px){

#calendar{
	width:90% !important;
	margin:0 auto !important;
}

}