@charset "utf-8";

/* ------------------------------------------------
   base
-------------------------------------------------*/

main{
	position:relative;
	width:100%;
	min-height:800px;
	padding:30px 0 230px;
	text-align:center;
	}
	main:before{
		content:" ";
		display:block;
		position:absolute;
		left:50%;
		bottom:0px;
		width:1371px;
		height:618px;
		margin:0 0 0 -685px;
		background:url(../../image/base/bg_sendai.jpg) no-repeat 0 top;
		background-size:cover;
		z-index:1;
}
#main_contents{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	position:relative;
	width:1000px;
	margin:0 auto;
	padding:0px;
	z-index:10;
	}
	#second_nav{
		position:relative;
		width:242px;
		text-align:left;
	}
	#container{
		position:relative;
		width:720px;
		padding:10px;
		text-align:left;
		background:rgba(255,255,255,0.5);
}

/* --- responsive --- */
@media only screen and (min-width:1371px){
	main:before{
		left:0;
		bottom:0px;
		width:100%;
		height:618px;
		margin:0px;
	}
}
@media only screen and (max-width:767px){
	main{
		min-height:0px;
		padding:20px 15px 100px;
	}
	#main_contents{
		width:100%;
	}
	#second_nav{
		display:none;
	}
	#container{
		width:100%;
		background:rgba(255,255,255,0.8);
	}
}

/* ------------------------------------------------
   main_contents
-------------------------------------------------*/

#container p{
	margin:0 0 10px;
	font-size:0.9rem;
	word-break: break-all;
}
@media only screen and (max-width:767px){
	#container p{
		margin:0 0 7px;
		font-size:0.8rem;
	}
}

/* ------------------------------------------------
   second_nav
-------------------------------------------------*/

#second_nav ul{
	position:relative;
	width:242px;
	margin:0 0 34px;
	padding:0px;
	list-style:none;
	}
	#second_nav ul li{
		position:relative;
		width:100%;
		min-height:55px;
		margin:0 0 8px;
		background:rgba(211,184,53,0.2);
		background:rgba(221,229,205,0.7);
		background:rgba(4,68,124,0.2);
	}
	#second_nav ul li a{
		display:-webkit-flex;
		display:flex;
		align-items:center;
		position:relative;
		width:100%;
		min-height:55px;
		padding:0 15px 0 20px;
		font-weight:bold;
		text-decoration:none;
		color:#04447C;
		color:rgba(4,68,124,1);
		z-index:10;
	}
	#second_nav ul li.active a{
		padding:0 15px 0px 13px;
		border-left:7px solid rgba(4,68,124,1);;
	}
	/* hover */
	#second_nav ul li:after{
		content:" ";
		position:absolute;
		top:0px;
		left:0px;
		width:0px;
		height:100%;
		background:#04447C;
		transition-duration:0.5s;
		z-index:1;
	}
	#second_nav ul li:hover a{
		color:#FFF;
	}
	#second_nav ul li:hover:after{
		width:100%;
}


#second_nav #sn_banner ul{
	margin:0 0 0px;
	}
	#second_nav #sn_banner ul li{
			position:relative;
			width:100%;
			min-height:0px;
			margin:0 0 8px;
			background:none;
	}
	#second_nav #sn_banner ul li a{
		width:100%;
		min-height:0px;
		padding:0px;
		z-index:10;
	}
	#second_nav #sn_banner ul li:after{
		display:none;
	}
	#second_nav #sn_banner ul li a:after{
		content:" ";
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:100%;
		background:rgba(255,255,255,0);
		transition-duration:0.5s;
		z-index:1;
	}
	#second_nav #sn_banner ul li:hover a:after{
		background:rgba(255,255,255,0.3);
		-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.7) inset;
		-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.7) inset;
		box-shadow: 0px 0px 5px rgba(0,0,0,0.7) inset;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
}


/* ------------------------------------------------
   h
-------------------------------------------------*/

#container h2{
	position:relative;
	padding:50px 20px;
	font-weight:bold;
	font-size:1.7rem;
	font-family: 'Noto Serif JP', serif;
	text-align:center;
	color:#04447C;
	line-height:1.5;
}

#container h3{
	position:relative;
	margin:0 0 10px;
	padding:7px 15px;
	font-weight:normal;
	font-size:1.1rem;
	text-align:center;
	background:#04447C;
	color:#FFF;
}

#container h4{
	position:relative;
	margin:0 0 10px;
	padding:0px;
	font-weight:bold;
	font-size:0.9rem;
	text-align:left;
	border-bottom:2px solid #04447C;
	color:#04447C;
}

#container .h0{
	padding:0px !important;
	border-bottom:none;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	#container h2{
		padding:10px 20px 40px;
	}
}

/*-----------------------------------
  ex head decoration
-----------------------------------*/
/* .arrow */
#main_contents .arrow{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 0 0px 30px;
	font-weight:normal;
	font-size:1.3em;
	text-align:left;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none;
	background:none;
	color:#222222;
	}
	#main_contents .arrow:before{
		content:" ";
		display:block;
		position:absolute;
		top:3px;
		left:0px;
		width:20px;
		height:20px;
		margin-left:0;
		background:url(../../image/base/arrow_g.png) no-repeat 0 0;
	}
	#main_contents .arrow:after{
		display:none;
}
/* .arrowline */
#main_contents .arrowline{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 10px 10px 30px;
	font-weight:normal;
	font-size:1.3em;
	text-align:left;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none;
	background:url(../../image/base/arrow_border.png) repeat-x 0 bottom;
	color:#222222;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
	#main_contents .arrowline:before{
		content:" ";
		display:block;
		position:absolute;
		top:3px;
		left:0px;
		width:20px;
		height:20px;
		margin-left:0;
			background:url(../../image/base/arrow_g.png) no-repeat 0 0;
	}
	#main_contents .arrowline:after{
		display:none;
}

/* .lineonly */
#main_contents .lineonly{
	display:block;
	position:relative;
	width:770px;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 0 10px 0px;
	font-weight:bold;
	font-size:1em;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none;
	background:url(../../image/base/arrow_border.png) repeat-x 0 bottom;
	color:#0080CC;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	}
	.base_green #main_contents .lineonly{
		border:none;
		background:url(../../image/base/arrow_border.png) repeat-x 0 bottom;
		color:#609F26;
	}
	#main_contents .lineonly:before,
	#main_contents .lineonly:after{
		display:none;
}

/*-----------------------------------
  line
-----------------------------------*/

#main_contents .line{
	margin-bottom:17px;
	padding-bottom:10px;
	border-bottom:2px dotted rgba(0,83,58,0.5);
}
#main_contents p.line{
	margin-bottom:17px;
	padding-bottom:17px;
	border-bottom:2px dotted rgba(0,83,58,0.5);
}
#main_contents .box.line{
	margin-bottom:20px;
	padding-bottom:20px;
	border-bottom:2px dotted rgba(0,83,58,0.5);
}
#main_contents .noline{
	margin-bottom:0px;
	padding-bottom:0px;
	border-bottom:0px !important;
}
#main_contents .border{
	margin-bottom:17px;
	padding-bottom:17px;
	border-bottom:2px solid rgba(0,83,58,0.3);
}

#main_contents .line_b{
	margin-bottom:17px;
	padding-bottom:10px;
	border-bottom:1px dotted rgba(0,0,0,0.5);
}

/*-----------------------------------
  ul
-----------------------------------*/

#main_contents ul{
	text-align:left;
	font-size:0.9rem;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents ul{
		font-size:0.8rem;
	}
}
ul.disc{
	margin-bottom:15px;
	padding-left:20px;
	list-style:disc !important;
	}
	ul.disc > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.normal,
ol.normal{
	margin-bottom:15px;
	padding-left:0px !important;
	list-style:none !important;
	}
	ul.normal > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.num,
ol.num{
	margin-bottom:15px;
	padding-left:20px;
	list-style:decimal !important;
	}
	ul.num > li,
	ol.num > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.abc{
	margin-bottom:15px;
	padding-left:20px;
	list-style:lower-latin !important;
	}
	ul.abc > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.roma{
	margin-bottom:15px;
	padding-left:20px;
	list-style:lower-roman !important;
	}
	ul.roma > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.roma2{
	margin-bottom:15px;
	padding-left:20px;
	list-style:upper-roman !important;
	}
	ul.roma2 > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.try{
	}
	ul.try li{
		position:relative;
		line-height:1.5;
		margin-bottom:6px;
		padding-left:15px;
	}
	ul.try li:after{
		display:block;
		content:" ";
		position:absolute;
		top:2px;
		left:2px;
		border: 6px solid transparent;
		border-left: 6px solid #619DE5;
	}
	.base_green ul.try li:after{
		border-left: 6px solid rgba(111,185,44,1);
}
ul.check{
	padding-left:20px;
	}
	ul.check li{
		position:relative;
		line-height:1.5;
		list-style-image:url(../../image/base/check.png);
}
ol{
	margin-bottom:15px;
	padding-left:20px;
	list-style:decimal;
	}
	ol > li{
		line-height:1.5;
		margin-bottom:7px;
}

/* ------------------------------------------------
   btn
-------------------------------------------------*/

.btn{
	display:inline-block;
	position:relative;
	background:linear-gradient(0deg, rgba(0,83,58,1), rgba(0,83,58,0.7));
	background:linear-gradient(0deg, rgba(4,68,124,1), rgba(4,68,124,0.7));
	-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 5px rgba(0,0,0,0.2);
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	}
	.btn a{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:100%;
		height:100%;
		padding:10px 25px;
		font-weight:bold;
		color:#FFF;
		text-decoration:none;
	}
	.btn a:hover{
		background:rgba(255,255,255,0.1);
}


/* ------------------------------------------------
   colorbox
-------------------------------------------------*/

.colorbox{
	display:inline-block;
	position:relative;
	padding:10px 15px;
	background:rgba(0,64,151,0.1);
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	}
	.colorbox p:last-child{
		margin-bottom:0px !important;
}

/* ------------------------------------------------
   photo
-------------------------------------------------*/

ul.photo{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	width:100%;
	list-style:none;
}
ul.photo li,
ul.photo.co2 li{
	width:49%;/* 343px w686px x h386px */
	margin:0 0 15px;
}
ul.photo.co3 li{
	width:226px;/* 32.4% 226px 452px */
	margin:0 0 10px;
	}
	ul.photo.co3 li:nth-child(3n+2):last-child{
		margin:0 33.8% 10px 0;
}
ul.photo.co4 li{
	width:24%;/* 32.4% 226px 452px */
	margin:0 0 10px;
	}
	ul.photo.co4 li:nth-child(4n+2):last-child{
		margin:0 50% 10px 0;
	}
	ul.photo.co4 li:nth-child(4n+3):last-child{
		margin:0 26% 10px 0;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	ul.photo.co3 li{
		width:49% !important;
		margin:0 0 10px;
	}
	ul.photo.co4 li{
		width:49% !important;
		margin:0 0 10px;
	}
}
