/* --------------------#header navigation mainvisualここから--------------------*/

/* #header */

#header{ margin:auto;padding:0;line-height: 1;position: relative;z-index: 999;top:0;left:0;right:0;height: 80px;transition:.3s;background: rgba(255,255,255,1);position: fixed;top: 0;}
	@media (max-width:991px)	{#header{display: block;height:50px;padding: 0;background: rgba(255,255,255,.9);}}
#header > .container-fluid{margin: 0 auto;}
	@media (max-width:991px)	{#header > .container-fluid{border-radius: 0;}}

.navbar-header{display: flex;justify-content:space-between;align-items:center;padding:0 10px 0 0;}
	@media (max-width:991px)	{.navbar-header{display: block;max-width: 100%;height: 50px;padding: 0;margin-bottom: 0;}}

.navbar-brand{width: 391px;max-width: 391px;padding:10px 20px 0 0;margin: 0;font-size: 1em;}
	@media (max-width:1199px)	{.navbar-brand{width: 250px;max-width: 250px;padding-right: 10px;}}
	@media (max-width:991px)	{.navbar-brand{width: 100%;padding: 9px 50px 9px 15px;flex:1 1 100%;max-width: 100%;}}

.navbar-brand p{ margin:10px 0px 10px 0px;}
@media (max-width:991px)	{.navbar-brand p{ display:none}}

.navbar-brand a,.navbar-brand a:hover,.navbar-brand a:active,.navbar-brand a:focus	{display: block;}
	@media (max-width:1199px)	{.navbar-brand a,.navbar-brand a:hover,.navbar-brand a:active,.navbar-brand a:focus{width: 240px;}}
	@media (max-width:991px)	{.navbar-brand a,.navbar-brand a:hover,.navbar-brand a:active,.navbar-brand a:focus{height: 36px;position: static;}}

.navbar-brand a img{vertical-align: top;}
	@media (max-width:991px)	{.navbar-brand a img{width:auto;height: 32px;}}

#header-right{flex:1 1 1099px;max-width: 1099px;display: flex;flex-flow:row nowrap;justify-content:flex-end;}
	@media (max-width:1199px)	{#header-right{flex:1 1 669px;max-width: 669px;}}
	@media (max-width:991px)	{#header-right{flex:1 1 991px;max-width: 991px;}}

.header-information{color:#006fbd;flex:1 1 131px;max-width: 131px;font-weight: bold;padding:10px 0 10px 20px;border-left: 1px solid #ddd;}
	@media (max-width:1199px)	{.header-information{flex:1 1 101px;max-width: 101px;padding-left: 10px;}}
	@media (max-width:991px)	{.header-information{display: none;}}

.header-information h2{background: #000;color:#fff;border-radius:2px;font-size: 12px;line-height: 16px;text-align: center;}

.header-add{ font-size:14px; padding:2px 20px 0px 0px;}
.header-tel{color: #a33c3c;font-size: 18px;line-height: 1;white-space:nowrap;}

.header-mail{color:#333;font-size: 12px;line-height: 16px;background: url(../images/common/ico-mail.png) left center no-repeat;padding-left: 30px;}

.header-navi{background:#4488c4;position: fixed;width: 100%;z-index:1000;top: 80px;}
.header-info{display: flex; justify-content: flex-end; padding: 5px 20px 0px 0px;}
@media (max-width:991px)	{.header-info{display: none;}}

.svg-inline--fa.fa-w-16 { width: 0.8em;}

/* ---- navigation ---- */



.navbar-toggler			{padding:0;margin:0;line-height:1;border:none;text-align:center;width:50px;height:50px;color:#fff;position:fixed;top:0px;right:0;overflow:hidden;z-index:9998;border-radius:0;background:#0075c1;}
.navbar-toggler:focus	{outline:none;}

.navbar-toggler-icon,.navbar-toggler-icon:before,.navbar-toggler-icon:after{display:block;width:14px;height:2px;background:#fff;}
.navbar-toggler-icon:before,.navbar-toggler-icon:after{content:"";position:absolute;left:0;right:0;}
.navbar-toggler-icon{margin:10px auto;position:relative;}

button[aria-expanded="false"] .navbar-toggler-icon,button[aria-expanded="false"] .navbar-toggler-icon:before,button[aria-expanded="false"] .navbar-toggler-icon:after,
button[aria-expanded="true"] .navbar-toggler-icon,button[aria-expanded="true"] .navbar-toggler-icon:before,button[aria-expanded="true"] .navbar-toggler-icon:after	{transition:.6s;}

button[aria-expanded="false"] .navbar-toggler-icon:before{top:-5px;transform:rotate(0deg);}
button[aria-expanded="false"] .navbar-toggler-icon:after{bottom:-5px;transform:rotate(0deg);}

button[aria-expanded="true"] .navbar-toggler-icon:before{top:0;transform:rotate(45deg);}
button[aria-expanded="true"] .navbar-toggler-icon:after{bottom:0;transform:rotate(-45deg);}

button[aria-expanded="true"] .navbar-toggler-icon	{background:transparent;}

.navbar-toggler small{display:block;font-size:10px;line-height:10px;color:#fff;text-align:center;position:relative;}

.navbar-expand-lg{padding: 0;flex:1 1 968px;max-width: 968px;margin-left: auto;margin-right: auto;}



.navbar-expand-lg > .container{}
	@media (max-width:991px)	{.navbar-expand-lg > .container{max-width:100%;padding: 0;}}

.navbar-expand-lg .navbar-collapse{width: 100%;}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-collapse{margin-top: 0;padding:0;position: fixed;top: 50px;left: 0;right: 0;z-index: 999;border: none;}}

.navbar-container{width: 100%;}
	@media (max-width:991px)	{.navbar-container{-webkit-overflow-scrolling:touch;overflow-y:scroll;background:#fff;}}

.navbar-container.container{}
	@media (max-width:991px)	{.navbar-container.container{padding:0;width:100%;max-width:100%;}}

.navbar-expand-lg .navbar-nav{display: table;width: 100%;max-width: 100%;table-layout:fixed;}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav{border: none;border-top: 1px solid #ddd;display: block;justify-content:space-between;padding: 0;width: auto;}}

.navbar-expand-lg .navbar-nav .nav-item{padding: 10px 0;display: table-cell;text-align: center;position: relative}
@media (min-width:992px)	{.navbar-expand-lg .navbar-nav .nav-item:first-child::before{content: "";position: absolute;width: 1px;height: 80%;background: #fff;top: 10%;left: 0;}}
@media (min-width:992px)	{.navbar-expand-lg .navbar-nav .nav-item::after{content: "";position: absolute;width: 1px;height: 80%;background: #fff;top: 10%;right: 0;}}
	@media (max-width:1199px)	{.navbar-expand-lg .navbar-nav .nav-item{width: auto;}}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-item{padding: 0;border: none;;display: block;width:100%;margin: 0;border-bottom: 1px solid #ccc;}}

.navbar-expand-lg .navbar-nav li img { vertical-align: middle; margin-left:15px}

.navbar-expand-lg .navbar-nav .nav-item + .nav-item{}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-item + .nav-item{margin: 0;padding: 0;}}

.navbar-expand-lg .navbar-nav .nav-link{color:#ffffff;white-space: nowrap;font-weight:bold;display:inline-block;text-align: center;font-size:18px;line-height:17px;padding:10px 5px 10px; position: relative;transition: .6s; line-height: 1.4;vertical-align: middle;}
	@media (max-width:1199px)	{.navbar-expand-lg .navbar-nav .nav-link{}}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-link{color:#000;padding:10px 15px;font-size:14px;line-height:20px;position:relative;text-align: left;margin-bottom: 0;border-bottom: none;}}
.smaller .navbar-expand-lg .navbar-nav .nav-link{ transition: .6s;}
.navbar-expand-lg .navbar-nav .nav-apply .nav-link{color:#fff;background: #cc0033;}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-apply .nav-link{color:#fff;}.navbar-expand-lg .navbar-nav .nav-item.active .nav-link,.navbar-expand-lg .navbar-nav .nav-item:hover .nav-link{background: #0075c1;color: #fff!important;}}

.navbar-expand-lg .navbar-nav .nav-link small{font-size:10px;line-height:.75;margin-top:10px;display:block;font-family:'nserif',serif;font-weight: bold;}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-link small{line-height:28px;position:absolute;right:15px;top:50%;bottom:50%;margin:-14px 0;}}

.nav-link span{ display: block; font-size:10px;}


.navbar-expand-lg .navbar-nav .nav-link:hover small,
.navbar-expand-lg .navbar-nav .nav-link:active small,
.navbar-expand-lg .navbar-nav .nav-link:focus small,
.navbar-expand-lg .navbar-nav .active .nav-link small{color:#000;display: none;}
	@media (max-width:991px)	{.navbar-expand-lg .navbar-nav .nav-link:hover small,.navbar-expand-lg .navbar-nav .nav-link:active small,.navbar-expand-lg .navbar-nav .nav-link:focus small,.navbar-expand-lg .navbar-nav .active .nav-link small{color:#000}}

.navbar a{text-decoration: none;}

.dropdown{}
	@media (max-width:991px)	{.dropdown{}}

.dropdown-menu{margin:0;padding:4px 0;border:1px solid #ddd;border-radius:0;min-width: 200px;top: 164px;background-color:#efefef; right:0; left:0;}
	@media (min-width:992px)	{.dropdown-menu{margin:0;padding:0;border:none;border-top:none;background: #fff; position:fixed !important;}}
.dropdown-menu a{color: #fff!important;text-decoration: none}
.dropdown-item{font-size:19px;line-height:2;padding:10px 15px;width: 49%;display: inline-block;color:#fff;background: #0075c1; margin-bottom:5px; font-weight: bold;}
	@media (max-width:991px)	{.dropdown-item{font-size:12px;line-height:16px;padding:10px 15px;color:#fff; width:100%}}
	@media (max-width:565px)	{.dropdown-item{font-size:12px;line-height:16px;padding:10px 15px;color:#fff; width:100%}}

.dropdown-item:before{display:inline-block;width:1em;content:"\f105";font-family:'Font Awesome\ 5 Pro';color:#fff;}

.dropdown-item:hover,.dropdown-item:active,.dropdown-item:focus,.dropdown-item.active{background:#018d81;color:#fff;opacity:1;}
	@media (max-width:991px)	{.dropdown-item:hover,.dropdown-item:active,.dropdown-item:focus,.dropdown-item.active{}}

.dropdown-item:hover:before,.dropdown-item:active:before,.dropdown-item:focus:before,.dropdown-item.active:before{color:#fff;}
	@media (max-width:991px)	{.dropdown-item:hover:before,.dropdown-item:active:before,.dropdown-item:focus:before,.dropdown-item.active:before{color:#0250d1;}}

.dropdown-menu .container{ padding:40px;}
.nav_dropdown_title{ font-size:28px; color:#0075c1; font-weight:bold; text-align:center; line-height:1.7;}
.nav_dropdown_title span{ font-size:14px; color:#0075c1; font-weight:bold; display:block;}

	@media (min-width:992px){
		.dropdown:hover > .dropdown-menu{display: block;}

		.dropdown:hover > .dropdown-menu{animation: show .5s linear 0s;}
		.dropdown:hover > .dropdown-menu.show{animation: show .5s linear 0s;}
	}

@media (min-width:992px){
.navbar-expand-lg .navbar-nav .nav-link:hover:after,
.navbar-expand-lg .navbar-nav .nav-link:active:after,
.navbar-expand-lg .navbar-nav .nav-link:focus:after,
.navbar-expand-lg .navbar-nav .nav-item.active > .nav-link:after,
.navbar-expand-lg .navbar-nav .nav-item.active > .nav-link:hover:after,
.navbar-expand-lg .navbar-nav .nav-item.active > .nav-link:active:after,
.navbar-expand-lg .navbar-nav .nav-item.active > .nav-link:focus:after{content: ""; position: absolute; left: 50%; margin-left:-25px; bottom: 0px; border-bottom: 3px solid #ffffff;width: 50px;transition: .6s;}

	.navbar-expand-lg .navbar-nav .nav-link:after{content: ""; position: absolute; left: 50%; margin-left:-25px; bottom: 0px; border-bottom: 3px solid #fff;width: 0px;transition: .6s;}
}




	@media (min-width:992px){
		.dropdown:hover > .dropdown-menu{display: block;}

		.dropdown:hover > .dropdown-menu{animation: show .5s linear 0s;}
		.dropdown:hover > .dropdown-menu.show{animation: show .5s linear 0s;}
	}

.h-info {
	display: flex;
	flex: 1 1 100%;
	justify-content: flex-end;
	align-items: center;
	transition: .3s;
	height: 70px;
	overflow: hidden;
	margin-top: 0;
	color:#000;
	font-size: 20px;
	transition:.3s;
	z-index:1;
}
.h-info div{ margin-right:40px; line-height:1.5;text-align: right;}
.h-info div span{  font-size:24px;}

.h-info ul{list-style: none;}
.h-info ul li{list-style: none; display: inline-block;width: 180px;}
.h-info ul li.a-link a{background:#4488c4 }
.h-info ul li.a-member a{background:#4488c4 }
.h-info ul li.a-contact a{background:#018d81 }
.h-info ul li a{padding: 8px 15px;color: #fff;display: block;text-align: center;font-size: 14px;}
.h-info ul li a:hover{opacity: .8;}
@media (max-width:991px){.h-info{ display:none;}}

@keyframes show{
   from{opacity: 0;}
   to  {opacity: 1;}
}
@keyframes hide{
   from{opacity: 1;}
   to  {opacity: 0;}
}

/* #wrapper.smaller */


/* mainvisual */
#main-image{position: relative; margin-top: 40px;}
@media only screen and (max-width:991px)	{#main-image{position: relative; margin-top:70px;}}

#main-bg,#slider-bg,#movie-bg{overflow:hidden;}

#main-bg{}
#slider-bg{}

.carousel-item div{width: 100%;background-position: center center; background-size: contain; background-repeat: no-repeat;height: auto; padding-bottom: 46%;}
	@media only screen and (max-width:991px)	{.carousel-item div{}}

.main-text{position: absolute;top: 30%;left: 0;right: 0;;z-index: 2;}
@media only screen and (max-width:991px)	{.main-text{top: 30%;}.main-text img{max-width: 200px;}}

.main-copy,.sub-copy{color:#fff;text-shadow:2px 2px 2px rgba(0,0,0,.75);}
	@media (max-width:991px)	{.main-copy,.sub-copy{text-shadow:1px 1px 1px rgba(0,0,0,.75);text-align: center;}}

.main-copy{font-size: 80px;line-height: 1.25;width: 100%;max-width:1380px;margin: 30px auto;font-weight: bold;}
	@media (max-width:991px)	{.main-copy{font-size: 24px; margin: 3vw auto;}}

.sub-copy{font-size: 30px;max-width:1380px;margin: 40px auto; padding-left: 40px;}
	@media (max-width:991px)	{.sub-copy{font-size: 18px;margin: 3vw auto; padding-left: 0px;}}

.main-copy:first-child,.sub-copy:first-child{margin-top: 0;}
.main-copy:last-child,.sub-copy:last-child{margin-bottom: 0;}

.slide-mask {
    height: 50vw;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
}
.slide-mask .set-mask {
    position: absolute;
    width: 50vw;
    height: 100vh;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: matrix(1, 0, -0.42, 1, 0, 0);
    transform: matrix(1, 0, -0.42, 1, 0, 0);
    z-index: 3;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    overflow: hidden;
}
.slide-mask .set-mask:before {
    content: "";
    position: absolute;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: matrix(1, 0, 0.42, 1, 0, 0);
    transform: matrix(1, 0, 0.42, 1, 0, 0);
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: url(../images/top/main-mask.png) left top /cover no-repeat;
}
.slide-mask .set-mask .main-text {
    font-size: 5vw;
    font-family: 'poppins','roboto','nsans','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Osaka,sans-serif!important;
    z-index: 100;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transform: matrix(1, 0, 0.42, 1, 0, 0);
    transform: matrix(1, 0, 0.42, 1, 0, 0);
    position: absolute;
    color: #FFF;
    line-height: 1;
    font-weight: bold;
    left: 12vw;
    top: 13.6vw;
}

@media (max-width:991px)	{.slide-mask .set-mask{height: 500px;}.slide-mask .set-mask{width:65vw;}.slide-mask .set-mask .main-text{top: 26vw;}}
@media (max-width:340px)	{.slide-mask .set-mask{width:75vw;}}
/* --------------------#header navigation mainvisualここまで--------------------*/