@charset "UTF-8";
html {
	height: 100%;
	overflow-y: scroll;
}
body {
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}
blockquote,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
ul {
	margin: 0;
	padding: 0;
}
fieldset {
	display: inline;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
}
body table {
	line-height: 1.5;
}
q:after,
q:before {
	content: "";
}
embed,
object {
	vertical-align: top;
}
hr,
legend {
	display: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
}
abbr,
acronym,
fieldset,
img {
	border: 0;
	margin: 0;
	padding: 0;
}
li {
	list-style-type: none;
}
@font-face {
	font-family: "Noto Sans CJK JP";
	font-style: normal;
	font-weight: 400;
	src: url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.woff2)
			format("woff2"),
		url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.woff) format("woff"),
		url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.ttf) format("opentype");
}
@font-face {
	font-family: "Noto Sans CJK JP";
	font-style: normal;
	font-weight: 700;
	src: url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.woff2) format("woff2"),
		url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.woff) format("woff"),
		url(/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.ttf) format("opentype");
}
.pc_style {
	display: block;
}
.sp_style,
.sp_style_320,
.sp_style_375,
.sp_style_414,
.sp_style_480 {
	display: none;
}
@media screen and (max-width: 768px) {
	.sp_style {
		display: block;
	}
	.pc_style {
		display: none;
	}
}
@media screen and (max-width: 480px) {
	.sp_style_480 {
		display: block;
	}
}
@media screen and (max-width: 414px) {
	.sp_style_414 {
		display: block;
	}
}
@media screen and (max-width: 375px) {
	.sp_style_375 {
		display: block;
	}
}
@media screen and (max-width: 375px) {
	.sp_style_320 {
		display: block;
	}
}
html {
	font-size: 62.5%;
}
body {
	color: #1a1a1a;
	font-family: "Noto Sans CJK JP", "ヒラギノ角ゴ W3", "メイリオ", Meiryo,
		"ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
	font-size: 1.6rem;
	line-height: 1.7;
	margin: 0;
	padding: 0;
	text-align: left;
	vertical-align: middle;
	-webkit-text-size-adjust: 100%;
}
body * {
	box-sizing: border-box;
}
body :after,
body :before {
	box-sizing: border-box;
	display: inline-block;
}
body img {
	max-width: 100%;
}
#wrap {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	body {
		font-size: 1.4rem;
	}
}
a {
	color: #1a1a1a;
	text-decoration: none;
}
a::after,
a::before {
	color: #1a1a1a;
}
.opacity {
	-webkit-transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.opacity:hover {
	opacity: 0.7;
}
.underline {
	text-decoration: underline;
}
.underline:hover {
	text-decoration: none;
}
.n_num {
	pointer-events: none;
}
@media screen and (max-width: 768px) {
	.n_num {
		pointer-events: visible;
	}
}
.inner {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width: 1200px) {
	.inner {
		padding: 0 20px;
	}
}
.a_fadeup,
.a_slideup {
	opacity: 0;
}
.js-inview_block.ovf {
	overflow: hidden;
}
.js-inview_show.a_fadeup {
	-webkit-animation: 0.3s 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) fadeUp
		forwards;
	animation: 0.3s 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) fadeUp forwards;
}
.js-inview_show.a_fadeup.latest {
	-webkit-animation: 0.5s 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) fadeUp
		forwards;
	animation: 0.5s 0.1s cubic-bezier(0.39, 0.575, 0.565, 1) fadeUp forwards;
}
.js-inview_show.a_slideup {
	-webkit-animation: 1s slideUp forwards;
	animation: 1s slideUp forwards;
}
.a_slide_left {
	position: relative;
	overflow: hidden;
}
.a_slide_left:hover::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(24, 134, 204, 0.3);
	-webkit-animation: 0.4s slideLeft forwards;
	animation: 0.4s slideLeft forwards;
}
@-webkit-keyframes fadeUp {
	0% {
		-webkit-transform: translateY(5%);
		transform: translateY(5%);
		opacity: 0;
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes fadeUp {
	0% {
		-webkit-transform: translateY(5%);
		transform: translateY(5%);
		opacity: 0;
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-webkit-keyframes slideUp {
	0% {
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
		opacity: 0;
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes slideUp {
	0% {
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
		opacity: 0;
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-webkit-keyframes slideLeft {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}
	100% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}
@keyframes slideLeft {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}
	100% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}
header {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 9999;
	width: calc(100% - 100px);
	height: 140px;
	-webkit-transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}
header * {
	-webkit-transition: 50ms cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 50ms cubic-bezier(0.39, 0.575, 0.565, 1);
}
header .header_inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
header .logo a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	color: #fff;
}
header .logo a .text {
	display: inline-block;
	margin-left: 15px;
}
header nav {
	width: 100%;
	max-width: 740px;
}
header nav #gNav {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
header nav #gNav li {
	width: 100%;
	max-width: 150px;
	text-align: center;
	background: #fff;
	-webkit-transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
header nav #gNav li a {
	display: inline-block;
	width: 100%;
	height: 100%;
	padding: 21px 0;
}
header nav #gNav li span {
	display: block;
}
header nav #gNav li .eng {
	font-family: Roboto;
	font-weight: 700;
}
header nav #gNav li .ja {
	font-size: 1.2rem;
	color: #8c8c8c;
	-webkit-transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
header nav #gNav li.contact {
	background: #1886cc;
	max-width: 140px;
}
header nav #gNav li.contact a {
	padding: 37px 0;
	color: #fff;
}
header nav #gNav li.contact a .ja {
	color: #fff;
}
header nav #gNav li:hover {
	background: #1886cc;
	color: #fff;
}
header nav #gNav li:hover a {
	color: #fff;
}
header nav #gNav li:hover .ja {
	color: #fff;
}
header nav #gNav li:hover.contact {
	background: #fff;
}
header nav #gNav li:hover.contact a {
	color: #1886cc;
}
header nav #gNav li:hover.contact a .ja {
	color: #1886cc;
}
@media screen and (max-width: 1200px) and (min-width: 769px) {
	header {
		width: calc(100% - 50px);
	}
	header .logo img {
		width: 140px;
	}
	header nav {
		max-width: 570px;
	}
	header nav #gNav li {
		max-width: 110px;
	}
	header nav #gNav li a {
		padding: 15px 0;
	}
	header nav #gNav li.contact {
		max-width: 110px;
	}
	header nav #gNav li.contact a {
		padding: 30px 0;
		color: #fff;
	}
	header nav #gNav li.contact a .ja {
		color: #fff;
	}
}
@media screen and (max-width: 768px) {
	header {
		position: fixed;
		width: 100%;
		padding-left: 10px;
		height: 50px;
		background: 0 0;
	}
	header .header_inner {
		height: 100%;
	}
	header .logo a img {
		width: 90px;
	}
	header .logo a .text {
		font-size: 1.2rem;
		margin-left: 5px;
	}
	header nav {
		position: absolute;
		top: 50px;
		left: 50%;
		-webkit-transform: translate(-50%, -150%);
		transform: translate(-50%, -150%);
		z-index: -9999;
		max-width: inherit;
	}
	header nav #gNav {
		display: block;
	}
	header nav #gNav li {
		width: 100%;
		max-width: inherit;
	}
	header nav #gNav li a {
		padding: 15px 0;
	}
	header nav #gNav li span {
		display: inline-block;
		margin-left: 10px;
	}
	header nav #gNav li.contact {
		max-width: inherit;
	}
	header nav #gNav li.contact a {
		padding: 15px 0;
	}
	header #menuBtn {
		width: 50px;
		height: 50px;
		display: -webkit-box;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
		-webkit-box-pack: justify;
		justify-content: space-between;
		overflow: hidden;
		cursor: pointer;
		background: #1886cc;
		padding: 16px 11px;
	}
	header #menuBtn span {
		display: block;
		width: 100%;
		height: 2px;
		background: #fff;
		-webkit-transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1);
		transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1);
		cursor: pointer;
	}
	header #menuBtn span:nth-of-type(1) {
		-webkit-transform: matrix(1, 0, 0, 1, 0, 0);
		transform: matrix(1, 0, 0, 1, 0, 0);
	}
	header #menuBtn span:nth-of-type(2) {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	header #menuBtn span:nth-of-type(3) {
		-webkit-transform: matrix(1, 0, 0, 1, 0, 0);
		transform: matrix(1, 0, 0, 1, 0, 0);
	}
	.js-scroll_start_sp header {
		background: #fff;
	}
	.js-scroll_start_sp header .logo a {
		color: #1a1a1a;
	}
	.js-nav_open header #menuBtn span:nth-of-type(1) {
		-webkit-transform: matrix(0.8, -0.8, 0.8, 0.8, 0, 7);
		transform: matrix(0.8, -0.8, 0.8, 0.8, 0, 7);
	}
	.js-nav_open header #menuBtn span:nth-of-type(2) {
		-webkit-transform: translateX(150%);
		transform: translateX(150%);
		opacity: 0;
	}
	.js-nav_open header #menuBtn span:nth-of-type(3) {
		-webkit-transform: matrix(0.8, 0.8, -0.8, 0.8, 0, -9);
		transform: matrix(0.8, 0.8, -0.8, 0.8, 0, -9);
	}
	.js-nav_open header nav {
		opacity: 1;
		-webkit-animation: nav_ani 0.7s cubic-bezier(0.19, 1, 0.22, 1) forwards;
		animation: nav_ani 0.7s cubic-bezier(0.19, 1, 0.22, 1) forwards;
	}
}
@-webkit-keyframes nav_ani {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -4%);
		transform: translate(-50%, -4%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
		z-index: 0;
	}
}
@keyframes nav_ani {
	0% {
		opacity: 0;
		-webkit-transform: translate(-50%, -4%);
		transform: translate(-50%, -4%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
		z-index: 0;
	}
}
#contentsBlock {
	padding: 65px 0 100px;
}
.gra_blue01 {
	background: #24c2e5;
	background: -webkit-gradient(
		linear,
		left top,
		right top,
		from(#24c1e5),
		color-stop(35%, #2884d4),
		color-stop(65%, #2884d4),
		to(#24c2e5)
	);
	background: linear-gradient(
		to right,
		#24c1e5 0,
		#2884d4 35%,
		#2884d4 65%,
		#24c2e5 100%
	);
}
#mvArea {
	width: 100%;
	height: 460px;
	position: relative;
	background: no-repeat left center/cover;
}
#mvArea .ttl {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
#contactCotentArea {
	padding: 95px 0 15px;
}
#contactContent {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
	padding: 40px;
}
#contactContent .mail_box,
#contactContent .tel_box {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	width: 50%;
	height: 220px;
	color: #fff;
	padding: 0 40px;
	text-align: center;
}
#contactContent .mail_box dl,
#contactContent .tel_box dl {
	width: 100%;
}
#contactContent .mail_box dt,
#contactContent .tel_box dt {
	font-size: 2rem;
}
#contactContent .tel_box {
	border-right: 1px solid #fff;
}
#contactContent .tel_box dd {
	font-family: Roboto;
	font-weight: 700;
	font-size: 4rem;
	margin-top: 10px;
}
#contactContent .tel_box dd .num {
	color: #fff;
}
#contactContent .tel_box dd img {
	position: relative;
	top: 13px;
	left: -5px;
}
#contactContent .mail_box dd {
	margin-top: 25px;
}
#contactContent .mail_box .btn {
	position: relative;
	max-width: inherit;
	font-size: 1.8rem;
	-webkit-transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition: 0.25s cubic-bezier(0.39, 0.575, 0.565, 1);
}
#contactContent .mail_box .btn::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 20px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 30px;
	height: 18px;
	background: url(/img/ico_mail_pc.jpg) no-repeat center center/cover;
}
#contentsBlock #contactContent .mail_box .btn {
	max-width: 360px;
}
@media screen and (max-width: 1200px) {
	#contactContent {
		display: block;
		width: 100%;
		padding: 0 40px;
		margin-top: 30px;
	}
	#contactContent .mail_box,
	#contactContent .tel_box {
		display: block;
		width: 100%;
		height: auto;
		padding: 40px 0;
	}
	#contactContent .tel_box {
		border-right: none;
		border-bottom: 1px solid #fff;
	}
}
@media screen and (max-width: 768px) {
	#contactCotentArea {
		padding: 40px 0 0;
	}
	#contentsBlock {
		padding: 40px 0 70px;
	}
	#mvArea {
		height: 260px;
	}
	#mvArea .ttl {
		top: calc(50% - 20px);
	}
	#contactContent {
		width: 100%;
		padding: 0 30px;
		margin-top: 20px;
	}
	#contactContent .mail_box,
	#contactContent .tel_box {
		padding: 30px 0;
	}
	#contactContent .mail_box dt,
	#contactContent .tel_box dt {
		font-size: 1.5rem;
	}
	#contactContent .mail_box dd,
	#contactContent .tel_box dd {
		max-width: 275px;
		font-size: 2rem;
		margin: 15px auto 0;
	}
	#contactContent .mail_box a,
	#contactContent .tel_box a {
		line-height: 50px;
	}
	#contactContent .tel_box dd .num {
		position: relative;
		display: block;
		background: #fff;
		color: #1a1a1a;
	}
	#contactContent .tel_box dd img {
		position: absolute;
		top: 50%;
		left: 14px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		width: 17px;
	}
	#contactContent .mail_box .btn {
		font-size: 1.2rem;
	}
	#contactContent .mail_box .btn::before {
		left: 14px;
		width: 23px;
		height: 14px;
		background-image: url(/img/ico_mail_sp.jpg);
	}
}
#articleArea {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
#articleArea .left {
	width: 100%;
	max-width: 840px;
}
#articleArea .left .hd05 {
	margin: -15px 0 25px;
}
#articleArea.detail .date {
	text-align: right;
}
#articleArea.detail .detail_box {
	margin-top: 25px;
	line-height: 2;
}
#articleArea.detail .detail_box p {
	margin-bottom: 1.5em;
}
#articleArea.detail .detail_box .btn_area {
	margin-top: 80px;
}
#articleArea > .right {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}
#articleArea #archiveArea {
	background: #fff;
}
#articleArea #archiveArea .title {
	border-top: 3px solid #1886cc;
	border-bottom: 1px dashed #1886cc;
	font-size: 1.8rem;
	color: #1886cc;
	font-weight: 700;
	padding: 15px 10px;
}
#articleArea #archiveArea #archiveList li {
	border-bottom: 1px solid #ccc;
	text-align: left;
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
#articleArea #archiveArea #archiveList li a {
	position: relative;
	display: block;
	width: 100%;
	line-height: 36px;
	font-weight: 700;
	padding: 10px;
}
#articleArea #archiveArea #archiveList li a::after {
	content: "\e684";
	position: absolute;
	top: calc(50% + 1px);
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	font-family: Pe-icon-7-stroke;
	font-size: 3.5rem;
	color: #1886cc;
}
#articleArea #archiveArea #archiveList li:hover {
	border-bottom: 1px solid #1886cc;
}
@media screen and (max-width: 1200px) {
	#articleArea {
		display: block;
	}
	#articleArea > .right {
		width: 100%;
		max-width: inherit;
		text-align: center;
		margin-top: 50px;
	}
}
@media screen and (max-width: 768px) {
	#articleArea {
		display: block;
	}
	#articleArea .left .hd05 {
		margin-top: 0;
	}
	#articleArea #archiveArea .title {
		width: 100%;
		border-top: 3px solid #1886cc;
		border-bottom: 1px dashed #1886cc;
		font-size: 1.8rem;
		color: #1886cc;
		font-weight: 700;
		padding: 15px 10px;
	}
}
.move_btn {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 10;
	width: 100px;
	height: 200px;
	background: #404040;
	font-weight: 700;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 1.2rem;
	-webkit-transition: 0.5s ease;
	transition: 0.5s ease;
}
.move_btn a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #fff;
}
.move_btn .arrow_line_wrap {
	position: absolute;
	left: 50%;
	bottom: 25px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
_:-ms-input-placeholder,
:root .move_btn .arrow_line_wrap {
	left: 60%;
}

.move_btn .arrow_line_wrap .arrow_line {
	display: block;
	-webkit-animation: 1.8s ease-in-out loopDown infinite;
	animation: 1.8s ease-in-out loopDown infinite;
}
.move_btn .arrow_line_wrap .arrow_line::after,
.move_btn .arrow_line_wrap .arrow_line::before {
	content: "";
	background: #fff;
	width: 1px;
}
.move_btn .arrow_line_wrap .arrow_line::before {
	position: relative;
	height: 40px;
}
.move_btn .arrow_line_wrap .arrow_line::after {
	position: absolute;
	bottom: 0;
	right: 7px;
	height: 6px;
	-webkit-transform: rotate(25deg);
	transform: rotate(25deg);
}
.move_btn .text {
	position: absolute;
	top: 30px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

_:-ms-input-placeholder,
:root .move_btn .text {
	left: 83%;
}

.move_btn.up {
	z-index: -1;
}
.move_btn.up .arrow_line_wrap {
	bottom: auto;
	top: 40px;
}

.move_btn.up .arrow_line_wrap .arrow_line {
	-webkit-animation-name: loopUp;
	animation-name: loopUp;
}
.move_btn.up .arrow_line_wrap .arrow_line::after {
	position: absolute;
	bottom: auto;
	top: 0;
	-webkit-transform: rotate(-25deg);
	transform: rotate(-25deg);
}

_:-ms-input-placeholder,
:root .move_btn.up .arrow_line_wrap .arrow_line::after {
	right: 9px;
}

.move_btn.up .text {
	top: auto;
	bottom: 40px;
}

_:-ms-input-placeholder,
:root .move_btn.up .text {
	left: 70%;
}

.js-scrolldown_active .move_btn.up {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}
.js-pagetop_active .move_btn {
	z-index: 1;
}
.js-pagetop_active .move_btn.down {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

@media screen and (max-width: 768px) {
	.move_btn {
		bottom: 58px;
		width: 50px;
		height: 175px;
	}
	.move_btn .arrow_line_wrap .arrow_line::before {
		position: relative;
		left: 4px;
		height: 40px;
	}
	.move_btn .arrow_line_wrap .arrow_line::after {
		right: 9px;
		-webkit-transform: rotate(30deg);
		transform: rotate(30deg);
	}
	.move_btn .text {
		top: 15px;
	}
	.move_btn.up .arrow_line_wrap {
		top: 30px;
	}
	.move_btn.up .text {
		top: auto;
		bottom: 25px;
	}
	.js-scrolldown_active .move_btn.up {
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
	}
	.js-pagetop_active .move_btn {
		z-index: 1;
	}
	.js-pagetop_active .move_btn.down {
		-webkit-transform: translateY(calc(100% + 58px));
		transform: translateY(calc(100% + 58px));
	}

	_:-ms-input-placeholder,
	:root .move_btn .arrow_line_wrap {
		left: 62%;
	}

	_:-ms-input-placeholder,
	:root .move_btn .arrow_line_wrap .arrow_line::after {
		right: 3px;
	}

	_:-ms-input-placeholder,
	:root .move_btn .text {
		left: 118%;
	}

	_:-ms-input-placeholder,
	:root .move_btn.up .arrow_line_wrap {
		left: 65%;
	}

	_:-ms-input-placeholder,
	:root .move_btn.up .arrow_line_wrap .arrow_line::after {
		right: 5px;
	}

	_:-ms-input-placeholder,
	:root .move_btn.up .text {
		left: 90%;
	}

	_:-ms-input-placeholder,
	:root .js-pagetop_active .move_btn.down {
		transform: translateY(136%);
	}
}

@media screen and (max-width: 768px) and (min-width: 768px) {
	.move_btn .arrow_line_wrap .arrow_line::before {
		left: 3px;
	}
}


@media screen and (max-width: 767px) and (min-width: 500px) {
	.move_btn .arrow_line_wrap .arrow_line::before {
		left: -1px;
	}
}

@-webkit-keyframes loopDown {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	50% {
		-webkit-transform: translateY(25%);
		transform: translateY(25%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes loopDown {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	50% {
		-webkit-transform: translateY(25%);
		transform: translateY(25%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-webkit-keyframes loopUp {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	50% {
		-webkit-transform: translateY(-25%);
		transform: translateY(-25%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes loopUp {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	50% {
		-webkit-transform: translateY(-25%);
		transform: translateY(-25%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
footer {
	background: #1a1a1a;
	color: #fff;
}
footer a {
	color: #fff;
}
footer a:hover {
	text-decoration: underline;
}
footer > .inner {
	padding: 60px 0;
}
footer .f_address_box {
	display: -webkit-box;
	display: flex;
}
footer .f_address_box li {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}
footer .f_address_box li + li {
	margin-left: 15px;
}
footer .f_address_box .name {
	font-size: 1.8rem;
}
footer #fSitemapArea {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: start;
	justify-content: flex-start;
	width: 100%;
	margin-top: 45px;
}
footer #fSitemapArea .f_sitemap_box {
	max-width: 140px;
	width: 100%;
}
footer #fSitemapArea .f_sitemap_box + .f_sitemap_box {
	margin-left: 60px;
}
footer #fSitemapArea .f_sitemap_box > li {
	margin-top: 15px;
}
footer #fSitemapArea .f_sitemap_box > li a {
	white-space: pre;
}
footer #fSitemapArea .f_sitemap_box.adjust01 {
	max-width: inherit;
	width: 100%;
	text-align: right;
}
footer #fSitemapArea .f_sitemap_box.adjust02 {
	max-width: 200px;
	width: 100%;
}
footer #fSitemapArea .f_sitemap_box .item_child {
	margin-top: 10px;
	padding-left: 1em;
}
footer #fSitemapArea .f_sitemap_box .item_child a {
	font-size: 1.4rem;
	display: inline-block;
	margin-right: 18px;
}
footer #copyright {
	background: #1886cc;
	font-family: Roboto;
	font-size: 1.2rem;
	text-align: right;
	padding: 17px 0;
}
@media screen and (max-width: 1200px) {
	footer > .inner {
		padding: 60px 20px;
	}
	footer .f_address_box {
		display: block;
	}
	footer .f_address_box li + li {
		margin-left: 0;
	}
	footer .f_address_box .address {
		margin-top: 13px;
	}
	footer #fSitemapArea .f_sitemap_box {
		width: 50%;
	}
	footer #fSitemapArea .f_sitemap_box + .f_sitemap_box {
		margin-left: 20px;
	}
}
@media screen and (max-width: 768px) {
	footer > .inner {
		padding: 60px 0 0;
	}
	footer .f_address_box {
		padding: 0 20px;
	}
	footer .f_address_box .name {
		font-size: 1.4rem;
	}
	footer .f_address_box .address {
		font-size: 1.2rem;
	}
	footer #fSitemapArea {
		display: block;
	}
	footer #fSitemapArea .f_sitemap_box {
		max-width: inherit;
		width: 100%;
	}
	footer #fSitemapArea .f_sitemap_box > li {
		border-top: 1px solid #333;
		margin-top: 0;
		font-weight: 700;
	}
	footer #fSitemapArea .f_sitemap_box > li a {
		display: inline-block;
		width: 100%;
		line-height: 50px;
		font-size: 1.2rem;
		padding-left: 20px;
	}
	footer #fSitemapArea .f_sitemap_box + .f_sitemap_box {
		margin-left: 0;
	}
	footer #fSitemapArea .f_sitemap_box:nth-of-type(2) {
		min-width: auto;
	}
	footer #fSitemapArea .f_sitemap_box .item_child {
		display: none;
	}
	footer #fSitemapArea .f_sitemap_box.adjust01 {
		text-align: left;
	}
	footer #fSitemapArea .f_sitemap_box.adjust02 {
		max-width: inherit;
	}
	footer #copyright {
		font-size: 1.1rem;
		text-align: center;
		padding: 20px 0;
	}
}
