@charset "UTF-8";
@import url("reset.css");
@import url("slick.css");
// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 200 to 900


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

html {
	width: 100%;
	height: 100%;
}
body {
	color: #2f2a20;
	font-family: sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	max-width: 440px;
	width: 100%;
	margin: 0 auto;
	overflow-x: hidden;
	box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.16);
}

a {
	margin: 0;
	padding: 0;
	/*font-size:100%;*/
	vertical-align: baseline;
	background: transparent;
	color: #2f2a20;
	text-decoration: none;
	display: inline-block;
}
img {
	vertical-align: top;
	font-size: 0;
	line-height: 0;
	width: 100%;
}
*{
    margin: 0;
    padding: 0;
}
*,
::before,
::after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	zoom: 1;
}

header {
 	width: 80%;
 	margin: 0 auto;
 	padding: 20px 0;
 }
main {
	padding-bottom: 80px;
}
footer {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 440px; /* ← bodyと同じ幅に合わせる */
  padding: 10px 0;
  z-index: 100;
}
