@charset "UTF-8";


/*! reset ============================================== */

html, body, iframe,
h1, h2, h3, h4, h5, h6, h7, h8, h9,
p, b, a, i, span, em, small, strong, sub, sup, time,
mark, del, dfn, ins, abbr, blockquote, q, cite,
var, code, kbd, kbd, samp, pre,
ul, ol, li, dl, dt, dd,
table, caption, thead, tbody, tfoot, tr, th, td,
img, audio, video {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	background-color: transparent;
	vertical-align: baseline;
	}

header, footer, main, aside, nav, menu, section, article, div,
hgroup, figure, figcaption, address, time, canvas, object, details, summary,
.content, .wrapper, .wrap, .inner {
	display: block;
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	font-style: normal;
	background-color: transparent;
	vertical-align: baseline;
	}

body {
	line-height: 1;
	}

* {
  box-sizing: border-box;
  background-repeat: no-repeat;
	}

*::before,
*::after {
	box-sizing: border-box;
	text-decoration: inherit;
	vertical-align: inherit;
	}


/*! base ============================================== */

html, body {
	background-color: #f2f7fa;
	}

html {
	/* safari animation anti-aliasing */
	-webkit-font-smoothing: antialiased;
	}

body {
	/* safari animation anti-aliasing（Default） */
	-webkit-font-smoothing: subpixel-antialiased;
	}

/* fadein-body */
body {
	animation: fadein 2s ease 0s 1 normal;
	}

@keyframes fadein {
	0% {opacity: 0}
	100% {opacity: 1}
	}


/*! font（face） ============================================== */

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP Regular"),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
	font-display: swap;
	}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: local("Noto Sans CJK JP Bold"),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.otf) format('opentype');
	font-display: swap;
	}

body {
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans JP", Verdana, Meiryo, sans-serif;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
	word-wrap: break-word;
	font-size: 12px;
	color: #4d4d4d;
	}


/*! font（txt） ============================================== */

h1, h2, h3, h4, h5, h6, h7, h8, h9 {
	line-height: 1.5;
	/* kerning */
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
	}

p {
	line-height: 1.8;
/*
	text-align: justify;
	text-justify: inter-ideograph;
*/
	}

p + p {
	margin-top: 25px;
	}

/* txtover */
*::selection {
	background: #808080;
	color: #ffffff;
	}

*::-moz-selection {
	background: #808080;
	color: #ffffff;
	}


/*! link ============================================== */

a,
a:visited {
	background-color: transparent;
	text-decoration: none;
	color: #e59100;
	transition: 0.4s;
	}

a:hover {
	text-decoration: none;
	color: #804426;
	}

/* decoration line（main） */
main a.line {
	padding: 0 1px 1px 2px ;
	border-bottom: 1px dotted #e2c0ab ;
	text-decoration: none;
	}

main a.line:hover {
	border-bottom: 1px dotted #b38c74 ;
	text-decoration: none;
	}

/* img */
a img {
	border: none;
	transition: 0.4s;
	}

a:hover img {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	}

a, a:active, a:hover,
a img {
	outline: none;
	}


/*! hr ============================================== */

hr {
	display: block;
	height: 1px;
	margin: 25px 0;
	padding :0;
	border: none;  
	border-top: 1px solid #cccccc;
}

hr.dot {
	display: block;
	height: 1px;
	margin: 25px 0;
	padding :0;
	border: none;  
	border-top: 1px dotted #cccccc;
}


/*! img ============================================== */

img	{
	width: auto;
	max-width: 100%;
	height: auto;

	/* space */
	vertical-align: top;
	font-size: 0;
	line-height: 0;
	}


/*! list ============================================== */

ul, ol {
	list-style: none;
	}

main ul,
main ol {
	margin-top: 15px;
	}

li, dt, dd {
	line-height: 1.8;
	}

/*
main li:not(:first-child) {
	margin-top: 12px;
	}
*/

li img {
	vertical-align: top;
	}


/*! table ============================================== */

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

th {
	line-height: 1.6;
	}

td {
	line-height: 1.8;
	}

/* align */
table.left th,
table.left td,
table th.left,
table td.left {
	text-align: left;	
	}

table.right th,
table.right td,
table th.right,
table td.right {
	text-align: right;	
	}

table.center th,
table.center td,
table th.center,
table td.center {
	text-align: center;	
	}


/*! clear ============================================== */

.cut,
header, footer, main, aside, nav, nav ul, menu, section, article,
hgroup, figure, figcaption, address, time, canvas, object, details, summary,
.wrapper, .wrap {
	zoom: 100%;
	}

.cut::after,
header::after, footer::after, main::after, aside::after, nav::after, nav ul::after, menu::after, section::after, article::after,
hgroup::after, figure::after, figcaption::after, address::after, time::after, canvas::after, object::after, details::after, summary::after,
.wrapper::after, .wrap::after {
	content: " ";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
	}

.mb20 {
    margin-bottom: 20px;
}