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

/* 汎用 */

.btn1{
	background-color: var(--color3);
	color: #FFF !important;
	border-radius: 50vw;
	font-weight: 800;
	width: fit-content;
	margin-inline: auto;
	padding: 0.5em 2.5em 0.6em;
	display: block;
	text-decoration: none;
	position: relative;
	min-width: 70vw;
	box-sizing: border-box;
	text-align: center;
}

.btn1[target="_blank"]{
	padding-right: 3.5em;
}

.btn1[target="_blank"]:after{
	position: absolute;	
	content: "";
	width: 1em;
	height: 1em;
	background: url(../img/blank_w.svg) no-repeat center center;
	background-size: contain;
	display: block;
	right: 1.5em;
	top: calc(50% - 0.5em);
}


/* テンプレート */


/* ヘッダ */
header{
	height: 10vw;
	box-sizing: border-box;
	padding: 2vw;
}

header>a{
	text-decoration: none;
}

header h1{
	display: flex;
	align-items: center;
	gap: 2vw;
	font-weight: 500;
	color: var(--color2);
	font-size: 2.2rem;
	line-height: 1;
}

header h1>img{
	width: 30vw;
	height:auto;
}

.header__nav{
	background-color: var(--color2);
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: translateX(100%);
	z-index: 80;
	transition: all 200ms;
}

.navActive .header__nav{
	transform: translateX(0);
}

.header__nav ul{
	list-style-type: none;
	color: #FFF;
	margin: 0;
	padding: 10vw 5vw 0 5vw;
}

.header__nav ul li{
	margin-bottom: 2.5vw;
	font-weight: 500;
	font-size: 2.8rem;
}

.header__nav ul li a{
	color: #FFF;
	text-decoration: none;
	
}


/* ハンバーガーメニュー */
.header__navBtn{
    position: fixed;
    right: 0;
    top: 0;
    width: 10vw;
    height: 10vw;
    box-sizing: border-box;
    padding: 2vw;
	background-color: var(--color2);
	z-index: 90;
}


/*=============================
.btn-trigger
https://125naroom.com/web/2958
=============================*/
.btn-trigger {
    position: relative;
    width: 6vw;
    height: auto;
    aspect-ratio: 50/50;
    cursor: pointer;
  }
  .btn-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.6vw;
    background-color: #FFF;
    border-radius: 0.6vw;
  }
  .btn-trigger, .btn-trigger span {
    display: inline-block;
    transition: all .5s;
    box-sizing: border-box;
  }
  .btn-trigger span:nth-of-type(1) {
    top: 0;
  }
  .btn-trigger span:nth-of-type(2) {
    top: 2.7vw;
  }
  .btn-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  /*=============================
#btn01
=============================*/
.navActive #btn01 span:nth-of-type(1) {
    -webkit-transform: translateY(2.7vw) rotate(-45deg);
    transform: translateY(2.7vw) rotate(-45deg);
  }
.navActive #btn01 span:nth-of-type(2) {
    opacity: 0;
}
.navActive #btn01 span:nth-of-type(3) {
    -webkit-transform: translateY(-2.7vw) rotate(45deg);
    transform: translateY(-2.7vw) rotate(45deg);
}



/* コンテンツ領域コンテナ */
main{
	margin-bottom: 15vw;
}

/* フッター */
footer{
	background-color: var(--color2);
	color: #FFF;
	padding-bottom: 10vw;
}

.footer__inner{
	padding: 2vw;
}

.footer__copy{
	text-align: right;
	margin-top: 5vw;
	font-size: 1.4rem;
}

.floatBottom{
	background-color: #FFF;
	border-top: solid 2px var(--color2);
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	display: grid;
	grid-template-columns: auto 1fr 1fr;
	gap: 1vw;
	padding: 1vw;
	box-sizing: border-box;
	z-index: 100;
	transform: translateY(100%);
	transition: all 200ms;
}
.floatBottom.on{
	transform: translateY(0);
}

.floatBottom p{
	font-weight: 700;
	color:var(--color2);
	line-height: 1.1;
	text-align: center;
}

.floatBottom a{
	display: grid;
	place-content: center;
	border: solid 2px var(--color2);
	border-radius: 1vw;
	text-align: center;
	text-decoration: none;
	color: var(--color2);
	font-weight: 900;
	font-size: 1.8rem;
	line-height: 1;
}

.toTop{
	display: none;
}