@charset "UTF-8";

/* リセット */
body,div,p,blockquote,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,caption,tr,td,th,address,header,footer,nav,article,section,aside,figure,figcaption {margin:0; padding:0;}
body,div,p,blockquote,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,address,header,footer,nav,article,section,aside,figure,figcaption {display:block;}
ul,ol {list-style-type:none;}
img {border:none; vertical-align:middle;}

/* ユーティリティー */
a {zoom:1; text-decoration:none; color:#333; transition: opacity .7s; -webkit-transition: opacity .7s; -ms-transition: opacity .7s; -o-transition: opacity .7s;}
a:hover, a.active, a.np {opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)";}
a.nohover {opacity: 1.0; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)";	}
.fgo {font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;}
.fmin {	font-family:"ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;}
.fdid { font-family:"aw-conqueror-didot";}
.flt-l {float: left;}
.flt-r {float: right;}
.clearfix:after {
	content:"";
	clear:both;
	display:block;
}
.page {margin:0 auto; width:1200px;}
.page_f {margin:0 auto; width:1440px;}

.boxshadow {box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px; -webkit-box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px; -moz-box-shadow:rgba(000, 000, 000, 0.120000) 0px 0px 3px 2px;zoom: 1;position:relative;}

table {border-collapse:collapse;}

body {
	color:#333;
	font-family:'Noto Sans JP', "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size:14px;
	line-height:1.4;
	overflow-x:hidden;
}
body p {
	line-height:1.8;
}

/* -------------------------------------
header
------------------------------------- */
header {
	position:relative;
}
header .hdrtop {
	font-size:0;
	position:relative;
	z-index:50;
	background-color:transparent;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
}
header .hdrtop.fixed {
	background-color:#fff;
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:8000;
	box-shadow: 0px 4px 4px -3px rgba(0,0,0,0.25);
	-webkit-box-shadow: 0px 4px 4px -3px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 4px 4px -3px rgba(0,0,0,0.25);
}
header #logo {
	font-size:15px;
	width:24.5%;
	max-width:322px;
	min-width:200px;
	float:left;
	padding-left:20px;
	box-sizing:border-box;
	position:absolute;
	top:51%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}
header #logo a, header #logo a span {
	display:inline-block;
	vertical-align:middle;
}
header #logo a {
	display:block;
}
header #logo img {
	width:100%;
	height:auto;
}
header #logo img.sp {
	display:none;
}
header #gnav {
	width:calc(100% - 45%);
	float:right;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
}
header #gnav ul {
	font-size:0;
	width:100%;
	display:table;
}
header #gnav ul li {
	width:14.66%;
	text-align:center;
	display:table-cell;
	vertical-align:middle;
	position:relative;
}
header #gnav ul li:nth-last-child(-n+2) {
	width:16.4%;
}
header #gnav ul li.entry:after {
	content:"";
	width:1px;
	height:65%;
	background-color:#fff;
	position:absolute;
	top:52%;
	right:0;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	opacity:0.6;
}
header #gnav ul li:last-child:after {
	content:none;
}
header #gnav ul li:nth-last-child(-n+2) {
	background-color:#0068b6;
}
header #gnav ul li a {
	font-size:18px;
	font-family:"Avenir Next", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	padding:25px 10px;
	box-sizing:border-box;
	display:block;
}
header .hdrtop.fixed #gnav ul li a {
	padding:10px 10px;
}
header #gnav ul li:nth-last-child(-n+2) a {
	color:#fff;
}
header #gnav ul li a span {
	font-size:10px;
	color:#221814;
	display:block;
}
header #gnav ul li.entry a span {
	color:#fff;
}


#menubtn {
	width:50px;
	height:50px;
	display:none;
	position:absolute;
	top:0;
	right:0;
	z-index:5000;
}
#menubtn span, #menubtn span:before, #menubtn span:after {
	width:30px;
	height:3px;
	margin:0 auto;
	display:block;
	background-color:#fff;
	position:absolute;
	left:0;
	right:0;
	transition-timing-function: ease;
	transition-duration: .15s;
	transition-property: transform;
	border-radius: 4px;
}
header .hdrtop.fixed #menubtn span, header .hdrtop.fixed #menubtn span:before, header .hdrtop.fixed #menubtn span:after {
	background-color:#000;
}
header .hdrtop.fixed #menubtn span, header .hdrtop.fixed #menubtn span:before, header .hdrtop.fixed #menubtn span:after {
	background-color:#000;
}
header.ac .hdrtop.fixed #menubtn span, header.ac .hdrtop.fixed #menubtn span:before, header.ac .hdrtop.fixed #menubtn span:after {
	background-color:#fff;
}
#menubtn span:before, #menubtn span:after {
	content:"";
}
#menubtn span {
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transition-timing-function: cubic-bezier(.55,.055,.675,.19);
	-webkit-transition-timing-function: cubic-bezier(.55,.055,.675,.19);
	-ms-transition-timing-function: cubic-bezier(.55,.055,.675,.19);
	-moz-transition-timing-function: cubic-bezier(.55,.055,.675,.19);
	transition-duration: .22s;
	-webkit-transition-duration: .22s;
	-ms-transition-duration: .22s;
	-moz-transition-duration: .22s;
}
#menubtn span:before {
	top:-10px;
	transition:top .1s ease-in .25s,opacity .1s ease-in;
}
#menubtn span:after {
	bottom:-10px;
	transition:bottom .1s ease-in .25s,transform .22s cubic-bezier(.55,.055,.675,.19);
}
header.ac #menubtn span {
	transition-delay: .12s;
	transition-timing-function: cubic-bezier(.215,.61,.355,1);
	transform: rotate(225deg);
}
header.ac #menubtn span:before {
	top:0;
	transition:top .1s ease-out,opacity .1s ease-out .12s;
	opacity:0;
}
header.ac #menubtn span:after {
	bottom: 0;
	transition: bottom .1s ease-out,transform .22s cubic-bezier(.215,.61,.355,1) .12s;
	transform: rotate(-90deg);
}

/* -------------------------------------
common
------------------------------------- */
article {
	background:transparent url(../imgs/common/bkg.png) center top repeat-y;
	background-size:100% auto;
	width:100%;
}
/* -------------------------------------
.inv_mov
------------------------------------- */
.inv_mov {
	opacity:0;
	transform:translate(0,60px); 
	-webkit-transform:translate(0,60px); 
	transition: .8s;
}
.inv_mov2 {
	opacity:0;
	transform:translate(-100px,0); 
	-webkit-transform:translate(-100px,0); 
	transition: .8s;
}
.inv_mov3 {
	opacity:0;
	transform:translate(100px,0); 
	-webkit-transform:translate(100px,0); 
	transition: .8s;
}
.mov {
	opacity:1.0;
	transform:translate(0,0); 
	-webkit-transform:translate(0,0);
}
.mov.delay100 {
	transition-delay:100ms;
	-moz-transition-delay:100ms;
	-webkit-transition-delay:100ms;
	-o-transition-delay:100ms;
	-ms-transition-delay:100ms;
}
.mov.delay200 {
	transition-delay:200ms;
	-moz-transition-delay:200ms;
	-webkit-transition-delay:200ms;
	-o-transition-delay:200ms;
	-ms-transition-delay:200ms;
}
.mov.delay300 {
	transition-delay:300ms;
	-moz-transition-delay:300ms;
	-webkit-transition-delay:300ms;
	-o-transition-delay:300ms;
	-ms-transition-delay:300ms;
}
.mov.delay400 {
	transition-delay:400ms;
	-moz-transition-delay:400ms;
	-webkit-transition-delay:400ms;
	-o-transition-delay:400ms;
	-ms-transition-delay:400ms;
}
.mov.delay500 {
	transition-delay:500ms;
	-moz-transition-delay:500ms;
	-webkit-transition-delay:500ms;
	-o-transition-delay:500ms;
	-ms-transition-delay:500ms;
}
.mov.delay600 {
	transition-delay:600ms;
	-moz-transition-delay:600ms;
	-webkit-transition-delay:600ms;
	-o-transition-delay:600ms;
	-ms-transition-delay:600ms;
}
.mov.delay700 {
	transition-delay:700ms;
	-moz-transition-delay:700ms;
	-webkit-transition-delay:700ms;
	-o-transition-delay:700ms;
	-ms-transition-delay:700ms;
}
.mov.delay800 {
	transition-delay:800ms;
	-moz-transition-delay:800ms;
	-webkit-transition-delay:800ms;
	-o-transition-delay:800ms;
	-ms-transition-delay:800ms;
}
.mov.delay900 {
	transition-delay:900ms;
	-moz-transition-delay:900ms;
	-webkit-transition-delay:900ms;
	-o-transition-delay:900ms;
	-ms-transition-delay:900ms;
}

/* -------------------------------------
movblk
------------------------------------- */
/*.movblk .movim.sc1 {
	transition: all 1s;
	-webkit-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
}
.movblk .movim.sc2 {
	transition: all 2s;
	-webkit-transition: all 2s;
	-ms-transition: all 2s;
	-o-transition: all 2s;
}
.movblk .movim.sc3 {
	transition: all 3s;
	-webkit-transition: all 3s;
	-ms-transition: all 3s;
	-o-transition: all 3s;
}
.movblk .movim.sc4 {
	transition: all 4s;
	-webkit-transition: all 4s;
	-ms-transition: all 4s;
	-o-transition: all 4s;
}*/

@keyframes vertical {
    0% { transform:translateY(-35px); }
  100% { transform:translateY(  0px); }
}

.movblk .movimg {
	height:auto;
	will-change:top;
	position:absolute!important;
	animation:vertical 2s ease-in infinite alternate;
}
.movblk .movimg img {
	width:100%;
	height:auto;
}

.movblk {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.movblk .movimg.movimg1 {
	max-width:50px;
	min-width:30px;
	width:6%;
	top:20%;
	left:15%;
	z-index:0;
	animation:vertical 1s ease-in infinite alternate;
	
}
.movblk .movimg.movimg2 {
	max-width:57px;
	min-width:37px;
	width:7%;
	top:30%;
	right:22%;
	animation:vertical 1s ease-in infinite alternate;
	
}
.movblk .movimg.movimg3 {
	max-width:100px;
	min-width:50px;
	width:30%;
	top:50%;
	left:-12%;
	animation:vertical 3s ease-in infinite alternate;
}
.movblk .movimg.movimg4 {
	max-width:140px;
	min-width:80px;
	width:14%;
	top:30%;
	left:6%;
	animation:vertical 2s ease-in infinite alternate;
}
.movblk .movimg.movimg5 {
	max-width:97px;
	min-width:20px;
	width:60%;
	top:15%;
	right:25%;
	animation:vertical 1.5s ease-in infinite alternate;
}
.movblk .movimg.movimg6 {
	max-width:43px;
	min-width:30px;
	width:5%;
	top:55%;
	left:-5%;
}
.movblk .movimg.movimg7 {
	max-width:50px;
	min-width:30px;
	width:5%;
	top:100px;
	right:-8%;
	animation:vertical 1.5s ease-in infinite alternate;
}
.movblk .movimg.movimg8 {
	max-width:93px;
	min-width:50px;
	width:10%;
	bottom:10%;
	left:-9%;
}
.movblk .movimg.movimg9 {
	max-width:153px;
	min-width:100px;
	width:15%;
	bottom:2%;
	left:3%;
}
.movblk .movimg.movimg10 {
	max-width:62px;
	min-width:30px;
	width:7%;
	top:80%;
	left:-10%;
	animation:vertical 2s ease-in infinite alternate;
}
.movblk .movimg.movimg11 {
	max-width:29px;
	min-width:29px;
	width:7%;
	top:50%;
	right:0%;
	animation:vertical 1s ease-in infinite alternate;

}
.movblk .movimg.movimg12 {
	max-width:35px;
	min-width:15px;
	width:4%;
	top:50%;
	left:30%;
	animation:vertical 1.5s ease-in infinite alternate;

}
.movblk .movimg.movimg13 {
	max-width:69px;
	min-width:39px;
	width:7%;
	bottom:2%;
	left:15%;
	animation:vertical 2.5s ease-in infinite alternate;
}
.movblk .movimg.movimg14 {
	max-width:139px;
	min-width:39px;
	width:15%;
	top:5%;
	left:-6%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg15 {
	max-width:99px;
	min-width:49px;
	width:10%;
	top:10%;
	right:-1%;
}
.movblk .movimg.movimg16 {
	max-width:57px;
	min-width:27px;
	width:6%;
	top:27%;
	left:-14%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg17 {
	max-width:39px;
	min-width:19px;
	width:4%;
	top:25%;
	right:-10%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg18 {
	max-width:100px;
	min-width:30px;
	width:10%;
	top:51%;
	left:-11%;
}
.movblk .movimg.movimg19 {
	max-width:61px;
	min-width:21px;
	width:6%;
	top:48%;
	left:-5%;
}
.movblk .movimg.movimg20 {
	width:20%;
	top:50%;
	right:0;
	animation:vertical 2s ease-in infinite alternate;

}


/*.movblk .movimg {
	height:auto;
	will-change:top;
	position:absolute!important;
}
.movblk .movimg img {
	width:100%;
	height:auto;
}
.movblk .movimg.movimg1 {
	max-width:50px;
	min-width:30px;
	width:6%;
	top:-30px;
	left:15%;
}
.movblk .movimg.movimg2 {
	max-width:57px;
	min-width:37px;
	width:7%;
	top:-70px;
	right:22%;
	transform: translateY(190px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg3 {
	max-width:100px;
	min-width:50px;
	width:10%;
	top:110px;
	left:-12%;
}
.movblk .movimg.movimg4 {
	max-width:140px;
	min-width:80px;
	width:14%;
	top:80%;
	left:6%;
	transform: translateY(50px);
    	transition-duration: 3s;
}
.movblk .movimg.movimg5 {
	max-width:97px;
	min-width:20px;
	width:10%;
	top:110%;
	right:25%;
}
.movblk .movimg.movimg6 {
	max-width:43px;
	min-width:30px;
	width:5%;
	top:55%;
	left:-11%;
	transform: translateY(80px);
    	transition-duration: 1s;
}
.movblk .movimg.movimg7 {
	max-width:50px;
	min-width:30px;
	width:5%;
	top:100px;
	right:-8%;
	transform: translateY(50px);
    	transition-duration: 1s;
}
.movblk .movimg.movimg8 {
	max-width:93px;
	min-width:50px;
	width:10%;
	top:10%;
	left:-9%;
}
.movblk .movimg.movimg9 {
	max-width:153px;
	min-width:100px;
	width:15%;
	top:-5%;
	right:-10%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg10 {
	max-width:62px;
	min-width:30px;
	width:7%;
	top:80%;
	left:-10%;
}
.movblk .movimg.movimg11 {
	max-width:29px;
	min-width:29px;
	width:7%;
	top:50%;
	right:-8.5%;
	transform: translateY(-50px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg12 {
	max-width:35px;
	min-width:15px;
	width:4%;
	top:100%;
	left:17%;
}
.movblk .movimg.movimg13 {
	max-width:69px;
	min-width:39px;
	width:7%;
	top:107%;
	right:15%;
}
.movblk .movimg.movimg14 {
	max-width:139px;
	min-width:39px;
	width:15%;
	top:5%;
	left:-6%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg15 {
	max-width:99px;
	min-width:49px;
	width:10%;
	top:10%;
	right:-1%;
}
.movblk .movimg.movimg16 {
	max-width:57px;
	min-width:27px;
	width:6%;
	top:27%;
	left:-14%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg17 {
	max-width:39px;
	min-width:19px;
	width:4%;
	top:25%;
	right:-10%;
	transform: translateY(100px);
    	transition-duration: 4s;
}
.movblk .movimg.movimg18 {
	max-width:100px;
	min-width:30px;
	width:10%;
	top:51%;
	left:-11%;
}
.movblk .movimg.movimg19 {
	max-width:61px;
	min-width:21px;
	width:6%;
	top:48%;
	left:-5%;
}
.movblk .movimg.movimg20 {
	max-width:101px;
	min-width:51px;
	width:10%;
	top:60%;
	right:-14%;
}*/

/* -------------------------------------
button
------------------------------------- */
.button, .button:before, .button:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-ms-transition: all .5s;
	-moz-transition: all .5s;
	-webkit-transition: all .5s;
	transition: all .5s;
}
.button {
	text-align:center;
	max-width:395px;
	min-width:250px;
	width:70%;
	margin:0 auto;
	box-sizing:border-box;
	outline:none;
	overflow:hidden;
	position:relative;
	z-index:2;
}
.button.rgt {
	float:right;
}
.button.sp {
	display:none;
}
.button a {
	font-size:14px;
	color:#fff;
	padding:18px 0;
	display:block;
}
.button a:after {
	content:"";
	width:15px;
	height:15px;
	display:block;
	background:url(../imgs/common/arrow_duble.svg) no-repeat center center;
	background-size:100% 100%;
	position:absolute;
	top:52%;
	right:20px;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
}

.button.eff1:before, .button.eff1:after {
	content:'';
	display:block;
	position:absolute;
	z-index:-1;
}
.button.eff1:after {
	width:100%;
	height:100%;
	top:0;
	left:0;
	-webkit-transform: scale(.5);
	transform: scale(.5);
}
.button.eff1:hover:after {
	width:100%;
	background-color:#fff;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.button.eff1 {
	border:2px solid #000;
	background-color:#000;
}
.button.eff1 a:hover {
	color:#000;
	opacity:1;
}
.button.eff1 a:hover:after {
	background:url(../imgs/common/arrow_duble_bk.svg) no-repeat center center;
}

.button.eff2 a {
	margin:0 auto;
	border:2px solid #fff;
	background-color:rgba(17,12,10,0);
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
}
.button.eff2 a:hover {
	background-color:rgba(255,255,255,0.2);
	opacity:1;
}

/* -------------------------------------
personlist
------------------------------------- */
#personlist ul {
	font-size:0;
}
#personlist ul li {
	width:30%;
	display:inline-block;
	vertical-align:top;
	position:relative;
}
#personlist ul li a {
	width:100%;
	height:100%;
	box-sizing:border-box;
	display:block;
	position:absolute;
	top:0;
	left:0;
	z-index:30;
}
#personlist ul li a:after {
	content:"";
	width:100%;
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	transition: all .2s;
	-webkit-transition: all .2s;
	-ms-transition: all .2s;
	-o-transition: all .2s;
}
#personlist ul li.bl a:after {
	border-bottom:10px solid #0068b7;
}
#personlist ul li.gr a:after {
	border-bottom:10px solid #6fba2c;
}
#personlist ul li.pi a:after {
	border-bottom:10px solid #ee87b4;
}
#personlist ul li.gr2 a:after {
	border-bottom:10px solid #009e96;
}
#personlist ul li.pu a:after {
	border-bottom:10px solid #924898;
}
#personlist ul li.bl2 a:after {
	border-bottom:10px solid #00a0e9;
}
#personlist ul li.rd a:after {
	border-bottom:10px solid #e60012;
}
#personlist ul li.or a:after {
	border-bottom:10px solid #f08300;
}
#personlist ul li:hover a:after {
	opacity:0;
}
#personlist ul li .txtblk {
	font-size:0;
	color:#fff;
	width:100%;
	padding:11px 15px 8px;
	box-sizing:border-box;
	position:absolute;
	bottom:0;
	left:0;
	opacity:0;
	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
}
#personlist ul li.bl .txtblk {
	background-color:#0068b7;
}
#personlist ul li.gr .txtblk {
	background-color:#6fba2c;
}
#personlist ul li.pi .txtblk {
	background-color:#ee87b4;
}
#personlist ul li.gr2 .txtblk {
	background-color:#009e96;
}
#personlist ul li.pu .txtblk {
	background-color:#924898;
}
#personlist ul li.bl2 .txtblk {
	background-color:#00a0e9;
}
#personlist ul li.rd .txtblk {
	background-color:#e60012;
}
#personlist ul li.or .txtblk {
	background-color:#f08300;
}
#personlist ul li:hover .txtblk {
	opacity:1;
}
#personlist ul li .txtblk .name {
	font-size:25px;
	font-weight:normal;
	width:50%;
	margin-right:5%;
	border-right:1px solid #fff;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:middle;
}
#personlist ul li .txtblk .name span {
	font-size:12px;
	display:block;
}
#personlist ul li .txtblk .job {
	font-size:12px;
	line-height:1.4;
	width:45%;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:middle;
}
#personlist ul li .txtblk .job span {
	display:block;
}
#personlist ul li .personimg {
	position:relative;
	z-index:20;
}
#personlist ul li img {
	width:100%;
	height:auto;
/*	transition: all .5s;
	-webkit-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;*/
}
#personlist ul li img.off {
	position:relative;
	z-index:20;
}
#personlist ul li img.on {
	position:absolute;
	top:0;
	left:0;
	z-index:10;
	opacity:0;
}
#personlist ul li:hover img.off {
	opacity:0;
}
#personlist ul li img.on {
	opacity:1;
}

/* -------------------------------------
entry
------------------------------------- */
#entry {
	margin-top:150px;
	padding:120px 0;
	background-color: rgba(0,90,183,0.8);
	overflow:hidden;
}
#entry p {
	font-size:40px;
	line-height:1.6;
	color:#fff;
	text-align:center;
	letter-spacing:0.2em;
	margin-bottom:40px;
}
#entry p span {
	font-size:20px;
	display:block;
}
#entry ul {
	font-size:0;
	text-align:center;
}
#entry ul li {
	display:inline-block;
	width:48%;
	margin-right:2%;
	border:15px solid #fff;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:middle;
	outline: none;
}
#entry ul li:before, #entry ul li:after {
	content:'';
	display:block;
	position:absolute;
	z-index:-1;	
}
#entry ul li, #entry ul li:before, #entry ul li:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .4s;
	transition: all .4s;
}
#entry ul li {
	color:#333;
	border:15px solid #fff;
	background-color:transparent;
	position: relative;
	z-index:2;
	overflow:hidden;
}
#entry ul li:last-child {
	margin-right:0;
}
#entry ul li:hover {
	color: #fff;
}
#entry ul li:after {
	top:0;
	left:0;
	width:100%;
	height:100%;
	-ms-transform: scale(.5);
	-moz-transform: scale(.5);
	-webkit-transform: scale(.5);
	transform: scale(.5);
}
#entry ul li:hover:after {
	background-color:#fff;
	-ms-transform: scale(1);
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}
#entry ul li a {
	font-size:23px;
	color:#fff;
	padding:30px 20px;
	box-sizing:border-box;
	display:block;
}
#entry ul li a:hover {
	color:#0068b6;
	opacity:1;
}

.shape-wrapper {
    position: relative;
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    height: 1500px;
}

.shape {
    position: absolute;
    will-change: top;
    display:none;
}

.shape.no1 {
    left: 20%;
    top: 10px;
    transform:translateY(30px);
    transition-duration:1s;
}
.shape.no2 {
    right: 20%;
    top: 10px;
    transform:translateY(20px);
    transition-duration:1s;
}
.shape.no3 {
    right: 0;
    top: 100px;
    transform:translateY(50px);
    transition-duration:2s;
}
.shape.no4 {
    left: 5%;
    top: 300px;
    transform:translateY(30px);
    transition-duration:1s;
}
.shape.no5 {
    left: 15%;
    top: 430px;
    transform:translateY(10px);
    transition-duration:2s;
}
.shape.no6 {
    right: 30%;
    top: 500px;
    transform:translateY(30px);
    transition-duration:2s;
}


/*下層ページタイトルまわりアイコン*/
.ttlblk {
	position:relative;
}
.ttlblk h1 {
	position:relative;
	z-index:10;
}
.ttlblk .icon1 {
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	right:auto;
	z-index:5;
}
.ttlblk .icon2 {
	position:absolute;
	top:10%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	left:-10%;
	transform:translateX(-50%);
	-webkit-transform:translateX(-50%);
	-ms-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	right:auto;
}
.ttlblk .icon3 {
	position:absolute;
	bottom:15%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	left:30%;
	right:auto;
}
.ttlblk .icon4 {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	left:auto;
	right:-7%;
}


/* -------------------------------------
blkttl
------------------------------------- */
.blkttl {
	max-width:1615px;
	width:100%;
	margin:0 auto 150px auto;
	position:relative;
}
.blkttl img {
	width:100%;
	height:auto;
}
.blkttl h1 {
	font-weight:normal;
	text-align:center;
	min-width:300px;
	width:36%;
	margin:0 auto;
	position:absolute;
	top:55%;
	left:0;
	right:0;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
}
.blkttl h1 span {
	font-size:16px;
	color:#fff;
	letter-spacing:0.2em;
	margin:0 auto;
	padding-top:20px;
	border-top:1px solid #fff;
	width:78%;
	display:inline-block;
}
.blkttl h1 img {
	margin-bottom:20px;
}
.blkttl img.sp {
	display:none;
}


/* -------------------------------------
footer
------------------------------------- */
footer {
	color:#FFF;
	text-align:center;
	background-color:#000;
	padding:45px 0;
	position:relative;
	z-index:800;
}
footer dl dt {
	font-size:23px;
	margin-bottom:13px;
}
footer dl dt a,footer dl dd ul li a{
	color:#FFF;
}
footer dl dd {
	font-size:16px;
	margin-bottom:20px;
}
footer #cp {
	font-size:12px;
	line-height:1.2;
}


@media screen and (max-width:1486px) {
	
	/* -------------------------------------
	header
	------------------------------------- */
	header #gnav ul li a {
		font-size:16px;
	}
	
	/* -------------------------------------
	personlist
	------------------------------------- */
	#personlist ul li .txtblk .name {
		font-size:22px;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry {
		margin-top:120px;
	}
	#entry p {
		font-size:36px;
	}
}

@media screen and (max-width:1250px) {
	.page {
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}
	
	/*.page_f {
		width:100%;
		padding: 0 20px;
		box-sizing:border-box;
	}*/
	
	/* -------------------------------------
	header
	------------------------------------- */
	header #gnav ul li a {
		font-size:14px;
	}
	
	/* -------------------------------------
	personlist
	------------------------------------- */
	#personlist ul li .txtblk {
		padding:8px 15px 8px;
	}
	#personlist ul li .txtblk .name, #personlist ul li .txtblk .job {
		width:100%;
		display:block;
	}
	#personlist ul li .txtblk .name {
		font-size:20px;
		margin-bottom:5px;
		padding-bottom:5px;
		border-right:none;
		border-bottom:1px solid #fff;
	}
	#personlist ul li .txtblk .name span {
		margin-right:10px;
		display:inline-block;
		position:relative;
		top:-1px;
	}
	#personlist ul li .txtblk .job span {
		margin-right:10px;
		display:inline-block;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry {
		margin-top:100px;
		padding:100px 0;
	}
	#entry p {
		font-size:32px;
	}
	#entry ul li {
		border:10px solid #fff;
	}
	#entry ul li a {
		font-size:20px;
	}
	
	/* -------------------------------------
	blkttl
	------------------------------------- */
	.blkttl {
		margin-bottom:100px;
	}
	
	/* -------------------------------------
	footer
	------------------------------------- */
	footer {
		padding:35px 0;
	}
}

@media screen and (max-width:1024px) {
	
}

@media screen and (max-width:980px) {
	/* -------------------------------------
	header
	------------------------------------- */
	header #gnav ul li a {
		font-size:13px;
	}
	
	/* -------------------------------------
	button
	------------------------------------- */
	.button a {
		padding:14px 0;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry p {
		font-size:28px;
	}
	#entry p span {
		font-size:18px;
	}
	
	/* -------------------------------------
	blkttl
	------------------------------------- */
	.blkttl {
		margin-bottom:80px;
	}
}

@media screen and (max-width:920px) {
	/* -------------------------------------
	header
	------------------------------------- */
	header #gnav {
		width: calc(100% - 28%);
	}
	header #gnav ul li a {
		font-size:13px;
	}
}

@media screen and (max-width:800px) {
	header #gnav ul li a {
		font-size:12px;
	}
}

@media screen and (max-width:768px) {
	header .hdrwrap  {
		position:relative;
	}
	header .hdrtop {
		width:100%;
		padding:25px 0;
		position:absolute;
		top:0;
		left:0;
		z-index:5000;
	}
	header.ac #logo img.pc {
		display:none;
	}
	header.ac #logo img.sp {
		display:block;
	}
	header #gnav {
		width:100%;
		margin:0 auto;
		padding:15px;
		box-sizing:border-box;
		border-bottom:1px solid #0068b6;
		display:none;
		background-color:#0068b6;
		position:absolute;
		top:100%;
		left:0;
		right:0;
		z-index:5000;
	}
	header #gnav ul {
		display:block;
	}
	header #gnav ul li {
		width:50%;
		box-sizing:border-box;
		display:inline-block;
	}
	header #gnav ul li:nth-child(-n+2) {
		border-bottom:1px solid #fff;
	}
	header #gnav ul li:nth-child(odd) {
		border-right:1px solid #fff;
	}
	header #gnav ul li:nth-child(3), header #gnav ul li:nth-child(4) {
		margin-bottom:15px;
	}
	header #gnav ul li:nth-child(5) {
		margin-right:4%;
	}
	header #gnav ul li:nth-last-child(-n+2) {
		width:48%;
		background-color:#fff;
	}
	header #gnav ul li a {
		font-size:16px;
		color:#fff;
		padding:20px 10px;
	}
	header #gnav ul li:nth-last-child(-n+2) a {
		color:#0068b6;
		padding:10px 15px 8px;
	}
	header #gnav ul li a span {
		color:#fff;
	}
	header #gnav ul li.entry a span {
		display:none;
	}
	header #menubtn {
		display:block;
	}
	
	header.ac .hdrwrap .hdrtop {
		background-color:#000;
	}
	
	/* -------------------------------------
	movblk
	------------------------------------- */
	.movblk .movimg.movimg3 {
		left:-2%;
	}
	.movblk {
		display:none;
	}
	.movblk .movimg.movimg14 {
		left:5%;
	}
	.movblk .movimg.movimg16 {
		top:8%;
		left:auto;
		right:15%;
	}
	.movblk .movimg.movimg17 {
		top:50%;
		left:auto;
		right:20%;
	}
	.movblk .movimg.movimg18 {
		width:6%;
		left:5%;
	}
	.movblk .movimg.movimg19 {
		width:4.5%;
		left:8%;
	}
	.movblk .movimg.movimg20 {
		top:31%;
		right:4%;
	}
	
	/* -------------------------------------
	button
	------------------------------------- */
	.button {
		max-width:100%;
		width:100%;
		border:none;
		background-color:#fff;
	}
	.button.pc {
		display:none;
	}
	.button.sp {
		float:none;
		display:block;
		overflow-x:hidden;
	}
	.button:hover {
		background-color:#000;
	}
	.button a {
		font-size:20px;
		color:#000;
		padding:25px 0;
	}
	.button.eff2 a {
		border:none;
	}
	.button.eff2 a:hover {
		background-color:#000;
	}
	.button a:hover {
		color:#fff;
		opacity:1;
	}
	.button a:after {
		background:url(../imgs/common/arrow_duble_bk.svg) no-repeat center center;
	}
	.button a:hover:after {
		background:url(../imgs/common/arrow_duble.svg) no-repeat center center;
	}
	
	/* -------------------------------------
	personlist
	------------------------------------- */
	#personlist ul li .txtblk .name {
		font-size:18px;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry {
		margin-top:40px;
		padding:60px 0;
	}
	#entry p {
		font-size:24px;
	}
	#entry p span {
		font-size:16px;
	}
	#entry ul li {
		border:5px solid #fff;
		background-color:#fff;
	}
	#entry ul li:hover:after {
		background-color: rgba(0,90,183,0.8);
	}
	#entry ul li a {
		color:#0068b6;
		padding:10px 20px;
	}
	#entry ul li a:hover {
		color:#fff;
	}
	
	/* -------------------------------------
	blkttl
	------------------------------------- */
	.blkttl {
		margin-bottom:40px;
	}
	.blkttl img.pc {
		display:none;
	}
	.blkttl img.sp {
		display:block;
	}
	
	/* -------------------------------------
	footer
	------------------------------------- */
	footer {
		padding:30px 0;
	}
	footer dl dd {
		margin-bottom:5px;
	}
	footer #cp {
		font-size:15px;
	}
}

@media screen and (max-width:640px) {
	/* -------------------------------------
	personlist
	------------------------------------- */
	#personlist ul li .txtblk {
		opacity:1;
	}
	#personlist ul li .txtblk .name {
		font-size:17px;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry {
		margin-top:20px;
		padding:40px 0 50px;
	}
	#entry ul li a {
		font-size:18px;
	}
	
	/* -------------------------------------
	blkttl
	------------------------------------- */
	.blkttl {
		margin-bottom:20px;
	}
}

@media screen and (max-width:480px) {
	/* -------------------------------------
	personlist
	------------------------------------- */
	#personlist ul li .txtblk .name, #personlist ul li .txtblk .job {
		text-align:center;
	}
	#personlist ul li .txtblk .name {
		font-size:16px;
	}
	
	/* -------------------------------------
	entry
	------------------------------------- */
	#entry ul li {
		width:100%;
		margin-bottom:20px;
	}
	#entry ul li:last-child {
		margin-bottom:0;
	}
	
}

@media screen and (min-width:769px) {
	header #gnav {
		display:block!important;
	}
}

#personlist ul li .txtblk .job.pc {
	display:inline-block;
}
#personlist ul li .txtblk .job.sp {
	display:none;
}

@media screen and (max-width:480px) {
#personlist ul li .txtblk .job.pc {
	display:none;
}
#personlist ul li .txtblk .job.sp {
	display:block;
}
}