@charset "UTF-8";

body{
	max-width: 1200px;
	margin: 0 auto;
	font-family: georgia,serif;
}
a{
 color: #353535;
 }

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.gnav a, a:link{
	color: #555555;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}
.gnav a:hover{
	background-color: lightblue;
}
.gnav li:nth-child(----) {
	pointer-events: none;
}

.sidebar-nav a {
	display: inline-block;
	transition: all .3s ease 0s;
	text-decoration: none;
}
.sidebar-nav a:hover {
	cursor: pointer;
	transform: scale(1.2);
	text-decoration: none;
}
.sidebar-nav li:nth-child(1) {
  pointer-events: none;
  text-decoration: none;
}
img{
    max-width: 90%;
	margin: auto;
    height: auto;
    font-size: 1.1em;
}

/* __ Header __ */

header{
	padding: 1em;
	display: flex;
	flex-direction: column;
	background-color: #FFFFFF;
	align-items: center;
	font-family: 'Marck Script', cursive;
	font-size: 24px;
	}
header img{
	margin: 0;
	padding: 0;
}
.gnav{
	display: flex;
	flex-wrap: wrap;
	margin-left: auto;
	list-style: none;
}
.gnav a{
	display: inline-block;
	flex-wrap: wrap;
	margin-left: 3px;
	padding: 10px;
	text-align: center;
}

/* __ Contents __ */

.main{
	background: #2A2A2A;
	text-align: center;
	letter-spacing: 0.05em;
}
.main2{
    text-align: center;
    margin-top: 1.5em;
	margin-bottom: 30px;
    font-family:  YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: 1.5em;
    line-height: 2em;
    color: #BEBEBE;
}
.main p{
    margin-top: -0.1em;
    margin-bottom: 200px;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: 0.85em;
    line-height: 3em;
    color: #C6C6C6;
}
.sidebar{
	background-color: #fff;
	line-height: 21px;
	margin-right: 20px
}
.sticky{
	position: sticky;
	top: 0;
}
.sidebar-nav li{
    margin-bottom: 0.4em;
    padding-bottom: 0.55em;
    border-bottom: 1px solid #c4c4c4;
    list-style: none;
	line-height: 0.8em;
}
.sidebar-nav a{
    font-size: 0.9em;
    padding: 8px;
    letter-spacing: 0.05em;
    border-radius: 6px;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
}

/* __ Footer __ */

footer{
	padding-top: 30px;
	padding-bottom: 52px;
	text-align: center;
	background-color: #171717;
}
html {
    scroll-behavior: smooth;
	scroll-padding-top: 80px;
}
.pagetop {
    height: 40px;
    width: 40px;
    position: fixed;
    right: 42px;
    bottom: 78px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
}



/* Media queries
-------------------------------------------------------*/

@media screen and (min-width : 768px) { /* デスクトップ用CSS */

	/* __ Header __ */

	header{
		flex-direction: row;
	}
	.gnav a{
		padding: 8px 20px;
		display: block;
		font-size: 24px;
		border-radius: 4px;
	}

	/* __ Contents __ */

	.container{
		display: flex;
	}
	.sidebar{
		width: 290px;
	}
	.main{
		flex: 1;
	}
