@charset "UTF-8";

/* --------------------------------
 * base
 * -------------------------------- */

@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);


body {
	font-family: Lato, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
	font-size: 1.2rem;
	position: relative;
	background: #D8D8D8 url(../img/bg.png);
	padding: 10px 10px 0 10px;
}

a:link, a:visited, a:hover, a:active {
  color: #333;
  text-decoration: none;
}

.container {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0;
}


.agency {
	font-family: "refrigerator-deluxe";
	font-weight: 300;
}

/* --------------------------------
h2 {
	font-size: 2.4rem;
	padding: 1em 0;
	letter-spacing: 0.1em;
}
 * -------------------------------- */

@media screen and (max-width: 800px){
	h2 {
	    -moz-box-sizing: border-box;
	    background-color: #000;
	    width: 100%;
	    height: 0;
	    padding-top: 54.5%;
	    overflow: hidden;
	    margin-bottom: 20px; 
	    border-radius: 5px;
	}
	.iime h2 {
		background: url(../img/head2025_2.png) center center no-repeat;
	    background-size: cover;
	}
	.iime_rs h2 {
		background: url(../img/head_rs2_2.png) center center no-repeat;
		background-size: cover;
	}
}

@media screen and (min-width: 800px) {
	h2 {
	    -moz-box-sizing: border-box;
	    background-color: #000;
	    width: 100%;
	    height: 0;
	    padding-top: 16.5%;
	    overflow: hidden;
	    margin-bottom: 20px; 
	    border-radius: 5px;
	}
	.iime h2 {
		background: url(../img/head2025.png) center center no-repeat;
		background-size: cover;
	}
	.iime_rs h2 {
		background: url(../img/head_rs1_2.png) center center no-repeat;
		background-size: cover;
	}
}

/* --------------------------------
 * parts
 * -------------------------------- */
.heading {
  padding: 10px 12px;
  background: url('../img/bg-slash.gif');
  letter-spacing: 1px;
  font-size: 1.6rem;
}

.comingsoon {
	text-align: center;
	font-size: 20px;
	letter-spacing: 2px;
	font-weight: bold;
	line-height: 200px;
	color: #aaa;
}

a.button {
	width: 100%;
	display: inline-block;
	font-size: 1.6rem;
	height: 50px;
	line-height: 50px;
	border-radius: 4px;
	border: 1px solid #ccc; 
	background-color: #eee;
	text-align: center;
	color: #333;
	font-weight: bold;
	transition: 0.15s;
	cursor: pointer;
}

a.button:hover {
	background-color: #ddd;
}

a.button2 {
	width: 100%;
	display: inline-block;
	font-size: 4.5rem;
	border-radius: 4px;
	border: 1px solid #ccc; 
	background-color: #aec500;
	color: #fff;
	transition: 0.15s;
	padding: 15px;
}

a.button2:hover {
	background-color: #bccf2c;
}

a.button3 {
	width: 100%;
	display: inline-block;
	font-size: 2.5rem;
	border-radius: 4px;
	border: 1px solid #ccc; 
	background-color: #aec500;
	color: #fff;
	transition: 0.15s;
	padding: 8px;
}

a.button3:hover {
	background-color: #bccf2c;
}

/* --------------------------------
 * wrapper
 * -------------------------------- */
.wrapper {
}

.global-nav {
	width: 100%;
	height: 35px;
	background-color: #A9A9A9;
	border-radius: 5px;
	text-align: center;
	padding: 7px 0;
	margin-bottom: 15px;
	font-size: 0;
	
}

.global-nav li {
	display: inline-block;
	height: 21px;
	margin: 0 5px;
}

.global-nav li a {
  display: inline-block;
  padding: 0 8px;
  font-size: 1.3rem;
  line-height: 21px;
  color: #eee;
  letter-spacing: 1.5px;
  background-color: #909090;
  border-radius: 7px;
  transition: 0.15s;
}

.global-nav li a:hover {
  color: #fff;
  background-color: #777;
}

.global-nav li.active a {
  color: #fff;
  background-color: #333;
}


/* --------------------------------
 * main
 * -------------------------------- */
main.col-2 {
	width: 630px;
	float: left;
	padding-bottom: 15px;
}

main.col-2.contents {
	border-radius: 5px;
	padding: 0 20px;
	background-color: #fff;
	min-height: 655px;
}

main.col-1 {
	width: 100%;
	margin: 0 auto;
	border-radius: 5px;
	padding-bottom: 25px;
	background-color: #fff;
	min-height: 655px;
}

.contents p {
	font-size: 1.4rem;
	line-height: 1.5;
}

main.contents h3 {
	font-size: 2rem;
	line-height: 40px;
}

main.contents h3 + p {
	margin-top: -5px;
	color: #666;
}

main.contents h4 {
	font-size: 1.6rem;
	line-height: 30px;
	margin-top: 20px;
}

main.contents h5 {
	font-size: 1.4rem;
	line-height: 24px;
	margin-top: 5px;
}

main.contents h5 + p {
	font-size: 1.2rem;
}

main.contents .nav {
	font-size: 0;
	margin-bottom: 15px;
	border: 1px solid #ccc;
	padding: 0 0 7px;
	border-radius: 5px;
	background-color: #000;
	color: #fff;
}

main.contents .nav li {
	display: inline-block;
	margin: 0 15px 0 0;
}

main.contents .nav li a {
	display: block;
	padding: 8px 5px 0;
	border-bottom: 2px solid #aaa;
	color: #fff;
}

main.contents .nav li.active a {
	border-bottom: 2px solid #f18d00;
}

main.contents .nav li a:hover {
	border-bottom: 2px solid #f18d00;
}

@media screen and (max-width: 800px){
	main.contents .nav li a {
		font-size: 13px;
	}
}

@media screen and (min-width: 800px) {
	main.contents .nav li a {
		font-size: 16px;
	}
}

.p-title {
	width: 100%;
	text-align: center;
	font-size: 24px;
	color: #999;
	line-height: 100px;
	letter-spacing: 5px;
	font-weight: nomal;
}

.event-list .p-title{
	padding-top: 20px;
	line-height: 46px;
}

.event-list .selecter {
	height: 20px;
	margin: 0 auto 10px;
	text-align: center;
	font-size: 0;
}

.event-list .selecter li {
	display: inline-block;
	height: 100%;
}

.event-list .selecter li a {
	display: inline-block;
	height: 100%;
	width:130px;
	background-color: #999;
	margin: 0 8px 0 0;
	line-height: 20px;
	font-size: 1.3rem;
	color: #eee;
	text-align: center;
	letter-spacing: 1px;
	border-radius: 8px;
	transition: 0.2s;
}

.event-list .selecter li a:hover {
	background-color: #666;
	color: #fff;
}

.event-list .selecter li.active a {
	background-color: #DF7B00;
	color: #fff;
}

.event-single .title-area {
	text-align: center;
	padding: 38px 0;
	position: relative;
}

.event-single .title-area .p-title {
	line-height: 1;
}

.event-single .title-area .subtitle {
	font-size: 1.6rem;
	color: #888;
	letter-spacing:1px;
	font-weight: bold;
	position: absolute;
	bottom: 10px;
	left: 0;
	right: 0;
	margin: auto;
}


main .pager {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	height: 20px;
	line-height: 20px;
}

main.col-2 .banners {
	font-size: 0;
	margin-right: -15px;
}

main.col-2 .banners li {
	display: inline-block;
	margin-right: 15px;
	margin-bottom: 15px;
	border-radius: 5px;
}

main.col-2 .banners li a {
	display: block;
	width: 100%;
	height: 100%;
	transition: 0.3s;
	border-radius: 5px;
	border: 2px solid #ccc;
}

main.col-2 .banners li a:hover {
	opacity:0.7;
	border: 2px solid #F08C00;
}

main.col-2 .banners li img {
	width: 100%;
	border-radius: 5px;
}

main.col-2 .banners li.w3 {
	width: 630px;
}

main.col-2 .banners li.w2 {
	width: 410px;
	height: 150px;
}

main.col-2 .banners li.w1 {
	width: 205px;
	height: 150px;
}

main.col-2 .banners li.w {
	width: 307.5px;
	height: 150px;
}

main.col-2 .box {
	padding: 10px 10px 1px;
	background-color: #fff;
	border: 2px solid #ccc;
	border-radius: 5px;
}

main.col-2 .news ul {
	max-height: 217px;
	overflow-y: auto;
	margin-bottom: 15px;
}

main.col-2 .news li a {
	display: block;
	padding: 10px 0;
	color: #333;
	font-size: 0;
	transition: background-color 0.15s;
}

main.col-2 .news li:nth-of-type(even) a {
	background: url('../img/bg-slash.gif');
}

main.col-2 .news li a:hover {
	background-color: #fce2bf;
}

main.col-2 .news li .date {
	display: inline-block;
	width: 15%;
	text-align: center;
	letter-spacing: 1px;
	font-weight: bold;
	font-size: 1.0rem;
}

main.col-2 .news li .category {
	display: inline-block;
	width: 9%;
	border-radius: 5px;
	background-color: #d03c56;
	color: #fff;
	text-align: center;
	letter-spacing: 1px;
	font-size: 1.0rem;
	line-height: 16px;
}

main.col-2 .news li .category.news {
	background-color: #2c3c53;
}

main.col-2 .news li .title {
	display: inline-block;
	width: 76%;
	padding-left: 10px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.2rem;
}


/* --------------------------------
 * eventlist
 * -------------------------------- */
.event-list main .article {
	border-bottom: 1px solid #ddd;
}

.event-list main .article a {
	display: inline-block;
	padding: 15px;
	width: 100%;
}


.event-list main .article a:hover {
	background-color: #f4f4f4;
	transition: 0.15s;
}

.event-list main .article .image {
	float: left;
	width: 150px;
}

.event-list main .article .image img {
	width: 150px;
}

.event-list main .article .info {
	float: left;
	width: 600px;
	margin-left: 15px;
}

.event-list main .article .subtitle {
	font-size: 0.8em;
	color: #888;
}


.event-list main .article .e_title {
	font-size: 1.4em;
	line-height: 1.5;
}
.event-list main .article p {
	font-size: 1.4rem;
	line-height: 1.5;
}


.event-list .sub a.button {
	width: 100%;
	display: inline-block;
	font-size: 1.4rem;
	height: 50px;
	line-height: 50px;
	border-radius: 4px;
	border: 1px solid #ccc; 
	background-color: #eee;
	text-align: center;
}

.event-list .sub a.button:hover {
	background-color: #ddd;
	transition: 0.15s;
}

/* --------------------------------
 * content
 * -------------------------------- */

.content {
	margin: 0 auto;
}

.content.w700 {
	max-width: 700px;
}

.content.w630 {
	max-width: 630px;
}

.content h3 {
	font-size: 20px;
	color: #333;
	border-left: 3px solid #F08C00;
	padding-left: 15px;
	margin-bottom: 15px;
	line-height: 1.2;
}

.content section {
	margin-bottom: 30px;
}

.content p {
	margin-bottom:1em;
	font-size: 1.6rem;
	line-height: 1.8;
}

.content ul.circle {
	list-style-type :circle;
	padding-left: 18px;
}

.content li {
	line-height: 1.3;
	margin: 10px 0;
}

.privacy .content ul {
	list-style-type : decimal;
	padding-left: 1.4em;
}

.privacy .content p, privacy .content ul {
	font-size: 1.4rem;
	line-height: 1.5;
	margin: 10px 0;
}

.volunteer .content dd, .volunteer .content dt {
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	margin-bottom: 15px;
}

.volunteer .content dt {
	width: 120px;
}

.volunteer .content dd {
	width: 570px;
}

.event-single .term_place {
	border-top: 1px solid #ccc;
	line-height: 1.5;
	padding: 5px 0;
	letter-spacing: 2px;
}
.event-single .cats {
	text-align: center;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 5px 0;
}

.event-single .cats .cat {
	font-size: 1.2rem;
	line-height: 16px;
	padding: 0 5px;
	background-color: #F08C00;
	color: #fff;
	border-radius: 8px;
}

.event-single .main_image {
	height: 402px;
	position: relative;
	border-bottom: 1px solid #ccc;
}

.event-single .main_image img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	max-width: 400px;
	max-height: 400px;

}

.event-single .caption {
	border-bottom: 1px solid #ccc;
	text-align: center;
	font-size: 1.2rem;
	margin-top: 0;
	line-height: 1.2;
	padding: 1px 0 0;
}

.event-single .images {
	border-bottom: 1px solid #ccc;
	text-align: center;
	font-size: 0;
	margin-top: 0;
	padding: 5px 0;
}


.event-single .images li {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 3px;
}

.event-single .images li a {
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
	transition: 0.15s;
}

.event-single .images li a.active {
	border: 1px solid #F08C00;
}

.event-single .images li a.active img {
	opacity: 0.5;
}

.event-single .images li a:hover {
	border: 1px solid #F08C00;
}

.event-single .images li a:hover img {
	opacity: 0.5;
}

.event-single .images li img {
	width: 100%;
}

.event-single .desc {
	margin-top: 20px;
}

.event-single .content dl{
	margin: 50px 0;
	width:500px;
	list-style:none;
}

.event-single .content dt{
	display: inline-block;
	text-align: center;
	clear: both;
	width: 50px;
	float: left;
	min-height: 26px;
	font-size: 14px;
	line-height: 21px;
	padding-bottom: 5px;
	margin-bottom: 5px;
}

.event-single .content dd{
	border-bottom: 1px solid #ccc;
	padding: 0 0 5px 55px;
	min-height: 26px;
	font-size: 14px;
	line-height: 21px;
	margin-bottom: 5px;
}



/* --------------------------------
 * sub
 * -------------------------------- */
.sub {
	width:282px;
	float: right;
}

.sub section {
	margin-bottom: 15px;
	background-color: #fff;
	border-radius: 5px;
	border: 2px solid #ccc;
}

.sub .pr article {
	position: relative;
	margin-bottom: 15px;
	border: 2px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}

.sub .pr article .title {
	padding: 188px 15px 0;
	text-align: center;
	font-size: 1.4rem;
	color: #000;
	line-height: 2.8;
}

.sub .pr article .desc {
	padding: 0 15px;;
	font-size: 1.2rem;
	color: #000;
	line-height: 1.5;
	text-align: justify;
}

.sub .pr article img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border: 2px solid #fff;
	border-radius: 5px 5px 0 0;
}

.sub .pr article a {
	display: block;
	transition: 0.2s;
	border-radius: 5px;
	padding-bottom: 12px;
}

.sub .pr article a:hover {
	opacity: 0.7;
}


.sub .pickup {
	width: 100%;
	padding: 15px;
	height: 500px;
} 

/* --------------------------------
 * footer
 * -------------------------------- */

.footer {
	width: 100%;
	margin: 0 auto;
	background-color: #222;
	text-align: center;
	color: #fff;
	padding-top: 50px;
	position: relative;
	border-radius: 5px;
	margin-top: 15px;
}

.footer-nav {
	font-size: 0;
	margin-bottom: 50px;
}

.footer-nav li {
	display: inline-block;
}

.footer-nav li a {
	display: inline-block;
	font-size: 1.2rem;
	color: #fff;
	margin-right: 15px;
}

.footer .copyright {
	height: 30px;
	background-color: #333;
	letter-spacing: 3px;
	line-height: 30px;
	font-size: 1rem;
}


/* --------------------------------
 * others
 * -------------------------------- */
 


#outline table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	margin-bottom: 12px;
	font-size: 1.4rem;
	line-height: 1.3;
}

#outline caption {
	text-align: left;
	margin: 0 0 6px 0;
	font-size: 1.2em;
}

#outline th{
	width:14%;
	padding:4px;
	text-align: center;
	vertical-align: top;
	color: #444;
	background-color: #ddd;
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

#outline td{
	width:86%;
	padding:4px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	line-height: 1.8;
}




#outline dl {
	width: 100%;
}

#outline dt {
	clear: both;
	float: left;
	width: 60px;
}

#outline dd {
	margin: 0;
	margin-left: 60px;
}

#outline p{
	margin:0;
}

#sche table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	margin-bottom: 12px;
}

#sche caption {
	text-align: left;
	margin: 0 0 6px 0;
	font-size: 1.2em;
}

#sche th{
	padding:4px;
	color: #444;
	background-color: #ddd;
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	vertical-align: middle;
}

#sche td{
	padding:4px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

#sche dl {
	width: 100%;
}

#sche dt {
	clear: both;
	float: left;
	width: 90px;
}

#sche dd {
	margin: 0;
	margin-left: 90px;
}

#sche p{
	margin:0;
}


#entry table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	margin-bottom: 12px;
}

#entry caption {
	text-align: left;
	margin: 0 0 6px 0;
	font-size: 1.2em;
}

#entry th{
	width:15%;
	padding:6px;
	text-align: center;
	vertical-align: top;
	color: #444;
	background-color: #ddd;
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

#entry td{
	width:85%;
	padding:6px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}


#outline p{
	margin:0;
}

label input {
	vertical-align: -0.15em;
}
	

