@charset "UTF-8";
/* CSS Document */
/*=======================================================================
Reset
=======================================================================*/
html, body, div, span, applet, object, iframe, p, blockquote, pre,a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	font-style: inherit;
	font-weight: inherit;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
}
*:focus {
  outline: none;
}
strong {
	font-weight: bold;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	border:none;
	}
caption, th, td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	padding: 0;
	}
ul,ol,dl, li {
	list-style:none;
	display:list-item;
    margin: 0;
	}
p,li,dt,dd,th,td,pre{
	-ms-line-break: strict;
	line-break: strict;
	-ms-word-break: break-strict;
	word-break: break-strict
	}
:focus:not(:focus-visible) {
  outline: none;
}
.clearfix::before, .clearfix::after { display: table; content: ''; }
.clearfix::after { clear: both; }


/* ==================================================
common
================================================== */
html {
  -webkit-text-size-adjust: 100%; 
}
body {
	-webkit-font-smoothing: antialiased; 
	-moz-osx-font-smoothing: grayscale;
	background-color: #fff;
	color:#000;
	font-family: "Noto Serif", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

/*　font
---------------------------------------------------*/
.bold {
  font-weight: 700;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	letter-spacing: 0.075em;
}
h1 { font-size: 2rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.25rem; }
h4 { font-size: 1.15rem; }
h5 { font-size: 1rem; }

/*　link
---------------------------------------------------*/
a { 
	text-decoration: none; 
	opacity: 1.0; 
	transition: .3s;
}
a:link {	color: #666; text-decoration: underline; }
a:visited {	color: #666; }
a:hover {	color: #ccc; text-decoration: underline; }
a:active {	color: #666; }

button:focus,
a:focus,
input:focus {
  outline: none;
}
button:focus-visible,
a:focus-visible,
input:focus-visible {
	outline: 0.125rem solid #92814D; /* 2px */
	outline-offset: 0.125rem;       /* 2px */
}

/*　img
--------------------------------------------------*/
img {
    display: block;
	pointer-events: none; 
    width: 100%;
    margin: 0 auto;
	-webkit-user-drag: none;
	user-drag: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
}

/*　responsive
--------------------------------------------------*/
html { 
	font-size: 75%; /* 基準を12px相当に設定 (16px * 0.75) */
}
.pc_only { 
	display:none;
}
.common-w {
    margin: 0 auto;
    width: 90%;
	border: 0px solid #c00;
}

@media screen and (min-width: 48rem) { /* 768px相当 (768 / 16) */
    html { 
		font-size: 81.25%; /* 基準を13px相当に設定 (16px * 0.8125) */
	}
    .sp_only { 
		display:none;
	}
    .pc_only { 
		display:block;
	}
	.common-w {
		width: 92%;
		max-width: 1000px; /* 1400px相当 (1400 / 16) */
	}
}