@charset "UTF-8";
html,
body,
div,
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,
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,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	/* font-weight: normal; */
}

body {
	line-height: 1;
}

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

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before, blockquote:after {
	content: "";
	content: none;
}

q:before, q:after {
	content: "";
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}

a:link, a:visited, a:active, a:hover {
	outline: none;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

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

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

input,
select {
	vertical-align: middle;
}

ul,
li {
	margin: 0;
	padding: 0;
	list-style: none;
}

button{
	padding: 0;
	background: none;
	outline: none;
	border: none;
	cursor: pointer;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

main {
	display: block;
}

/* * * * * * * * * * * * *
dmm_ntgnavi
* * * * * * * * * * * * */
#dmm_ntgnavi {
	position: relative;
	background: url(../../img/dg/bg_navimain.gif) center center repeat-x;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	font-size: 12px;
	font-family: 'メイリオ', 'Meiryo', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', Verdana, sans-serif;
	display: flex;
	justify-content: space-between;
	z-index: 50;
}

#dmm_ntgnavi a{
	outline: none;
}

#dmm_ntgnavi ul {
	list-style: none;
	margin: 2px 0;
	padding: 0;
	display: flex;
	width: 50%;
}

#dmm_ntgnavi ul li {
	margin: 0 6px 0 0;
	line-height: 15px;
}

#dmm_ntgnavi .navi_left li > a {
	display: block;
	padding: 0 3px 0 8px;
	text-decoration: none;
	border: 1px solid #eee;
	border-radius: 3px;
}

#dmm_ntgnavi .navi_left li > a:hover {
	background: #eee;
	border: 1px solid #666;
	border-radius: 3px;
}

#dmm_ntgnavi .navi_left li > a span {
	display: block;
	padding: 9px 10px 7px 28px;
	color: #333;
	font-weight: bold;
}

#dmm_ntgnavi .navi_left li.dmm_top img {
	margin: 8px 5px 8px 0
}

#dmm_ntgnavi .navi_left li.ntg_top {
	margin-left: 10px;
}

#dmm_ntgnavi .navi_left li.ntg_top span {
	background: url(../../img/dg/bg_bt_olgtop.gif) 0 center no-repeat;
}

#dmm_ntgnavi .navi_left li.ntg_poi span {
	background: url(../../img/dg/bg_bt_point.gif) 0 center no-repeat;
}

#dmm_ntgnavi .navi_right {
	justify-content: flex-end;
	font-size: 10px;
}

#dmm_ntgnavi .navi_right li {
	margin: 0 10px 0 0;
	padding: 8px 5px;
}

#dmm_ntgnavi .navi_right a{
	color: #3c3c46;
	text-decoration: none;
}

#dmm_ntgnavi .arrow {
	padding-left: 14px;
	background: url(../../img/dg/arrow_common.gif) no-repeat left center;
}

#dmm_ntgnavi .tx-point {
	font-size: 16px;
	font-weight: bold;
	color: #ff4b4b !important;
}

#dmm_ntgnavi p {
	margin: 0;
	line-height: 2.6em;
}

#dmm_ntgnavi .clear {
	clear: both;
}

@media screen and (max-width: 768px){
	#dmm_ntgnavi .ntg_poi{
		display: none;
	}
}


/* * * * * * * * * * * * *
#footer
* * * * * * * * * * * * */
#footer {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #10100f;
	z-index: 1;
}
#footer.top{
	background-color: #ececf4;
}

#footer .banner {
	max-width: 1000px;
	margin: auto;
}

#footer .banner ul {
	position: relative;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}

#footer .banner ul li {
	margin: 10px 20px 0 0;
}

#footer .banner ul li a {
	position: relative;
	display: block;
}

#footer .banner ul li a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.4);
	opacity: 0;
	transition: all 0.3s ease-out;
}

#footer .banner ul li a:hover::before {
	opacity: 1;
}


#footer .footer__inner{
	position: relative;
	width: 100%;
	max-width: 1920px;
	margin: auto;
	padding: 50px 20px 0;
	box-sizing: border-box;
	background: url("../../img/common/footer_bg.png") no-repeat center top;
}
#footer .footer__inner::before{
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: url("../../img/common/footer_bg02.png") repeat-x center top;
}
#footer .footer__inner::after{
	content: "";
	position: absolute;
	top: 0;
	right: -100%;
	width: 100%;
	height: 100%;
	background: url("../../img/common/footer_bg02.png") repeat-x center top;
}

#footer .text {
	padding: 60px 0 50px;
	font-size: 12px;
	line-height: 2;
	text-align: center;
	color: #000;
}

#footer .text a {
	color: #000;
	text-decoration: underline;
}

#footer .text a:hover {
	text-decoration: none;
}

@media screen and (max-width: 768px){
	#footer .banner ul{
		justify-content: center;
	}
	#footer .text{
		font-size: 11px;
		line-height: 1.2;
	}
	#footer.top .text{
		padding-bottom: 18vh;
	}
}
