@charset "UTF-8";

body{
	max-width: 1200px;
	margin: 0 auto;
	font-family: georgia,serif;
}
h3{
    font-size: 1.6em;
    color: #4A4A4A;
    letter-spacing: 0.01em;
    font-weight: 400;
    text-align: center;
    margin-top: 50px;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
}

*,
*: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);
}
.sidebar-nav li:nth-child(4) {
  pointer-events: none;
}

img{
    max-width: 100%;
    height: auto;
    font-size: 1.1em;
	text-align: justify;
}

/* __ Header __ */

header{
	padding: 1em;
	display: flex;
	flex-direction: column;
	background-color: #FFFFFF;
	align-items: center;
	font-family: 'Marck Script', cursive;
	font-size: 24px;
	}
.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 __ */

.container p:not(:last-child){
	margin-bottom: 1.5em;
}
.main{
	color: #FFFFFF;
}
.sidebar{
	background-color: #414040;
}
.sticky{
	position: sticky;
	top: 0;
}
.sidebar-nav li{
	margin-right: 1em;
	display: inline-block; /* 必要なのはこれだけです */
	border-bottom: 1px solid #6E6E6E;
	list-style: none;
	line-height: 3.7em;
	font-size: 1em;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.sidebar-nav a{
	padding: 8px;
	font-weight: 200;
	letter-spacing: 0.1;
	color: #FFFFFF;
}

/*__ Tiles __*/

.tiles {
	margin-right: 1.5em;
    column-gap: 0em;
    row-gap: 2em;
	
}
.tiles li {
	padding: 15px;
	list-style: none;
	font-size: 0.85em;
	text-align: center;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"
}
.tiles p {
  margin-top: 1.5em;
  line-height: 0.05em;
  font-size: 0.9em;
  color: #505050;
　font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"
}
.tiles img{
	margin-bottom: 0.5em
}

/* __ Footer __ */

footer{
	padding-top: 30px;
	padding-bottom: 52px;
	text-align: center;
	background-color: #171717;
}

/* __ 先頭に戻るのhtml用 __ */
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;
		order: ;
		background-color: #FFFFFF;
	}

	/*__ Tiles __*/

	.tiles{
		display: flex;
		flex-wrap: wrap;
		list-style: none;
		padding-right: 30px
	}
	.tiles li{
        margin: 5px;
        width: calc( 33.33% - 10px);
        list-style: none;
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
	}
