@charset 'UTF-8';

body {
	margin: 0;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	background: url(../img/header_back.png) top right no-repeat #0f031a;
	background-size: 60%;
	color: #000;
}
a { display: block; text-decoration: none;}
a:hover { text-decoration: underline;}
img { display: block;}
h1,h2,h3,h4,h5,p,ul { margin: 0; padding: 0; list-style: none;}

#container {
	margin: 0 auto;
	max-width: 1100px;
}
section {
	position: relative;
}
h1 {
	position: absolute;
	font-size: 75%;
	color: #ffe;
	right: 0;
}
#header {
	position: relative;
}
#header #img {
	width: 300px;
}
#header img {
	width: 100%;
}
#header ul {
	display: flex;
}
#header li {
	flex: 1 1;
	text-align: center;
	background: url(../img/navi_back.png) center;
	background-size: cover;
}
#header li:not(:first-child) {
	margin-left: 1px; 
}
#header li a {
	padding: 5px;
	color: #ffe;
}


#asiato {
	color: #ccc;
	font-size: 80%;
}
#asiato ul {
	padding: 5px;
	display: flex;
}
#asiato li {
	margin-right: 5px;
}
#asiato li:not(:first-child):before {
	content: " > ";
	margin-right: 0px;
	margin-left: 0px;
}
#asiato a {
	display: inline;
	color: #ffe;
	box-sizing: border-box;
}

.flexbox {
	display: flex;
}
.flexbox_wrap {
	display: flex;
	flex-wrap: wrap;
}
div#news_index h2,
div#hime h2,
div#admin_shop h2 {
	color: #ffe;
}
div#hime h2 span {
	display: inline;
	font-size: 80%;
	color: #ccc;
}
div#hime h2 span a {
	display: inline ! important;
	color: white;
	font-weight: bold;
}

div#news_index li {
	flex: 0 1 33%;
	position: relative;
	width: 100%;
}
div#news_index li:before {
	content:"";
    display: block;
    height: 0;
    padding-top: 25%; /* 4:3の比率の場合　100% / 4 *3 */
}
div#news_index a {
	position: absolute;
	left: 5px;
	bottom: 5px;
	top: 0;
	right: 5px;

	border: 1px solid #ffe;
	color: #ffe;

    overflow: hidden;
    display: flex;

	background: url(../img/arrow.png) center right no-repeat;
	background-size: 4% 20%;
}
div#news_index a:nth-child(even) {
	margin-left: 5px;
}
div#news_index a:hover {
	text-decoration: none;
	background-color: #fff;
	color: #000;
}
div#news_index span {
	display: block;
}
div#news_index span#img {
	flex: 1 1;
}
div#news_index span#content {
	flex: 4 1;
	padding: 4px;
	box-sizing: border-box;
}
div#news_index img {
	width: 100%;
}
div#news_index #title {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
div#hime li {
	flex: 0 1 25%;
	position: relative;
	width: 100%;
}
div#hime li:before {
	content:"";
	display: block;
	height: 0;
	padding-top: 130%; /* 高さを幅の75%に固定 */
}
div#hime img {
	width: 100%;
}
div#hime li a {
	position: absolute;
	left: 5px;
	bottom: 5px;
	top: 0;
	right: 0;

	border: 1px solid #ffe;
	color: #333;
	text-align: center;
    overflow: hidden;
}
div#hime li a:hover {
	text-decoration: none;
	border: 1px solid #000;
	color: #000;
}
div#hime div {
	background: #ffe;
}
div#hime p {
	position: absolute;
	bottom: 0;
	width: 100%;
	background: rgba(255, 255, 255, 0.8);}
div#hime span {
	display: block;
}
div#hime span#cup {
	background: #000;
	color: #ffe;
	padding: 0 4px;
	border-top-left-radius: 5px;

}
div#hime span#prof {
	font-size: 80%;
}

div#admin_shop li {
	flex: 0 1 25%;
	position: relative;
	width: 100%;
	font-size: 12pt;
}
div#admin_shop li:before {
	content:"";
	display: block;
	height: 0;
	padding-top: 75%; /* 高さを幅の75%に固定 */
}
div#admin_shop a {
	position: absolute;
	top: 0;
	left: 5px;
	right: 0;
	bottom: 5px;

	border: 1px solid #ffe;
	background: #330000;
	color: #333;
}
div#admin_shop a:hover {
	border: 1px solid #000;
}
div#admin_shop #img {
	position: relative;
	width: 90%;
	margin: 0 auto;
	background: #333;
}
div#admin_shop #name {
	text-align: center;
	font-size: 120%;
	font-weight: bold;
}
div#admin_shop #img:before {
	content:"";
	display: block;
	height: 0;
	padding-top: 50%; /* 高さを幅の75%に固定 */
}
div#admin_shop #content_com {
	background: yellow;
}
div#admin_shop #content {
	position: absolute;
	bottom: 0;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	background: #ffe;
	padding-top: 5px;
	padding-bottom: 5px;
}
div#admin_shop #content div {
	flex: 1 1 100%;
}
div#admin_shop #content span {
	display: block;
	flex: 1 1 50%;
	text-align: center;
}

#randome_shop li {
	flex: 0 1 24%;
	margin: 0 0.5% 5% 0.5%;
	position: relative;
	width: 100%;
	font-size: 12pt;
}
#randome_shop a {
	background: white;
	text-align: center;
}
#randome_shop a:hover {
	text-decoration: none;
}
#randome_shop #name {
	font-size: 150%;
}

#randome_shop li a {
}
#randome_shop li div#content_com {
	line-height: 0;
}
#randome_shop li div#content_com img {
	display: inline;
	width: 20%;
}


div#map,
div#news_index,
div#hime,
div#admin_shop {
	margin-bottom: 20px;
}

footer {
	padding: 20px;
	background: url(/img/footer_back.png) center no-repeat;
	background-size: cover;
	text-shadow: 2px 2px 2px #000;
}
footer div {
	margin: 0 auto;
	width: 300px;
	text-align: center;
}
footer div img {
	width: 100%;
}

footer ul {
	display: flex;
	justify-content: center;
	padding: 5px;
}
footer li:not(:first-child) {
	border-left: 1px solid #ffe;
}
footer li a {
	margin: 0 10px;
	font-size: 80%;
}

footer a {
	color: #ffe;
}
address {
	text-align: center;
	font-size: 80%;
	color: #ffe;
}

#map {
	position: relative;
	border: 1px solid #ffe;
	margin: 0 5px;
	overflow: auto;
}
#map div#mapimg {
	position: relative;
	width: 100%;
	height: 400px;
	overflow: auto;
	background: white;
}

#map img {
	width: 100%;
}
#slide_back {
	position: absolute;

	top: 0;
	left: -100%;
	width: 100%;
	height: 400px;
	line-height: 1.3;
	text-align: right;
	color: white;
	z-index: 100;
	background: none;
}
#slide_banner {
	width: 270px;
	height: 400px;
	background: #000;
}

#slide_banner a {
	display: block;
	color: white;
	line-height: 2;
}
#slide_banner #img {
	height: 200px;
}
#slide_banner #content {
	display: flex;
	flex-wrap: wrap;
	text-align: center;
}
#slide_banner #name {
	flex: 1 1 100%;
	font-size: 150%;
}
#slide_banner span {
	display: block;
	flex: 1 1;
}

/*大きな地図リンク消す*/
.yolp-ymapbanner {
	display: none;
}

.menufixed {
	position: fixed ! important;
	top: 0 ! important;
	z-index: 100;
}

.ham {
	display: none;
}




@media (max-width: 500px) {	
	div#news_index ul.flexbox_wrap {
		display: block;
	}
	div#hime ul {
		padding-right: 5px;
	}
	div#hime li {
		flex: 0 1 50%;
	}
	div#admin_shop ul.flexbox_wrap {
		padding-right: 5px;
	}
}
@media (max-width: 400px) {	
	div#admin_shop #content {
		display: block;
	}
	div#admin_shop li:before {
		padding-top: 90%; /* 高さを幅の75%に固定 */
	}
	div#admin_shop #img:before {
		padding-top: 50%; /* 高さを幅の75%に固定 */
	}
	div#admin_shop #content span {
		font-size: 120%;
	}

}



/*--- 201910add ---*/
/* common */
a:hover {
	transition: all 0.3s;
}
.mt0{
	margin-top: 0 !important;
}
/*Map*/
div#map {
	animation: fade_in 2.5s;
	margin-bottom: 10px;
}
@keyframes fade_in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.map_text {
	color: #ffe;
	text-align: right;
	padding-right: 1em;
}
/* FadeIn top.html cast_intro.html shop_intro.html */
.fade_off li,
.fade_off h4 {
	opacity: 0;
	transform: translate(0, 75px);
	transition: all 1s;
}
.fade_in {
	opacity: 1 !important;
	transform: none !important;
}

div#hime li a {
	overflow: hidden;
}
div#hime li a:hover {
	text-decoration: none;
}
div#hime li div#syukkin {
	position: relative;
	z-index: 1;
}
div#hime li img:hover {
	transform: scale(1.25);
	opacity: 0.85;
	transition: all 0.5s;
}

/* PCページ幅変更 ブレイクポイントは896pxで設定*/
@media (min-width: 897px) {
	.sp{
		display: none;
	}
	#container.max_window {
		max-width: none;
		font-size: 1.25vw;
	}
	#container.max_window > section.no_padding,
	#container.max_window > section:first-child {
		padding: 0;
	}
	#container.max_window > section {
		padding: 0 20px;
	}
	#container.max_window h2{
		margin: 50px 0 15px;
	}
	#container.max_window #asiato {
		margin: 10px 0 20px;
		font-size: 1rem;
	}

	/* footer */
	footer li a,
	address{
		font-size: 115%;
	}
	/*top.html*/
	#map div#mapimg,
	#slide_back,
	#slide_banner {
		height: 35vw;
	}
	#slide_banner span{
		flex: none;
		width: 100%;
	}
	#hime h4 {
		margin-bottom: 100px;
	}
	h1,
	div#admin_shop li {
		font-size: 100%;
	}
	div#admin_shop li {
		width: 23.875%;
		flex: none !important;
		margin-right: 1.5%;
		margin-bottom: 1.5%;
	}
	div#admin_shop li:nth-child(4n),
	div#admin_shop li:last-child {
		margin-right: 0;
	}
	
	/* shop_intro.html */
	#randome_shop #name {
		padding: 0.5em;
		font-size: 3rem;
		font-weight: bold;
	}
}
/* スマホ調整 */
@media (max-width: 896px){
	.pc{
		display: none;
	}
	#asiato {
		display: none;
	}
	#container.max_window h2 {
		margin: 30px 0 10px;
	}
	/* top.html */
	#slide_back,
	#slide_banner {
		height: 100%;
	}
	/* FadeIn */
	.fade_off li,
	.fade_off h4 {
		transform: translate(0, 50px);
	}

	/* shop_intro.html */
	#randome_shop #name {
		padding: 0.5em;
		font-weight: bold;
	}

}

/* top.html */
div#news_index span#img {
	display: flex;
	align-items: center;
	background-color: #fff;
}
div#admin_shop a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 960px) {
	div#admin_shop li {
		width: 32.333%;
		flex: none !important;
	}
	div#admin_shop li {
		margin-right: 1.5%;
		margin-bottom: 1.5%;;
	}
	div#admin_shop li:nth-child(4n) {
		margin-right: 1.5%;
	}
	div#admin_shop li:nth-child(3n),
	div#admin_shop li:last-child {
		margin-right: 0;
	}
/*div#admin_shop ul:before {
		content: none;
	}
	div#admin_shop ul:after {
		content: "";
		display: block;
		width: 33.33333%;
	}*/
}
@media screen and (max-width: 760px) {
	div#admin_shop ul li {
		width: 49.25%;
	}
	div#admin_shop li:nth-child(3n) {
		margin-right: 1.5%;
	}
	div#admin_shop li:nth-child(2n) {
		margin-right: 0;
	}
}

/* top.htmlのロゴ背景を変更
基本→白
白では視認性が悪い場合→黒
単色の背景がロゴについている→同色
他指定があった場合はそちらに合わせる */
div#admin_shop a {
	background-color: #fff;
}
div#admin_shop a[href="shop/kumamotohotpoint/"],
div#admin_shop a[href="shop/hotpointstyle/"],
div#admin_shop a[href="shop/complex/"],
div#admin_shop a[href="shop/hotpointstyle/"],
div#admin_shop a[href="shop/glamour/"],
div#admin_shop a[href="shop/cranberryk/"],
div#admin_shop a[href="shop/airporthonkan/"],
div#admin_shop a[href="shop/hotpointvilla/"],
div#admin_shop a[href="shop/kanojo/"],
div#admin_shop a[href="shop/princesshoney/"],
div#admin_shop a[href="shop/suzume/"],
div#admin_shop a[href="shop/reijyo/"],
div#admin_shop a[href="shop/harenchigakuen/"],
div#admin_shop a[href="shop/etowaru/"],
div#admin_shop a[href="shop/emblem/"],
div#admin_shop a[href="shop/kumamotoclub/"] {
	background-color: #000;
}
div#admin_shop a[href="shop/onedarihontenk/"] {
	background-color: #ffff01;
}
div#admin_shop a[href="shop/superjoy/"] {
	background-color: #e7161b;
}
div#admin_shop a[href="shop/enzeru/"] {
	background-color: #aa0e26;
}

/* shop_intro.html */
#randome_shop #content {
	background-color: #fff;
}
#randome_shop a:hover {
	opacity: 0.85;
}

