@charset "utf-8";


@font-face {
font-family: 'helvetica-mid';
src: url("/font/HelveticaNeue_mid.otf") format('opentype'),
    url("/font/HelveticaNeue_mid.woff") format("woff");
}

@font-face {
font-family: 'helvetica-bold';
src: url("/font/HelveticaNeue_bold.otf") format('opentype'),
    url("/font/HelveticaNeue_bold.woff") format("woff");
}
.textHidden {
	text-indent: -9999px;
	overflow: hidden;	
}
::selection { 
	color: #000;
	background-color: #ddd;
}
::-moz-selection { 
	color: #000;
	background-color: #ddd;
}
html {
 overflow-y: scroll;
}
body {
	-webkit-font-smoothing: antialiased;
	color: #333;
	height: 100%;
	text-align: left;	
	background: #FFF;
	font-family:'helvetica-mid',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","user-Inter","YuGothic","メイリオ",Meiryo,sanserif; 	
	-webkit-text-size-adjust: 100%;
	text-orientation: upright;
	-webkit-text-orientation: upright;
    animation: fadeIn 1.3s ease 0s 1 normal;
    -webkit-animation: fadeIn 1.3s ease 0s 1 normal;
    letter-spacing: 0.03em;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

h1,h2,h3,h4,h5,p {
	font-weight: normal;
	margin-top: 0;
}
img {
    width: 100%;
}
ul {
	margin:0;
	padding: 0;
}
p {
	letter-spacing: 0.05em;	
}
a{
	text-decoration: none;
	color: #fff;
}
a:hover{
	text-decoration: none;
	color: #fff;
	padding-bottom: 3px;
}

body::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color:#fff;
  z-index: 9999;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity .8s ease;
 -ms- transition: opacity .8s ease;
 -moz- transition: opacity .8s ease;
  transition: opacity .8s ease;
}

body.fadeout::after {
  opacity: 1;
}
body section{
  -webkit- transform: translateY(-20px);
    transform: translateY(-20px);
   transition: all 0.5s 0s ease-out;
}
body.fadeout section{
  -webkit- transform: translateY(0px);
    transform: translateY(0px);
}
#firstimg { 
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
}
#secondcontent {
	width: 100%;
	/*min-width: 1064px;*/
	position: relative;
	/*padding-top: 92px;*/
	height: 100%;
	min-height: 100%;
	overflow: hidden;
	z-index: -1!important;
	display:none;
}
#header {
    position: absolute;
    padding: 30px 5%;
    width: calc(100% - 10%);
    z-index: 999;
}
.header_logo {
    width: 250px;
    display: inline-block;
    vertical-align: middle;
}
ul.header_menu {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    list-style: none;
    position: absolute;
    right: 5%;
    font-family:'helvetica-bold';
    letter-spacing: 0.03em;
}
ul.header_menu li {
    display: inline-block;
    vertical-align: middle;
    padding-left: 20px;
}
ul.header_menu li a,
ul.header_menu li a:hover {
    color: #fff;
    display: inline-block;
    position: relative;
    padding-bottom: 3px;
}
ul.header_menu li a.under:after{
    position: absolute;
    left: 0;
    bottom: -3px;
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}
ul.header_menu li a.under:hover::after{
  transform: scale(1, 1);
}
ul.header_menu li img {
    width: 20px;
}
#header_sp {
    display: none;
}
.navToggle span {
  width: 100%;
  height: 1px;
  left: 0;
  display: block;
  background: #fff;
  position: absolute;
  transition: top .5s ease, -webkit-transform .6s ease-in-out;
  transition: transform .6s ease-in-out, top .5s ease;
  transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out;
}
.navToggle span:nth-child(1) {
  top: 0;
}
.navToggle span:nth-child(2) {
  top: 13px;
}

.navToggle.active span:nth-child(1) {
    top: 15px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    background: #fff;
}
.navToggle.active span:nth-child(2) {
  top: 15px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
  background: #fff;
}

/* z-index */
.navToggle {
  z-index: 9999;
}

#container {
  z-index: 900;
}

.global_sp {
    background: #000;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9998;
    display: flex;
    visibility: hidden;
    flex-direction: column;
    justify-content: center;
    font-size: 18px;
    letter-spacing: 0.1em;
    opacity: 0;
    -webkit-transition: opacity .3s ease;  /* アニメーション時間は 0.8秒 */
    -ms- transition: opacity .3s ease;
    -moz- transition: opacity .3s ease;
    transition: opacity .3s ease, visibility .3s ease;
}

.global_sp #foot_white {
	position: absolute;
	width: 90%;
	height: 30px;
	bottom:30px;
	left: 60px;
	clear:both;
    letter-spacing: 0.1em;
    font-family: 'AdobeGaramondW01-Regula';
}

#foot_white_in {
	position: relative;
	width: 90%;
	height: 30px;
	bottom:26px;
	left: 60px;
	clear:both;
}
#foot_white_in #copyright_intro {
	font-size:10px;
	text-align:left;
	padding-top:10px;
	color: #000;
    font-family:'helvetica-mid';
}

/* open */
.open {
  overflow: hidden;
}
.open #gloval-nav {
  visibility: visible;
  opacity: 1;
}
.open #gloval-nav li {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  transition: opacity .4s ease, -webkit-transform .2s ease;
  transition: transform .4s ease, opacity .2s ease;
  transition: transform .4s ease, opacity .2s ease, -webkit-transform 1s ease;
}
#foot_white {
    position: absolute;
    height: 30px;
    bottom: 20px;
    left: 5%;
}
#copyright_intro {
	font-size:11px;
	text-align:left;
	padding-top:10px;
	z-index: 9999;
	color: #fff;
    float: left;
    letter-spacing: 0.05em;
    font-family:'helvetica-mid';
}
#copyright_intro span{
    font-family:'helvetica-mid';
    font-weight: 400;
    font-style: normal;
}
#mainVisualWrap {
	width: 100%;
	/*min-width: 1064px;*/
	position: relative;
	/*padding-top: 92px;*/
	height: 100%;
	min-height: 100%;
	overflow: hidden;
	z-index: -1!important;
}
#mainVisualBase {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: -1!important;
}
#mainVisualWrap #mainVisual {
	padding-top: 0px;
	overflow: hidden;
}
#contents_wrap {
	width:100%;
	overflow:auto;
	clear:both;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

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

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

.navToggle {
    display: block;
    height: 20px;
	width: 30px;
    cursor: pointer;
    z-index: 9999;
	float: right;
	margin-right:10px;
	clear: none;
	text-align: right;
}
.navToggle span {
    display: block;
    width: 30px;
    -webkit-transition: .4s ease-in-out;
    -moz-transition: .4s ease-in-out;
    transition: .4s ease-in-out;
	z-index: 9999;
	margin-right:3%;
}
.navToggle span:nth-child(1) {
    top: 13px;
}
 
.navToggle span:nth-child(2) {
    top: 23px;
}

.navToggle.active span:nth-child(1) {
    top: 18px;
}
.navToggle.active span:nth-child(2) {
    top: 19px;
}
.global_sp #foot_white {
	left: 40px;
    font-size: 9px;
}
#foot_white_in {
    left: 40px;
    bottom: 30px;
}
#foot_white_in #copyright_intro {
    font-size: 9px;
    margin: 0;
    letter-spacing: 0.05em;
}
}
@media screen and (max-width:768px) {
br.sp {
    display: block;
}
#header {
    display: none;    
}
#header_sp {
    display: block;
}
.header_logo {
    position: absolute;
    width: 200px;
    top: 40px;
    left: 25px;
}
.navlogo_in {
    position: absolute;
    top: 40px;
    left: 27px;
    width: 200px;
}    
.navToggle {
    position: fixed;
    height: 20px;
    cursor: pointer;
    margin-right:0px;
    top: 37px;
    right: 30px;
    width: 30px;
}
.navToggle span:nth-child(1) {
    top: 0px;
}
.navToggle span:nth-child(2) {
    top: 12px;
}
.navToggle.active span:nth-child(1){
    top: 10px;
}
.navToggle.active span:nth-child(2){
    top: 10px;
}
#header .navlogo {
    width: 50%;
    left: 15px;
}
#header .navlogo a {
    padding: 20px 0 0 35px;
}
#header .navlogo img{
    padding-top: 12px;
}

.open .global_sp{
    visibility: visible;
    opacity: 1;
}
ul.nav {
    align-items: center;
    text-align: center;
    vertical-align: middle;
    transition-delay: .3s;
    transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
    color: #fff;
}
ul.nav a{
    color: #fff;
    transition-delay: .3s;
    transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
}
ul.nav a:hover {
    color: #ccc;
}
.open li.deley img {
   -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
} 

li.deley {
    opacity: 0;
    -webkit-transition: translateY(-10px);
    transform: translateY(-10px);
    transition: opacity .2s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, opacity .2s ease;
    transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease;
    padding:2vh 0;
    text-align: center;
    color: #fff;
    letter-spacing: 0.2em;
    width: 200px;
}
li.deley img {
    opacity: 0;
    -webkit-transition: translateY(-10px);
    transform: translateY(-10px);
    transition: opacity .2s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, opacity .2s ease;
    transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease;
    padding:2vh 0;
    text-align: center;
    color: #fff;
    letter-spacing: 0.2em;
    width: 25px;
}

.open li.deley,
.open li.deley img {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: opacity .3s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, opacity .3s ease;
    transition: transform .5s ease, opacity .3s ease, -webkit-transform 1s ease;
}

li.deley:nth-child(2) {
    transition-delay: .3s;
    top:28%;
    right:calc(50% - 100px);
    position: absolute;
}
li.deley:nth-child(3) {
    transition-delay: .35s;
    top: 36%;
    right:calc(50% - 100px);
    position: absolute;
}
li.deley:nth-child(4) {
    transition-delay: .4s;
    top: 44%;
    right:calc(50% - 100px);
    position: absolute;
}
li.deley:nth-child(5) {
    transition-delay: .45s;
    top: 52%;
    right:calc(50% - 100px);
    position: absolute;
}
li.deley:nth-child(6) {
    transition-delay: .5s;
    top: 60%;
    right:calc(50% - 100px);
    position: absolute;
}

body.fadeout #gloval-nav ul {
  opacity: 0;  /* 初期値では非表示 */
  transition-delay: .3s;
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
}
#foot_white {
    width: 92%;
	left: 25px;
	clear:both;
}
#copyright_intro {
	font-size:9px;
	text-align:left;
	padding-top:10px;
	z-index: 9999;
}

#mainVisualWrap {
	width: 100%;
	position: relative;
	height: 100%;
	overflow: hidden;
	z-index: -1!important;
    object-fit: cover;
    object-position: center center;
}
#mainVisualBase {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: auto;
	background: #fff;
	z-index: -1!important;
    object-fit: cover;
    object-position: center center;
}
#mainVisualWrap #mainVisual {
	padding-top: 0px;
	overflow-y: hidden;
    object-fit: cover;
    object-position: center center;
}
}
@media screen and (max-width:470px) {

.navToggle {
    right: 25px;
}
.navlogo_in {
    top: 39px;
    left: 25px;
}
li.deley {
    font-size:16px;
}
li.deley {
    font-size:16px;
}
li.deley:nth-child(2) {
    width: 180px;
    right: calc(50% - 90px);
    top: 23%;
}
li.deley:nth-child(3) {
    top: 32%;
    width: 180px;
    right: calc(50% - 90px);
}
li.deley:nth-child(4) {
    width: 180px;
    right: calc(50% - 90px);
    top: 41%;
}
li.deley:nth-child(5) {
    top: 50%;
    width: 180px;
    right: calc(50% - 90px);
}
li.deley:nth-child(6) {
    top: 59%;
    width: 180px;
    right: calc(50% - 90px);
}
#foot_white {
    width: 85%;
}
}