@charset "UTF-8";

/* ==========================================
	drawer.css
	Last Up Date 2019.07.11
 --------------------------------------------
	INDEX
 --------------------------------------------
 
	1.00.00 PC_media screen PC.ver
		1.01.00 #sp_navi
        1.02.00 #sp_navi
		1.03.00 #drawer_bt
		1.04.00 #nav_bg
	2.00.00 TB_media screen TB.ver
		2.01.00 body.open
		2.02.00 #sp_navi
		2.03.00 #drawer_bt
		2.04.00 #nav_bg
	3.00.00 SP_media screen SP.ver
		3.01.00 body.open
		3.02.00 #sp_navi
		3.03.00 #drawer_bt
		3.04.00 #nav_bg

========================================== */

/* ==========================================
1.00.00 PC_media screen PC.ver
========================================== */
@media screen and (min-width:1024px),print{
/* ==========================================
	1.01.00 body.open
========================================== */
/* ==========================================
	1.02.00 #sp_navi
========================================== */
div#sp_navi {
	display: none;
}
/* ==========================================
	1.03.00 #drawer_bt
========================================== */
/* ==========================================
	1.04.00 #nav_bg
========================================== */
}
/* ==========================================
2.00.00 TB_media screen TB.ver
========================================== */
@media screen and (max-width: 1023px) and (min-width:569px) {
/* ==========================================
	2.01.00 body.open
========================================== */
body.open {
    overflow: hidden;
}
body.open div#contents {
    position: relative;
    opacity: 0.1;
    transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
}
/* ==========================================
	2.02.00 #sp_navi
========================================== */
body.open div#sp_navi {
    position: relative;
    z-index: 2;
}
/* ==========================================
	2.03.00 #drawer_bt
========================================== */
p#drawer_bt {
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	z-index: 5;
	box-sizing: border-box;
	cursor: pointer;
	background: rgba(255,255,255,1.0);
    transform-origin: top right;
}
p#drawer_bt:hover {
	transform: scale(1.2);
}
p#drawer_bt::after {
	content: "";
	position: absolute;
	top: calc(50% - 9px);
	left: calc(50% - 10px);
	width: 20px;
	height: 10px;
	border-top: solid 2px #000000;
	border-bottom: solid 2px #000000;
	box-sizing: border-box;
}
p#drawer_bt::before {
	content: "";
	position: absolute;
	bottom: calc(50% - 9px);
	right: calc(50% - 10px);
	width: 20px;
	height: 2px;
	background: #000000;
	box-sizing: border-box;
}
body.open p#drawer_bt::after {
	transform: rotate(45deg);
	transform-origin: 0 0;
	border-bottom: none;
	top: calc(50% - 8px);
	left: calc(50% - 6px);
}
body.open p#drawer_bt::before {
	transform: rotate(-45deg);
	transform-origin: 0 100%;
	bottom: calc(50% - 8px);
	right: calc(50% - 14px);
}
/* ==========================================
	2.04.00 #nav_bg
========================================== */
div#nav_bg {
	display: none;
}
body.open div#nav_bg {
	display: flex;
    flex-flow: column;
    align-items: center;
    position: fixed;
    left: calc(50% - 280px);
    top: 65px;
    width: 560px;
}
body.open div#nav_bg > a:first-child {
	display: block;
    width: 180px;
    margin: 0 0 30px;
}
body.open div#nav_bg > a:first-child:hover {
	transform: scale(1.2);
}
body.open div#nav_bg > a:not(:first-child),
body.open div#nav_bg label {
	display: flex;
    flex-flow: column;
    align-items: center;
    font: 400 1.5rem rockwell, sans-serif;
    letter-spacing: 0.3rem;
    line-height: 1.0;
    color: #000000;
    margin: 30px 0 0;
    cursor: pointer;
    transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
}
body.open div#nav_bg > a:not(:first-child) span,
body.open div#nav_bg label span {
	display: inline-block;
    font: 300 1.2rem a-otf-ud-shin-go-pr6n, sans-serif;
    letter-spacing: 0.1rem;
    line-height: 1.0;
    padding: 5px 0 0;
    color: #000000;
}
body.open div#nav_bg > a:hover,
body.open div#nav_bg > a:hover span,
body.open div#nav_bg > label:hover,
body.open div#nav_bg > label:hover span {
	color: #63bec6;
}
body.open div#nav_bg div {
	display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px 0 0;
}
body.open div#nav_bg div a {
	display: block;
    width: 30px;
    margin: 0 20px;
}
body.open div#nav_bg div a:hover {
	transform: scale(1.2);
}
body.open div#nav_bg > a:last-child {
    width: 250px;
    margin: 30px auto 0;
    padding: 15px 0;
    background: #63bec6;;
    color: #FFFFFF;
    border-radius: 100px;
}
body.open div#nav_bg > a:last-child:hover {
    color: rgba(237,211,0,1.00);
}
}
/* ==========================================
3.00.00 SP_media screen SP.ver
========================================== */
@media screen and (max-width: 568px) {
/* ==========================================
	3.01.00 body.open
========================================== */
body.open {
    overflow: hidden;
}
body.open div#contents {
    position: relative;
    opacity: 0.1;
    transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
}
/* ==========================================
	3.02.00 #sp_navi
========================================== */
body.open div#sp_navi {
    position: relative;
    z-index: 2;
}
/* ==========================================
	3.03.00 #drawer_bt
========================================== */
p#drawer_bt {
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	z-index: 5;
	box-sizing: border-box;
	cursor: pointer;
	background: rgba(255,255,255,1.0);
    transform-origin: top right;
}
p#drawer_bt:hover {
	transform: scale(1.2);
}
p#drawer_bt::after {
	content: "";
	position: absolute;
	top: calc(50% - 9px);
	left: calc(50% - 10px);
	width: 20px;
	height: 10px;
	border-top: solid 2px #000000;
	border-bottom: solid 2px #000000;
	box-sizing: border-box;
}
p#drawer_bt::before {
	content: "";
	position: absolute;
	bottom: calc(50% - 9px);
	right: calc(50% - 10px);
	width: 20px;
	height: 2px;
	background: #000000;
	box-sizing: border-box;
}
body.open p#drawer_bt::after {
	transform: rotate(45deg);
	transform-origin: 0 0;
	border-bottom: none;
	top: calc(50% - 8px);
	left: calc(50% - 6px);
}
body.open p#drawer_bt::before {
	transform: rotate(-45deg);
	transform-origin: 0 100%;
	bottom: calc(50% - 8px);
	right: calc(50% - 14px);
}
/* ==========================================
	3.04.00 #nav_bg
========================================== */
div#nav_bg {
	display: none;
}
body.open div#nav_bg {
	display: flex;
    flex-flow: column;
    align-items: center;
    position: fixed;
    left: calc(50% - 280px);
    top: 55px;
    width: 560px;
}
body.open div#nav_bg > a:first-child {
	display: block;
    width: 160px;
    margin: 0 0 10px;
}
body.open div#nav_bg > a:first-child:hover {
	transform: scale(1.2);
}
body.open div#nav_bg > a:not(:first-child),
body.open div#nav_bg label {
	display: flex;
    flex-flow: column;
    align-items: center;
    font: 400 1.5rem rockwell, sans-serif;
    letter-spacing: 0.3rem;
    line-height: 1.0;
    color: #000000;
    margin: 30px 0 0;
    cursor: pointer;
    transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
}
body.open div#nav_bg > a:not(:first-child) span,
body.open div#nav_bg label span {
	display: inline-block;
    font: 300 1.2rem a-otf-ud-shin-go-pr6n, sans-serif;
    letter-spacing: 0.1rem;
    line-height: 1.0;
    padding: 5px 0 0;
    color: #000000;
}
body.open div#nav_bg > a:hover,
body.open div#nav_bg > a:hover span,
body.open div#nav_bg > label:hover,
body.open div#nav_bg > label:hover span {
	color: #63bec6;
}
body.open div#nav_bg div {
	display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px 0 0;
}
body.open div#nav_bg div a {
	display: block;
    width: 40px;
    margin: 0 10px;
}
body.open div#nav_bg div a:hover {
	transform: scale(1.2);
}
body.open div#nav_bg > a:last-child {
    width: 250px;
    margin: 30px auto 0;
    padding: 15px 0;
    background: #63bec6;;
    color: #FFFFFF;
    border-radius: 100px;
}
body.open div#nav_bg > a:last-child:hover {
    color: rgba(237,211,0,1.00);
}
}