/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

html { height:100%; }
body { height:100%; margin:0; font-size:14px; color:#2c2c2c; background: #FFFFFF; line-height: 180%; /*word-break:break-all;*/ text-align: justify; text-justify: inter-ideograph; }
@media screen and (min-width: 0px) and (max-width: 767px)  {
body { font-size: 12px; line-height: 160%; }
}
/*明朝の場合 body, textarea { font-family :YuMincho, Yu Mincho, '游明朝', serif; font-weight: 400; } */
/*body, textarea { font-family :YuGothic, 'Yu Gothic', sans-serif; font-weight: 400; }*/
body, textarea { font-family: 'Noto Sans JP', sans-serif; font-weight: 400; }

/* 高さ自動調整 */
.clearfix:after {
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}


/* 回り込み解除 */
.cl_l { clear: left; }
.cl_r { clear: right; }
.cl_both { clear:both; }


/* hタグなどの指定 */
h1 { display:block; font-style:normal; font-size:10pt; font-weight:normal; margin:0px; text-align:center; }
h1 img { width:auto; height:73px; padding:15px 0; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
h1 { display:block; font-style:normal; font-size:10pt; font-weight:normal; margin:0px; text-align:center; }
h1 img { width:auto; height:40px; padding:5px 0; }
}
h2 { font-style:normal; font-size:10pt; font-weight:normal; margin:0px; }
h3 { font-style:normal; font-size:10pt; font-weight:normal; margin:0px; }
h4 { font-style:normal; font-size:10pt; font-weight:normal; margin:0px; }
h5 { font-style:normal; font-size:10pt; font-weight:normal; margin:0px; }


/* ul,li,pタグの指定 */
ul,li {
	list-style:none;
	margin:0;
	padding:0;
}

p { margin:0; }


/* フォントの指定 */
.bold { font-weight:bold; }
.textblue { color:#1d2088; }
.textblue_b { color:#1d2088; font-weight:bold; }
.textgreen { color:#6a9eb1; }
.textgreen_b { color:#6a9eb1; font-weight:bold; }
.textorange { color:#F8B934; }
.textorange_b { color:#F8B934; font-weight:bold; }
.textred { color:#db0000; }
.textred_b { color:#db0000; font-weight:bold; }
.textpink { color:#d25b7f; }
.textpink_b { color:#d25b7f; font-weight:bold; }
.textpurple { color:#CC0199; }
.textpurple_b { color:#CC0199; font-weight:bold; }

.size6 { font-size:8px; }
.size8 { font-size:10px; }
.size10 { font-size:12px; }
.size12 { font-size:14px; }
.size14 { font-size:16px; }


/* 罫線など */
.dashed_line { border-bottom: 1px dotted #343434; margin:10px 0px 10px 0px; }
.solid_line_orenge { border-bottom: 1px solid #EA5532; margin:10px 0px 15px 0px; }
.solid_line_blue { border-bottom: 1px solid #32BCF8; margin:10px 0px 15px 0px; }
.solid_line_green { border-bottom: 1px solid #45B035; margin:10px 0px 15px 0px; }
.solid_line_gray01 { border-bottom: 1px solid #B2B2B2; margin:14px 0px 14px 0px; }
.solid_line_purple { border-bottom: 1px solid #BE0089; margin:10px 0px 0px 0px; }
.solid_line_purple01 { border-bottom: 1px solid #BE0089; margin:14px 0px 14px 0px; }


/* 画像のリンク */
a img { border-style:none; }


/* 画像の余白対策 */
img {
   vertical-align:bottom
}


/* 画像サイズ */
img { width:100%; height:auto; image-rendering: auto; }


/* ieに適用 */
img {
    width: inherit\9;
    max-width: 100%\9;
    height: auto\9;
}

/* hrの設定 */
hr.style-one {    border: 0;    height: 1px;    background: #999;    background-image: -webkit-linear-gradient(left, #ccc, #999, #ccc);    background-image:    -moz-linear-gradient(left, #ccc, #999, #ccc);    background-image:     -ms-linear-gradient(left, #ccc, #999, #ccc);    background-image:      -o-linear-gradient(left, #ccc, #999, #ccc);}


/* ページ全体のテキストリンク */
a:link { color:#474747; text-decoration:underline; }
a:visited { color:#474747; text-decoration:underline; transition: 1.0s ; }
a:active { color:#1eb9ee; text-decoration:underline; transition: 1.0s ; }
a:hover { color:#1eb9ee; text-decoration:underline; transition: 1.0s ; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
a:link { color:#474747; text-decoration:underline; }
a:visited { color:#474747; text-decoration:underline; }
a:active { color:#FFFFFF; text-decoration:underline; }
a:hover { color:#FFFFFF; text-decoration:underline; }
}


/* ローディング */
#loading {
 width: 100%;
 height: 100%;
 margin: 0;
 background: #fff;/*グルグルの背景を白に*/
 opacity: 1.0;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 99999; /*とりあえず一番前面に出るように*/
}
#loading img {
 position:absolute;
 top:50%;
 left:52%;
 width:30px;
 height:30px;
 margin-top:-30px;/*グルグルを真ん中にするために、画像の高さ分マイナスで*/
 margin-left:-30px;/*グルグルを真ん中にするために、画像の幅分マイナスで*/
}
@media screen and (min-width: 0px) and (max-width: 768px)  {
#loading {
 width: 100%;
 height: 100%;
 margin: 0;
 background: #fff;/*グルグルの背景を白に*/
 opacity: 1.0;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 99999; /*とりあえず一番前面に出るように*/
}
#loading img {
 position:absolute;
 top:50%;
 left:55%;
 width:40px;
 height:40px;
 margin-top:-40px;/*グルグルを真ん中にするために、画像の高さ分マイナスで*/
 margin-left:-40px;/*グルグルを真ん中にするために、画像の幅分マイナスで*/
}
}
/* //ローディング */


/* ヘッドメニュー */
#headbox { width:100%; display:block; position:relative; background:#FFFFFF; top: 0; z-index: 2000; }

header {
    display: none;
    width:1200px;
	padding:0;
	margin:30px auto;
  }

#pcheadlogobox01 { width: 100%; position: absolute; z-index: 8001; top: 33px; background: rgba(255,255,255,0.60); }
#pcheadlogobox01:before {
	content: "";
	display: block;
	width: 100%;
	height: 6px;
	margin: 0;
	background: -webkit-gradient(linear, left top, right bottom, from(#558d9a), color-stop(0.15, #558d9a), color-stop(0.15, rgba(255,255,255,0)), color-stop(0.5, rgba(255,255,255,0)), color-stop(0.5, #558d9a), color-stop(0.65, #558d9a), color-stop(0.65, rgba(255,255,255,0)), to(rgba(255,255,255,0)));
	background: -moz-linear-gradient(-45deg, #558d9a 15%, rgba(255,255,255,0) 15%, rgba(255,255,255,0) 50%, #558d9a 50%, #558d9a 65%, rgba(255,255,255,0) 65%, rgba(255,255,255,0));
	background: linear-gradient(-45deg, #558d9a 15%, rgba(255,255,255,0) 15%, rgba(255,255,255,0) 50%, #558d9a 50%, #558d9a 65%, rgba(255,255,255,0) 65%, rgba(255,255,255,0));
	background-size: 2px 2px;
}
#pcheadlogobox01:after {
	content: "";
	display: block;
	width: 100%;
	height: 6px;
	margin: 0;
	background: -webkit-gradient(linear, left top, right bottom, from(#558d9a), color-stop(0.15, #558d9a), color-stop(0.15, rgba(255,255,255,0)), color-stop(0.5, rgba(255,255,255,0)), color-stop(0.5, #558d9a), color-stop(0.65, #558d9a), color-stop(0.65, rgba(255,255,255,0)), to(rgba(255,255,255,0)));
	background: -moz-linear-gradient(-45deg, #558d9a 15%, rgba(255,255,255,0) 15%, rgba(255,255,255,0) 50%, #558d9a 50%, #558d9a 65%, rgba(255,255,255,0) 65%, rgba(255,255,255,0));
	background: linear-gradient(-45deg, #558d9a 15%, rgba(255,255,255,0) 15%, rgba(255,255,255,0) 50%, #558d9a 50%, #558d9a 65%, rgba(255,255,255,0) 65%, rgba(255,255,255,0));
	background-size: 2px 2px;
}
#pcheadlogobox02 { width:866px; display: table; margin: 10px auto; }
#pcheadlogobox02:after { content: ""; clear: both; display: block; }
#pcheadlogo { width:50%; display: table-cell; vertical-align: middle; text-align: left; }
#pcheadlogo img { width:424px; height: auto; }
#pcheadtel { width:50%; display: table-cell; vertical-align: middle; text-align: right; font-size: 34px; font-weight: 600; color: #1d2088; }
.pcheadteltitle { font-size: 25px; }

#k-pcheadlogobox01 { width: 100%; text-align: center; padding: 30px 0; }
#k-pcheadlogobox01 img { width: 281px; height: auto; }
@media screen and (min-width: 0px) and (max-width: 767px)  {
#headbox { width:100%; display:block; height:50px; position: fixed; background:rgba(255,255,255,0.8); top: 0; z-index: 80000; }

header {
    display: block;
    width: 100%;
	padding:0;
	margin:0 auto;
  }

#headlogo { width:100%; margin:0 auto; position:relative; text-align:center; }
#headlogo img { width:50%; height:auto; padding:10px 0 0; }
	
#pcheadlogobox01 { display: none; }

#k-pcheadlogobox01 { display: none; }
}
/* //ヘッドメニュー */


/* PCナビゲーション */
#pcnavibox {
	width: 100%;
}
ul#navi {
	display:block;
	width: 100%;
	font-size: 18px;
	font-weight: 500;
	}
ul#navi li {
	margin: 0 0 20px;
	display:block;
}

ul#navi li a {
    display: inline-block;
    position: relative;
	width: 200px;
    height: 46px;
    line-height: 46px;
    vertical-align: middle;
    text-align: left;
    padding: 6px 0;
    font-size: 14px;/*文字サイズ*/
    background: 
		url("../common_img/navibg.png") repeat-x center center,
		#1e2380;/*背景色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}
ul#navi li.on a {
    display: inline-block;
    position: relative;
	width: 210px;
    height: 46px;
    line-height: 46px;
    vertical-align: middle;
    text-align: left;
    padding: 6px 0;
    font-size: 14px;/*文字サイズ*/
    background: 
		url("../common_img/navibg.png") repeat-x center center,
		#d60012;/*背景色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}
ul#navi li a p {
	width: 100%;
	display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding: 0 23px 0 0;
    border-top: dashed 1px #FFF;
    border-bottom: dashed 1px #FFF;
    line-height: 32px;
}
ul#navi li a p.twoline {
	width: 100%;
	display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding: 0 23px 2px 0;
    border-top: dashed 1px #FFF;
    border-bottom: dashed 1px #FFF;
    line-height: 15px;
}
ul#navi li a p:nth-child(1) {
	width: 1em;
	padding: 0 0.5em 0 1em;
}

ul#navi li a:after{
  position: absolute;
  content: '';
  z-index: 1;
  top: 0;
  right: 0;
  width: 0px;
  height: 0px;
  border-width: 23px 15px 23px 0px;
  border-color: transparent rgba(255,255,255,1.0) transparent transparent;
  border-style: solid;
}


ul#navi a { display: block; }
ul#navi a:link { color:#FFFFFF; text-decoration:none; /* text-shadow:2px 2px 1px #ffffff; */ transition:1.0s; vertical-align: middle; }
ul#navi a:visited { color:#FFFFFF; text-decoration:none; transition: 1.0s; }
ul#navi a:active {
	color:rgba(255,255,255,1.0);
    background: 
		url("../common_img/navibg.png") repeat-x center center,
		#d60012;/*背景色*/
	text-decoration:none;
	/* text-shadow:0 0 0 #ffffff; */
	transition: 1.0s;
}
ul#navi a:hover {
	width: 210px;
	color:rgba(255,255,255,1.0);
    background: 
		url("../common_img/navibg.png") repeat-x center center,
		#d60012;/*背景色*/
	text-decoration:none;
	/* text-shadow:0 0 0 #ffffff; */
	transition: 1.0s;
}
@media screen and (min-width: 0px) and (max-width: 767px)  {
ul#navi { display:none; }
}
/* //PCナビゲーション */


/* バナー（共通） */
.bannerbox01 { width: 208px; margin: 25px auto 0; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
.bannerbox01 { width: 50%; margin: 20px auto 0; }
}
/* バナー（共通） */


/* ページトップ */
#pagetop { width:1000px; margin:0 auto; text-align:right; padding: 0; }
#pagetop img { width:45px !important; height:auto; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
#pagetop { width:96%; margin:0 auto; text-align:right; padding: 0; }
#pagetop img { width:45px !important; height:auto; }
}
/* //ページトップ */


/* 共通設定など（並びや文字揃えなど） */
.in-parallel01 { display: inline-block; padding: 0 20px 0 0; }
.in-parallel01:last-child { padding: 0; }
.in-parallel01:before { content: "-"; display: inline-block; }


.indent01 { display:block; text-indent:-1em; padding-left:1em; }
.indent05 { display:block; text-indent:-5em; padding-left:5em; }
.indent06 { display:block; text-indent:-6em; padding-left:6em; }
.indent07 { display:block; text-indent:-7em; padding-left:7em; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
.in-parallel01 { display: block; padding: 0; }
.in-parallel01:last-child { padding: 0; }
.in-parallel01:before { content: "-"; display: inline-block; }


.indent01 { display:block; text-indent:-1em; padding-left:1em; }
.indent05 { display:block; text-indent:-5em; padding-left:5em; }
.indent06 { display:block; text-indent:-6em; padding-left:6em; }
.indent07 { display:block; text-indent:-7em; padding-left:7em; }
}
/* 共通設定など（並びや文字揃えなど） */


/* 2カラムコンテンツ詳細（共通）*/
.contentsdetail2columnwrap01 { width: 100%; display: table; padding: 0 0 10px; }
.contentsdetail2columnwrap01:last-child { padding: 0; }
.contentsdetail2columnwrap02 { width: 100%; display: table; padding: 0 0 20px; }
.contentsdetail2columnwrap02:last-child { padding: 0; }
.contentsdetail2columninner01 { display: table-cell; vertical-align: top; }
.contentsdetail2columninner01:nth-child(1) { width: 180px; }
.contentsdetail2columninner01:nth-child(1) p { text-align: left; }
.contentsdetail2columninner01:nth-child(2) { width: auto; padding: 0 0 0 3%; }
.contentsdetail2columninner01:nth-child(2) ul { width: 80%; padding: 0 10% 5px; border-bottom: 1px solid #cacaca; }
.contentsdetail2columninner01:nth-child(2) ul li { display: block; }
@media screen and (min-width: 0px) and (max-width: 768px)  {
.contentsdetail2columnwrap01 { width: 100%; display: table; padding: 0 0 10px; }
.contentsdetail2columnwrap01:last-child { padding: 0; }
.contentsdetail2columnwrap02 { width: 100%; display: table; padding: 0 0 15px; }
.contentsdetail2columnwrap02:last-child { padding: 0; }
.contentsdetail2columninner01 { display: block; vertical-align: middle; }
.contentsdetail2columninner01:nth-child(1) { width: 100%; padding: 0 0 10px; }
.contentsdetail2columninner01:nth-child(1) p { text-align: center; }
.contentsdetail2columninner01:nth-child(2) { width: auto; padding: 0; }
.contentsdetail2columninner01:nth-child(2) ul { width: 96%; padding: 0 2% 5px; border-bottom: 1px solid #cacaca; }
.contentsdetail2columninner01:nth-child(2) ul li { display: block; }
}
/* //2カラムコンテンツ詳細（共通）*/


/* 改行設定 */
.break:before {
    content: "\A";
	white-space: pre;
}
.pcno-break:before {
    content: "";
	white-space: pre;
}
.spno-break:before {
    content: "\A";
	white-space: pre;
}
@media screen and (min-width: 0px) and (max-width: 768px)  {
.break:before {
    content: "\A";
	white-space: pre;
}
.pcno-break:before {
    content: "\A";
	white-space: pre;
}
.spno-break:before {
    content: "";
	white-space: pre;
}
}
/* //改行設定 */