@charset "utf-8";

/* 基本設定 */
html{
	font-size: 62.5%;
}
*, *::before, *::after{
  box-sizing: border-box;
}
body{
	color: #FFF;
	background: #000;
	line-height: 1.8;
  font-size: 2vw;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  font-feature-settings: "palt"; /* 自動カーニング palt pwid pkna */
  letter-spacing: .5px;
  -webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
  -moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%; /* 文字サイズの自動調整機能のキャンセル */
}
  body{
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  }
  b, strong, .bold{
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
  }
  _:lang(x)::-ms-backdrop, .selector {
    font-family: "Segoe UI", Meiryo, sans-serif;
  }
.fntMc{
  font-family: "Hiragino Mincho ProN W3", "Hiragino Mincho ProN", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fntPr{
  font-family: 'Prata', serif;
  letter-spacing: .1em;
}

img{
	border: 0;
	vertical-align: top;
}
input ,select{
	position: relative;
	top: 1px;
}
table, th, td{
	border-collapse: collapse;
	border-spacing: 0;
}
ul, li{
	list-style:none;
}
a:link, a:visited{
	color: #BE8A46;
	text-decoration: none;
	transition: opacity 0.5s;
}
a:hover, a:active{
  opacity: .6;
}
.clearfix::after{
  content: "";
  display: block;
  clear: both;
}
#cover{
  width: 100%;
  height: 100%;
  position: fixed;
  background: #000;
  top: 0px;
  left: 0px;
  z-index: 10000;
}
#loader{
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 186px;
  height: 127px;
}
#loader img{
  width: 100%;
  height: auto;
}
#wrapper{
	overflow: hidden;
  position: relative;
}
#page-top{
  position: relative;
	position: fixed;
  right: 1em;
  top: 50%;
  transform: translate(-50%);
	z-index: 9999;
  width: 2em;
}
#page-top span{
  position: relative;
  display: block;
  font-size: 12px;
  transform: rotate(90deg);
  border-bottom: 1px solid #fff;
  width: 10em;
  line-height: 2.8;
}
.dd960,.dd480{
  display: none;
}
.feedin1-no{
  opacity: 0;
	transform: translateY(30px); 
	transition: opacity 1.5s ease-in 0s, transform 1.5s ease-out 0s;
}
.feedin2-no{
  opacity: 0;
	transform: translateY(30px); 
	transition: opacity 1.5s ease-in 0.4s, transform 1.5s ease-out 0.4s;
}
.feedin1,
.feedin2{
  opacity: 1;
	transform: translateY(0); 
}
@media screen and (max-width: 480px){
  body{
    font-size: 4vw;
  }
  #loader{
    width: 100px;
    height: 68px;
  }
  #page-top{
    right: 1.8rem;
    bottom: 2rem;
    top: inherit;
    transform: none;
    width: 3.4rem;
    height: 3.4rem;
    background: rgba(255,255,255,.2);
    border-radius: 50%;
  }
  #page-top span{
    display: none;
  }
  #page-top::after{
    position: absolute;
    display: block;
    content: "〉";
    color: #000;
    transform: rotate(-90deg);
    line-height: 1;
    top: 25%;
    width: 100%;
    text-align: center;
  }
}

/* ヘッダー */
#header{
  position: fixed;
  z-index: 9000;
  width: 100%;
}
#header h1{
  position: relative;
  z-index: 1111;
  width: 10rem;
  margin: 2rem 0 0 2.5rem;
}
#header h1 .logoImg{
  display: block;
  width: 94%;
  height: auto;
  margin: 0 auto 0.6rem
}
#header h1 .name{
  display: block;
  width: 80%;
  height: auto;
  margin: 0 auto 1.2rem;
}
#header h1 .txt{
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
@media screen and (max-width: 480px){
  #header h1{
    width: 45%;
    margin: 1.4rem 0 0 1.4rem;
  }
  #header h1 .logoImg{
    float: left;
    display: block;
    width: 34%;
    height: auto;
    margin: 0 6% 0.6rem 0;
  }
  #header h1 .name{
    float: left;
    width: 48%;
    margin: 1rem 0 .6rem;
  }
  #header h1 .txt{
    float: left;
    width: 58%;
    margin: 0;
  }  
}

/* ナビゲーション */
#header .menuBg{
  position: fixed;
  display: block;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: opacity .4s;
  background: rgba(0,0,0,0.8);
}
#header .menuBg .gMenu{
  position: relative;
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-content: center;
}
#header .menuBg .gMenu li{
  position: relative;
  text-align: center;
}
#header .menuBg .gMenu li a{
  display: block;
  padding: 1em 0;
  color: #fff;
}
#header .menuBg .gMenu li a span{
  display: block;
  font-size: 75%;
  letter-spacing: .2em;
}
#header .menuBg .gMenu li a small{
  display: block;
  font-size: 50%;
  color: #B2B2B2;
}
#header .menuBg.active{
  visibility: inherit;
  opacity: 1;
}
@media screen and (max-width: 480px){
  #header .menuBg .gMenu li a{
    line-height: 1.7;
  }
  #header .menuBg .gMenu li a span{
    font-size: 115%;
  }
  #header .menuBg .gMenu li a small{
    font-size: 70%;
  }
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: fixed;
  z-index: 9999;
  width: 3.4rem;
  height: 2rem;
  top: 3.5rem;
  right: 3.5rem;
}
.menu-trigger span {
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #BE8A46;
  border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: .9rem;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(.9rem) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-.9rem) rotate(45deg);
}
@media screen and (max-width: 480px){
  .menu-trigger {
    width: 2.4rem;
    top: 2.5rem;
    right: 2rem;
  }
}


/* コンテンツ */
main{
  position: relative;
}
section{
  position: relative;
}
section .inner{
  position: relative;
  width: 75%;
  margin: 0 auto;
}
section h2{
  position: relative;
  display: flex;
  color: #BE8A46;
  font-weight: 400;
}
section .en{
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-size: 70%;
}
section .en2{
  font-size: 65%;
  color: #BE8A46;
  margin-bottom: 6em;
}
section .copy{
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-size: 130%;
  letter-spacing: .15em;
  margin-left: .6em;
}
section .txt{
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-size: 60%;
  letter-spacing: .25em;
  margin-left: 2.2em;
  line-height: 2.4;
}
section .txt2{
  font-size: 55%;
  letter-spacing: .2em;
  line-height: 2.2;
  text-align: justify; /*左右両端揃え*/
  text-justify: inter-ideograph;
}
section .txt3{
  font-size: 55%;
  letter-spacing: .2em;
  line-height: 2.2;
  text-align: center;
}
section .txt4{
  position: relative;
  font-size: 45%;
  letter-spacing: .2em;
  line-height: 2.2;
  text-align: justify; /*左右両端揃え*/
  text-justify: inter-ideograph;
}
section .copy1{
  text-align: center;
  font-size: 90%;
  letter-spacing: .05em;
  margin-bottom: 2.5em;
}
section .copy2{
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-size: 100%;
  letter-spacing: .15em;
  margin-left: .8em;
}
section .copy3{
  position: relative;
  font-size: 95%;
  letter-spacing: .25em;
  margin-bottom: 1.8em;
}
section .copy4{
  text-align: center;
  font-size: 120%;
  letter-spacing: .05em;
  margin-bottom: 1.5em;
}
section .btn{
  writing-mode: vertical-rl;
  font-size: 60%;
  color: #BE8A46;
}
section .btn a{
  display: inline-block;
  color: #BE8A46;
  border-left: 1px solid #BE8A46; 
  padding-bottom: 1em;
  margin-left: .5em;
}
section .btn a::after{
  content: "〉";
  display: inline-block;
  margin-top: .6em;
}
section .picBox{
  position: relative;
  width: 65%;
  display: flex;
  justify-content: space-between;
  margin-top: -12.5em;
}
section .picBox .pic1{
  width: 48%;
  height: auto;
  margin-bottom: 7em;
}
section .picBox .pic2{
  width: 48%;
  height: auto;
  margin-top: 7em;
}
section .picBox img{
  width: 100%;
  height: auto;
}
@media screen and (max-width: 480px){
  section .inner{
    width: 82%;
  }
  section .en{
    line-height: 2;
  }
  section .en2{
    font-size: 75%;
    margin-bottom: 6em;
  }
  section .txt{
    writing-mode: horizontal-tb;
    margin-left: 0;
    font-size: 75%;
    margin-bottom: 2.5em;
  }
  section .txt2{
    font-size: 80%;
  }
  section .txt3{
    font-size: 75%;
  }
  section .txt4{
    font-size: 65%;
  }
  section .copy1{
    font-size: 100%;
  }
  section .copy2{
    margin-left: 1.2em;
    margin-right: 1.4em;
  }
  section .copy3{
    font-size: 105%;
  }
  section .btn{
    writing-mode: horizontal-tb;
    font-size: 80%;
    letter-spacing: .15em;
  }
  section .btn a{
    position: relative;
    display: block;
    text-align: center;
    border: 2px solid #BE8A46;
    padding: 1.8em 0;
    margin-left: 0;
  }
  section .btn a::after{
    content: "〉";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-45%);
    right: 1.5em;
    margin-top: 0;
  }
  section .picBox{
    width: 120%;
    margin: 3em 0 5em -10%;
    flex-direction: row-reverse;
  }
  section .picBox .pic1{
    width: 50%;
    height: 50%;
    margin: 0;
  }
  section .picBox .pic2{
    width: 50%;
    height: 50%;
    margin: 0;
  }
}

/* トップページ */
#topMainSct{
  background: url("../img/top01_bg.jpg") no-repeat center top;
  background-size: cover;
  padding: 10em 0 16em;
}
#topMainSct .box{
  position: relative;
  display: flex;
}
@media screen and (max-width: 480px){
  #topMainSct{
    background: url("../img/top01_bg_sp.jpg") no-repeat center top;
    background-size: cover;
    padding: 7em 0 35em;
  }
  #topMainSct .box{
    justify-content: center;
  }
  #topMainSct .box .en{
    padding-left: 1.4em;
  }
}

#topHistSct{
  background: url("../img/top02_bg.jpg") no-repeat right 5em;
  background-size: 70% auto;
}
#topHistSct h2{
  margin-bottom: 8em;
}
#topHistSct .box1{
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  margin-bottom: 7em;
}
#topHistSct .box2{
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 480px){
  #topHistSct{
    background: url("../img/top02_bg_sp.jpg") no-repeat right 4.6em;
    background-size: 92% auto;
  }
  #topHistSct h2{
    margin: 0 0 14.7em 1.6em;
  }
  #topHistSct .box1{
    display: block;
  }
}

#topAbtSct{
  padding-top: 4em;
  background: url("../img/top03_bg.jpg") no-repeat left 10em;
  background-size: 70% auto;
}
#topAbtSct h2{
  justify-content: flex-end;
  margin-bottom: 8em;
}
#topAbtSct .box1{
  display: flex;
  flex-direction: row-reverse;
  margin-bottom: 7em;
}
@media screen and (max-width: 480px){
  #topAbtSct{
    padding-top: 4em;
    background: url("../img/top03_bg_sp.jpg") no-repeat right 10em;
    background-size: 92% auto;
  }
  #topAbtSct h2{
    justify-content: flex-start;
    margin: 0 0 12em 1.5em;
  }
  #topAbtSct .box1{
    display: block;
  }
}

#topOnlineSct{
  background: url("../img/top04_bg.jpg") no-repeat center top;
  background-size: 100% auto;
  padding: 23.5em 0 8em;
}
#topOnlineSct h2{
  font-size: 90%;
  margin-bottom: 5em;
}
#topOnlineSct .items{
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#topOnlineSct .items li{
  position: relative;
  width: 26%;
  height: 100%;
  margin-bottom: 5em;
}
#topOnlineSct .items li .eName{
  display: block;
  font-size: 80%;
  text-align: center;
  color: #BE8A46;
  line-height: 1.4;
  margin-bottom: .5em;
}
#topOnlineSct .items li .jName{
  display: block;
  font-size: 65%;
  text-align: center;
  color: #BE8A46;
  margin-bottom: 1em;
}
#topOnlineSct .items li img{
  display: block;
  width: 90%;
  margin: 0 auto;
}
#topOnlineSct .items li .setu{
  display: block;
  font-size: 50%;
  text-align: justify; /*左右両端揃え*/
  text-justify: inter-ideograph;
  margin-bottom: 1.6em;
}
#topOnlineSct .items li:nth-child(2) .setu,
#topOnlineSct .items li:nth-child(3) .setu{
  margin-bottom: 3.4em;
}
#topOnlineSct .btn2{
  display: block;
}
#topOnlineSct .btn2 a{
  position: relative;
  display: block;
  font-size: 50%;
  text-align: center;
  border: 2px solid #BE8A46;
  padding: 1.8em 0;
}
#topOnlineSct .btn2 a::after{
  content: "〉";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-45%);
  right: 1.5em;
}
#topOnlineSct .giftBox{
  position: relative;
  background: url("../img/top05_bg.jpg") no-repeat right top;
  background-size: 60% auto;
  padding-left: 12.5%;
}
#topOnlineSct .giftBox .box{
  position: relative;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  width: 23%;
  font-size: 95%;
}
#topOnlineSct .giftBox .box .copy2{
  margin-bottom: 1.5em;
}
#topOnlineSct .giftBox .box .txt{
  margin-bottom: 2em;
}
#topOnlineSct .giftBox .box .btn2{
  width: 100%;
}
@media screen and (max-width: 480px){
  #topOnlineSct{
    background: url("../img/top04_bg_sp.jpg") no-repeat center top;
    background-size: 100% auto;
    padding: 18em 0 8em;
  }
  #topOnlineSct h2{
    margin-left: 1.5em;
  }
  #topOnlineSct .items{
    justify-content: center;
  }
  #topOnlineSct .items li{
    width: 75%;
    height: auto;
  }
  #topOnlineSct .items li .eName{
    font-size: 120%;
    margin-bottom: .5em;
  }
  #topOnlineSct .items li .jName{
    font-size: 100%;
    letter-spacing: .2em;
    margin-bottom: .2em;
  }
  #topOnlineSct .items li img{
    width: 82%;
  }
  #topOnlineSct .items li .setu{
    font-size: 80%;
    letter-spacing: .1em;
    margin-bottom: 2em !important;
  }
  #topOnlineSct .btn2 a{
    font-size: 80%;
  }
  #topOnlineSct .giftBox{
    background: url("../img/top05_bg_sp.jpg") no-repeat right 2em;
    background-size: 92% auto;
    padding: 0 18%;
  }
  #topOnlineSct .giftBox .box{
    justify-content: flex-start;
    width: 100%;
    font-size: 105%;
  }
  #topOnlineSct .giftBox .box .copy2{
    margin-left: .7em;
    margin-bottom: 14.7em;
  }
  #topOnlineSct .giftBox .box .txt{
    width: 100%;
    margin-bottom: 2em;
    font-size: 70%;
  }
  #topOnlineSct .giftBox .box .btn2{
    width: 100%;
  }
}

#topAcssSct{
  padding-bottom: 8em;
}
#topAcssSct .box{
  display: flex;
  justify-content: flex-end;
}
#topAcssSct .picBox{
  margin-top: -5.5em
}
#topAcssSct .box2{
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  margin-top: -4em;
}
#topAcssSct .box2 .copy2{
  margin-left: 2em;
}
#topAcssSct .addBox{
  position: relative;
  padding-left: 12.5%;
}
#topAcssSct .addBox .map1{
  position: absolute;
  display: block;
  width: 56%;
  top: 8em;
  right: -1%;
}
#topAcssSct .addBox .map2{
  position: relative;
  display: block;
  width: 58%;
  margin: -1em 0 3em -3%;
}
#topAcssSct .addBox table{
  font-size: 60%;
  margin-bottom: 1em;
}
#topAcssSct .addBox table th{
  text-align: left;
  white-space: nowrap;
  letter-spacing: .2em;
  font-weight: 400;
  padding: 0 1.2em 1em 0;
}
#topAcssSct .addBox table td{
  letter-spacing: .1em;
  padding-bottom: 1em;
}
#topAcssSct .addBox table td small{
  display: block;
  font-weight: 600;
  font-size: 80%;
  color: #f00;
  line-height: 1.4;
  margin-bottom: 8px;
  border-left: 3px solid #F00;
  padding-left: 8px;
}
#topAcssSct .addBox table td span{
  display: block;
  font-size: 80%;
  line-height: 1.4;
  border-left: 2px solid #fff;
  padding-left: 8px;
}
#topAcssSct .addBox .btn3{
  display: block;
  width: 27%;
}
#topAcssSct .addBox .btn3 a{
  position: relative;
  display: block;
  font-size: 70%;
  text-align: center;
  border: 2px solid #BE8A46;
  padding: 1.4em 0 1.4em 2em;
  letter-spacing: .1em;
}
#topAcssSct .addBox .btn3 a::before{
  content: "";
  position: absolute;
  width: 1em;
  height: 1.4em;
  background: url("../img/icn_map.png") no-repeat center center;
  background-size: contain;
  margin: auto 0 auto -2em;
  top: 0;
  bottom: 0;
}
@media screen and (max-width: 480px){
  #topAcssSct{
    padding-bottom: 8em;
  }
  #topAcssSct .box{
    display: flex;
    justify-content: flex-end;
  }
  #topAcssSct .box .copy2{
    font-size: 105%;
  }
  #topAcssSct .picBox{
    margin-top: 3em;
    flex-direction: row;
  }
  #topAcssSct h2{
    margin-left: 1.5em;
  }
  #topAcssSct .box2{
    flex-direction: row;
    margin-top: 3em;
  }
  #topAcssSct .box2 .copy2{
    display: none;
  }
  #topAcssSct .box2 .txt{
    font-size: 80%;
  }
  #topAcssSct .addBox{
    padding-left: 8%;
  }
  #topAcssSct .addBox .map1{
    position: relative;
    width: 115%;
    margin: 0 0 2em -9%;
    top: 0;
    right: 0;
  }
  #topAcssSct .addBox .map2{
    width: 112%;
    margin: 1em 0 2em;
  }
  #topAcssSct .addBox table{
    font-size: 85%;
    margin-bottom: 2.6em;
  }
  #topAcssSct .addBox .btn3{
    width: 70%;
    margin: 0 0 0 10%;
  }
  #topAcssSct .addBox .btn3 a{
    font-size: 85%;
  }
}


#topConStoSct{
  padding: 4em 0;
  background: url("../img/top06_bg.jpg") no-repeat center center;
  background-size: cover;
  display: flex;
  justify-content: center;
}
#topConStoSct::after{
  content: "";
  display: block;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 1px;
  height: 40%;
  background: #fff;
  transform: rotate(15deg);
}
#topConStoSct .ttl{
  position: relative;
  display: block;
  line-height: 1.5;
  padding-top: 1.4em;
  margin-bottom: .8em;
}
#topConStoSct .ttl span{
  display: block;
  letter-spacing: .2em;
}
#topConStoSct .ttl small{
  display: block;
  font-size: 80%;
  letter-spacing: .05em;
}
#topConStoSct .cotBox .ttl{
  background: url("../img/icn_tel.png") no-repeat center top;
  background-size: 1.2em auto;
}
#topConStoSct .strBox .ttl{
  background: url("../img/icn_str.png") no-repeat center top;
  background-size: 1.2em auto;
}
#topConStoSct .setu{
  font-size: 50%;
  margin-bottom: 1.6em;
}
#topConStoSct .cotBox{
  text-align: center;
  width: 50%;
}
#topConStoSct .cotBox .tel{
  display: block;
  line-height: 1.4;
}
#topConStoSct .cotBox .tel a{
  display: block;
  font-size: 130%;
  color: #fff;
}
#topConStoSct .cotBox .tel small{
  display: block;
  font-size: 55%;
}
#topConStoSct .strBox{
  text-align: center;
  width: 50%;
}
#topConStoSct .strBox .btn4{
  display: block;
  width: 46%;
  margin: 1em auto 0;
}
#topConStoSct .strBox .btn4 a{
  position: relative;
  display: block;
  font-size: 60%;
  text-align: center;
  border: 2px solid #FFF;
  color: #fff;
  padding: 1.5em 0;
}
#topConStoSct .strBox .btn4 a::after{
  content: "〉";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-45%);
  right: 1.3em;
}
@media screen and (max-width: 480px){
  #topConStoSct{
    padding: 0;
    background: url("../img/top06_bg_sp.jpg") no-repeat top center;
    background-size: cover;
    display: block;
  }
  #topConStoSct::after{
    content: "";
    display: block;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 1px;
    height: 25%;
    background: #fff;
    transform: rotate(70deg);
  }
  #topConStoSct > div{
    display: block;
    margin: 0 auto;
    font-size: 130%;
  }
  #topConStoSct .cotBox .ttl{
    background: url("../img/icn_tel.png") no-repeat center top;
    background-size: 1.2em auto;
  }
  #topConStoSct .strBox .ttl{
    background: url("../img/icn_str.png") no-repeat center top;
    background-size: 1.2em auto;
  }
  #topConStoSct .setu{
    font-size: 60%;
    letter-spacing: .1em;
  }
  #topConStoSct .cotBox{
    width: 100%;
    padding: 3em 0 4em;
  }
  #topConStoSct .cotBox .tel a{
    font-size: 155%;
  }
  #topConStoSct .strBox{
    width: 100%;
    padding: 4em 0 3.5em;
  }
  #topConStoSct .strBox .btn4{
    width: 64%;
    margin: 1.2em auto 0;
  }
  #topConStoSct .strBox .btn4 a{
    font-size: 60%;
    padding: 1.5em 0;
  }
}

/* 下層共通 */
#otherCntSct{
  padding: 7em 0;
}
#otherCntSct ul{
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#otherCntSct ul li{
  position: relative;
  width: 31%;
}
#otherCntSct ul li a{
  display: block;
  color: #fff;
  padding: 6em .6em 1em;
}
#otherCntSct ul li.history a{
  background: url("../img/otr_bg01.jpg") no-repeat center center;
  background-size: cover;
}
#otherCntSct ul li.camembert a{
  background: url("../img/otr_bg02.jpg") no-repeat center center;
  background-size: cover;
}
#otherCntSct ul li.online a{
  background: url("../img/otr_bg03.jpg") no-repeat center center;
  background-size: cover;
}
#otherCntSct ul li a .pageName{
  line-height: 1.6;
}
#otherCntSct ul li a .pageName span{
  display: block;
  font-size: 75%;
  letter-spacing: .16em;
}
#otherCntSct ul li a .pageName small{
  display: block;
  font-size: 60%;
  letter-spacing: .1em;
}
@media screen and (max-width: 480px){
  #otherCntSct{
    padding: 7em 0;
  }
  #otherCntSct ul li{
    width: 100%;
    margin-bottom: .6em;
  }
  #otherCntSct ul li a{
    padding: 9em 1.3em 1.6em;
  }
  #otherCntSct ul li.history a{
    background: url("../img/otr_bg01_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #otherCntSct ul li.camembert a{
    background: url("../img/otr_bg02_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #otherCntSct ul li.online a{
    background: url("../img/otr_bg03_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #otherCntSct ul li a .pageName{
    line-height: 1.6;
  }
  #otherCntSct ul li a .pageName span{
    font-size: 120%;
  }
  #otherCntSct ul li a .pageName small{
    font-size: 80%;
  }
}


/* 歴史 */
#hstTopSct{
  background: url("../img/hst_bg01.jpg") no-repeat center top;
  background-size: 100% auto;
  padding: 12em 0 8em;
}
#hstTopSct h2{
  display: flex;
  margin-bottom: 17em;
}
#hstTopSct .profile{
  display: block;
  float: right;
  width: 42%;
  height: auto;
}
#hstTopSct .box1{
  position: relative;
  width: 49%;
  padding-top: 2em;
}
@media screen and (max-width: 480px){
  #hstTopSct{
    background: url("../img/hst_bg01_sp.jpg") no-repeat center top;
    background-size: 100% auto;
    padding: 8.5em 0 8em;
  }
  #hstTopSct h2{
    margin-bottom: 12.5em;
  }
  #hstTopSct h2 .en{
    margin-left: .8em;
  }
  #hstTopSct .profile{
    float: none;
    width: 100%;
    margin: 0 auto .6em;
  }
  #hstTopSct .box1{
    width: 100%;
  }
}

#hstYearSct h3{
  display: block;
  font-weight: 400;
  font-size: 380%;
  line-height: 1.1;
}
#hstYearSct > div{
  padding: 5em 0 8em;
  overflow: hidden;
}
#hstYearSct .h1960{
  position: relative;
  background: url("../img/hst_bg02.jpg") no-repeat center center;
  background-size: cover;
}
#hstYearSct .h1975{
  background: url("../img/hst_bg03.jpg") no-repeat center center;
  background-size: cover;
}
#hstYearSct .h1976{
  background: url("../img/hst_bg04.jpg") no-repeat center center;
  background-size: cover;
}
#hstYearSct .h1979{
  background: url("../img/hst_bg05.jpg") no-repeat center center;
  background-size: cover;
}
#hstYearSct .pic{
  display: block;
  width: 27%;
  height: auto;
  float: left;
}
#hstYearSct .box2{
  float: right;
  width: 43%;
}
#hstYearSct .box2 .copy3 span::after{
  position: relative;
  display: inline-block;
  content: "";
  width: 3em;
  height: 1px;
  background: #fff;
  margin: 0 .5em .3em;
}
@media screen and (max-width: 480px){
  #hstYearSct h3{
    font-size: 450%;
    letter-spacing: .03em;
  }
  #hstYearSct > div{
    padding: 7em 0 8em;
    overflow: hidden;
  }
  #hstYearSct .h1960{
    position: relative;
    background: url("../img/hst_bg02_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #hstYearSct .h1975{
    background: url("../img/hst_bg03_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #hstYearSct .h1976{
    background: url("../img/hst_bg04_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #hstYearSct .h1979{
    background: url("../img/hst_bg05_sp.jpg") no-repeat center center;
    background-size: cover;
  }
  #hstYearSct .pic{
    width: 68%;
    float: none;
    margin-bottom: 2.5em;
  }
  #hstYearSct .box2{
    float: none;
    width: 100%;
  }
  #hstYearSct .box2 .copy3{
    font-size: 125%;
  }
}

/* 歴史 */
#cmbTopSct{
  background: url("../img/cmb_bg01.jpg") no-repeat center top;
  background-size: 100% auto;
  padding: 12.5em 0 5em;
}
#cmbTopSct h2{
  margin-bottom: 17em;
  font-size: 90%;
}
#cmbTopSct .illst{
  display: block;
  width: 47%;
  height: auto;
  margin: 1.6em auto 0;
}
@media screen and (max-width: 480px){
  #cmbTopSct{
    background: url("../img/cmb_bg01_sp.jpg") no-repeat center top;
    background-size: 100% auto;
    padding: 8em 0 5em;
  }
  #cmbTopSct h2{
    margin-bottom: 19em;
    font-size: 100%;
    margin-left: .5em;
  }
  #cmbTopSct .illst{
    width: 90%;
    margin: 2.5em auto 0;
  }
}
#cmbWeekSct .week1{
  position: relative;
  background: url("../img/cmb_bg02.jpg") no-repeat right bottom;
  background-size: 74% auto;
  padding: 3em 0;
  margin-bottom: 3em;
}
#cmbWeekSct .week3{
  position: relative;
  overflow: hidden;
  background: url("../img/cmb_bg03.jpg") no-repeat left bottom;
  background-size: 74% auto;
  padding: 3em 0;
  margin-bottom: 2em;
}
#cmbWeekSct .week5{
  position: relative;
  background: url("../img/cmb_bg04.jpg") no-repeat right bottom;
  background-size: 74% auto;
  padding: 4em 0 3em;
}
#cmbWeekSct .box1{
  position: relative;
  display: inline-block;
}
#cmbWeekSct .week3 .box1{
  margin-left: 65.5%;
}
#cmbWeekSct .box1 h3{
  position: relative;
  display: block;
  width: 9em;
  margin-bottom: .5em
}
#cmbWeekSct .box1 h3 img{
  width: 100%;
  height: auto;
}
#cmbWeekSct .box1 .illst{
  display: block;
  width: 5.5em;
  height: auto;
  margin: 0 0 2em 2.3em;
}
#cmbWeekSct .box1 .copy3{
  letter-spacing: .16em;
  text-align: left;
}
#cmbWeekSct .box1 .txt4{
  margin-top: 1.5em;
  padding-top: 1.5em;
  text-align: left;
}
#cmbWeekSct .box1 .txt4::before{
  position: absolute;
  display: block;
  content: "";
  width: 1.8em;
  height: 2px;
  background: #BE8A46;
  top: 0;
  left: 0;
}
@media screen and (max-width: 480px){
  #cmbWeekSct .week1{
    background: url("../img/cmb_bg02_sp.jpg") no-repeat center bottom;
    background-size: 100% auto;
    padding: 3em 0 20.5em;
    margin-bottom: 3em;
  }
  #cmbWeekSct .week3{
    background: url("../img/cmb_bg03_sp.jpg") no-repeat center bottom;
    background-size: 100% auto;
    padding: 3em 0 20.5em;
    margin-bottom: 2em;
  }
  #cmbWeekSct .week5{
    background: url("../img/cmb_bg04_sp.jpg") no-repeat center bottom;
    background-size: 100% auto;
    padding: 4em 0 20.5em;
  }
  #cmbWeekSct .box1{
    display: block;
    font-size: 110%;
  }
  #cmbWeekSct .week3 .box1{
    margin-left: 0;
  }
  #cmbWeekSct .box1 h3{
    width: 10em;
    margin: 0 auto .5em
  }
  #cmbWeekSct .box1 .illst{
    width: 7.5em;
    margin: 0 auto 2em;
  }
  #cmbWeekSct .box1 .copy3{
    font-size: 120%;
  }
  #cmbWeekSct .box1 .txt4{
    margin-top: 1.7em;
    padding-top: 1.7em;
  }
}

#storesSct{
  padding: 8em 0 2em;
}
#storesSct h2{
  display: block;
  text-align: center;
  margin-bottom: 2em;
}
#storesSct .copy{
  writing-mode: horizontal-tb;
}
#storesSct .en{
  writing-mode: horizontal-tb;
}
#storesSct table{
  margin: 0 auto;
  width: 100%;
}
#storesSct table tr{
  border-bottom: 1px solid #4C4C4C;
}
#storesSct table th{
  text-align: left;
  vertical-align: middle;
  font-size: 75%;
  letter-spacing: .15em;
  color: #BE8A46;
  padding: 5em 1em 1.5em;
}
#storesSct table td{
  text-align: left;
  vertical-align: middle;
  letter-spacing: .1em;
  font-size: 55%;
  padding: .8em 1em;
}
#storesSct table td a{
  display: inline-block;
  background: url("../img/icn_link.png") no-repeat 96% center;
  background-size: auto 50%;
  color: #fff;
  border: 1px solid #fff;
  line-height: 1;
  font-size: 80%;
  font-weight: 700;
  letter-spacing: 0;
  padding: .4em 4.5em .3em .6em;
  margin-left: .5em;
}
@media screen and (max-width: 480px){
  #storesSct{
    padding: 12em 0 4em;
  }
  #storesSct h2{
    font-size: 110%;
  }
  #storesSct .txt3{
    padding-left: .5em;
  }
  #storesSct table{
    margin: 3em auto 0;
  }
  #storesSct table th{
    display: block;
    font-size: 90%;
    padding: 5em 1.3rem 1em;
    width: 100%;
  }
  #storesSct table td{
    display: block;
    font-size: 70%;
    padding: .1em 1.3rem;
    line-height: 1.5;
  }
  #storesSct table td:nth-child(1){
    padding-top: 1.3rem;
  }
  #storesSct table td:nth-child(3){
    padding-bottom: 1.3rem;
  }
  #storesSct table td a{
    padding: .5em 4.5em .2em .6em;
  }
}

/* フッター */
#footer{
  position: relative;
  overflow: hidden;
  padding: 3% 4% 3.5%;
}
#footer .logo{
  float: left;
  position: relative;
  width: 10%;
}
#footer .logo .logoImg{
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto .5em;
}
#footer .logo .name{
  display: block;
  width: 90%;
  height: auto;
  margin: 0 auto;
}
#footer .contact{
  position: relative;
  overflow: hidden;
  float: right;
  display: flex;
  justify-content: flex-end;
  line-height: 1;
  margin: .5em 0 1.8em;
}
#footer .contact li{
  padding-left: .7em;
}
#footer .contact li img{
  width: 1.6em;
  height: auto;
}
#footer .contact li a{
  font-size: 60%;
  color: #fff;
}
#footer .cpr{
  clear: right;
  float: right;
  color: #808080;
  font-size: 60%;
  text-align: right;
}
@media screen and (max-width: 480px){
  #footer{
    padding: 5% 0 6%;
  }
  #footer .logo{
    float: none;
    width: 26%;
    margin: 0 auto;
  }
  #footer .contact{
    float: none;
    justify-content: center;
    margin: 0 0 1.8em;
    flex-wrap: wrap;
  }
  #footer .contact li{
    padding: 1.2em 1em;
  }
  #footer .contact li img{
    width: 2.5em;
    height: auto;
  }
  #footer .contact .ml{
    font-size: 120%;
    order: 3;
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #333;
    border-top:  1px solid #333;
  }
  #footer .contact li a{
    font-size: 60%;
    color: #fff;
  }
  #footer .cpr{
    float: none;
    text-align: center;
  }
}

@media screen and (max-width: 960px){
  .nn960{ display: none !important; }
  .dd960{ display: block !important; }
}
@media screen and (max-width: 480px){
  .nn480{ display: none !important; }
  .dd480{ display: block !important; }
}
@media screen and (orientation: landscape) {
}
@media screen and (orientation: portrait) {
}