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


/* ドロワーメニュー
------------------------------------------------- */
.wrapper {
  height: 100%;
  overflow-x: hidden;
  position: relative;
}
.overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity .5s;
}
.overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}
main {
  height: 100%;
  min-height: 100vh;
  transition: all .5s;
  /* display: flex;
  padding: 0 50px;
  background-color: #eee;
  flex-direction: column;
  justify-content: center; */
}









/*
PCナビ
------------------------------------------------------------------------------------*/
header {
	/* top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height:120px;
	background:rgba(255, 255, 255, .6); */
	transition: .3s;
	text-align:center;
  /*	font-family: 'Roboto', sans-serif;*/
 font-family: 'Josefin Sans', sans-serif;
	color:#7F7F7F;
}

header a{
	/*color:#7F7F7F;*/
	color:#fff;
}

header h1{
	margin-top:/*20*/15px;
	 font-size:25px;
	 font-weight:normal;
	 letter-spacing:3px;
}
	
header h1 img{
/*	max-height:20px;*/
/*max-height:55px;*/
height:50px;
}


header h1.dcsc img{
	/*height:23px;*/
	height:/*90px*/50px;
}




header #p-navi{
	font-size:12px;
	letter-spacing:2px;
	margin-top:/*15*/20px;
}

header #p-navi > ul{
	display:inline-block;
	vertical-align:middle;
}

header #p-navi li{
	display:inline-block;
	margin:0 8px;
	color:#fff;
}

header #p-navi li a:hover {
	text-decoration:none;
}  

header #p-navi li a::after {
  border-bottom: solid 1px /*#000*/#CCC;
  bottom: 0;
  content: "";
  display: block;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
header #p-navi li a:hover::after {
  width: 100%;
}

header .sns{
	position:absolute;
	right:/*3*/3%;
	top:/*23px*//*15*/20px;
	max-width:/*30*/150px;

}

header .sns img{
	max-height:20px;
	opacity: 0.8;
	margin:0 3px;
		display:inline-block;

}

header .sns img.line{
	max-width:35px !important;
	vertical-align:top;
	padding-top:5px;
}


#header {
    background: rgb(0,0,0);
    /* background: rgba(255, 255, 255, .8); */
    /* box-shadow: 0 4px 8px -3px rgba(17, 17, 17, .06); */
    height: /*85px*//*110px*/110px;
    position: fixed;
    top: 0;
    transition: .3s cubic-bezier(.4, 0, .2, 1);
    width: 100%;
    z-index: 11;
}


#sub header#header{
/*	height:85px !important;*/
height:/*150px*/110px;
}


.head-animation {
  transform: translateY(-100%);
}
/*
ドロップダウンメニュー
------------------------------------------------------------------------------------*/

.dropmenu{
  *zoom: 1;
  list-style-type: none;
 /*  width: 960px;
  margin: 5px auto 30px;
  padding: 0; */
}
.dropmenu:before, .dropmenu:after{
  content: "";
  display: table;
}
.dropmenu:after{
  clear: both;
}
.dropmenu li{
  position: relative;
 /*  width: 20%;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center; */
}
.dropmenu li a{
  display: block;
  margin: 0;
  /* padding: 15px 0 11px;
  background: #8a9b0f;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  text-decoration: none; */
}
.dropmenu li ul{
  /* list-style: none; */
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
}
.dropmenu li ul li{
  width: 250px;
}
.dropmenu li ul li a{
  padding: 13px 15px;
  /* border-top: 1px solid #7c8c0e; */
  background:/*#f5f5f5*/#000;
  text-align: left;
}
/* .dropmenu li:hover > a{
  background: #6e7c0c;
}
.dropmenu li a:hover{
  background: #616d0b;
}
 */

#left-to-right ul{
  overflow: hidden;
  width: 0;
  transition: .5s;
}
#left-to-right li:hover ul{
  width: /*250px*/170px;
}
#left-to-right li:hover ul li a{
  white-space: nowrap;
}


.dropmenu li ul li a::after {
  border-bottom:none !important;
}

.dropmenu li ul li a:hover {
  background: /*#e7e7e7*/#242424;
}





/*

------------------------------------------------------------------------------------*/
.menu-trigger {
	display:none;
}

.anima .menu-trigger{
	top:14px;
}


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


header h1 img{
	height:/*20*/40px;
}


header h1.dcsc img{
	height:/*20*/35px;
}



#sub header#header{
height:60px;
}





header #p-navi{
	display:none;
}

#header {
  height: /*75*/65px;
 
  position: fixed;
}


header .sns{
	display:none;
}



.menu-trigger {
  display: inline-block;
  width: /*36*/25px;
  height: /*28*/23px;
  vertical-align: middle;
  cursor: pointer;
  position: fixed;
  top: /*25*/20px;
  left: /*25*/15px;
  z-index: 100;
  transform: translateX(0);
  transition: transform .5s;
 }
 .menu-trigger.active {
  transform: translateX(300px);
}
.menu-trigger span {
display: inline-block;
box-sizing: border-box;
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: /*#000*//*#7F7F7F*/#fff;
}
.menu-trigger.active span {
  background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(10px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
  top: 10px;
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

}



/*
スマホナビ
------------------------------------------------------------------------------------*/
nav {
  width: 300px;
  height: 100%;
  padding-top: 20px;
  padding-bottom:80px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 111;
  transform: translate(-300px);
  transition: all .5s;
	text-align: left;
	font-size: 13px;
	background: /*#252525*/#fff;
}
nav.open {
  transform: translateZ(0);
}

nav li {
	font-size:/*20*/16px;
	letter-spacing:0.1em;
  color:/* #fff*/#7F7F7F;
  padding: 10px 0;
  font-family: 'Josefin Sans', sans-serif;
}

nav ul {
	width:90%;
	height: 100%;
	display: block;
	overflow: auto;
	margin:auto;
	color:/*#fff*/#7F7F7F;
}

nav p{
	font-size:16px;
	font-weight:bold;
	margin-bottom:15px;
	padding-top: 20px;
	margin-top:/*30px*/0px;
}

nav p img{
	width:/*80%*//*60*//*40%*/auto;
	max-height:45px;

}



nav li a{
	color:/*#fff*/#7F7F7F;
	display:block;
	padding:/*12px 0*/10px 0px;
}

nav li a:hover{
	background:rgba(255, 255, 255, .3);
}


nav li#logo_all img{
	/*height:42px;*/
	height:30px;

}


/*
nav li.sns a{
	display:inline-block;
	width:25%;
}

nav li.sns img{
	max-height:15px;
	display:inline-block !important;
}


nav li.sns .sns_icon{
	width:25%;
	max-height:15px;
	display:inline-block !important;

}*/


nav li.sns a{
	display:inline-block;
}

nav li.sns img{
	max-height:20px;
}

nav li.sns .sns_icon {
    margin: 0 15px;
    max-height: 150px;
    display: inline-block !important;
}


/*
スマホ　アコーディオン
------------------------------------------------------------------------------------*/
.panel-head {
   position: relative;
   padding:12px 0;
}

.panel-head:hover {
	background:rgba(255, 255, 255, .3);
}



/*下矢印↓*/
.panel-head:after {
   content: "";
   position: absolute;
   border-right: 2px solid #fff;
   border-bottom: 2px solid #fff;
   width: 13px;
   top:12px;
   right: 15px;
   height: 13px;
   transform: rotate(45deg);
}

/*上矢印↑*/
.panel-head.ac:after {
   content: "";
   position: absolute;
   border-left: 2px solid #fff;
   border-top: 2px solid #fff;
   border-right: 0;
   border-bottom: 0;
   width: 13px;
   top:20px;
   right: 13px;
   height: 13px;
   transform: rotate(45deg);
}

.qa-answer{
    display:none;
	margin-top:15px;
}






/*
フッター
------------------------------------------------------------------------------------*/
footer{
	padding:/*50px*//*80*/20px 0 0px 0;
	margin-top:50px;
	background-color:#809896;
	color:#fff;
}


/*
footer a{
	color:#fff;
}
*/

footer a{
color:rgba(255, 255, 255, .5);
}


footer p{
  	font-family: 'Roboto', sans-serif;
	font-size:20px;
	font-weight:bold;
	letter-spacing:3px;
	/*max-width:200px;*/
	margin:auto;
}


footer p#footer_logo img{
	/*height:35px;*/
	max-width:100px;
}



footer p a{
	/*color:rgba(255, 255, 255, .5);*/
	color:#fff;
	margin-top:20px;
}

footer li{
	display:inline-block;
/*	margin:30px 10px;*/
margin:15px 10px 10px 10px;
	font-family: 'Josefin Sans', sans-serif;
}

footer li img{
	max-width:23px;
}

footer li.line img{
	max-width:40px !important;
	padding:5px;
}

footer ol{
	/*margin-bottom:10px;*/
}

footer span{
	font-size:11px;
	padding-bottom:30px;
	font-weight:100;
		  line-height:2.5;
		   font-family: 'Josefin Sans', sans-serif;
   	color:rgba(255, 255, 255, 1);

}

footer #jewel_footer{
	width:100%;
	
/*	background-color:#ccc;*/
background-color:#809896;
	margin-bottom:0px;
	padding:20px 0;
	margin-top:/*30px*/0px;
}
footer #jewel_footer img{
	width:100px;
	opacity: 0.8;
}



@media only screen and (max-width: 1050px) {  
footer #jewel_footer{
	padding-bottom:100px;
}
footer{
	padding-bottom: 50px;
}

}


