@charset "utf-8";

#sesakuWrap h2 {
	background-size: 98% 100%;
}

.inline>* {
	display: inline-block;
	vertical-align: middle;
}

.inline2>* {
	vertical-align: middle;
}

.center td {
	text-align: center;
	padding: 0.2em 0 !important;
}

.cal td, .calk td {
	font-size: 130%;
	color: #ccc;
}

.cal .mon>td, .calk .mon>td {
	padding: 0.1em 0.5em !important;
	text-align: left !important;
	font-weight: bold;
	color: #333;
	/*color: #E65185*/
}

.cal a {
	font-size: 110%;
	font-weight: bold;
}

#mask {
	position: fixed;
	z-index: 10001;
	width: 100%;
	height: 100%;
	background-color: #333;
	top: 0;
	left: 0;
	opacity: 0.8;
	-ms-filter: "alpha(opacity=80)";
	display: none;
}
#subwin {
	position: absolute;
	z-index: 10001;
	width: 100%;
	top: 60px;
	left: 0;
	display: none;
	text-align: center;
}

#subwin ul {
	padding: 0 1em 1em 2em;
}

#calwin {
	position: absolute;
	z-index: 10001;
	width: 100%;
	top: 60px;
	left: 0;
	display: none;
	text-align: center;
}

a.close {
	width: 1000px;
	text-align: right;
	display: block;
	margin: 0 auto;
	color: white;
	opacity: 0.6;
	-ms-filter: "alpha(opacity=60)";
	text-decoration: none;
	font-size: 140%;
}

a.close>img {
	margin-left: 10px;
}

a.close:hover {
	opacity: 1;
	-ms-filter: "alpha(opacity=100)";
}

#submap {
	/*max-width: 80%;*/
}

#submap img {
	/*max-width: 99%;*/
}

#sublink {
	position: absolute;
	z-index: 20;
	width: 350px;
	margin: 0 auto;
	top: 50px;
	left: 50px;

	background-color: white;
	border-radius: 5px;
	border: 2px solid #666;
	text-align: left;
	display: none;
}

#sublink h3 {
	margin-top: 0;
	border-radius: 5px 5px 0 0;
	padding: 0.5em 1em 0.2em;
	background-color: #f2f4e1;
	background: linear-gradient(to bottom,#fdfef3 0%,#f2f4e1 50%,#eaeacf 100%);
	background: -webkit-linear-gradient(top,#fdfef3 0%,#f2f4e1 50%,#eaeacf 100%);
}

#sublink li>a {
	font-weight: bold;
}

#sublink p {
	text-align: center;
	font-size: 120%;
	margin: 0 auto 15px;
}

#detail {
	position: absolute;
	z-index: 10040;
	width: 100%;
	top: 70px;
	left: 0px;
	display: none;
}

#detail>div {
	width: 780px;
	margin: 0 auto;
	max-width: 95%;
	background-color: white;
	border-radius: 5px;
	border: 2px solid #666;
	text-align: left;
}


#detail h3 {
	margin-top: 0;
	border-radius: 5px 5px 0 0;
	padding: 0.5em 1em 0.2em;
	background-color: #f2f4e1;
	color: #e65185;
	background: linear-gradient(to bottom,#fdfef3 0%,#f2f4e1 50%,#eaeacf 100%);
	background: -webkit-linear-gradient(top,#fdfef3 0%,#f2f4e1 50%,#eaeacf 100%);
}

#detail p {
	text-align: center;
	font-size: 120%;
	margin: 0 auto 15px;
}

#detail dt {
	float: left;
	clear: left;
	width: 20%;
	font-weight: bold;
	padding-bottom: 0.5em;
}

#detail dl {
	margin-top: 0;
	padding: 1em 1em 1em 2em;
	line-height: 1.4;
}

#detail dl:after {
	content: '';
	display: block;
	clear: both;
	visibility: hidden;
}

#detail dd {
	float: left;
	width: 80%;
	padding-bottom: 0.5em;
}

#detail dd>img {
	width: 35px;
	margin-top: 0;
}

#calwin {
	z-index: 10010;
}
#calout {
	z-index: 10020;
}
#calout>table {
	z-index: 10030;
}
#calout>table {
	background-color: white;
	width: 750px;
	margin: 1em auto;
	padding: 3px;
	margin-top: 1px;
	max-width: 100%;
}

#calout td {
	font-size: 105%;
	text-align: left !important;
	padding: 0.3em 0.5em !important; 
}

#calout th {
	border: 1px solid #fff;
	border-width: 0 2px 0 0;
	background: url(../../common/images/table_bg_03.gif) repeat-x left bottom;
	color: #E65185;
	background-color: #F6D8E1;
	padding: 0.5em;
}

#calwin>.title {
	width: 750px;
	text-align: left;
	margin: 0 auto;
	position: relative;
	max-width: 100%;
}

.title>span {
	background-color: white;
	font-size: 180%;
	padding: 2px 20px;
	
}

.title>.close {
	position: absolute;
	right: 0;
	top: 0;
	width: 300px;
}

#guidest {
	max-width: 90%;
	width: 800px;
	margin: 0 auto;
}

#guidest h2 {
	text-align: left;
}

#guidest table {
	background-color: white;
}

#sesakuWrap #guidest td {
	text-align: left;
	font-size: 1.3em;
}

#guidest td.obi {
	background-color: #ffd;
}

#guidest th {
	width: 13%;
}

#sesakuWrap .seigo,
#sesakuWrap .cal,
#sesakuWrap .calk {
	width: 95%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

#sesakuWrap .cal:after,
#sesakuWrap .calk:after {
	content: '';
	display: block;
	clear: both;
	visibility: hidden;
}

#sesakuWrap .seigo>table,
#sesakuWrap .cal>table,
#sesakuWrap .calk>table {
	width: 48%;
	margin: 1em 1%;
/*	float: right;	*/
}

#sesakuWrap .calk>table:first-child {
/*	float: left;	*/
}

#sesakuWrap .cal td,
#sesakuWrap .calk td {
	padding: 0.4em;
}

.guide td {
	font-size: 130%;
}

.rightTxtBlock {
	width: 380px;
	padding-left: 10px;
}

h3.toku, h3.toku_1, h3.toku_2, h3.tsunen, h3.tsunen_1, h3.tsunen_2, h3.rekishi, h3.kikaku, h3.kikaku_1, h3.kikaku_2, h3.guides, h3.guides_1, h3.guides_2 {
	background: url('h3_btn.gif') no-repeat left 40%;
	padding-left: 25px !important;
}

ul.pglink {
	display: flex;
}

#sesakuWrap ul.pglink>li {
    background: none;
	width: 33%;
}

ul.pglink>li>a:hover>img {
	opacity: 0.8;
}

h1>big {
	font-size: 130%;
}

@media print {
	#mask {
	background-color: #fff;
	top: 0;
	left: 0;
	opacity: 1;
	}
	.noprint {
		display: none !important;
	}
	#subwin, #calwin, #detail {
		top: 0 !important;
	}
	#detail>div>p {
		display: none;
	}
	a.close {
		display: none !important;
	}
}

@media screen and (max-width: 800px) {
	#calout>table {
		width: 100%;
		font-size: 90%;
	}
	#sesakuWrap .seigo>table,
	#sesakuWrap .cal>table,
	#sesakuWrap .calk>table {
		width: 100%;
	/*	float: right;	*/
	}
	#calwin>.title {
		width: 100%;
	}
	.title>span {
		font-size: 120%;
		padding: 0 0 0 5px;
	}
	#sesakuWrap .seigo>table {
		font-size: 85%;
	}
}

#sesakuWrap .map_frame {
	width: 98%;
	margin: 1em 0;
}
.flex_row {
	display: flex;
	flex-wrap: nowrap;
}
.flex_row .close {
	width: calc((100% - 750px) / 2);
}
.flex_row img.stamp {
}
.flex_row.ichiran {
	align-items: flex-start;
}
#sesakuWrap .flex_row.ichiran h3 {
	margin-right: 1em;
}
.flex_row.qrcode {
	align-items: flex-end;
}
.flex_row.qrcode img {
	width: 144px;
	height: auto;
}
@media screen and (max-width: 800px) {
	.flex_row {
		display: block;
	}
	.flex_row .close {
		display: none;
	}
	div.mainContents {
		width: 100%;
	}
	#lifelongWrap p, #sesakuWrap p {
		word-break: break-all;
	}
	.flex_row img.stamp {
		width: 100%;
		height: auto;
		margin: 0;
	}
	.flex_row.qrcode img {
		width: 80%;
		height: auto;
	}
	.flex_row.qrcode {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		word-break: break-all;
	}
}
