@charset "UTF-8";
/* CSS Document */

html, body {
	width:100%;
　height:100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	color:#444444;
	min-width:1080px;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

::selection {
	background: #CCC;
	color: #fff;
}
::-moz-selection {
	background: #CCC;
	color: #fff;
}
.PC{
	display:block;
}
.SP{
		display:none;
	}
.newLineTB{
	display:none;
}
.newLineSP{
	display:none;
}
.clearfix{
	clear:both;
}
img {
    border-style:none;
}
a{
	cursor:pointer;
	text-decoration: none;
}

a:link { color:#000; }
a:visited { color:#000; }
a:hover { color:#000; }
a:active { color:#000; }
a{
	color:#000;
}

.start svg {
  backface-visibility: hidden;
  transform: translateZ(0);
}

.inner{
	width:1050px;
	margin:0 auto;
}
.contentWrap{
	position:relative;
	background-color:#F7F5F5;
}
main {
   display:block !important; /* IE対策に追加 */
}
.slick-slide{
	outline:none !important;
}
.slideItem a{
	outline:none !important;
}

.interview-date {
	font-size: 80%;
	display: block;
	margin-top: 12px;
	text-align: right;
	width: 100%;
}

.interview-date.style-2 {
	float: right;
	display: inline-block;
	margin-top: 3px;
	width: auto;
}

/* = モーダルメニュー
-------------------------------------------------------------- */
.modal {
    position: fixed;
    display: table;
    top: 48px;
    left: 0;
    width: 100%;
    height: auto;
    background: #058DBF;
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
}
.modal > ul {
    display: table-cell;
    vertical-align: middle;
}
.modal li {
	width: 100%;
    height: 48px;
    line-height: 48px;
    padding-left:16px;
    margin: 0 auto;
    text-align:left;
}
.modal li a {
    display: block;
    font-size: 18px;
    color: #ffffff;
	text-decoration:none;
}
.modal li a:hover {
    color: #ffffff;
}
.modal > ul > li{
border-bottom:solid 1px #ffffff;
position:relative;
}
.modal > ul > li:last-child{
	border-bottom:0;
}
.modal > ul > li::after{
	position:absolute;
	content:"";
	right:16px;
	top:13px;
	width:8.43px;
	height:16.86px;
	background-image:url(/share/imgs/cp/top/images/arrow.png);
	background-repeat:no-repeat;
	background-position:center;
}
/* 開閉用ボタンがクリックされた時のスタイル */
.open .modal {
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: visible;
    opacity: 1;
	z-index:8000;
}
.menu-trigger,
.menu-trigger span {
	display: block;
	transition: all .4s;
	box-sizing: border-box;
}

.menu-trigger {
	display:none;
	position:fixed;
	width: 32px;
	height: 16px;
	top:16px;
	right:16px;
	z-index:9000;
	-webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      -o-transition: all 0.5s;
      transition: all 0.5s;
}
.big  .menu-trigger{
	display:none;
}
.menu-trigger span {
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: #058DBF;
	border-radius: 0px;
	z-index:9999;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 7px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.open .menu-trigger span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-45deg);
	transform: translateY(8px) rotate(-45deg);
}
.open .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}
.open .menu-trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-6px) rotate(45deg);
}

/* = header
-------------------------------------------------------------- */

.start {
	background: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10000;
}
.start svg{
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999;
	width:566px;
	height:446px;
}
.start svg path{
	opacity:0;
}

#header{
	width:100%;
	background-color:#fff;
	position:absolute;
}
#header::before{
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:100%;
	height:2px;
	background-color:#058DBF;
}
.page #header::before{
	display:none !important;
}

#header .inner{
	position:relative;
}

.titleDescription{
	position:absolute;
	top:0;
	left:0;
	z-index:1000;
	opacity:0;
}

.logoHome{
	position:absolute;
	top:0;
	left:0;
/* 2025年 UPD */
/*	z-index:1000; */
	z-index:7002; 
	opacity:0;
}
.navHome{
	position:absolute;
	right:0;
	z-index:1000;
}
.navHome ul li{
	float:left;
	opacity:0;
	-webkit-transition: all 1.6s;
    -moz-transition: all 1.6s;
    -ms-transition: all 1.6s;
    -o-transition: all 1.6s;
    transition: all 1.6s;
}
.navHome ul li a{
	position:relative;
	display:block;
}

.iconHover{
	position:absolute;
	left:0;
	background-repeat:no-repeat;
	background-size:98%;
	background-position:center center;
	visibility:hidden;
	opacity:0;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
.iconHoverBlue{
	background-image:url(/share/imgs/cp/images/iconHoverBlue.svg);
}
.iconHoverGray{
	background-image:url(/share/imgs/cp/images/iconHoverGray.svg);
}

.navHome ul li.onPage a .iconHover{
	visibility:visible;
	opacity:1;
}

.headerWave{
	position:absolute;
	left:0;
	width:100%;
	background-image:url(/share/imgs/cp/top/images/backgroundHeader@2x.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
/* 2025年 UPD */
/*	z-index:100; */
	z-index:7001;
}

.big .navFixed{
	visibility:hidden;
	opacity:0;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
.page .navFixed{
	visibility:visible !important;
	opacity:1 !important;
}

.navFixed{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:85px;
	background-color:#ffffff;
	z-index:8000;
	visibility:visible;
	opacity:1;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

.navFixed::before{
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:100%;
	height:2px;
	background-color:#058DBF;
}
.navFixed ul{
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width:1050px;
    margin:0 auto;
    height:85px;
}
/* 2025年 ADD */
.navFixed ul li:last-child{
	display:none;
}

.navFixed ul li a{
	font-size:15px;
	line-height:20px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	color:#222222;
	position:relative;
	display:block;
}
.navFixed ul li a:hover{
	color:#058DBF;
}
.navFixed ul li.onPage a{
	color:#058DBF !important;
}

.navFixed ul li a::after{
	position:absolute;
	top:50%;
	left:-24px;
	transform: translate(0%, -50%);
	content:"";
	width:16px;
	height:14px;
	background-image:url(/share/imgs/cp/top/images/iconHoverBlue.svg);
	background-size:16px;
	background-repeat:no-repeat;
	opacity:0;
	}
/*.navFixed ul li:nth-child(2n) a::after{
	position:absolute;
	top:50%;
	left:-24px;
	transform: translate(0%, -50%);
	content:"";
	width:14px;
	height:16px;
	background-image:url(/share/imgs/cp/top/images/iconHoverGray.svg);
	background-size:14px;
	background-repeat:no-repeat;
	opacity:0;
	}*/

.navFixed ul li:last-child a::after{
	display:none;
}
.navFixed ul li.onPage a::after{
	opacity:1 !important;
}

/* =main
-------------------------------------------------------------- */

.slick-slide img{
	width:100%;
}

.breadcrumb{
	width:100%;
	height:26px;
	background-color:#F7F5F5;
}
.breadcrumb p{
	font-size:10px;
	line-height:12px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	padding:8px 0;
}


/* = footer
-------------------------------------------------------------- */

#footer{
	background-color:#058DBF;
	padding-top:40px;
	padding-bottom:40px;
	position:relative;
}
#footer .inner{
	padding-left:80px;
}

.footerWave{
	position:absolute;
	left:0;
	width:100%;
	background-image:url(/share/imgs/cp/top/images/footerWave@2x.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	z-index:100;
}
.footerWave::after{
	content:"";
	position:absolute;
	left:0;
	bottom:-2px;
	width:100%;
	height:4px;
	background-color:#058DBF;
	z-index:1000;
}

.navFooter ul{
	display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom:32px;
/* UPD 2025.10.29
    width: 900px; */
    width: 712px;
    height:30px;
}

.navFooter ul li{
	display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
          align-items: center;
	border-right:solid 1px #ffffff;
	padding-right:30px;
	height:30px;
}
.navFooter ul li:last-child{
	border-right:none;
	padding-right:0;
}
.navFooter ul li:first-child{
	padding-left:0;
}
.navFooter ul li a{
	font-size:12px;
	line-height:14px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	color:#ffffff;
}

.footerText{
	position:relative;
	width:760px;
}
.footerText a{
	 color: inherit;
}
.logoHachioji{
	position:absolute;
	top:-20px;
	right:-120px;
}

.footerContact{
	font-size:10.4px;
	line-height:10.4px;
	letter-spacing:0;
	font-weight:normal;
	text-align:left;
	color:#ffffff;
	margin:12px 0;
}
.footerContact a{
	color: inherit;
}
.copyright{
	font-size:10.4px;
	font-size:10.4px;
	letter-spacing:0;
	font-weight:normal;
	text-align:center;
	color:#ffffff;
	margin:12px 0;
}

#pageTop{
	position:fixed;
	right:40px;
	bottom:40px;
	z-index:7000;
	cursor:pointer;
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

#pageTop img{
	width:132.498px;
	height:131.057px;
}

a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}

/* = Media (Responsive Setting)
-------------------------------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 1079px) {

html, body {
	min-width:768px;
}
.newLineTB{
	display:inline;
}
.inner{
	width:735px;
	margin:0 auto;
}

/* = header
-------------------------------------------------------------- */
.navFixed{
	height:59.5px;
}
.navFixed ul{
    height:59.5px;
    width:735px;
}
.navFixed ul li a{
	font-size:10px;
	line-height:14px;
}
.navFixed ul li a::after{
	top:50%;
	left:-18.2px;
	transform: translate(0%, -50%);
	width:11.2px;
	height:9.8px;
	background-size:11.2px;
	}
.navFixed ul li a img{
	width:109.9px;
	height:22.4px;
}

/* = footer
-------------------------------------------------------------- */

#footer{
	padding-top:28px;
	padding-bottom:28px;
}
#footer .inner{
	padding-left:0px;
	width:584px;
	margin:0 auto;
	position:relative;
	left:-4%;
}

.navFooter ul{
    margin-bottom:22.4px;
    width: 498.4px;
}
.navFooter ul li{
	padding-right:11px;
	height:30px;
}
.navFooter ul li a{
	font-size:11px;
	line-height:12px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	color:#ffffff;
}

.footerText{
	width: 498.4px;
}
.logoHachioji{
	top:-10px;
	right:-84px;
}

.footerContact{
	font-size:10.4px;
	line-height:14px;
	margin:8.4px 0;
}
.copyright{
	font-size:10.4px;
	font-size:10.4px;
	letter-spacing:0;
	margin:12px 0;
}

#pageTop{
	right:28px;
	bottom:28px;
}
#pageTop img{
	width:92.7486px;
	height:91.7399px;
}
.logoHachioji img{
	width:86.8px;
	height:21.7px;
}

} /*Query End*/
@media only screen and (max-width: 767px) {

.PC {display: none;}
.SP {display: block;}
.newLineSP{
	display:inline;
}
html, body {
	min-width:auto;
	max-width:767px;
}

.inner{
	width:320px;
	margin:0 auto;
}

.interview-date {
	float: right;
	display: inline-block;
	margin-top: 1px;
	width: auto;
}

.interview-date.style-2 {
	margin-top: 1px;
}

.interview-date.block-sp {
	display: block;
	float: none;
}

/* = header
-------------------------------------------------------------- */
.big  .menu-trigger{
	display:none;
}
.menu-trigger{
 	display:block;
}
.open .navFixed{
	visibility:visible !important;
	opacity:1 !important;
}
.open .menu-trigger{
 	display:block !important;
}
.page .menu-trigger{
 	display:block !important;
}


.navFixed{
	height:48px;
}
.navFixed ul{
    height:48px;
    width:96%;
    margin:0 auto;
}
.navFixed ul li{
	display:none;
}
.navFixed ul li:last-child{
	display:block;
}
.navFixed ul li a{
	font-size:10px;
	line-height:14px;
}
.navFixed ul li a::after{
	top:50%;
	left:-18.2px;
	transform: translate(0%, -50%);
	width:11.2px;
	height:9.8px;
	background-size:11.2px;
	}
.navFixed ul li a img{
	width:109.9px;
	height:22.4px;
}

/* = footer
-------------------------------------------------------------- */

#footer{
	padding-top:28px;
	padding-bottom:28px;
}
#footer .inner{
	padding-left:0px;
	width:324px;
	margin:0 auto;
	position:relative;
	left:0%;
}

.navFooter ul{
	margin-bottom:0px;
    width: 100%;
    height:auto;
}

.navFooter ul li{
	width:32%;
	padding-right:0px;
	height:30px;
	padding-left:12px;
	border-left:solid 1px #ffffff;
	border-right:none;
	margin-bottom:24px;
}
.navFooter ul li:first-child{
	padding-left:12px;
}
.navFooter ul li a{
	font-size:11px;
	line-height:12px;
	letter-spacing:.01em;
	font-weight:normal;
	text-align:left;
	color:#ffffff !important;
}

.footerText{
	width: 100%;
	color:#ffffff !important;
}
.logoHachioji{
	position:relative;
	display:block;
	top:0;
	right:0;
}

.footerContact{
	font-size:10.4px;
	line-height:14px;
	margin:8.4px 0;
}

.copyright{
	font-size:10.4px;
	font-size:10.4px;
	letter-spacing:0;
	margin:12px 0;
	text-align:left;
}

#pageTop{
	right:16px;
	bottom:16px;
}
#pageTop img{
	width:64px;
	height:62px;
}
.logoHachioji img{
	width:86.8px;
	height:21.7px;
}

.footerContact a {
pointer-events: none;
cursor: default;
text-decoration: none;
}

a.phoneLink{
pointer-events:auto;
cursor: pointer;
text-decoration: underline;
}



	} /*Query End*/
@media only screen and (min-width: 768px) {

.navFixed ul li a:hover::after{
	opacity:1;
}
.navHome ul li a:hover .iconHover{
	visibility:visible;
	opacity:1;
}
#pageTop:hover{
	-webkit-transform: scale(1.06);
	transform: scale(1.06);
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    transform-origin:center center;
}

	} /*Query End*/