@charset "UTF-8";


body	{margin: 0;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
}


/* サイト名 */
.site h1 a {color: #000000;
	text-decoration: none}

.site h1 {margin: 0;
	font-size: 30px}

.site img {border: none;}


/* ヘッダー画像 */
.topimg	{max-width: 100%;
	height: auto;
	vertical-align: bottom}

/* キャッチコピー */
.catch	{margin: 0;
	padding: 15px;
	background-color: rgba(255,255,255,0.7);
	font-size: 28px}

/* gotop */
.gotop {
	margin: 0 0 10px;
	text-align: right;
}
.gotop a {
	padding-right: 15px;
	background: url(../img/arrow7.png) right 2px no-repeat;
	color: #001437;
	text-decoration: none;
}
.gotop a:hover {color: #5d7296;}


.input-mini{width:60px}
.input-small{width:90px}
.input-medium{width:150px}
.input-large{width:210px}
.input-xlarge{width:95%}
.input-xxlarge{width:95%;}



a	{color: #191970;
	text-decoration: none}
a:hover	{color: #2EA28D;}

h1	{background-color: #20B2AA;
	color: #fff;
	margin: 0 0 1em 0; padding: .3em .5em;
	position: relative;}
h1::after {content: "";
	border-color: #853e04 #fff #fff #853e04;
	border-style: solid;
	border-width: 0 0 1.2em 1.2em;
	bottom: 0;
	position: absolute;
	right: 0;}

h1 span	{font-size: 60%;}

h2	{
	margin: 0 0 1em; padding: 0.5em;
	border: 2px solid #B92A2C; /* 枠：太さ 線の種類 色 */
	font-size: 1.25em; /* フォントサイズ */
	font-weight: bold; /* フォント太さ */
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

h3	{
	margin: 0 0 1.5em 0;
	padding: 0px 0px 0px .5em;
	color: #000000;
	font-size: 150%;
	border-bottom-width: 3px;
	border-bottom-style: solid;
	border-bottom-color: #20B2AA;
}

h3 span	{font-size: 60%;}


.fade:hover {  
    opacity: 0.4;  
    filter: alpha(opacity=60);}


ul	{max-width: 100%;
	padding: 5px;
	background-color:#FFFFFF;}


ul li	{list-style-type: none;
	margin: 0;
	padding: 5px 0 5px 0;
	overflow: auto;
	border-bottom: dotted #2EA28D 1px;}


.clearfix { display: inline-table; }


/*pankuzu--------------------*/
.breadcrumb {
	width: 100%;
	margin-bottom: 10px;
	font-size: 12px;
}
.breadcrumb ul { 
	list-style: none; 
	overflow: hidden; 
}
.breadcrumb ul li { 
	float: left;
}
.breadcrumb ul li a {
	color: #fff;
	text-decoration: none; 
	padding: 3px 0 3px 50px;
	background: #1c5380;
	position: relative; 
	display: block;
	float: left;
}
.breadcrumb li a:after { 
	content: " "; 
	display: block; 
	width: 0; 
	height: 0;
	border-top: 50px solid transparent;
	border-bottom: 50px solid transparent;
	border-left: 30px solid #1c5380;
	position: absolute;
	top: 50%;
	margin-top: -50px; 
	left: 100%;
	z-index: 2; 
}
.breadcrumb li a:before { 
	content: " "; 
	display: block; 
	width: 0; 
	height: 0;
	border-top: 50px solid transparent;
	border-bottom: 50px solid transparent;
	position: absolute;
	top: 50%;
	margin-top: -50px; 
	margin-left: 1px;
	left: 100%;
	z-index: 1; 
}
.breadcrumb li:first-child a {
	padding-left: 20px;
}
.breadcrumb li:nth-child(2) a       { background: #3d7fb5; }
.breadcrumb li:nth-child(2) a:after { border-left-color: #3d7fb5; }
.breadcrumb li:nth-child(3) a       { background: #7eb5e2; }
.breadcrumb li:nth-child(3) a:after { border-left-color: #7eb5e2; }
.breadcrumb li:last-child a {
	background: #7eb5e2 !important;
	color: #fff;
	pointer-events: none;
	cursor: default;
}
.breadcrumb li:last-child a:after { border-left-color:#7eb5e2; }
.breadcrumb li a:hover { background: #7eb5e2; }
.breadcrumb li a:hover:after { border-left-color:#7eb5e2 !important; }


/* contact */

.contact {
	padding: 10px;
	background-color:#FFFFFF;}

.contact h1{
	border: 1px solid #4169E1;
	border-left: 10px solid #4169E1;
	background-color: #FFFFFF;
	width: 97%;
	font-size: 28px;
	color: #000000;
	padding: 10px;
	margin-bottom: 30px;}


.contact a {
	display: block;
	color: #191970;
	text-decoration: none}

.contact p {
	margin-top: 0;
	margin-bottom: 0;
	padding: 5px;
	font-size: 16px}

.contact p a:hover {background-color: #eeeeee}



/* お知らせ */
.news	{padding: .5em; margin: .2em}

.news h1	{margin-top: 0;
	margin-bottom: 5px;
	font-size: 18px;
	color: #666666}

.news-title {text-align: left;
	     float: left;}

.news-title h3 {
	background-color: #20B2AA;
	border: 1.5px dashed #fff;
	border-radius: 8px;
	box-shadow: 0 0 0 4px #20B2AA;
	color: #fff;
	margin: 0;
	padding: 0 .5em;
}

.news ul{margin: 0; padding: 0;
	list-style: none}

.news li a	{display: block;
	padding: 5px;
	color: #000000;
	font-size: 14px;
	text-decoration: none}

.news li a:hover {background-color: #eeeeee}


.news a {
	color: #191970;
	text-decoration: none}

.news p {
	margin-top: 0;
	margin-bottom: 0;
	padding: 5px;
	font-size: 14px}

.news p a:hover {color: #4682B4;}

.news time	{color: #888888;
	font-weight: bold}

.news a:after	{content: "";
	display: block;
	clear: both}

.news time	{float: left;
	width: 60px}

.news .text	{float: none;
	width: auto;
	margin-left: 60px}

.news-list	{text-align: right;}

.news-list a	{color:#DC143C;}


.titlebar   {font-weight:bold; padding:0.1em;}



.POINT h4	{
    border: 2px solid #da4033;
    border-radius: 4px;
    margin: 1em 0 0 0;
    padding: 1em;
    position: relative;
}
.POINT h4::before {
    background-color: #fff;
    color: #da4033;
    content: "POINT";
    font-weight: bold;
    left: 1em;
    padding: 0 .5em;
    position: absolute;
    top: -1em;
}





/* SNSメニュー */
.follow ul	{margin: 0;
	padding: 0;
	list-style: none}

.follow li a	{display: block;
	margin-bottom: 10px;
	padding: 10px;
	border-radius: 4px;
	color: #ffffff;
	font-size: 14px;
	text-decoration: none}

.follow li a:hover	{opacity: 0.8}

.follow-tw	{background-color: #63bafb}
.follow-fb	{background-color: #5288f7}
.follow-gp	{background-color: #f65d4a}

.follow i	{margin-right: 10px;
	font-size: 24px;
	vertical-align: middle}


/* 補足説明 */
.follow-info	{margin-top: 0;
	margin-bottom: 5px;
	padding: 10px;
	background-color: #191970;
	border-style: double;
	color: #ffffff;
	font-size: 18px;
	text-align: center}


.follow-info	{
	position: relative;
	background: #191970;}

.follow :hover	{opacity: 0.8}


/* ボタン */

.button {display: inline-block;
	padding: 2px 20px 2px 20px;
	margin: 0 auto;
	margin-top: 10px;
	background-color: #DF0101;
	border-radius: 50px;
	color: #fff;
	font-size: 12px;
	text-align: center;
	text-decoration: none;}

.button:hover,
.button:focus {outline: none;
	background-color: #DF0101;}


/* コピーライト */
.copyright p	{margin: 0;
	text-align: center;
	color: #000000;
	font-size: 14px}


.box3-2	{background-color: #FFFFFF;
	margin: 0 3px 0 3px;}


.box6	{width: 100%;
	margin: .5em 0 .5em 0;
	border: solid 1px #2EA28D;
	background: #FFFFFF;}

.box6 h2{margin: .5em;
	border-bottom-width: 3px;
	border-bottom-style: double;
	border-bottom-color: #2EA28D;}

.box6 p	{margin: 1em;}



/* footerをバーの形にする */
.footer	{padding-top: 15px; padding-bottom: 15px;
	margin-top: 20px;
	background-color: #20B2AA;
	clear: both;}

.footer h2{margin: .5em 0 0 0;
	color: #FFFFFF;
	font-size: 120%;
	text-align: center;
	border: none;}



/* ボックスの左右 */
.boxA, .boxB, .box4, .footer, box6
	{padding-left: 5px; padding-right: 5px}

.entry
	{padding-left: 10px; padding-right: 10px}


/* ボックスの上下 */
.boxA	{padding-top: 0px; padding-bottom: 20px}

.boxB	{padding-top: 20px; padding-bottom: 20px}

.box3	{padding-top: 10px; padding-bottom: 10px}

.box4	{padding-top: 20px; padding-bottom: 10px}

.box4-1	{padding-bottom: 20px}

.box6	{padding-top: 20px; padding-bottom: 20px}



/*content_left--------*/

#content_left {
	width: 100%;
	float: left;
	margin-bottom: 60px;}


/*greeting------------------------------*/


.dr-img		{clear: both;
		text-align: left; width: 100%;}

.article_director {width: 50%;
		line-height: 150%;}


.dr-img img	{float: right; width: 100%;
	     	margin-top: 1em; margin-left: .5em;}


/* dr-img、article_directorを横に並べる設定 */


.article_director {float: left;
		width: 57%;
		margin-left: 0%;
		text-align: justify;}

.dr-img		{float: left; width: 40%;
		margin-left: 1%; margin-right: 1%;}


/*newsletter------------------------------*/

.newsletter {
	padding: 10px;
	background-color:#FFFFFF;}

.newsletter h1{
	background-color: #4169E1;
	width: 98%;
	font-size: 20px;
	color: #FFFFFF;
	padding: 10px;
	margin-bottom: 30px;}

.newsletter h2{
	width: 98%;
	font-size: 20px;
	font-weight: bold;
	color: #191970;
	padding-left: 5px;}

.newsletter p {margin: 0 0 20px 0;
	font-size: 16px;
	line-height: 1.6;}

.newsletter a {
	display: block;
	color: #191970;
	text-decoration: none}

.newsletter p a:hover {color: #4682B4}


}


.border_box {
	border-bottom: 1px solid #3d7fb5;
	padding: 5px 0px;
	margin-bottom: 10px;}


/* テーブル */

table	{border-collapse: collapse;
	width: 100%;
	margin-bottom: 20px;}

table, th,td {border: 1px solid #aaa;
	padding: 5px 5px;
	font-size: 90%;
	vertical-align: middle;}


table th{
	background: #5d6c87;
	color: #fff;
	width: 15%;}

table a {
	color: #191970;
	text-decoration: none}

table a:hover {background-color: #eeeeee}


/*content_right--------*/

#content_right {
	width: 100%;
	float: left;
	margin-bottom: 60px;
	background-color:#FFFFFF;}

.content_right h1 {
	padding: 10px;
	margin-bottom: 0;
	font-size: 24px;
	font-weight: bold}

.content_right img {width:100%;}


/*sidenavi*/
#sidenavi {display: block;
	margin: 0 .3em .5em .3em;
	background-color:#FFFFFF;}

h3.side_title {display: block;
	width: 100%;
	margin: 0px; padding: 5px 0px 5px 0px;
	font-size: 16px; color: #FFF; text-align: center;}

#sidenavi h3.side_title {background-color: #853e04; border-bottom: none;}

#sidenavi ul {display: block;
	margin: 0; padding: 0;}

#sidenavi ul li {
	display: block;
	color: #434343; text-decoration: none;}

#sidenavi ul li a {
	display: block;
	color: #FFF; font-weight:bold; text-align: center;
	background-color: #20B2AA; padding: .5em;
	text-decoration: none;}

#sidenavi ul li a:hover {color: #666;}





/* ########### 1190px以上 ########### */
@media (min-width: 1190px) {

/* 全体の横幅を固定 */
.box3, .box4, .boxA-inner, .boxB-inner, .footer-inner, .box6
	{width: 1140px;
	margin-left: auto;
	margin-right: auto}


/* BOX Aの下に罫線を挿入 */
.boxA	{margin-bottom: 20px;
	border-bottom: solid 1px #dddddd}

/* トグルボタン */
#menubtn	{display: none}

/* ナビゲーション */
#menu	{display: block !important}

.menu ul	{margin: 0;
	padding: 0;
	list-style: none}

.menu li a	{display: block;
	padding: 7px 7px;
	margin: 0 3px;
	border-right: solid 1px #ffffff;
	border: double 3px #4169E1;
	background-color: #FFF;
	color: #000;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none}

.menu li span {display: block;
	color: #CC0066;
	font-size: 10px;}

menu li:first-child a {border-left: solid 1px #ffffff;}

.menu li a:hover {background-color: #eeeeee;
	color: #191970;}

.menu ul:after	{content: "";
	display: block;
	clear: both}

.menu li	{float: left;
	clear: right;
	text-align: center;
	margin-bottom: 1px;
	width: 16.66%;}


.topimg2	{width: 30%;
		height: auto;
		vertical-align: top}

.site img	{width: 80%;}
.site-x img{width: 19%; margin: .1em; border: solid 1px #20B2AA;}
.site-y img{width: 48%; margin: .0em; border: solid 1px #20B2AA;}

.site-map iframe {width:600px; height:450px;}

#sidenavi img{float:right; margin:0 0 .5em 0; padding:0; width:90%;}


/* BOX1とBOX2を横に並べる設定 */
.boxA:after	{content: "";
	display: block;
	clear: both}

.box1	{float: left;
	width: 50%}

.box1-1	{float: right;
	width: 45%}

.box2	{float: right;
	width: 100%}


/* content_leftとcontent_rightを横に並べる設定 */
.boxB:after	{content: "";
	display: block;
	clear: both}

.content_left	{float: left;
	width: 80%}

.content_right	{float: left;
	width: 20%}


/* BOX3-1とBOX3-2を横に並べる設定 */
.box3:after	{content: "";
	display: block;
	clear: both}

.box3-1	{float: left;
	width: 59%;
	margin: 5px 0 0 0;
	padding-right: 0px;}

.box3-2	{float: right;
	width: 40%;
	margin: 5px 5px 0 0;}
.box3-2 a:hover	{opacity: 0.8}


/* BOX4-1とBOX4-2を横に並べる設定 */
.box4:after	{content: "";
	display: block;
	clear: both}

.box4-1	{float: left;
	width: 50%;
	padding-right: 5px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box}

.box4-2	{float: left;
	width: 50%;}
.box4-2 a:hover	{opacity: 0.8}


}


/* ########### 768px以上 1189px以下  ########### */
@media (min-width: 768px) and (max-width: 1189px) {


/* トグルボタン */
#menubtn	{display: none}

/* ナビゲーション */
#menu	{display: block !important}

.menu ul	{margin: 0;
	padding: 0;
	list-style: none}

.menu li a	{display: block;
	padding: 10px 10px;
	border-right: solid 1px #ffffff;
	background-color: #2EA28D;
	color: #FFFFFF;
	font-size: 13px;
	text-decoration: none}

.menu li span {display: block;
	font-size: 10px;}

menu li:first-child a {border-left: solid 1px #ffffff;}

.menu li a:hover {background-color: #eeeeee;
	color: #2EA28D;}

.menu ul:after	{content: "";
	display: block;
	clear: both}

.menu li	{float: left;
	clear: right;
	text-align: center;
	margin-bottom: 1px;
	width: 20%;}


.site img	{width: 70%;}


/* キャッチコピー */
.catch	{font-size: 16px}


/* BOX1とBOX2を横に並べる設定 */
.boxA:after	{content: "";
	display: block;
	clear: both}

.box1	{float: left;
	width: auto}

.box2	{float: right;
	width: 100%}


/* BOX4-1とBOX4-2を横に並べる設定 */
.box4:after	{content: "";
	display: block;
	clear: both}

.box4-1	{float: left;
	width: 100%;
	padding-right: 0px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box}

.box4-2	{float: left;
	width: 0%}


}



/* ########### 600px以上 767px以下 ########### */
@media (min-width: 600px) and (max-width: 767px) {

/* トグルボタン */
#menubtn	{
	padding: 6px 6px;
	border: solid 1px #aaaaaa;
	border-radius: 5px;
	background-color: #ffffff;
	position: absolute;
	top: 20px;
	right: 10px;
	cursor: pointer}

#menubtn:hover	{background-color: #dddddd}

#menubtn:focus	{outline: none}

#menubtn i	{color: #888888;
	font-size: 18px}

#menubtn span	{display: inline-block;
	}

/* ナビゲーションメニュー（縦並び） */
.menu	{display: none}

.menu ul	{
	margin: 0;
	padding: 0;
	background-color: #2EA28D;
	list-style: none
}
.menu li a	{
	display: block;
	padding: 5px;
	background-color: #2EA28D;
	border-style: solid;
	color: #FFFFFF;
	font-size: 14px;
	text-decoration: none
}

.menu li span {font-size: 10px;}

.menu li a:hover	{
	background-color: #eeeeee;
	color: #2EA28D;}


.topimg2	{width: 50%;}
.site img	{width: 100%;}
.site-x img{width: 49%;}
.site-y img{width: 49%;}

.site-map iframe {width:400px; height:300px;}

#sidenavi img{float:left; margin:0 0 1em 0; padding:0; width:16%;}

/* BOX1とBOX1-1を横に並べる設定 */
.boxA:after	{content: "";
	display: block;
	clear: both}
.box1	{float: left;
	width: 55%}
.box1-1	{float: right;
	width: 42%}

.box3-1	{margin-bottom: 1em;}


}


/* ########### 599px以下 ########### */
@media (max-width: 599px) {

/* トグルボタン */
#menubtn	{
	padding: 6px 6px;
	border: solid 1px #aaaaaa;
	border-radius: 5px;
	background-color: #ffffff;
	position: absolute;
	top: 20px;
	right: 5px;
	cursor: pointer}

#menubtn:hover	{background-color: #dddddd}

#menubtn:focus	{outline: none}

#menubtn i	{color: #888888;
	font-size: 18px}

#menubtn span	{display: inline-block;
	}

/* ナビゲーションメニュー（縦並び） */
.menu	{display: none}

.menu ul	{
	margin: 0;
	padding: 0;
	background-color: #2EA28D;
	list-style: none
}
.menu li a	{
	display: block;
	padding: 10px 7px;
	background-color: #2EA28D;
	border-style: solid;
	color: #FFFFFF;
	font-size: 11px
	text-decoration: none}

.menu li span {font-size: 10px;}

.menu li a:hover	{
	background-color: #eeeeee;
	color: #2EA28D;}


.boxA	{padding-top: 0px;}

.box1 img  {width: 90%;
	float: left;}

.box1:after	{content: "";
	display: block;
	clear: both}

.box3-1	{margin-bottom: 1em;}
.box3-2	{margin:1em 0 1em 0;}

.box6 h2 {font-size:110%;}


.topimg2 {width:95%;}

.site img  {width: 85%;}
.site-x img{width: 100%;}
.site-y img{width: 48%;}

.dr-img	{width: 100%;}
.dr-img img{float: none; width: 95%;}
.article_director {width: 95%; line-height: 150%; margin: 0 0 0 .5em;}

.site-map iframe {width:320px; height:240px;}

#sidenavi img{float:left; margin:0 0 1em 0; padding:0; width:32%;}

.cat1 h3.side_title {background-color: #9CC3EA;
		     width: 100%;}

h1	{font-size: 140%; width:93%;}
h2	{font-size: 130%;}
h3	{font-size: 120%;}

table, th td {font-size: 11px;}

.newsletter h1 {
	font-size: 20px;
	width: 93%;}

.contact h1{
	font-size: 20px;
	width: 90%;}

h3.side_title {
	font-size: 16px;
	width: 93%;}


}


/* ########### 359px以下 ########### */
@media (max-width: 359px) {

/* サイト名 */
.site img {width: 70%;
	height: auto}

.topimg2 {width:95%;}

.site img  {width: 85%;}
.site-x img{width: 100%;}
.site-y img{width: 48%;}



/* キャッチコピー */
.catch	{padding: 3px 5px;
	font-size: 10px}

/* 補足説明 */
.follow-info	{font-size: 11px;}


.news-list p a  {font-size: 12px;}


}





