@charset "utf-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
}

html {
	font-size: 75%;
	-webkit-text-size-adjust: none;
}

img {
	vertical-align: text-bottom;
	-ms-interpolation-mode: bicubic;
}

a {
	-webkit-tap-highlight-color: transparent;
}

strong {
	font-weight: normal;
}

ol, ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

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

blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}

blockquote, q {
	quotes: "" "";
}

a:focus {
/*\*/
	overflow: hidden;
/**/
}

option {
	padding-right: 10px;
}

*, *:before, *:after {
  box-sizing: inherit; }

body {
	font-size: 100%;/*12px*/
	line-height: 160%;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", 'Century Gothic',Verdana, Arial, Helvetica, sans-serif;
	color: #555;
	position:relative;
	margin: 0;
	min-width: 1100px;
	overflow: auto;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	text-align: left;
	}
@media screen and (max-width:768px){
	body{
		min-width:inherit;
	}
}

* {
  max-height: 1000000px;
  font-size: 100.01%; }

html {
   box-sizing: border-box; }

h1,h2,h3,h5,h6{font-size:100%; font-weight:normal;}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

img {
  border-style: none; }

a {
  text-decoration: none;
  color: #555;
  -webkit-transition: color .2s ease-out;
  -moz-transition: color .2s ease-out;
  -o-transition: color .2s ease-out;
  transition: color .2s ease-out;
  display:block; }

a:link { text-decoration:none; color: #555;}
a:visited { text-decoration:none; color: #555;}
a:active { text-decoration:underline; color: #555;}
a:hover {color: #e60012;text-decoration:underline;}
a:hover img { opacity:0.8;}

input,
textarea,
select {
  font: 100%"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
  color: #222;
  vertical-align: middle; }

form,
fieldset {
  margin: 0;
  padding: 0;
  border-style: none; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  *overflow: visible; }

input[type="submit"]:hover,
button:hover {
  cursor: pointer; }

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  margin: 0;
  padding: 8px 0 8px 1em;
  border: 1px solid #999; }
  input[type="text"]:focus,
  input[type="tel"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  textarea:focus {
    border-color: #4d4d4d; }


input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

q {
  quotes: none; }
  q:before, q:after {
    content: '';
    content: none; }


/***********************************************************
clear
***********************************************************/
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;
}
.clearfix:after { content:" "; display:block; clear:both;}

.pa0{ padding: 0px!important; }

.ma0{ margin: 0px!important; }

.noborder{border:none!important;}

/***********************************************************
マージン・パディング
***********************************************************/
.ml5{ margin-left: 5px; }
.ml10{ margin-left: 10px; }
.ml20{ margin-left: 20px; }
.ml30{ margin-left: 30px; }
.ml70{ margin-left: 70px; }
.ml610{ margin-left: 610px;}

.mr0{ margin-right: 0px!important; }
.mr10{ margin-right: 10px; }
.mr20{ margin-right: 20px; }

.mb0{ margin-bottom: 0px!important; }
.mb10{ margin-bottom: 10px; }
.mb15{ margin-bottom: 15px; }
.mb20{ margin-bottom: 20px;
	padding-left: 20px; }
.mb25{ margin-bottom: 25px; }
.mb30{ margin-bottom: 30px; }
.mb40{ margin-bottom: 40px; }
.mb50{ margin-bottom: 50px; }
.mb60{ margin-bottom: 60px;
	padding-left: 20px;}

.mt10{ margin-top: 10px; }
.mt20{ margin-top: 20px; }
.mt30{ margin-top: 30px!important; }
.mt45{ margin-top: 45px; }
.mt50{ margin-top: 50px; }
.mt60{ margin-top: 60px; }
.mt90{ margin-top: 90px; }
.mb100{ margin-bottom: 100px!important; }

.pl10{ padding-left: 10px; }

.pt20{ padding-top: 20px; }
.pt50{ padding-top: 50px; }

.pb30{ padding-bottom: 30px; }
.pb50{ padding-bottom: 50px; }

.mp140{margin-top: -140px;padding-top: 190px!important;}

/***********************************************************
テキスト関連
***********************************************************/
/*font-size
---------------------------
10.0px = 0.8em
10.8px = 0.9em
12.0px = 1.0em
13.2px = 1.1em
14.4px = 1.2em
15.6px = 1.3em
16.8px = 1.4em
18.0px = 1.5em
19.2px = 1.6em
20.4px = 1.7em
21.6px = 1.8em
25.2px = 2.1em
46.8px = 3.9em
--------------------------- */
.ac-L{text-align:center;}
.ac{text-align:center;}
.ar{text-align:right;}
.al{text-align:left;}
@media screen and (max-width:414px){
.ac-L{ text-align:justify;text-justify: distribute-all-lines;}
}
.red{ color:#e60012;}
.small{font-size:0.8em;}

.ls-1{ letter-spacing:-1px;}
.ls-2{ letter-spacing:-2px;}

.ti1{text-indent:1em;}
.ti2{text-indent:2em;}

.bold{font-weight:bold;}

/***********************************************************
インライン
***********************************************************/
.il{display:inline;}
.bk{display:block;}
.tc{display:table-cell;}
.va-T{vertical-align: top;}

/***********************************************************
ヘッダー
***********************************************************/
#page-top {position: fixed;bottom: 20px;right: 20px;font-size: 77%;z-index: 11;}
#page-top a {display: block;text-align: center;}
#page-top a:hover {text-decoration: none;}


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
font-awesome
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.fas { display: inline-block; font-family: FontAwesome; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.fa-globe{    font-size: 2.3rem;}
.fa-search{    font-size: 2.3rem;}
.fa-envelope{    font-size: 2.3rem;}
@media screen and (max-width:768px){
.fa-globe,
.fa-search,
.fa-envelope{    line-height: .1;}
}


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
megamenu.js
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.menu-container { width: 80%; margin: 0 auto; background: #ffffff; position: absolute; top: 0; z-index: 100; left: 0; right: 0; min-width: 1100px; }
	#logo { width: auto; margin-top: 0; zoom: .8; padding: 1% 1% 0; }

.menu{ position: relative; width: 100%; font-size: 1.2rem; }
@media screen and (min-width: 769px){
#lower .menu-container { position: static;}
	#logo { float: left; }
}
@media screen and (max-width: 768px){
#lower .menu-container { position: relative;}
	#logo { position: absolute; z-index: 100;}
}


	.menu > ul { margin: 0 auto; /*width: 100%;*/ list-style: none; padding: 0; /*position: relative;*/ /* IF .menu position=relative -> ul = container width, ELSE ul = 100% width */ -webkit-box-sizing: border-box; box-sizing: border-box; float: right; }
	.menu > ul:before,
	.menu > ul:after { content: ""; display: table; }
	.menu > ul:after { clear: both; }
		.menu > ul > li { float: left; padding: 0; margin: 0; }
		.menu5,
		.menu5 > a:hover,
		.menu5 > a.active{ background-color: #b70003!important; }
		.menu6,
		.menu6 > a:hover{ background-color: #150405!important; }
			.menu > ul > li a { text-decoration: none;display: block; padding: 2.4rem 2em; text-align:center;cursor:pointer; }
			.menu > ul > li.menu5 a{ padding: 1.3rem 2em; color: #ffffff; }
			.menu > ul > li.menu6 a{ padding: 1.3rem 1.65em; color: #ffffff; }
				.menu5 span,
				.menu6 span{ display:block; }
		.menu > ul > li:hover,
		.menu > ul > li a.active { background: #150405; }
			.menu > ul > li a:hover,
			.menu > ul > li a.active{ color: #ffffff; }
				.menu > ul > li > nav { display: none; width: 100%; background: #150405;position: absolute; z-index: 99; left: 0; margin: 0; list-style: none; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; }
				.menu > ul > li > nav:before,
				.menu > ul > li > nav:after { content: ""; display: table; }
				.menu > ul > li > nav:after { clear: both; }

					.menu > ul > li > nav a{ color:#FFFFFF; padding:0; }
					.menu > ul > li > nav a.category{ float: left; min-width: 250px; width: 20%; color:#FFFFFF; font-size:1.8rem; letter-spacing:4px; padding: 2% 0 2% 2%; line-height: 1.2; }
						.menu > ul > li > nav a.category span{ border-top:1px solid; display:block; margin-top:20px; padding-top:20px; }

					.close-btn{ position: absolute; left:2%; bottom:2%; color:#FFFFFF; cursor: pointer; border: 1px solid; padding: 8px 20px; font-size: 12px; line-height: 1; }
					.close-btn:after{ content:"×"; margin-left:1rem; }

					.menu > ul > li > nav div{ float: right; width: 74%; margin-left: 3%; }
						.menu > ul > li > nav div a{ width: 24.7%; height:200px; float:left; position:relative; margin-bottom: 2px; margin-left:2px; }
							.menu > ul > li > nav div a img{ opacity: 0.4; max-width: 100%; height: 200px;}
							.menu > ul > li > nav div a:hover img{ opacity:1.0;}
							.thumb { object-fit: cover; object-position: center top; font-family: 'object-fit: cover; object-position: center top;' }
							.menu > ul > li > nav div a > span{ position: absolute; top: 50%; left: 50%; -ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); margin:0; padding:0; font-size: 1.4rem; line-height: 1.2; letter-spacing: 2px; font-weight: 600; width: 80%; }
							.menu > ul > li > nav div a> span > span{ display:block;font-size: 1rem;}
							@media only screen and (max-width: 768px) {
							.menu > ul > li > nav div a> span > span{ display:inline;margin-left: 1em;}
							}
							.menu > ul > li > nav div a:hover span{ display:none;}
							.menu > ul > li > nav div a.lang{ color: #150405; background-color: rgba(255, 255, 255, 0.6); }
							.menu > ul > li > nav div a.lang:hover { background-color: rgba(255, 255, 255,1.0);}
								.menu > ul > li > nav div a.lang:hover span{ display:block;}


/*.menu > ul > li > ul.normal-sub { width: 300px; left: auto; padding: 10px 20px; }
	.menu > ul > li > ul > li { margin: 0; padding-bottom: 0; list-style: none; width: 25%; background: none; float: left; }
	.menu > ul > li > ul.normal-sub > li { width: 100%; }
		.menu > ul > li > ul > li a { color: #777; padding: .2em 0; width: 95%; display: block; border-bottom: 1px solid #ccc; }
		.menu > ul > li > ul.normal-sub > li a { border: 0; padding: 1em 0; }
			.menu > ul > li > ul > li > ul { display: block; padding: 0; margin: 10px 0 0; list-style: none; -webkit-box-sizing: border-box; box-sizing: border-box; }
			.menu > ul > li > ul > li > ul:before,
			.menu > ul > li > ul > li > ul:after {content: ""; display: table; }
			.menu > ul > li > ul > li > ul:after {clear: both; }
				.menu > ul > li > ul > li > ul > li { float: left; width: 100%; padding: 10px 0; margin: 0; font-size: .8em; }
					.menu > ul > li > ul > li > ul > li a { border: 0; }*/

/*検索窓用CSS
.search-form { border: 1px solid #dcdcdc; background: #fff; overflow: hidden; box-shadow: 0 7px 7px rgba(0, 0, 0, 0.05), 7px 5px 7px rgba(0, 0, 0, 0.05), -7px 5px 7px rgba(0, 0, 0, 0.05); }
  .search-form .area { overflow: hidden; width: 100%; float: left; padding: 0 64px 0 0; }
    .search-form .area input { width: 100%; background: none; border-radius: 0; border: 0; outline: none; text-transform: uppercase; padding: 24px 28px 24px; -webkit-appearance: none; font: 25px/29px"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif; }
  .search-form input[type="submit"] { float: right; width: 50px; height: 50px; background: #333; border: 0; margin: 14px 14px 0 -100%; padding: 0; outline: none; cursor: pointer; color: #fff; text-transform: uppercase; font: 18.7px/20px"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif; border-radius: 0; }
    .search-form input[type="submit"]:hover { opacity: 0.8; }
  .search-form input[type="submit"]:disabled { background: #dddddd; }
  .search-form ::-webkit-input-placeholder { color: #ddd; }
  .search-form ::-moz-placeholder { opacity: 1; color: #ddd; }
  .search-form :-moz-placeholder { color: #ddd; }
  .search-form :-ms-input-placeholder { color: #ddd; }
  .search-form .placeholder { color: #ddd; }
*/


/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Mobile style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */
	.menu-mobile { display: none; padding: 30px 20px; }
	.menu-mobile:after { content: "\f394"; font-family: "Ionicons"; font-size: 2.5rem; padding: 0; float: right; position: relative; top: 50%; -webkit-transform: translateY(-25%); transform: translateY(-25%); }
	.menu-dropdown-icon:before { content: "\f489"; font-family: "Ionicons"; display: none; cursor: pointer; float: right; padding: 1.5em 2em; background: #fff; color: #333; }

@media only screen and (max-width: 768px) {
.menu-container { width: 100%; min-width: inherit; }
	.menu-mobile { display: block; }
	.menu-dropdown-icon:before { display: block; }

	.menu > ul { display: none; width:100%; float:none; background-color: #18B8D1; }
	.menu .show-on-mobile { display: block; }
		.menu > ul > li { width: 100%; float: none; display: block; }
		/*検索窓用CSS.menu > ul > li.menu6{ display:none; }*/
			.menu > ul > li a { padding: 1.5em; width: 100%; display: block; text-align:left; border-bottom: 1px solid rgba(255, 255, 255, 0.5); color: #fff; }
			.menu > ul > li.menu5 a.menu-btn,
			.menu > ul > li.menu6 a.menu-btn{padding:1.5em; }
				.menu5 span,
				.menu6 span{display:inline-block; margin-left:1em; }
			.menu > ul > li:hover,
			.menu > ul > li a.active { background: none; }
				.menu > ul > li a:hover,
				.menu > ul > li a.active{ color: inherit; }

			.menu > ul > li > nav { position: relative; }
				.menu > ul > li > nav a.category{ float: none; font-size: inherit; width: 100%; background-color: #004b85; border-top: 1px solid rgba(255, 255, 255, 0.5);padding: .8rem 1em; cursor:pointer;}
				.menu > ul > li.menu5 > nav a.category,
				.menu > ul > li > nav a.category span{ display:none; }

				.close-btn{ display:none; }

				.menu > ul > li > nav div{ float: none; width: 100%; margin-left: 0%; }
					.menu > ul > li > nav div a{ width: 100%; background-color: #004b85!important; height: inherit; float: none; display: block; margin-bottom: 0; margin-left: 0; padding: .8rem 1em!important; text-indent: 1em;color:#FFFFFF!important;}
							.menu > ul > li > nav div a img{ display:none; }
							.menu > ul > li > nav div a span{ position: static; top: 0; left: 0; -ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0); margin:0; padding:0; font-size: 1rem; line-height: 1.2; letter-spacing: 2px; font-weight:normal; width: 100%; }
}


/***********************************************************
フッター
***********************************************************/
#footer_1{width:100%;background-color:#18B8D1;padding:54px 0;font-size:0.9em;}
#footer_2{width:100%;background-color:#005EAD;padding:17px 0;font-size:0.8em;}
	.footer-inner{width:80%;min-width:1100px;margin:auto;color:#FFFFFF; display:table;}
		address{display:table-cell;vertical-align: bottom;}
		.footer-inner ul{display:table-cell;vertical-align: bottom;}
			.footer-inner li{display:inline-block;margin-right:10px;padding-right:10px;border-right:1px solid; vertical-align:bottom;}
				.footer-inner li:last-child{margin-right:0px;padding-right:0px;border-right:none;}
				.footer-inner ul > *:first-child + * + * + * + *+ *{margin-right:0px;padding-right:0px;border-right:none;}/*IE8*/
					.footer-inner a{color:#FFFFFF;}
@media screen and (max-width:768px){
	.footer-inner{
		padding: 0 1em;width:100%;min-width: inherit;}
		address{display:block; text-align:center;}
		.footer-inner ul{display:block; text-align:center; margin-bottom:1em;}
}
@media screen and (max-width:414px){
			.footer-inner li { display: block;margin-right:0;padding-right:0;border-right:none;  margin-bottom: 1em;}
			.footer-inner li:after { content: "------------";}
}
/***********************************************************
wrapper
***********************************************************/
#wrap{width:100%; position:relative; 	border-top:1px solid #dedede;padding: 30px 0;}
.contentsWrap{width:80%; margin:0 auto; min-width: 1100px;}
.wrap950{max-width:950px;}
.wrap740{max-width:740px;}
main{ margin:30px auto 100px;}

p{font-size:1.3em;line-height:1.8;}
.title { font-size: 25px; line-height: 100%; font-weight: 600; letter-spacing: 7px; text-align:center; margin-bottom:20px; margin-top:80px;}
#breadList{margin-bottom: 30px; display:flex;}
	#breadList span:not(:last-child):after{font-family: FontAwesome; content: "\f105"; margin: 0 1em;}
		#breadList span a{ display:inline;}
.sp_view{ display:none;}
.tb_view{display: block;}
@media screen and (max-width:768px){
.contentsWrap{padding: 0 1em;width:100%;min-width: inherit;}
}
@media screen and (max-width: 1024px){
	.tb_view{display: none;}
}
@media screen and (max-width:414px){
p{ text-align:justify;text-justify: distribute-all-lines;}
.title { font-size: 20px;letter-spacing: 0;}
.sp_view{ display:block;}
.pc_view{ display:none;}
}

@media print{
}
/*190606add*/
.footer-inner li .fab{font-size: 20px;}
.d_iblock{display: inline-block;}
.arrow_b::before{
	font-family: "Font Awesome 5 Free";
	content: "\f100";
	font-weight: 900;
}
.arrow_a::after{
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	font-weight: 900;
}
.font5{
	font-size: 20px;}
.map{
	display: inline;
}

/***********************************************************
表
***********************************************************/

table , td, th {
	border: 1px solid #595959;
	border-collapse: collapse;
       }
td, th {
	padding: 9px;
	height: 25px;
}

.white-butsuryu{
        width:30%;
       margin:1%;
       float:right;
}
.white-butsuryu img{
                  width:200px;}

.services{
         display: flex;
    justify-content: space-around;
    margin: 40px 0;
}

.link1{
       padding:10px 0;}

.news-release{
               margin-top:100px;}
