@charset "UTF-8";

/*　ハンバーガーボタン　*/
.hamburger {
	display: block;
	position: fixed;
	z-index: 99999;
	right: 5vw;
	top: 20px;
	width: 30px;
	height: 20px;
	cursor: pointer;
	text-align: center;
}

.hamburger span {
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	left: 0;
	background: #015CAB;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

.hamburger.white span {
	background: #fff;
}

.hamburger span:nth-child(1) {
	top: 0;
}

.hamburger span:nth-child(2) {
	top: 10px;
}

.hamburger span:nth-child(3) {
	top: 20px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	top: 10px;
	left: 0;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	top: 10px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}

nav.globalMenuSp {
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	transform: translateX(100%);
	transition: all 0.6s;
	width: 100%;
	height: 100vh;
	background: #FDF7F7;
	overflow: scroll;
	padding-top: 120px;
	padding-bottom: 50px;
    font-family: "Noto Sans JP", sans-serif;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	transform: translateX(0%);
}

nav.globalMenuSp .cont {
	width: 100%;
	padding: 0 5vw;
}

nav.globalMenuSp .main_menu {
    margin-bottom: 9vw;
}

nav.globalMenuSp .main_menu ul li a {
    color: #3B3B3B;
    font-weight: 700;
    display: block;
    padding: 5vw 0;
    border-bottom: 1px solid #EFEFEF;
    background-image: url(../../image/arrow_link.svg);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 6vw;
}

nav.globalMenuSp .main_menu ul li:first-child a {
    border-top: 1px solid #EFEFEF;
}

nav.globalMenuSp .main_menu ul li a .jp {
    font-size: 4vw;
}

nav.globalMenuSp .main_menu ul li a .en {
    font-size: 3vw;
    margin-left: 3vw;
}

nav.globalMenuSp .name {
    font-size: 4vw;
    font-weight: 700;
    margin-bottom: 1vw;
}

nav.globalMenuSp .address {
    font-size: 3vw;
    margin-bottom: 6vw;
}

nav.globalMenuSp .common_contact_button {
    margin-bottom: 3vw;
}

nav.globalMenuSp .common_contact_button a {
    width: 100%;
}

nav.globalMenuSp .common_contact_button a .text {
    background-image: url(../../image/icon_mail_white.svg);
    background-repeat: no-repeat;
    background-position: 0;
    padding-left: 8vw;
    background-size: 5vw;
}

nav.globalMenuSp .tel_box {
    background: #fff;
    border: 1px solid #EFEFEF;
    padding: 4vw;
    text-align: center;
    margin-bottom: 19vw;
}

nav.globalMenuSp .tel_box .title {
    font-size: 4vw;
    margin-bottom: 1vw;
    line-height: 1.3;
}

nav.globalMenuSp .tel_box .tel {
    font-size: 6vw;
    font-weight: 700;
}

nav.globalMenuSp .tel_box .tel a {
    color: #3B3B3B;
}

nav.globalMenuSp .tel_box .tel small {
    font-size: 4vw;
}

nav.globalMenuSp .tel_box .time {
    font-size: 3vw;
    line-height: 1;
}

nav.globalMenuSp .other_link {
    margin-bottom: 4vw;
}

nav.globalMenuSp .other_link ul {
    justify-content: center;
    gap: 8vw;
}

nav.globalMenuSp .other_link ul li a {
    color: #3B3B3B;
    font-size: 3vw;
}

nav.globalMenuSp .copyright {
    text-align: center;
}

nav.globalMenuSp .copyright small {
    font-size: 3vw;
}
