@charset "UTF-8";
/*--------------------------------------------------------------
# ビューポイントごと表示非表示
-------------------------------------------------------------- */
.off1200,
.off1170,
.off1100,
.off991,
.off850,
.off767,
.off640,
.off480,
.off375,
.off360,
.off320 {
		display: block !important;
}

.on1200,
.on1170,
.on1100,
.on991,
.on850,
.on767,
.on640,
.on480,
.on375,
.on360,
.on320 {
		display: none !important;
}

@media (max-width: 1200px) {
		.off1200 {
				display: none !important;
		}
		.on1200 {
				display: block !important;
		}
}

@media (max-width: 1170px) {
		.off1170 {
				display: none !important;
		}
		.on1170 {
				display: block !important;
		}
}

@media (max-width: 1100px) {
		.off1100 {
				display: none !important;
		}
		.on1100 {
				display: block !important;
		}
}

@media (max-width: 991px) {
		.off991 {
				display: none !important;
		}
		.on991 {
				display: block !important;
		}
}

@media (max-width: 850px) {
		.off850 {
				display: none !important;
		}
		.on850 {
				display: block !important;
		}
}

@media (max-width: 767px) {
		.off767 {
				display: none !important;
		}
		.on767 {
				display: block !important;
		}
}

@media (max-width: 640px) {
		.off640 {
				display: none !important;
		}
		.on640 {
				display: block !important;
		}
}

@media (max-width: 480px) {
		.off480 {
				display: none !important;
		}
		.on480 {
				display: block !important;
		}
}

@media (max-width: 375px) {
		.off375 {
				display: none !important;
		}
		.on375 {
				display: block !important;
		}
}

@media (max-width: 360px) {
		.off360 {
				display: none !important;
		}
		.on360 {
				display: block !important;
		}
}

@media (max-width: 320px) {
		.off320 {
				display: none !important;
		}
		.on320 {
				display: block !important;
		}
}

/*--------------------------------------------------------------
# 設定
--------------------------------------------------------------*/
* {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
}

html {
		overflow-y: scroll;
		line-height: 1.6;
		-webkit-text-size-adjust: 100%;
		font-size: 10px;
		font-size: 62.5%;
}

html.active {
		overflow: hidden;
}

body {
		-webkit-text-size-adjust: 100%;
		-moz-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
		-o-text-size-adjust: 100%;
		text-size-adjust: 100%;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.8;
		font-family: 'M PLUS 1p', sans-serif;
		margin-bottom: 0 !important;
		letter-spacing: 2px;
}

@media (max-width: 480px) {
		body {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 1.6;
		}
}

body {
		-webkit-animation-name: fadein;
		        animation-name: fadein;
		-webkit-animation-duration: 1s;
		        animation-duration: 1s;
		-webkit-animation-iteration-count: 1;
		        animation-iteration-count: 1;
}

@-webkit-keyframes fadein {
		from {
				opacity: 0;
		}
		to {
				opacity: 1;
		}
}

@keyframes fadein {
		from {
				opacity: 0;
		}
		to {
				opacity: 1;
		}
}

@-webkit-keyframes fadeIn {
		from {
				opacity: 0;
		}
		to {
				opacity: 1;
		}
}

h1, h2, h3, h4, h5, h6 {
		font-size: 100%;
		font-weight: 500;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
		font-weight: 100;
}

h1, h2, h3, h4, h5, h6,
p, ul, ol, dl, dt, dd, li,
table, td, th,
address,
blockquote, form, fieldset, legend, div, hr, pre {
		margin: 0;
		padding: 0;
		font-style: normal;
		font-size: 100%;
		list-style: none;
}

figure {
		margin: 0 0 2rem;
}

figure img {
		width: 100%;
		height: auto;
}

img,
object,
embed {
		border: 0;
		vertical-align: top;
		outline: none;
		max-width: 100%;
		height: auto;
}

object:focus {
		outline: none;
}

embed:focus {
		outline: none;
}

input[type="button"],
input[type="text"],
input[type="submit"] {
		-webkit-appearance: none;
}

button {
		background-color: transparent;
		border: 0;
		cursor: pointer;
		outline: none;
		padding: 0;
		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
}

::-webkit-input-placeholder {
		color: #ccc;
}

::-moz-placeholder {
		color: #ccc;
}

:-moz-placeholder {
		color: #ccc;
}

:-ms-input-placeholder {
		color: #ccc;
}

a, button {
		color: #333;
		outline: none;
		text-decoration: none;
		-o-transition: all .3s ease;
		transition: all .3s ease;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
}

@media (hover: hover) {
		a:hover, button:hover {
				color: #333;
				cursor: pointer;
		}
}

@media (hover: none) {
		a:active, button:active {
				color: #333;
				cursor: pointer;
		}
}

a:visited, button:visited {
		color: #333;
}

a:focus, button:focus {
		outline: none;
}

img {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
		vertical-align: top;
}

b, strong {
		font-weight: 800;
}

div,
ul,
section,
article {
		width: auto;
		zoom: 1;
}

aside,
li,
dd,
ul,
section,
article {
		zoom: 1;
}

span.footer-note {
		display: block;
		text-align: right;
		position: relative;
		bottom: -20px;
		font-size: 12px;
}
