@charset "UTF-8";
/* CSS Document */
/* コラム&新着情報CSS */

@media only screen and (min-width: 769px) {
	/*コラム一覧*/
	#column {
		position: relative;
		width: 100%;
		height: auto;
		padding: 120px 0 80px 0;
		background: #ebf8fd;
	}
	
	.column-p {
		text-align: center;
		font-size: 18px;
		margin-bottom: 40px;
	}
	
	#content {
		display: -webkit-flex;
		display: flex;
		overflow: visible;
		position: relative;
		z-index: 1;
		width: 1220px;
		height: auto;
		margin: 0 auto;
	}
	
	#main {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		z-index: 2;
		width: 990px;
		height: auto;
		padding-bottom: 80px;
		margin-right: 30px;
	}
	
	#side {
		position: relative;
		z-index: 2;
		width: 200px;
		height: auto;
	}
	
	#side p {
		text-align: left;
		font-size: 22px;
		font-weight: bold;
		margin-bottom: 10px;
	}
	
	#side a {
		display: block;
		position: relative;
		width: 90%;
		height: auto;
		padding: 15px 5%;
		margin-bottom: 5px;
		font-size: 18px;
		text-align: left;
		color: #000;
		background: #FFF;
		border: solid 2px #787878;
	}
	
	#side a span {
		position: absolute;
		top: 15px;
		right: 5%;
	}
	
	.column-loop {
		position: relative;
		width: 300px;
		height: 400px;
		margin: 0 30px 30px 0;
		background: #FFF;
		float: left;
	}
	
	.column-title {
		display: block;
		font-size: 18px;
		font-weight: bold;
		color: #000;
		margin: 0 0 0 10px;
	}
	
	.column-time {
		display: block;
		font-size: 18px;
		font-weight: bold;
		color: #787878;
		margin: 20px 0 5px 10px;
	}
	
	.column-category {
		position: absolute;
		top: 0;
		left: 0;
		width: 180px;
		height: 28px;
		padding: 10px;
		font-size: 18px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #41b6e6;
	}
	
	/*コラム個別*/
	#column-post {
		position: relative;
		width: 100%;
		height: auto;
		padding: 120px 0 0 0;
		background: #fff;
	}
	
	.column-post-title {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 40px;
	}
	
	.column-post-title h1 {
		color: #000;
		font-size: 32px;
		text-align: left;
		margin-bottom: 30px;
	}
	
	.column-post-time {
		color: #787878;
		font-size: 22px;
		font-weight: bold;
		margin-bottom: 30px;
		text-align: left;
	}
	
	.column-post-category {
		display: block;
		position: relative;
		width: 180px;
		height: 28px;
		padding: 10px;
		font-size: 18px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #41b6e6;
	}
	
	.post-back-button {
		display: block;
		position: relative;
		width: 300px;
		height: auto;
		padding: 10px 0;
		margin: 40px auto 0 auto;
		font-size: 22px;
		font-weight: bold;
		text-align: center;
		color: #FFF;
		background: #41b6e6;
	}
	
	#column01 {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0;
		background: #ebf8fd;
	}
	
	.column-content {
		position: relative;
		width: 990px;
		height: auto;
		margin: 0 auto;
	}
	
	.column-content h3 {
		text-align: left;
		font-size: 22px;
		margin-bottom: 40px;
	}
	
	.column-content h3 span {
		color: #1b60ae;
		font-size: 24px;
		margin-right: 20px;
	}
	
	.top-head h2 {
		position: absolute;
		bottom: -50px;
		left: 15%;
		width: 240px;
		height: auto;
		padding: 25px 0;
		line-height: 35px;
		text-align: center;
		font-size: 40px;
		color: #FFF;
		background: #41b6e6;
	}
	
	.top-head h2 span {
		font-size: 32px;
		text-decoration: underline;
	}
	
	/*コラム投稿*/
	.column-main {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.column-main p {
		font-size: 18px;
		margin-bottom: 30px;
	}
	
	.column-main img {
		display: block;
		position: relative;
		margin-bottom: 40px;
	}
	
	.column-text {
		position: relative;
		width: 100%;
		height: auto;
		padding: 0 0 40px 0;
	}
	
	.column-text h2 {
		font-size: 22px;
		padding-bottom: 10px;
		margin-bottom: 20px;
		border-bottom: solid 3px #4BBDED;
	}
	
	/*新着情報一覧*/
	#news {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0;
		background: #fff;
	}
	
	#news h2 {
		text-align: center;
		font-size: 32px;
		line-height: 40px;
		margin: 0 auto 70px auto;
	}
	
	#news h2 span {
		border-bottom: solid 3px #1b60ae;
	}
	
	.news-p {
		text-align: center;
		font-size: 18px;
		margin-bottom: 40px;
	}
	
	/*再記述*/
	.news-loop {
		display: block;
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 30px 30px 0;
		background: #FFF;
	}
	
	.news-loop .img {
		z-index: 0;
		position: relative;
		width: 300px;
		height: 250px;
		overflow: hidden;
	}
	
	.news-loop .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 250px;
		object-fit: cover;
		object-position: center;
	}
	
	.news-loop .text {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		margin: -25px auto 0 auto;
	}
	
	.news-loop .text font {
		display: inline-block;
		position: relative;
		width: 190px;
		height: auto;
		padding: 16px 0 16px 16px;
		font-size: 18px;
		font-weight: normal;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: left;
		color: #fff;
		background: #1b60ae;
		box-sizing: border-box;
	}
	
	.news-loop .text p {
		margin: 10px auto 5px auto;
		font-size: 22px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 28px;
		text-align: left;
		color: #000;
	}
	
	.news-loop .text time {
		font-size: 18px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: left;
		color: #787878;
	}
	
	.pagination {
		display: none;
	}
	
	
	.news-title {
		display: block;
		font-size: 22px;
		font-weight: bold;
		color: #000;
		margin: 35px 0 5px 0;
	}
	
	.news-time {
		display: block;
		font-size: 18px;
		font-weight: bold;
		color: #787878;
	}
	
	.news-category {
		position: absolute;
		top: 280px;
		left: 0;
		width: 180px;
		height: 28px;
		padding: 10px;
		font-size: 18px;
		text-align: left;
		color: #FFF;
		background: #1b60ae;
	}
	
	/*新着情報個別*/
	#news-post {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0;
		background: #fff;
	}
	
	.news-post-title {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 40px;
	}
	
	.news-post-title h1 {
		color: #000;
		font-size: 32px;
		text-align: left;
		margin-bottom: 20px;
	}
	
	.news-post-title h1 span {
		position: absolute;
		bottom: -10px;
		left: 0;
		border-bottom: solid 3px #1b60ae;
	}
	
	.news-post-time {
		color: #787878;
		font-size: 22px;
		font-weight: bold;
		margin-bottom: 20px;
		text-align: left;
	}
	
	.news-post-category {
		display: block;
		position: relative;
		width: 180px;
		height: 28px;
		padding: 10px;
		font-size: 18px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #1b60ae;
	}
	
	.post-back-button01 {
		display: block;
		position: relative;
		width: 300px;
		height: auto;
		padding: 10px 0;
		margin: 40px auto 0 auto;
		font-size: 22px;
		font-weight: bold;
		text-align: center;
		color: #FFF;
		background: -moz-linear-gradient(left, #4bbded, #1b60ae);
		background: -webkit-linear-gradient(left, #4bbded, #1b60ae);
		background: linear-gradient(to right, #4bbded, #1b60ae);
	}
	
	#news01 {
		position: relative;
		width: 1220px;
		height: auto;
		padding: 80px 0;
		margin: 0 auto;
	}
	
	#news01 h3 {
		position: relative;
		z-index: 3;
		width: 250px;
		margin: 0 auto 0 100px;
		padding: 0 20px;
		text-align: left;
		font-size: 22px;
		margin-bottom: 40px;
		background: #FFF;
	}
	
	.news-content {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 990px;
		height: auto;
		margin: 0 auto;
	}
	
	.news-line {
		position: absolute;
		z-index: 1;
		top: 80px;
		width: 100%;
		height: 30px;
		background: #1b60ae;
	}
	
	.news-line01 {
		position: relative;
		z-index: 2;
		top: 5px;
		width: 100%;
		height: 5px;
		background: #fff;
	}
	
	/*追記*/
	.news_post_text {
		position: relative;
		width: 100%;
		height: auto;
		font-size: 16px;
		font-weight: normal;
		letter-spacing: 1px;
		line-height: 26px;
		text-align: left;
	}
	
	.news_post_text p {
		font-size: 16px;
		font-weight: normal;
		letter-spacing: 1px;
		line-height: 26px;
		text-align: left;
	}
	
	.news_post_text img {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 20px auto 30px 0;
	}
	
	.news_post_text iframe {
		display: block;
		position: relative;
		width: 500px;
		height: 350px;
		margin: 20px auto 30px 0;
	}
	
}

@media only screen and (max-width: 768px) {
	/*コラム一覧*/
	#column {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 40px 0;
		background: #ebf8fd;
	}
	
	.column-p {
		text-align: center;
		font-size: 12px;
		margin-bottom: 20px;
	}
	
	#content {
		position: relative;
		z-index: 1;
		width: 300px;
		height: auto;
		margin: 0 auto;
	}
	
	#main {
		z-index: 2;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 20px;
	}
	
	#side {
		position: relative;
		z-index: 2;
		width: 200px;
		height: auto;
		margin: 0 auto;
	}
	
	#side p {
		text-align: left;
		font-size: 14px;
		font-weight: bold;
		margin-bottom: 5px;
	}
	
	#side a {
		display: block;
		position: relative;
		width: 90%;
		height: auto;
		padding: 5px 5%;
		margin-bottom: 2px;
		font-size: 12px;
		text-align: left;
		color: #000;
		background: #FFF;
		border: solid 2px #787878;
	}
	
	#side a span {
		position: absolute;
		top: 5px;
		right: 5%;
	}
	
	.side-sp {
		position: relative;
		z-index: 2;
		width: 200px;
		height: auto;
		margin: 0 auto 20px auto;
	}
	
	.side-sp p {
		text-align: left;
		font-size: 14px;
		font-weight: bold;
		margin-bottom: 5px;
	}
	
	.side-sp a {
		display: block;
		position: relative;
		width: 90%;
		height: auto;
		padding: 5px 5%;
		margin-bottom: 2px;
		font-size: 12px;
		text-align: left;
		color: #000;
		background: #FFF;
		border: solid 2px #787878;
	}
	
	.side-sp a span {
		position: absolute;
		top: 5px;
		right: 5%;
	}
	
	.column-loop {
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 30px 30px 0;
		padding-bottom: 20px;
		background: #FFF;
		float: left;
	}
	
	.column-title {
		display: block;
		font-size: 12px;
		font-weight: bold;
		color: #000;
		margin: 0 0 0 10px;
	}
	
	.column-time {
		display: block;
		font-size: 12px;
		font-weight: bold;
		color: #787878;
		margin: 10px 0 5px 10px;
	}
	
	.column-category {
		position: absolute;
		top: 0;
		left: 0;
		width: 120px;
		height: 20px;
		padding: 5px 10px;
		font-size: 12px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #41b6e6;
	}
	
	/*コラム個別*/
	#column-post {
		position: relative;
		width: 100%;
		height: auto;
		padding: 80px 0 0 0;
		background: #fff;
	}
	
	.column-post-title {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 20px;
	}
	
	.column-post-title h1 {
		color: #000;
		font-size: 20px;
		text-align: left;
		margin-bottom: 10px;
	}
	
	.column-post-time {
		color: #787878;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		text-align: left;
	}
	
	.column-post-category {
		display: block;
		position: relative;
		width: 120px;
		height: 20px;
		padding: 5px 10px;
		font-size: 12px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #41b6e6;
	}
	
	.post-back-button {
		display: block;
		position: relative;
		width: 180px;
		height: auto;
		padding: 5px 0;
		margin: 20px auto 0 auto;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
		color: #FFF;
		background: #41b6e6;
	}
	
	#column01 {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0;
		background: #ebf8fd;
	}
	
	.column-content {
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 auto;
	}
	
	.column-content h3 {
		text-align: left;
		font-size: 14px;
		margin-bottom: 20px;
	}
	
	.column-content h3 span {
		color: #1b60ae;
		font-size: 16px;
		margin-right: 10px;
	}
	
	.top-head h2 {
		position: absolute;
		bottom: -30px;
		left: 5%;
		width: 120px;
		height: auto;
		padding: 15px 0;
		line-height: 20px;
		text-align: center;
		font-size: 24px;
		color: #FFF;
		background: #41b6e6;
	}
	
	.top-head h2 span {
		font-size: 18px;
		text-decoration: underline;
	}
	
	/*コラム投稿*/
	.column-main {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	.column-main p {
		font-size: 12px;
		margin-bottom: 20px;
	}
	
	.column-main img {
		display: block;
		position: relative;
		margin-bottom: 30px;
	}
	
	.column-text {
		position: relative;
		width: 100%;
		height: auto;
		padding: 0 0 30px 0;
	}
	
	.column-text h2 {
		font-size: 14px;
		padding-bottom: 5px;
		margin-bottom: 10px;
		border-bottom: solid 2px #4BBDED;
	}
	
	/*新着情報一覧*/
	#news {
		position: relative;
		width: 300px;
		height: auto;
		padding: 40px 0;
		margin: 0 auto;
		background: #fff;
	}
	
	#news h2 {
		text-align: center;
		font-size: 20px;
		line-height: 20px;
		margin: 0 auto 20px auto;
	}
	
	#news h2 span {
		border-bottom: solid 3px #1b60ae;
	}
	
	.news-p {
		text-align: center;
		font-size: 12px;
		margin-bottom: 20px;
	}
	
	/*再記述*/
	.news-loop {
		display: block;
		position: relative;
		width: 140px;
		height: auto;
		margin: 0 5px 40px 5px;
		background: #FFF;
	}
	
	.news-loop .img {
		z-index: 0;
		position: relative;
		width: 140px;
		height: 100px;
		overflow: hidden;
	}
	
	.news-loop .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 100px;
		object-fit: cover;
		object-position: center;
	}
	
	.news-loop .text {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		margin: -14px auto 0 auto;
	}
	
	.news-loop .text font {
		display: inline-block;
		position: relative;
		width: 120px;
		height: auto;
		padding: 8px 0 8px 8px;
		font-size: 12px;
		font-weight: normal;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: left;
		color: #fff;
		background: #1b60ae;
		box-sizing: border-box;
	}
	
	.news-loop .text p {
		margin: 5px auto 3px auto;
		font-size: 16px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 22px;
		text-align: left;
		color: #000;
	}
	
	.news-loop .text time {
		font-size: 12px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #787878;
	}
	
	.pagination {
		display: none;
	}
	
	
	.news-title {
		display: block;
		font-size: 12px;
		font-weight: bold;
		color: #000;
		margin: 20px 0 5px 0;
	}
	
	.news-time {
		display: block;
		font-size: 12px;
		font-weight: bold;
		color: #787878;
	}
	
	.news-category {
		position: absolute;
		top: 130px;
		left: 0;
		width: 100px;
		height: 20px;
		padding: 2px 5px;
		font-size: 12px;
		text-align: left;
		color: #FFF;
		background: #1b60ae;
	}
	
	/*新着情報個別*/
	#news-post {
		position: relative;
		width: 100%;
		height: auto;
		padding: 40px 0;
		background: #fff;
	}
	
	.news-post-title {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 20px;
	}
	
	.news-post-title h1 {
		color: #000;
		font-size: 20px;
		text-align: left;
		margin-bottom: 10px;
	}
	
	.news-post-title h1 span {
		position: absolute;
		bottom: -10px;
		left: 0;
		border-bottom: solid 3px #1b60ae;
	}
	
	.news-post-time {
		color: #787878;
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 10px;
		text-align: left;
	}
	
	.news-post-category {
		display: block;
		position: relative;
		width: 130px;
		height: 20px;
		padding: 5px;
		font-size: 12px;
		font-weight: bold;
		text-align: left;
		color: #FFF;
		background: #1b60ae;
	}
	
	.post-back-button01 {
		display: block;
		position: relative;
		width: 180px;
		height: auto;
		padding: 5px 0;
		margin: 20px auto 0 auto;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
		color: #FFF;
		background: -moz-linear-gradient(left, #4bbded, #1b60ae);
		background: -webkit-linear-gradient(left, #4bbded, #1b60ae);
		background: linear-gradient(to right, #4bbded, #1b60ae);
	}
	
	#news01 {
		position: relative;
		width: 340px;
		height: auto;
		padding: 40px 0;
		margin: 0 auto;
	}
	
	#news01 h3 {
		position: relative;
		z-index: 3;
		width: 140px;
		margin: 0 auto 0 50px;
		padding: 0 10px;
		text-align: left;
		font-size: 12px;
		margin-bottom: 20px;
		background: #FFF;
	}
	
	.news-content {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 auto;
	}
	
	.news-line {
		position: absolute;
		z-index: 1;
		top: 40px;
		width: 100%;
		height: 15px;
		background: #1b60ae;
	}
	
	.news-line01 {
		position: relative;
		z-index: 2;
		top: 5px;
		width: 100%;
		height: 4px;
		background: #fff;
	}
	
	/*追記*/
	.news_post_text {
		position: relative;
		width: 100%;
		height: auto;
		font-size: 12px;
		font-weight: normal;
		letter-spacing: 0.5px;
		line-height: 18px;
		text-align: left;
	}
	
	.news_post_text p {
		font-size: 12px;
		font-weight: normal;
		letter-spacing: 0.5px;
		line-height: 18px;
		text-align: left;
	}
	
	.news_post_text img {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 10px auto 15px 0;
	}
	
	.news_post_text iframe {
		display: block;
		position: relative;
		width: 100%;
		height: 250px;
		margin: 10px auto 15px 0;
	}
	
	
	
}