/*main*/
h1 {
	max-width: 1400px;
	margin: 0 auto;
}
h1 img {
	width: 100%;
	margin: 0 0 30px;
}
/*info*/
#info {
	margin: 0;
	border: 5px solid #c91a35;
	border-radius: 10px;
	padding: 40px;
	background: #fff6f6;
}
.tiket {
	padding: 10px;
	position: relative;
}
.tiket dt {
	padding: 0 0 20px 0;
}
.tiket b {
	position: absolute;
	top: -60px;
	left: 50px;
}
.tiket b img {
	max-width: 313px;
	width: 100%;
}
.tiket dl {
	margin: 0 0 20px 0;
	padding: 50px 20px 30px 120px;
	font-size: 20px;
	text-align: center;
	background: url(/campaign/yoshimoto/img/bg_tamayo.png) no-repeat 20px 30px #fff;
}
.tiket dd a {
	display: block;
	color: #fff;
	background: #c91a35;
	border-radius: 50px;
	padding: 10px 3px;
}
.tiket dd a:hover {
	opacity: 0.5;
	text-decoration: none;
}
.tiket p a {
	display: block;
	margin: 0 0 20px;
	padding: 15px;
	text-align: center;
	color: #c4863c;
	background: #fff;
	border: 3px solid #c4863c;
	border-radius: 4px;
}
.tiket p a:hover {
	color: #c4863c;
	background: #fff;
	border: 3px solid #c4863c;
	text-decoration: none;
}

.tiket ul {
	margin: 0 0 20px 0;
}

.umeda_map {
	padding: 20px;
	font-weight: bold;
	color: #fff;
	background: #c91a35;
}

.umeda_map .btn {
	width: 100%;
	color: #c91a35;
	background: #fff;
}


.umeda_map .btn:hover {
	color: #c91a35;
	background: #fff46b;
}


.map {
	text-align: center;
}
.map dl dt img {
	max-width: 513px;
	width: 100%;
}




.content {
	padding: 100px 10px 20px 10px;
}
#serect {
	margin: 40px auto 0 auto;
	padding-top: 100px;
	background: url(/campaign/yoshimoto/img/bg_hanako.png) no-repeat center top;
}
#serect h2, #serect > dl.tl {
	padding: 0 0 20px 0;
	text-align: center;
	color: #c91a35;
}
#serect .tl dt {
	font-size: 18px;
}

#serect p span {
	padding: 10px 20px;
	color: #c4863c;
	border: 3px solid #c4863c;
	background: #FBF4ED;
}

#serect ul {
	overflow: hidden;
	margin: 0 0 30px 0;
}
#serect ul li {
	width: 32%;
	float: left;
	box-sizing: border-box;
	margin: 0.5%;
	padding: 7px;
	text-align: center;
}
#serect ul li a {
	position: relative;
}
#serect ul li a:before {
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -0.5em;
	content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	font-size: 0.8em;
}
#serect ul li a {
	display: block;
	padding: 10px;
	color: #fff;
	background: #c91a35;
	border: 3px solid #c91a35;
	border-radius: 50px;
}
#serect ul li a:hover {
	color: #c91a35;
	background: #fff;
	border: 3px solid #c91a35;
	text-decoration: none;
}
#serect ul li p {
	font-size: 20px;
}
dl.option {
	padding: 10px;
	background: #fff6f6;
}
/*attention*/
#attention {
	margin: 40px auto 100px auto;
	background: url(/campaign/yoshimoto/img/bg_s.png) no-repeat center top;
}
#attention h2, #serect >p {
	text-align: center;
	margin: 20px 0 40px 0;
	color: #c91a35;
}
#attention dl {
	margin: 0 0 30px 0;
}
.capture dt {
	float: left;
	max-width: 380px;
	width: 33.333%;
}
.capture dt img {
	width: 100%;
}

h2:before, h2:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	content: "\f2d1";
	font-size: 14px;
	padding: 0 20px;
	vertical-align: super;
}

@media only screen and (max-width:767px) {
#info {
	padding: 10px;
}
.tiket b {
	top: -25px;
	left: 19px;
}
.tiket b img {
	width: 63%;
}

#serect ul li {
	width: 49%;
	padding-tpo: 10px;
}
#serect p span {
	padding: 0;
	color: #c4863c;
	border: none;
	background: #FBF4ED;
}
}

@media only screen and (max-width:480px) {

.tiket dl {
	padding: 40px 10px 20px 100px;
	font-size: 16px;
}
#serect ul li {
	width: 100%;
}
}

@media only screen and (max-width:320px) {
.tiket dl {
	padding: 20px 10px 10px 60px;
	background-size: 20%;
}
}







.modal-content {
	color: #333;
}


.modal-content .content_box {
	padding: 20px;
	color: #333;
}

.content_box p {
	font-weight: normal;
	margin: 0 0 5px 0;
}

.content_box p img {
	max-width: 386px;
	width: 100%;
}

.text-center p:first-child {
	padding: 5px 0 0 0;
	line-height: 1.5;
	color: #c91a35;
	font-weight: bold;
	font-size: 24px;
	border: 1px solid #c91a35;
}


/* map_box
gmap
------------------------------------------*/

.map_box {
	overflow: hidden;
}
.map_box .access {
	float: left;
	max-width: 100%;
	padding: 0 1%;
}

.gmap {
	position: relative;
	margin: 0 0 10px 0;
	padding-bottom: 20%;
	height: 200px;
	overflow: hidden;
	border: 1px solid #000;
}
.gmap iframe, .gmap object, .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media only screen and (max-width:480px) {
.map_box .access {
	float: none;
	width: 100%;
	padding: 0;
}
}



.plancard{
	display: block;
	border:solid 1px #ccc;
	padding: 20px;
	border-radius: 4px;
	color: #1f1f1f;
}
.plancard:hover{
	text-decoration: none;
	color: #1f1f1f;
}
.plancard dl{
	margin: 0;
	padding: 0;
}
.plancard dt{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}
.plancard-price{
	text-align: right;
	margin-bottom: 10px;
}
.plancard-price b{
	margin-right: 10px;
	font-size: 80%;
}
.plancard-price span{
	color: #F14482;
	font-size: 20px;
	font-weight: bold;
}
.plancard-price .min:after{
	content: "～";
	font-size: 80%;
}
.plancard-price .max:after{
	content: "円";
	font-size: 80%;
}
.plancard-btn{
	display: block;
	padding: 10px;
	color: #fff;
	background: #c91a35;
	border: 3px solid #c91a35;
	border-radius: 100px;
	position: relative;
	text-align: center;
}
.plancard-btn:before {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -0.5em;
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 0.8em;
}
.plancard:hover .plancard-btn{
	opacity: 0.5;
}