@charset "utf-8";

/* header
++++++++++++++++++++++++++++++*/
header{
	position:relative;
	margin:0 auto;
	width:100%;
	height: 320px;
	background-image: url(../../img/common/r2/header_page_back.png);
	background-color: #FFF;
	background-repeat: no-repeat;
	background-position: center 85px;
	}

header#index-header{
	height: 541px;
	background-position: center 85px;
	}

#header-inner{
	position:relative;
	margin:0 auto;
	width:1100px;
	}

#header-logo{
	position: absolute;
	top: 25px; left: 0;
	width:260px; height:53px;
	}

#header-logo img{
	width:260px; height:53px;
	}

nav#head-nav{
	position: absolute;
	top: 26px; right: 0;
	height: 25px;
	}

nav#head-nav ul{
	font-size: 0;
	line-height: 0;
	}

nav#head-nav ul li{
	display: inline-block;
	font-size: 14px;
	margin-right: 12px;
	}

nav#head-nav ul li:last-child{margin-right: 0;}

nav#head-nav ul li a{
	text-decoration: none;
	color: #333;
	}

nav#head-nav ul li a:hover{
	border-bottom: 1px dotted #333;
	}

nav#head-nav ul li:before{
	content: "▸";
	}

nav#head-nav ul li:last-child:before{
	content: "";
	}

nav#head-nav ul li span:before{
	content: "：";
	}

nav#head-nav ul li img{
	width:18px;
	height:18px;
	position:relative;
	top:3px;
	}

nav#head-nav ul li form{
	position:relative;
	}

nav#head-nav ul li form input[type="text"]{
	width:160px;
	height:22px;
	line-height:22px;
	border:none;
	background:#F9F9F9;
	outline:none;
	border: 1px solid #B4B4B4;
	border-radius:3px;
	}

nav#head-nav ul li form input[type="image"]{
	width:17px; height:17px;
	position:absolute;
	top:3px;
	right:5px;
	opacity:0.6;
	-moz-transition   :opacity 0.4s ease;
	-o-transition     :opacity 0.4s ease;
	-webkit-transition:opacity 0.4s ease;
	transition        :opacity 0.4s ease;
	}

nav#head-nav ul li form input[type="image"]:hover{opacity:1;}

nav#head-nav span#mytown-box a{color: #FF0000;}
nav#head-nav span#mytown-box a:hover{border-bottom: 0; text-decoration: underline;}

nav#global-nav{
	position:relative;
	margin:0 auto;
	width:1100px;
	}

nav#global-nav ul{
	position: absolute;
	top: 62px; right: 0;
	height: 17px;
	font-size:0;
	line-height: 0;
	}

nav#global-nav ul li{
	position: relative;
	display:inline-block;
	height:17px;
	width: auto;
	margin-right: 25px;
	vertical-align: top;
//	overflow:hidden;
	}

nav#global-nav ul li a{
	border-bottom: 2px solid #F28A95;
	}

nav#global-nav ul li:last-child{margin-right:0;}

nav#global-nav ul li ul{
	position:absolute;
	top:24px; left:-38px;
	z-index:100;
	padding:6px 0 0 0;
	width: 200px;
	}

nav#global-nav ul li ul:before{
	content:"▲";
	font-size:10px;
	position:absolute;
	top:2px; left:50%;
	margin-left:-20px;
	color:#F28A95;
	display:block;
	transform:scale(2,1);
}

nav#global-nav ul li ul li{
	margin:0 0 0 -25px;
	line-height:30px;
	height: 30px;
	text-align:center;
	display:block;
	background:#F28A95;
	border-bottom:1px dotted #FFF;
}

nav#global-nav ul li ul li a{
	font-size:13px;
	font-weight:bold;
	color:#FFF;
	text-decoration:none;
	padding:5px 0;
}
@media all and (-ms-high-contrast:none){
	nav#global-nav ul li ul li a{
		padding-top:4px;
	}
}

nav#global-nav ul li ul li:last-child{
	border-bottom:none;
}
nav#global-nav ul li ul li a:hover{
	color:#804914;
}

#fade-in li ul{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
}
#fade-in li:hover ul{
	visibility:visible;
	opacity:1;
}
#fade-in li ul li a{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
}
#fade-in li:hover ul li a{
	visibility:visible;
	opacity:1;
}



/* basic layout
++++++++++++++++++++++++++++++*/
#container{
	position:relative;
	margin:0 auto;
	width:1100px;
	padding-top: 30px;
	}

#main{
	width: 800px;
	float: left;
	}

#side{
	width: 260px;
	float: right;
	padding-bottom: 40px;
	}

.contents{
	position:relative;
	margin:0 auto 60px;
//	width:800px;
	text-align:left;
	word-wrap: break-word;
	}

hr{
	width:100%; height:1px;
	margin:0 auto 20px auto;
	border:none;
	border-top:1px solid #DEDED2;
	}

section{
	}

section p{
	margin:0 0 20px 0;
	}

ul.disc-list{
	}

ul.disc-list li{
	margin-bottom:10px;
	}

ul.disc-list li:before{content:"・";}

#crumb{
  width:100%;
  text-align:left;
  font-size:12px;
	margin-bottom: 20px;
	}

#crumb a:hover{
	text-decoration:underline;
	}

.no-border{border: none !important;}

.pdf-link a{
	position:relative;
	padding-right:24px;
	}

.pdf-link a:after{
	position:absolute;
	top:-5px; right:0;
	content:url(../../img/common/icon_pdf.png);
	}

/* side
++++++++++++++++++++++++++++++*/
.side-about-banner{
	width: 260px;
	height: 66px;
	margin-bottom: 10px;
	}

.side-checklist-banner{
	width: 260px;
	height: 200px;
	margin-bottom: 30px;
	}

.side-municipality-box{
	position: relative;
	margin-bottom: 30px;
	}

.side-municipality-box h2{
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 5px;
	text-align: left;
	}

.side-municipality-map{
	height: 400px;
	background: url(../../img/side/side_areamap.gif) no-repeat 0 0;
	}

.municipality-select{
	position: absolute;
	bottom: 42px;
	}

.select-wrap{
	position:relative;
	overflow:hidden;
	display:inline-block;
	width:220px;
	margin-left: 20px;
	background-color:#FFF;
	border:1px solid #CCC;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	}

.select-wrap select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	position:relative;
	z-index:2;
	display:block;
	width:100%;
	//width:200%;/* fallback non calc support */
	//width:-webkit-calc(100% + 5em);
	margin:0;
	padding:5px 35px 5px 10px;
//	padding:.6875rem 2.1875rem .6875rem .6875rem;
	background:transparent;
	border:0;
	outline:none;
	font-size:14px;
	//font-size:1rem;
	line-height:1.5;
	color:#666;
	}
.select-box:before{
	content:"▼";
	color:#52B1C0;
	/* content:''; 今回のサンプルはCDNを使っているため指定していないけど指定する必要があります。 */
	//font-family:'entypo',sans-serif;
	position:absolute;
	z-index:1;
	top:50%;
	right:12px;
	right:.75rem;
	margin-top:-8px;
	margin-top:-.5rem;
	font-size:12px;
	//font-size:1rem;
	line-height:1;
	}

.select-wrap option{color:#333;}

.side-municipality-box p{
	position: absolute;
	bottom: 8px;
	left: 0; right: 0;
	margin: auto;
	width: 260px;
	font-size: 13px;
	line-height: 18px;
	text-align: center;
	}

ul.side-banner-list{
	margin-bottom: 20px;
	}

ul.side-banner-list li{
	margin-bottom:10px;
	}

/* side store-search
++++++++++++++++++++++++++++++*/
#store-search-box{
	background: #FFF;
	border: 1px solid #CCC;
	border-radius: 5px;
	margin-bottom: 20px;
	}

.store-search-title{
	background: #F36D14;
	padding: 10px 15px;
	margin-bottom: 10px;
	}

.store-search-title img{
	width: 188px;
	height: 19px;
	}

select.area-box{
	width: 100%;
	padding: 5px;
	margin-bottom: 10px;
	}

ul.store-search-list{
	margin: 0 15px 15px;
	padding-bottom: 15px;
	text-align: left;
	border-bottom: 1px dotted #999;
	}

ul.store-search-list li{
	}

ul.store-search-list li input[type="checkbox"]{
	margin-right:5px;
}

ul.store-search-list li ul{
	padding:0 0 0 15px;
	}

.store-search-button input.searchsubmit{
  width:220px;
	margin:10px auto 20px;
	padding:5px 0;
	font-size:14px;
	font-weight:bold;
	color:#FFF;
	background:#F36D14;
  border:1px solid #F36D14;
  border-radius:3px;
	text-align:center;
	display:block;
	cursor:pointer;
}

.store-search-button input.searchsubmit:hover{
	background:#F36D14;
}


/* footer
++++++++++++++++++++++++++++++*/
#scrollUp{
	position:relative;
	bottom:10px;
	right:20px;
	width:50px;
	height:50px;
	background:rgba(243,134,146,0.8);
	border-radius:50%;
	}
#scrollUp:before{
	position:absolute;
	bottom:0; right:0;
	width:50px;
	font-size:24px;
	text-align:center;
	line-height:50px;
	color:#FFF;
	content:"↑";
	font-weight:700;
	display:inline-block;
	}

a#scrollUp:hover{border:none;}

footer{
	position:relative;
	background:url(../../img/common/footer_back.gif) repeat-x 0 350px #95B961;
	width:100%;
	margin:0 auto;
	}

#footer-inner{
	position:relative;
	margin:0 auto;
	width:1100px;
	padding:40px 0;
	color:#FFF;
	}

#footer-logo{
	width:207px; height:43px;
	margin:0 auto 25px;
	}

nav#footer-nav ul{
	font-size: 0;
	line-height: 0;
	margin:30px 120px 40px;
	}

#footer-nav ul li{
	display:inline-block;
	font-size:14px;
	margin-right: 20px;
	line-height: 200%;
	white-space: nowrap;
	}

#footer-nav ul li:last-child{margin-right: 0;}

#footer-nav ul li a,
#footer-inner a{
	color:#FFF;
	text-decoration:none;
	}

#footer-nav ul li a:hover,
#footer-inner a:hover{
	border-bottom:1px dotted #FFF;
	}

.reference-box{
	text-align:center;
	margin:0 auto 30px;
	font-size:14px;
	}

ul.footer-banner-list{
	font-size: 0;
	line-height: 0;
	margin-top: 140px;
	}

ul.footer-banner-list li{
	display: inline-block;
	height: 50px;
	width: auto;
	margin-right:20px;
	}

ul.footer-banner-list li:last-child{margin-right: 0;}

#shinshu-heart{
	width: 100%;
	background: #FFF;
	padding-top: 40px;
	}

#shinshu-heart img{
	width:100px; height:72px;
	margin:0 auto 0;
	}

#copyright{
	font-size: 12px;
	text-align:center;
	padding: 30px 0 20px;
	background: #FFF;
	}

/* page
++++++++++++++++++++++++++++++*/
.page-title-box{
	position: absolute;
	top: 238px;
	left: 0; right: 0;
	margin: auto;
	}

.page-title-box h1{
	line-height: 100%;
	font-size: 15px;
	font-weight: normal;
	}

.page-title-box img{
	height: 24px;
	width: auto;
	margin: 0 auto;
	}

.page-title-box img#store-title{
	height: 45px;
	}

.page-contents h2{
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	font-size: 21px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	font-weight: 500;
	}

.page-contents h3.circle-icon{
	background:url(../../img/common/icon_h3.png) no-repeat 0 0;
	font-size: 18px;
	height: 21px;
	line-height: 21px;
	padding-left: 25px;
	margin-bottom: 20px;
	}

/* municipality
++++++++++++++++++++++++++++++*/
h1.municipality-title{
	position: relative;
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	font-size: 21px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	font-weight: 500;
	}

h1.municipality-title span{
	position: absolute;
	top: 0; right: 0;
	background: #FF6600;
	border-radius: 8px;
	padding: 5px 15px;
	line-height: 100%;
	font-size: 14px;
	color: #FFF;
	}

.municipality-image{
	margin: 0 auto 20px;
	}

.municipality-image img{
	width: 640px;
	height: auto;
	margin: 0 auto;
	}

.municipality-text{
	margin-bottom: 40px;
	}

.municipality-text .button-box a{
	width: 240px;
	background:#F38692;
	border: 1px solid #F38692;
	}

.municipality-text .button-box a:hover{
	background:#FFF;
	color:#F38692;
	}

.municipality-news-box{
	float: left;
	width: 380px;
	margin-right: 36px;
	background: #FFF;
	border: 1px solid #CCC;
	border-radius: 10px;
	}

.municipality-news-box h3{background: #95B961; padding: 10px 15px; border-radius: 10px 10px 0 0;}
.municipality-news-box h3 img{width: 70px; height: 17px;}

.municipality-event-box{
	float: left;
	width: 380px;
	background: #FFF;
	border: 1px solid #CCC;
	border-radius: 10px;
	}

.municipality-event-box h3{background: #6DABDE; padding: 10px 15px; border-radius: 10px 10px 0 0;}
.municipality-event-box h3 img{width: 106px; height: 17px;}

ul.municipality-topics-list{
	margin: 10px 15px;
	}

ul.municipality-topics-list li{
	border-bottom: 1px dotted #999;
	margin-bottom: 10px;
	padding-bottom: 10px;
	}

ul.municipality-topics-list li:last-child{border-bottom: none;}

ul.municipality-topics-list li span.municipality-topics-date{
	display: block;
	font-size: 13px;
	}

.municipality-map-box{
	background: #FFF;
	border: 1px solid #CCC;
	border-radius: 10px;
	margin-top: 40px;
	}

.municipality-map-box h3{background: #F36D14; padding: 10px 15px; border-radius: 10px 10px 0 0;}
.municipality-map-box h3 img{width: 126px; height: 20px;}

span#mytown:hover{
	cursor : pointer;
}

/* event
++++++++++++++++++++++++++++++*/
#title-container{
	position:relative;
	margin:0 auto;
	width:100%;
	background:#00A4EA;
	padding:40px 0;
	}

#title-box{
	width:167px; height:31px;
	margin:0 auto;
	overflow:hidden;
	}

#event-contents{
	}

#event-title-box{
	position: relative;
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	margin-bottom:40px;
	padding-bottom: 5px;
	}

#event-title-box #event-title-municipality{
	position: absolute;
	bottom: -27px; right: 0;
	display: inline-block;
	background: #F38692;
	border-radius: 8px;
	padding: 5px 12px;
	line-height: 100%;
	font-size: 14px;
	color: #FFF;
	}

#event-title-box h1{
	font-size:21px;
//	padding-right: 110px;
	font-weight: 500;
	}

.flier-link a{
	position:relative;
	padding-left:32px;
	}

.flier-link a:before{
	position:absolute;
	top:-5px; left:0;
	content:url(../../img/common/icon_pdf.png);
	}

.event-img{
	width: 640px;
	margin: 0 auto 20px;
	}

.event-copy{
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
	}

table.event-details-table{
	width:100%;
	margin:0 0 30px 0;
	border-collapse:collapse;
	}

table.event-details-table th{
//	padding:15px 20px;
	padding:10px 15px;
	text-align:center;
	font-weight:normal;
	width:120px;
	border:1px solid #CCC;
	background:#F4F5E4;
	font-size:14px;
	}

table.event-details-table td{
//	padding:15px 20px;
	padding:10px 15px;
	border:1px solid #CCC;
	word-break:break-all;
	}

table.event-details-table td span.info-tel:before{content:"TEL ";}

#map-title{
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 5px;
	}

#event-map{
	width:100%;
	height:350px;
	background:#EDEDED;
	}

/* event-list
++++++++++++++++++++++++++++++*/
ul.event-calendar-list{
	}

ul.event-calendar-list li.event-date{
	padding: 15px 0;
	background-color:#FFFCF3;
	}

ul.event-calendar-list li.event-date:nth-child(2n){
	background-color: #F4F5E4;
	}

.event-date-box{
	float: left;
	width: 130px;
	padding-top: 10px;
	}

.event-date-box .event-date-d{
	display: block;
	font-size: 24px;
	font-weight: 700;
//	padding:0 5px 0 20px;
	font-family:'Source Sans Pro', sans-serif;
	letter-spacing:1px;
	text-align:center;
}

.event-date-box .event-date-w{
	display: block;
//	padding-left: 20px;
	font-size: 16px;
	font-weight:700;
	font-family:'Source Sans Pro', sans-serif;
	text-align:center;
}

ul.event-calendar-list li ul{
	float: right;
	width: 650px;
	}

ul.event-calendar-list li ul li:not(:last-child){
	border-bottom: 1px dotted #999;
	margin-bottom: 15px;
	padding-bottom: 15px;
	}

ul.event-calendar-list li ul li a{color: #333;}
ul.event-calendar-list li ul li a:hover .event-calendar-text{text-decoration: underline;}

.event-calendar-image{
	float:left;
	width:200px;
	}

.event-calendar-text{
	float:right;
	width:420px;
	}

.event-calendar-area{
	display:inline-block;
	font-size:13px;
	color:#FFF;
	background: #F38692;
	border-radius: 8px;
	padding: 5px 15px;
	line-height: 100%;
	margin-bottom:5px;
	}

.event-calendar-title{
	font-size:18px;
	font-weight:700;
	margin-bottom:5px;
	}

.event-calendar-date{display:none;}
.event-calendar-place{font-size:14px; line-height:150%;}
.event-calendar-place:before{content:"場所：";}
.event-calendar-time{font-size:14px; line-height:150%;}
.event-calendar-time:before{content:"時間：";}

/* store
++++++++++++++++++++++++++++++*/
table.store-info-table{
	width: 100%;
	border-collapse: collapse;
	}

table.store-info-table th{
	width: 50%;
	border-bottom: 1px dotted #666;
	text-align: left;
	padding: 10px 10px 10px 30px;
	font-weight: normal;
	vertical-align: middle;
	}

table.store-info-table th.restaurant{background: url(../../img/store/icon01s.png) no-repeat 0 center;}
table.store-info-table th.hotel{background: url(../../img/store/icon02s.png) no-repeat 0 center;}
table.store-info-table th.retail_store{background: url(../../img/store/icon03s.png) no-repeat 0 center;}
table.store-info-table th.recycle{background: url(../../img/store/icon04s.png) no-repeat 0 center;}

table.store-info-table td{
	border-bottom: 1px dotted #666;
	padding: 10px;
	vertical-align: middle;
	}

table.store-info-table td:nth-child(2){width: 30%;}
table.store-info-table td:nth-child(3){width: 20%;}

table.store-info-table tr:last-child th,
table.store-info-table tr:last-child td{border-bottom: none;}

.store-explanation-image{
	float: left;
	width: 280px;
	margin:0 20px 10px 0;
	}
#store-map{
	width:100%;
	height:500px;
	}
#store-map-box{
	float: left;
	width: 400px;
	}

.store-map-area{
	float: right;
	width: 370px;
	}

.store-map-list li{
	margin-bottom: 20px;
	}

.store-map-list li h3{
	width:80px;
	margin:0 0 3px 0;
	padding:6px 20px;
	font-size:14px;
	line-height:14px;
	font-weight:normal;
	text-align:center;
	color:#FFF;
	background:#333;
	border-radius:5px;
	display:block;
	}

.store-map-list li span{
	font-size:14px;
	line-height:160%;
	}

.store-map-list li span a{
	text-decoration: underline;
	display:inline-block;
	white-space: nowrap;
	}

p.map-info{
	padding-top:10px;
	margin-bottom:0;
}

.icon-description-box{
	}

ul.icon-description-list{
	font-size: 0;
	line-height: 0;
	text-align: right;
	margin-top: 10px;
	}

ul.icon-description-list li{
	display: inline-block;
	font-size: 14px;
	line-height: 25px;
	height: 25px;
	overflow: hidden;
	vertical-align: bottom;
	padding: 0 10px 0 25px;
	background-position: 0 0;
	background-size: 21px 25px;
	background-repeat: no-repeat;
	}

ul.icon-description-list li:nth-child(1){background-image: url(../../img/store/icon01.png);}
ul.icon-description-list li:nth-child(2){background-image: url(../../img/store/icon02.png);}
ul.icon-description-list li:nth-child(3){background-image: url(../../img/store/icon03.png);}
ul.icon-description-list li:nth-child(4){background-image: url(../../img/store/icon04.png);}

ul.icon-description-list li:not(:last-child)::before{content: "e-プロ協力店（";}
ul.icon-description-list li:not(:last-child)::after{content: "）";}

.icon-description-box .button-box{
	margin-top: 30px;
	}

.icon-description-box .button-box a{
	background:#F36D14;
	border: 1px solid #F36D14;
	}

.icon-description-box .button-box a:hover{
	background:#FFF;
	color:#F36D14;
	}

/* store detail
++++++++++++++++++++++++++++++*/
h1.store-name{
	position: relative;
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	font-size: 21px;
//	margin-bottom: 35px;
	padding-bottom: 5px;
	font-weight: 500;
	}

h1.store-name span.store-name-area{
	float: left;
	background: #F38692;
	border-radius: 8px;
	padding: 5px 12px;
	line-height: 100%;
	font-size: 14px;
	color: #FFF;
	margin-right: 10px;
	}

span.store-name-cat{
	display: block;
	font-size: 12px;
//	width: 740px;
	text-align: right;
	margin-bottom: 10px;
	}

.store-detail-image{
	float: left;
	width: 240px;
	}

.store-detail-text{
	width: 540px;
	float: right;
	}

.store-detail-pr{
	margin-bottom: 20px;
	}

.store-detail-point{
	margin-bottom: 20px;
	}

.store-detail-point strong{
	position: relative;
	display: block;
	padding-left: 30px;
	background: url(../../img/store/icon_point.png) no-repeat 0 0;
	height: 24px;
	line-height: 24px;
	margin-bottom: 10px;
	}

.store-detail-point ul li{
	position: relative;
	margin-left: 15px;
	}

.store-detail-point ul li:after{
	display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1em;
  width: 8px;
  height: 3px;
  border-left: 2px solid #F36D14;
  border-bottom: 2px solid #F36D14;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
	}

.store-detail-table{
	border-collapse: collapse;
	width: 100%;
	}

.store-detail-table caption{
	text-align: left;
	font-weight: 700;
	padding-left: 30px;
	background: url(../../img/store/icon_shop.png) no-repeat 0 0;
	height: 24px;
	line-height: 24px;
	margin-bottom: 10px;
	}

.store-detail-table th{
	padding: 10px 15px;
	border: 1px solid #CCC;
	text-align: left;
	font-weight: normal;
	white-space: nowrap;
	background: #F4F5E4;
	}

.store-detail-table td{
	padding: 10px 15px;
	border: 1px solid #CCC;
	}

#store-detail-map{
	width: 100%;
	height: 400px;
	background: #ededed;
	margin: 30px 0;
	}

ul.other-store-list{
	font-size: 0;
	line-height: 0;
	}

ul.other-store-list li{
	display: inline-block;
	font-size: 15px;
	line-height: 180%;
	width: 250px;
	margin-right: 25px;
	text-align: center;
	vertical-align: top;
	}

ul.other-store-list li:nth-child(3){
	margin-right: 0;
}
ul.other-store-list li:nth-child(4){
	display:none;
}
ul.other-store-list li img{
	margin-bottom: 5px;
	}


/* company
++++++++++++++++++++++++++++++*/
h1.company-title{
	position: relative;
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	font-size: 21px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	font-weight: 500;
	}

.company-image{
	float: right;
	width: 300px;
	text-align: center;
	margin-left: 20px;
	margin-bottom:20px;
	}

.company-image span{
	font-size: 13px;
	line-height: 130%;
	}

.company-text{
//	float: left;
//	width: 480px;
	}

ul.company-case-list{
	font-size: 0;
	line-height: 0;
	margin-bottom: 20px;
	}

ul.company-case-list li{
	font-size: 15px;
	line-height:180%;
	display: inline-block;
	vertical-align: top;
	width: 260px;
	background: #FFF;
	margin:0 10px 20px 0;
	}

ul.company-case-list li:nth-child(3n){margin: 0 0 20px 0;}

ul.company-case-list li a{
	display: block;
	}

ul.company-case-list li .company-case-image{
	height: 160px;
	overflow: hidden;
	}

ul.company-case-list li .company-case-image img{
	width: 260px;
	height: auto;
	}

ul.company-case-list li .company-case-title{
	padding: 10px;
	min-height: 80px;
	}


/* topics
++++++++++++++++++++++++++++++*/
h1.topics-title{
	position: relative;
	background:url(../../img/index/title_back.gif) repeat-x 0 bottom;
	width: 100%;
	font-size: 21px;
	margin-bottom: 45px;
	padding-bottom: 5px;
	font-weight: 500;
	}

h1.topics-title span.topics-title-name{
	line-height: 150%;
//	display: inline-block;
//	width: 600px;
	}

h1.topics-title span.topics-title-date{
	position: absolute;
	bottom: -29px; right: 0;
	font-size: 14px;
	font-weight: normal;
	}

h1.topics-title span.topics-title-area,
h1.topics-title span.topics-title-all,
h1.topics-title span.topics-title-other{
	border-radius: 8px;
	padding: 5px 12px;
	line-height: 100%;
	font-size: 14px;
	color: #FFF;
	margin-right: 5px;
	}


h1.topics-title span.topics-title-area{background: #F38692;}
h1.topics-title span.topics-title-all{background: #128D94;}
h1.topics-title span.topics-title-other{background: #ADD278;}

#topics-box{
	margin-bottom: 20px;
	}

#topics-box .topics-image{
	float: right;
	display: inline;
	margin: 0 0 20px 20px;
	width: 300px;
	}

#topics-more-info p{
	margin-bottom: 10px;
	}

#topics-more-info p.topics-pdf::before{
	content: url(../../img/common/icon_pdf.png);
	}

.topics-bottom{
	margin:25px 0;
	padding:40px 0 0 0;
	border-top:1px dotted #CCC;
	font-size:12px;
	text-align:center;
	}
.topics-bottom p.previous{
	float:left;
	}
.topics-bottom p.next{
	float:right;
	}
.topics-bottom p.archive{
	}

/* event form
++++++++++++++++++++++++++++++*/
.entry-form-box{
	width: 100%;
	border: 1px solid #CCC;
	padding: 30px 0;
	}

table.entry-form-table{
	width:80%;
	margin: 0 auto 20px;
	border-collapse:collapse;
	}

table.entry-form-table caption{
	text-align: left;
	margin-bottom: 10px;
	font-weight: 700;
	}

table.entry-form-table tr{background:#FFFCF3;}
table.entry-form-table tr:nth-child(even){background:#FFF;}
table.entry-form-table th{
	width:180px;
	padding:20px 0px;
	font-weight:normal;
	text-align:center;
	vertical-align:top;
	border:none;
	}

table.entry-form-table td{
	padding:20px;
	border:none;
	}

table.entry-form-table td .bikou{
	font-size:13px;
	margin:0 0 5px 0;
	color:#555;
	}

span.hissu{color: red;}

table.entry-form-table span.hissu{
	margin:0 5px;
	font-weight:normal;
	}

table.entry-form-table td input.input-text{
	width:100%;
	height:2.5em;
	border:1px solid #CCC;
	background:#FFF;
	}

table.entry-form-table td label{
	margin:0 19px 0 0;
	display:inline-block;
}

table.entry-form-table td textarea{
	width:100%;
	border:1px solid #CCC;
	background:#FFF;
	}

table.entry-form-table td textarea.text-area-details{height:20em;}
table.entry-form-table td textarea.text-area-bikou{height:10em;}

.registration-submit{
	width: 80%;
	margin: 0 auto 20px;
	}

.registration-submit input.input-submit{
	width:50%;
	margin:30px 25% 0;
	padding:10px 0;
	font-size:16px;
	font-weight:bold;
	letter-spacing:1px;
	color:#FFF;
	background:#F38692;
	border:none;
	cursor:pointer;
	}
.registration-submit td input.input-submit:hover{
	background:#f06776;
	}

/* activity
++++++++++++++++++++++++++++++*/
.headline-title{
	 font-size: 18px;
	 font-weight: 700;
	 margin-bottom: 20px;
	 background: linear-gradient(transparent 60%, #ffff66 40%);
	 display: inline-block;
	}

.headline-box{
	padding: 5px;
	border-radius: 5px;
	background: #2E529D;
	}

.headline-box p{
	border: 2px dashed #FFF;
	border-radius: 5px;
	color: #FFF;
	margin: 0;
	padding: 15px 0;
	text-align: center;
	}

table.activity-table{
	width: 100%;
	border-collapse: collapse;
	margin: 5px 0 20px;
	}

table.activity-table02{
	width: 100%;
	border-collapse: collapse;
	margin: 5px 0;
	}

table.activity-table caption,
table.activity-table02 caption{
	font-weight: 700;
	text-align: left;
	margin-bottom: 5px;
	}

table.activity-table th,
table.activity-table02 th{
	background: #FFF;
	padding: 10px;
	text-align: center;
	border: 1px solid #CCC;
	}

table.activity-table td{
	background: #FFF;
	padding: 10px;
	border: 1px solid #CCC;
	text-align: center;
	}

table.activity-table02 td{
	background: #FFF;
	padding: 10px 0;
	border: 1px solid #CCC;
	text-align: center;
	width: 9%;
	}

table.activity-table02 td.nagano{
	background: #FFFF66;
	}

.activity-image-box{
	width: 640px;
	margin: 0 auto 20px;
	}

.activity-item-box{
	border: 1px solid #CCC;
	padding: 25px 30px 5px;
	margin-bottom: 30px;
	}

.activity-item-box h4{
	margin-bottom: 20px;
	}

.activity-item-box h4 span{
	display: inline-block;
	color: #FFF;
	background: #95B961;
	width: 20px;
	height: 20px;
	text-align: center;
	line-height: 20px;
	margin-right: 5px;
	}

.pink-box{
	border: 3px double #F28A95;
	padding: 20px;
	margin: 20px 0;
	}

.pink-box span{
	font-weight: 700;
	color: #F28A95;
	}

.banner-box-restyle{
	width: 280px;
	height: auto;
	margin-bottom: 20px;
	}

ul.ad-poster-list{
	font-size: 0;
	line-height: 0;
	margin-top: 10px;
	}

ul.ad-poster-list li{
	display: inline-block;
	width: 250px;
	margin-right: 25px;
	margin-bottom: 0;
	}

ul.ad-poster-list li:last-child{margin-right: 0;}

ul.ad-poster-list li:before{content:"";}

/* hint
++++++++++++++++++++++++++++++*/
.hint-box{
	width: 480px;
	float: left;
	display: inline;
	border: 1px solid #95B961;
	border-radius: 5px;
	min-height: 360px;
	margin-bottom: 20px;
	}

.hint-box:last-child{
	width: 280px;
	margin-left: 20px;
	}

.hint-box strong{
	display: block;
	position: relative;
	padding: 20px 20px 10px 48px;
	}

.hint-box strong::before{
	position: absolute;
	top:18px; left: 20px;
	}

.hint-box strong#home-todo::before{content:url(../../img/hint/icon_home.png);}
.hint-box strong#office-todo::before{content:url(../../img/hint/icon_office.png);}

.hint-box ul{
	padding: 0 20px 20px;
	}

.hint-box ul li{
	}

ul.hint-related-list{
	border-top:1px dashed #8AB84C;
	padding-top:50px;
	margin:0 auto 20px auto;
	font-size:0; line-height:0;
}
ul.hint-related-list li{
	width:373px;
	display:inline-block;
	vertical-align:top;
	margin:0 10px 10px 0;
	padding:10px;
	background:#FFF;
	border:1px solid #F3F3F3;
}
ul.hint-related-list li:nth-child(even){
	margin-right:0;
}
ul.hint-related-list li .thumbnail{
	width:140px;
	height:86px;
	overflow:hidden;
	margin-right:15px;
	float:left;
}
ul.hint-related-list li .text-box{
	font-size:14px;
	line-height:150%;
}


/* motion
++++++++++++++++++++++++++++++*/
.motion-poster-box{
	width: 240px;
	margin: 0 20px 20px 0;
	float: left;
	}

ul.motion-list{
	display: table;
	border-collapse:separate;
	border-spacing:20px 0;
	margin-bottom: 20px;
	}

ul.motion-list li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 180px !important;
	height: 180px !important;
	background: #FFF;
	border: 1px solid #CCC;
	}

ul.motion-list li a{
	display: block;
	}

ul.motion-list li a:hover{
	}

ul.motion-list li .motion-image{
	width: 80px;
	margin: 0 auto 10px;
	overflow: hidden;
	}

ul.motion-list li .motion-image img{
	height: 80px;
	width: auto;
	margin: 0 auto;
	}

ul.motion-list li .motion-title{
	margin: 0 5px;
	line-height: 140%;
	font-size: 13px;
	}


/* checklist
++++++++++++++++++++++++++++++*/
.checklist-box .hidden-box{
	display:none;
}
.check-inner{
	width:640px;
	text-align:left;
	padding:60px 50px 30px 50px;
}
.check-inner .icon-yes,
.check-inner .icon-no{
	width:160px;
	float:right;
	margin:-15px -15px 10px 15px;
}
.check-inner .icon-yes img,
.check-inner .icon-no img{
	transform:rotate(5deg);
}
.check-inner h3{
	font-size:24px;
	color:#DD0000;
	margin:0 0 15px -10px;
}
.check-inner p{
	font-size:18px;
	line-height:160%;
	margin-bottom:15px;
}
.check-inner p:last-of-type{margin-bottom:0;}

.checklist-box{
	border:1px solid #F0F0F0;
	background:#FFF;
	border-radius:5px;
	margin:0 0 15px 0;
	padding:25px;
	box-shadow:2px 2px 2px #CCC;
}
.page-contents .checklist-box h3{
	background:none;
	font-size:18px;
	height:auto;
	line-height:26px;
	padding-left:32px;
	margin-bottom:20px;
	position:relative;
	top:20px;
//	border-bottom:1px dashed #999;
//	padding-bottom:8px;
	float:left;
	width:500px;
}
.page-contents .checklist-box h3::before{
	content:"";
	width:24px; height:24px;
	background:url(../../img/checklist/checkbox_on.svg) no-repeat center center;
	background-size:24px auto;
	position:absolute;
	top:0; left:0;
}
.checklist-box ul.checklist-button-list{
	font-size:0;
	line-height:0;
	font-family:'Source Sans Pro', sans-serif;
	font-weight:700;
	letter-spacing:1px;
	text-transform:uppercase;
	width:172px;
	float:right;
}
.checklist-box ul.checklist-button-list li{
	width:80px;
	margin-right:10px;
	font-size:18px;
	line-height:80px;
	text-align:center;
	display:inline-block;
	vertical-align:top;
}
.checklist-box ul.checklist-button-list li:last-child{margin-right:0;}
.checklist-box ul.checklist-button-list li a{
	border:1px solid #999;
	border-radius:100%;
	display:block;
	text-decoration:none;
	transition:0.2s;
	color:#333;
	outline:none;
}
.checklist-box ul.checklist-button-list li a:hover{
	color:#FFF;
	transition:0.2s;
}
.checklist-box ul.checklist-button-list li:first-child a:hover{
	background:#DD0000;
	border:1px solid #DD0000;
}
.checklist-box ul.checklist-button-list li:last-child a:hover{
	background:#999;
	border:1px solid #999;
}

/* about
++++++++++++++++++++++++++++++*/
ol.about-list{
	margin-bottom: 40px;
	}

ol.about-list li{
	margin-bottom: 20px;
	}

ol.about-list li .about-list-image{
	float: left;
	width: 420px;
	margin-right: 20px;
	border: 1px solid #CCC;
	}

ol.about-list li p span{
	display: inline-block;
	color: #FFF;
	background: #95B961;
	width: 20px;
	height: 20px;
	text-align: center;
	line-height: 20px;
	margin-right: 5px;
	}

.kururun-image{
	width: 320px;
	float: left;
	margin-right: 20px;
	}

/* search result
++++++++++++++++++++++++++++++*/
ul.result-list{
	margin-bottom: 20px;
	}

ul.result-list li{
	padding: 10px 0;
	border-bottom: 1px dotted #999;
	}

ul.result-list li:last-child{border-bottom: none;}

/* plastic
++++++++++++++++++++++++++++++*/
.plastic-image{
	width: 300px;
	float: right;
	margin-left: 20px;
}

ul.plastic-approach-list{
	font-size: 0;
	line-height: 0;
	margin-bottom: 20px;
}

ul.plastic-approach-list li{
	display: inline-block;
	font-size: 14px;
	line-height: 150%;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	border: 2px solid #17B7F0;
	background: #f6fcfe;
	box-sizing: border-box;
	padding: 60px 30px 0;
	vertical-align:top;
	text-align: justify;
}

ul.plastic-approach-list li:nth-child(2){
	margin: 0 25px;
	border: 2px solid #A2CA56;
	background: #f7fbf1;
}
ul.plastic-approach-list li:nth-child(3){
	border: 2px solid #D83B61;
	background: #fdf3f5;
}

ul.plastic-approach-list li strong{
	display: block;
	margin-bottom: 10px;
	font-size: 18px;
	text-align: center;
	color: #17B7F0;
}

ul.plastic-approach-list li:nth-child(2) strong{color: #A2CA56;}
ul.plastic-approach-list li:nth-child(3) strong{color: #D83B61;}

.image-sticker{
	width: 200px;
	float: right;
	margin: 0 0 20px 20px;
}

.plastic-box{
	margin-bottom: 20px;
}

ol.plastic-target-list{
	font-size: 0;
	line-height: 0;
	counter-reset:plastic-target;
	margin-top: 30px;
}

ol.plastic-target-list li{
	display: inline-block;
  position: relative;
	font-size: 14px;
	line-height: 150%;
  padding: 20px 20px 10px;
  background: #FFF;
	border: 1px solid #2AAADE;
	border-radius: 10px;
	box-sizing: border-box;
	width: 385px;
	margin-bottom: 30px;
	vertical-align: top;
	min-height: 160px;
}

ol.plastic-target-list li:nth-child(1){width: 800px;}
ol.plastic-target-list li:nth-child(even){margin: 0 30px 30px 0;}

ol.plastic-target-list > li:before {
  position: absolute;
  top:-20px;  left: -20px;
  counter-increment: plastic-target;
  content: counter(plastic-target);
	color: #FFF;
  font-size: 18px;
  font-weight: 700;
	line-height: 40px;
	text-align: center;
  width: 40px; height: 40px;
	border-radius: 20px;
	background: #2AAADE;
}

ol.plastic-target-list li strong{
	display: block;
	font-size: 16px;
	margin-bottom: 15px;
}

ol.plastic-target-list li p{
	margin-bottom: 10px;
}

ol.plastic-target-list li p::before{
	content: "・";
}

.cooperation-box{
	background: #FFF;
	border: 1px solid #333;
	padding: 15px 20px 20px;
	margin-bottom: 20px;
}

.cooperation-approach-box{
	float: left;
	width: 470px;
//	margin-right: 10px;
	border-right: 1px dashed #333;
}

.cooperation-box-title{
	font-weight: 700;
	margin-bottom: 5px;
}

ul.cooperation-approach-icon,
ul.cooperation-group-icon{
	font-size: 0;
	line-height: 0;
}

ul.cooperation-approach-icon li,
ul.cooperation-group-icon li{
	display: inline-block;
	font-size: 13px;
	line-height: 13px;
	margin-right: 10px;
	margin-bottom: 10px;
}

ul.cooperation-approach-icon li:nth-child(6){margin-left: 62px;}

ul.cooperation-approach-icon li a{
	display: block;
	padding: 5px 7px;
	border-radius: 5px;
	color: #22B228;
	border: 1px solid #22B228;
}

ul.cooperation-approach-icon li:nth-child(1) a{color: #FD79BA; border: 1px solid #FD79BA;}
ul.cooperation-approach-icon li:nth-child(6) a{color: #0074D2; border: 1px solid #0074D2;}
ul.cooperation-approach-icon li:nth-child(7) a{color: #7733F4; border: 1px solid #7733F4;}
ul.cooperation-approach-icon li:nth-child(8) a{color: #55D6F9; border: 1px solid #55D6F9;}
ul.cooperation-approach-icon li:nth-child(9) a{color: #1FB296; border: 1px solid #1FB296;}

ul.cooperation-approach-icon li a:hover{text-decoration: none; color: #FFF; background: #22B228;}
ul.cooperation-approach-icon li:nth-child(1) a:hover{background: #FD79BA;}
ul.cooperation-approach-icon li:nth-child(6) a:hover{background: #0074D2;}
ul.cooperation-approach-icon li:nth-child(7) a:hover{background: #7733F4;}
ul.cooperation-approach-icon li:nth-child(8) a:hover{background: #55D6F9;}
ul.cooperation-approach-icon li:nth-child(9) a:hover{background: #1FB296;}

ul.cooperation-approach-icon li a.active{text-decoration: none; color: #FFF; background: #22B228;}
ul.cooperation-approach-icon li:nth-child(1) a.active{background: #FD79BA;}
ul.cooperation-approach-icon li:nth-child(6) a.active{background: #0074D2;}
ul.cooperation-approach-icon li:nth-child(7) a.active{background: #7733F4;}
ul.cooperation-approach-icon li:nth-child(8) a.active{background: #55D6F9;}
ul.cooperation-approach-icon li:nth-child(9) a.active{background: #1FB296;}

ul.cooperation-group-icon li a{
	display: block;
	padding: 5px 7px;
	border-radius: 5px;
	color: #666;
	border: 1px solid #666;
}

ul.cooperation-group-icon li a:hover{text-decoration: none; color: #FFF; background: #666;}
ul.cooperation-group-icon li a.active{text-decoration: none; color: #FFF; background: #666;}

.cooperation-group-box{
	float: right;
	width: 274px;
	padding-left: 13px;
}

.cooperation-search-box{
	margin-top: 10px;
}

.cooperation-search-box .cooperation-box-title{
	position: relative;
	padding-left: 20px;
	float: left;
	margin-right: 10px;
}

.cooperation-search-box .cooperation-box-title::before{
	content: "";
	position: absolute;
	bottom:0; left: 0;
	width: 20px; height: 20px;
	background-image: url(../../img/common/search.svg);
	background-position: 0 0;
	background-size: 18px 20px;
	background-repeat: no-repeat;
}

.search-text-box{
	width: 300px;
  height: 22px;
  border: 1px solid #CCC;
}
.cooperation-search-button{
	 width: 46px;
	 line-height: 24px;
	 background: #CCC;
	 border: none;
	 cursor: pointer;
	 margin: 0;
}

ul.cooperation-list{
//	margin-bottom: 40px;
}

ul.cooperation-list > li{
	border-bottom: 1px dashed #333;
}

ul.cooperation-list > li a{
	display: block;
	padding: 20px 0;
}

ul.cooperation-list li a .cooperation-list-info span{display: inline-block;; color: #333; margin-left: 10px;}
ul.cooperation-list li a:hover .cooperation-list-info span{text-decoration: none;}

ul.cooperation-list-icon{
	font-size: 0;
	line-height: 0;
	margin-top: 10px;
}

ul.cooperation-list-icon li{
	display: inline-block;
	font-size: 13px;
	line-height: 13px;
	margin-right: 10px;
	padding: 5px 7px;
	border-radius: 5px;
	color: #22B228;
	border: 1px solid #22B228;
	background: #FFF;
}

ul.cooperation-list-icon li:last-child{margin-right: 0;}
ul.cooperation-list-icon li.icon-01{color: #0074D2; border: 1px solid #0074D2;}
ul.cooperation-list-icon li.icon-02{color: #7733F4; border: 1px solid #7733F4;}
ul.cooperation-list-icon li.icon-03{color: #55D6F9; border: 1px solid #55D6F9;}
ul.cooperation-list-icon li.icon-04{color: #1FB296; border: 1px solid #1FB296;}

#more p.next{
	position: relative;
	width:320px;
	height:40px;
	line-height:40px;
	color:#FFF;
	background:#F38692;
	border: 1px solid #F38692;
	border-radius: 20px;
	font-weight:bold;
	font-size:14px;
	text-decoration:none;
	display:block;
	margin:40px auto 20px;
	text-align:center;
	cursor: pointer;
}

#more p.next:after{
	position: absolute;
	content: "＞";
	top: 0; right: 15px;
	transform: scaleX(0.7);
	}

.plastic-cooperation-image{
	float: left;
	width: 300px;
}

.plastic-cooperation-box{
	float: right;
	width: 480px;
}

h3.plastic-cooperation-detail-title{
	font-size: 15px;
	font-weight: 700;
  padding-left: 30px;
  background: url(../../img/activity/plastic/icon.png) no-repeat 0 0;
  height: 24px;
  line-height: 24px;
  margin: 40px 0 10px;
}

ul.plastic-cooperation-list{
	margin-bottom: 40px;
}

ul.plastic-cooperation-list > li{
	margin-bottom: 30px;
}

.plastic-cooperation-title{
	font-weight: 700;
	margin-bottom: 10px;
}

ul.plastic-cooperation-list > li ul li{
	margin-bottom: 10px;
}

ul.plastic-cooperation-list > li ul li span{
	display: inline-block;
	font-size: 13px;
	line-height: 13px;
	margin-right: 10px;
	padding: 5px 0;
	border-radius: 5px;
	color: #22B228;
	border: 1px solid #22B228;
	background: #FFF;
	text-align: center;
	width: 140px;
}

.plastic-back-link a{
	display: block;
	margin-top: 40px;
	text-align: center;
	text-decoration:underline;
}
.plastic-wait{
	margin:50px 0;
	text-align:center;
}
