@charset 'UTF-8';
/* #####################################################
 * common.css
 * - Core
 * - Layout
 * - Modules
 * - Pages
 * ################################################## */

/* =====================================================
 * Base
 * ================================================== */

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: sans-serif;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
	max-width:100%;
	height:auto;
	width:auto;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	color: inherit;
	font: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type='button'],
input[type='reset'],
input[type='submit'] {
	cursor: pointer;
	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

input {
	line-height: normal;
}

input[type='checkbox'],
input[type='radio'] {
	box-sizing: border-box;
	padding: 0;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
	height: auto;
}

input[type='search'] {
	box-sizing: content-box;
	-webkit-appearance: textfield;
}

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	border: 1px solid #c0c0c0;
}

legend {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */
*,
*:before,
*:after {
	box-sizing: border-box;
}

/* normalize overwrite */
html {
	position: relative;
	min-height: 100%;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
	font-size: 62.5%;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #fff;
	color: #231815;
	font-size: 1.2rem;
	line-height: 1.75;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

@media only screen and (min-width: 768px) {
	body {
		font-size: 1.5rem;
		line-height: 1.87;
	}
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}


a:hover {
	color: #6ab8f7;
}

a:active,
a:focus {
	color: #2196f3;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ol,
ul,
li,
figure,
figcaption,
small {
	margin: 0;
	font-size: 100%;
	font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.2;
}

img {
	vertical-align: bottom;
}

th {
	font-weight: normal;
	text-align: left;
}
/* =====================================================
 * Layout
 * ================================================== */

/**
 * Header module
 */
.l-header {
	padding: 19px 0;
}

@media only screen and (min-width: 768px) {
	.l-header {
		padding: 24px 0;
	}
}

@media only screen and (min-width: 768px) {
	.l-header .logo {
		width: 264px;
		padding-top: 41px;
	}
}

/**
 * Footer module
 */
.l-footer .copyright {
	margin-top: 29px;
	color: #231815;
	font-size: 1.0rem;
	text-align: center;
}
.l-footer .f_link{
	margin-top: 40px;
	display: flex;
	justify-content: center;
}
.l-footer .f_link a{
	margin: 0 10px;
}

@media only screen and (min-width: 768px) {
	.l-footer .copyright {
		font-size: 1.5rem;
	}
}

/* =====================================================
 * Module
 * ================================================== */
.logo {
	overflow: hidden;
	width: 199px;
	height: 0;
	margin: 0 auto auto 10px;
	padding-top: 31px;
	background: url(../images/logo_01_sp.png) no-repeat 50% 50%;
	background-size: contain;
}

@media only screen and (min-width: 768px) {
	.logo {
		margin: 0 auto auto 0;
		background-image: url(../images/logo_01_pc.png);
	}
}

.section-inner {
	padding: 0 10px;
}

@media only screen and (min-width: 768px) {
	.section-inner {
		width: 728px;
		margin: 0 auto;
		padding: 0;
	}
	a[href^="tel:"] {
		pointer-events: none;
	}
}

/* -----------------------------------------------------
 * form
 * -------------------------------------------------- */
@media only screen and (min-width: 768px) {
	.pc_none{
		display: none;
	}
}
@media only screen and (max-width: 768px) {
	.sp_none{
		display: none;
	}
}
ul,li {
	list-style:none;
	padding: 0;
	margin: 0;
}
input[type="radio"]{
	width:25px;
}
input[type="checkbox"]{
	width:25px;
}
input,textarea,select{
	width:100%;
	box-sizing:border-box;
	padding: 5px;
	border: 1px solid #CCC;
}
@media only screen and (min-width: 768px) {
	input.w_pc{
		width:50%;
	}
}
@media only screen and (min-width: 768px) {
.header_contents {
	margin: 0 auto;
	padding: 0;
	position: relative;
}
.header_contents .tel {
	position: absolute;
	right: 10px;
	top: 0;
	width: 127px;
}
@media only screen and (min-width: 768px) {
	.header_contents {
		width: 728px;
	}
	.header_contents .tel {
		right: 0;
		width: 197px;
	}

