/*
Theme Name: 小町ネット様用テーマ
Theme URI: none
Description:小町ネット　大阪のおすすめスポットページ
Version: 3.0
Author: 株式会社ルシアス
Author URI:
*/

@charset "utf-8";


/* ==================================================================== */
/* 大阪のおすすめスポット
/* ==================================================================== */
#spot{
	text-align: center;
}
#spot .spot_caption{
	display: inline-block;
	font-size: 112.5%;
	color: #D80614;
	margin-bottom: 20px;
	position: relative;
}
#spot .spot_caption:before,
#spot .spot_caption:after{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	position: absolute;
	top: 50%;
	height: 1.2em;
	width: 1.8em;
}
body:not(.is_webp) #spot .spot_caption:before,
body:not(.is_webp) #spot .spot_caption:after{
	background-image:: url("../images/icon/flowers.png");
}
body.is_webp #spot .spot_caption:before,
body.is_webp #spot .spot_caption:after{
	background-image:: url("../images/icon/flowers.webp");
}
#spot .spot_caption:before{
	left: -10px;
	-ms-transform: translate(-100%, -50%);
	-webkit-transform: translate(-100%, -50%);
	transform: translate(-100%, -50%);
}
#spot .spot_caption:after{
	right: -10px;
	-ms-transform: translate(100%, -50%) rotateY(180deg);
	-webkit-transform: translate(100%, -50%) rotateY(180deg);
	transform: translate(100%, -50%) rotateY(180deg);
}

/* -- intro -- */
#spot_intro{
	margin-bottom: 20px;
}
#spot_intro p{
	padding:0 10px;
}
#spot_intro ul{
	margin-top: -20px;
}
#spot_intro ul > li{
	border-radius: 10px;
	margin: 40px 10px 10px;
	padding: 5px;
	position: relative;
}
#spot_intro ul > li:nth-child(1){
	background-color: #75AAC7;
	color: #FFFFFF;
	font-size: 87.5%;
}
#spot_intro ul > li:nth-child(1):after{
	color: #D80614;
	content: "\F72D";
	font-family:"Material Design Icons";
	font-size: 250%;
	line-height: 1;
	position: absolute;
	-ms-transform: translate(-50%, 50%);
	-webkit-transform: translate(-50%, 50%);
	transform: translate(-50%, 50%);
}
#spot_intro ul > li:nth-child(2){
	background-color: #FFE6A9;
	color: #D80614;
	line-height: 1.2;
}
#spot_intro ul > li:nth-child(2):before,
#spot_intro ul > li:nth-child(2):after{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 28px;
	position: absolute;
	width: 28px;
}
body:not(.is_webp) #spot_intro ul > li:nth-child(2):before,
body:not(.is_webp) #spot_intro ul > li:nth-child(2):after{
	background-image:: url("../images/icon/glitter.png");
}
body.is_webp #spot_intro ul > li:nth-child(2):before,
body.is_webp #spot_intro ul > li:nth-child(2):after{
	background-image:: url("../images/icon/glitter.webp");
}
#spot_intro ul > li:nth-child(2):before{
	bottom: 0;
	left: 0;
}
#spot_intro ul > li:nth-child(2):after{
	top :0;
	right: 0;
}
#spot_intro ul > li:nth-child(2) strong{
	font-size: 125%;
}
@media screen and (min-width:360px){
	#spot_intro ul > li:nth-child(2) b{
		font-size: 112.5%;
	}
}
@media screen and (max-width:767px){
	#spot_intro ul > li:nth-child(1):after{
		bottom: -20px;
		left: 50%;
	}
}
@media screen and (min-width:768px){
	#spot_intro ul > li{
		display: inline-block;
		margin: 40px 30px 20px;
		vertical-align: middle;
		width: -webkit-calc((100% - (30px * 4)) / 2);
		width: calc((100% - (30px * 4)) / 2);
		max-width: 380px;
	}
	#spot_intro ul > li:nth-child(1):after{
		content: "\F733";
		top: 50%;
		right: -30px;
		-ms-transform: translate(50%, -50%);
		-webkit-transform: translate(50%, -50%);
		transform: translate(50%, -50%);
	}
	#spot_intro ul > li:nth-child(2) strong{
		font-size: 137.5%;
	}
	#spot_intro ul > li:nth-child(2) b{
	}
}
@media screen and (min-width:940px){
	#spot_intro ul > li:nth-child(1){
		font-size: 100%;
	}
	#spot_intro ul > li:nth-child(2) strong{
		font-size: 150%;
	}
	#spot_intro ul > li:nth-child(2) b{
		font-size: 125%;
	}
}

/* -- list -- */
#spot_list{
	margin-bottom: 30px;
}
#spot_list > li{
	margin-top: 50px;
	position: relative;
}
#spot_list > li:before{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 60px;
	position: absolute;
	top: 0;
	left: 10px;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 60px;
	z-index: 1;
}
body:not(.is_webp) #spot_list > li:nth-child(1):before{
	background-image: url("../images/spot/spot_01.png");
}
body:not(.is_webp) #spot_list > li:nth-child(2):before{
	background-image: url("../images/spot/spot_02.png");
}
body:not(.is_webp) #spot_list > li:nth-child(3):before{
	background-image: url("../images/spot/spot_03.png");
}
body:not(.is_webp) #spot_list > li:nth-child(4):before{
	background-image: url("../images/spot/spot_04.png");
}
body:not(.is_webp) #spot_list > li:nth-child(5):before{
	background-image: url("../images/spot/spot_05.png");
}
body.is_webp #spot_list > li:nth-child(1):before{
	background-image: url("../images/spot/spot_01.webp");
}
body.is_webp #spot_list > li:nth-child(2):before{
	background-image: url("../images/spot/spot_02.webp");
}
body.is_webp #spot_list > li:nth-child(3):before{
	background-image: url("../images/spot/spot_03.webp");
}
body.is_webp #spot_list > li:nth-child(4):before{
	background-image: url("../images/spot/spot_04.webp");
}
body.is_webp #spot_list > li:nth-child(5):before{
	background-image: url("../images/spot/spot_05.webp");
}
#spot_list > li h2{
	background-color: #DE3E4E;
	color: #FFFFFF;
	font-size: 150%;
	margin-bottom: 30px;
	position: relative;
	padding: 30px 20px 20px;
}
#spot_list > li h2:before{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 130px;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 110px;
	z-index: 2;
}
body:not(.is_webp) #spot_list > li:nth-child(odd) h2:before{
	background-image: url("../images/spot/chara_010.png");
}
body:not(.is_webp) #spot_list > li:nth-child(even) h2:before{
	background-image: url("../images/spot/chara_020.png");
}
body.is_webp #spot_list > li:nth-child(odd) h2:before{
	background-image: url("../images/spot/chara_010.webp");
}
body.is_webp #spot_list > li:nth-child(even) h2:before{
	background-image: url("../images/spot/chara_020.webp");
}
#spot_list > li h2:after{
	background-position: center center;
	background-repeat: repeat-x;
	content: "";
	display: block;
	height: 10px;
	position: absolute;
	bottom: -8px;
	left: 0;
	width: 100%;
}
body:not(.is_webp) #spot_list > li h2:after{
	background-image:: url("../images/spot/pattern.png");
}
body.is_webp #spot_list > li h2:after{
	background-image:: url("../images/spot/pattern.webp");
}
#spot_list > li h2 span{
	text-decoration: underline;
}
#spot_list > li > strong{
	color: #D80614;
	display: block;
	padding: 0 10px;
}
#spot_list > li p{
	padding: 0 10px;
}
#spot_list > li p strong{
	color: #D80614;
}
#spot_list > li [class^="spot_pict_"]{
	background-color: #FFEF80;
	border-radius: 10px;
	font-size: 87.5%;
	margin: 10px auto;
	padding: 10px 10px 10px 60px;
	position: relative;
	width: -webkit-calc(100% - (10px * 2));
	width: calc(100% - (10px * 2));
	max-width: 530px;
}
#spot_list > li [class^="spot_pict_"]:before{
	width: 40px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 40px;
	position: absolute;
	top: 50%;
	left: 10px;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 40px;
	z-index: 1;
}
body:not(.is_webp) #spot_list > li .spot_pict_train:before{
	background-image: url("../images/spot/icon_train.png");
}
body:not(.is_webp) #spot_list > li .spot_pict_shop:before{
	background-image: url("../images/spot/icon_shop.png");
}
body:not(.is_webp) #spot_list > li .spot_pict_play:before{
	background-image: url("../images/spot/icon_play.png");
}
body.is_webp #spot_list > li .spot_pict_train:before{
	background-image: url("../images/spot/icon_train.webp");
}
body.is_webp #spot_list > li .spot_pict_shop:before{
	background-image: url("../images/spot/icon_shop.webp");
}
body.is_webp #spot_list > li .spot_pict_play:before{
	background-image: url("../images/spot/icon_play.webp");
}
#spot_list > li .spot_list_img{
	margin-bottom: 20px;
}
#spot_list > li .spot_list_img > li{
	display: inline-block;
	margin: 20px 10px 0;
}
#spot_list > li .spot_list_img > li img{
	width: 100%;
}
#spot_list > li .spot_balloon{
	background-color: #FFE6A9;
	background-position: left bottom, right top;
	background-repeat: no-repeat;
	background-size: 28px auto, 28px auto;
	border-radius: 10px;
	color: #D80614;
	display: inline-block;
	margin-bottom: 22px;
	padding: 10px;
	position: relative;
	width: -webkit-calc(100% - (10px * 2));
	width: calc(100% - (10px * 2));
	max-width: 300px;
}
body:not(.is_webp) #spot_list > li .spot_balloon{
	background-image: url("../images/icon/glitter.png"), url("../images/icon/glitter.png");
}
body.is_webp #spot_list > li .spot_balloon{
	background-image: url("../images/icon/glitter.webp"), url("../images/icon/glitter.webp");
}
#spot_list > li .spot_balloon:after{
	border-color: #FFE6A9 transparent transparent transparent;
	border-style: solid;
	border-width: 12px 15px 0 15px;
	content: "";
	display: block;
	height: 0;
	position: absolute;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 100%);
	-webkit-transform: translate(-50%, 100%);
	transform: translate(-50%, 100%);
	width: 0;
}
@media screen and (min-width:360px){
	#spot_list > li > strong{
		font-size: 112.5%;
	}
}
@media screen and (max-width:767px){
	#spot_list > li h2{
		text-align: left;
	}
	#spot_list > li h2:before{
		-ms-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	#spot_list > li [class^="spot_pict_"]{
		text-align: left;
	}
	#spot_list > li [class^="spot_pict_"] br{
		display: none;
	}
}
@media screen and (min-width:768px){
	#spot_list > li h2{
		margin-bottom: 40px;
	}
	#spot_list > li{
		margin-top: 70px;
	}
	#spot_list > li:before{
		height: 100px;
		left: 50%;
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		width: 100px;
	}
	#spot_list > li h2{
		font-size: 200%;
		padding: 50px 20px 40px;
	}
	#spot_list > li h2:before{
		top: -20px;
		height: 195px;
		width: 165px;
	}
	#spot_list > li:nth-child(odd) h2:before{
		left: -webkit-calc(50% + 180px);
		left: calc(50% + 180px);
		right: unset;
	}
	#spot_list > li:nth-child(even) h2:before{
		right: -webkit-calc(50% + 180px);
		right: calc(50% + 180px);
	}
	#spot_list > li > strong{
		font-size: 125%;
	}
	#spot_list > li [class^="spot_pict_"]{
		font-size: 100%;
		margin: 20px auto;
		padding: 20px 80px 20px 100px;
	}
	#spot_list > li [class^="spot_pict_"]:before{
		height: 60px;
		left: 20px;
		width: 60px;
	}
	#spot_list > li .spot_list_img{
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
		max-width: 800px;
	}
	#spot_list > li .spot_list_img > li{
		margin: 30px 10px 0;
		width: -webkit-calc((100% - (10px * 4)) / 2);
		width: calc((100% - (10px * 4)) / 2);
		max-width: 380px;
	}
	#spot_list > li .spot_list_img > li.wide{
		width: 680px;
		max-width: none;
	}
	#spot_list > li .spot_list_img > li.middle{
		width: 420px;
		max-width: none;
	}
}
@media screen and (min-width:940px){
	#spot_list > li .spot_list_img > li.wide{
		width: 780px
	}
}
@media screen and (min-width:1200px){
	#spot_list > li h2:before{
		top: 30px;
		height: 260px;
		width: 220px;
	}
	#spot_list > li:nth-child(odd) h2:before{
		left: -webkit-calc(50% + 280px);
		left: calc(50% + 280px);
	}
	#spot_list > li:nth-child(even) h2:before{
		right: -webkit-calc(50% + 280px);
		right: calc(50% + 280px);
	}
}
