@charset "utf-8";
/*////////////////////////////////////
works
////////////////////////////////////*/

@media screen and (min-width: 768px) {
#works_area {
	position: relative;
	width: 100%;
	padding: 150px 0;
}
#under_title {
	position: relative;
	text-align: center;
	margin-bottom: 100px;
}
#under_title h2 {
	font-size: 5rem;
	font-weight: 300;
	line-height: 1.2;
	color: #555;
}
#under_title h2::before {
	content: "";
	position: absolute;
	width: 100px;
	height: 20px;
	border-top:2px solid #555;
	border-left:2px solid #555;
	border-right:2px solid #555;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
}
#under_title h2::after {
	content: "";
	position: absolute;
	width: 100px;
	height: 20px;
	border-bottom:2px solid #555;
	border-left:2px solid #555;
	border-right:2px solid #555;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
}
#works_place {
	position: relative;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.japan_map {
	position: relative;
	width: 100%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	aspect-ratio:10/9;
	border:1px solid #555;
	background: url("../works/img/japan.png");
	background-size: cover;
}
.japan_map span {
	position: absolute;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 400;

	padding: 10px 20px;
	border:2px solid #555;
	border-radius: 10px;
}
.japan_map span.dison {
	background: rgba(255,255,255,0.6);
	cursor: pointer;
}
.japan_map span.disoff {
	background: rgba(57,57,57,1.00);
}
.area1 {
	top: 12%;
	left:80%;
}
.area2 {
	top: 40%;
	left:74%;
}
.area3 {
	top: 66%;
	left:74%;
}
.area4 {
	top: 66%;
	left:60%;
}
.area5 {
	top: 70%;
	left:45%;
}
.area6 {
	top: 70%;
	left: 27%;
}
.area7 {
	top: 82%;
	left: 30%;
}
.area8 {
	top: 82%;
	left:8%;
}
/* オーバーレイ */
.japan_map .area_overlay{
    display: none;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    background-color:rgba(0,0,0,0.7);
    cursor: pointer;
}
.japan_map .pref_area {
	display: none;
}
.japan_map .pref_list{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
    width: 90%;
}
.japan_map .pref_list .chion{
	position: relative;
    width: 50%;
    border: 1px solid #CCC;
	font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
    cursor: pointer;
	 background-color: rgba(255,255,255,0.9);
}
.japan_map .pref_list .chioff{
	position: relative;
    width: 50%;
    border: 1px solid #CCC;
	font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
	background: rgba(92,92,92,1.00);
}
#chiiki_title {
	position: relative;
	text-align: center;
	margin-bottom: 50px;
}
#chiiki_title span {
	display: inline-block;
	width: 400px;
	font-size: 1.6rem;
	font-weight: 400;
}
#panlink {
	position: absolute;
	top: 0;
	left: 10%;
	font-size: 1.4rem;
	font-weight: 400;
	color: #555;
	z-index: 9;
}
#panlink .thispage {
	color: rgba(37,126,180,1.00);
}
#panlink a {
	font-size: 1.4rem;
	font-weight: 400;
	color: #555;
	text-decoration: none;
}
#panlink a:hover {
	text-decoration: underline;
}
.chiiki_area {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.chiiki {
	position: relative;
	width: 14%;
	margin: 1.3%
}
.chiiki a {
	display: block;
	width: 100%;
	padding: 10px;
	transition: all 0.3s;
	border: 1px solid #EEE;
}
.chiiki a:hover {
	opacity: 0.6;
}
.fine a::before {
	content: "";
	position: absolute;
	top:-10px;
	left: -5px;
	width: 30px;
	height: 35px;
	background: url("../works/img/finemark.png");
	background-size: cover;
}
#chikufine_area {
	text-align: center;
	position: relative;
	margin-bottom: 50px;
	font-size: 1.4rem;
}
#chikufine_area img {
	width: 35px;
}
#fine_marugoto {
	position: relative;
	width: 90%;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}
#chiiki_pr {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
#chiiki_pr p {
	font-size: 1.6rem;
	line-height: 2;
}
.hp_url {
	position: relative;
	width: 100%;
	text-align: center;
}
.hp_url a {
	display: block;
	margin: 0 auto;
	color: #296BBC;
	font-size: 1.6rem;
}
.image_left {
	position: relative;
	width: 45%;
	float: left;
	margin-right: 30px;
	margin-bottom: 30px;
}
}
@media screen and (min-width: 0px) and (max-width: 767px) {
#fine_marugoto {
	position: relative;
	width: 90%;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}
#chiiki_title {
	position: relative;
	text-align: center;
	margin-bottom: 50px;
}
#chiiki_title span {
	display: inline-block;
	width: 60%;
	max-width: 400px;
}
#panlink {
	position: absolute;
	top: -60px;
	left: 5%;
	font-size: 1.4rem;
	font-weight: 400;
	color: #555;
	z-index: 9;
}
#panlink .thispage {
	color: rgba(37,126,180,1.00);
}
#panlink a {
	font-size: 1.4rem;
	font-weight: 400;
	color: #555;
	text-decoration: none;
}
#panlink a:hover {
	text-decoration: underline;
}
.chiiki_area {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.chiiki {
	position: relative;
	width: 44%;
	margin: 3%
}
.chiiki a {
	display: block;
	width: 100%;
	padding: 10px;
	transition: all 0.3s;
	border: 1px solid #EEE;
}
.chiiki a:hover {
	color: #FF0000;
}
#works_area {
	position: relative;
	width: 100%;
	padding: 150px 0;
}
#under_title {
	position: relative;
	text-align: center;
	margin-bottom: 100px;
}
#under_title h2 {
	font-size: 3rem;
	font-weight: 300;
	line-height: 1.2;
	color: #555;
}
#under_title h2::before {
	content: "";
	position: absolute;
	width: 50px;
	height: 10px;
	border-top:2px solid #555;
	border-left:2px solid #555;
	border-right:2px solid #555;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}
#under_title h2::after {
	content: "";
	position: absolute;
	width: 50px;
	height: 10px;
	border-bottom:2px solid #555;
	border-left:2px solid #555;
	border-right:2px solid #555;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
}
#works_place {
	position: relative;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.japan_map {
	position: relative;
	width: 100%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	aspect-ratio:10/9;
	border:1px solid #555;
	background: url("../works/img/japan.png");
	background-size: cover;
}
.japan_map span {
	position: absolute;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 400;

	padding: 10px 20px;
	border:2px solid #555;
	border-radius: 10px;
}
.japan_map span.dison {
	background: rgba(255,255,255,0.6);
	cursor: pointer;
}
.japan_map span.disoff {
	background: rgba(57,57,57,1.00);
}
.area1 {
	top: 12%;
	left:70%;
}
.area2 {
	top: 40%;
	left:74%;
}
.area3 {
	top: 66%;
	left:74%;
}
.area4 {
	top: 56%;
	left:55%;
}
.area5 {
	top: 70%;
	left:45%;
}
.area6 {
	top: 66%;
	left: 20%;
}
.area7 {
	top: 85%;
	left: 36%;
}
.area8 {
	top: 82%;
	left:1%;
}
/* オーバーレイ */
.japan_map .area_overlay{
    display: none;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    background-color:rgba(0,0,0,0.7);
    cursor: pointer;
}
.japan_map .pref_area {
	display: none;
}
.japan_map .pref_list{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
    width: 90%;
}
.japan_map .pref_list .chion{
	position: relative;
    width: 50%;
    border: 1px solid #CCC;
	font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
    cursor: pointer;
	 background-color: rgba(255,255,255,0.9);
}
.japan_map .pref_list .chioff{
	position: relative;
    width: 50%;
    border: 1px solid #CCC;
	font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
	background: rgba(92,92,92,1.00);
}
.fine a::before {
	content: "";
	position: absolute;
	top:0;
	left: -10px;
	width: 30px;
	height: 35px;
	background: url("../works/img/finemark.png");
	background-size: cover;
}
#chikufine_area {
	text-align: center;
	position: relative;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
	font-size: 1.4rem;
}
#chikufine_area img {
	width: 35px;
}

#chiiki_pr {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
#chiiki_pr p {
	font-size: 1.6rem;
	line-height: 2;
}
.hp_url {
	position: relative;
	width: 100%;
	text-align: center;
}
.hp_url a {
	display: block;
	margin: 0 auto;
	color: #296BBC;
	font-size: 1.6rem;
}
.image_left {
	position: relative;
	width: 100%;
	margin-bottom: 30px;
}
}



@media screen and (min-width: 768px) {
.mokuji_title {
	position: relative;
	margin-bottom: 50px;
	font-size: 2rem;
	color: #999;
	font-weight: 700;
	text-align: center;
}
.mokuji_place {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 40px 20px 20px 20px;
	border:1px solid #EEE;
}
.mokuji_place::after {
	content: "目次";
	position: absolute;
	padding: 5px 20px;
	border:1px solid #999;
	background: #EEE;
	font-size: 1.6rem;
	font-weight: 400;
	top: -20px;
}
.mokuji {
	position: relative;
}
.mokuji a {
	display: block;
	padding: 10px 20px;
	font-size: 1.6rem;
	color: #333;
	text-decoration: underline;
}
.mokuji a:hover {
	color: rgba(220,29,32,1.00);
}
.facility_list {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}
.facility {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.facility h3 {
	position: relative;
	width: 100%;
	margin-bottom: 1em;
	font-size: 1.8rem;
	font-weight: 700;
	background: #EEE;
	padding: 10px 20px;
}
.facility p {
	position: relative;
	display: block;
	width: 49%;
	margin-right: 1%;
	padding-left: 1em;
	font-size: 1.6rem;
	font-weight: 400;
}
.facility p a {
	color: rgba(41,148,182,1.00);
}
.facility p a:hover {
	color: rgba(210,42,44,1.00);
}
}

@media screen and (min-width: 0px) and (max-width: 767px) {
.mokuji_title {
	position: relative;
	margin-bottom: 50px;
	font-size: 2rem;
	color: #999;
	font-weight: 700;
	text-align: center;
}
.mokuji_place {
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 40px 20px 20px 20px;
	border:1px solid #EEE;
}
.mokuji_place::after {
	content: "目次";
	position: absolute;
	padding: 5px 20px;
	border:1px solid #999;
	background: #EEE;
	font-size: 1.6rem;
	font-weight: 400;
	top: -20px;
}
.mokuji {
	position: relative;
}
.mokuji a {
	display: block;
	padding: 10px 20px;
	font-size: 1.6rem;
	color: #333;
	text-decoration: underline;
}
.mokuji a:hover {
	color: rgba(220,29,32,1.00);
}
.facility_list {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}
.facility {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.facility h3 {
	position: relative;
	width: 100%;
	margin-bottom: 1em;
	font-size: 1.8rem;
	font-weight: 700;
	background: #EEE;
	padding: 10px 20px;
}
.facility p {
	position: relative;
	display: block;
	width: 100%;
	margin-left: 1em;
	font-size: 1.6rem;
	font-weight: 400;
}
}


/*////////////////////////////////////
各施設のcss
////////////////////////////////////*/
@media screen and (min-width: 768px) {
.facility_place {
	position: relative;
	width: 100%;
	max-width: 1300px;
	border:1px solid #EEE;
	padding: 50px;
	margin: 0 auto;
}
.facility_mes {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
}
.facility_mes img {
	line-height: 1;
	padding: 20px;
	border: 1px solid #EEE;
	width: 50%;
	float: left;
	margin-right: 30px;
	margin-bottom: 30px;
}
.facility_mes h3 {
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: 700;
}
.facility_mes p {
	font-size: 1.6rem;
	margin-bottom: 1em;
	line-height: 1.6;
}
.hpurl {
	position: relative;
	text-align: center;
}
.hpurl a {
	display: inline-block;
	background:rgba(56,135,168,1.00);
	color: #FFF;
	font-size: 1.6rem;
	font-weight: 700;
	padding: 20px 40px;
	text-decoration: none;
	transition: all 0.3s;
}
.hpurl a:hover {
	background: rgba(213,25,28,1.00);
}
}
@media screen and (min-width: 0px) and (max-width: 767px) {
.facility_place {
	position: relative;
	width: 100%;
	max-width: 1300px;
	border:1px solid #EEE;
	padding: 50px;
	margin: 0 auto;
}
.facility_mes {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
}
.facility_mes img {
	line-height: 1;
	padding: 10px;
	border: 1px solid #EEE;
	width: 100%;
	margin-bottom: 30px;
}
.facility_mes h3 {
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: 700;
}
.facility_mes p {
	font-size: 1.6rem;
	margin-bottom: 1em;
	line-height: 1.6;
}
.hpurl {
	position: relative;
	text-align: center;
}
.hpurl a {
	display: inline-block;
	background:rgba(56,135,168,1.00);
	color: #FFF;
	font-size: 1.6rem;
	font-weight: 700;
	padding: 20px 40px;
	text-decoration: none;
	transition: all 0.3s;
}
.hpurl a:hover {
	background: rgba(213,25,28,1.00);
}
}