﻿@charset "utf-8";

/*共通
------------------------------------------------ */
body { background: #FFFFFF;
	font-family: "Helvetica Neue", Helvetica, Arial,YuGothic, 'メイリオ', Meiryo, "Hiragino Kaku Gothic Pro W3", "ヒラギノ角ゴ Pro W3", 'ＭＳ Ｐゴシック', osaka, sans-serif;
	font-weight: normal;
	color: #000000;
	font-size: 1.2em; line-height: 150%;
}
img{vertical-align: top;}

/*リンク
--------------------------------------------------*/
a {	color: #000000; }
a.blue {	color: #337ab7; }
a:hover { opacity:0.8; }

/*フロート
--------------------------------------------------*/
.left {	float: left;}
.right {	float: right;}
.center { text-align:center;}
.clear {	clear: both; overflow:hidden;	zoom:1;}

/*マージン パディングセット上下
--------------------------------------------------*/
.mgb5 {margin-bottom: 5px;}
.mgb10 {margin-bottom:10px;}
.mgb20 {margin-bottom:20px;}
.mgb30 {margin-bottom:30px;}
.mgb40 {margin-bottom:40px;}
.mgb50 {margin-bottom:50px;}
.mgt10 {margin-top: 10px}
.mgt20 {margin-top: 20px}
.mgt30 {margin-top: 30px}
.mgt40 {margin-top: 40px}
.mgt50 {margin-top: 50px}

/*fontセット
--------------------------------------------------*/
.bold { font-weight:bold; }
.red { color:#FF0000; }
.tr{text-align:right;}
.cap{ font-size: 0.8em;}

/*デバイスごとの表示・非表示
--------------------------------------------------*/
.pc {display: block;}/*pc時のみ*/
.tab_over{display: none;}/*tab以上*/
.tab{display: none;}/*tab時のみ*/
.sp{display: none;}/*sp時のみ*/
/*.pc_over {display: none;}pc以上*/

/* wrap
------------------------------------------------ */
#wrap{max-width:960px; margin: 0px auto 0px;}
#wrap.page{padding-top:15px;}
.inner{max-width:960px; margin: 0px auto 0px;}

/* header
------------------------------------------------ */
header{
	position:relative;
	border-bottom:#3C3D6D 8px solid;
	margin-bottom:15px;
}

header h1{
	padding-top:20px;
	margin-bottom:23px;
}

header .inner{
	position:relative;
}

header .pc .sitemap{
	position:absolute;
	top:20px;
	right:0;
}

header .pc nav{
	margin-bottom:4px;
}


header .pc nav ul{
	width: 100%;
	display: table;
}

header .pc nav ul li{
	background: #fff url(../img/common/nav_boder.gif) no-repeat left center !important;
	display: table-cell;
	vertical-align: middle;
	width:155px;
	padding: 0 0 0 3px;
}

header .pc nav ul li:last-child div {
	display: block;
	background: #fff url(../img/common/nav_boder.gif) no-repeat right center !important;
	padding: 0 3px 0 0;
}

header .pc nav ul li a {
	display: block;
	padding:15px 15px;
	text-align: center;
}

header .pc nav ul li.zwei a {
	padding:8px 15px;
}

header .pc nav ul li.active a {
	color:#FFF;
	background-color: #3C3D6D !important;
}

header .pc nav ul li a:hover {
	color:#FFF;
	background-color: #3C3D6D !important;
}


header .pc nav ul li a img{
	max-width: 100%;
}

header div.menu{
	position: absolute;
	top:10px;
	right:0px;
	cursor:pointer;
}

header .sp nav ul li{
	text-align:center;
}

header .sp nav ul li a{
	padding: 15px 0;
	display:block;
	max-width:320px;
	font-size:1.2em;
	border-bottom: dotted 1px #3C3D6D;
}

/* footer
------------------------------------------------ */
footer{
	margin-top:15px;
	border-top:#3C3D6D 8px solid;
}

footer address{
	text-align:right;
	padding: 10px 0;
}

/* contents
------------------------------------------------ */
#contents h2{
	font-size: 1.6em;
	font-weight: bold;
	padding: 10px;
	border-bottom: solid 1px #000;
	border-left: solid 3px #000;
}

#contents h3{
	margin-top: 15px;
	margin-bottom:5px;
	color:#383B69;
}

#contents{
	clear:both;
	overflow:hidden;
	position:relative;
}

/* news-area */
#contents .news-area {
	border: #3C3D6D solid 1px;
	margin: 0 auto 25px;
	padding: 10px 20px 15px;
}
#contents .news-title--h2 {
	font-size: 22px;
	font-weight: bold;
	padding: 10px;
	color: #3C3D6D;
	margin-bottom: 20px;
	border-left: none;
	padding-left: 0;
	padding-right: 0;
}
#contents .news-title--h3 {
	font-size: 18px;
	font-weight: bold;
	padding-left: 28px;
	line-height: 25px;
	background: url(/img/common/icon_st.gif) no-repeat 0% 50% !important;
	margin-bottom: 10px;
	border: none;
	text-align: left;
	margin-top: 20px;
}
#contents .news-text {
	font-size: 14px;
	margin-bottom: 10px;
}
@media screen and (max-width: 479px) {
	#contents .news-area{
		padding: 10px 10px 15px;
	}
	#contents #index .news-area{
		width: 94%;
	}
	#contents .news-title--h2{
		font-size: 20px;
	}
}

/* index
------------------------------------------------ */
#contents #index img {
	max-width:100%;
}

/* sidebar
------------------------------------------------ */
#contents #sidebar {
	float:right;
	position: relative;
	width: 165px;
}

#contents #sidebar ul {
	width: 165px;
	top:20px;
	z-index:2;
}

#contents #sidebar ul li {
	background: #FFF;
	margin-bottom:10px;
}

#contents #sidebar ul li.first {
	margin-bottom:0px;
}

#contents #sidebar ul li:last-child {
	border-bottom: none;
}

#contents #sidebar ul li a {
	display:block;
	text-align:center;
	padding:10px 0;
	font-weight:bold;
	color:#3C3D6D;
	width: 160px;
	border: solid 3px #3C3D6D;
}

#contents #sidebar ul li.sub {
	margin-bottom:0px;
}

#contents #sidebar ul li.sub.last {
	margin-bottom:10px;
}

#contents #sidebar ul li.sub a {
	display:block;
	text-align:center;
	padding:5px 0;
	font-weight:bold;
	color:#3C3D6D;
	width: 130px;
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: solid 2px #3C3D6D;
	margin-left:15px;
	margin-right:15px;
}

#contents #sidebar ul li a span:last-child {
	font-size:10px;
	line-height:10px;
}

#contents #sidebar ul li a:hover {
	color:#fff;
	background:#3C3D6D;
	border: solid 3px #3C3D6D !important;
}

#contents #sidebar ul li.sub a:hover {
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: solid 2px #3C3D6D !important;
}

/* pagetop
------------------------------------------------ */
#pagetop{
	float:right;
	width: 165px;
}

#pagetop .pagetop{
	position:fixed;
	width: 165px;
	bottom: 25px;
	text-align: right;
	z-index:3;
}

#pagetop .pagetop.no{
	position: static;
}

/* page
------------------------------------------------ */
#contents #page {
	width: 770px;
	float:left;
	margin-bottom:50px;
}

#contents #page h1 {
	font-size: 26px;
	color:#fff;
	font-weight:bold;
	padding: 10px 30px;
	text-align:center;
	background:#3C3D6D;
	border-radius:10px;
	display: inline-block;
}

#contents #page article {
	padding:30px 10px;
	border-bottom:solid 1px #000;
	font-size: 14px;
	line-height: 160%;
}

#contents #page.preservation article h1 {
	color:#3C3D6D;
	border:solid 1px #3C3D6D;
	background:#fff;
	border-radius: 5px;
	font-size: 18px;
	margin-bottom:20px;
}

#contents #page.pdfdl article h1 {
	margin-bottom:30px;
}

#contents #page article:first-child {
	padding:20px 10px 30px;
}

#contents #page article h2 {
	font-size: 18px;
	font-weight:bold;
	padding-left: 28px;
	line-height:25px;
	background:url(../img/common/icon_st.gif) no-repeat 0% 50% !important;
	margin-bottom:20px;
	border:none;
}

#contents #page.pdfdl article h2 {
	line-height:20px;
	margin-bottom:0px;
	color:#3C3D6D;
}

#contents #page.pdfdl article h2 a {
	color:#3C3D6D;
}

#contents #page.pdfdl article h2 span {
	font-size: 12px;
	display:inline-block;
	margin-left:10px;
	margin-right:10px;
}

#contents #page.pdfdl article h2 img {
	width:20px;
	height:auto;
}


#contents #page article div.history {
	margin-left:40px;
}

#contents #page article div.history dl {
	display:table;
	width: 100%;
}

#contents #page article div.history dl dt {
	display:table-cell;
	width: 15%;
	font-weight:normal;
	text-align: center;
	padding:5px;
	border-left: dashed 1px #000;
	border-right: dashed 1px #000;
	border-bottom: dashed 1px #000;
}

#contents #page article div.history dl dd {
	display:table-cell;
	width: 85%;
	padding:5px;
	border-right: dashed 1px #000;
	border-bottom: dashed 1px #000;
}

#contents #page article div.history dl.title {
	background:#E7FEFF !important;
}

#contents #page article div.history dl.title dt{
	border-right: solid 1px #000;
	border-left: solid 1px #000;
	border-bottom: solid 1px #000;
	border-top: solid 1px #000;
}

#contents #page article div.history dl.title dd{
	text-align:center;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
	border-top: solid 1px #000;
}


#contents #page article ul.pdf_data {
	clear:both;
	overflow:hidden;
}

#contents #page article ul.pdf_data li {
	display:table;
	float:left;
	width: 37%;
	vertical-align:middle;
	margin-bottom:25px;
}

#contents #page article ul.pdf_data li:nth-child(3n) {
	width: 25%;
}

#contents #page article ul.pdf_data li a {
	font-size: 18px;
	font-weight:bold;
	display: block;
	text-decoration:none;
}

#contents #page article ul.pdf_data li a span{
	display: table-cell;
	vertical-align:middle;
	text-decoration:underline;
}

#contents #page article ul.pdf_data li i {
	vertical-align:middle;
	display: table-cell;
	color:#80BBD8;
	font-size: 45px;
	padding-right:8px;
}


#contents #page article#exam div.photo {
	margin: 20px auto;
}

#contents #page article#exam div.photo img {
	border:solid 5px #D9DBE2;
}

#contents #page article#exam ul {
	clear:both;
	overflow:hidden;
}

#contents #page article#exam ul li {
	float:left;
	margin-right: 5%;
	width:30%;
}

#contents #page article#exam ul li:last-child {
	margin-right:0px;
}

#contents #page article#exam ul li a {
	color:#fff;
	background:#7B7CAC !important;
	text-align:center;
	font-size: 16px;
	display:block;
	padding:15px 0px;
}

#contents #page ul.sitemap {
	list-style: circle outside;
	font-size: 18px;
	font-weight:bold;
	padding-left: 28px;
	line-height:25px;
	margin-bottom:20px;
	color:#3D3D6D;
}

#contents #page ul.sitemap a {
	color:#3D3D6D;
}

#contents #page ul.sitemap li {
	margin-bottom:15px;
}

#contents #page ul.sitemap li ul.in {
	list-style: disc outside;
	margin-top:5px;
	padding-left: 28px;
}

#contents #page ul.sitemap li ul.in li {
	margin-bottom:5px;
}

#contents #page .pre_img {
	width: 600px;
	margin: 30px auto;
}

#contents #page .pre_list .st {
	width:50%;
	background:#7DA4F3 !important;
	padding: 10px 0;
	text-align:center;
	margin: 20px auto 0;
	font-weight:bold;
}

#contents #page .pre_list .line img {
	width:100%;
	height:auto;
}

#contents #page .pre_list ul {
	clear:both;
	overflow:hidden;
}

#contents #page .pre_list ul li {
	float:left;
	width:30%;
	margin-right:5%;
	background:#D2E7EB !important;
	padding: 10px;
}

#contents #page .pre_list ul li:last-child {
	margin-right: 0;
}

#contents #page .pre_list li dt {
	text-align:center;
}

/* page seminar
------------------------------------------------ */
#wrap.page.seminar {
    padding-top:0;
}

.seminar #contents #page{
	width:100%;
	float:none;
}

.seminar #contents #sidebar{
	display:none;
}

.main_img{
	position:relative;
}

.main_img img {
	width: 100%;
	max-width: 100%;
}

.seminar #contents #page article > ul {
	display:table;
	margin-bottom: 30px;
}

.seminar #contents #page article >ul li{
	display:table-cell;
	width:50%;
}

.seminar #contents #page article > ul li:last-child{
	border-left: 1px  dotted #000;
	padding-left: 30px;
}

.seminar #contents #page article > ul li h2{
	margin-bottom:0;
}

.seminar #contents #page article > ul li dl dt{
	font-weight:normal;
	margin-bottom: 10px;
}

.seminar #contents #page article > ul li dl dd ul {
	display: inherit;
	margin-bottom: 0;
	width:100%
}

.seminar #contents #page article > ul li dl dd li{
	display: inherit;
	padding: 0;
	margin-bottom: 5px;
	width:100%;
}

.seminar #contents #page article > ul li dl dd li:last-child{
	border-left: none;
	padding-left: 0;
}

.seminar #contents #page article .box_area{
	display:table;
	width:100%;
}

.seminar #contents #page article .box_area .box1, .seminar #contents #page article .box_area .box2 {
	display:table-cell;
	vertical-align: top;
  width:50%;
}

.seminar #contents #page article .box_area .box1{
	padding-right: 15px;
}
#contents #page .box_area .box1 .seminar_contact dd p{
	margin-bottom: 15px;
}

.seminar #contents #page article .box_area .box2 {
  text-align: right;
  position: relative;
}

.seminar #contents #page article .box_area .box2 .icon--seminar{
  position: absolute;
  left: -80px;
}
.seminar #contents #page article .box_area .box2 li:last-child {
	margin-top: 15px;
}

.seminar #contents #page article .box_area .box2 li img{
	max-width:100%;
}

.seminar_notice{
  padding: 20px 15px 20px 0;
}
.seminar_notice_text{
  margin-bottom: 15px;
}
.seminar_notice_img img{
  width: 100%;
}
.btn-seminar_entry a{
	background-image: linear-gradient(to right, #006175 0%, #00a950 100%);
  border-radius: 46px;
  box-sizing: border-box;
  color: #197182;
  display: inline-block;
  /* height: 70px; */
	text-align: right;
  font-size: 14px;
	font-weight: bold;
  padding: 7px;
  position: relative;
  text-decoration: none;
  z-index: 2;
}
.btn-seminar_entry a:hover{
	color: #fff;
	text-decoration: none !important;
}
.btn-seminar_entry-text--wrap{
	align-items: center;
  background: #fff;
  border-radius: 40px;
  height: 100%;
	padding: 4px 30px;
  transition: background 0.5s ease;
  width: auto;
}
.btn-seminar_entry a:hover .btn-seminar_entry-text--wrap{
	background: transparent;
}
.btn-seminar_entry-title{
	text-align: center;
	font-size: 16px;
	margin-bottom: 5px;
	display: flex;
	justify-content: center;
}
.btn-seminar_entry-text{
	display: flex;
}


/* ここまで（基本のPC1200pxまで）
PCのスタイルから記述していく方法で以下に追加していくこと。
------------------------------------------------ */
@media screen and (max-width: 959px) {
/* sidebar
------------------------------------------------ */
#contents #sidebar {
	float:none;
	position: relative;
	width: auto;
}

#contents #sidebar ul {
	display:table;
	width: 90%;
	margin: 0 auto 20px;
}

#contents #sidebar ul li {
	width:25%;
	display:table-cell;
	padding-right: 5px;
}

#contents #sidebar ul li:last-child {
	padding-right: 0px;
}

#contents #sidebar ul li a{
	width:100%;
}

#contents #sidebar ul.six li.sub {
	display: none;
}

#contents #sidebar ul.six li a br {
	display:none;
}

/* pagetop
------------------------------------------------ */
#pagetop{
	width: 90%;
	margin: 0 auto;
	text-align:right;
	float:none;
}

#pagetop .pagetop{
	position: static;
	width: 72px;
	bottom: 0px;
	float: right;
}

/* page
------------------------------------------------ */
#contents #page {
	width: 90%;
	float: none;
	margin: 0 auto 20px;
}

#contents #page article div.history {
	margin-left: 0px;
}

#contents #page article div.history dl {
	display:table;
	width: 100%;
}

#contents #page article div.history dl dt {
	width: 20%;
}

#contents #page article div.history dl dd {
	width: 80%;
}

#contents #page article#exam ul {
	clear:both;
	overflow:hidden;
}

/* seminar page
------------------------------------------------ */
.main_img{
	padding: 0 10px;
}
.seminar #contents #page article > ul {
	display: inherit;
}

.seminar #contents #page article >ul li{
	display: inherit;
	margin-bottom: 15px;
    width: 100%;
}

.seminar #contents #page article > ul li:last-child{
	border-left: none;
	padding-left: 0;
}

.seminar #contents #page article > ul li h2{
	margin-bottom:0;
}

.seminar #contents #page article .box_area{
	display: inherit;
	width:100%;
}

.seminar #contents #page article .box_area .box1{
	display: inherit;
	padding-right: 0;
	margin-bottom: 20px;
	width:100%;
}

.seminar #contents #page article .box_area .box1 img{
	width:100%;
}

.seminar #contents #page article .box_area .box2 {
	display:table;
	width:100%;
}

.seminar #contents #page article .box_area .box2 li{
  display:table-cell;
  vertical-align: top;
}

.seminar #contents #page article .box_area .box2 .icon--seminar{
  position: static;
}

.seminar #contents #page article .box_area .box2 li img{
	width:100%;
}

.seminar #contents #page article .box_area .box2 li:first-child {
	padding-right: 10px;
}

.seminar #contents #page article .box_area .box2 li:last-child {
	padding-left: 10px;
}

}

/* 767px以下（タブレット／スマートフォン用）の記述 */
@media screen and (max-width: 767px) {
/*デバイスごとの表示・非表示
--------------------------------------------------*/
.pc {display: none;}/*pc時のみ*/
.tab_over {display: none;}/*tab以上*/
.tab {display: block;}/*tab時のみ*/
.sp {display: block;}/*sp時のみ*/

/* wrap
------------------------------------------------ */
#wrap{ width:100%; padding-top:0px; }
.inner{width:90%;}
img{
	width:100%;
	height:auto;
}

/*nav
--------------------------------------------------*/
header{
	margin-bottom:10px;
}

header h1{
	padding-top:10px;
	margin-bottom:10px;
	text-align:left;
}

header h1 img{
	width:80%;
	height:auto;
}

header nav{
	position:fixed;
	top: 0px;
	right:-600px;
	transition: all 0.3s ease-in-out 0s;
	display: block;
	transform: translateX(300px);
	z-index: 100;
	padding:10px;
	background: #fff;
	height:100%;
}

header nav.on{
	right:0;
	transform: translateX(0);
}

header div.menu{
	display:block;
}

header div.m_close{
	display: block;
	border:solid 1px #3C3D6D;
	padding:10px;
	text-align:center;
	cursor:pointer;
	z-index:10;
	width:70%;
	margin: 10px auto;
}

header div.menu i{
	font-size:2.5em;
	color:#3C3D6D;
}

header div.m_close i{
	color:#3C3D6D;
}

/* footer
------------------------------------------------ */
footer{
	margin-top:10px;
}

/* contents
------------------------------------------------ */
#contents #page article ul.pdf_data li {
	width: 100%;
	margin-bottom: 15px;
}
#contents #page article ul.pdf_data li i {
	font-size: 25px;
	line-height:120%;
}
#contents #page article ul.pdf_data li:nth-child(3n) {
	width: 100%;
}

#contents #page article#exam ul li a {
	padding:15px 0;
}

#contents #page .pre_img {
	width:90%;
}

#contents #page .pre_list .st {
	width:80%;
	margin-bottom:10px;
}

#contents #page .pre_list .line img {
	display:none;
}

#contents #page .pre_list ul li {
	float:none;
	width:80%;
	margin-right:auto;
	margin-left:auto;
	background:#D2E7EB !important;
	padding: 10px;
	margin-bottom:10px;
}

#contents #page .pre_list ul li:last-child {
	margin-right:auto;
}

/* page seminar
------------------------------------------------ */
.seminar #contents #page article .box_area .box2 {
	display: block;
	text-align: center;
  width:100%;
  margin-top: 40px;
}

.seminar #contents #page article .box_area .box2 li{
	display: block;
	text-align:center;
}

.seminar #contents #page article .box_area .box2 li img{
	display: block;
}

.seminar #contents #page article .box_area .box2 .icon--seminar .pc{
	display: none;
}

.seminar #contents #page article .box_area .box2 .icon--seminar{
  margin: 0 auto 10px;
  width: 80%;
}

.seminar #contents #page article .box_area .box2 li:first-child {
	padding-right:0;
}
.seminar #contents #page article .box_area .box2 li:last-child {
	padding-left: 0;
}

.btn-seminar_entry{
	text-align: center;
	margin-bottom: 20px;
}
}

/* 479px以下（スマートフォン用）の記述 */
@media screen and (max-width: 670px) {
#contents #page .pre_img .left {
	float:none;
	margin-bottom:10px;
}

#contents #page .pre_img .right {
	float:none;
}

.main_img .btn_sp_homepage img  {
    width: 70%;
}

}

/* 479px以下（スマートフォン用）の記述 */
@media screen and (max-width: 479px) {
/*デバイスごとの表示・非表示
--------------------------------------------------*/
.pc {display: none;}/*pc時のみ*/
.tab_over {display: none;}/*tab以上*/
.tab {display: none;}/*tab時のみ*/
.sp {display: block;}/*sp時のみ*/
a { text-decoration:underline; }

/*
--------------------------------------------------*/
#contents #sidebar ul li span {
	display:none;
}

#contents #page h1 {
	font-size: 15px;
}

#contents #page h1 br {
	display:none;
}

#contents #page article#exam ul li {
	float:none;
	margin-right: 0;
	margin-bottom: 10px;
	width:100%;
}

#contents #page article#exam ul li a {
	color:#fff;
	background:#7B7CAC !important;
	text-align:center;
	font-size: 16px;
	display:block;
	padding:15px;
}


#pagetop img{
	width:70%;
	height:auto;
}

}

/* 1200px以上（PC用）の記述 */
/* 出来れば1200pxまでと同じにしたいが例外処理用 */
@media screen and (min-width: 1201px) {

}
