 @import url("font-awesome.min.css");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800");

/*
	Solarize by Osoft
	hikosaka@osaka-soft.co.jp
	Released for free under the Creative Commons Attribution 3.0 license (Osoft.co/license)
*/

/* Basic */

body {
	background: rgba(246, 246, 246, 0.5);
}

		body.loading * {
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-o-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-o-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
		}

body, input, select, textarea {
	color: #000000;
	font-family: 'Open Sans', sans-serif;
	font-size: 12pt;
	font-weight: 300;
	line-height: 1.65em;
	margin-top: 52px;
}

	a {
		/*color: #82b440;*/
		text-decoration: underline;
	}

	strong, b {
		font-weight: 700;
	}

	em, i {
		font-style: italic;
	}

	p, ul, ol, dl, table, blockquote {
		margin: 0 0 2em 0;
	}

	p {
		line-height: 1.8em;
	}

		p.medium {
			font-size: 1.4em;
		}

	h1, h2, h3, h4, h5, h6 {
		color: inherit;
		font-weight: 700;
	} 

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h2 {
		font-size: 1.5em;
	}

	h3 {
		font-size: 1.25em;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

hr {
	border-top: solid 1px #0000ff;
	border: 1;
	margin-bottom: 1em;
}

	blockquote {
		border-left: solid 0.5em #82b440;
		font-style: italic;
		padding: 1em 0 1em 2em;
	}

	section.special, article.special {
		text-align: center;
	}

	header.major {
		padding-bottom: 0.5em;
		text-align: center;
		/*text-transform: uppercase;*/
	}

	/* スマホ・タブレット向け（1024px以下） */
	@media screen and (max-width: 1024px) {
		header.major {
			padding-bottom: 1.5em;
		}
	}

		header.major h2 {
			font-size: 1.8em;
			/*font-weight: 0;*/
		}

		header.major .byline {
			display: block;
			padding-top: 1em;
			letter-spacing: 1px;
			font-size: 1.4em;
		}
		
		header.major .byline2 {
			display: block;
			padding-top: 0.1em;
			letter-spacing: 1px;
			font-size: 1.4em;
		}

	header.minor {
		text-align: left;
		/*text-transform: uppercase;*/
	}

		header.minor h2 {
			font-size: 2.6em;
			font-weight: 700;
		}

		header.minor .byline {
			display: block;
			padding-top: 1em;
			letter-spacing: 1px;
			font-size: 1.4em;
		}
		
		header.minor .byline2 {
			display: block;
			padding-top: 0.1em;
			letter-spacing: 1px;
			font-size: 1.4em;
		}
	footer > :last-child {
		margin-bottom: 0;
	}

	footer.major {
		padding-top: 3em;
	}
		header.major .byline3 {
			/*text-transform: uppercase;*/
			text-align: left;
			padding: 1em 0em 1em 0em;
			color: inherit;
			opacity: 1;
			font-weight: bold;
			font-size: 12pt;
		}

		/* Form */

		input[type="text"],
		input[type="password"],
		input[type="email"],
		textarea {
			-moz-appearance: none;
			-webkit-appearance: none;
			-o-appearance: none;
			-ms-appearance: none;
			appearance: none;
			background: none;
			border: solid 1px #0068b7;
			color: inherit;
			display: block;
			outline: 0;
			padding: 0.75em;
			text-decoration: none;
			width: 100%;
		}

			input[type="text"]:focus,
			input[type="password"]:focus,
			input[type="email"]:focus,
			textarea:focus {
				border-color: #001e43;
			}

	input[type="text"],
	input[type="password"],
	input[type="email"] {
		line-height: 1em;
	}

	::-webkit-input-placeholder {
		color: inherit;
		opacity: 0.5;
		position: relative;
		top: 3px;
	}

	:-moz-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	::-moz-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	:-ms-input-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	.formerize-placeholder {
		color: rgba(85, 85, 85, 0.5) !important;
	}

/* Image */

	.image {
		border: 0;
		position: relative;
	}

		.image.fit {
			display: block;
		}

			.image.fit img {
				display: block;
				width: 100%;
				min-height:30%;
				max-height:30%;
			}

		.image.feature {
			display: block;
			margin: 0 0 2em 0;
		}

			.image.feature img {
				display: block;
				min-height:30%;
				max-height:30%;
				width: 100%;
			}

/* Icon */

	.icon {
		position: relative;
	}

		.icon:before {
			content: "";
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			font-family: FontAwesome;
			font-style: normal;
			font-weight: normal;
			text-transform: none !important;
		}

		.icon > .label {
			display: none;
		}

/* Lists */

	ol.default {
		list-style: decimal;
		padding-left: 1.25em;
	}

		ol.default li {
			padding-left: 0.25em;
		}

	ul.default {
		margin: 0;
		padding: 0;
		list-style: none;
	}

		ul.default li {
			padding: 0.40em 0em;
		}

	ul.icons {
		cursor: default;
		padding-bottom: 2em;
	}

		ul.icons li {
			display: inline-block;
			line-height: 1em;
			padding: 0.5em 1em;
		}

			ul.icons li:first-child {
				padding-left: 0;
			}

			ul.icons li span {
				display: none;
			}

			ul.icons li a {
				text-decoration: none;
				font-size: 2em;
				color: inherit;
				opacity: 0.2;
				-moz-transition: all 0.35s ease-in-out;
				-webkit-transition: all 0.35s ease-in-out;
				-o-transition: all 0.35s ease-in-out;
				-ms-transition: all 0.35s ease-in-out;
				transition: all 0.35s ease-in-out;
			}

			ul.icons li a:hover {
				color: inherit;
				opacity: 1;
			}
			
			
	


	ul.actions {
		cursor: default;
	}

		ul.actions:last-child {
			margin-bottom: 0;
		}

		ul.actions li {
			display: inline-block;
			padding: 0 0 0 1.5em;
		}

			ul.actions li:first-child {
				padding: 0;
			}

		ul.actions.vertical li {
			display: block;
			padding: 1.5em 0 0 0;
		}

			ul.actions.vertical li:first-child {
				padding: 0;
			}

	ul.special-icons {
		margin: 0em;
		padding: 0em;
	}

		ul.special-icons > li {
			position: relative;
			padding: 0.50em 0em 0.50em 0em;
		}

		ul.special-icons > li:before {
			position: absolute;
			left: 0;
			top: 2em;
			display: block;
			background: none;
			font-size: 2em;
			border-radius: 5px;
		}

		ul.special-icons > li:first-child {
			border-top: none;
		}

		ul.special-icons h3 {
			margin-bottom: 0.80em;
			line-height: 2em;
			/*text-transform: uppercase;*/
			font-weight: 700;
			font-size: 1.2em;
		}

		ul.special-icons span {
			line-height: 190%;
		}

		ul.special-icons .fa {
			float: left;
			display: inline-block;
			padding-right: 1em;
			font-size: 1.4em;
			color: #82b440;
		}

		ul.special-icons p {
			padding-left: 2.7em;
		}

/* Tables */

	table {
		width: 100%;
	}

		table.default {
			width: 100%;
		}

			table.default tbody tr {
				border-bottom: solid 1px #82b440;
			}

			table.default td {
				padding: 0.5em 1em 0.5em 1em;
			}

			table.default th {
				font-weight: 700;
				padding: 0.5em 1em 0.5em 1em;
				text-align: left;
			}

			table.default thead {
				background: #555555;
				color: #fff;
			}

	/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-o-appearance: none;
		-ms-appearance: none;
		appearance: none;
		background: none;
		border-radius: none;
		border: 2px solid;
		border-color: #00bfff;
		color: #00bfff;
		cursor: pointer;
		display: inline-block;
		padding: 0.90em 1.2em;
		letter-spacing: 1px;
		text-align: center;
		text-decoration: none !important;
		/*text-transform: uppercase;*/
		font-size: 1.4em;
		-moz-transition: all 0.35s ease-in-out;
		-webkit-transition: all 0.35s ease-in-out;
		-o-transition: all 0.35s ease-in-out;
		-ms-transition: all 0.35s ease-in-out;
		transition: all 0.35s ease-in-out;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		.button:hover {
			background: #00bfff;
			color: white;
		}

		input[type="submit"].alt,
		input[type="reset"].alt,
		input[type="button"].alt,
		.button.alt {
			border-color: inherit;
			color: inherit;
		}

			input[type="submit"].alt:hover,
			input[type="reset"].alt:hover,
			input[type="button"].alt:hover,
			.button.alt:hover {
				background: white;
				color: #82b440;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		.button.small {
			font-size: 0.8em;
		}



/* Wrapper */

	.wrapper {
		padding: 2em 0em 1em 0em;
	}

		/* タブレット・スマホ（1024px以下） */
		@media screen and (max-width: 1024px) {
			.wrapper.menu {
				padding: 1.5em 0em 2em 0em !important;
			}
		}

		/* スマホ（600px以下） */
		@media screen and (max-width: 600px) {
			.wrapper.menu {
				padding: 1.2em 0em 1.5em 0em !important;
			}
		}

.wrapper.style1 {
	padding: 0em;
	background: #ffffff url(../images/banner.jpg) no-repeat;
	background-size: 120% auto;
	/*margin-top: 4em;*/
}

		.wrapper.style2 {
			background: #ffffff;
		}

			.wrapper.style2 .major {
				text-align: left !important;
			}

				.wrapper.style2 .major h2 {
					display: block;
					margin-bottom: 0.70em;
					letter-spacing: 1px;
					line-height: 1.4em;
					/*text-transform: uppercase;*/
					font-size: 1.8em;
					font-weight: 400;
				}

				.wrapper.style2 .major .byline {
					letter-spacing: normal;
					line-height: 1.6em;
					text-transform: capitalize;
					font-size: 1.4em;
				}

			.wrapper.style2 h3 {
				display: block;
				margin-bottom: 1em;
				letter-spacing: 1px;
				line-height: 1.4em;
			/*text-transform: uppercase;*/
				font-size: 1.6em;
				font-weight: 400;
			}

		.wrapper.style3 {
			padding-bottom: 6em;
			background: #82b440;
			text-align: center;
			color: white;
		}

			.wrapper.style3 .container {
				padding-left: 6em;
				padding-right: 6em;
			}

			.wrapper.style3 p {
				font-size: 1.6em;
			}

		.wrapper.style4 {
			background: white;
			margin-top: 4em;
		}

		.wrapper.style4  td{
			vertical-align: top;
		}

		.wrapper.style5 {
			background: #82b440;
			text-align: center;
			color: white;
		}

			.wrapper.style5 .image {
				display: block;
				width: 60%;
				margin: 0em auto 2em auto;
			}

				.wrapper.style5 .image img {
					border-radius: 50%;
					/*border: 10px solid;*/
					border-color: white;
				}

/*    j   [ A C R   */

.wrapper.menu {
	background: #006400;
	text-align: center;
	color: #FFFFFF;
	/*border-bottom: 1px solid #FFFFFF*/
}

	.wrapper.menu .container {
		text-align: center;
		padding-left: 15%;
		padding-right: 15%;
		padding-bottom: 0.5em
	}
			
			.wrapper.menu .image {
				color:black;
				font-size: 1em;
				display: block;
				width: 60%;
				margin: 0em auto 0em auto;
			}
			
				.wrapper.menu .image img {
					border-radius: 50%;
					border-color: white;
					transition-property: scale;
					-moz-transition: all 0.15s ease-in-out;
					-webkit-transition: all 0.15s ease-in-out;
					-o-transition: all 0.15s ease-in-out;
					-ms-transition: all 0.15s ease-in-out;
					transition: all 0.15s ease-in-out;
					transform: scale(0.92);
				}
				
				.wrapper.menu .image img:hover {
					transform: scale(1);
				}
			
				


/*  ̗p    */

		.wrapper.recruit {
			padding: 10em 0em 10em 0em;
			background: #f2f2f2;
			text-align: center;
		}

			.wrapper.recruit .image {
				display: block;
				width: 60%;
				margin: 0em auto 2em auto;
			}

				.wrapper.recruit .image img {
					border-radius: 50%;
					border: 10px solid;
					border-color: white;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.recruit .image img:hover {
					opacity: 0.85;
					border-color: black;
				}
				
				.wrapper.recruit a {
					color: inherit;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.recruit a:hover {
					color: inherit;
					opacity: 0.85;
				}
		

/*  C x   g n */

.wrapper.Events {
	padding: 2em 0em 10em 0em;
	background: #f2f2f2;
	text-align: center;
	margin-top: 4em;
}

			.wrapper.Events .image {
				display: block;
				width: 60%;
				margin: 0em auto 2em auto;
			}

				.wrapper.Events .image img {
					border-radius: 50%;
					border: 10px solid;
					border-color: white;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.Events .image img:hover {
					opacity: 0.85;
					border-color: black;
				}
				
				.wrapper.Events a {
					color: inherit;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.Events a:hover {
					color: inherit;
					opacity: 0.85;
				}
		

/*  p b P [ W */

		.wrapper.package {
			padding: 2em 0em 4em 0em;
			background: #f2f2f2;
			text-align: center;
		}

			.wrapper.package .image {
				display: block;
				width: 60%;
				margin: 0em auto 2em auto;
			}

				.wrapper.package .image img {
					border-radius: 50%;
					border: 10px solid;
					border-color: white;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.package .image img:hover {
					opacity: 0.85;
					border-color: black;
				}
				
				.wrapper.package a {
					color: inherit;
					opacity: 0.7;
					-moz-transition: all 0.35s ease-in-out;
					-webkit-transition: all 0.35s ease-in-out;
					-o-transition: all 0.35s ease-in-out;
					-ms-transition: all 0.35s ease-in-out;
					transition: all 0.35s ease-in-out;
				}
				.wrapper.package a:hover {
					color: inherit;
					opacity: 0.85;
				}
				.wrapper.package p.img12 img {
					max-width: 800px; /*  ő啝 */
					width:80%;
				}
				.wrapper.package p.img8 img {
					max-width: 600px; /*  ő啝 */
					width:80%;
				}
				.wrapper.package p.img6 img {
					max-width: 400px; /*  ő啝 */
					width:80%;
				}
				.wrapper.package p.img4 img {
					max-width: 240px; /*  ő啝 */
					width:80%;
				}
		

/* layermask */

	#layermask {
		background-color:rgba(255,255,255,1);
		position: relative;
		-moz-transition: all 0.7s ease-out;
		-webkit-transition: all 0.7s ease-out;
		-o-transition: all 0.7s ease-out;
		-ms-transition: all 0.7s ease-out;
		transition: all 0.7s ease-out;
	}
		
/* Header */

#header {
	color: black;
	height: 4em;
	background: rgba(246, 246, 246);
	text-align: right;
}

		/*#header .container {
			position: relative;
		}*/

	/*.homepage #logo {
		display: none;
	}*/

	#header .container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		height: 100%;
		/*padding: 0 2em;*/
	}

/* ▼ 通常（PCなど大きな画面）のスタイル */
#main-title {
	display: flex;
	align-items: center;
	gap: 1em;
	margin: 0;
}

.company-name {
	font-size: 2.1em;
	font-weight: bold;
	color: #006400;
}

#logo {
	text-decoration: none;
}

#logo-text.logo-text-title {
	font-size: 2.1em;
	color: #000;
}


/* ▼ スマホ・iPad（画面幅が 768px 以下）ではスタイルをリセット */
@media (max-width: 1024px) {
	#main-title {
		display: block;
		align-items: unset;
		gap: unset;
		margin: 0;
	}

	.company-name {
		font-size: 2.1em;
		font-weight: normal;
		color: #000;
		font-weight: bold;
	}

	#logo {
		text-decoration: none;
		display: block;
		margin-top: 0.5em;
	}

	#logo-text.logo-text-title {
		font-size: 1.5em;
		color: #006400;
	}
}




		/* スクロールで固定表示されるときのクラス */
		#header{
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			z-index: 999;
			box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		}


#logo-text {
	font-size: 1em;
	font-weight: bold;
	color: #333;
	text-decoration: none;
}

#nav {
	display: flex;
	gap: 1em;
}

.homepage #logo {
	display: inline; /* ロゴを表示させるための上書き */
}


	/*.homepage #nav {
		position: static;
		right: none;
		text-align: right;
	}
*/
/* ロゴ */
#logo-w {
  display: inline-block;
  line-height: 2em;
  letter-spacing: 2px;
  font-size: 2em;
  font-weight: 400;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* メインテキスト */
.logo-text-title {
  display: inline;
}*/*/

/* サブテキスト（初期状態では非表示） */
.logo-subtext {
  display: none;
}

/* PC画面幅以上でサブテキストを表示 */
@media screen and (min-width: 768px) {
  .logo-subtext {
    display: inline;
    font-size: 0.5em;
    margin-left: 10px;
    color: #666;
  }
}

/* スクロール時にロゴ非表示にするクラス */
.hide-on-scroll {
  opacity: 0;
  visibility: hidden;
}

/* スクロール時にテキストだけ非表示にするクラス */
.hidden {
  opacity: 0;
  visibility: hidden;
}

/*PC画面のロゴテキスト調整*/
#logo-w {
	display: inline-block;
	line-height: 2em;
	letter-spacing: 2px;
	font-size: 2em;
	font-weight: 400;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	
	/* 追加部分 */
	/*max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;*/
}


	#nav {
		position: absolute;
		top: 0;
		right: 0;
	}

		#nav > ul {
			margin: 0;
		}

			#nav > ul > li {
				border-radius: 4px;
				display: inline-block;
				margin-left: 0.5em;
				padding: 0 0.5em;
			}

				#nav > ul > li a {
					color: #000000;
					line-height: 4em;
					letter-spacing: 2px;
					text-decoration: none;
					font-weight: 400;
					font-size: 1em;
					transition: all 0.3s ease; /* スムーズな変化 */
				}

					/* ホバー時に文字色を変更 */
					#nav > ul > li a:hover {
						color: #0068b7; /* 任意の色に変更 */
						font-weight: 700;
					}

				/* アクティブな項目の文字色 */
				#nav > ul > li.active a {
					color: #0000FF; /* アクティブ時の色（青にしてます） */
					text-decoration: underline;
				}

				/* 最初のリスト項目だけ左マージンなし */
				#nav > ul > li:first-child {
					margin-left: 0;
				}

				#nav > ul > li:last-child {
					margin-right: 2em; /* ← ここで右端にスペースを追加 */
				}

				/* サブメニューを非表示 */
				#nav > ul > li > ul {
					display: none;
				}

							

/* Dropotron */

	.dropotron {
		top: 2em;
		background: rgba(32, 32, 32, 0.75);
		border-radius: 4px;
		color: inherit;
		min-width: 12em;
		padding: 1em 0;
		color: white;
	}

		.dropotron > li {
			line-height: 2em;
			padding: 0 1em;
		}

			.dropotron > li > a {
				color: inherit;
				letter-spacing: 2px;
				text-decoration: none;
				/*text-transform: uppercase;*/
			}

			.dropotron > li.active > a, .dropotron > li:hover > a {
				color: inherit;
			}

		.dropotron.level-0 {
			border-radius: 0 0 4px 4px;
			font-size: 1em;
			margin-left: -0.5em;
		}

/* Banner */

#banner {
	cursor: default;
	padding: calc(40px + 2em) 0 4em 0; /* ヘッダー分をpaddingに含める */
	text-align: center;
	/*text-transform: uppercase;*/
	color: white;
}

		#banner .container {
			padding: 0em 8em;
		}

		#banner h2 {
			display: inline-block;
			padding: 0.20em 1em;
			/*background: #5EB359;*/
			/*background: #007aff;*/
			/*background: #0068b7;*/
			font-size: 2.0em;
			font-weight: 400;
			line-height: 1.5; /* ← 行間を追加 */
			-moz-transition: all 1s ease-in-out;
			-webkit-transition: all 1s ease-in-out;
			-o-transition: all 1s ease-in-out;
			-ms-transition: all 1s ease-in-out;
			transition: all 1s ease-in-out;
			opacity: 0;
			white-space: normal; /* ← 改行を許可 */
			word-break: keep-all; /* ← 単語の途中で折り返さない（日本語に最適） */
			/* 追加：角丸にする */
			border-radius: 0.5em; /* 値はお好みで調整（例：10px などでも可） */
		}

		#banner span, #banner p {
			display: block;
			padding: 1em 0em;
			letter-spacing: 1px;
			/*text-transform: uppercase;*/
			font-size: 2.2em;
			font-weight: 300;
		}

		#banner span {
			padding: 1em 0em;
		}


#banner-no-move {
	cursor: default;
	padding: calc(90px + 10em) 0 0em 0; /* ヘッダー分をpaddingに含める */
	text-align: center;
	/*text-transform: uppercase;*/
	color: white;
}

		#banner-no-move .container {
			padding: 0em 0em;
		}

	#banner-no-move h2 {
		display: inline-block;
		padding: 0.20em 1em;
		/*background: #5EB359;*/
		background: #008000;
		/*background: #0068b7;*/
		font-size: 2.0em;
		font-weight: 400;
		line-height: 1.5; /* ← 行間を追加 */
		/*
			-moz-transition: all 1s ease-in-out;
			-webkit-transition: all 1s ease-in-out;
			-o-transition: all 1s ease-in-out;
			-ms-transition: all 1s ease-in-out;
			transition: all 1s ease-in-out;
			opacity: 0;
			*/
		white-space: normal; /* ← 改行を許可 */
		word-break: keep-all; /* ← 単語の途中で折り返さない（日本語に最適） */
		/* 追加：角丸にする */
		border-radius: 0.5em; /* 値はお好みで調整（例：10px などでも可） */
	}

		#banner-no-move span, #banner p {
			display: block;
			padding: 1em 0em;
			letter-spacing: 1px;
			/*text-transform: uppercase;*/
			font-size: 2.2em;
			font-weight: 300;
		}

		#banner-no-move span {
			padding: 1em 0em;
		}






/* スマホ（縦向き）：〜480px */
@media (max-width: 480px) {
	#banner-no-move {
		padding: calc(45px + 5em) 0 0em 0;
		width: 100vw;
		max-width: 100%;
		background-size: cover;
	}
}

/* スマホ（横向き）・小型タブレット：481px〜768.9px */
@media (min-width: 481px) and (max-width: 768.9px) {
	#banner-no-move {
		padding: calc(50px + 8em) 0 0em 0;
		width: 100vw;
		max-width: 100%;
		background-size: cover;
	}
}

/* 一般的なタブレット（iPad含む）：769px〜1024px */
@media (min-width: 769px) and (max-width: 1024px) {
	#banner-no-move {
		padding: calc(50px + 10em) 0 0em 0;
		width: 100vw;
		max-width: 100%;
		background-size: cover;
	}
}






/* Main */

	#main {
		padding: 3em 0;
	}

		#main #content .major, #main #sidebar .major {
			text-align: left;
		}

		#main #sidebar section {
			margin-top: 4em;
		}

			#main #sidebar section:first-child {
				margin-top: 0;
			}

		#main #sidebar .major {
			padding-bottom: 2em;
		}

			#main #sidebar .major h2 {
				font-size: 1.8em;
			}

/* Footer */

#footer {
	/*background:#284D26;*/
	background: #006400;
	padding: 1.0em 0 0.5em 0;
	text-align: center;
	color: #FFFFFF;
	border-bottom: 1px solid #FFFFFF
}

		#footer hr {
			border-bottom: 1px solid;
			border-color: inherit;
			opacity: 1;
		}

		#footer .major h2 {
			color: inherit;
		}

		#footer .major .byline {
			color: inherit;
			opacity: 1;
		}

		#footer .copyright {
			margin-top: 0.5em;
			text-align: center;
		}

/* Copyright */

#footer_copyright {
	/*background:#284D26;*/
	background: #006400;
	padding: 1.5em 0 0.5em 0;
	text-align: center;
	color: #ffffff;
}

		#footer_copyright hr {
			border-bottom: 1px solid;
			border-color: inherit;
			opacity: 1;
		}

		#footer_copyright .major h2 {
			color: inherit;
		}

		#footer_copyright .major .byline {
			color: inherit;
			opacity: 1;
		}

		#footer_copyright .copyright {
			margin-top: 0.5em;
			text-align: center;
		}
	
/* Extra */

	#extra1 h2 {
		display: block;
		margin-bottom: 1em;
		letter-spacing: 1px;
		line-height: 1.4em;
		/*text-transform: uppercase;*/
		font-size: 1.8em;
		font-weight: 400;
	}

	#extra1 h3 {
		display: block;
		margin-bottom: 1em;
		letter-spacing: 1px;
		line-height: 1.4em;
		/*text-transform: uppercase;*/
		font-size: 1.6em;
		font-weight: 400;
	}

/* Team */

	#team h3 {
		margin-bottom: 0.50em;
		letter-spacing: 2px;
		/*text-transform: uppercase;*/
		font-weight: 700;
	}
	
	
/* Infomation */
#information {
height:380px;
display: block;
overflow: scroll;
/*color:#222222;*/
}

#information p {
margin:0;
padding:0;
}

.date {
color:#FF3333;
font-size:12px;
}

.diary {
/*color:#333333;*/
}


//aタグにデフォルトで指定されているCSS
#content_menu a {
 color: #ffffff;
 text-decoration: none !important;
 font-weight: bold; 
 transition: color 0.3s ease, transform 0.3s ease; 
 display: inline-block;
}

#content_menu a:link {
 color: #ffffff;
 text-decoration: none !important;
 font-weight: bold; 
 transition: color 0.3s ease, transform 0.3s ease; 
 display: inline-block;

}

#content_menu a:visited {
 color: #ffffff;
 text-decoration: none !important;
 font-weight: bold; 
 transition: color 0.3s ease, transform 0.3s ease; 
 display: inline-block;

}

#content_menu a:hover {
	color: #f0fff0;
	transform: scale(1.35);
}

#content_menu a:active {
 color: #ffffff;
 text-decoration: none !important;
 font-weight: bold; 
 transition: color 0.3s ease, transform 0.3s ease; 
 display: inline-block;

}

@media screen and (max-width: 1024px) {
	#content_menu a {
		padding-left: 1em;
		display: block;
		min-width: 8em;
		color: inherit;
		text-decoration: none;
		transition: transform 0.2s ease;
	}

		#content_menu a:hover {
			color: #f0fff0;
			transform: scale(1.1);
		}
}


.menufont{
color:	#FFFFFF;
font-size:20px;
}

/* 必須の修正 */
#logo-text.hidden {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transition: opacity 0.3s ease !important;
}


