@charset "UTF-8";
/* CSS Document */

*{
  box-sizing:border-box;
}

body {
  margin: 0;
  font-family: "Hiragino Kaku Gothic ProN", sans-serif;
}

header{
	z-index:1000;
	position:fixed;
	width:100%;
	border-bottom: 1px solid #231815;
	background-color: white;
}

a{
	display: block;
}

ul{
  margin:0;
  padding: 0;
  list-style: none;
}

dd{
	display: none;
}

.wrapper{
	width:100%;
}
.red{
	color: red;
}

/* SP版ベースに構築 ---------------------------------------- */
#loading{
  position:fixed;
  z-index: 9999;
  width: 100vw;
　height: 100vh;
}

#loader video{
	object-fit: cover;
	height: 925px;
	width: 100%;
}
/*　ハンバーガーメニューボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 100;
  left : 20px;
  top   : 10px;
  width : 40px;
  height: 40px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 40px;
  height  : 6px ;
  background : #231815;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  bottom: 10px;
}

/* メニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 15px;
  background :#231815;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

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

/* メニュー背景　*/
nav.globalMenuSp {
  position: fixed;
  z-index : 99;
  top  : 60px;
  left : 0;
  padding:50px 70px 50px 30px;
  color: #231815;
  background-color:#a7c7e8;
  width: 100%;
  height:100vh;
  transform: translateX(100%);
  transition: all 0.4s;
  overflow: auto;
}

nav.globalMenuSp ul li.right-menu{
   text-align: right;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}

nav.globalMenuSp ul li a {
  font-size:12px;
  line-height: 20px;
  letter-spacing:3.5px;
  display: block;
  color:#231815;
  padding: 1em 0;
  text-decoration :none;
}

nav.globalMenuSp.active {
  opacity: 100;
  display: block;
   transform: translateX(0%);
}

p{
	font-size: 11px;
	line-height: 1.5rem;
	letter-spacing: 2px;
}

.spheader{
	height:60px;
}
.pc-logo{
	display: none !important;
}
.sp-logo{
	display: block !important;
}

.twopic {
	padding: 40px;
}
.twopic video{
    width: 100%;
    display: block;
    margin: 0 auto;
	border-left: 8px solid #231815;
    border-right: 8px solid #231815;
}

.twopic img{
    width: 100%;
    display: block;
    margin: 0 auto;
	border-left: 8px solid #231815;
    border-right: 8px solid #231815;
}

.hanenpic {
	padding: 40px 0px;
}

.hanenpic img{
    width: 100%;
    display: block;
    margin: 0 auto;
	border-left: 8px solid #231815;
    border-right: 8px solid #231815;
}

.hanenpics {
	padding: 20px 0px 70px;
}
.hanenpics:last-child {
	padding: 20px 0px 0px;
}

.hanenpics img{
    width: 100%;
    display: block;
    margin: 0 auto;
}

.fourlogo {
	padding: 0px 45px 5px 45px;
}
.fourlogo img{
    width: 100%;
    display: block;
    margin: 0 auto;
	border-left: 7px solid #231815;
    border-right: 7px solid #231815;
	margin-bottom: 40px
}



h1{
	height:60px;
	margin: 0 auto;
	text-align: center;
}
h1 img{
	padding:7px;
	height: 60px;
	width:auto;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#auriculer{
	margin-top:45px;
}
.title{
	height:70px;
	width:100%;
	border-bottom: 1px solid #231815;
}
.title p{
	text-align: center;
	font-size:11px;
	height:70px;
	line-height:70px;
	letter-spacing: 4px;
}
.logo{
	height:260px;
	border-bottom: 1px solid #231815;
	position: relative;
}
.logo img{
	width: 80%;
	display:block;
	margin:0 auto;
	transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    position: absolute;
}
.aboutlogo{
	height:260px;
	position: relative;
}
.aboutlogo img{
	width: 80%;
	display:block;
	margin:0 auto;
	transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    position: absolute;
}

.listline dt{
	border-top: 1px solid #231815;
}


.list dt {
	height: 70px;
    line-height: 70px;
    font-size: 11px;
    border-bottom: 1px solid #231815;
    color: #231815;
    position: relative;
    cursor: pointer;
    text-align:center;
	letter-spacing: 4px;
}

.list dd {
    border-bottom: 1px solid #231815;
	text-align: center;
}

.text{
    display: block;
    padding: 0px 40px 50px 40px;
}
.left-border {
    display: block;
    margin: 0px 40px;
    border-left: 7px solid #231815;
    padding: 0px 15px;
}
.detailtext{
    display: block;
    padding: 0px 50px 40px;
	border-bottom: 1px solid #231815;
}

.collectionpop{
	text-indent: 4px;
	font-size: 11px;
    line-height: 1.5rem;
    letter-spacing: 4px;
}

.katanuki{
	margin-top: 10px;
    width: 100%;
}

dd p{
	text-align: justify;
}

.dd{
	padding: 50px 40px;
}
.collectiondd{
	padding: 50px 0px 0px;
}
.lastdd{
	padding: 30px 30px;
	max-width: 1080px;
    overflow: hidden;
    margin: 0 auto;
}

.collection{
	text-align: center;
}

.line{
	width: 65%;
    margin: 0 auto;
	display: block;
}

.kamon{
	padding: 40px;
	width: 100%;
	margin: 0 auto;
    display: block;
}
.sign {
    padding-top: 30px;
    width: 50%;
    margin: 0 auto;
    display: block;
}
.hanen {
    padding: 20px 0 10px;
    width: 50%;
    margin: 0 auto;
    display: block;
}
.hanen2 {
    padding: 20px 0 40px;
    width: 50%;
    margin: 0 auto;
    display: block;
}
.center{
	text-align: center;
	letter-spacing: 4px;
}
.center2{
	text-align: center;
}

.content{
  background: #fff;
  padding: 11px;
  width: 90%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

	.lb-outerContainer {
    height: 55vh !important;
    width: auto !important;
}
	.lightbox .lb-image {
    height: 55vh !important;
    width: auto !important;
	}

.swiper-container {
	position:relative;
	width: 100%;
	height: auto;
}

.swiper-slide {
	display: flex;
	flex-wrap:wrap;
	justify-content: space-around;
}

.swiper-slide div {
	width: 50%;
	padding: 15px;
}
.swiper-slide div a{
    display: inline;
}
.swiper-slide div img{
	width: 100%;
	height: 100%;
}

.slider {
   width:94%;
    margin:0 auto;
	padding:20px 0px 20px;
}

.slider img {
    width:100%;
    height:auto;
}

.slider .slick-slide {
    margin:10px 20px;
	padding: 15px;
}

/*矢印の設定*/
.slick-prev, 
.slick-next {
	margin: 0px 20px;
    position: absolute;
    top: 50%;
    cursor: pointer;
    outline: none;
    border-top: 2px solid #231815;
    border-right: 2px solid #231815;
    height: 10px;
    width: 10px;
	z-index: 1;
}

.slick-prev {
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {
    right: -1.5%;
    transform: rotate(45deg);
}

#lightbox{
    width: 320px;
    left: calc(50% - 160px) !important;
}

.btn {
	background: url(../img/bt01.png) no-repeat center;
    display: inline-block;
    width: 100%;
    height: 70px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background-size: 80px;
	margin-bottom: 20px;
}
 
.btn.close {
	background: url("../img/bt02.png") no-repeat center;
	background-size: 80px;
}
.vi{
    width: 15%;
    padding-bottom: 30px;
}
.form {
    display: block;
    letter-spacing: 2px;
    line-height: 1.5rem;
    font-size: 11px;
    padding: 40px 30px;
}
input, textarea{
	border-radius:0;
	width: 100% !important;
    vertical-align: middle;
    letter-spacing: 2px;
    font-size: 11px;
	border:1px solid #3e3a39;
}
.send{
	background-color: #a7c7e8;
}

textarea{
	height: auto !important;
}

input{
	height: 25px;
}

footer{
	position: relative;
	height:80px;
	background-color:#a7c7e8;
}
footer img{
	width: 50%;
    display: block;
    margin: 0 auto;
    transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    position: absolute;
	
}
	.border{
	border-top: 1px solid #231815;
	}
.firstvideo{
	display: block;
	width: 100%
}



/* SP横向き */

@media screen and (orientation: landscape) and (max-width: 812px){
	
  nav.globalMenuSp ul li a:last-child{
  margin-bottom:30px;
  }
	.logo img{
	width: 43%;
	}
	.aboutlogo img{
	width: 43%;
}
	.dd {
	padding: 70px 150px;
	}
	.collectiondd {
	padding: 70px 0px 0px;
	}
	.line {
    width: 45%;
	}
	.content {
    display: flex;
    width: 90%;
	}
	
	.lastdd {
    padding: 70px 30px;
}
	.swiper-slide div {
	width: 25%;
	}
	
	footer img {
    width: 35%;
	}
}

/* PC版上書き ---------------------------------------- */

@media screen and (min-width:1024px){
	
#loading{
  position:fixed;
  z-index: 9999;
  width: 100vw;
　height: 100vh;
}
	#loader video{
	width: 100vw;
	height: inherit;
}
	
	p{
	font-size: 18px;
	letter-spacing: 4px;
	line-height: 3.5rem;
	}
	.center{
	letter-spacing: 12px;
}
	
	.spheader{
	height:210px;
	}
	
	#auriculer{
	margin-top:195px;
	}
	
	h1 img {
	height:150px;
    padding: 10px;
	}
	.sp-logo{
		display: none !important;
	}
	.pc-logo{
		display: block !important;
	}
	
	.twopic {
    border-bottom: none;
	justify-content: space-between;
    display: flex;
	padding: initial;
	}
	
	.twopic video{
    width: initial;
    display: initial;
    margin: initial;
	}
	
	.twopic img{
    width: initial;
    display: initial;
    margin: initial;
	}
	
	.hanenpic {
	padding: 100px 0px;
}
	.hanenpics {
	padding: 50px 0px 100px;
}
	.hanenpics:last-child {
	padding: 50px 0px 0px;
}
	
	
	.top-pic{
	padding: 80px;
	}
	
	.top-pic video{
	width: 45%;
	height: auto;
	}
	.top-pic a{
	width: 45%;
	height: auto;
	}
	.about-pic{
	padding: 100px 230px;
	}
	
	.about-pic img{
	width: 100%;
	height: auto;
	}
	
	.fourlogo {
    border-bottom: none;
	justify-content: space-between;
    display: flex;
	padding: initial;
	flex-wrap: wrap;
	}
	
	.fourlogo img{
    width: initial;
    display: initial;
    margin: initial;
	}
	
	.fourlogo a{
	width: 45%;
	}
	
	.brand-logo{
	padding: 0px 80px;
	}
	
	.brand-logo img{
	width: 100%;
	height: auto;
	margin-bottom: 80px;
	}
	
	h1{
		height: 150px;
	}
	
	nav.globalMenuSp ul li a {
    font-size: 18px;
	line-height: 48px;
    letter-spacing: 14px;
	}
	
	nav.globalMenuSp {
    top: 120px;
    padding: 210px 260px 210px 140px;
	}
	
	.hamburger {
    left: 50px;
    top: 80px;
	height:50px;
	}
	
	.hamburger span {
    width: 70px;
    height: 9px;
	}
	
	.title {
    height: 120px;
	}
	
	.title p {
    height: 120px;
    line-height: 120px;
	font-size: 18px;
	letter-spacing: 12px;
	}
	
	.list dt {
    height: 130px;
    line-height: 130px;
	font-size: 18px;
	letter-spacing: 12px;
	}
	
	.logo {
    height: 630px;
	}
	
	.logo img {
    width: 45%;
	}
	
	.aboutlogo {
    height: 630px;
	}
	
	.aboutlogo img {
    width: 45%;
	}
	
	.list dd {
    letter-spacing: 6px;
    line-height: 3.5rem;
    font-size: 18px;
	}
	
	.text{
    padding: 0px 230px 130px 230px;
}
	.left-border {
    margin: 0px 230px;
    padding: 0px 0px 0px 30px;
}
	.vi{
		padding-bottom:90px;
	}
	.detailtext{
    padding: 0px 150px 100px;
}
	.collectionpop{
	text-indent: 14px;
	font-size: 18px;
	letter-spacing: 14px;
	line-height: 3.5rem;
}

	.line {
    width: 45%;
	}
	
	.dd {
    padding: 130px 230px;
	}
	.collectiondd {
    padding: 130px 0px 0px;
	}
	
	.content {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    width: auto;
	}
	
	.content{
	padding: 0px;
	}

	.lastdd {
    padding: 70px 70px;
     max-width: none;
	}
	
	.swiper-slide div {
	width: 25%;
	padding: 30px;
	}
	
	.kamon{
	padding: 90px;
}
	.lb-outerContainer {
    height: 65vh !important;
    width: auto !important;
}
	.lightbox .lb-image {
    height: 65vh !important;
    width: auto !important;
	}
	#lightbox {
    width: 360px;
    left: calc(50% - 180px) !important;
	}
	.slider .slick-slide {
    margin:0 40px;
}
	.slider {
    width: 94%;
    margin: 0 auto;
    padding: 100px 0px;
}
	.slick-prev, 
	.slick-next {
    height: 15px;
    width: 15px;
}
	.btn {
    background-size: 110px;
	margin-bottom: 40px;
}
 
.btn.close {
	background-size: 110px;
}
	
.pclist{
    display: flex;
    justify-content: space-around;
    border-top: 1px solid #231815;
	border-bottom: 1px solid #231815;
	padding: 0px 80px;
	}
	.pcborder{
	border-bottom: none !important;
	border-top:none !important;
	}
	
	.hanen {
    padding: 50px 0 30px;
	}
	.hanen2 {
    padding: 50px 0 100px;
	}
	
	.form {
    letter-spacing: 6px;
    line-height: 3.5rem;
    font-size: 18px;
    padding: 130px 250px;
}
	input, textarea{
    letter-spacing: 6px;
    font-size: 18px;
}
	input{
	height: 45px;
}
	
	footer img {
    width: auto;
	height: 150px;
	padding: 10px;
	}
	footer{
	height:210px;
	}
	
}

/* tablet版上書き ---------------------------------------- */

@media only screen and (min-width:600px) and (max-width:1023px) {
	
 #loading{
  position:fixed;
  z-index: 9999;
  width: 100vw;
　height: 100vh;
}
	#loader video{
	width: inherit;
	height: inherit;
}
	
	nav.globalMenuSp ul li a {
    font-size: 14px;
    line-height: 30px;
    letter-spacing: 4.5px;
	}
	
	p{
	font-size: 14px;
	letter-spacing: 3px;
	line-height: 2.5rem
	}
		.center{
	letter-spacing: 6px;
}
	
	.logo{
		height: 370px;
	}
	
	.logo img {
    width: 50%;
	}
	
	.aboutlogo{
		height: 370px;
	}
	
	.aboutlogo img {
    width: 50%;
	}
	
	.hamburger span {
    width: 55px;
    height: 6px;
	}
	
	.hamburger {
    left: 30px;
    top: 30px;
    width: 40px;
    height: 40px;
	}
	
	nav.globalMenuSp {
    padding: 110px 185px 110px 115px;
	}
	
	h1{
	height: 80px;
	}
	
	h1 img{
		height: 80px;
	}
	.sp-logo{
		display: none !important;
	}
	.pc-logo{
		display: block !important;
	}
	
	.twopic {
    border-bottom: none;
	justify-content: space-between;
    display: flex;
	padding: initial;
	}
	
	.twopic video{
    width: initial;
    display: initial;
    margin: initial;
	}
	.twopic img{
    width: initial;
    display: initial;
    margin: initial;
	}
	
		.hanenpic {
	padding: 100px 0px;
}
		.hanenpics {
	padding: 50px 0px 100px;
}
			
	.hanenpics:last-child {
	padding: 50px 0px 0px;
}
	
	
	.top-pic{
	padding: 45px;
	}
	
	.top-pic video{
	width: 45%;
	height: auto;
	}
	
	.top-pic a{
	width: 45%;
	height: auto;
	}
	
	.about-pic{
	padding: 70px 90px;
	}
	
	.about-pic img{
	width: 100%;
	height: auto;
	}
	

	
	.fourlogo {
    border-bottom: none;
	justify-content: space-between;
    display: flex;
	padding: initial;
	flex-wrap: wrap;
	}
	
	.fourlogo img{
    width: initial;
    display: initial;
    margin: initial;
	}
	
	.fourlogo a{
		width: 45%;
	}
	
	.brand-logo{
	padding: 0px 45px;
	}
	
	.brand-logo img{
	width: 100%;
	height: auto;
	margin-bottom: 40px;
	}

	
	#auriculer {
    margin-top: 85px;
	}
	
	.spheader {
    height: 100px;
	}
	
	.title {
    height: 80px;
	}
	
	.title p {
    height: 80px;
    line-height: 80px;
	font-size: 14px;
	letter-spacing: 6px;
	}
	
	.list dt {
    height: 80px;
    line-height: 80px;
	font-size: 14px;
    letter-spacing: 6px;
	}
	
	.list dd {
    line-height: 2.5rem;
	}
	
	.text{
    padding: 0px 90px 100px 90px;
}
	.left-border {
    margin: 0px 90px;
	padding: 0px 0px 0px 25px;
}
	.vi{
		width: 10%;
	}
	
	.content {
    width: 80%;
	}
	
	.collectionpop{
	text-indent: 8px;
	font-size: 14px;
    letter-spacing: 8px;
    line-height: 2.5rem;
}

	.dd {
    padding: 90px 100px;
	}
	
	.collectiondd {
    padding: 90px 0px 0px;
	}
	
	.line {
    width: 50%;
	}
	
	.lastdd {
    padding: 45px 45px;
	}
	
	.lb-outerContainer {
    height: 65vh !important;
    width: auto !important;
}
	.lightbox .lb-image {
    height: 65vh !important;
    width: auto !important;
	}
	
	.kamon{
	padding: 70px;
}
	.detailtext{
    padding: 0px 90px 80px;
}

	.slider {
    width:94%;
    margin:0 auto;
	padding: 80px 0px;
}
	.slick-prev, 
	.slick-next {
    height: 15px;
    width: 15px;
}
	.pclist{
    display: flex;
    justify-content: space-around;
    border-top: 1px solid #231815;
	border-bottom: 1px solid #231815;
	padding: 0px 70px;
	}
	.pcborder{
	border-bottom: none !important;
	border-top:none !important;
	}
	.hanen {
    padding: 40px 0 10px;
	}
	.hanen2 {
    padding: 40px 0 70px;
	}
	
	#lightbox {
    width: 360px;
    left: calc(50% - 210px) !important;
	}
	.form {
    letter-spacing: 6px;
    line-height: 2.5rem;
    font-size: 14px;
    padding: 90px 100px;
}
	input, textarea{
    letter-spacing: 6px;
    font-size: 14px;
}
	input{
	height: 35px;
}
	footer img {
    width: auto;
    height: 80px;
    padding: 7px;
	}
	
	footer{
	height: 100px;
	}
} 