@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sidebar,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:unset;}span{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1}article,aside,details,figcaption,figure,header,hgroup,menu,nav,section{display:block}footer{display:inline-block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
ul{list-style:none; padding-inline-start:0; margin-block:0;}
* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
*:before, *:after { box-sizing: inherit; }
/*================================================
 *  common 
 ================================================*/
body {
    font-family: Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',Meiryo,YuGothic,'Yu Gothic',sans-serif;
    text-rendering: geometricPrecision;
    width:100%;
    min-height: 100% !important;
    height: auto;
    margin: 0;
    padding: 0;
    word-wrap:break-word;
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
    font-feature-settings: "palt";
    letter-spacing: .8px;
    background:#fffffd;
    color:#3c3c3c;
    line-height:1.8;
    font-weight:300;
}

@media only screen and ( max-width : 412px ){ 
body{font-size: -webkit-calc(100vw / 26); font-size: calc(100vw / 26);}
.lpstyle{font-size: -webkit-calc(100vw / 26); font-size: calc(100vw / 26);}
}
@media only screen and ( min-width : 412.1px ) and ( max-width : 767.9px ) { 
body{font-size:16px;}
.lpstyle{font-size:18px;}
}
@media only screen and ( min-width : 768px ) and ( max-width : 1023.9px ) { 
body{font-size:16px;}
.lpstyle{font-size:18px;}
}
@media print, screen and (min-width: 1024px){
body{font-size:16px;}
.lpstyle{font-size:24px;}
}


.lpstyle h1,.lpstyle h2,.lpstyle h3,.lpstyle h4,.lpstyle h5,.lpstyle h6{font-weight:bold; margin-top:1em; margin-bottom:1em;}
.lpstyle h1 span, .lpstyle h2 span{border-bottom: 10px double #fae47f; padding: 0 0.5em;}
.lpstyle h3 span, .lpstyle h4 span, .lpstyle h5 span, .lpstyle h6 span{border-bottom: 10px solid #fae47f; padding: 0 0.5em;}
.lpstyle h3{color:#B1221A;}
.lpstyle .obi0 h2, .lpstyle .obi0v h2, .lpstyle .obi1 h2, .lpstyle .obi1v h2{color:#fff;}
@media only screen and (max-width:767.9px){
.lpstyle h1,.lpstyle h2{font-size:1.5em !important; text-align:center;}
.lpstyle h3,.lpstyle h4,.lpstyle h5,.lpstyle h6{font-size:1.1em; text-align:center;}
}
@media print, screen and (min-width: 768px){
.lpstyle h1,.lpstyle h2{font-size:2.2em; line-height:1.2; text-align:center;}
.lpstyle h3,.lpstyle h4,.lpstyle h5,.lpstyle h6{font-size:1.1em; line-height:1.2; text-align:center;}
}
.lpstyle h3{color:#245193;}
.lpstyle h4{color:#f0d765;}
.lpstyle h5{color:#245193;}
.lpstyle h6{color:#f0d765;}

#wrap {
    width:100%;
    min-height:100%;
    height:auto !important;
    height:100%;
    display:block;
    clear:both;
    overflow:hidden;
    padding:0px;
    margin:0px;
}
#contents {
    display:block;
    clear:both;
    overflow:hidden;
    word-wrap:break-word;
    width:100%;
    padding:0;
    margin:60px auto 0px;
}
@media print, screen and (min-width: 768px){
#contents {margin:80px auto 0px;}
}
#sidebar {display:none;}
#wrap {
    width:100%;
    min-height:100%;
    height:auto !important;
    height:100%;
    display:block;
    clear:both;
    overflow:hidden;
    padding:0px;
    margin:0px;
}

#main {
    width:100%;
    height: 100%;
    display:block;
    clear:both;
    overflow:hidden;
    word-wrap:break-word;
    margin:0px auto 0;
    padding:0 0 1.5em;
}
section{width:100%; margin:0; padding:2.5em 0 1em; display:block; overflow:hidden;}



/*================================================
 *　header
 ================================================*/
.h_push em, .h_push span, .h_push small, .h_pushs em, .h_push spans, .h_pushs small{font-weight: bold !important;}
#maintop .poa{
    width: 100%;
    font-size: 4.5vw;
    font-weight: bold;
    text-align: center;
    color:#fff;
}
#maintop .poa{animation:anime1 5s ease-out;}
@keyframes anime1 {
    0% {
        opacity:  0;
        top: 60%;
    }
    100% {
        opacity:  1;
        top: 50%;
    }
}

@media print, screen and (min-width:1150px) {
#maintop .poa{font-size: 1.8em;}
}
#maintop .poa em{font-size: 150%; color:#05173F; text-shadow:none;}
#maintop .poa span{font-size: 120%;}
#header {
    position: fixed;
    width: 100%;
    top: 0;
    background: #fff;
    height: 80px;
    text-align: right;
    z-index: 99;
box-shadow: 0px 2px 12px rgb(0 0 0 / 30%);
    -moz-transition: padding 0.2s ease-in-out;
    -webkit-transition: padding 0.3s ease-in-out;
font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
.h_logo {
    position: absolute;
}
.h_logo img {
    height: 60px;
    width: auto;
    margin: 10px;
}

.logotext {
    position: absolute;
    top:11px;
    bottom: 0;
    left:80px; 
    text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
    font-family: -apple-system, BlinkMacSystemFont, 'Noto Sans JP', "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.logotextb{font-size:18px; font-weight:bold; text-align:left; display:block;}
.logotexts{font-size:18px; font-weight:normal; text-align:left; display:block; margin-bottom: -0.4em;}
.logotext a{ color: #245193;} 

.h_pushs {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    color: #fff;
    text-align: center;
    width: 135px;
}
.h_pushs a {
    display: block;
    background: #2a85b9;
    font-size: 20px;
    height: 100%;
    letter-spacing: .1em;
    border: solid 1px #2a85b9;
}
.h_pushs em{
    color:#fff;
    line-height: 1;
    display: block;
    margin: 10px auto 0;
}
.h_pushs span {
    display: block;
    padding-top: 0;
    height: 20px;
    color: #fff;
    font-size: 12px;
    text-align: center;
}
.h_pushs small {
    display: block;
    padding-top: 0;
    height: 20px;
    color: #fff;
    font-size: 12px;
    text-align: center;
}

.h_push {
    position: absolute;
    right: 236px;
    top: 0;
    height: 100%;
    color: #fff;
    text-align: center;
    width: 135px;
}
.h_push a {
    display: block;
    background: #b92a36;
    font-size: 20px;
    height: 100%;
    letter-spacing: .1em;
    border: solid 1px #b92a36;
}
.h_push em{
    color:#fff;
    line-height: 1;
    display: block;
    margin: 10px auto 0;
}
.h_push span {
    display: block;
    padding-top: 0;
    height: 20px;
    color: #fff;
    font-size: 12px;
    text-align: center;
}
.h_push small {
    display: block;
    padding-top: 0;
    height: 20px;
    color: #fff;
    font-size: 12px;
    text-align: center;
}
.h_pushs {right: 100px;}

@media screen and (max-width:1149.9px) {
.h_text {display:none;}
.nav-pc{display:none;}
.nav-mb {position: relative;}
/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
    display: inline-block;
    width: 30px;
    height: 40px;
    vertical-align: middle;
    margin-right: 30px;
    margin-top: 30px;
    float: right;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 22px;/*長さ*/
  border-radius: 3px;
  background: #555;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  right: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/*最前面に*/
  width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
 /* max-width: 330px;最大幅（調整してください）*/
  height: 100%;
  background: #fff;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
.hamburger-top {
  position: relative;
  background-color: #05173F;
  text-align: center;
  padding: 15px 15px;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 5px;
  color: #fff;
}
.humburger-top .cancel{
    display: inline-block;
    padding: 10px 3px;
}
.cancel {
  display: inline-block;
  position: absolute;
  cursor: pointer;
  top: 20px;
  right: 30px;
  width: 5px;
  height: 30px;
  background: #fff;
  transform: rotate(45deg);
  z-index: 99;
}
.cancel:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: -13px;
  width: 31px;
  height: 5px;
  margin-top: -3px;
  background: #fff;
}
nav#g-menu {
	width:100%;
	background:#fff;
	box-shadow:0 1px 2px #d0d8dc;
	zoom:1;
}
nav#g-menu:after {
	content:'';
	display:block;
	clear:both;
}
	nav#g-menu ul.gmenu {
		margin:0;
		padding:0;
		}

	nav#g-menu .inner > ul.gmenu {
		z-index:2;
		overflow:auto;
		position:fixed;
		top:60px;
		right:0;
		width:100%;
		height:88%;
		height:-webkit-calc(100% - 53px);
		height:calc(100% - 53px);
	}
	nav#g-menu li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #999;
		background:#fff;
	}
	nav#g-menu li:first-child {
		border-top:0;
	}
	nav#g-menu li:last-child {
		border-bottom:0;
	}
	nav#g-menu li a {
		display:block;
		padding:10px 20px;
		color:#333;
		text-decoration:none;
		background:#fff;
	}
	nav#g-menu li a:hover {
		color:#111;
		background:#efede9;
	}
nav#g-menu li a:before {
  font-family: "Font Awesome 6 Free";
  content: "\f0a4";
  font-weight: 900;
  color: #05173F;
  margin-right: 10px;
}

	nav#g-menu ul ul {
		border-top: 1px dotted #999;
	}
	nav#g-menu li li a {
		box-sizing:border-box;
		width:100%;
		padding:10px 10px 10px 30px;
		text-align:left;
	}

	nav#g-menu li li li a {
		padding:10px 30px 10px 70px;
	}

nav#g-menu li li a:before{
  font-family: "Font Awesome 6 Free";
  content: "\f0da";
  font-weight: 900;
  color: #333;
  margin-right: 10px;
  margin-left: 1em;
}
}

/*================================================
 *  TB　MB
 ================================================*/
@media screen and (max-width:768px){
#header {height:60px;}
.h_logo img {height:40px; margin:10px;}
.logotext{left:60px; top:12px;}
.logotexts{font-size:12px;}
.logotextb{font-size:12px;}
.h_pushs {width: 70px; right: 56px;}
.h_push {width: 70px; right: 128px;}
.h_pushs em, .h_push em{margin: 5px auto 0;}
.h_pushs span, .h_push span{display:none;}
.h_pushs small, .h_push small {line-height: 1.2;}
#nav-open {
    width: 20px;
    height: 40px;
    vertical-align: middle;
    margin-right: 20px;
    margin-top: 20px;
}
}
@media screen and (max-width: 414px){
.h_push {display: none;}
.h_pushs small, .h_push small {display: none;}
.h_pushs, .h_push{width: 35px; height: 35px; top: 12px; letter-spacing:0;}
.h_push{right:106px;}
.h_pushs{right:56px;}
}
@media screen and (max-width: 320px){
.h_pushs {display: none;}
}


/*================================================
 *  PC
 ================================================*/
@media print, screen and (min-width:1150px) {
.nav-pc{display:block;}
.nav-mb {display:none;}
.h_pushs {width: 135px; right: 0px;}
.h_push {width: 135px; right: 136px;}
.h_text {position:absolute; right:280px; top:0.7em; color: #245193; font-weight:bold;}
.h_text span {
    display: inline-block;
    vertical-align: middle;
    font-size: 0.9em;
    letter-spacing: .05em;
}
.h_text small {
    font-size: 0.9em;
    font-weight: bold;
    border-left: solid 2px #05173F;
    line-height: 1;
    display: inline-block;
    padding-left: 1em;
    margin-left: 1em;
}

#contents {
    margin: 120px auto 0px;
}
nav#g-menu {
    position: absolute;
    right: 0;
    bottom: -40px;
    width: 100%;
    background: aliceblue;
    text-align:center;
}
  nav#g-menu ul {
    position: relative;
    display: inline-flex;
    float: none;
    height: 40px;
  }
  nav#g-menu li {
    position: relative;
    margin-right: 1.5em;
  }
  nav#g-menu li:last-child {
    margin-right: 0;
  }
  nav#g-menu li i {
    font-size: 16px;
    margin-left: 5px;
  }
  nav#g-menu li a {
    position: relative;
    display: block;
    text-align: center;
    line-height: 40px;
    font-size: 14px;
    letter-spacing: 0.2em;
    font-weight: bold;
  }
  nav#g-menu li.menu-item-has-children > a:after {line-height:1; font-family: "Font Awesome 5 Free"; content: "\f107"; font-weight:600; list-style-type:none; padding-left: 5px; font-size: 14px;}
  nav#g-menu .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    width: 250px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
  nav#g-menu .sub-menu a {
    display: block;
    border-bottom: none;
    padding: 20px;
    line-height: 1.2em;
  }
  nav#g-menu .sub-menu a:hover:after {
    content: none;
  }
  nav#g-menu .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
    background: #f3f3f3;
  }
  nav#g-menu .sub-menu li:last-child {
    border-bottom: none;
  }
  nav#g-menu ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  nav#g-menu .current-menu-item a, nav#g-menu .current-menu-parent a {
    color: #05173F;
  }
  nav#g-menu ul > li:hover a {
    color: #072566;
  }
  nav#g-menu li:hover ul.sub-menu {
    top: 40px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  nav#g-menu li ul li:after {
    content: none;
  }
 nav#g-menu li:hover ul.sub-menu a {
    color: #05173F;
  }
  nav#g-menu .sub-menu li a:hover {
    background: #efecec;
  }


/* wide100%
	nav#g-menu {
		background:#245193;
		border-bottom:5px solid #245193;
		box-shadow:0 1px 3px #999;
		z-index:3;
	}
	nav#g-menu ul {
		margin:0;
		padding:0;
	}
	nav#g-menu ul li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
	}
	nav#g-menu ul li a {
		display:block;
		margin:0;
		padding:16px 0;
		background:#245193;
		color:#fff;
		font-size:14px;
		font-weight:bold;
		line-height:1;
		text-decoration:none;
	}
	nav#g-menu ul li:hover > a {
		color:#fff;
		background:#245193;
	}
	nav#g-menu ul.gmenu > li {
		position:relative;
		width:17%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;
	}
	nav#g-menu ul.gmenu > li:first-child {
		width:15%;
	}
	nav#g-menu ul.gmenu > li.menu-item-has-children a {
		padding-right:20px;
	}
	nav#g-menu ul.gmenu > li.menu-item-has-children > a:after {
		position:absolute;
		content:"";
		top:20px;
		width:0;
		height:0;
		margin-left:10px;
		border:5px solid transparent;
		border-top-color:#fff;
	}
	nav#g-menu ul li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:100%;
		margin:0;
		padding:0;
	}
	nav#g-menu ul li ul li {
		overflow:hidden;
		width:150%;
		height:0;
		color:#fff;
		transition:.2s;
	}
	nav#g-menu ul li ul li a {
		padding:13px 15px;
		text-align:left;
		background:#2759a3;
		font-weight:normal;
	}
	nav#g-menu ul li:hover > ul > li {
		overflow:visible;
		height:40px;
		border-bottom:1px solid #8c0e0e;
	}
	nav#g-menu ul li:hover ul li:last-child {
		border-bottom:none;
	}
	nav#g-menu ul.gmenu > li:last-child > ul {
		left:-50%;
	}
	nav#g-menu ul li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#fff;
	}
	nav#g-menu ul.gmenu > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#fff;
	}
	nav#g-menu ul li ul li ul {
		top:0;
		left:100%;
	}
	nav#g-menu ul li ul li ul li {
		width:100%;
	}
	nav#g-menu ul li ul li:hover > ul > li {
		border-bottom:1px solid #6d0c0c;
	}
	nav#g-menu ul.gmenu > li:last-child > ul li ul {
		left:-100%;
	}
	nav#g-menu ul li ul li ul li a {
		background:#2759a3;
	}
	nav#g-menu ul li ul li ul li a:hover {
		background:#245193;
	}
*/
}




/*================================================================================================
  *  #05173F > #072566 | #245193 > #2759a3 | #2a85b9 > #f3f3f3 / #efede9 /
 ================================================================================================*/
@media only screen and (max-width:767.9px){
.inner{width:90%; margin: 0 auto; display: block; overflow: hidden; clear: both;}
.inners{width:90%; margin: 0 auto; display: block; overflow: hidden; clear: both;}
.innerss{width:90%; margin: 0 auto; display: block; overflow: hidden; clear: both;}
}
@media print, screen and (min-width:768px){
.inner{width:90%; margin: 0 auto; display: block; overflow: hidden; clear: both;}
.inners{width:70%; margin: 0 auto; display: block; overflow: hidden; clear: both;}
.inners{width:70%; max-width:900px; margin: 0 auto; display: block; overflow: hidden; clear: both;}
}
.mainbox + section, h1 + section, h2 + section, h3 + section, h4 + section, h5 + section, h6 + section,
.breadcrumb + section, section..mainboxbox{padding-top:0 !important; margin-top:0 !important;}

/*================================================================================================
.inner + h1, .inner + h2, .inner + h3, .inner + h4, .inner + h5, .inner + h6,
.inners + h1, .inners + h2, .inners + h3, .inners + h4, .inners + h5, .inners + h6,
.innerss + h1, .innerss + h2, .innerss + h3, .innerss + h4, .innerss + h5, .innerss + h6{padding-top:0 !important; margin-top:0 !important;}

 *  一般・共通設定
 ================================================================================================*/
p {margin:0 0 1em 0;}
#catdes p{margin:0;}
a {
	color:#05173F;
	text-decoration:none;
        font-weight: 600;
}
a:hover {
	color:#072566;
	text-decoration:underline rgba(160 133 73 / 0.4);
}
.pagelink {
    display: block !important;
    padding-top: 60px !important;
    margin-top: -60px !important;
}
img {
 vertical-align:top;
 max-width: 100%;
}
a:hover img{opacity:0.8;transform: scale(1.02 , 1.02); transition-duration: 0.3s;}
a img{transition:0.6s;}
img.img100, .img100 img:first-child {width:100%; height:auto; margin:0; display:block;}
img.img90, .img90 img:first-child {width:90%; height:auto; margin:0 auto 1em;}
.wp-caption-text{text-align:center; color:#333333; margin-bottom:1em;}
.recentcomments{color:#5C4138;}
img.wp-smiley, img.emoji {float:none;}

.alignnone{display: block !important; margin: 0 auto !important;}
img[class*="alignnone"]{width:100%; max-width:900px; height:auto;}

.aligncenter{display: block !important; margin: 0 auto 1.5em !important; height: auto;}
img[class*="aligncenter"]{width:90%; height:auto;}

.alignright { float: unset; margin:0 auto 1.5em !important; display: block;}
.alignleft { float: unset; margin:0 auto 1.5em !important; display: block;}
img[class*="alignright"], img[class*="alignleft"]{width:90%; max-width:320px; height:auto;}
.wp-caption.alignright, .wp-caption.alignleft{width:90%; height:auto;}

@media print, screen and (min-width: 768px)
{
.alignright { float:right !important; margin:0 0 1em 1em !important;}
.alignleft { float:left !important; margin:0 1em 1em 0 !important;}
img[class*="alignright"], img[class*="alignleft"], .wp-caption.alignright, .wp-caption.alignleft{width:40%; height:auto;}
}

img[class*="alignright"], img[class*="alignleft"], .wp-caption.alignright, .wp-caption.alignleft, img[class*="aligncenter"]{
  border-radius:0.5em;
}
.imgsh{box-shadow:0 0.2em 0.6em -0.2em rgba(0, 0, 0, 0.8);}
.imgborder{border: 1px solid #ccc;}
.imgdrop{
    -webkit-filter: drop-shadow(0px 3px 10px rgba(0,0,0,.8));
    filter: drop-shadow(0px 0px 10px rgba(0,0,0,.8));
}

.bin figure{text-align:center;}
.bin img {width:100%; height:auto; margin:0;}
img.maru, .maru > img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  object-fit: cover;
  object-position: 50% 50%;
}
img.shikaku, .yshikaku > img {
  width: 100%;
  height: auto;
  border-radius: 0;
  object-fit: cover;
  object-position: 50% 50%;
}
img.yokonaga, .yokonaga > img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}
div.maru {
    position: relative;
    width: 230px;
    height: 230px; 
    background-color: rgb(255 255 240 / 70%);
    border:5px solid #05173F;
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center;
}
div.shikaku {
    position: relative;
    width: 250px;
    height: 250px; 
    background-color: rgb(255 255 240 / 70%);
    border:5px solid #05173F;
    border-radius: 0; 
    margin: 0 auto;
    text-align: center;
}
div.maru p, div.shikaku p{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin-bottom:0;
    line-height:1.5;
}


.cf {zoom: 1;}
.cf:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.ov{
    clear: both;
    overflow: hidden;
    display: block !important;
}
b, strong, .bold, em {font-weight:bold;}
pre {margin:1em 0; padding:1em;}
blockquote {
	margin-bottom:1em;
	padding:1em 1em 0.2em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
        background: rgb(221 221 221 / 0.2);
}
abbr[title] {border-bottom:none; text-decoration:none;}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0 3em;
    padding: 0;
    overflow: hidden;
    clear: both;
}
hr.hr0 {
    display: block;
    height: 1px;
    border: 0;
    border-top: 0px solid #cccccc;
    margin: 0;
    padding: 0;
}
dl {margin:0 0 1em 0;}
dt {margin-bottom:0.5em; border-bottom:1px dotted #ddd;}
dt:before {content:"\0025a0";}
dd {margin-bottom:1em;}
#toc_container{margin:1.5em auto 0em;}

/*================================================
 *  flex box
 ================================================*/
.af2, .bf2, .lf2, .af3, .bf3, .lf3, .af4, .bf4, .lf4, .af5, .bf5, .lf5, .af6, .bf6, .lf6{
     display: flex;
     flex-flow: row wrap;
}
.af2, .af3, .af4, .af5, .af6{justify-content:space-around;}
.bf2, .bf3, .bf4, .bf5, .bf6{justify-content:space-between;}
.lf2, .lf3, .lf4, .lf5, .lf6{justify-content:flex-start;}
.lf2 .bin, .lf3 .bin, .lf4 .bin, .lf5 .bin, .lf6 .bin{
    flex-grow: 0;
    margin-bottom: 1.5em;
    min-width: 0;
    word-break: break-word;
    overflow-wrap: break-word;
}
.af2 .bin, .af3 .bin, .af4 .bin, .af5 .bin, .af6 .bin, .bf2 .bin, .bf3 .bin, .bf4 .bin, .bf5 .bin, .bf6 .bin{
    flex-grow: 0;
    margin-bottom: 1.5em;
    min-width: 0;
    word-break: break-word;
    overflow-wrap: break-word;
}
@media only screen and ( max-width : 414px ){ 
.af2 .bin, .af3 .bin, .af4 .bin, .af5 .bin, .af6 .bin, .bf2 .bin, .bf3 .bin, .bf4 .bin, .bf5 .bin, .bf6 .bin, .lf2 .bin, .lf3 .bin, .lf4 .bin, .lf5 .bin, .lf6 .bin{flex-basis:100%; margin-left:0;}
}
@media only screen and ( min-width : 414.1px ) and ( max-width : 767.9px ) { 
.lf2 .bin, .af2 .bin, .bf2 .bin{flex-basis:100%; margin-left:0;}
.lf3 .bin, .af3 .bin, .bf3 .bin{flex-basis:100%; margin-left:0;}
.lf4 .bin, .af4 .bin, .bf4 .bin{flex-basis:46%;}
.lf4 .bin:nth-child(4n+1), .lf4 .bin:nth-child(4n+3){margin-left:0;}
.lf4 .bin:nth-child(4n+2), .lf4 .bin:nth-child(4n){margin-left:8%;}
.lf5 .bin, .af5 .bin, .bf5 .bin{flex-basis:46%;}
.lf5 .bin:nth-child(5n+1), .lf5 .bin:nth-child(5n+3), .lf5 .bin:nth-child(5n){margin-left:0;}
.lf5 .bin:nth-child(5n+2), .lf5 .bin:nth-child(5n+4){margin-left:8%;}
.lf6 .bin, .af6 .bin, .bf6 .bin{flex-basis:46%;}
.lf6 .bin:nth-child(6n+1), .lf6 .bin:nth-child(6n+3), .lf6 .bin:nth-child(6n+5){margin-left:0;}
.lf6 .bin:nth-child(6n+2), .lf6 .bin:nth-child(6n+4), .lf6 .bin:nth-child(6n){margin-left:8%;}
}
@media only screen and ( min-width : 768px ) and ( max-width : 1199.9px ) { 
.lf2 .bin, .af2 .bin, .bf2 .bin{flex-basis:46%;}
.lf2 .bin:nth-child(2n+1){margin-left:0;}
.lf2 .bin:nth-child(2n){margin-left:8%;}
.lf3 .bin, .af3 .bin, .bf3 .bin{flex-basis:30%;}
.lf3 .bin:nth-child(3n+1){margin-left:0;}
.lf3 .bin:nth-child(3n+2), .lf3 .bin:nth-child(3n){margin-left:5%;}
.lf4 .bin, .af4 .bin, .bf4 .bin{flex-basis:46%;}
.lf4 .bin:nth-child(4n+1), .lf4 .bin:nth-child(4n+3){margin-left:0;}
.lf4 .bin:nth-child(4n+2), .lf4 .bin:nth-child(4n){margin-left:8%;}
.lf5 .bin, .af5 .bin, .bf5 .bin{flex-basis:30%;}
.lf5 .bin:nth-child(5n+1){margin-left:0;}
.lf5 .bin:nth-child(5n+2), .lf5 .bin:nth-child(5n+3){margin-left:5%;}
.lf5 .bin:nth-child(5n+4), .lf5 .bin:nth-child(5n){margin-left:13.8%;}
.lf6 .bin, .af6 .bin, .bf6 .bin{flex-basis:30%;}
.lf6 .bin:nth-child(6n+1), .lf6 .bin:nth-child(6n+4){margin-left:0%;}
.lf6 .bin:nth-child(6n+2), .lf6 .bin:nth-child(6n+3), .lf6 .bin:nth-child(6n+5), .lf6 .bin:nth-child(6n){margin-left:5%;}
}
@media print, screen and (min-width: 1200px){
.lf2 .bin, .af2 .bin, .bf2 .bin{flex-basis:46%;}
.lf2 .bin:nth-child(2n+1){margin-left:0;}
.lf2 .bin:nth-child(2n){margin-left:8%;}
.lf3 .bin, .af3 .bin, .bf3 .bin{flex-basis:30%;}
.lf3 .bin:nth-child(3n+1){margin-left:0;}
.lf3 .bin:nth-child(3n+2), .lf3 .bin:nth-child(3n){margin-left:5%;}
.lf4 .bin, .af4 .bin, .bf4 .bin{flex-basis:23%;}
.lf4 .bin:nth-child(4n+1){margin-left:1%;}
.lf4 .bin:nth-child(4n+2), .lf4 .bin:nth-child(4n+3), .lf4 .bin:nth-child(4n){margin-left:2%;}
.lf5 .bin, .af5 .bin, .bf5 .bin{flex-basis:18%;}
.lf5 .bin:nth-child(5n+1){margin-left:1%;}
.lf5 .bin:nth-child(5n+2), .lf5 .bin:nth-child(5n+3), .lf5 .bin:nth-child(5n+4), .lf5 .bin:nth-child(5n){margin-left:2%;}
.lf6 .bin, .af6 .bin, .bf6 .bin{flex-basis:16%;}
.lf6 .bin:nth-child(6n+1){margin-left:0%;}
.lf6 .bin:nth-child(6n+2), .lf6 .bin:nth-child(6n+3), .lf6 .bin:nth-child(6n+4), .lf6 .bin:nth-child(6n+5), .lf6 .bin:nth-child(6n){margin-left:0.8%;}
}
.fg1 { flex-grow: 1;}
.fg2 { flex-grow: 2;}
.fg3 { flex-grow: 3;}
.f2 p, .f3 p{margin:0.5em 0.5em 1em;}

.b55l{display:block;padding:0;margin:0;width:50%;float:left;}
.b55r{display:block;padding:0;margin:0;width:50%;float:right;}
.b64l{display:block;padding:0;margin:0;width:60%;float:left;}
.b64r{display:block;padding:0;margin:0;width:40%;float:right;}
.b46l{display:block;padding:0;margin:0;width:40%;float:left;}
.b46r{display:block;padding:0;margin:0;width:60%;float:right;}
.b73l{display:block;padding:0;margin:0;width:70%;float:left;}
.b73r{display:block;padding:0;margin:0;width:30%;float:right;}
.b37l{display:block;padding:0;margin:0;width:30%;float:left;}
.b37r{display:block;padding:0;margin:0;width:70%;float:right;}
.b82l{display:block;padding:0;margin:0;width:80%;float:left;}
.b82r{display:block;padding:0;margin:0;width:20%;float:right;}
.b28l{display:block;padding:0;margin:0;width:20%;float:left;}
.b28r{display:block;padding:0;margin:0;width:80%;float:right;}
.b91l{display:block;padding:0;margin:0;width:90%;float:left;}
.b91r{display:block;padding:0;margin:0;width:10%;float:right;}
.b19l{display:block;padding:0;margin:0;width:10%;float:left;}
.b19r{display:block;padding:0;margin:0;width:90%;float:right;}
.b33l{display:block;padding:0;margin:0;width:33%;float:left;}
.b33c{display:block;padding:0;margin:0 0.5%;width:33%;float:left;}
.b33r{display:block;padding:0;margin:0;width:33%;float:right;}
.b44{display:block;padding:0;margin:0;width:25%;float:left;}
.bb55l,.bb55r,.bb64l,.bb64r,.bb46l,.bb46r,.bb73l,.bb73r,.bb37l,.bb37r,.bb82l,.bb82r,.bb28l,.bb28r,.bb91l,.bb91r,.bb19l,.bb19r
{width:100%; margin:0; padding:0; display:inline-block;}
.b0{width:50%; margin:0 auto; padding:0; display:block; overflow:hidden;}
.b1, .b2, .b3, .b4, .b6{width:100%; margin:0; padding:0; display:inline-block;}
.maxwss{max-width:300px; margin:1em auto 2em;}
@media only screen and (min-width: 360px)
{
.b6{width:50%; font-size:90%; margin:0; padding:0; display:inline-block; float:left;}
}
@media only screen and (min-width: 414.1px)
{
.b4 {width:50%; float:left;}
.bb55l{display:block;padding:0;margin:0;width:50%;float:left;}
.bb55r{display:block;padding:0;margin:0;width:50%;float:right;}
.bb33l{display:block;padding:0;margin:0;width:33%;float:left;}
.bb33c{display:block;padding:0;margin:0 0.5%;width:33%;float:left;}
.bb33r{display:block;padding:0;margin:0;width:33%;float:right;}
.bb44{display:block;padding:0;margin:0;width:25%;float:left;}
.maxws{overflow: hidden; width:100%; max-width:300px !important; margin-left:-webkit-calc(50% - 150px); margin-left:calc(50% - 150px); margin-right:-webkit-calc(50% - 150px); margin-right:calc(50% - 150px);}
}
@media only screen and (min-width: 768px)
{
.b3{width:33.3%; padding-left:0; padding-right:0; float:left;}
.b6{width:33.3%; padding-left:0; padding-right:0; float:left;font-size:100%;}
.bb73l{display:block;padding:0;margin:0;width:70%;float:left;}
.bb73r{display:block;padding:0;margin:0;width:30%;float:right;}
.bb37l{display:block;padding:0;margin:0;width:30%;float:left;}
.bb37r{display:block;padding:0;margin:0;width:70%;float:right;}
.bb82l{display:block;padding:0;margin:0;width:80%;float:left;}
.bb82r{display:block;padding:0;margin:0;width:20%;float:right;}
.bb28l{display:block;padding:0;margin:0;width:20%;float:left;}
.bb28r{display:block;padding:0;margin:0;width:80%;float:right;}
.bb91l{display:block;padding:0;margin:0;width:90%;float:left;}
.bb91r{display:block;padding:0;margin:0;width:10%;float:right;}
.bb19l{display:block;padding:0;margin:0;width:10%;float:left;}
.bb19r{display:block;padding:0;margin:0;width:90%;float:right;}
}
@media print, screen and (min-width: 1024px)
{
.b2{width:50%; padding-left:0; padding-right:0; float:left;}
.b4{width:25%; padding-left:0; padding-right:0; float:left;}
.b6{width:33.3%; padding-left:0; padding-right:0; float:left;}
.bb64l{display:block;padding:0;margin:0;width:60%;float:left;}
.bb64r{display:block;padding:0;margin:0;width:40%;float:right;}
.bb46l{display:block;padding:0;margin:0;width:40%;float:left;}
.bb46r{display:block;padding:0;margin:0;width:60%;float:right;}
.maxw{overflow: hidden; width:100%; max-width:900px !important; margin-left:-webkit-calc(50% - 450px); margin-left:calc(50% - 450px); margin-right:-webkit-calc(50% - 450px); margin-right:calc(50% - 450px);}
.maxwss{max-width:45%; margin:1em auto 2em;}
}

/*================================================
 *  box1
 ================================================*/
.box0, .box1, .box2, .box3, .box4, .box0b, .box1b, .box2b, .box3b, .box4b{
    display:block;
    clear:both;
    overflow:hidden;
    margin: 0 0 3em;
    padding: 1em 1em 0;
    text-align: left;
}
.box0{
    border: #ddd solid 2px;
    background: #fff;
}
.box1{
    border:unset;
    background: #f2fdf0;
}
.box2{
    border: #245193 solid 2px;
    background: #fff;
}
.box3{
    border: #2a85b9 solid 2px;
    background: #fff;
}
.box4{
    border: #00a0e9 solid 2px;
    background: #fff;
}
.box0b{
    border: #ddd dashed 2px;
    background: #fffff0;
}
.box1b{
    border: #05173F dashed 2px;
    background: #fffff0;
}
.box2b{
    border: #245193 dashed 2px;
    background: #fffff0;
}
.box3b{
    border: #2a85b9 dashed 2px;
    background: #fffff0;
}
.box4b{
    border: #00a0e9 dashed 2px;
    background: #fffff0;
}

/*================================================
　scbox
 ================================================*/
.scbox{
    display:block;
    clear:both;
    overflow:hidden;
    float:left;
    width:100%;
    margin: 0 0 3em;
    padding: 1em 1em 0;
    border: 3px solid #cccccc;
    border-radius: 5px;
    box-shadow: 0px 5px 20px -5px rgba(206, 203, 173, 0.8);
    background-color: #ffffff;
    height: 10em;
    overflow-y: auto;
    overflow-x: hidden;
}
.scbox::-webkit-scrollbar{
  width: 12px;
}
.scbox::-webkit-scrollbar-track{
  background: #ffffff;
  border: none;
  border-radius: 10px;
  box-shadow: inset 0 0 2px #777777; 
}
.scbox::-webkit-scrollbar-thumb{
  background: #05173F;
  border-radius: 10px;
  box-shadow: none;
}

/*-bg------------------------------------------------------------------------------------------------*/
.bgbox{
    background-image: url(../images/01a.png),url(../images/01b.png),url(../images/01.png);
    background-position: top,bottom,center;
    background-repeat: no-repeat,no-repeat,repeat-y;
    background-size: 100%;
    margin: 0 0 3em;
    padding: 20px 1em 5px;
    color:#333333;
    overflow: hidden;
}

/*================================================
 *  h1 - h6  widget-title 
 ================================================*/
.mainbox h1:not(.noh), .m1, .mainbox h2:not(.noh), .m2{font-size:2em; font-weight:bold; margin-top:3em; margin-bottom:1em; line-height:1.6; text-align:center;}
.pointm, .checkm{font-size:1.25em;}

.mainbox h3:not(.noh), .m3, .mainbox h4:not(.noh), .m4{
    display: block;
    text-align:left;
    font-weight:bold;
    margin: 1.2em auto 0.2em;
    line-height: 1.6;
    font-size:1.5em;
}
.mainbox h5:not(.noh), .m5, .mainbox h6:not(.noh), .m6{
    display: block;
    text-align:center;
    font-weight:bold;
    margin: 2.2em auto 0.2em;
    line-height:2;
    font-size:1.25em;
}
.mainbox h1:not(.noh), .m1, .mainbox h1:not(.noh) a, .m1 a{color:#05173F; text-decoration:none;}
.mainbox h1:not(.noh) a:hover, .m1 a:hover{color:#072566; text-decoration:none;}
.mainbox h2:not(.noh), .m2, .mainbox h2:not(.noh) a, .m2 a{color:#245193; text-decoration:none;}
.mainbox h2:not(.noh) a:hover, .m2 a:hover{color:#2759a3; text-decoration:none;}
.mainbox h3:not(.noh), .m3, .mainbox h3:not(.noh) a, .m3 a{color:#245193; text-decoration:none;}
.mainbox h3:not(.noh) a:hover, .m3 a:hover{color:#2759a3; text-decoration:none;}
.mainbox h4:not(.noh), .m4, .mainbox h4:not(.noh) a, .m4 a{color:#245193; text-decoration:none;}
.mainbox h4:not(.noh) a:hover, .m4 a:hover{color:#2759a3; text-decoration:none;}
.mainbox h5:not(.noh), .m5, .mainbox h5:not(.noh) a, .m5 a {background:#05173F; color:#fff;}
.mainbox h6:not(.noh), .m6, .mainbox h6:not(.noh) a, .m6 a {background:#072566; color:#fff;}
.mainbox h5:not(.noh) a:hover, .m5 a:hover{background:#05173F; color:#fff; text-decoration:none;}
.mainbox h6:not(.noh) a:hover, .m6 a:hover{background:#245193; color:#fff; text-decoration:none;}

.widget-title{
    background:#245193;
    color:#fff;
    text-align:center;
    display: block;
    clear: both;
    font-family: monospace;
    font-weight: bolder;
    text-decoration:none;
    margin:0;
    padding:0.6em 0.5em;
    line-height:1.8;
    font-size:1.25em;
}
.pointm {
  position: relative;
  border-top: solid 2px #245193;
  border-bottom: solid 2px #245193;
  background: #efede9;
  line-height: 1.4;
  padding: 0.4em 0.5em;
  margin: 3em 0 0.5em;
  color: #245193;
  font-weight: bold;
}
.pointm:after {
  position: absolute;
  font-family: "Font Awesome 6 Free",'Quicksand','Avenir','Arial',sans-serif;
  content: '\f0a7\ POINT';
  background: #245193;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 0.3em 0.5em 0.2em;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em;
}

.checkm {
  position: relative;
  border-top: solid 2px #05173F;
  border-bottom: solid 2px #05173F;
  background: #efede9;
  line-height: 1.4;
  padding: 0.4em 0.5em;
  margin: 3em 0 0.5em;
  color: #05173F;
  font-weight: bold;
}
.checkm:after {
  position: absolute;
  font-family: "Font Awesome 6 Free",'Quicksand','Avenir','Arial',sans-serif;
  content: '\f00c Check';
  background: #05173F;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 0.3em 0.5em 0.2em;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 600;
}

h1 + h2, h1 + h3, h1 + h4, h1 + h5, h1 + h6,
h1 + .m1, h1 + .m2, h1 + .m3, h1 + .m4, h1 + .m5, h1 + .m6, h2 + h3, h2 + h4, h2 + h5, h2 + h6,
.m1 + h2, .m1 + h3, .m1 + h4, .m1 + h5, .m1 + h6,
h3 + h2, h3 + h4, h3 + h5, h3 + h6, h4 + h2, h4 + h3, h4 + h5, h4 + h6,
h5 + h6, h5 + h2, h5 + h3, h5 + h4, h6 + h2, h6 + h3, h6 + h4, h6 + h5{margin-top: 0 !important;}
section > h1:first-child, section > h2:first-child, section > h3:first-child, section > h4:first-child, box1 > h5:first-child, section > h6:first-child{margin-top: 0.2em !important;}
.box1 > h1:first-child, .box1 > h2:first-child, .box1 > h3:first-child, .box1 > h4:first-child, box1 > h5:first-child, .box1 > h6:first-child{margin-top: 0 !important;}
.box2 > h1:first-child, .box2 > h2:first-child, .box2 > h3:first-child, .box2 > h4:first-child, box2 > h5:first-child, .box2 > h6:first-child{margin-top: 0 !important;}
.box3 > h1:first-child, .box3 > h2:first-child, .box3 > h3:first-child, .box3 > h4:first-child, box3 > h5:first-child, .box3 > h6:first-child{margin-top: 0 !important;}
.box4 > h1:first-child, .box4 > h2:first-child, .box4 > h3:first-child, .box4 > h4:first-child, box4 > h5:first-child, .box4 > h6:first-child{margin-top: 0 !important;}
.b1 > h1:first-child, .b1 > h2:first-child, .b1 > h3:first-child, .b1 > h4:first-child, b1 > h5:first-child, .b1 > h6:first-child{margin-top: 0 !important;}
.b2 > h1:first-child, .b2 > h2:first-child, .b2 > h3:first-child, .b2 > h4:first-child, b1 > h5:first-child, .b2 > h6:first-child{margin-top: 0 !important;}
#toc_container + h2{margin-top: 1.5em !important;}


/*================================================
 *  obi
 ================================================*/
.obi0, .obi0v {
    position: relative;
    color: #fff;
    text-align: center;
    min-height: 10em;
-webkit-background-size: 20px 20px;
-moz-background-size: 20px 20px;
background-size: 20px 20px;
background-color: #05173F;
background-image: linear-gradient(transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2)),
                  linear-gradient(0deg, transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2));
background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(.5, transparent), color-stop(.5, rgba(7, 37, 102, 0.2)), to(rgba(7, 37, 102, 0.2))),
                  -webkit-gradient(linear, 0 0, 100% 0, color-stop(.5, transparent), color-stop(.5, rgba(7, 37, 102, 0.2)), to(rgba(7, 37, 102, 0.2)));
background-image: -webkit-linear-gradient(transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2)),
                  -webkit-linear-gradient(0deg, transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2));
background-image: -moz-linear-gradient(transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2)),
                  -moz-linear-gradient(0deg, transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2));
background-image: -ms-linear-gradient(transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2)),
                  -ms-linear-gradient(0deg, transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2));
background-image: -o-linear-gradient(transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2)),
                  -o-linear-gradient(0deg, transparent 50%, rgba(7, 37, 102, 0.2) 50%, rgba(7, 37, 102, 0.2));
}
.obi1, .obi1v {
    position: relative;
    color: #fff;
    text-align: center;
    min-height: 10em;
-webkit-background-size: 10px 10px;
-moz-background-size: 10px 10px;
background-size: 10px 10px;
background-color: #245193;
background-image: linear-gradient(-45deg, #2759a3 25%, transparent 25%,
          transparent 50%, #2759a3 50%, #2759a3 75%,
          transparent 75%, transparent);
background-image: -webkit-gradient(linear, 0 0, 100% 100%,
            color-stop(.25, #2759a3), color-stop(.25, transparent),
            color-stop(.5, transparent), color-stop(.5, #2759a3),
            color-stop(.75, #2759a3), color-stop(.75, transparent),
            to(transparent));
background-image: -webkit-linear-gradient(-45deg, #2759a3 25%, transparent 25%,
          transparent 50%, #2759a3 50%, #2759a3 75%,
          transparent 75%, transparent);
background-image: -moz-linear-gradient(-45deg, #2759a3 25%, transparent 25%,
          transparent 50%, #2759a3 50%, #2759a3 75%,
          transparent 75%, transparent);
background-image: -ms-linear-gradient(-45deg, #2759a3 25%, transparent 25%,
          transparent 50%, #2759a3 50%, #2759a3 75%,
          transparent 75%, transparent);
background-image: -o-linear-gradient(-45deg, #2759a3 25%, transparent 25%,
          transparent 50%, #2759a3 50%, #2759a3 75%,
          transparent 75%, transparent);
}
.obi0v + section, .obi1v + section {padding-top:7vw;}
.obi0 h2, .obi0v h2, .obi1 h2, .obi1v h2{
  position: absolute; 
  top:0;
  bottom:0;
  left:0;
  right:0;
  height: fit-content;
  margin:auto;
  line-height:1.4;
  color:#fff;
  font-size:2.2em;
}
.obi0 h2 > span, .obi0v h2 > span, .obi1 h2 > span, .obi1v h2 > span{font-size:60%;  border-bottom:unset;}
.obi0v::after, .obi1v::after {
    content: "";
    border: 5vw solid transparent;
   /* border-top: 5vw solid #05173F;*/
    position: absolute;
    left:-webkit-calc(50% - 5vw);
    left: calc(50% - 5vw);
    top: 100%;
}
.obi0v::after{border-top: 5vw solid #05173F;}
.obi1v::after{border-top: 5vw solid #245193;}

@media screen and (max-width: 768px) {
  .obi0, .obi0v, .obi1, .obi1v {min-height: 7em;}
  .obi0 h2, .obi0v h2, .obi1 h2, .obi1v h2{line-height:1.2;}
  .obi0 h2 > span, .obi0v h2 > span, .obi1 h2 > span, .obi1v h2 > span{font-size:65%;  border-bottom:unset;}
}


/*================================================
　btn
 ================================================*/
.btna, .btnb, .btnc, .btnd, div.dbtna a, div.dbtnb a, div.dbtnc a, div.dbtnd a{font-size: 1em;}
header .btn, header .btnb, header .btnc, header .btnd{font-size: 14px;}
.btna, div.dbtna a, input[type="submit"] {
  display: inline-block;
  max-width: 300px;
  text-align: center;
  border: 2px solid #245193;
  color: #fff !important;
  text-decoration: none;
  font-weight: bold;
  padding: 4px 15px;
  margin: 10px 5px 1em;
  border-radius: 4px;
  transition: .4s;
  background:#245193;
}
input[type="submit"]{padding: 4px 8px; margin: 1em 5px 1em;}
.btna:hover, div.dbtna a:hover, input:hover[type="submit"] {
  background-color: #fff;
  border-color: #245193;
  color: #245193 !important;
}
.btnb, div.dbtnb a {
  display: inline-block;
  max-width: 300px;
  text-align: center;
  border: 2px solid #245193;
  color: #245193 !important;
  text-decoration: none;
  font-weight: bold;
  padding: 4px 15px;
  margin: 10px 5px 1em;
  border-radius: 4px;
  transition: .4s;
  background:#fff;
}
.btnb:hover, div.dbtnb a:hover {
  background-color: #245193;
  border-color: #245193;
  color: #ffffff !important;
}
.btnc, div.dbtnc a{
  display: inline-block;
  max-width: 300px;
  text-align: center;
  border: 2px solid #05173F;
  color: #fff !important;
  text-decoration: none;
  font-weight: bold;
  padding: 4px 15px;
  margin: 10px 5px 1em;
  border-radius: 4px;
  transition: .4s;
  background:#05173F;
}
.btnc:hover, div.dbtnc a:hover{
  background-color: #fff;
  border-color: #05173F;
  color: #05173F !important;
}
.btnd, div.dbtnd a {
  display: inline-block;
  max-width: 300px;
  text-align: center;
  border: 2px solid #05173F;
  color: #05173F !important;
  text-decoration: none;
  font-weight: bold;
  padding: 4px 15px;
  margin: 10px 5px 1em;
  border-radius: 4px;
  transition: .4s;
  background:#fff;
}
.btnd:hover, div.dbtnd a:hover {
  background-color: #05173F;
  border-color: #05173F;
  color: #ffffff !important;
}

ul.usns{padding:0 0 0em;}
.usns{
display:flex;
flex-flow:row wrap;
justify-content:center;
}
.usns li{
text-align:center!important;
letter-spacing: .2px;
line-height: 1;
margin-bottom: 0em;
position: relative;
}

a.btny, a.btnl, a.btnm, a.btne, a.btnw, a.btnf, a.btnt, a.btni, a.btnn, a.btnh {
  display: inline-block;
  text-align: center;
  padding: 0.1em 0.1em;
  margin: 0;
  font-size: 2em;
 /* text-decoration: none;
  border: 2px solid #ccc;
  border-radius: 4px;
  transition: .4s;
  background:#fff7e6;*/
}
a.btny:hover, a.btnl:hover, a.btnm:hover, a.btne:hover, a.btnw:hover, a.btnf:hover, a.btnt:hover, a.btni:hover, a.btnn:hover, a.btnh:hover{
  /*background:rgba(255, 247, 230, 0.5);*/
  opacity: 0.5;
}
a.btny {color:#fc0d1c;}
a.btnl {color:#00b900;}
a.btnm {color:#ef3f56;}
a.btne {color:#ef3f56;}
a.btnw {color:#ffc107;}
a.btnf {color:#3b75d4;}
a.btnt {color:#55acee;}
a.btni {color:#f13f79;}
a.btnn {color:#0077b5;}
a.btnh {color:#f13f79;}
.fa-fw {
    text-align: center !important;
    width: 1.4em !important;
}

/*================================================
　　v1
 ================================================*/
.v1 {
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.v1 iframe, 
.v1 object, 
.v1 embed {
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;    
}

/*================================================
 *  por  swiper
 ================================================*/
.por{position:relative;}
.por a img, .por img{
    position: relative;
    width:100%;
    height:auto;
}
.porp{position:absolute; top:-webkit-calc(30% + 3em); top:calc(30% + 3em); left:0; width:100%; text-decoration: none; font-size: 0.9em; margin:0; padding:0.3em 0.3em 0.3em 0.5em;
    color:#fff; text-align: left; line-height: 1.2;
    text-shadow:
    black 0.1em 0px 0.1em, black -0.1em 0px 0.1em,
    black 0px -0.1em 0.1em, black -0.1em 0px 0.1em,
    black 0.1em 0.1em 0.1em, black -0.1em 0.1em 0.1em,
    black 0.1em -0.1em 0.1em, black -0.1em -0.1em 0.1em,
    black 0.05em 0.1em 0.1em, black -0.05em 0.1em 0.1em,
    black 0.05em -0.1em 0.1em, black -0.05em -0.1em 0.1em,
    black 0.1em 0.05em 0.1em, black -0.1em 0.05em 0.1em,
    black 0.1em -0.05em 0.1em, black -0.1em -0.05em 0.1em,
    black 0.05em 0.05em 0.1em, black -0.05em 0.05em 0.1em,
    black 0.05em -0.05em 0.1em, black -0.05em -0.05em 0.1em;
}
.porm a, .porm{position:absolute; top:30%; left:0; width:100%; text-decoration: none; font-size: 0.9em; margin:0; padding:0.3em 0.3em 0.3em 0.5em; background: #05173F; color:#fff; text-align: left; line-height: 1.2;}
.porm a:hover{background:#05173F;}
.port a, .port{position:absolute; top:0; left:0; width:100%; text-decoration: none; font-size: 0.9em; margin:0; padding:0.3em 0.3em 0.3em 0.5em; background: #05173F; color:#fff; text-align: left; line-height: 1.2;}
.port a:hover{background:#072566;}
.porb {position:absolute; bottom:0; left:0;}
.por .btnc{line-height: 1; padding: 1px 3px !important; margin:0 !important; position: absolute; top:0; right:0;}
.por .btnd{line-height: 1; padding: 1px 3px !important; margin:0 !important; position: absolute; top:0; left:0;}
.por a.btnb span:nth-of-type(1){display:none;}
.rank-num{position:absolute; left:0; top:0; background-color:#05173F; color:#ffffff; padding: 0.22em 0.46em 0.3em 0.4em; font-size:1.5em; line-height:1; text-align:center; font-style:italic; font-weight:bold;}
.rank-num:before{border-width: 1.5em 1.5em 0 0; position:absolute; top:0; left:-5px; content:""; width:0; height:0; z-index:-1; border-style:solid;}
.rank-maru{position:absolute; left:0; top:0; background-color:#05173F; color:#ffffff; width:2.2em; height:2.2em; line-height:2.2em; border-radius:50%; text-align:center; vertical-align:middle; text-decoration:none;}
.card-excerpt{padding:1em;margin-bottom: 0;}
.view_count{position:absolute; bottom:0; left:0; color:#fff; background:#05173F; padding:3px; z-index:2;}
.view_countl{position:absolute; top:0; left:0; color:#fff; background:#05173F; padding:3px; z-index:2;}
.view_counts{position:absolute; bottom:-2em; left:0; width:100%; text-align:center; color:#05173F; padding:3px; z-index:2; font-weight:bold;}
@media only screen and (max-width: 767.9px)
{
.view_countb{position:absolute; bottom:0; left:0; color:#fff; background:#05173F; padding:3px; z-index:2;}
}
@media only screen and (min-width: 768px)
{
.view_countb{position:absolute; top:100%; left:0; color:#fff; background:#05173F; padding:3px; z-index:2;}
}

.poa{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

/*<div class="fix-bg por" style="background-image:url();"> */
.fix-bg{
  width: 100%;
  height: 70vh;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}
@media screen and (max-width:359.9px){
   .fix-bg{height:100vh;}
}
@media print, screen and (min-width:768px) {
  .fix-bg{height:450px;}
}

@media screen and (max-width:767.9px){
.por .fullimg img{
    width: auto;
    margin-left: -webkit-calc(-50vw + 50%);
    margin-left: calc(-50vw + 50%);
    max-width: none;
    height: -webkit-calc(100vh - 60px);
    height: calc(100vh - 60px);
    display: block;
    opacity: 0.5;
}
}
@media print, screen and (min-width:768px) {
.por .fullimg img{
    width: 100vw;
    margin-left: -webkit-calc(-50vw + 50%);
    margin-left: calc(-50vw + 50%);
    max-width: none;
    height: auto;
    height: -webkit-calc(100vh - 80px);
    height: calc(100vh - 80px);
    display: block;
    opacity: 0.5;
}
}

/*================================================
 *  por
 ================================================*/
@media only screen and (max-width: 1023.9px)
{
.porbox{
   width:90vw;
  /* height: fit-content; */
   height: 112.5vw;
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   margin: auto;
   font-size: -webkit-calc(100vw / 20);
   font-size: calc(100vw / 20);
}
.porboxh{height: 112.5vw;}
}
@media print, screen and (min-width: 1024px)
{
.porbox{
   width:40vw;
  /* height: fit-content; */
   height: 50vw;
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   margin: auto;
}
.porboxh{height: 50vw;}
}



/*================================================
 *  footmenu
 ================================================*/
footer{background-color:#f3f3f3; font-size:0.9em; width: 100%;}
.footmenu { 
    width: 100%;
    margin: 0 auto;
    display: block;
    clear: both;
    overflow: hidden;
    border-top: 1px groove rgb(255 255 255 / 50%);
    background: #05173F;
}
.footmenu .menu{
    padding-left: 0;
    list-style-type: none;
    margin: 0;
    width: 100%;
    height: 100%;
}
.footmenu li{
	position: relative;
	display: inline-block;
	background-color: #05173F;
        text-align: center;
	text-decoration: none;
	transition: all 1.5s;
        width:100%;
        height:100%;
        float:left;
        margin:0;
}
.footmenu li::after {
	position: absolute;
	top: 50%;
	right: -0.1em;
	content: '';
	margin-top: -0.4em;
	border: 0.4em solid transparent;
	border-top-width: 0.4em;
	border-bottom-width: 0.4em;
	border-left-color: #fff;
	transition: all 1.5s;
}
.footmenu li a{color:#fff; font-weight:400; text-decoration:none; display:block; line-height:3em; height:100%; border-bottom:2px groove rgb(255 255 255 / 50%);}
.footmenu li:hover {background-color:#072566; opacity:0.6; color:#072566;}
.footmenu li:hover a{color:#fff;}
.footmenu li:hover::after {border-left-color:#fff;}
.footmenu li:nth-child(2n){border-left:none;}
@media only screen and (min-width: 768px) and (max-width: 1023.9px)
{
.footmenu ul li{width:50%; float:left;}
.footmenu ul li:nth-child(1n){border-right: 1px groove rgb(255 255 255 / 50%);}
}
@media print, screen and (min-width: 1024px)
{
.footmenu ul li{width:auto; padding-left:0.8em; padding-right:1.2em; float:left; margin-top:1px;}
.footmenu ul li:nth-child(1n){border-right: none;}
.footmenu li a{border: none;}
/*.footmenu, .footmenu li{background-color:#f3f3f3;}
.footmenu li:hover {background-color:#f3f3f3;}*/
}
.copyright{background-color:#222; color:#fff; text-align: center; padding-bottom: 0.5em; padding-top: 1em; clear:both;}
.copyright a {color: #fff;}
.copyright a:hover {color: #fff;}




/*================================================================================================
 *  #05173F > #072566 | #245193 > #2759a3 | #2a85b9 > #f3f3f3 / #fffff0  #f3f3f3  #fdf0f0  /  #efede9 /
 ================================================================================================*/
/*================================================
 *  table
 ================================================*/
table h2, table h3, table h4, table h5, table h6{margin-bottom: 0.2em !important; text-align:left !important;}

table:not([class]) {
	width:100%;
	margin: 0 auto 1em;
	border-collapse:collapse;
	border:2px solid #999;
	background:#fff;
        table-layout: fixed;
}
table:not([class]) th, table:not([class]) td {
　 　border: none;
    display: block;
    width: 100%;
    padding:10px;
}
table:not([class]) th {
	text-align:center;
	vertical-align:middle;
	background:#eee;
}
table:not([class]) td {
	text-align:left;
}
.last td:last-child {
    border-bottom: solid 2px #999;
    width: 100%;
}

@media print, screen and (min-width: 768px) {
table:not([class])  {width:100%;}
table:not([class]) th, table:not([class]) td{display: table-cell; border:2px solid #999;}
table:not([class]) th  {width: 25%;}
table:not([class]) td{width: 75%;}
}

/*-----------------------------------------------------------------------------------------------t1--*/
table.t1 {width:100%; margin:0.5em auto 0.5em; word-break:break-all; table-layout:fixed; display:table;}
table.t1 th, table.t1 td{padding:0.4em 0.2em; border:2px solid #999;}
table.t1 th{background-color:#072566; color:#ffffff; text-align:center; vertical-align: middle;}
table.t1 td{background-color:#fff; color:#000000; text-align:left;}

/*-----------------------------------------------------------------------------------------------tscr--*/
table.tscr {
  display: block;
}
@media only screen and (max-width: 768px)
{
table.tscr {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
}

table.tscr tbody {
  width: 100%;
  display:table;
 word-break:break-all;
}
table.tscr th, table.tscr td{ width:11em; padding:1em 0.2em; border:0.05em solid #072566; text-align:center; vertical-align:middle;}
table.tscr th{background-color:#05173F; color:#ffffff;}
table.tscr td{background-color:#ffffff; color:#000000; min-width:160px;}

table.tdl td{text-align:left;}
table.tdr td{text-align:right;}
table.tdc td{text-align:center;}

/*================================================
 *　tright
 ================================================*/
table.tright {
    width: 98%;
    margin: -0.3em 1% 0.5em;
    border-collapse: separate;
    border-spacing: 0px 0.5em;
}

table.tright th {
    background: #eee;
    vertical-align: middle;
    text-align: center;
    width: 25%;
    overflow: visible;
    position: relative;
    font-weight: bold;
    padding:0;
    color:#05173F;
    font-size:1.2em;
}

table.tright th:after {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: 2px solid rgba(153, 153, 153, 0);
    border-left-color: #05173F;
    border-width: 0.45em;
    margin-top: -0.45em;
}

table.tright td {
    background: #ffffea;
    width: 75%;
    padding: 0.2em 0.2em 0em 0.5em;
}
table.tdl td{text-align:left; padding:0.4em 0.2em 0.4em 0.4em;}
table.tdr td{text-align:right;}
table.tdc td{text-align:center;}

/*================================================
 *　tbottom
----------------------------------------------------*/
table.tbottom {
    width: 98%;
    margin: -1em 1% 0.5em;
    border-collapse: separate;
    border-spacing: 0px 1.2em;
}

table.tbottom th {
    background: #eee;
    vertical-align: middle;
    text-align: center;
    width: 25%;
    overflow: visible;
    position: relative;
    font-weight: bold;
    padding: 0.5em 0;
    color:#05173F;
    font-size:1.2em;
}

table.tbottom th:before{
    content: "";
    border: 0.5em solid transparent;
    border-top: 0.6em solid #05173F;
    position: absolute;
    left: 45%;
    top: 100%;
}
table.tbottom tr.lasttr th:before{
    content: none;
}
table.tbottom td {
    background: #ffffea;
    width: 75%;
    padding: 0.5em 0.2em 0em 0.5em;
}
table.tbottom td p{margin-bottom:0.5em;}

/*================================================
 *　ol ul
 ================================================*/
ul#sitemap_list, section.mainbox ul:not([class]), .lpstyle ul:not([class]),
section.mainbox ol:not([class]), .lpstyle ol:not([class]),ol.o0, ol.o1, ol.o2, ol.o3, ol.o1b, ol.o2b, ol.o3b,
ul.u1, ul.u2, ul.u3, ul.u4, ul.u5, ul.u6, ul.u7, ul.u8, ul.u9, ul.u10, ul.u11,
ul.u1b, ul.u2b, ul.u3b, ul.u4b, ul.u5b, ul.u6b, ul.u7b, ul.u8b, ul.u9b, ul.u10b, ul.u11b{
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    -webkit-padding-start: 0px;
    -moz-margin-before: 0em;
    -moz-margin-after: 0em;
    -moz-margin-start: 0px;
    -moz-margin-end: 0px;
    -moz-padding-start: 0px;
    list-style-position: inside;
    margin:0 0 0 0.5em;
    padding:0.5em 0.5em 1em 1.5em;
    text-indent: 1.5em;
    display: table-cell;
}
section.mainbox ol:not([class]),ol.o0, ol.o1, ol.o2, ol.o3, ol.o1b, ol.o2b, ol.o3b{padding:0.5em 0.5em 1em 1.8em;}

/*================================================
 *　ol 
------------------------------------------------*/
section.mainbox ol:not([class]), .lpstyle ol:not([class]), .o0, .o0b {
 counter-reset: li;
 list-style: none;
}
section.mainbox ol:not([class]) > li, .lpstyle ol:not([class]) > li, .o0 > li, .o0b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 2em;
 padding-bottom: 0.5em;
 line-height: 1.2;
}
section.mainbox ol:not([class]) > li:before, .lpstyle ol:not([class]) > li:before, .o0 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.2em;
 height: 1.2em;
 line-height: 1.2;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #05173F;
}
.o0b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.2em;
 height: 1.2em;
 line-height: 1.2;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #2a85b9;
}
.o1, .o1b {
 counter-reset: li;
 list-style: none;
}
.o1 > li, .o1b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 1.8em;
 padding-bottom: 0.5em;
 line-height: 1.3;
}
.o1 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.2em;
 height: 1.2em;
 line-height: 1.3;
 border-radius: 50%;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #05173F;
}
.o1b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0.2em;
 width: 1.2em;
 height: 1.2em;
 line-height: 1.3;
 border-radius: 50%;
 color: #fff;
 text-align: center;
 vertical-align: baseline;
 background: #2a85b9;
}
.o2, .o2b {
 counter-reset: li;
 list-style: none;
}
.o2 > li, .o2b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 2.6em;
 padding-bottom: 0.5em;
}
.o2 > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0;
 width: 1em;
 text-align: right;
 font-weight: bold;
 color: #05173F;
}
.o2b > li:before {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 0;
 width: 1em;
 text-align: right;
 font-weight: bold;
 color: #2a85b9;
}
.o2 > li:after {
 content: "位";
 position: absolute;
 left: 1.2em;
 top:0;
 font-weight: bold;
 color: #05173F;
}
.o2b > li:after {
 content: "位";
 position: absolute;
 left: 1.2em;
 top:0;
 font-weight: bold;
 color: #2a85b9;
}
.o3, .o3b {
 counter-reset: li;
 list-style: none;
}
.o3 > li, .o3b > li {
 position: relative;
 text-indent:0em;
 margin-left: -2em;
 padding-left: 4em;
 padding-bottom: 0.5em;
 line-height: 1.2;
}
.o3 > li:before {
 content: "Point";
 position: absolute;
 left: 0;
 padding: 0 0 0 0.2em;
 text-align: right;
 font-weight: bold;
 background-color: #000000;
 color: #05173F;
}
.o3b > li:before {
 content: "Point";
 position: absolute;
 left: 0;
 padding: 0 0 0 0.2em;
 text-align: right;
 font-weight: bold;
 background-color: #000000;
 color: #2a85b9;
}
.o3 > li:after {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 2.6em;
 top:0;
 padding: 0 0.2em;
 font-weight: bold;
 background-color: #000000;
 color: #05173F;
}
.o3b > li:after {
 counter-increment: li;
 content: counter(li);
 position: absolute;
 left: 2.6em;
 top:0;
 padding: 0 0.2em;
 font-weight: bold;
 background-color: #000000;
 color: #2a85b9;
}

/*================================================
 *　ul li
 ================================================*/
ul#sitemap_list li, section.mainbox ul:not([class]) li, .lpstyle ul:not([class]) li, ul.u1 li, ul.u2 li, ul.u3 li, ul.u4 li, ul.u5 li, ul.u6 li, ul.u7 li, ul.u8 li, ul.u9 li, ul.u10 li, ul.u11 li,
ul.u1b li, ul.u2b li, ul.u3b li, ul.u4b li, ul.u5b li, ul.u6b li, ul.u7b li, ul.u8b li, ul.u9b li, ul.u10b li, ul.u11b li{
 list-style-type:none; line-height: 1.2; padding-bottom:0.5em; text-indent: -1.5em;
}
ul#sitemap_list li:before, section.mainbox ul:not([class]) li:before, .lpstyle ul:not([class]) li:before, ul.u1 li:before, ul.u2 li:before, ul.u3 li:before, ul.u4 li:before, ul.u5 li:before, ul.u6 li:before, ul.u7 li:before, ul.u8 li:before, ul.u9 li:before, ul.u10 li:before, ul.u11 li:before{
 line-height:1.2; font-family: "Font Awesome 6 Free"; font-weight:bold; color:#05173F;
}
ul.u1b li:before, ul.u2b li:before, ul.u3b li:before, ul.u4b li:before, ul.u5b li:before, ul.u6b li:before, ul.u7b li:before, ul.u8b li:before, ul.u9b li:before, ul.u10b li:before, ul.u11b li:before{
 line-height: 1.2; font-family: "Font Awesome 6 Free"; color:#2a85b9;
}
ul#sitemap_list li:before{content: "\f058" !important; font-weight:600;}
section.mainbox ul li.googlelink:before{content: "\f3c5"; font-weight:600;}
section.mainbox ul li.facebooklink:before {content: "\f082"; font-weight:400;}
section.mainbox ul li.instagramlink:before {content: "\f16d"; font-weight:400;}
section.mainbox ul li.twitterlink:before {content: "\f081"; font-weight:400;}
section.mainbox ul:not([class]) li:before, .lpstyle ul:not([class]) li:before {content: "\f14a" !important; font-weight:600;}
ul.u1 li:before, ul.u1b li:before {content: "\f00c" !important; font-weight:600;}
ul.u2 li:before, ul.u2b li:before {content: "\f14a" !important; font-weight:400;}
ul.u3 li:before, ul.u3b li:before {content: "\f14a" !important; font-weight:600;}
ul.u4 li:before, ul.u4b li:before {content: "\f058" !important; font-weight:400;}
ul.u5 li:before, ul.u5b li:before {content: "\f058" !important; font-weight:600;}
ul.u6 li:before, ul.u6b li:before {content: "\f00d" !important; font-weight:600;}
ul.u7 li:before, ul.u7b li:before {content: "\f0a4" !important; font-weight:600;}
ul.u8 li:before, ul.u8b li:before {content: "\f091" !important; font-weight:600;}
ul.u9 li:before, ul.u9b li:before {content: "\f201" !important; font-weight:600;}
ul.u10 li:before, ul.u10b li:before {content: "\f080" !important; font-weight:600;}
ul.u11 li:before, ul.u11b li:before {content: "\f200" !important; font-weight:600;}

ul#sitemap_list li:before, section.mainbox ul:not([class]) li:before, .lpstyle ul:not([class]) li:before, ul.u1 li:before, ul.u2 li:before, ul.u3 li:before, ul.u4 li:before, ul.u5 li:before, ul.u6 li:before, ul.u7 li:before, ul.u8 li:before, ul.u9 li:before, ul.u10 li:before, ul.u11 li:before,
ul.u1b li:before, ul.u2b li:before, ul.u3b li:before, ul.u4b li:before, ul.u5b li:before, ul.u6b li:before, ul.u7b li:before, ul.u8b li:before, ul.u9b li:before, ul.u10b li:before, ul.u11b li:before{
 padding-right:0.6em;
}


li.lin:before{display:none; margin-top:0.25em; margin-left:-0.4em;}

.lista, .list1, .listy, .listm, .listl, .listf, .listi, .listt, .listw {line-height:1.2; margin:0.5em 0.5em 1em; padding:0 0 0 1em; vertical-align:text-top; text-indent: -1em;}
.lista:before, .list1:before, .listm:before, .listw:before {padding-right:0.25em; vertical-align:baseline; font-family: "Font Awesome 5 Free";}
.listy:before, .listl:before, .listf:before, .listi:before, .listt:before {padding-right:0.25em; vertical-align:baseline; font-family:'Font Awesome 5 Brands';}

.lista:before {content: "\f51e"; font-weight:600; color:#e6b422;}
.list1:before {content: "\f14a"; font-weight:600; color:#00a0e9;}
.listy:before {content: "\f167"; font-weight:400; color:#fc0d1c;}
.listl:before {content: "\f3c0"; font-weight:400; color:#00b900;}
.listf:before {content: "\f082"; font-weight:400; color:#3b75d4;}
.listi:before {content: "\f16d"; font-weight:400; color:#f13f79;}
.listt:before {content: "\f081"; font-weight:400; color:#55acee;}
.listm:before {content: "\f3c5"; font-weight:900; color:#ef3f56;}
.listw:before {content: "\f109"; font-weight:900; color:#6cc655;}

/*================================================
 *  form
 ================================================*/
#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
        vertical-align: middle;
}
table.formTable td{background:#fff;}
input {vertical-align: baseline; line-height:1.8em;}
input[type="text"].inps{vertical-align: text-top;}
input[type=radio] ,input[type=checkbox]{vertical-align: baseline;}
select {vertical-align: middle; line-height:1.8em;}
select option{font-size:1em;}
@media screen and (max-width:820px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
form textarea, form serect {
	padding:5px;
        width: 100%;
}
form input[type="text"]{
	padding:5px;
}
input[type="text"].inps{width:70%; vertical-align: middle;}
form input[type="submit"], form input[type="reset"], form input[type="button"] {
	display:inline-block;
	height:40px;
}
input {vertical-align: middle; line-height:1.5em;}
select {vertical-align: middle; line-height:1.5em;}
}

/*================================================
 *　important
 ================================================*/
.rightc {text-align:right !important;}
.leftc {text-align:left !important;}
.righta {text-align:right !important;}
.lefta {text-align:left !important;}
.centera {text-align:center !important;}
.rightb {display:block !important; float:right !important;}
.leftb {display:block !important; float:left !important;}
.centerb {display:block !important; float:none; margin:0 auto !important;}
.rightf {display:block !important; float:none !important; vertical-align:top;}
.leftf {display:block !important; float:none !important; vertical-align:top;}
@media print, screen and (min-width: 768px)
{
.rightc {text-align:center !important;}
.leftc {text-align:center !important;}
.rightf {float:right !important;}
.leftf {float:left !important;}
}
#feed{
    height: 11em;
    overflow-y: scroll;
    overflow-x: hidden;
}
.naname {
    transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
    padding-left: 0.45em;
    margin-bottom:0.5em;
    margin-top:0.2em;
}
.nanameb {
    transform: rotate(3deg);
    -moz-transform: rotate(3deg);
    -webkit-transform: rotate(3deg);
    padding-left: 0.45em;
    margin-bottom:0.5em;
    margin-top:0.2em;
}
.fsg{font-family:HGP行書体;}
.tshadow{
text-shadow:
    white 0.1em 0px 0.1em, white -0.1em 0px 0.1em,
    white 0px -0.1em 0.1em, white -0.1em 0px 0.1em,
    white 0.1em 0.1em 0.1em, white -0.1em 0.1em 0.1em,
    white 0.1em -0.1em 0.1em, white -0.1em -0.1em 0.1em,
    white 0.05em 0.1em 0.1em, white -0.05em 0.1em 0.1em,
    white 0.05em -0.1em 0.1em, white -0.05em -0.1em 0.1em,
    white 0.1em 0.05em 0.1em, white -0.1em 0.05em 0.1em,
    white 0.1em -0.05em 0.1em, white -0.1em -0.05em 0.1em,
    white 0.05em 0.05em 0.1em, white -0.05em 0.05em 0.1em,
    white 0.05em -0.05em 0.1em, white -0.05em -0.05em 0.1em;
}
.tshadowb{
text-shadow:
    black 0.1em 0px 0.1em, black -0.1em 0px 0.1em,
    black 0px -0.1em 0.1em, black -0.1em 0px 0.1em,
    black 0.1em 0.1em 0.1em, black -0.1em 0.1em 0.1em,
    black 0.1em -0.1em 0.1em, black -0.1em -0.1em 0.1em,
    black 0.05em 0.1em 0.1em, black -0.05em 0.1em 0.1em,
    black 0.05em -0.1em 0.1em, black -0.05em -0.1em 0.1em,
    black 0.1em 0.05em 0.1em, black -0.1em 0.05em 0.1em,
    black 0.1em -0.05em 0.1em, black -0.1em -0.05em 0.1em,
    black 0.05em 0.05em 0.1em, black -0.05em 0.05em 0.1em,
    black 0.05em -0.05em 0.1em, black -0.05em -0.05em 0.1em;
}

.pr1{background: linear-gradient(transparent 75%, #ffff00 5%); font-weight:bold;}
.pr2{text-decoration: underline 0.2em #ff0000 wavy; text-underline-offset:0.1em; font-weight:bold;}

.bgf{background: #ffffff !important;}
.bgb{background: #000000 !important;}
.bgr{background: #b92a36 !important;}
.bgy{background: #ffff00 !important;}
.bg1{background: #05173F !important;}
.bg2{background: #072566 !important;}
.bg3{background: #245193 !important;}
.bg4{background: #2759a3 !important;}
.bg5{background: #2a85b9 !important;}
.bg6{background: #f3f3f3 !important;}
.bgb{background: beige !important;}
.bgbb{background: #fffff0 !important;}
.bgg{background: #f3f3f3 !important;}
.bggg{background: #f2fdf0 !important;}

.clf{color: #ffffff !important;}
.clb{color: #000000 !important;}
.clr{color: #b92a36 !important;}
.cly{color: #ffff00 !important;}
.cl1{color: #05173F !important;}
.cl2{color: #072566 !important;}
.cl3{color: #245193 !important;}
.cl4{color: #2759a3 !important;}
.cl5{color: #2a85b9 !important;}
.cl6{color: #f3f3f3 !important;}

.fa-fw {
    text-align: left;
    width: 1.4em !important;
}
.fs500{font-size:500% !important;}
.fs400{font-size:400% !important;}
.fs300{font-size:300% !important;}
.fs290{font-size:290% !important;}
.fs280{font-size:280% !important;}
.fs270{font-size:270% !important;}
.fs260{font-size:260% !important;}
.fs250{font-size:250% !important;}
.fs240{font-size:240% !important;}
.fs230{font-size:230% !important;}
.fs220{font-size:220% !important;}
.fs210{font-size:210% !important;}
.fs200{font-size:200% !important;}
.fs190{font-size:190% !important;}
.fs180{font-size:180% !important;}
.fs170{font-size:170% !important;}
.fs160{font-size:160% !important;}
.fs150{font-size:150% !important;}
.fs140{font-size:140% !important;}
.fs130{font-size:130% !important;}
.fs120{font-size:120% !important;}
.fs110{font-size:110% !important;}
.fs100{font-size:100% !important;}
.fs90{font-size:90% !important;}
.fs80{font-size:80% !important;}
.fs70{font-size:70% !important;}
.fs60{font-size:60% !important;}
.fs50{font-size:50% !important;}
.fs40{font-size:40% !important;}
.fs30{font-size:30% !important;}
.fs20{font-size:20% !important;}
.fs10{font-size:10% !important;}
.lh2{line-height:2 !important;}
.lh15{line-height:1.5 !important;}
.lh1{line-height:1 !important;}
.lh05{line-height:0.5 !important;}
.lh0{line-height:0 !important;}
.pdxxx{padding:3em !important;}
.pdxx{padding:2.5em !important;}
.pdx{padding:1.5em !important;}
.pdm{padding:1em !important;}
.pds{padding:0.5em !important;}
.pdss{padding:0.25em !important;}
.pdn{padding:0 !important;}
.pdlrxxx{padding-left:3em !important; padding-right:3em !important;}
.pdlrxx{padding-left:2.5em !important; padding-right:2.5em !important;}
.pdlrx{padding-left:1.5em !important; padding-right:1.5em !important;}
.pdlrm{padding-left:1em !important; padding-right:1em !important;}
.pdlrs{padding-left:0.5em !important; padding-right:0.5em !important;}
.pdlrss{padding-left:0.25em !important; padding-right:0.25em !important;}
.pdlrn{padding-left:0em !important; padding-right:0em !important;}
.pdlxxx{padding-left:3em !important;}
.pdlxx{padding-left:2.5em !important;}
.pdlx{padding-left:1.5em !important;}
.pdlm{padding-left:1em !important;}
.pdls{padding-left:0.5em !important;}
.pdlss{padding-left:0.25em !important;}
.pdln{padding-left:0em !important;}
.pdrxxx{padding-right:3em !important;}
.pdrxx{padding-right:2.5em !important;}
.pdrx{padding-right:1.5em !important;}
.pdrm{padding-right:1em !important;}
.pdrs{padding-right:0.5em !important;}
.pdrss{padding-right:0.25em !important;}
.pdrn{padding-right:0em !important;}
.pdtbxxx{padding-top:3em !important; padding-bottom:3em !important;}
.pdtbxx{padding-top:2.5em !important; padding-bottom:2.5em !important;}
.pdtbx{padding-top:1.5em !important; padding-bottom:1.5em !important;}
.pdtbm{padding-top:1em !important; padding-bottom:1em !important;}
.pdtbs{padding-top:0.5em !important; padding-bottom:0.5em !important;}
.pdtbss{padding-top:0.25em !important; padding-bottom:0.25em !important;}
.pdtbn{padding-top:0em !important; padding-bottom:0em !important;}
.pdtxxx{padding-top:3em !important;}
.pdtxx{padding-top:2.5em !important;}
.pdtx{padding-top:1.5em !important;}
.pdtm{padding-top:1em !important;}
.pdts{padding-top:0.5em !important;}
.pdtss{padding-top:0.25em !important;}
.pdtn{padding-top:0 !important;}
.pdbxxx{padding-bottom:3em !important;}
.pdbxx{padding-bottom:2.5em !important;}
.pdbx{padding-bottom:1.5em !important;}
.pdbm{padding-bottom:1em !important;}
.pdbs{padding-bottom:0.5em !important;}
.pdbss{padding-bottom:0.25em !important;}
.pdbn{padding-bottom:0 !important;}
.mra{margin:0 auto !important;}
.mrxxx{margin:3em !important;}
.mrxx{margin:2.5em !important;}
.mrx{margin:1.5em !important;}
.mrm{margin:1em !important;}
.mrs{margin:0.5em !important;}
.mrss{margin:0.25em !important;}
.mrn{margin:0 !important;}
.mrlrxxx{margin-left:3em !important; margin-right:3em !important;}
.mrlrxx{margin-left:2.5em !important; margin-right:2.5em !important;}
.mrlrx{margin-left:1.5em !important; margin-right:1.5em !important;}
.mrlrm{margin-left:1em !important; margin-right:1em !important;}
.mrlrs{margin-left:0.5em !important; margin-right:0.5em !important;}
.mrlrss{margin-left:0.25em !important; margin-right:0.25em !important;}
.mrlrn{margin-left:0em !important; margin-right:0em !important;}
.mrlxxx{margin-left:3em !important;}
.mrlxx{margin-left:2.5em !important;}
.mrlx{margin-left:1.5em !important;}
.mrlm{margin-left:1em !important;}
.mrls{margin-left:0.5em !important;}
.mrlss{margin-left:0.25em !important;}
.mrln{margin-left:0em !important;}
.mrrxxx{margin-right:3em !important;}
.mrrxx{margin-right:2.5em !important;}
.mrrx{margin-right:1.5em !important;}
.mrrm{margin-right:1em !important;}
.mrrs{margin-right:0.5em !important;}
.mrrss{margin-right:0.25em !important;}
.mrrn{margin-right:0em !important;}
.mrtbxxx{margin-top:3em !important; margin-bottom:3em !important;}
.mrtbxx{margin-top:2.5em !important; margin-bottom:2.5em !important;}
.mrtbx{margin-top:1.5em !important; margin-bottom:1.5em !important;}
.mrtbm{margin-top:1em !important; margin-bottom:1em !important;}
.mrtbs{margin-top:0.5em !important; margin-bottom:0.5em !important;}
.mrtbss{margin-top:0.25em !important; margin-bottom:0.25em !important;}
.mrtbn{margin-top:0em !important; margin-bottom:0em !important;}
.mrtxxx{margin-top:3em !important;}
.mrtxx{margin-top:2.5em !important;}
.mrtx{margin-top:1.5em !important;}
.mrtm{margin-top:1em !important;}
.mrts{margin-top:0.5em !important;}
.mrtss{margin-top:0.25em !important;}
.mrtn{margin-top:0em !important;}
.mrbxxx{margin-bottom:3em !important;}
.mrbxx{margin-bottom:2.5em !important;}
.mrbx{margin-bottom:1.5em !important;}
.mrbm{margin-bottom:1em !important;}
.mrbs{margin-bottom:0.5em !important;}
.mrbss{margin-bottom:0.25em !important;}
.mrbn{margin-bottom:0em !important;}
.pdz{padding-left:1em !important; padding-right:1em !important; padding-bottom:1em !important; padding-top:0em !important;}
.pindex{text-indent: 1em;}
.potl{position: absolute; top:0; left:0;}
.potr{position: absolute; top:0; right:0;}
.pobl{position: absolute; bottom:0; left:0;}
.pobr{position: absolute; bottom:0; right:0;}
.vam{vertical-align: middle;}

@media only screen and (max-width: 360px)
{
.minmbb{display:none !important;}
}
@media only screen and (max-width: 414px)
{
.minmb{display:none !important;}
}
@media only screen and (max-width: 767.9px)
{
.mintb{display:none !important;}
}
@media only screen and (max-width: 1023.9px)
{
.minpc{display:none !important;}
}

@media print, screen and (min-width: 361px)
{
.maxmbb{display:none !important;}
}
@media print, screen and (min-width: 414.1px)
{
.maxmb{display:none !important;}
}
@media print, screen and (min-width: 768px)
{
.maxtb{display:none !important;}
}
@media print, screen and (min-width: 1024px)
{
.maxpc{display:none !important;}
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
#page-top{
  display: block;
  position: fixed;
  z-index: 9999;
  bottom: 45px;
  right: 10px;
    width: 2.2em;
    height: 2.2em;
    line-height: 2.2em;
    border-radius: 50%;
    text-align: center;
    vertical-align: middle;
  text-decoration: none;
  transition: .5s;
}
#page-top{background: #245193;}
#page-top:hover{background: #245193;}
#page-top a
{
  font-size:1em;
  color:#fff;
  text-decoration:none;
}
#page-top a:hover
{
  font-size:1.1em;
  color:#fff;
}

@media print{
.print_pages { size: A4; page-break-before: always;}
header, footer, #sidebar, #subbox , .fixfoot, .top-fixed, .side-fixed, .btn-fixed, .vwrap, #page-top, #g-menu{display:none !important;}
#contents, #main{width:100% !important; max-width:297mm !important; font-size:14px;}
}
@media all and (-ms-high-contrast: none){
  .print_pages.page-break {page-break-before: auto;}
}