@charset "UTF-8";
/* 全体 */
body {
	background: red;
}
.container {
	position: relative;
	width: 1000px;
	margin: auto;
}
a {
	text-decoration: none;
	color: inherit;
}

/* ヘッダー */
header {
	position: fixed;
	width: 100%;
	background: red;
	z-index: 99999;
}
header + div {
	padding-top: 77px;
}
#logo {
	width: 32%;
	margin-left: 1%;
	padding-top: 1.5%;
	padding-bottom: 1%;
}

/* メニューボタン */
#btn_menu {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1%;
	margin: auto;
	cursor: pointer;
	color: #fff;
	text-align: center;
	font-size: 1.4rem;
	font-weight: bold;
	width: 60px;
	height: 56px;
}
.menu-trigger,
.menu-trigger span {
	display: block;
	transition: all .3s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 60px;
	height: 42px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 6px;
	background-color: #fff;
	border-radius: 6px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 17px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
	margin-bottom: 2px;
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(17px) rotate(-45deg);
	transform: translateY(17px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-17px) rotate(45deg);
	transform: translateY(-17px) rotate(45deg);
}

/* メインメニュー */
#main_menu {
	display: none;
	position: absolute;
	background: #fff;
	width: 40%;
	top: 122%;
	right: 1%;
	padding: 5px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-shadow:2px 3px 4px 2px rgba(0,0,0,0.7);
	-moz-box-shadow:2px 3px 4px 2px rgba(0,0,0,0.7);
	box-shadow:2px 3px 4px 2px rgba(0,0,0,0.7);
}
#main_menu:after {
	bottom: 100%;
	right: 7%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(136, 183, 213, 0);
	border-bottom-color: #fff;
	border-width: 10px;
	margin-left: -10px;
}

/* メニュー項目 */
#main_menu ul li {
	display: block;
	width: 100%;
	border-bottom: solid 1px #7B7B7B;
	margin-top: 5px;
	font-size: 2.0rem;
}
#main_menu ul li:last-child {
	border-bottom: none;
}

/* フッター */
footer {
	position: relative;
	width: 100%;
	padding: 10px 0 20px;
	background: red;
	text-align: center;
	z-index: 99998;
}
#sns {
	width: 14%;
	margin: auto auto 10px;
	overflow: hidden;
}
#sns li {
	float: left;
	display: block;
	width: 30%;
	margin-right: 5%;
}
#sns li:last-child {
	margin-right: 0;
}
footer p {
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
}
footer a {
	color: #fff;
	text-decoration: underline;
}

/* 上へ戻るボタン */
.pagetop {
	display: none;
	position: relative;
	width: 100%;
	max-width: 1000px;
	height: 0px;
	margin: 0 auto;
}
.pagetop a {
	position: fixed;
	z-index: 9999;
    bottom: 20px;
    left: auto;
    display: block;
    width: 80px;
	margin-left: 1020px;
}

/* ABJマーク */
#abj {
	display: flex;
	width: 96%;
	margin: 2% auto auto;
	padding-bottom: 2%;
	text-align: center;
	flex-wrap: wrap;
	justify-content: space-between;
}
#abj img {
	display: inline-flex;
	width: 20%;
	margin: auto auto 2%;
	align-self: center;
}
#abj p {
	width: 76%;
	margin: auto;
	align-self: center;
	text-align: left;
}

/* PCのみ適用 */
@media only screen and (min-width: 1025px){
	.none_pc {
	display: none;
	}
}
/* タブレット（iPad基準縦横両方）のみ適用 */
@media only screen and (min-width: 768px) and (max-width: 1024px){
	.none_tablet {
	display: none;
	}
	.container {
	width: 100%;
	}
	header + div {
	padding-top: 7.6%;
	}
	.pagetop a {
    width: 80px;
	margin-left: auto;
	right: 2%;
	}
/* メインメニュー */
#btn_menu {
	width: 50px;
	font-size: 1.2rem;
	height: 44px;
}
.menu-trigger {
	width: 50px;
	height: 32px;
}
.menu-trigger span {
	height: 4px;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(2) {
	top: 13px;
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(13px) rotate(-45deg);
	transform: translateY(13px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-13px) rotate(45deg);
	transform: translateY(-13px) rotate(45deg);
}
}
/* スマホ（iphone基準縦横両方）のみ適用 */
@media only screen and (max-width: 767px){
	.none_mobile {
	display: none;
	}
	.container {
	width: 100%;
	}
	header + div {
	padding-top: 13.5%;
	}
	#logo {
	width: 70%;
	margin-left: 1%;
	}
	#nav_btn {
	width: 13%;
	height: 100%;
	top: 0;
	padding: 0 1%;
	border-left: solid 1px #fff;
	}
	#main_menu {
	width: 60%;
	}
	.pagetop a {
    width: 60px;
	margin-left: auto;
	right: 2%;
	}
	#sns {
	width: 40%;
	}
	footer p {
	font-size: 1.2rem;
	}
/* メインメニュー */
#btn_menu {
	width: 40px;
	font-size: 1.2rem;
	height: 36px;
}
.menu-trigger {
	width: 40px;
	height: 22px;
}
.menu-trigger span {
	height: 4px;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(2) {
	top: 8px;
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-45deg);
	transform: translateY(8px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}

/* ABJマーク */
#abj img {
	width: 30%;
}
#abj p {
	width: 96%;
	text-align: center;
}
}