@charset 'UTF-8';
/* ===============================================
   common HTML5 MB767→PC768
=============================================== */
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDGothic:wght@400;700&display=swap');
/* !HTML5 elements
----------------------------------------------- */
article, aside, figcaption, figure, footer, header, menu, nav, section, small { 
display: block;
}

/* basic
----------------------------------------------- */
html,body,
div,dl,dt,dd,
form, label,
input, textarea,
table, tbody, tr,th,td,
dl, dt, dd, figure, figcaption {
margin: 0;
padding: 0;
vertical-align: baseline;
}

body {
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
font-family: 'YuGothic', 'Yu Gothic', "Meiryo", "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
background-color: #fff;
font-size: 15px;
-webkit-font-feature-settings: "palt";
font-feature-settings: "palt";
letter-spacing: 0.05em;
line-height: 1;
word-break: break-all;
}

@media all and (-ms-high-contrast: none) {/*IE*/
  h2, h3, h4, h5 {font-family: "メイリオ", Meiryo, sans-serif; } 
}

h1, h2, h3, h4 {
margin: 0 0 10px;
padding: 20px 0 0;
line-height: 1.5;
letter-spacing: 1px;
}

p {
margin: 0;
padding: 10px 0 0;
line-height: 1.6;
}

.fYakuhan {
font-family: "YakuHanJPs", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}

figcaption {
font-size: 15px;
font-weight: bold;
margin: 0;
padding: 10px 0 0;
text-align: center;
line-height: 1.5;
}

a {	color: #333;}
a, input { outline: none;}

a img {
border: none;
outline: 0;
text-decoration: none;
}

img { vertical-align: top;}

br { letter-spacing: 0;}

nav ul {
list-style: none;
margin: 0;
padding: 0;
font-size: 0;
}
nav ul li {
display: inline-block;
*display: inline;
*zoom: 1;
vertical-align: middle;
margin: 0;
padding: 0;
font-size: 15px;
}
nav ul li a { text-decoration: none;}

#pdtList nav ul li a:hover {
opacity: 0.5;
filter: alpha(opacity=50);
-ms-filter: "alpha(opacity=50)";
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
zoom: 1; 
}

div, table, th, td, ul, li {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

ul {
margin: 0;
padding: 5px 0 0 20px;
}

li {
line-height: 1.4;
margin: 5px 0;
padding: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
font-size: inherit;
font: 100%;
}

input, textarea, select {
font-family: inherit;
*font-size: 99%;
font-size: inherit;
font: 99% arial,helvetica,clean,sans-serif;
font-weight: inherit;
}

input[type="button"],
input[type="submit"] {
-webkit-appearance: none;
background: none;
border: none;
padding: 0;
cursor: pointer;
}

label { cursor: pointer;}

small { font-size: 11px;}

sup {
font-size: 10px;
}


div, table, th, td, ul, li, a, input, textarea, select {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}


@media screen and (max-width: 767px) {
  audio {
   width: 100%;
  }
}

@media screen and (min-width: 768px), print {
    body, html {
    min-width:980px;
    }

    a:hover { color: #00498E;}
  	a:hover img {
    opacity: 0.5;
    -ms-filter: "alpha(opacity=50)";
    -moz-opacity: 0.5;
    -khtml-opacity: 0.5;
    filter: alpha(opacity=50);
    zoom: 1;
    }

}

/*------------------------------------------------
   margin / padding
------------------------------------------------*/
.mB0 {margin-bottom: 0 !important;}
.mB10 {margin-bottom: 10px !important;}
.mB20 {margin-bottom: 20px !important;}
.mB40 {margin-bottom: 40px !important;}
.mR20 { margin-right: 20px !important;}
.mL20 { margin-left: 20px !important;}

.pT0 { padding-top: 0 !important;}
.pT10 { padding-top: 10px !important;}
.pT20 { padding-top: 20px !important;}
.pT30 { padding-top: 30px !important;}
.pT40 { padding-top: 40px !important;}
.pT50 { padding-top: 50px !important;}
.pT60 { padding-top: 60px !important;}

.pB0 { padding-bottom: 0 !important;}

.pc30mb10 { padding-top: 10px !important;}

@media screen and (max-width: 767px) {
  .imgMbFull {
  width: 100%;
  height: auto;
  }
}

@media screen and (min-width: 768px), print {
		
  .pc30mb10 { padding-top: 30px !important;}
		
}

/*------------------------------------------------
   float / clear
------------------------------------------------*/
.floatR { float: right;}
.floatL { float: left;}

.floatRImg { float: right; margin-left: 20px;}
.floatLImg { float: left; margin-right: 20px;}

.cleaR { clear: right;}
.cleaL { clear: left;}
.clear { clear: both;}


/*------------------------------------------------
  etc
------------------------------------------------*/

.taC { text-align: center !important;}
.taR { text-align: right !important;}
.taL { text-align: left !important;}

.boxC { margin-right: auto; margin-left: auto;}

.fRed { color: #C00 !important;}
.fNavy { color: #001040 !important;}
.fBlue { color: #044e87 !important;}

.f13 { font-size: 13px !important;}
.f14 { font-size: 14px !important;}
.f18 { font-size: 18px !important;}

.fNew { font-size: 12px !important; color: #c00; line-height: 1; display: inline-block;}
#gNavi .fNew { color: #ff0; text-indent: 0 !important;}

.fTag,
.fJpn { font-family: 'Noto Serif JP', serif; letter-spacing: 1px;}

.fRomeNum { 
  font-family: "メイリオ", Meiryo, sans-serif;
  font-size: 1em !important;} 

.fPR { font-size: 24px;}

.noBold { font-weight: normal !important;}

.pdtCharaPoint .fPR { font-size: 20px;}

.inlineBlk { display: inline-block;}

.imgNotes { padding-top: 10px; font-size: 12px;}

.indent { padding-left:1em; text-indent:-1em;}


table.thNowrap th {
white-space: nowrap;
}
table.thNowrapS th {
white-space: nowrap;
width: 20%;
}


/* マーカーアニメーション */
.markerAnime.active {
background-position: -100% .5em;
}
.markerAnime {
background-image: -webkit-linear-gradient(left, transparent 50%, rgb(255,255,179) 50%);
background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,255,179) 50%);
background-image: -ms-linear-gradient(left, transparent 50%, rgb(255,255,179) 50%);
background-image: -o-linear-gradient(left, transparent 50%, rgb(255,255,179) 50%);
background-image: linear-gradient(left, transparent 50%, rgb(255,255,179) 50%);
background-repeat: repeat-x;
background-size: 200% .8em;
background-position: 0 .5em;
transition: all 2s ease;
font-weight: bold;
}

.markerAnimeRed.active {
background-position: -100% 0.8em;
}
.markerAnimeRed {
background-image: -webkit-linear-gradient(left, transparent 50%, rgba(255,179,179) 50%);
background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,179,179) 50%);
background-image: -ms-linear-gradient(left, transparent 50%, rgb(255,179,179) 50%);
background-image: -o-linear-gradient(left, transparent 50%, rgb(255,179,179) 50%);
background-image: linear-gradient(left, transparent 50%, rgb(255,179,179) 50%);
background-repeat: repeat-x;
background-size: 200% 0.4em;
background-position: 0 0.8em;
transition: all 2s ease;
font-weight: bold;
}

@media screen and (max-width: 767px) {
  .pcOn {
  display: none !important;
  }
  .mbTaL {text-align: left;}
  
  .mbImgWF { max-width: 100%; height: auto;}
  
}

@media screen and (min-width: 768px), print {

  .fPR { font-size: 36px;}
  .pdtCharaPoint .fPR { font-size: 25px;}

  .mbOn {
    display: none !important;
  }
  
  .imgNotes { text-align: right;}
	
	.pcFlexSec {
		display: -webkit-flex;
    display: flex;
		flex-wrap: wrap;
	}
}



/*------------------------------------------------
   layout
------------------------------------------------*/
.conteBoxSp {
margin: 0 4%;
 }

article {
padding-bottom: 50px;
}

.secBox {
padding-top: 50px;
}

.secTit {
position: relative;
display: inline-block;
padding: 0 35px;
font-size: 22px;
}

.secTit:before, .secTit:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 20px;
height: 2px;
border-top: solid 1px #000;
border-bottom: solid 1px #000;
}
.secTit:before {left:0;}
.secTit:after {right: 0;}

.readBox h2 {
padding: 0;
}

/* pan */
#pan {
margin: 0 auto;
padding: 5px 0;
background: #e5edf3;
color: #044D86;
}
#pan ul {
margin: 0 4%;
list-style: none;
letter-spacing: -1em;
font-size: 1px;
padding: 0;
}

#pan ul li {
letter-spacing: normal;
font-size: 12px;
display: inline-block;
*display: inline;
*zoom: 1;
vertical-align: middle;
margin: 0;
padding: 10px 0 10px 5px;
}

#pan ul li:first-child {
padding-left: 0;
}

#pan ul li:not(:last-child):after {
font-family: "Font Awesome 5 Free";
content: "\f054";
font-weight: bold;
}

#pan li a {
display: inline-block;
margin: 0 5px 0 0;
padding: 0;
color: #044D86;
}

/*------------------------------------------------
   見出し titBox
------------------------------------------------*/
.titBoxBg,
.titBoxBgnone {
background: url("../img_common/maintit_bg.jpg") no-repeat;
margin-bottom: 0;
}

.titBox {
position: relative;
}

.titBox .fCh {
font-size: 18px;
line-height: 1.3;
margin-bottom: 10px;
padding: 10px 0 0;
}

.fTag {
width: 16.5rem;
height: auto;
padding: 8px 20px;
transform: rotate(-1.5deg);
overflow: hidden;
box-shadow: .25rem 0 .25rem hsla(0, 0%, 0%, .1);
background-image:
linear-gradient(90deg, hsla(0, 0%, 45%, .1) 2rem, hsla(0, 100%, 100%, 0) 2.5rem)
, linear-gradient(90deg, hsla(60, 100%, 85%, 1), hsla(60, 100%, 85%, 1));
font-size: 16px;
line-height: 1.3;
white-space: nowrap;
text-overflow: ellipsis;
}

.mainTit {
font-size: 30px;
color: #044e87;
line-height: 1.2;
padding: 20px 0;
margin-bottom: 0;
}

.mainTitS {
display: block;
font-size: 20px;
margin-bottom: 10px;
}

.mainTit span.subTit01 {
display: block;
font-size: 14px;
letter-spacing: 2px;
font-weight: normal;
margin: 0;
padding: 5px 0 0;
line-height: 1.4;
}

.mainTit span.subTit02 {
display: block;
padding-top: 15px;
font-size: 18px;
color: #000;
font-weight: bold;
letter-spacing: 0.2px;
line-height: 1.6;
}
.mainTit span.subTit03 {
display: block;
font-size: 18px;
color: #000;
font-weight: bold;
letter-spacing: 0.2px;
line-height: 1.8;
margin-top: 8px;
}
.mainTit span.subTit04 {
display: block;
font-size: 30px;
color: #000;
font-weight: bold;
letter-spacing: 0.2px;
line-height: 1.8;
}
.mainTitImg,
.mainTitImg > img {
width: 100%;
height: auto;
}

h2.conteTit {
font-size: 24px;
border-bottom: 1px solid #000;
padding-bottom: 10px;
margin-bottom: 20px;
}

h2.conteTit02 {
position: relative;
margin-bottom: 20px;
padding: 10px 20px;
font-size: 20px;
border: none;
background: #e5edf3;
}
h2.conteTit02::before {
content: "";
top: 0;
left: 0;
border-bottom: 1em solid transparent;
border-left: 1em solid #044e87; 
position: absolute;
z-index: 100;
}

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

    /*------------------------------------------------
    見出し titBox
    ------------------------------------------------*/
    .mainTit br:not(.mbOn) {
    display: none;
    }

    .titBoxBg,
    .titBoxBgnone{
    background: url("../img_common/maintit_bg_mb.jpg") no-repeat right top #e5edf3;
    background-size: 200% auto;
    }
}

@media screen and (min-width: 768px), print {
    .titBox .fCh {
    font-size: 24px;
    }
    .fTag {
    font-size: 18px;
    }

    .conteBox,
    .conteBoxSp {
    width: 880px;
    margin: 0 auto;
    }
		
		.conteBoxF {
    width: 960px;
		margin: 0 auto;
    }
    
    .secBox {
    padding-top: 70px;
    }
    
    .secTit {
    padding: 0 55px;
    font-size: 28px;
    }
    
    .secTit:before,
    .secTit:after {
    width: 45px;
    }
    
    /* pan */
    #pan {
    margin: 0 auto;
    }
		
		#pan ul {
    width: 960px;
    margin: 0 auto;		
		}
		
		/*------------------------------------------------
	   見出し titBox
		------------------------------------------------*/
		.titBoxBg,
		.titBoxBgnone {
		background-size: auto 256px;		
		padding-top: 28px;
		margin-bottom: 0;
		}

		.titBoxBg {
		background-position: top center;
		min-height: 310px;
		padding-bottom: 30px;
		}
	
		.titBoxBgnone {
		background: url(../img_common/maintit_bg_none.jpg) ;
		background-position: top center;
		min-height: 230px;/*256px*/
		margin-bottom: 40px;
    padding-bottom: 40px;
		}

		.mainTit {
		font-size: 50px;
		padding-top: 10px;
		}
		
		.mainTit span.subTit01 {
		font-size: 16px;
		}
		
		.mainTit span.subTit02 {
		font-size: 22px;
		}



		.mainTitImg,
		.mainTitImg > img {
		display: inline-block;
		width: 460px;
		height: auto;
		transform-origin: 100% 0;
		overflow: hidden;
		}
        
		.mainTitImg.trns01 {
		position: absolute;
		right: 0;
		top: -60px;
		background:none;
		overflow: hidden;
		transform: skewY(-4deg);
		}

    .titBoxBgnone .mainTitImg.trns01 {
    top: 70px;
    }
                
		.mainTitImg.trns02 {
		transform: skewY(8deg);
		}
		.mainTitImg > img {
		transform: skewY(-4deg);
		}
        
		h2.conteTit {
        font-size: 24px;
		}
		
		h2.conteTit02 {
		font-size: 24px;
		padding-left: 30px;
		}
	
		}

/* navList
------------------------------------------------*/
.navList {
letter-spacing: -1em;
font-size: 1px;
list-style: none;
margin: 0;
padding: 0;
}
.navList li {
letter-spacing: normal;
font-size: 15px;
display: inline-block;
vertical-align: top;
margin: 0 1%;
padding: 0;
}
.navList li a {
text-decoration: none;
}

/*------------------------------------------------
   header
------------------------------------------------*/

#headerIn {
padding-top: 20px;
}

#hdLogo {
display: block;
text-align: left;
}

#hdRight {
padding: 20px 0 0;
position: relative;
}


/* ----------------------------- 
   ドロップダウンメニュー
----------------------------- */
#dropmenu {
list-style-type: none;
width: auto;
padding: 0;
letter-spacing: normal;
}

#dropmenu li {
display:inline-block;
position: relative;
width: auto;
margin: 0;
padding: 0;
text-align: center;
}

#dropmenu li a {
display: block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
margin: 0;
padding: 10px 12px;
line-height: 1.4;
background: #fff;	
text-decoration: none;
color: #044D86;
font-size: 14px;
font-weight: bold;
letter-spacing: .4px;
}

#dropmenu > li > a {
white-space: nowrap;
}

#dropmenu > li {
border-right: 1px solid #e5edf3;
}

#dropmenu li ul {
list-style: none;
position: absolute;
z-index: 1005;
top: 100%;
left: 0;
width: 60vw;
margin: 0;
padding: 0;
}

@media screen and (min-width: 768px), print {
  #dropmenu li ul {
  width: 160%;
  }
}

#dropmenu li ul li {
overflow: hidden;
width: 100%;
height: 0;
color: #fff;
transition: .2s;
}
#dropmenu li ul li a {
padding: 13px 15px;
color: #fff;
background: rgba(0,33,59,0.90);
text-align: left;
font-size: 12px;
font-weight: normal;
letter-spacing: .2px;
}

#dropmenu li ul li.sub a {
background: rgba(0,0,0,0.90);
padding-left: 25px;
}

#dropmenu > li:hover > a {  background: #fff; color: #6A98BB;}
#dropmenu > li:hover li:hover > a {  background: #F27620;}

#dropmenu > li:hover > ul > li {
overflow: visible;
height: auto;
}

#dropmenu li ul li ul {
top: 0;
left: 100%;
}
#dropmenu li:last-child ul li ul {
left: -100%;
width: 100%;
}
#dropmenu li ul li ul:before {
position: absolute;
content: "";
top: 13px;
left: -20px;
width: 0;
height: 0;
border: 5px solid transparent;
}
#dropmenu li:last-child ul li ul:before {
position: absolute;
content: "";
top: 13px;
left: 200%;
margin-left: -20px;
border: 5px solid transparent;
}


.headTel,
#dropmenu li .headMail,
.headMenu {
display:inline-block;
vertical-align: middle;
margin: 0;
}

.headTel {
display: block;
width: 45%;
max-width: 240px;
height: auto;
position: absolute;
padding-top: 10px;
top: -40px;
right: 0;
}

.headTel img {
width: 100%;
height: auto;
}

#dropmenu li .headMail a {
width: 50px;
height: 28px;
padding: 12px 0 0 0;
background: #e5edf3;
}

.headMail img, 
.headMenu img {
width: 24px;
height: auto;
}
.headMenu img {
width: 20px;
}

/* ----------------------------- 
 フルスクリーンメニュー
----------------------------- */

.nav-toggle {
z-index: 1000;
display: inline-block;
vertical-align: bottom;
text-align: center;
}

.nav-toggle div {
background: #044e87;
width: 50px;
height: 40px;
padding: 12px 0 0;
}

.nav-toggle img {
height: 16px;
}

.nav-toggle.close div {
position: absolute;
top: 0;
right: 0;
background: none;
font-size: 36px;
color: #fff;
visibility: hidden;
opacity: 0;
}

#nav-wrap {
background: rgba(0,33,59,0.90);
color: #fff;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 990;
text-align: center;
visibility: hidden;
font-size: 29px;
opacity: 0;
transition: opacity .6s ease, visibility .6s ease;
padding: 0 4%;
}

.open #nav-wrap,
.open .nav-toggle.close div{
visibility: visible;
opacity: 1;
}

.open #nav-wrap .navWrapBox li {
text-align: left;
display: block;
opacity: 1;
width: 100%;
}

#nav-wrap .navWrapBox {
width: 100%;
padding: 30px 0;
position: relative;
}

#nav-wrap .navWrapBox > ul {
padding-top: 40px;
}

#nav-wrap a,
#nav-wrap span.none {
display: block;
color: #fff;
text-decoration: none;
padding: 10px 0;
white-space: nowrap;
font-size: 22px;
}

#nav-wrap ul.list02 {
padding-left: 10px;
}

#nav-wrap ul > li > a::before,
.navTop a::before,
#nav-wrap ul > li > a.extLink::after {
display: inline-block;
vertical-align: middle;
padding: 0 10px 3px 0;
font-family: "Font Awesome 5 Free";
content: "\f054";
font-weight: bold;
font-size: 12px;
}

#nav-wrap ul.list03 > li > a::before {
font-size: 16px;
padding-bottom: 4px;
}

#nav-wrap ul > li > a.extLink::after {
content: "\f2d2";
padding-left: 10px;
padding-right: 0;
}

.navTop a::before {
content: "\f0e2";
font-size: 16px;
padding-bottom: 4px;
}

#nav-wrap a:hover {
color: #666;
}

#nav-wrap .navWrapBox > ul {
list-style: none;
margin: 0 auto;
width: 100%;
display: flex;
-ms-display: flex;
flex-wrap:wrap;
text-align: left;
}

#nav-wrap ul > li {
opacity: 0;
}

#nav-wrap ul > li > ul {
padding: 0;
}

#nav-wrap ul > li > ul > li {
padding-left: 10px;
}
#nav-wrap ul > li > ul > li > a {
font-size: 16px;
text-indent: -10px;
margin-left: 10px;
}

.navTop {
text-align: left;
opacity: 0;
}

.open .navTop,
#nav-wrap li {
opacity: 1;
}


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

		#hdLogo img {
		width: 174px;
		height: auto;
		}
	
		.hdLogoBox {
		margin: 0 4%;
		}
		#dropmenu > li:nth-child(1) {
		width: 28%;
		border-top: 1px solid #e5edf3;
		border-bottom: 1px solid #e5edf3;
		}
		#dropmenu > li:nth-child(2) {
		width: 26%;
		border-top: 1px solid #e5edf3;
		border-bottom: 1px solid #e5edf3;
		}
		#dropmenu > li:nth-child(3) {
		width: 46%;
		border-top: 1px solid #e5edf3;
		border-bottom: 1px solid #e5edf3;
		}
		#dropmenu > li:nth-child(4) {
		width: 60%;
		height: 40px;
		border-bottom: 1px solid #000;	
		}
		
		#dropmenu > li:nth-child(5),
		#dropmenu > li:last-child {
		border-right: none;
		width: 20%;
		border-bottom: 1px solid #000;
		}
  
    /* wpdemo */
    #dropmenu.wpdemo > li:nth-child(4) {
		width: 40%;
		height: 40px;
		border-bottom: 1px solid #000;	
    }
    #dropmenu.wpdemo > li:nth-child(5) {
		width: 20%;
		height: 40px;
		border-bottom: 1px solid #000;	
    }
    #dropmenu.wpdemo > li:nth-child(6),
		#dropmenu.wpdemo > li:last-child {
		border-right: none;
		width: 20%;
		border-bottom: 1px solid #000;
		}
    /* end wpdemo */

		#dropmenu li:nth-child(3) ul {
		left: auto;
		right: -1px;
		}

		.nav-toggle div {
		height: 39px;
		}

		#dropmenu li .headMail,
		#dropmenu li .nav-toggle.mbOn {
		width: 100%;
		height: auto;
		text-align: center;
		padding: 0;
		}

		#dropmenu li .nav-toggle.mbOn div {
		width: 100%;
		margin: 0 auto;
		padding: 11px 0 0;
		background: #044e87;	
		}

		#dropmenu li .headMail a {
		margin: 0;
		width: 100%;
		padding: 10px 0 0;
		height: 39px;
		}
		
		#dropmenu li {
		width: auto;
		}

		#dropmenu li a {
		display: block;
		margin: 0;
		padding: 10px 0;
		}
		
		/* ----------------------------- 
	   フルスクリーンメニュー
		----------------------------- */
		.open #nav-wrap {
		overflow: scroll;
		}

		ul.list01 > li:not(:first-child) {
		padding-top: 20px;
		}
    
}

@media screen and (min-width: 768px), print {
    #hdBox {
    width: 960px;
    margin: 0 auto;
    }
    
    header h1 {
    padding: 5px 10px 40px;
    }
		
		article {
		padding-top: 40px;
		}

		#headerIn {
		padding-top: 40px;
		display: flex;
		-ms-display: flex;
		justify-content: space-between;
		align-items: center;
		}
			
		#gNavi nav {
		display: inline-block;
		}
		
		.headTel {
		display: block;
		width: 220px;
		height: auto;
		position: absolute;
		padding-top: 10px;
		top: -40px;
		right: 0;
		}
		
    /* wpdemo */
    #dropmenu  > li:nth-child(5) {
		padding-right: 10px;
		}
    /* end wpdemo */
  
		#dropmenu > li:last-child {
		border-right: none;
		}

		#dropmenu li .headMail a {
		width: 50px;
		height: 40px;
		padding: 10px 0 0 0;
		background: #e5edf3;
		}
		
		#dropmenu li ul li {
		width: 200px;
		}
		#dropmenu li .productmenu li {
		width: 280px;
		white-space: nowrap;
		}
  
		/* ----------------------------- 
	   フルスクリーンメニュー
		----------------------------- */
		.nav-toggle.close div {
		padding-top: 0;
		}

		.nav-toggle img {
		height: 16px;
		}

		.open #nav-wrap {
		display: flex;
		-ms-display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		}

		.open #nav-wrap .navWrapBox li {
		text-align: left;
		display: block;
		opacity: 1;
		width: 32%;
		}
		.open #nav-wrap .navWrapBox li:nth-child(2) {
		text-align: left;
		display: block;
		opacity: 1;
		width: 36%;
		}
		#nav-wrap .navWrapBox {
		display: flex;
		-ms-display: flex;
		justify-content: space-between;
		flex-direction: column;
		flex-wrap:wrap;
		width: 900px;
		}

		#nav-wrap .navWrapBox > ul {
		padding-top: 20px;
		}

		#nav-wrap ul > li > ul {
		padding: 0;
		}
		#nav-wrap ul > li > ul > li > a {
		font-size: 14px;
		}

}


/*------------------------------------------------
   pageTop
------------------------------------------------*/

#pageTop {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 100;
}
#pageTop a {
text-decoration: none;
width: auto;
padding: 0;
text-align: center;
display: block;
}
#pageTop a img {
width: 70px;
height: auto;
}

@media print, screen and (min-width: 768px), print {
  #pageTop {
  right: 20px;
  }
  #pageTop a img {
  width: 70px;
  }
}


/*------------------------------------------------
   footer
------------------------------------------------*/
footer {
text-align: center;
margin: 0;
padding: 0 0 30px;
}

#ftInfo {
padding: 20px 20px 40px;
}

.ftInfoTxtBox {
text-align: center;
font-size: 14px;
}

.ftTel {
padding-top: 5px;
line-height: 1.8;
}

.ftTel .tel {
 font-size: 18px;
 font-weight: bold;
}

.ftInfoImg img {
width: 150px;
height: auto;
}

.ftInfoTit {
font-size: 18px;
line-height: 1.3;
}

.ftInfoTit span {
display: block;
font-size: 11px;
}

.ftInfoBtn {
padding-top: 20px;
letter-spacing: .5px;
}

.ftInfoBtn a {
display: inline-block;
padding: 12px 20px;
background: #044e87;
font-size: 15px;
color: #fff;
text-decoration: none;
}
.ftInfoBtn a::after {
display: inline-block;
padding-left: 10px;
font-family: "Font Awesome 5 Free";
content: "\f2d2";
font-weight: light;
}


@media screen and (min-width: 768px), print {

		#ftInfo {
		display: flex;
		-ms-display: flex;
		align-items: center;
		}

		.ftInfoImg img {
		width: 200px;
		height: auto;
		}

		.ftInfoTit {
		padding-top: 0;
		}

		.ftInfoTxtBox {
		text-align: left;
		padding-left: 40px;
		}
		
		.ftInfoBtn {
		padding-top: 15px;
		}

		.ftInfoBtn a {
		padding: 10px 20px;
		font-size: 13px;
		}

		.nav-toggle:hover,
		.pdtListBtn a:hover,
		.ftInfoBtn a:hover {
		opacity: 0.5;
		filter: alpha(opacity=50);
		-ms-filter: "alpha(opacity=50)";
		-moz-opacity: 0.5;
		-khtml-opacity: 0.5;
		zoom: 1; 
		cursor: pointer;
		}

}

/*------------------------------------------------
   グラフ部分
------------------------------------------------*/
.grpBox {
	padding: 20px 0 0;
}
.grpImg {
	display: table;
	padding: 20px 20px;
	overflow: hidden;
	border: #044e87 1px dotted;
}
.grpImg img {
	width: 100%;
	height: auto;
}
.grpTit {
	font-size: 18px;
	line-height: 1.6;
	color: #044e87;
	text-align: left;
	font-weight: bold;	
	margin: 0 0 20px;
  padding: 0 0 5px;
	border-bottom: 1px solid #044e87;
}
.grpImg .tdRU {
	text-align: right;
	top: 0;
	right: 0;
}

.grpOp {
width: 100%;
clear: both;
text-align: center;
margin: 0 0 10px;
padding: 10px 0 0;
}
.grpOp table {
margin: 0 auto 10px;
padding: 0;
}

.grpOp th, .grpOp td {
text-align: left;
padding: 5px 10px;
vertical-align: top;
font-size: 14px;
letter-spacing: 1px;
line-height: 1.4;
background-color: #EFEFEF;
border-bottom: 2px solid #fff;
}
.grpOp th {
white-space: nowrap;
padding-right: 0;
}
img.imgPamph {
    max-width: 190px;
    margin: 10px auto 0;
}

@media screen and (max-width: 767px) {
  .grpImg .tdL img,
  .grpImg .tdR img,
  .grpImg .tdC img {
  padding-bottom: 20px;
  }
  .grpImg .tdR .linkBtn01 {
  padding: 0;
  }
}

@media screen and (min-width: 768px), print {
		.grpImg {
		width: 100%;
		margin: 0 auto;
		padding: 20px 0;		
		}
		.grpImg img.imgHF {
    width: 385px;
    height: auto;
    }
		.grpTit {
		margin: 0 20px 20px;
		}
		
		.tableBox {
		display: table;
		width: 845px;
		margin: 0 auto;
		}
				
		.tableBox.half {
		width: 840px; 
		}
		.grpImg .tdL,
		.grpImg .tdR,
		.grpImg .tdC {
		display: table-cell;		
		}
		.grpImg .tdL {
		text-align: right;
		}
		.grpImg .tdL img {
		width: 385px;
		height: auto;
		margin-right: 20px;
		}		
		.grpImg .tdR {
		text-align: right;
		vertical-align: middle;
		}
		.grpImg .tdR img {
		width: 440px;
		height: auto;
		}	
		.grpImg .tdC {
		text-align: center;
		vertical-align: middle;
		}
		.grpImg .tdC img {
		max-width: 440px;
		height: auto;
		}
		.grpImg .tdL img.half,
		.grpImg .tdR img.half,
		.grpImg .tdC img.half {
		width: 420px;
		height: auto;
		-webkit-backface-visibility: hidden;
		}
		.grpImg .tdRU {
		padding-right: 15px;
			
		}
		.grpImg.w410 .tdL {
		text-align: left;
		}
		
		.grpImg.w410 .tdL img,
		.grpImg.w410 .tdR img {
		width: 410px;
		height: auto;
		-webkit-backface-visibility: hidden;
		margin: 0;
		}
		
		.grpImg .tdR img.noW {
		width: auto;
		height: auto;
		}

        .grpOp {
        width: auto;
        margin: 0 0 10px 20px;
        padding: 20px 0 0;
        }
				
	.grpImg img.w385 {
	width: 385px;
	}
	img.imgPamph {
	max-width: 380px;
	}
}
		
/*------------------------------------------------
   mp3ファイル再生部分
------------------------------------------------*/
.audioBox {
	margin-top: 30px;
	padding: 20px 20px 30px;
	border: #044e87 1px dotted;
	text-align: left;
}

.audioBox .audioTit {
border: none;
border-bottom: 1px solid #044e87;
color: #044e87;
margin-bottom: 10px;
padding: 0 0 5px;
font-size: 18px;
font-weight: bold;
text-align: left;
}

.audioBox .audioTitSub {
margin: 0;
padding: 10px 0 0;
font-size: 16px;
}

.audioList dl {
padding-top: 15px;
}

.audioList dt {
display: inline-block;
vertical-align: text-top;
padding-bottom: 10px;
font-weight: bold;
color: #044e87;
}

.audioList dt::before {
display: inline-block;
vertical-align: bottom;
font-family: "Font Awesome 5 Free";
content: "\f028";
font-size: 24px;
font-weight: bold;
margin: 0 10px 0 0;
}

.audioList dd p {
padding-top: 5px;
}


.audioList dt .fOp {
display: block;
background-color: #d7ebfe;
margin: 3px 0 0;
padding: 5px 10px;
font-weight: normal;
font-size: 13px;
text-align: center;
}

.audioList dt.colRed {
color: #f00;
}
.audioList dt.colRed .fOp {
background-color: #ffdcdc;
}


		@media screen and (min-width: 768px), print {

		.audioBox {
		text-align: left;
		}
		
		.audioList dl {
		padding-top: 20px;
		}

		.audioList dl {
		display: -webkit-flex;
		display: flex;
		align-items: center;
		-webkit-align-items: center;
		padding-top: 20px;
		}

		.audioList dt {
		width: 200px;
		margin-right: 10px;
		}
		
		#wall .grpOp .audioList dt {
		width: 130px;
		text-align: left;		
		}
		
		.grpOp .audioList audio {
		width: 240px;
		}
		
		}


/* 関連製品、サービス案内
----------------------------------------------- */

#relaBox {
clear: right;
}

#relaBox .relaBg {
padding: 20px 20px 24px;
background: #fff;
border: 4px solid #D3DEE9;
overflow: hidden;
}

#relaBox h2.conteTit {
font-size: 20px;
margin-bottom: 10px;
padding-top: 0;
padding-left: 0;
color: #044e87;
}

#relaBox ul {
padding: 10px 0 0;
list-style: none;
}

#relaBox ul li {
margin: 0;
padding: 0;
}

#relaBox ul li:not(:first-child) {
padding-top: 10px;
}

#relaBox ul li a {
position: relative;
display: inline-block;
vertical-align: top;
padding: 5px 0 0 20px;
text-decoration: none;
line-height: 1.4;
letter-spacing: 1px;
}

#relaBox ul li a::before {
position: absolute;
left: 0;
display: inline-block;
padding: 0 5px 3px;
font-family: "Font Awesome 5 Free";
content: "\f054";
font-weight: bold;
font-size: 15px;
color: #044e87;
}

#relaBox ul li a.pdf::before {
content: none;
}

#relaBox ul li a.pdf {
content: "";
background: url(../img_common/pdf_icon.png) no-repeat left 2px;  
background-size: 20px auto;
padding-left: 25px;
}

#relaBox ul li a .txtCap {
display: block;
font-size: 13px;
}


		@media screen and (max-width: 767px) {
				#relaBox.secBox {
				padding-top: 20px;
				}
		}

		@media screen and (min-width: 768px), print {
				#relaBox .relaBg {
				padding: 20px 30px 24px;
				}
		}


/* PDFダウンロード
----------------------------------------------- */

#relaBox .pdfBg {
margin-bottom: 20px;
padding: 20px 20px 24px;
background-color: #FAFCDF;
border: 4px solid #F27620;
overflow: hidden;

}

#relaBox .pdfBg h2.conteTit {
font-size: 20px;
margin-bottom: 10px;
padding-top: 0;
padding-left: 0;
color: #F27620;
border-bottom: 1px solid #F27620;
}
#relaBox .pdfBg h2.conteTit::after {
font-family: "Font Awesome 5 Free";
content: "\f019";
margin-left: 5px;
}

#relaBox ul li a.pdf {
content: "";
background: url(../img_common/pdf_icon.png) no-repeat left 2px;  
background-size: 20px auto;
padding-left: 25px;
}


#relaBox .pdfBg ul li a.pdf {
display: block;
background: none;
padding: 0;
text-align: center;
}

#relaBox .pdfBg ul li a.pdf img {
vertical-align: middle;
border: none;
margin: 0 auto 10px;
}
#relaBox .pdfBg ul li a.pdf .txt {
display: block;
background: url(../img_common/pdf_icon.png) no-repeat 98% center #fff;
background-size: 20px auto;
padding: 10px 40px 10px 10px;
text-align: left;
}
#relaBox .pdfBg ul li a.pdf:hover img {
opacity: 0.5;
}
#relaBox .pdfBg ul li a.pdf:hover .txt {
background-color: rgba(255,255,255,0.5);
}


@media screen and (min-width: 768px), print {
  #relaBox .pdfBg {
  margin-bottom: 20px;
  padding: 20px 30px 24px;
  }
  #relaBox .pdfBg ul li a.pdf {
  text-align: left;
  display: flex;
  align-items: center;
  }

  #relaBox .pdfBg ul li a.pdf img {
  vertical-align: middle;
  border: none;
  margin: 0 10px 0 0;
  }
  #relaBox .pdfBg ul li a.pdf .txt {
  display: inline-block;
  }

}

/* CADデータ */
#dlCAD {
background-color: #e5edf3;
margin: 20px -30px -24px;
padding: 0 30px 24px;
}
#dlCAD li:nth-child(n+2) {
padding-top: 20px;
}
#dlCAD .tit {
color: #044e87;
font-size: 20px;
margin-bottom: 0 0 14px;
padding: 24px 0 10px;
border-bottom: 1px solid #ccc;
}
#dlCAD h3::after {
font-family: "Font Awesome 5 Free";
content: "\f019";
margin-left: 5px;
}

#dlCAD ul {
padding: 20px 0 0;
}
#dlCAD ul li {
display: block;
}

#dlCAD ul li a {
position: relative;
display: block;
background-color: #fff;
padding: 0;
}
#dlCAD ul li a .txt {
display: block;
padding: 10px 10px 10px 50px;
}
#dlCAD ul li a::before {
position: absolute;
top: -10px;
left: -5px;
content: "";
display: inline-block;
width: 45px;
height: 50px;
background: url("../img_common/dl_cadimg.png") no-repeat;
background-size: contain;
margin-right: 5px;
}
#dlCAD ul li a .txt::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 32px;
height: 100%;
background: repeating-linear-gradient(135deg, rgba(4,78,135,0.3), rgba(4,78,135,0.3) 4px, transparent 0, transparent 8px);
}

/**/
#dlCAD.dlCADBox {
width: 92%;
max-width: 880px;
margin: 0 auto 20px;
padding: 0 20px 24px !important;
border: 4px solid #044e87;
overflow: hidden;
box-sizing: border-box;
}

@media screen and (min-width: 768px), print {
  #dlCAD ul {
  display: flex;
  justify-content: center;
  padding-top: 10px;
  }
  #dlCAD li {
  width: 48%;
  padding-top: 10px !important;
  }
  #dlCAD li:nth-child(even) {
  margin-left: 4%;
  }
  
  #dlCAD ul li a:hover {
  opacity: 0.6;
  }
  
}


/* お問合せ
----------------------------------------------- */
.contactBox,
.secContactBox {
margin: 0;
text-align: center;
}

.contactBox .conteBox,
.secContactBox .conteBox {
background: #e5edf3;
padding: 30px 20px 35px;
}

.contactBox h2.conteTit,
.secContactBox .conteTit {
text-align: left;
color: #044e87;
font-size: 20px;
padding-top: 0;
margin-bottom: 10px;
border-bottom: none;
}

.contactEg {
border: 5px solid #fff;
margin: 0 0 20px;
padding: 15px 15px 10px;
text-align: left;
}

.contactEg dt span {
display: inline-block;
color: #fff;
background-color: #333;
padding: 5px 10px;
}

.conTelBox .conTel {
width: 100%;
height: auto;
padding: 10px 0 0;
color: #fff;
font-weight: bold;
font-size: 24px;
background: #044e87;
}

.conTel .telNum {
display: inline-block;
vertical-align: text-bottom;
letter-spacing: .5px;
}

.conTelBox .conTel img {
margin-right: 10px;
width: 24px;
vertical-align: top;
}
.conTel a.mbOn {
display: block;
text-decoration: none;
color: #fff;
padding: 0 0 10px;
}

.conMailBox a {
display: block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
height: 70px;
padding: 10px 0 0;
color: #044e87;
font-weight: bold;
font-size: 20px;
border: 1px solid #044e87;
background: #fff;
text-decoration: none;
}

.conTelBox .conTel span.f13,
.conMailBox a span.f13 {
display: block;
font-size: 13px;
padding: 0 0 10px 0;
padding-bottom: 10px;
font-weight: normal;
}

.conTelBox .conTel span.f13 {
padding-bottom: 5px;
}

.conMailBox a img {
width: 32px;
}

.conMailBox span {
padding-left: 10px;
}

.conTel a:hover,
.conMailBox a:hover {
opacity: 0.5;
filter: alpha(opacity=50);
-ms-filter: "alpha(opacity=50)";
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
zoom: 1; 
cursor: pointer;
}

.conList a:hover img {
opacity: 1;
}


.contactBoxTxt {
margin: 0 0 20px;
padding: 0;
text-align: center;
}
.contactBoxTxt p {
display: inline-block;
margin: 0 auto;
text-align: left;
}

@media screen and (max-width: 767px) {
		.contactBox.secBox,
    .secContactBox.secBox,
		.conMailBox {
		padding-top: 20px;
		}
}
		
@media screen and (min-width: 768px), print {
		.contactBox h2.conteTit,
    .secContactBox .conteTit {
		font-size: 24px;	
		text-align: center;
		}
		
    .contactEg {
    display: flex;
    border-width: 3px;
    padding: 15px 20px 20px;
    }
    .contactEg dt,
    .contactEg dd {
    vertical-align: top;
    }
    .contactEg dt {
    padding: 10px 20px 0 0;
    }
    
		.conList {
		display: flex;
		-ms-display: flex;
		justify-content: space-around;
		align-items: center;
		}

		.conTelBox,
		.conMailBox {
		width: 420px;
		}
		
		.conTelBox .conTel {
		width: 100%;
		height: 70px;
		}
}
		

/* 画像2枚横並び（※スマホでは1枚フル）
------------------------------------------------*/
.pdtImgBoxCol2 .pdtImg img {
width: 100%;
height: auto;
}

@media screen and (min-width: 768px), print {
		
		.pdtImgBoxCol2 {
		display: -webkit-flex;
		display: flex;
		justify-content: space-between;
		align-items: center;

		}
		.pdtImgBoxCol2 .pdtImg {
		width: 420px;
		height: auto;
		}
		.pdtImgBoxCol2 .pdtImg img {
		-webkit-backface-visibility: hidden;
		}
		
		#wallfloor .pdtImgBoxCol2 .pdtImg img.img01 {
		width: 420px;
		height: 430px;
		}
	  #wallfloor .pdtImgBoxCol2 .pdtImg img.img02 {
		width: 420px;
		height: 344px;
		}
		
}

/* 動画埋め込み用
----------------------------------------------- */
.pdtVideo {
margin: 0;
padding: 10px 0 0;
list-style: none;
clear: right;
}

.pdtVideoList {
margin: 0;
padding: 20px 0 0;
list-style: none;
}

.pdtVideoBox {
padding: 0 0 20px;
background: #e5edf3;
}

.pdtVideoTitBalloon {
position: relative;
padding: 10px 15px;
font-size: 15px;
line-height: 1.4;
font-weight: normal;
background-color: #512DA7;
color: #fff;
}
.pdtVideoTitBalloon::before{
content: '';
position: absolute;
display: block;
width: 0;
height: 0;
left: 0;
right: 0;
bottom: -15px;
margin: 0 auto;
border-top: 15px solid #512DA7;
border-right: 15px solid transparent;
border-left: 15px solid transparent;
}

.pdtVideoTit {
padding: 10px 20px 0;
color: #044e87;
font-weight: bold;
}

.pdtVideoBox .pdtVideoTit .qrImg {
width: 185px;
margin: 0 auto;
}

.pdtVideoBox .pdtVideoTit .qrImg img {
width: 100%;
height: auto;
}

.pdtVideoBox .pdtVideoTit p {
padding-top: 0;
}

.pdtVideoBox iframe {
width: 100%;
height: 240px;
}

@media screen and (max-width: 767px) {
		
		.pdtVideoTit .qrImg {
		padding-top: 10px;
		}
		
		.pdtVideoList li:not(:last-child) {
		margin-bottom: 25px;
		}

}

@media screen and (min-width: 768px), print {

		.pdtVideoList {
		display: flex;
		-ms-display: flex;
		justify-content: space-between;
		}
        
    .pdtVideoList li {
		width: 48%;
		}
		
    .pdtVideoTitBalloon {
    text-align: center;
    }
		
		.pdtVideoBox {
		width: 460px;
		}
		
		.pdtVideoBox iframe {
		width: 100%;
		height: 300px;
		}
		
		.pdtVideoBox .pdtVideoTit {
		-webkit-display: flex;
		display: flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
		}
		
		.pdtVideoBox .pdtVideoTit p {
		width: 78%;
		}
		
		.pdtVideoBox .pdtVideoTit .qrImg {
		width: 74px;
		margin: 0;
		}
		
}

/* FAQ
----------------------------------------------- */
.faqBox {
	border: 1px solid #CCC;
  letter-spacing: 1px;
  margin: 0 0 15px;
}
.faqBox dt {
	font-weight: bold;
	color: #111;
	background: #F4F4F4;
	padding: 12px 10px 8px;
	border-bottom: 1px solid #CCC;
}
.faqBox dt:before {
	content: "Q.";
  color: #044e87;
	font-weight: bold;
	margin-right: 10px;
}
.faqBox dd {
	padding: 16px 10px 14px 0;
	margin: 0;
	line-height: 1.4;
  margin-left: 38px;
}
.faqBox dd:before {
	content: "A.";
    color: #bf0000;
	font-weight: bold;
	margin-right: 10px;
	margin-left: -28px;
}
		
/* リンクボタン
----------------------------------------------- */
.linkBtn01 {
display: inline-block;
float: right;
clear: right;
padding: 10px 0 0;
}

.linkBtn01 a {
position: relative;
display: block;
padding: 10px 40px 10px 20px;
font-size: 13px;
text-decoration: none;;
background: #044e87;
color: #fff;
line-height: 1.4;
}

.linkBtn01 a::after,
.linkBtn01 a.ext::after,
.linkBtn02 a::after,
.linkBtn02 a.extLink::after,
.linkBtn03 a.dataLink::before {
position: absolute;
top: 28%;
right: 20px;
bottom: 0;
margin: auto;
font-family: "Font Awesome 5 Free";
content: "\f054";
font-weight: bold;
font-size: 12px;
line-height: 1.4;
}

.linkBtn01 a span.extUrl {
font-size: 11px;
}

.linkBtn01 a.extLink::after,
.linkBtn02 a.extLink::after {
content: "\f2d2";
}

.linkBtn02 a.extLink::after {
font-size: 20px;
}

.linkBtn03 a.dataLink::before {
content: "\f080";
font-size: 28px;
top: 16%;
left: 20px;
bottom: 20px;
}

.linkBtn01 a:hover,
.linkBtn02 a:hover {
opacity: 0.5;
filter: alpha(opacity=50);
-ms-filter: "alpha(opacity=50)";
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
zoom: 1; 
cursor: pointer;
}

.linkBtn02,
.linkBtn03 {
text-align: center;
}

.linkBtn02 a,
.linkBtn03 a {
position: relative;
display: inline-block;
margin: 0 auto;
text-align: left;
padding: 15px 60px 10px 20px;
font-size: 13px;
text-decoration: none;
background: #e5edf3;
border: 2px solid #044e87;
color: #044e87;
line-height: 1.4;
}

.linkBtn03 a { 
font-size: 18px;
font-weight: bold;
padding: 12px 20px 10px 60px;
border: 2px solid #044e87;
}

.linkBtn02 a span.extUrl {
color: #000;
font-size: 13px;
}

.linkBtn02 a b {
font-size: 16px;
}

		@media screen and (max-width: 767px) {
		
		.linkBtn01.last {
		padding-top: 10px;
		}

		}

		@media screen and (min-width: 768px), print {

		.linkBtn01.last {
		padding-top: 30px;
		}

		}


/* お客様の声
----------------------------------------------- */

.voiceTit {
position: absolute;
top: -10px;
display: inline-block;
padding: 4px 20px;
font-size: 24px;
color: #fff;
background: #044e87;
}

.voiceTxtBox ul {
list-style: none;
padding: 10px 0 0;
}

.voiceTxtBox li {
margin: 0;
font-size: 16px;
}

.balloonBox .balloonTxtBox::before {
float: left;
display: inline-block;
vertical-align: bottom;
font-family: "Font Awesome 5 Free";
content: "\f007";
font-size: 36px;
color: #044e87;
font-weight: bold;
margin: 5px 0 0;
}

.voiceTxtBox li:not(:first-child) {
padding-top: 20px;
}

.balloonBox {
display: inline-block;
width: 100%;
margin: 0;
overflow: hidden;
}

.balloonBox .balloonTxtBox {
width: 100%;
}

.balloonTxt {
position: relative; 
margin: 0 0 0 50px;
padding: 12px 18px;
background: #d7ebfe;
}

.balloonTxt:after {
content: "";
display: inline-block;
position: absolute;
top: 13px; 
left: -24px;
border: 12px solid transparent;
border-right: 12px solid #d7ebfe;
}

.balloonTxt p {
margin: 0;
padding: 0;
}

span.marker {
background: linear-gradient(transparent 60%, #ff6 60%);
}

/* bantectGraph */
	@media screen and (min-width: 768px), print {
	#bantectGraph .grpImg .tdL {
	text-align: left;
	width: 480px;
	}
	#bantectGraph .grpImg .tdL img {
	width: 440px;
	height: auto;
	margin: 0;
	}

	#bantectGraph .linkBtn01 {
	padding: 30px 0 0;
	}
}

/*20210806追記*/
#top .swiper-wrapper a img:hover {
opacity: 1;
}


/* #shaonSupport
----------------------------------------------- */

#shaonSupport h2.conteTit02 {
background-color: #fff;
border: 1px solid #044e87;
}
#shaonSupport h2.conteTit02::before {
border-left: 1em solid #044e87; 
}

#shaonSupport .pdtImg {
margin-bottom: 10px;
}

#shaonSupport .pdfBg {
margin-bottom: 0;
}

#shaonSupport > p:nth-of-type(1) {
padding-top: 0;
}


/* 開閉 続きを読む
----------------------------------------------- */
.acdWrap {
position: relative;
}
.acdWrap .acdBox {
height: 360px;
overflow: hidden;
}
.acdWrap .showMore {
position: absolute;
bottom: 0px;
left: 0px;
width: 100%;
height: 4em;
padding-top: 80px;
text-align: center;
line-height: 2em;
background: linear-gradient(180deg, transparent 0%, #fff 70%);
cursor: pointer;
transition: bottom 0.2s;
}
.acdWrap .showMore.active {
background: none;
}
.acdWrap .moreBtn {
display: inline-block;
background-color: #044e87;
color: #fff;
width: 260px;
padding: 0.5em 2em;
font-size: 16px;
letter-spacing: 0.1em;
box-sizing: border-box;
}
/*調整*/
@media screen and (max-width: 359px) {
	.menuBlock {
		display:block;
		margin-left: 20px;
	}
}

