/*#####################################################
        Font
            ・Font-face 再定義まとめ   適宜使用
#####################################################*/
@font-face {
  font-family: '源ノ明朝Regular';
  src: url("Src-Font/源ノ明朝/sp-home/SourceHanSerifJP-Regular.woff2") format('woff2');
}
@font-face {
  font-family: '源ノ明朝Bold';
  src: url("Src-Font/源ノ明朝/sp-home/SourceHanSerifJP-Bold.woff2") format('woff2');
}
@font-face {
  font-family: '源ノ明朝Heavy';
  src: url("Src-Font/源ノ明朝/sp-home/SourceHanSerifJP-Heavy.woff2") format('woff2');
}
/*#####################################################
        Main-Page
#####################################################*/
.MainPage {
  position: relative;
  top: 0;
  left: 0;
  width: 100vw;
  height: 650px;
  min-width: 1060px;
  padding: 0;
  margin-top: -8px;
  margin-left: -8px;
}
/*#####################################
        Boot-Window
#####################################*/
#boot_window {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 32767;
  width: 100%;
  height: 100%;
  background: #fff;
  cursor: none;
  will-change: opacity;
}
#boot_window.hidden {
  animation: 1s 0.5s forwards fadeOut_hidden;
}
#boot_picture {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*#####################################
        Background
#####################################*/
#background_window {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*#####################################
        Title & Subtitle
#####################################*/
/*-------------------------###
    Title
###-------------------------*/
#title {
  position: absolute;
  top: 200px;
  left: 130px;
  width: calc(100vw - 130px);
  font: 120px '源ノ明朝Bold';
  line-height: 115px;
}
#title_upper_half,
#subTitle_text {
  position: absolute;
  top: 0px;
  left: 0px;
}
#title_under_half {
  position: absolute;
  top: 1.1em;
  left: 0px;
}
/*-------------------------###
    Subtitle
###-------------------------*/
#subTitle {
  position: absolute;
  top: 470px;
  left: 140px;
  width: calc(100vw - 140px);
  font: 23px 'Arial Black', 'Arca3_Heavy';
  line-height: 30px;
}
/*#####################################
        SiteAccess
#####################################*/
#siteAccess {
  position: absolute;
  top: 200px;
  right: 130px;
  width: 400px;
  font: 26px '源ノ明朝Heavy';
  line-height: 38px;
}
/*-------------------------###
    SiteAccess-common
###-------------------------*/
#siteAccess1,
#siteAccess2,
#siteAccess3,
#siteAccess4,
#siteAccess5 {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(1.2em + 20px);
  margin-bottom: 12px;
  padding-bottom: 7px;
  color: #000;
  cursor: pointer;
  transition: all 200ms linear 0s;
}
#siteAccess1.selected,
#siteAccess2.selected,
#siteAccess3.selected,
#siteAccess4.selected,
#siteAccess5.selected,
#siteAccess1:hover,
#siteAccess2:hover,
#siteAccess3:hover,
#siteAccess4:hover,
#siteAccess5:hover {
  color: #fff;
  background: #000;
}
#siteAccess1.selected > .siteSubItem,
#siteAccess2.selected > .siteSubItem,
#siteAccess3.selected > .siteSubItem,
#siteAccess4.selected > .siteSubItem,
#siteAccess5.selected > .siteSubItem {
  border-bottom: 2px solid #ffd700;
}
#siteAccess1:hover > .siteSubItem,
#siteAccess2:hover > .siteSubItem,
#siteAccess3:hover > .siteSubItem,
#siteAccess4:hover > .siteSubItem,
#siteAccess5:hover > .siteSubItem {
  border-bottom: 2px solid #ffd700;
}
/*-------------------------###
    SiteAccess-Item
###-------------------------*/
.siteItem {
  position: absolute;
  top: 0px;
  left: 17px;
  font: 26px '源ノ明朝Heavy';
}
.siteSubItem {
  position: absolute;
  top: 33px;
  left: 15px;
  width: calc(100% - 30px);
  font: 13px 'Arca3_Heavy', 'Arial Black';
  border-bottom: 2px solid #000;
}
/*-------------------------###
    SiteAccess-Icon
###-------------------------*/
.siteItemIcon {
  position: absolute;
  top: 2px;
  right: 15px;
  width: 70px;
  height: 50px;
}
/*#####################################################
        Last-Page
#####################################################*/
.LastPage {
  position: relative;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 410px;
  min-width: 1060px;
  margin-left: -8px;
}
/*#####################################
        Footer
#####################################*/
.BottomFooter {
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 410px;
  z-index: 99;
  background: Black;
}
/*#------------------------###
    Footer-title
###-------------------------*/
#firstOurDeclaration,
#copyrightNotice,
.footLink,
.contackUsLinks,
.FirstIntroSentence {
  position: absolute;
  top: 40px;
  left: calc(50% - 500px);
  color: White;
  font: 23px source-han-serif-japanese, '源ノ明朝Heavy';
}
#copyrightNotice {
  top: 70px;
  left: calc(50% - 500px);
  font-size: 14px;
}
/*#------------------------###
    Footer-site-map
###------------------------#*/
.footLink {
  color: #fff;
  font: 19px '源ノ明朝Bold';
  transition: color 0s linear 100ms;
}
#footLink1,
#footLink2,
#footLink3,
#footLink4,
#footLink5 {
  position: absolute;
  top: 120px;
  left: max(calc(50vw - 435px), 47px);
  width: 150px;
  height: 200px;
}
#footLink2 {
  left: max(calc(50vw - 255px), 227px);
}
#footLink3 {
  left: max(calc(50vw - 75px), 407px);
}
#footLink4 {
  left: max(calc(50vw + 100px), 582px);
}
#footLink5 {
  left: max(calc(50vw + 280px), 762px);
}
.footLinksTop {
  position: relative;
  margin: 0px 0px 10px 0px;
  border-bottom: 1px solid Gold;
  cursor: pointer;
}
.footLinksTop:hover {
  color: Gold;
}
.footLinks {
  position: relative;
  margin: 0 0 0 12px;
  font-family: '源ノ明朝Regular';
  font-size: 17px;
  cursor: pointer;
}
.footLinks:hover {
  color: Yellow;
}
/*-------------------------###
    Footer-contact
###-------------------------*/
.contackUsLinks {
  width: 40px;
  height: 40px;
  cursor: pointer;
  background: #87ceeb;
  border-radius: 8px;
  border: 2px solid #fff;
}
.contackUsLinks:hover {
  color: Yellow;
}
#contactUsLink1,
#contactUsLink2 {
  top: 292px;
  left: max(calc(50% + 310px), 840px);
  background: no-repeat center/cover url("Src-Icon/icon-simple/Icon_TweetPersonal.png");
}
#contactUsLink2 {
  left: max(calc(50% + 360px), 890px);
  background: no-repeat center/cover url("Src-Icon/icon-simple/Icon_TweetInformation.png");
}
/*-------------------------###
    Footer-sentence
###-------------------------*/
.FirstIntroSentence {
  top: 310px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 17px;
}
