@charset "utf-8";

/* ================================================ */
/* 私学共済事業Webサイトcss                         */
/* 来歴-------------------------------------------- */
/* 2013/3/25　新規作成                              */  
/* 2019/　レスポンシブ対応　　　　　　           */  
/* ================================================ */

/*============================共通部品============================*/
* {
	margin: 0px;
	padding :0px;
}

/* ----- リンク ----- */

a:link,
a:visited,
a:hover,
a:active  {
	color: #333333;
}

img {
	border: 0px;
}

div#background:after,
div#header:after,
div#header ul.header_link:after,
div#container:after,
div#main:after,
div#gnavi:after,
div#gnavi ul:after,
div#gnavi ul li:after,
div#contents:after,
div#navi:after,
div#right_container:after,
div#left_container:after,
div#footer:after,
div#footer ul.footer_link:after,
#lnavi div.lnavi_category ul,#lnavi div.lnavi_link ul:after,
#lnavi div.lnavi_category, #lnavi div.lnavi_link:after,
#lnavi div.lnavi_category ul,#lnavi div.lnavi_yado ul:after,
#lnavi div.lnavi_category, #lnavi div.lnavi_yado:after,
#pnavi ul{
    clear: both;
    content: "";
    display: block;
    overflow: hidden;
}

html {
	font-size: 1em;	/* 16px相当 */
	font-family:"メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック","Verdana","ヒラギノ角ゴ Pro W3",Sans-Serif;
    -webkit-text-size-adjust: 100%;
  }
/*-----------------------------------------------
 #container 全体のコンテナエリア
-----------------------------------------------*/

body {
	margin:0;
	padding:0;
	color: #333333;
	line-height: 150%;
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
}

#background {
	margin-top:5px; 
}

#container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

/*-----------------------------------------------
 #header ヘッダエリア
-----------------------------------------------*/
#header {
	width:100vw;
	background-color: #ffffff;
	padding-bottom: 50px;
}
#navbar {
	max-width:1286px;
	width:100%;
	margin:5px auto 0 auto;
	display: flex;
	flex-wrap: wrap; 
	align-items: center;
}

#header_logo{
	max-width:680px;
	margin: 10px 20px;
}

#header_logo_en{
	max-width:710px;
	margin: 10px 5px 5px 5px;
}


/* */
#navbar ul.header_link{
	display: flex;
	flex-wrap: wrap; 
	margin-left: auto;
	align-items: center;
	padding-right: 10px;
}

a.zoomsight{
	padding-left: 1rem;
	color: #333;
    text-decoration: none;
	background-image: url(../img/png/voice_24.png);
    background-repeat: no-repeat;
    padding: 0 0 0 1.4rem;
	background-position: -.2rem -.1rem;
}
#header-menu-small{
	width: auto;
}
#cse-search-box{
	width: 12rem;
}

#cse-search-box .formgroup{
	width:100%;
	display:flex;
	justify-content: center;
	margin: 0;
	padding: 0;
	position: relative;
}
#cse-search-box input.textbox{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
	border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    background-color: #F0F0F0;
    height: 30px;
	width: calc(100% - 36px);
	border:none; 
	outline:0;
	text-indent: 1em;
	font-size: .75rem;
	margin: 0;
	padding: 0;
}
#cse-search-box input.textbox:focus{
	background-color: rgb(211, 230, 210);
	
}
#cse-search-box input.textsubmit{
    border-top-right-radius: 10px;
    border-bottom-right-radius:10px;
	border-top-left-radius: 0;
    border-bottom-left-radius: 0;
	border:none; 
	width: 30px;
    height: 30px;
	margin: 0;
	padding: 0;
	color: rgba(0,0,0,0);
}

#header-menu-sp-link,
#menu-close{
	display: none;
}
/*spメニュー切り替え*/
button.header-action{
	display: none;
    position: absolute;
    margin: 0;
    line-height: 1;
    top: 0;
    right: 10px;
}
.menu-wrap {
    position: relative;
	width: 86.5px;
    height: 86.5px;
}
.menu-bar {
    position: absolute;
    display: block;
    width: 40px;
    height: 4px;
    background-color: #4B664A;
    box-sizing: border-box;
    transition: all .4s;
    right: 20px;
}
.menu-bar:nth-of-type(1) {
    top: 26px;
}
.menu-bar:nth-of-type(2) {
    top: 40px;
}
.menu-bar:nth-of-type(3) {
    top: 55px;
}

.menu-active .menu-bar  {
    background-color: #ffffff;
}
.menu-active .menu-bar:nth-of-type(1) {
    transform: translateY(19px) rotate(-45deg);
}
.menu-active .menu-bar:nth-of-type(2) {
    opacity: 0;
}
.menu-active .menu-bar:nth-of-type(3) {
    transform: translateY(-10px) rotate(45deg);
}


/*-----------------------------------------------
 #gnavi グローバルナビ
-----------------------------------------------*/

#gnavi {
	max-width:1286px;
	width:100%;
	margin:15px auto;
}

#gnavi > ul {
	display: flex;
	flex-wrap: nowrap; 
	align-items: center;
	justify-content:center;
	margin-bottom: 0;
	margin-left: 0;
	height: 40px;
}
#gnavi > ul > li {
	margin-bottom: 0;
	margin-left: 0;
	flex: 0 1 260px;
}

#gnavi a {
	display: flex;
	align-items: center;
	justify-content:center;
	min-height: 40px;
	height: auto;
	color: #333;
	text-decoration: none;
	padding-right: 1.5rem;
}

#gnavi > ul > li > a{
	padding: 15px 8px;
}
#gnavi >ul > li > a > span{
	font-size: 1.2rem;
}
#gnavi a > span {
	padding: .2rem .2rem .2rem 1.5rem;
	position: relative;
}

#gnavi > ul > li:first-child::before{
	content: none;				
}
#gnavi > ul > li {
	position: relative;
}
#gnavi > ul > li > ul > li > span{
	word-break: break-all;
	width:100%;
}

/*区切り線*/
#gnavi > ul > li:not(:first-child){
	margin-left:2px;
}
#gnavi > ul > li::before {
    content: '';
	position: absolute;
    left: -1px;
	top: 13px;
	top: calc(50% - 10px);
    width: 2px;
    height: 20px;
    background-color: #5D795C;
}

/*矢印*/
#gnavi > ul > li > a > span::before{
    position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
	top: calc(50% - 8px);
    left: 2px;
    width: 8px;
    height: 8px;
    border-top: 3px solid rgb(181, 181, 181);
    border-right: 3px solid rgb(181, 181, 181);
    transform: rotate(135deg);
    border-radius: 2px;
    transform-origin: 50% 50%;
    transition: all .4s;
}
/*下線*/
#gnavi > ul > li.current_category > a > span::after{
	content: ''; 
	position: absolute;
    left: 1.2rem;
    right: 0.3rem;
    bottom: -2px;
    border-bottom: 2px solid #F39600;
}
#gnavi > ul > li.navi_active > a > span::after{
	content: none;
}

/*二段目開閉*/
#gnavi > ul > li a + ul{
	display:none;
	margin:0;
	width:100%;
	border-bottom-left-radius: 5px; 
	border-bottom-right-radius: 5px;
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
	z-index: 1000;
}

#gnavi > ul > li a + ul li{
	margin-left: 0;
}

#gnavi > ul > li a + ul li:last-child{
	margin-bottom: 10px;
}
#gnavi > ul > li.navi_active > a > span::before{
	top: calc(50% - 4px);
    transform: rotate(-45deg);
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}
#gnavi > ul > li.navi_active  {
	border-top-left-radius: 5px; 
	border-top-right-radius: 5px;
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
}

#gnavi > ul > li.navi_active::before,
#gnavi > ul > li.navi_active + li::before  {
    content: none;
}

#gnavi > ul > li.navi_active > a >span,
#gnavi > ul > li> ul >li a{
	color:#fff;
}

#gnavi ul > li.navi_active  > ul{
	display: inline-block;
	position: absolute;
}

#gnavi > ul > li > ul li a span {
	margin-left:1rem;
	width: 100%;
}
/*矢印*/
#gnavi > ul > li > ul > li > a> span::before{
    position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
	top: .5rem;
    left: 4px;
    width: 8px;
    height: 8px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;;
    transform: rotate(45deg);
    border-radius: 2px;
    transform-origin: 50% 50%;
}


/*-----------------------------------------------
 #category カテゴリエリア
-----------------------------------------------*/

#category ,
.category_subnavi{
	display: none;
}
/*-----------------------------------------------
 #pnavi パンくずナビ
-----------------------------------------------*/

#pnavi {
	max-width:calc( 1286px - 75px );
	width:calc( 100% - 100px);
	font-size: 0.9rem;
	margin:1.5rem auto .7rem;
	background-image: url(../img/png/home.png);
    background-repeat: no-repeat;
    padding: 0 0 0 20px;
    background-position: 1px .4em;
}

#ptop{
	margin-left:0rem;
}

.breadcrumb{
	margin-left:.5rem;
	background-image: url(../img/png/chevron_arrow_right_gray.png);
	background-repeat: no-repeat;
	padding: 0 0 0 1.2rem;
	background-position: 0 .2rem;

}

/*-----------------------------------------------
 #main
-----------------------------------------------*/

#main {
	max-width : 1286px;
	width : 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content:center;
	margin-top: -50px;
	box-shadow: 0px 8px 12px rgba(0, 0, 0, 0.3);
	background-color: #FCFAEF;
	border-radius: 10px;
}


/*-----------------------------------------------
 #contents コンテンツエリア
-----------------------------------------------*/

#contents {
	/*background-color: #F2EFE4;*/
	border-top-left-radius: 10px;
	border-bottom-left-radius:10px;
	width: calc(100% - 320px);
	text-align: left;
/*	box-shadow: -8px 8px 12px rgba(0, 0, 0, 0.3);*/
	padding: 0px 30px 30px 30px;
}

/*-----------------------------------------------
 #lnavi ローカルナビ
-----------------------------------------------*/

#lnavi {
	width:250px;
	margin:0;
	margin-left:-1px;
	padding: 0px 5px;
	text-align: left;
	background-color: #f2eddd  ;
	border-top-right-radius: 10px;
	border-bottom-right-radius:10px;
/*	box-shadow: 8px 8px 12px rgba(0, 0, 0, 0.3);*/
}

#lnavi a {
	text-decoration: none ;
}
#lnavi p {
	text-align: center;
	text-indent:0;
	margin:0;
}
/*---ローカルナビ・関連リンク・やどの一覧---*/

#lnavi div.lnavi_category,
#lnavi div.lnavi_link, 
#lnavi div.lnavi_yado {
	margin: 40px 0 0 0;
}


/*ナビゲーションタイトル*/
#lnavi div.lnavi_category > p,
#lnavi div.lnavi_link > p, 
#lnavi div.lnavi_yado > p, 
#lnavi div.lnavi_btn > p {
	font-size: 1.2rem;
	font-weight: bold;
	color: #333;
}

/*ナビゲーションバー、線飾り */
#lnavi div.lnavi_category > p > a,
#lnavi div.lnavi_link > p > a, 
#lnavi div.lnavi_yado > p > a, 
#lnavi div.lnavi_btn > p > a,
#lnavi div.lnavi_category > p > span.title-line,
#lnavi div.lnavi_link > p > span.title-line, 
#lnavi div.lnavi_yado > p > span.title-line, 
#lnavi div.lnavi_btn > p > span.title-line{
	position: relative;
    display: inline-block;
	padding: 0 1.2rem;
}

#lnavi div.lnavi_category > p > a::before,
#lnavi div.lnavi_link > p > a::before, 
#lnavi div.lnavi_yado > p > a::before,
#lnavi div.lnavi_btn > p > a::before,
#lnavi div.lnavi_category > p > span.title-line::before,
#lnavi div.lnavi_link > p > span.title-line::before, 
#lnavi div.lnavi_yado > p > span.title-line::before, 
#lnavi div.lnavi_btn > p > span.title-line::before{
    content: '';
    position: absolute;
    left: -.1rem;
	top: calc(50% - 0.1em);
    display: inline-block;
    width: 1em;
    height: .15rem;
    background-color: #999;
}

#lnavi div.lnavi_category > p > a::after,
#lnavi div.lnavi_link > p > a::after, 
#lnavi div.lnavi_yado > p > a::after,
#lnavi div.lnavi_btn > p > a::after,
#lnavi div.lnavi_category > p > span.title-line::after,
#lnavi div.lnavi_link > p > span.title-line::after, 
#lnavi div.lnavi_yado > p > span.title-line::after, 
#lnavi div.lnavi_btn > p > span.title-line::after{
    content: '';
    position: absolute;
    right: -.1rem;
	top: calc(50% - 0.1em);
    display: inline-block;
    width: 1em;
    height: .15rem;
    background-color: #999;
}

/*ナビゲーションリンク*/

#lnavi div.lnavi_category ul,
#lnavi div.lnavi_link ul, 
#lnavi div.lnavi_yado ul{
	list-style: none;
	padding: 0 10px;
	margin-top:10px;
	display: inline-block;
}

#lnavi div.lnavi_category ul li,
#lnavi div.lnavi_link ul li, 
#lnavi div.lnavi_yado ul li{
	padding: 5px 5px 10px 0px;
	margin: 0 0 0 0;
}

#lnavi div.lnavi_category ul li a,
#lnavi div.lnavi_link ul li a, 
#lnavi div.lnavi_yado ul li a{
	color: #333;
	text-decoration: none;
}
/*
#lnavi div.lnavi_category ul li.current a,
#lnavi div.lnavi_link ul li.current a, 
#lnavi div.lnavi_yado ul li.current a{
	position: relative;
}
#lnavi div.lnavi_category ul li.current a:hover,
#lnavi div.lnavi_link ul li.current a:hover, 
#lnavi div.lnavi_yado ul li.current a:hover{
	color: #CC7A00;
}
*/
/* サブメニュー内関連リンク */
#lnavi div.lnavi_category ul a, 
#lnavi div.lnavi_link ul a, 
#lnavi div.lnavi_yado ul a {
	background: transparent url('../img/png/chevron_arrow_right_orange_16.png') no-repeat 0 .2rem;
    padding-left:1.2rem;
	display: inline-block;
}

#lnavi div.lnavi_category ul .current span, 
#lnavi div.lnavi_link ul .current span, 
#lnavi div.lnavi_yado ul .current span  {
	background: transparent url('../img/png/chevron_arrow_right_orange_current.png') no-repeat 0 .2rem;
    padding-left:1.2rem;
	display: inline-block;
}


/*サブナビゲーション　ボタン系*/

div.lnavi_btn{
	margin: 40px 0 20px 0;
}

#lnavi p.lnavi_subtitle{
	margin-top:1.5rem;
	width:100%;
	font-size: 1.2rem;
	color: #333;
	text-align: center;
}

#lnavi p.lnavi_subtitle > span{
	position: relative;
}
div.jimu-login,
div.konna-page{
	margin-top:1.5rem;
	
}
p.jimu-btn > a,
p.kanyu-btn > a,
p.konna-btn > a{
	width: 75%;
	margin-top:1rem;
}

#lnavi p.login_explain,
#lnavi p.lnavi_subtitle{
	margin-top:1rem;
}


/*--しがくのやどのローカルボタン--*/
#lnavi div.lnavi_btn p.lnavi_btn_yado{
}

#lnavi div.lnavi_btn p.lnavi_btn_yado a{
	display: inline-block;
	margin-bottom : 5px;
}


#lnavi > div:last-child{
	margin-bottom : 40px;
}

/*-----------------------------------------------
 #footer フッターエリア
-----------------------------------------------*/

#footer {
	max-width:1286px;
	width:100%;
	margin-top:30px;
	margin-left:calc((100vw - 1286px )/ 2);
	margin-right:calc((100vw - 1286px )/ 2);
	padding-bottom:50px;
	display: flex;
	justify-content: space-between;
	color:#ffffff;
    position: relative;

}
#footer::before {
    position: absolute;
    content: "　";
    display: block;
    background: transparent url('../img/png/background.png') no-repeat 0 0;
	max-width:1286px;
	width: 100%; 
    height: 37px;
    bottom: 0px;
  }
#footer .footer_link{
	width:100%;
	margin-left: 10px;
	
}
#footer .footer_link > ul.innerlink,
#footer .footer_link > ul.new-window{
	width:100%;
	display: flex;
	flex-wrap: wrap;
}

#footer ul.footer_link li{
	list-style: none;
	margin: 0 8px 0 8px;
	font-size: .9rem;
}

#footer .footer_address{	
	width:33rem; 
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-right: 10px;
}
#footer .footer_address_en,
#footer .footer_address_en > p{	
	width:100%;
}

#footer div.footer_link a{
	color:#ffffff;
    text-decoration: none;
}


#footer div a.tel_link{
	color:#ffffff;
}
#footer div.footer_link .innerlink a{
    background-image: url(../img/png/chevron_arrow_right_white_16.png);
}

#footer div.footer_link .new-window a{
    background-image: url(../img/png/new_window_white_16.png);
}

#footer .footer_address span{
	width:calc(100% - 20px); 
}

.address_unit{
	margin-top: 10px;
	width:45%;
}


/* ----- 音声読み上げガイダンス ----- */
p.asc-guidance {
	position: absolute;
	top: 0;
	left: 0;
	height: 1px;
	width: 1px;
	margin: 0 !important;
	padding: 0 !important;
	text-indent: -9999px;
}

p.asc-guidance a {
	display: block;
}


/* ----- アクセシビリティ　コンテンツへ遷移 ----- */
p.show {
	text-indent: 0;
	padding: 3px!important;
	font-size: 1rem;
	line-height: 120%;
	width: auto;
	height: 1em;
	display: inline-block;
	background: #333333;
	text-align: center;
	z-index: 9999;
}

p.show a,
p.show a:link,
p.show a:hover,
p.show a:visited {
	color: #FFFFFF;
}

/* ----- リンク(取扱終了ボタン用) ----- */


p.guidelink {
	overflow: hidden;
	width: 100%;
	text-indent: 0px;
	height: 1px;
}


ul.information-tab li input.selecton ,
ul.information-tab li.selected input.selectoff {
	display: none;
}

ul.information-tab li.selected input.selecton,
ul.information-tab li input.selectoff {
	display: block;
}


/* 改行したい文字が含まれる場合 */
.b_all{
	word-break: break-all;
}


/*responsive */

@media screen and (max-width: 767px) {
	#background {
    	margin-top: 0px;
	}
	#container {
		flex-direction:column;
/*		margin-top: 100px;*/
	}
	
	#main,
	#footer{
		margin-left:auto;
		margin-right: auto;
	}
	
	#header{
/*		position: absolute;*/
		position: relative;
		width:100%;
		top:0px;
		padding-bottom:0;
		z-index: 1001;
		background: linear-gradient(90deg, #5C7F5B 0% , #4B664A 100%);
	}
	#main{
		margin-top: 0;
		
/*		margin-top: -50px;*/
	}
	#navbar{
		margin-top: 5px;
		background: #ffffff;
	}
	#header_logo{
		width:191px;
		height: 60px;
		flex-direction: column;
		margin: 7px 20px 12px 20px
	}
	img#header_logo_img{
		max-width:calc(100vw - 110px);
		height: auto;
	}
	#navbar ul.header_link {
		flex-direction: column;
		width: 100%;
		margin: 0;
		padding: 0;
		color: #ffffff;
	}
	button.header-action{
		display: block;
		background: none;
		border: none;
	} 
	#navbar ul.header_link > li:first-child {
		display:none;	
	}
	#header-menu-sp{
		width: calc(100% - 40px);
		margin: 0 auto;
	}
	#cse-search-box,
	#menu-close{
		display: none;
	}
	/*sp用メニュー*/
	#navbar.menu-active{    
		padding-top: 90px;
		background: linear-gradient(90deg, #5C7F5B 0% , #4B664A 100%);
	}
	.menu-active #header_logo{
		display:none;	
	}
	.menu-active #cse-search-box{
		display:block;	
	}
	.menu-active #cse-search-box{
		width:100%;
	}
	.menu-active #header-menu-sp-link{
		display:block;	
/*		line-height: 3em;*/
		width: 100%;
	}
	.menu-active #header-menu-sp-link > li{
		padding:10px;
	}
	.menu-active #menu-close{
		display:block;	
		height: 35px;
		padding:0;
		margin-top: 5px;
		margin-bottom: 40px;
		width: 100%;
	}
	#navbar ul.header_link li.innerlink a{
		color: #ffffff;
		text-decoration: none;
		background-image: url(../img/png/chevron_arrow_right_white_16.png);
	}
	
}


@media screen and (max-width: 767px) {

	#gnavi{
		display:none;
	}
}


@media screen and (max-width: 767px) {
	#pnavi{
		display:none;	
	}
}

@media screen and (max-width: 767px) {
	
	#footer {
		flex-direction:column;
		justify-content: center;
	}
	#footer .footer_link,
	#footer .footer_link ul,
	#footer .footer_link li{
		margin: 0px;
	}
	#footer .footer_link > ul.innerlink,
	#footer .footer_link > ul.new-window{
		flex-direction:column;
		justify-content: center;
	}
	#footer .footer_link ul li{
		margin: 10px auto 0 auto;
		/*width:80%;*/
		text-align: center;
	}
	#footer .footer_address{	
		width:100%;
		margin-right: 0px;
		flex-direction:column;
		justify-content: center;
	}
	#footer .footer_address > *{
		margin: 10px auto 0 auto;
		width:80%;
		text-align: center;
	}
	#footer::before {
		background: transparent url('../img/png/background_left.png') no-repeat center center;
	  }
}


/* ========== レスポンス用CSS ========== */


@media screen and (max-width: 767px) {
	#main{
		padding: 0;
		border-radius: 0;
		box-shadow: none;
	}
	#contents {
		width:calc(100% - 20px);
		border-top-left-radius: 0px;
		border-bottom-left-radius:0px;
		/*padding-top: 40px;*/
		padding-left: 10px ;
		padding-right: 10px ;
		box-shadow: none;
		margin-top:0;
	}
	#contents *{
		word-break: break-word; 
	}
	
	#lnavi {
		display: none;
	}

	img.width-100{
		max-width: calc(100% - 10px);
		height: auto;
	}
	p.guidelink {
		display: none;
	}
	
	
	#contents table.response_table > * > * >th,
	#contents table.response_table > * > * >td ,
	#left_container table.response_table > * > * >th,
	#left_container table.response_table > * > * >td {
	  border-bottom: none;
	  display: block;
	  width: calc(100% - 10px) !important;
	  padding: 5px!important;    
	}
	#contents table.response_table tr:last-child td:last-child
	{
	  border-bottom: 1px solid #859982;
	}
	
/*--- スクロールテーブル ---*/
	div.scroll_table {
		margin:10px 0;
		padding-bottom: 2px;
		width: 100%;
		overflow-x: scroll;
		-webkit-overflow-scrolling: auto;
	  }
	
	table.response_table div.scroll_table {
		width: calc(100vw - 60px);
	}
	div.scroll_table::-webkit-scrollbar {
		height: 5px;
	}
	div.scroll_table::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	div.scroll_table::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}

	div.scroll_table > * {
		min-width: 960px;
		margin: 0px;
	}
	
	#contents div.scroll_table > table{
		margin: 0px 0px 2px 0px;
		
	}

	#contents div.scroll_table > table th,
	#contents div.scroll_table > table td{
		word-break:normal;
	}
	
	
	#contents ul.long li {
		width:calc(100% - 20px)!important;
	}
	
	#contents ul.horizontal li {
		white-space: wrap!important;
	}

}

/* ========== htmlタグ定義 ========== */


/* ----- テキスト ----- */
p {
	text-indent: 1rem;
	margin: .6rem .5rem 0 .5rem;
}

p a,
p span{
	text-indent: 0;
}

/* 文字装飾 */
strong {
	font-weight: bold;
}

strong.red {
	color: #E50000;
	font-weight: bold;
}

span.red {
	color: #E50000;
}

strong.blue {
	color: #0000ff;
	font-weight: bold;
}


/* ----- 画像 ----- */
img {
	border: 0px;
}

#main img{
	max-width:100%;
	height: auto;
}

img.f-left {
	margin-right: 12px;
	margin-bottom: 4px;
	margin-top: 4px;
}

img.f-right {
	margin-left: 12px;
	margin-bottom: 4px;
	margin-top: 4px;
}

img.space {
	margin: 0 3px;
	vertical-align: middle;
}

img.space-b {
	margin: 0 3px;
	vertical-align: bottom;
}

img.b-shadow{
	box-shadow: 2px 3px 8px rgba(0, 0, 0, .5);
}

/* ----- テーブル ----- */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption {
	text-align: left;
	font-weight: normal;
}

/* テーブルヘッダ */
tr th {
	font-weight: normal;
	padding: 3px 6px 3px 6px;
	text-align: left;
}

/* テーブルデータ */
tr td {
	margin: 0;
	padding: 2px 4px;
	text-align: left;
	vertical-align: top;
}

/* テーブルデータにURLなど英語だが改行したい文字が含まれる場合 */
table.d-url tr td{
	word-break: break-all;
}

tr.yellow,
tr td.yellow,
tr th.yellow {
	background-color: #FBF8D7 !important;
}

tr.gray,
tr td.gray,
tr th.gray {
	background-color: #f1f1f1 !important;
}

tr.red,
tr td.red,
tr th.red {
	background-color: #FEE9EA !important;
}

tr.red-s,
tr td.red-s,
tr th.red-s {
	background-color: #FDC4C7 !important;
}

tr.blue,
tr td.blue,
tr th.blue {
	background-color: #DCF3FC !important;
}

table.center tr th,
table.center tr td{
	text-align: center !important;
	vertical-align: middle !important;
}

/* テーブルキャプション */
table caption span.t-right {
	font-weight: normal;
    position: absolute;
    top: .4rem;
    right: 7px;
}


/* ----- 入力要素 ----- */
/* テキストボックス（文字） */
input.txt {
	padding: 2px 0 1px 0;
}

/* テキストボックス（金額） */
input.num {
	padding: 2px 0 1px 0;
	text-align: right;
}

/* インプット要素（ボタン） */
input.btn {
	padding: 4px 10px;
	font-size: 1.1rem
}

/* セレクト要素 */
select {
	cursor: pointer;
	vertical-align: middle;
}

/* テキストエリア */
textarea {
	padding: 2px;
}


/* ----- リスト ----- */
/* 構造化リスト */
dl {
	
}

dl ul li{
	margin-left: 0px;	
}

/* 項番つきリスト */
ol {
	margin-left: 30px;
}


ol li{
	margin-bottom: 6px;
	margin-left: 15px;
}

dd ol{
	margin-left: 10px;
}

/* 通常リスト */
ul {
	list-style: none;
}

ul li {
	margin-top: .7rem;
	margin-left: .5rem;
}

ul li ul {
	padding-left: 0px;
	margin-top: .4rem;
}

ul.list ol li {
	padding-left: 0px;
	margin-top: .4rem;
	background-image: none;
}

ul.list ul.number > li,
ul.list ul.innerlink > li,
ul.list ul.dl > li {
	background-image: none;
}


/* リスト（リストマーカー） */
ul.list > li,
li.list {
	list-style-type : disc; 
	margin-left: 20px;
}

ul.number li ul.list > li,
li.number ul.list > li{
	list-style-type : disc; 
}


/* リスト（番号付き） */
ul.number > li,
li.number {
	padding-left: 1.8rem;
    position: relative;
}

ul.number > li span.head-number,
li.number span.head-number {
	display: inline-block;
	width: 1.8rem;
	left: 0px;
	top: 0px;
	position: absolute;
}

/* "（1）"や"100"など見出しが長い場合 */
#main table.search ul.number li.wide,
ul.number li.wide {
	padding-left: 2.8rem;
}

#main table.search ul.number li.wide span.head-number,
ul.number li.wide span.head-number {
	width: 2.8rem;
}

ul.number li.wide_s {
	padding-left: 4rem;
}


/* "第10回"や"1000"など見出しが長い場合 */
ul.number li.wide_s span.head-number {
	width: 4rem;
}

/* リスト（注意書き） */
#main dl{
	margin-top: .7rem;
}
#main dl > dt, 
#main dl > dd {
	margin-top: 0;
}

#main dl > dd {
	margin-left: auto;
}
#main dl.note {
    clear: both;
    margin: 10px 0 0;
    width: 100%;
}

#main dl.note > dt {
    clear: both;
    /*display: inline;*/
    float: left;
    width: 4.5rem;
	height: auto;
}

#main dl.note > dd {
    margin: 0 0 0 4.7rem;
}

/* （注記1）で数字がつく場合 */
#main dl.wide > dt {
    width: 5.5rem;
}
#main dl.wide > dd {
    margin: 0 0 0 5.7rem;
}

/* dlが長くなる場合1 */
#main dl.wide_ss > dt {
    width: 6.5rem;
}

#main dl.wide_ss > dd {
    margin: 0 0 0 6.7rem;
}

/* dlが長くなる場合2 */
#main dl.wide_s > dt {
    width: 9.5rem;
}

#main dl.wide_s > dd {
    margin: 0 0 0 9.7rem;
}

/* dlが長くなる場合3 */
#main dl.wide_sss > dt {
    width: 16rem;
}

#main dl.wide_sss > dd {
    margin: 0 0 0 16.2rem;
}

/* dlが短くなる場合1 */
#main dl.short > dt {
    width: 2.5rem;
}

#main dl.short > dd {
    margin: 0 0 0 2.7rem;
}


/* システム内リンク */
.innerlink a,
a.innerlink,
span.innerlink{
	background: transparent url('../img/png/chevron_arrow_right_gray_16.png') no-repeat 0 .2rem;
	padding-left:1.2rem;
	display: inline-block;
	vertical-align: top; 
}

/* リンクリスト（新規ウィンドウ） */
.new-window a,
a.new-window,
span.new-window{
	background: transparent url('../img/png/new_window_16.png') no-repeat 0 .2rem;
	padding-left:1.35rem;
	display: inline-block;
	vertical-align: top; 
}

/* ダウンロードリンク */
.dl a,
a.dl,
span.dl{
	background: transparent url('../img/png/download_16.png') no-repeat 0 .2rem;
	padding-left: 1.2rem;
	display: inline-block;
	vertical-align: top; 
	
}
/* ○○KB部分の改行対策 */
li.dl a{
/*	display: inline;*/
}


/* リンクリスト（ページジャンプ） */
.pagejump a,
a.pagejump,
span.pagejump{
	background: transparent url('../img/png/arrow_bottom_gray_16.png') no-repeat 0 .125rem;
	padding-left: 1.3rem;
	display: inline-block;
	vertical-align: top; 
}

/* リンクリスト（ページジャンプ）白 */
.pagejump_white a,
a.pagejump_white,
span.pagejump_white{
	background: transparent url('../img/png/arrow_bottom_white_16.png') no-repeat 0 .125rem;
	padding-left: 1.3rem;
	display: inline-block;
	vertical-align: top; 
}

.link_box a{
	/*text-decoration: none;*/
} 

/* リンクリスト（様式用紙のダウンロード） */
.paper a,
a.paper,
span.paper {
	background: transparent url('../img/png/paper_16.png') no-repeat 0 .2rem;
    padding-left: 1.2rem;
	display: inline-block;
	vertical-align: top; 
}

/*サイトマップ用*/

ul.sitremap li.pagejump{
    padding-left: 1.3rem;
	background: transparent url('../img/png/arrow_bottom_gray_16.png') no-repeat 0 .3rem;
	display: inline-block;
	vertical-align: top; 
}

ul.sitremap li.new-window{
	background: transparent url('../img/png/new_window_16.png') no-repeat 0 .2rem;
    padding-left:1.35rem;
	display: inline-block;
	vertical-align: top; 
}


/* 右寄せリンク */
div.t-right ul {
	display: inline-block;
}

/* ----- 境界線 ----- */
hr {
	border-width: 2px 0 0 0;
	border-style: solid;
	border-color: #95C75C;
	height: 2px;
	margin: 20px 0;
}

hr.dot {
	border-width: 1px 0 0 0;
	border-style: dotted;
	border-color: #666666;
	height: 1px;
	margin: 10px 0;
}

/* ----- ルビタグ ----- */
ruby rt,
ruby rp{
	font-size: .8rem;
}

/* ========== 汎用クラス ========== */

.clearfix:after,
#navigation ul.breadcrumbs:after,
#contents:after,
#main ul.paper:after,
#main ul.paper li:after,
#main ul.horizontal:after,
#main ul.horizontal li:after,
#main ul.horizontal-list:after,
#main ul.horizontal-list li:after,
#main div.vertical:after,
#main div.action:after,
#main div.contents-footer:after,
#main ul.tab:after,
#main div.section-container:after,
#main div.link_box:after,
#main dl.note:after,
#main category-top:after,
#main ul.information-tab:after
 {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.t-xlarge {
	font-size: 1.5rem !important;
	font-weight: bold;
}


/* 文字サイズ120％ */
.t-large {
	font-size: 1.2rem !important;
}

/* 文字サイズ100％ */
.t-middle {
	font-size: 1rem !important;
}

/* 文字サイズ90％ */
.t-small {
	font-size: .9rem !important;
}

/* 文字サイズ80％ */
.t-xsmall {
	font-size: .8rem !important;
}

/* 文字サイズ70％ */
.t-xxsmall {
	font-size: .7rem !important;
}

/* 改行禁止 :レスポンシブの時は解除　*/
.t-nowrap {
	white-space: nowrap;
}

/* 中央寄せ */
.t-center {
	text-align: center;
}

/* 右寄せ */
.t-right {
	text-align: right;
}

/* 上寄せ */
.v-top {
	vertical-align: top;
}

/* 中寄せ */
.v-middle {
	vertical-align: middle !important;
}

/* 下寄せ */
.v-bottom {
	vertical-align: bottom !important;
}

/* 中心寄せ */
.center {
	text-align: center !important;
	vertical-align: middle !important;
}


/* ----- 表示調整 ----- */
.no-display {
	display: none !important;
}

.no-bg{
	background: none !important;
}

.no-indent{
	text-indent: 0 !important;
}

.indent{
	text-indent: 1rem;
	display: inline-block;
}

.block {
	display: block;
}

.inline-block {
	display: inline-block;
}

.f-right{
	float: right;
}

.f-left{
	float: left;
}

.mar-0{
	margin: 0px !important;
}

.mar-5{
	margin: 5px !important;
}

.mar-t-50{
	margin-top: 50px !important;
}

.mar-t-30{
	margin-top: 30px !important;
}

.mar-t-20{
	margin-top: 20px !important;
}

.mar-t-10{
	margin-top: 10px !important;
}

.mar-t-5{
	margin-top: 5px !important;
}

.mar-t-0{
	margin-top: 0px !important;
}

.mar-b-30{
	margin-bottom: 30px !important;
}

.mar-b-20{
	margin-bottom: 20px !important;
}

.mar-b-10{
	margin-bottom: 10px !important;
}

.mar-b-5{
	margin-bottom: 5px !important;
}

.mar-b-0{
	margin-bottom: 0px !important;
}

.mar-l-0{
	margin-left: 0px !important;
}

.mar-l-10{
	margin-left: 10px !important;
}

.mar-l-20{
	margin-left: 20px !important;
}

.mar-l-50{
	margin-left: 50px !important;
}

.mar-l-100{
	margin-left: 100px !important;
}

.mar-r-0{
	margin-right: 0px !important;
}

.mar-r-10{
	margin-right: 10px !important;
}

.pad-b-10{
	padding-bottom: 10px !important;
}

.pad-b-5{
	padding-bottom: 5px !important;
}

.pad-0{
	padding: 0px !important;
}

.pad-5{
	padding: 5px !important;
}

.w-50{
	width: 50px;
	display: inline-block !important;
}

.w-150{
	width: 150px;
	display: inline-block !important;
}

.w-500{
	width: 500px;
	display: inline-block !important;
}

.half-size{
	width: 50% !important;
}

.border{
	border: 1px #999 solid
}

.w-100percent{
	width:100%;
}

/* --------------------- 見出し ----------------- */
#main h1 {
	margin: 30px 0 0 0;
	padding: .7rem 0 .6rem .7rem;
	font-size: 1.5rem;
	line-height: 1.1;
	border-left: solid .625rem #5C7F5B;/*左線（実線 太さ 色）*/
}

#main div.h1_topics{
	margin: 2rem 0 0 0;
	padding: .7rem 0 .6rem .7rem;
	font-size: 1.5rem;
	border-left: solid .625rem #5C7F5B;/*左線（実線 太さ 色）*/
}

#main div.h1_topics h1{
	padding-left: 0px;
	padding-bottom: 0px;
	margin: 2px 0 0 0;
	border-left: none;/*左線（実線 太さ 色）*/
}

#main div.h1_topics span{
	display: block;
	margin: 2px 0 0 0;
	font-size: 1.5rem;
}

#main h1.h1_yado{
	border-left: none;
}
#main h1.h1_yado img{
	display: block;
	margin: 0 auto;
}
#main h2 ,
table caption.like-h2{
	margin: 1.5rem 0 0 0;
	padding: .4rem 0 .275rem .7rem;
	background: #F2EDDD;
	color: #333;
	font-size: 1.375rem;
	font-weight: normal;
	border-left: solid .375rem #5C7F5B;
	line-height: 1.2;
}

/* ---リンク付き中見出し--- */

#main h1 a,
#main h2 a ,
#main h3 a ,
#main h4 a ,
#main h5 a {
	/*text-decoration: none;*/
}

#main h2.h2_link a {
	background-image: url(../img/png/chevron_arrow_right_gray_24.png);
    background-repeat: no-repeat;
    padding: 0 0 0 15px;
    background-position: -8px 3px;
}
#main h2.dl a {
	background-image: url(../img/png/download_24.png);
    padding: 0 0 0 24px;
    background-position: -3px 3px;
}
#main h2.new-window a {
	background-image: url(../img/png/new_window_24.png);
    padding: 0 0 0 26px;
    background-position: -1px 3px;
}
#main h2.paper a {
	background-image: url(../img/png/paper_24.png);
    padding: 0 0 0 24px;
    background-position: -3px 3px;
}
#main h2.h2_hosoku,
table caption.like-h2 {
	display: flex;
    justify-items: baseline;
    justify-content: space-between;
    flex-wrap: wrap;
}

#main h2.h2_hosoku span {
	font-weight: normal;
/*	position: absolute;*/
	top: .4rem;
	right: 7px;
}

#main h2 img{
	vertical-align: middle;
	margin-left: 5px;
	background: none;
}

#main h3,
table caption.like-h3 {
	margin: 1.5rem 0 0 0;
	padding: 0 0 1px .7rem;
	font-size: 1rem;
	font-weight: normal;
	border-left: solid .325rem #5C7F5B;/*左線（実線 太さ 色）*/
	border-bottom:solid #96CC93 1px;
}
#main h3.h3_img {
	margin: 0 0 8px 0;
	padding: 0;
	background: none;
	border-bottom: none;
}

#main h3 img{
	vertical-align: middle;
	margin-left: 5px;
	margin-bottom: 3px;
}

#main h3.new-window a {
    background-image: url(../img/png/new_window_16.png);
    background-repeat: no-repeat;
    padding: 0 0 0 23px;
    background-position: 1px 3px;
}
#main h3.h3_yado_miryoku{
	background: none;
	padding: 0;
	margin: 0;
	border: none;
}

#main h3.h3_yado_miryoku img{
	margin: 0;
}

#main h4,
table caption.like-h4 {
	position: relative;
	margin: 1rem 0 0 .5rem;
	padding: 0 0 1px .7rem;
	font-size: 1rem;
	font-weight: normal;
}
#main h4::before,
table caption.like-h4::before {
    content: '';
    position: absolute;
    left: 0px;
    top: 0.25rem;
    display: inline-block;
    width: .25rem;
    height: 1rem;
    background-color: #5C7F5B;
    border-radius: 2px;
  }
  
table caption.like-h2,
table caption.like-h3,
table caption.like-h4 {
	margin-bottom: .7rem;
}
#main h5 {
	position: relative;
	margin: 1rem 0 0 .5rem;
	padding: 0 0 1px 1rem;
	font-size: 1rem;
	font-weight: normal;
}

#main h5::before {
    content: '';
    position: absolute;
    left: .3rem;
    top: 0.25rem;
    display: inline-block;
    width: .25rem;
    height: 1rem;
    background-color: #5C7F5B;
    border-radius: 2px;
  }


/* ----- 画像表示 ----- */
/* 画像とキャプション（単数） */
#main p.img-center {
	text-align: center;
	margin: 1rem 0 0 0;
}

#main p.img-center img {
	margin-bottom: 2px;
}

#main p.img-center span {
	display: block;
}

#main li img {
	margin: 0px 2px;
}

#main ul.btn_toriatu li img {
	margin: 0px 6px;
	vertical-align: top;
}


#main ul li img {
	margin: 0px 2px;
}

#main p.img-horizontal {
	text-align: center;
	margin: 20px 0 0 0;
}

#main p.img-horizontal span{
	display: inline-block;
	
}

#main p.hosoku{
	margin: 5px 0;
	padding-left: 17px;
	background: transparent url('../img/contents_icon_hosoku.gif') no-repeat 2px 4px;
	text-indent: 0;
}


/* ----- リスト ----- */
#main ol {
	margin-top: .8rem;
}

#main ul {
	margin-top: .8rem;
	margin-left: .5rem;
	margin-bottom: 0;
}

/* 並列リスト */
#main ul.horizontal {
	display: flex;
	flex-wrap: wrap;
	justify-content:stretch;
}

#main ul.horizontal li {
	/*width: 14rem;*/
	margin-bottom: 5px;
	margin-right: 15px;
	padding-top: 0px;
	vertical-align: top;
}

/* 二段組みリスト */
#main ul.horizontal-list li {
	display: inline-block;
	margin-bottom: 5px;
	margin-right: 5px;
	padding-top: 2px;
	vertical-align: top;
}

#main ul.long li {
	width: 23.5rem;
}

#main ul.short li {
	width: 12rem;
}


#main ul.vertical-link li a {
	display: block;
}

/* ------------- メッセージ ------------- */
#main div.message {
	line-height: 150%;
	margin: 10px 0 20px 0;
	padding: 1px 2px 1px 2px;
	border: solid 1px #C2C2C2;
	border-radius: 5px 5px 5px 5px;
}

#main div.message-inner {
	padding: 8px 20px 14px 70px;
	min-height: 30px;
}

#main div.message-inner p{
	margin: 0;
}


/* 強調文章 */
#main div.emphasis {
	margin: 12px 0 12px 0;
	padding: 8px 15px 11px 15px;
	background-color: #FFF;
}

#main div.emphasis h3,
#main div.emphasis h4{
	margin-top: .5rem;
}

/* 強調文章 */
#main div.danger {
	margin: 12px 0 12px 0;
	padding: 8px 15px 11px 15px;
	background-color: #FFF;
	border: solid 2px #BB1212;
}

#main div.danger h3{
	background: transparent url('../img/png/danger.png') no-repeat 0 0;
	padding: 2px 0px 2px 30px;
	font-size: 1.5rem;
	font-weight: bold;
    border-left: medium;
    border-bottom: solid #BB1212 1px;
    line-height: 100%;
}

/* 担当部署 */
#main div.tantou {
	display: flex;
	flex-wrap: nowrap;
	margin: 50px 0 0 0;
	border:none;
}

#main div.tantou span.tantou_label {
	font-size: 1.1rem;
	border-radius: 5px 0 0 5px ; 
	background-color: #AECEAB;
	flex-basis: 7rem;
	flex-shrink: initial;
	display: flex;
	align-items: center;
	justify-content: center; 
}

#main div.tantou span.tantou_detail {
	/*width: calc(100% - 7rem);
	margin-left: auto;*/
	padding:.7rem 1rem;
	background-color: #fff;
	border-radius: 0 5px 5px 0; 
    flex-grow:1;
}


/* 事務担当者コーナー */
#main div.login_box {
    background-color: #FCF8DA;
    font-size: .9rem;
	margin: 12px 0 12px 150px;
	padding: 8px 10px 8px 10px;
	border: none;
}



/* --------Q&A-------- */
#main div.qanda p{
	text-indent: 0;
	padding: 8px 5px;
	margin: 0;
}

#main div.qanda div.qanda_q,
#main div.qanda div.qanda_a {
	margin: 20px 0 0 0;
	padding: 0px 0px 0px 4.5rem;
	border: none;
	border-radius: 5px;	
	position: relative;
}

#main div.qanda div.qanda_q span.number,
#main div.qanda div.qanda_a span.number {
	font-size: 1.4rem;
	font-weight: bold;
	width: 4rem;
	color: #516F50;
	left: 3px;
	top: 10px;
	letter-spacing: 0.1rem;
	position: absolute;
	text-align: center;
}
/* --Q-- */
#main div.qanda div.qanda_q {
	background-color: #EAE5D2;

}
/* --A-- */
#main div.qanda div.qanda_a span.number {
	color: #BF3A00;
}

#main div.qanda div.qanda_a span.head-number {
	font-size: 1rem;
	font-weight: normal;
	width: 3rem;
	color: #333;
	left: 0;
	top: 1px;
	letter-spacing: 0.1rem;
	position: absolute;
	text-align: center;
}

/* ------------お知らせエリア---------- */
#main div.oshirase {
	margin: 20px 0;
	position:relative
}

#main div.oshirase ul {
	margin-top:0;
	margin-left: 0;
}

#main div.oshirase ul li {
	margin: 5px 0 0 0;
	padding: 0 10px 4px 10.5rem;
	position: relative;
}

#main div.oshirase ul li span.data {
    width: 10.5rem;
    left: 0px;
    top: 0px;
    letter-spacing: 0.1rem;
    position: absolute;
	display: inline-block;
}


#main div.oshirase ul.innerlink li,
#main div.oshirase ul.dl li {
	background: none;
	margin-bottom: 5px;
	/*border-bottom: #666666 1px dotted;*/
}


#main div.oshirase ul.innerlink li.last,
#main div.oshirase ul.dl li.last {
	border-bottom: none;
}


#main div.oshirase ul.innerlink li a {
	position: relative;
	padding-left: 1.1rem;
}

#main div.scroll_box {
	padding: 4px;
	border: #aaa solid 1px;
	background-color: #FFF;
    height: 200px;
    overflow-y: scroll;
    overflow-x: hidden;

}

#main div.scroll_box ul.innerlink li,
#main div.scroll_box ul.dl li{
	/*border-bottom: #cd853f 1px dotted;*/
}

#main div.oshirase ul li.no-border
{
	border-bottom: none;
}
/* ----- ﾘﾝｸﾎﾞｯｸｽ（ﾍﾟｰｼﾞ内ﾘﾝｸ用） ----- */
#main div.link_box {
	margin: 12px 0 12px 0;
	padding: 8px 15px;
	border: none;
	border-radius: 5px;
	background-color: #5C7F5B;
	color: #ffffff;
}

#main div.link_box ul {
	margin: 0;
}

#main div.link_box a{
	color: #ffffff;
}

#main div.link_box ul {
	margin-bottom: 0;
}


#main div.link_box ul.pagejump li a,
#main div.link_box li.pagejump a{
	background: transparent url('../img/png/arrow_bottom_white_16.png') no-repeat 0 .125rem;
    padding-left: 1.3rem;
}

/* ----- テーブル ----- */
#main table {
	width: 100%;
	margin-top:1.5rem;
	border-left: none;
	border-top: none;
	border-bottom: none;
	border-right: none;
}

#main table caption{
	margin-bottom:.5rem;
}

#main table tr th,
#main table tr td {
	border: 1px solid #859982;

}
#contents-table table tr th,
#contents-table table tr td {

	border-left: none;
	border-top: 1px solid #859982;
	border-bottom: none;
	border-right: none;

}

#main th {
	background-color: #AECEAB;
	vertical-align: top;
}

#main td {
	background-color: #FFFFFF;
}

#main table span.caution {
	margin-left: 4px;
	color: #920000;
	white-space: nowrap;
}

#main table span.guidance {
	margin-right: 6px;
	margin-left: 6px;
}

/* リスト（縦方向）テーブル */

#main table tr.odd td {
	background-color: #FFFFFF;
}

#main table tr.even td {
	background-color: #F2F1EE;
}

#main table.stripe > tbody > tr:nth-child(odd) td{
	background-color: #F2F1EE;
}


#main table td.beige  {
	background-color: #FCFAEF;
}

#main table td.num {
	text-align: right;
}

#main table td.action {
	text-align: center;
}

#main table td.action input {
	margin: 0;
}

#main table td.action_multi {
	text-align: right;
}


/* 横方向テーブル */
#main table.row {

}

#main table.row th {
	width: 200px;
}


/* マトリクステーブル */
#main table.matrix {

}

/* ラベル */
#main label {
	display: inline-block;
	margin: 0 12px 0 3px;
	cursor: pointer;
	white-space: nowrap;
	vertical-align: middle;
}

#main label input {
	margin-right: 3px;
}

#main label img{
	vertical-align: middle;
}

/*テーブル内部ul要素*/
#main td ul {
	margin-top: 0;
	margin-bottom: 5px;
}

#main td ul li{
	/*margin-left: 0px;*/
}

/*共済業務カレンダー用パーツ*/

#main table.calendar ul {
	margin: 0;
}

/*青背景（土曜日）*/
#main table.calendar tr.saturday td{
	background-color :#DCF3FC;
}

/*赤背景（日曜日）*/
#main table.calendar tr.sunday td{
	background-color: #FEE9EA;
}




/*黄背景（補足）*/
#main table.calendar tr.hosoku td{
	vertical-align: top;
	background-color: #FBF8D7;
}

#main table.calendar tr td span.head-number,
#main table.calendar tr td span.kakekin,
#main table.calendar tr td span.kashitsuke,
#main table.calendar tr td span.teiki,
#main table.calendar tr td span.tsumikyo,
#main table.calendar tr td span.tyokin,
#main table.calendar tr td span.other {
	font-size: .9rem;
	display: inline-block;
	color: #FFF;
	padding: 3px 3px 2px 3px;
	margin-right: 3px;
	line-height: 100%;
}

#main table.calendar tr td span.head-number {
	color: #333;
}

/*アイコン*/
#main table.calendar tr td span.kakekin{
	background-color: #CB3503;
}

#main table.calendar tr td span.kashitsuke{
	background-color: #26847B;
}

#main table.calendar tr td span.teiki{
	background-color: #BF3395;
}

#main table.calendar tr td span.tsumikyo{
	background-color: #327405;
}

#main table.calendar tr td span.tyokin{
	background-color: #2869A9;
}

#main table.calendar tr td span.other{
	background-color: #484B57;
}

/*トピックス内でアイコン使用時*/
#main span.calendar-other{
	display: inline-block;
	color: #FFF;
	padding: 3px 3px 2px 3px;
	margin-right: 3px;
	margin-top: 5px;
	line-height: 100%;
	background-color: #484B57;
}


/* ----- 刊行物レター ----- */
#main p.kanko-new img{
	vertical-align: middle;
	margin: 0 0 0 3px;
}


/* ----- セクションボックス ----- */
#main div.section-container {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
	width:100%;
}
#main div.section-container.content-center {
	justify-content:center;
}
#main div.section-container.space-around {
	justify-content:space-around;
}
/* セクションボックス要素 */
#main div.section-container div.section {
	/*float: left;*/
}

/* 分割 */
#main div.one div.section {
	width: 100%;
}

#main div.two div.section {
	width: 47%;
}

#main div.three div.section {
	width: 32%;
}
#main div.four div.section {
	width: 24%;
}

#main div.five div.section {
	width: 18%;
}

/* セクションボックスの内部要素 */
#main div.section-container div.section div.section-inner {
	/*position: relative;
	padding-right: 16px;*/
}
/* セクションボックスの内部要素(padding-right:0;) */
#main div.section-container div.section div.section-inner-right {
	/*position: relative;*/
	}
/* セクションボックスの内部要素(階段) */
#main div.section-container div.section div.section-inner-under {
/*	position: relative;
	padding-right: 16px;
	padding-top: 78px;*/
}

/* ----- スクロール表示 ----- */
#main div.scroll{
	overflow-y: scroll;	/* スクロール表示 */
	overflow-x: hidden;
	height: 200px;
	border: #7F9DB9 1px solid;
}

#main div.scroll table{
	margin: 0;
	margin-right: -16px;
}


/* ----- ページトップ ----- */
#main p.pagetop {
	display:none;

}
#pagetop{
	position: fixed;
	bottom: 20vh;
	right:calc((100% - 1268px) / 2 + 280px);
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
	width:70px;
	height: 70px;
	border-radius: 70px;
	font-size: .7rem;
	color: #fff;
	text-decoration: none;
	z-index: 999;
	box-shadow: 2px 2px 6px rgba(0,0,0,0.3);
}
#pagetop span {
    width: 100%;
    position: absolute;
    top: 38%;
    text-align: center;

    line-height: 1rem;	
}
#pagetop::before{
	position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
    top: .6rem;
    left: calc(50% - 13px);
    width: 24px;
    height: 24px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(-45deg);
    border-radius: 2px;
    transform-origin: 50% 50%;
}
a#pagetop:visited,
a#pagetop:hover, 
a#pagetop:active{
	color: #fff;
}


/* -------------------- 様式用紙をダウンロードしたい用CSS -------------------- */


#main h1.search{
	padding-top: 3px;
}

#main h1.search img{
	margin: 0px 0px -3px 2px;
}

#main h1.search span.icon{
	font-size: .8rem;
	font-weight: normal;
	white-space: nowrap;
	margin-left: 7px;
}

/* アイコンの凡例 */
div.icon-sample {

}

div.icon-sample ul {
	list-style: none;
	text-align: right;
	float: right;
	margin-top: 0;
	padding: 5px 5px 3px 10px;
	background-color: #ffffff;
}

div.icon-sample ul li{
	text-align: left;
	margin-bottom: 4px;
}

div.icon-sample ul li img{
	vertical-align: middle;
	margin-right: 7px;
}

/* テーブル */

#main table.search td.icon{
	font-size: .88rem;
	vertical-align: middle;
	text-align: center;
	padding-top: 6px;
}

#main table.search td.btn span{
	display: block;
	margin: 3px 0 3px 0;
}

#main table.search td.btn img{
	margin: 0px 3px 4px 5px;
	vertical-align: middle;
}

#main table.search td img{
	margin: 0 3px 1px 2px;
	vertical-align: middle;
}

#main table.search table{
	margin: 10px;
	font-size: 1.2rem;
}

a img {
	border: none;
}

/* 利用についてページ用 */
img.icon {
	margin: 0px 3px 4px 2px;
	vertical-align: middle;
}

#main h3.keyword,
#main h3.category,
#main h3.name {
	background: none;
	border-bottom: none;
	display: inline-block;
	padding-right: 30px;
}

#main h3.keyword{
	background-color: #DBECFF;
}

#main h3.category{
	background-color: #FFE6D2;

}

#main h3.name{
	background-color: #EDF4D7;
}

/* このページのトップへ */
div.pagetop{
	text-align: right;
	margin-bottom: 10px;
}

/* 詳細ページ 請求方法内の大きい文字 */
#main table.search td p.file span.text{
	font-size: 1.4rem;
}

/* 詳細ページ ダウンロードファイル */
#main table.search td p.file a{
	margin-right: 3px;
}

/* 縦分割用span */
#main table.search td p.file span.block{
	display: inline-block;
	line-height: 150%;
}


/* 詳細ページ記入例テキスト */
#main table.search td p.rei{
	margin-bottom: 3px;
}

#main table.search td p.rei span.text{
}


/* 詳細ページ記入例 */
#main table.search td span.rei a{
}

#main table.search ul > li {
	list-style-type : disc; 
	margin-left: 20px;
}

#main table.search ul.none > li,
#main table.search ul.innerlink > li,
#main table.search ul.new-window > li,
#main table.search ul.dl > li,
#main table.search ul.pagejump > li,
#main table.search ul.paper > li,
#main table.search ul > li.none,
#main table.search ul > li.innerlink,
#main table.search ul> li.new-window ,
#main table.search ul > li.dl,
#main table.search ul > li.pagejump,
#main table.search ul > li.paper {
	list-style-type : none; 
	padding-left: 0;
	background: none;
}


#main table.search ul.number > li {
	list-style-type : none; 
	background-image: none;
	padding-left: 1.8rem;
}
/*
#main table.search ol li ul.number li{
	list-style-type : none; 
	background-image: none;
}*/

#main table.search ol ul ol.list li{
	list-style-type : none; 
	background-image: none;
	padding-left: 0px;
}

/* テーブル内のリスト */
#main table ol{
	padding-left: 20px;
	margin-left: 0px;
	margin-top: 0;
	margin-bottom: 0px;
}

#main table ol li ul {
	
}

/* imageなしリスト */
#main table ul.none {
	list-style: none;
}


#main table.search ul.paper li {
	list-style: none;
	background-image: none;
}

/*-------- 様式用紙インデックスページ --------*/
/* 検索BOX */
div#search{
    background-color: #DBECFF;
    margin: 12px 100px 0;
    padding: 5px;
    text-align: center;
}

div#search form{
	margin: 0 0 3px 0;
	padding: 0 0 5px;
}

div#search p.txt {
	margin: 0 0 7px 0;
	padding: 0px;
	text-align: left;
}

div#search p.txt img{
	margin: 0px;
}


div#search a img {
	margin: 0 0 0 6px;
}

div#search a img {
	margin: 0 0 0 6px;
}

.search_btn{
    background: url('../img/search_top_btn.gif') no-repeat scroll center top transparent;
    height: 23px;
    width: 64px;
    text-indent: -9999px;

    border: medium none;
    cursor: pointer;
    display: inline-block;
    margin-left: 3px;
		vertical-align:middle;
}

/* その他の検索 */
p.search_method a{
	background: transparent url('../img/search_icon_keyword.gif') no-repeat right center; 
	padding-right: 15px;
}

table.category_index{
	background-color: #FDF4E1;
	margin-bottom: 10px;
}

table.name_index{
	background-color: #EDF4D7;
	margin-bottom: 10px;
}

table.category_index ul {
	margin-top: 0;
	margin-bottom: 0;
}

div.category-top{
	margin-top: 5px;
}

div.category-top a{
	margin-right: 5px;
}

div#search form,
div#keyword_search form {
    background-color: #DBECFF;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    text-align: center;
}

div#search form div,
div#keyword_search form div{
	margin-bottom: 10px;
}

div#search form div,
div#keyword_search form div{
	margin-bottom: 10px;
}

div#keyword_search form input.search-btn{
	padding: 3px 5px;
}

/* 改行位置揃え */
span.layout-span{
	display:inline-block;
	vertical-align:top;
}


.search-txt{	
	border-bottom:1px dotted #666666;
}

.btn-image{
	vertical-align: middle;
	 margin: 0 4px;
}


/* 改行位置揃え */
textarea {
	padding: 2px;
}

/* 投書箱のテキストエリア */
p.no-indent textarea{
	width: 670px;
}



/* -------------------- しがくのやど -------------------- */


/*---各宿情報のタブ---*/

#main ul.information-tab {
	display: flex;
	justify-content: space-between;
	padding-left: 0px;
	border-bottom: solid 4px #7A4531;
	margin: 20px 0;
	width: 100%;
}
#main ul.information-tab::after {
	content: none;
}
#main ul.information-tab li {
	margin: 0;
	background: #E5DECA;
	border-top-right-radius: .5rem;
	border-top-left-radius: .5rem;
	cursor: pointer;
	width:100%;
	text-align: center;
}

#main ul.information-tab li:not(:first-child) {
	margin-left: 5px;
}

#main ul.information-tab li.selected {
	background: #7A4531;
}

#main ul.information-tab li.selected a{
	color:#ffffff;
}

#main div.tab_container > div{
	display:none;
}
#main div.tab_container > div.info-show{
	display:block;
}

#main ul.information-tab li a  {
    display: block;
    color: #333;
    text-decoration: none;
    width: 100%;
    height: 2rem;
    padding: 1.2rem 0 .7rem 0;
}
/* スマホ用*/
#main ul.information-tab-sp{
	display:none;
}



#main div.tab_container {
	/*display:none;*/
}

#main div.tab_contents {
/*	padding-top: 40px;*/
}

/*---各宿情報のタブのJSonの時ポインターにする---*/
#main ul.information-tab li input.pointer{
	cursor: pointer !important;
}


/*----------------------------空室予約ボタン---------------------------*/

#main p.yado_btn_yoyaku{
}

#main p.yado_btn_yoyaku a{
	height: 60px;
	vertical-align: middle;
/*	display: inline-block;
	margin: 0 7px;*/
}

#main p.yado_btn_yoyaku a{
	width: 165px;
/*	background: transparent url('../img/yado_btn_yoyaku.png') no-repeat 0 top;*/
}

#main p.yado_btn_yoyaku a:hover{
/*	background: transparent url('../img/yado_btn_yoyaku.png') no-repeat 0 bottom;*/
}

#main p.yado_btn_yoyaku a span{
/*	text-indent: -9999px;
	display: inline-block;*/
}

/*-------空室予約ボタン小---------*/
#main p.yado_btn_yoyaku_s a{
/*	height: 45px;
	display: inline-block;
	margin-top: 5px;*/
}

#main p.yado_btn_yoyaku_s a{
	width: 165px;
/*	background: transparent url('../img/yado_btn_yoyaku_s.png') no-repeat 0 top;*/
}

#main p.yado_btn_yoyaku_s a:hover{
/*	background: transparent url('../img/yado_btn_yoyaku_s.png') no-repeat 0 bottom;*/
}

#main p.yado_btn_yoyaku_s a span{
/*	text-indent: -9999px;
	display: inline-block;*/
}

/*-------空室予約ボタン最小---------*/

#contents p.yado_btn_yoyaku{
}

#contents p.yado_btn_yoyaku a{
	height: 60px;
	vertical-align: middle;
/*	display: inline-block;
	margin: 0 7px;*/
}

#contents p.yado_btn_yoyaku a{
	width: 165px;
/*	background: transparent url('../img/yado_btn_yoyaku.png') no-repeat 0 top;*/
}

#contents p.yado_btn_yoyaku a:hover{
/*	background: transparent url('../img/yado_btn_yoyaku.png') no-repeat 0 bottom;*/
}

#contents p.yado_btn_yoyaku a span{
/*	text-indent: -9999px;
	display: inline-block;*/
}


#main table span.user{
	width: 11.5rem;
	display: inline-block;
}

#main table span.money{
	width: 13rem;
	display: inline-block;
	margin: 5px 0px 5px 15px;
	font-weight: bold;
}

#main table span.money span{
	font-size: 1.5rem;
}


/*-------おトクプラン一覧--------*/
#main table.yado_plan_table{
	/*border-top: 1px dotted #666666;*/
	border-collapse :separate;
	border-spacing: 0px 3px;
	border:none;
}

#main table.yado_plan_table tr{
/*	border-bottom: 1px dotted #666666;*/
}

#main table.yado_plan_table tr td{
/*	border: none;
	background-color: #fff;*/
	line-height: 200%;
	vertical-align: middle; 
	border-left: none;
    border-top: none;
    border-bottom: none;
    border-right: none;
}

#main table.yado_plan_table tr td.plan{
	line-height: 150%;
	padding: 8px;
}

#main table.yado_plan_table tr td.money{
	font-weight: bold;
	text-align: right;
}

#main table.yado_plan_table tr td.money span{
	font-size: 1.5rem;
}

#main span.caption{
	display: block;
	text-align: center;
}

#main ul.horizontal-icon li{
	margin: 5px 0 0 0;
}

/*----------------------------やどトップ＆特集---------------------------*/

#main div.special_box_bottom{
	background: transparent url('../yado/img/top_special_box_bottom.png') no-repeat 0 bottom;
	padding-bottom: 15px;
}

#main div.special_box_top{
	padding: 15px 17px 0 17px;   
	background: transparent url('../yado/img/top_special_box_top.png') no-repeat 0 top;
}

#main div.special_box_top h2,#main div.special_box_top h1{
	background: none;
	border: none;
	margin: 0 0 5px 0;
	padding: 0;
}

#main div.special_box_text{
	width: 215px;
	background: transparent url('../yado/img/top_special_box_line.png') repeat-y;
}

#main div.special_box_text_detail{
	padding-top: 10px;
	background: transparent url('../yado/img/top_special_box_line.png') repeat;
}

#main span.yado_name{
	display: block;
	padding-left: 25px;
	background: transparent url('../yado/img/yado_icon_yadoname.png') no-repeat left 0;
	font-size: 1.2rem;
	color: #4C3F2C;
	margin-bottom: 5px;
}

#main h2.yado_top{
	background: none;
	border: none;
	margin: 0 0 5px 0;
	padding: 0;	
}

#main h2.yado_top img{
	margin: 0;
}

#main div.plan_box{
	padding: 5px 10px 10px 10px;
}

#main div.plan_box div{
	width: 140px;
}

#main div.plan_box div a{
	display: block;
}

#main dl.date dt{
	width: 9rem;
}

#main dl.date dd{
    margin: 0 0 0 9.2rem;
}


/*-------------------------やどメンバーズカードボタン------------------------*/

#main a.yado_em_btn{
	background-color: #636052;
	color: #ffffff;
	font-size: 1.1rem;
	text-decoration: none;
	padding: 12px 20px;
	border-radius: 7px;
	margin-top: 10px;
	display: inline-block;
	min-width: 300px;
}

#main a.yado_em_btn:hover{
	background-color: #726F63;
}




/*-----------------葉山インデックスページのCIGタグ埋め込み部分---------------------*/

div.webcgi table tr td {
	background-color: transparent !important;
	border: none !important;
	line-height: 170%;
}



/* ========== ストレスチェック ========== */

/* inputボタン */

#main form.check{
	background-color: transparent;
	text-align: left;
}


/* ========== アイコン ========== */

/*様式用紙*//*
span.icon-paper::before{
    content: url(../img/png/paper_24.png);
    vertical-align: text-bottom;
	display: inline-block;
	padding-right: 5px;
    width: .8rem;
    height: .8rem;
}*/
span.icon-paper{    
	background: transparent url(../img/png/paper_24.png) no-repeat -2px 0;
    padding: 0px 0 0 21px;
}

/*事務担当者アイコン*/
span.icon-contents_jimu{    
	background: transparent url(../img/png/contents_jimu_32.png) no-repeat 0 0;
    padding: 3px 5px 3px 34px;;
}

/*加入者アイコン*/
span.icon-contents_kanyu{
	background: transparent url(../img/png/contents_kanyu_32.png) no-repeat 0 0;
    padding: 3px 5px 3px 34px;
}

/*様式用紙アイコン*/
span.icon-contents_konna{
	background: transparent url(../img/png/contents_konna_32.png) no-repeat 0 0;
    padding: 3px 5px 3px 34px;
}

/* ========== リンクボタン ========== */
a.btn_block,
button.btn_block{    
    display: block;
/*    width: 100%;*/
    border: none;
    border-radius: 5px;
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
    font-size: 1rem;
    padding: 14px ;
    margin: 10px auto 0 auto; 
    line-height: 1;
	text-decoration: none;   
	color:#ffffff;
	text-align: center;
}
a.btn,
button.btn{    
    display: inline-block;
    border: none;
    border-radius: 5px;
	background:linear-gradient(90deg, #5C7F5B  0% , #4B664A 100%);
    padding: .4rem ;
    line-height: 1;
	text-decoration: none;   
	color:#ffffff;
	text-align: center;
}

a.btn-white,
button.btn-white{    
	background-image:none;
	background-color: #fff;
	color:#5C7F5B;
}
a.btn-orange,
button.btn-orange{  
	background-image:none;
	background-color: #FFA500;
	color:#fff;
}
a.btn:hover,
button.btn:hover{
	opacity: 0.8;
}

a.btn_big,
button.btn_big{    
    padding: 20px 30px ;
}
a.btn_100,
button.btn_100{    
	width: 100%;
}

button.btn_block,
a.btn_block{
	position: relative;
}
button.btn_block::before,
a.btn_block::before{
	content: url(../img/png/chevron_arrow_right_white_16.png) ;
	position: absolute;
	top: calc(50% - 8px);
    right: 10px;
}

button.btn_block.btn-white::before,
a.btn_block.btn-white::before{
	content: url(../img/png/chevron_arrow_right_green_16.png) ;
}

/*orange btn_big btn-100*/
.pc_show{
	display:block;
}
.sp_show{
	display:none;
}

/* ========== 印刷用CSS ========== */
@media print {
	#container {
		/*font-size: 12pt;*/
		color: #000000;
		/*width: 960px;*/
		width: 100%;
	}
	
	body{
		background-image: none;
		width: 960px;
	}
	
	#background {
		background-image: none;
	}

	#footer{
		background-image: none;
	}	


	#main div.scroll_box {
		height: auto;
		overflow-y: visible;
	}

}

/*responsive */
@media screen and (max-width: 767px) {
	p {
		text-indent: 0rem;
	}
	
	ul li{
		margin-bottom: 0;
		margin-left: 0;
	}
	
	#main ul.horizontal {
		flex-direction:column;
	}

	#main ul.horizontal-icon {
		flex-direction:row;
	}

	#main div.link_box {
		margin: 15px 0 0 0;
		padding: 0;
		border: none;
		border-radius: 0;
		background-color:transparent;
		color: #333333;
	}
	
	#main div.link_box a{
		color: #333333;
	}
	#main div.link_box ul.pagejump li a,
	#main div.link_box li.pagejump a{
		background: transparent url('../img/png/arrow_bottom_gray_16.png') no-repeat 0 .125rem;
		padding-left: 1.3rem;
	}
	
	img.block_image_sp {
		display: block;
		float: none !important;
		margin: 4px auto !important;
	}

	
	#pagetop{
		bottom: 20px;
		right: 40px;
		margin: 0;
	}
	
	.f-left,
	.f-right{
		display: block;
		float: none !important;
		margin: 4px auto !important;
	}

	.t-nowrap {
		white-space: normal;
	}
	#main ul.information-tab.yado-tab {
		flex-direction:column;
		margin: 15px 0 0 0;
		padding: 0;
		border: none;
		border-radius: 0;
		background-color:transparent;
	}

	#main ul.information-tab.yado-tab li {
		margin: 15px 0 0 0;
		padding: 0;
		border-radius: 0;
		background-color:transparent;
		width: 100%;
		text-align: left;
	}
	#main ul.information-tab.yado-tab li:not(:first-child) {
		margin-left: 0px;
	}
	#main ul.information-tab.yado-tab li.selected  {
		background-color:transparent;
	}
	
	#main ul.information-tab.yado-tab li a  {
		padding:0;
		width: calc(100% - 1.3rem );
		background: transparent url('../img/png/arrow_bottom_gray_16.png') no-repeat 0 .125rem;
		padding-left: 1.3rem;
	}

	#main ul.information-tab.yado-tab li.selected a{
		color:#333333;
	}
	
	#main div.tab_container.yado-tab > div{
		display:block;
	}
	

	#main div.qanda p {	
		padding: 8px 15px;
	}
	#main div.qanda div.qanda_q,
	#main div.qanda div.qanda_a {
		padding-left: 0px ;
	}

	#main div.qanda div.qanda_q span.number,
	#main div.qanda div.qanda_a span.number {
		width: 100%;
		position: relative;
		text-align: left;
		display: block;
		margin-bottom: 1rem;
	}
	#main div.oshirase ul li{
		padding-left: 0;
		
	}
	#main div.oshirase ul li span.data {
		width: 100% !important;
		position: relative;
	}
	#main dl > dt,
	#main dl > dd,
	#main div.two div.section ,
	#main div.three div.section{
		width: 100% !important;
	}
	
	#main dl.note > dt,
	#main dl.note > dd{
		float:none!important;
		margin-left: 0px!important;
	}
	.pc_show{
		display:none;
	}
	.sp_show{
		display:block;
	}
	.half-size{
		width: 100%;
	}

}


@media screen and  (min-width:768px) and (max-width: 1268px) {
	#pagetop{
		right:300px;
	}

}