@charset "utf-8";
/* CSS Document */
/* ////////////////////////////////////////////////////////

	Style Reset

//////////////////////////////////////////////////////// */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size:100%;
}
/* form */  
button, fieldset, form, <span class="hilite">input</span>, label, legend, select, textarea {  
font-size:100%;  
}
/* ////////////////////////////////////////////////////////

TOP

//////////////////////////////////////////////////////// */  
body#toppage{
	font-size:0.9em;
}
/* ////////////////////////////////////////////////////////

Contents

//////////////////////////////////////////////////////// */
body{
	font-size:0.9em;
}
#TopConRight li{
	font-size: 0.9em;
}
#footerinner{
	font-size: 0.9em;
}
#footerinner p{
	font-size:1em;
}
#copyright{
	font-size:0.9em;
}
/* ////////////////////////////////////////////////////////

Contents01

//////////////////////////////////////////////////////// */
#pannavi{
	font-size:0.8em;
}
#ConLeft{
	font-size: 1em;
}
#ConRightMenu{
	font-size: 1em;
}

.ConRightMenu02{
	font-size: 1em;
}
#ConRightMenu ul li ul li{
	font-size:1em;
}
/* table */
table {
	border-style: none;
	width: 80%;
	margin: 20px 20% 20px 20%;
	border-collapse:collapse;
	border-spacing:0;
}
table th {                          
	padding: 5px;
	white-space: nowrap;
}

table td {
	padding: 5px;
}
table.mailform{
	font-size:1.2em;
	}
table.newsList{
	font-size:0.9em;
	}
h1.title{
padding:20px;
font-size:1.4em;
}
p.cap{
	font-size:0.9em;
}
/* ////////////////////////////////////////////////////////

	

//////////////////////////////////////////////////////// */
.table01{
	font-size:0.9em;
}

/* ////////////////////////////////////////////////////////

	{^

//////////////////////////////////////////////////////// */

#fontsize{
	display:block;
	float:right;
	text-align: left;
	height: 24px;
	width: 170px;
}
#fontL a{
	display:block;
	text-indent:-9999px;
	float:left;
	background:url(../images/textlOff.gif) no-repeat;
	width:30px;
	height:24px;
	margin-left:10px;
		}
#fontM a{
	display:block;
	text-indent:-9999px;
	float:left;
	background:url(../images/textmOn.gif) no-repeat;
	width:30px;
	height:24px;
	margin-left:3px;
	}
#fontS a{	
	display:block;
	text-indent:-9999px;
	float:left;
	background:url(../images/textsOff.gif) no-repeat;
	width:30px;
	height:24px;
	margin-left:3px;
	}
@charset "utf-8";
/* =========== IEp?CSS =========== */

@media print{

body {
_zoom: 66%; /*WinIE only */
}
}
/* ////////////////////////////////////////////////////////

	Style Reset

//////////////////////////////////////////////////////// */

html {
	overflow-y: scroll;
}

body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
th,
td,
pre,
blockquote,
fieldset,
form,
input,
textarea {
	padding:0;
	margin: 0;
}



em,
th,
var,
dfn,
cite,
code,
strong,
address,
caption {
	font-style:normal;
}


th,
caption {
	text-align:left;
}

img,
abbr,
acronym,
fieldset {
	border:none;
}

li {
	list-style-type:none;
	margin-bottom: 10px;
}

ul.list01 li{
	line-height:1.5em;
	margin-bottom:0;
	background-image:url(../images/IconGray03.gif);
	background-position: 4px 5px;
	background-repeat:no-repeat;
	text-indent:18px;
}
hr,
legend {
	display:none;
}
/* form */  
button, fieldset, form, <span class="hilite">input</span>, label, legend, select, textarea {  
font-family:inherit;  
font-style:inherit;  
font-weight:inherit;  
margin:0;  
padding:0;  
vertical-align:baseline;  
}  
/* ////////////////////////////////////////////////////////

TOP

//////////////////////////////////////////////////////// */
body#toppage{
	background:url(../images/bgTopHead.jpg) repeat-x top ;
	font-family:"qMmpS Pro W3", "Hiragino Kaku Gothic Pro", "CI", Meiryo, Osaka, sans-serif;
}
/* ////////////////////////////////////////////////////////

Contents

//////////////////////////////////////////////////////// */
body{
	background:url(../images/bgTopHead02.jpg) repeat-x top ;
	font-family:"qMmpS Pro W3", "Hiragino Kaku Gothic Pro", "CI", Meiryo, Osaka, sans-serif;
	text-align:center;
}
#wrap{
	display:block;
	margin:0 auto;
	width:970px;
	height:auto;
	text-align:left;
	padding-top: 100px;
}
#header{
	display:block;
	width:970px;
	height:128px;
}
#logo{
	display:block;
	width:408px;
	height:60px;
	float:left;
	margin-top: 20px;
	vertical-align: middle;
}
#footer{
	background:url(../images/footerbg.gif) repeat-x top;
	clear:both;
	padding-top: 10px;

}
#footerinner{
	display:block;
	width:970px;
	margin:0 auto;
	height: 100px;
	text-align: left;
}
#footerinner p{
	display:block;
	margin-left:10px;
	width: 300px;
	height: 1.8em;
	line-height: 1.8em;
}
#footerinner p a{
	color:#333;
}
#footerlogo{
	display:block;
	margin-top:20px;
	float:right;
}
#copyright{
	width:970px;
	clear:both;
	text-align:right;
	line-height:2em;
	color:#333;
}

a{
	color:#FF6600;
	text-decoration:none;
	  vertical-align: baseline;
}

a:hover{
	text-decoration:underline;
}
input {
  vertical-align: middle;
  padding:6px;
  letter-spacing:0px;
}

.clearfix {zoom:1;} 
.clearfix:after{ content: ""; display: block; clear: both;}


/* ////////////////////////////////////////////////////////

Contents01

//////////////////////////////////////////////////////// */
#printBt{
	vertical-align:middle;
	float: left;
	width: 140px;
}
#printBt img{
	margin-top: 14px;

}
#pannavi{
	display:block;
	width:820px;
	height:36px;
	text-align:right;
	line-height:36px;
	float:right;
}
#Contents{
	display:block;
	width:968px;
	height:auto;
}
h1#C01{
	width:640px;
	text-indent:-9999px;
	height: 0px;
	margin-top:20px;
	
	}
#gototop{
	display:block;
	width:680px;
	text-align:right;
	margin-top: 60px;
	clear: both;
	height: 26px;
}
#gototop02{
	display:block;
	width:970px;
	text-align:right;
	margin-top: 60px;
	clear: both;
	height: 26px;
}
/* table */
table{
	border: 1px solid #999;
	background-color: #fff;
	margin-left: 10px;
	margin-right: 10px;
	_font-size:1em;
	}
table.mailform{
	border: 0px solid #999;
	text-align:right;
	}
th,td{
	border: 1px solid #CCC;
	padding: 0.4em 0 0.4em 0;
  }
table.com{
	border: 1px solid #CCC;
	margin-left:0px;
	line-height:2em;
	margin-bottom: 30px;
	margin-top: 10px;
	background: #fff;
	}
th.com{
	margin-left:20px;
	vertical-align:top;
	border-width: 0;
	text-align: left;
	}
td.com{
	text-align: left;
	border-right-width: 0px;
	border-left-width: 0px;
	border-top-width: 0px;
	}
table.nom{
	border: 0px solid #999;
	margin-left: 0px;
	}
table.nom td{
	border: 0px solid #999;
	padding: 0;
	line-height: 1.6em;
	margin: 0;
	}
table.nom02{
	border: 0px solid #999;
	font-size:0.9em;
	}
table.nom02 td{
	border: 0px solid #999;
	line-height: 2em;
	}
table.nom03{
	border: 0px solid #999;
	font-size:1em;
	line-height:1.6em;
	}
table.nom03 td{
	border: 0px solid #999;
	line-height:1.6em;
	}
td.m40{
	padding-left:40px;
	vertical-align: middle;
}
table.newsList{
	border:0px solid #CCC;
	margin-left:0px;
	line-height:1.6em;
	margin-bottom: 6px;
	margin-top: 6px;
	background: #fff;
	}
table.newsList td{
	border:0px solid #CCC;
	padding-left:0;
	vertical-align:top;
}
/**/
#TopImage{
	display: block;
	width: 970px;
	margin: 0;
}
/**/
h2{
	display:block;
	color:#C33;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-left-color: #C33;
	border-left-style: solid;
	border-left-width: 4px;
	padding-left: 10px;
	width: 660px;
}
h2.navy{
	display:block;
	color:#06C;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-bottom-color: #CCC;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-top-color: #CCC;
	border-top-style: solid;
	border-top-width: 1px;
	border-left:none;
	padding-left: 10px;
	line-height:3em;
	width: 670px;
}
h2.blue{
	display:block;
	color:#03C;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-left-color: #03C;
	border-left-style: solid;
	border-left-width: 4px;
	padding-left: 10px;
	width: 660px;
}
h2.skyblue{
	display:block;
	color:#09AFFF;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-left-color: #6CF;
	border-left-style: solid;
	border-left-width: 4px;
	padding-left: 10px;
	width: 660px;
}

h2.green{
	display:block;
	color:green;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-left-color: green;
	border-left-style: solid;
	border-left-width: 4px;
	padding-left: 10px;
	width: 660px;
}
h2.orange{
	display:block;
	color:#D78D06;
	margin-bottom: 10px;
	margin-top: 20px;
	clear: both;
	border-left-color: #F90;
	border-left-style: solid;
	border-left-width: 4px;
	padding-left: 10px;
}
h3{
	display:block;
	color:#666;
	margin-bottom: 10px;
	margin-top: 20px;
	border-bottom:1px solid #CCC;
	clear: both;
}
h4{
	line-height:1em;
	clear: both;
	margin-top: 10px;
}
.section{
	display:block;
	width:680px;
	margin-top:30px;
	padding-top: 0px;
	clear: both;
	}
.box01{
	display:block;
	width:680px;
	margin-top:30px;
	padding-top: 0px;
	clear: both;
	}
.box01 p{
	margin-top:10px;
}
.box02{
	display:block;
	width:970px;
	margin:30px 0px 0 0px;
	padding-top: 0px;
	clear: both;
	font-size: 0.9em;
	}
.box02 p{
	margin-top:10px;
	line-height: 1.6em;
}
p.cap{
	margin-top:4px;
	line-height:1.4em;
	text-align: center;
}
.right{
	display:block;
	float:right;
	text-align: center;
}
.left{
	display:block;
	float:left;
	text-align: center;
}
.leftRm30{
	display:block;
	float:left;
	text-align: center;
	margin-right:30px;
}
.leftTxtL{
	display:block;
	float:left;
	text-align: left;
}
/* ////////////////////////////////////////////////////////

	

//////////////////////////////////////////////////////// */
.houshin01{
	display:block;
	border:#9ACC33 1px solid;
	width:620px;
	height:auto;
	margin:30px 20px 20px 0px;
	padding:10px;
	background-color: #FFF;
}
.houshin01 .inner{
	background-image: url(https://www.osaka-ti.co.jp/images/bg_kankyou.gif);
	padding: 20px;
	border-color: #9ACC33;
	border-width: 1px;
	border-style: solid;

}
.houshin01 p{
	color:#333;
}
.houshin02{
	display:block;
	border:#39F 1px solid;
	width:620px;
	height:auto;
	margin:30px 20px 20px 0px;
	padding:10px;
	background-color: #FFF;
}
.houshin02 .inner{
	padding: 20px;
	border-color: #39F;
	border-width: 1px;
	border-style: solid;
	background-color: #F4FDFF;

}
.houshin02 p{
	color:#333;
}
ol{
	display:block;
	margin-top: 20px;
	;
}
ol li{
	margin-left:20px;
	_margin-left:30px;
	list-style:decimal;
}
ol li ul li{
	margin-left:20px;
	list-style:none;
}
.table01 th,td {
	margin:6px;
	padding: 6px;
}

.table02 ul li{
	margin:0;
}

/*TCg}bv*/
ul.ligre li {
background-image: url(https://www.osaka-ti.co.jp/images/IconArrowGreen.gif); background-repeat: no-repeat; background-position: 4px 4px; text-indent: 18px;
}
ul.liflgre{
	display:block;
	clear:both;
	margin-left: 20px;
	_margin-bottom:20px;
	margin-right: -10px;
	float: left;
	margin-bottom: 20px;
}
ul.liflgre li {
	background-image: url(https://www.osaka-ti.co.jp/images/orangeicon.gif);
	background-repeat: no-repeat;
	background-position: 4px 9px;
	text-indent: 12px;
	float:left;
	white-space: nowrap;
	padding-right:40px;
	line-height:1.6em;
}
h2.boxccc{
	border-top:1px solid #999;
	border-bottom:1px solid #999;
	border-left:none;
	height:2.2em;
	line-height:2.2em;
	margin:20px 0 0px 0;
	color:#690;
	width: 970px;
}
h3.m30{
	text-indent: 10px;
	border-bottom:1px solid #999;
	margin-top: 10px;
	color: #E52614;
	}
.sitemap a{
	color:#333;
}

.section ul li.downmenu{
	background-image:url(https://www.osaka-ti.co.jp/images/IconGray02.gif);
	background-repeat:no-repeat;
	background-position:0 6px;
	padding-left: 16px;
	width:90%;
	cursor : pointer;
	}

.section ul li.downmenu{
	display:block;
}
.section ul li{
	margin-left: 20px;
	margin-right: 14px;
	margin-bottom: 6px;
	display: block;
	}
	
ul li.pdf{
	background-image:url(https://www.osaka-ti.co.jp/images/menuGray.gif);
	background-position:0 9px;
	background-repeat:no-repeat;
	text-indent:10px;
	margin-bottom: 0px;
}
.section ul li a{
	display:inline;
	}
/*@[tH[@*/
.necessary{
 font-size:10pt;
 color:#669900;
}
.about{
	text-align:left;
	border: solid 1px;
	height: 160px;
	width: 600px;
	overflow: auto;
	margin:5px 50px 10px 60px;
	padding:5px;
	background-color:#FFFFFF;
	}
p.submit{
	display:block;
	text-align:center;
	margin:10px 0 30px 0;
}
body.mailform p{
	font-size:0.9em;
}
body.mailform p.header__megamenu-justtxt {
	font-size: 1.25rem;
}
.fss{
    font-size: 0.88em;
}
.formTitle{
font-size:1.4em;
}

/* ////////////////////////////////////////////////////////

	ヘッダー

//////////////////////////////////////////////////////// */
.wrapper01 {
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  padding-right:30px;
  padding-left:30px;
}

.header {
	min-width: 970px;
  width: 100%;
  height: 182.469px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000000;
}

.header a {
	color: inherit;
	font-family: "Noto Sans JP", sans-serif !important;
	cursor: pointer;
}

.header a:hover {
	text-decoration: none;
}

.header__top {
  background-color: #fff;
  height: 130px;
}

.header__top-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 38px 0px 32px;
}

.header__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

.header__logo {
  width: 502px;
}

.header__logo img {
  width: 100%;
}

.header__size {
  position: absolute;
  right: 0;
  top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 25px;
  margin-right: 130px;
}

.header__size-txt {
  color: #707070;
  font-size: 0.75rem;
  line-height: 25px;
  margin-right: 16px;
}

.header__size-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.header__size-icons i {
  font-size: 1rem;
  display: inline-block;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  border-radius: 50%;
  font-style: normal;
  font-family: "Noto Sans JP", sans-serif;
}

.header__size-icons i img {
	max-width: 100%;
  max-height: 100%;
}

.header__size-icons i.deep {
  background-color: #666666;
  color: #fff;
  margin-right: 4px;
}

.header__size-icons i.normal {
  background-color: #999999;
  color: #fff;
  margin-right: 4px;
}

.header__size-icons i.light {
  background-color: #CCCCCC;
  color: #666666;
}

.header__eng {
  text-align: center;
  font-weight: 300;
  letter-spacing: 0.05rem;
  position: absolute;
  top: 35px;
  right: 0px;
  background-color: #CC3333;
  color: #fff;
  width: 106px;
  height: 24px;
  line-height: 23px;
  font-size: 0.8125rem;
}

.header__eng i {
  font-style: normal;
  margin-right: 4px;
}

.header__purposes {
  padding-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.header__purposes-purpose {
  position: relative;
  font-size: 0.875rem;
  color: #666666;
  font-weight: 300;
}

.header__purposes-purpose--contact {
  margin-right: 6px;
  padding-left: 34px;
}

.header__purposes-purpose--contact i img {
  position: absolute;
  width: 22px;
  left: 6.04px;
  top: 2.3px;
  height: auto;
}

.header__purposes-purpose--sitemap {
  padding-left: 34px;
}

.header__purposes-purpose--sitemap i img {
  position: absolute;
  top: 1.5px;
  left: 6px;
  width: 22px;
  height: auto;
}

.header__purposes-purpose--search {
  padding-left: 8px;
  margin-left: 16px;
  background-color: #fff;
  color: #000;
  border: solid 1px;
  height: 22px;
  width: 174.5px;
}

.header__purposes-purpose--search i img {
  position: absolute;
  width: 15.5px;
  height: auto;
  top: 3px;
  right: 7px;
}

.header__purposes-purpose--search i img:hover {
  cursor: pointer;
  opacity: .7;
}

.header__purposes-purpose--search .input-outer {
  width: 200px;
}

.header__purposes-purpose--search input[type="text"] {
  width: 80%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 19px;
	/* 初期化 */
	-webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

.header__purposes-purpose--search #magnifyingGlass {
  width: 17px;
  position: absolute;
  top: 1px;
  right: 5px;
}

.header__purposes-purpose--search #magnifyingGlass input {
  max-width: 100%;
	padding: 2px;
}

.header__ham {
  display: none;
  position: relative;
  margin-top: 38px;
  width: 26px;
  height: 12px;
}

.header__bottom {
  background-color: #CC3333;
  color: #CCCCCC;
  height: 53px;
  width: 100%;
}

.header__bottom.is-show {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition-duration: .1s;
          transition-duration: .1s;
	min-width: 970px;
}

.header__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  line-height: 52px;
}

.header__nav ul > li {
  position: relative;
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
}

/* .header__nav ul > li::before {
  content: '';
  position: absolute;
  bottom: 6px;
  left: 0;
  height: 3px;
  width: 100%;
  background-color: #CC3333;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
} */

.header__nav ul > li.active,
.header__nav ul > li > a.active {
  color: #fff;
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
}

.header__nav ul > li.active > a::before,
.header__nav ul > li > a.active::before {
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
  content: '';
  position: absolute;
  bottom: -7px;
  left: 0;
  height: 3px;
  width: 100%;
  background-color: #fff;
}

/* .header__nav ul > li:hover::before {
  background-color: #fff;
} */

.header__nav ul > li a#sutainabilityHeaderBottom {
  display: block;
}

.header__nav ul > li > a {
	position: relative;
	font-size: 1rem;
	-webkit-transition-duration: .5s;
          transition-duration: .5s;
}

.header__nav ul > li > a::before {
  content: '';
  position: absolute;
  bottom: -7px;
  left: 0;
  height: 3px;
  width: 100%;
  /* background-color: #CC3333; */
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}

.header__nav ul > li > a:hover {
	color: #fff;
	-webkit-transition-duration: .5s;
          transition-duration: .5s;
}

.header__nav ul > li > a:hover::before {
	background-color: #fff;
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
}

.header__sp-menu {
  display: none;
}

.header__megamenu-outer {
  margin-top: 0;
  position: relative;
}

.header__megamenu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 900px;
  background-color: rgba(62, 58, 57, 0.9);
  color: #fff;
  z-index: 1000;
  overflow-y: hidden;
}

.header__megamenu-inner {
  -webkit-transition: .25s;
  transition: .25s;
  margin-top: 180px;
  position: relative;
  height: 100%;
  padding-top: 0px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
	text-align: left;
}

.header__megamenu-left {
  position: relative;
  width: 73%;
}

.header__megamenu-left-inner {
  margin-top: 50px;
}

.header__megamenu-right {
  position: relative;
  opacity: 0;
  width: 24%;
  height: 100%;
}

.header__megamenu-right.active {
  -webkit-transition: .5s;
  transition: .5s;
  opacity: 1;
}

.header__megamenu-right-inner {
  padding-top: 50px;
  padding-left: 27.5px;
}

.header__megamenu-top ul.collmun01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  margin-top: 31px;
  font-weight: 500;
	margin-left: -95px;
	margin-bottom: -20px;
	flex-wrap: wrap;
}

.header__megamenu-top ul.collmun01 > li {
  margin-left: 95px;
  font-size: 1rem;
	margin-bottom: 20px;
}

/* .header__megamenu-top ul.collmun01 > li:first-of-type {
  margin-left: 0;
} */

.header__megamenu-top ul.collmun01 > li a {
	font-family: "Noto Sans JP", sans-serif !important;
	font-weight: 500;
	color: inherit;
}
.header__megamenu-top ul.collmun01 > li a:hover {
	text-decoration: none;
}

.header__megamenu-top ul.collmun01 > li i {
  margin-right: 8px;
}

.header__megamenu-middle {
  margin-top: 77px;
}

.header__megamenu-middle ul.collmun02.parent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  margin-top: 28px;
  font-weight: 500;
}

.header__megamenu-middle ul.collmun02.parent > li {
  width: 265px;
  font-weight: 500;
  line-height: 1.5;
  margin-left: 26.5px;
}

.header__megamenu-middle ul.collmun02.parent > li:first-of-type {
  margin-left: 0;
}

.header__megamenu-middle ul.collmun02.parent > li span.esgtxt {
  border-bottom: solid 2px #fff;
  padding-bottom: 10px;
  display: block;
  font-size: 1.125rem;
}

.header__megamenu-middle ul.collmun02.parent > li > a > i {
  position: absolute;
  right: -10px;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child {
  font-size: 1rem;
  margin-top: 20px;
  font-weight: 300;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li {
  margin-top: 30px;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li:first-of-type {
  margin-top: 0;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li > a {
  display: block;
  position: relative;
  -webkit-transition: .5s;
  transition: .5s;
	color: inherit;
	cursor: pointer;
}
.header__megamenu-middle ul.collmun02.parent > li ul.child > li > a:hover {
	text-decoration: none;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li > a.invisible {
  -webkit-transition: .5s;
  transition: .5s;
  opacity: .5;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li i {
  position: absolute;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li i.type01 {
  right: 48px;
	font-style: initial;
}

.header__megamenu-middle ul.collmun02.parent > li ul.child > li i.type02 {
  left: 0;
}

.header__megamenu-bottom {
  margin-top: 56px;
  padding-bottom: 80px;
}

.header__megamenu-child-area {
  position: absolute;
  left: 0;
  display: none;
  margin-top: 68px;
  width: 100%;
}

.header__megamenu-child-area ul {
  text-align: left;
  margin-top: 19.88px;
  padding-left: 0px;
}

.header__megamenu-child-area ul li {
  font-weight: 300;
  margin-top: 21.84px;
  line-height: 1.5;
}

.header__megamenu-child-area ul li:first-of-type {
  margin-top: 0;
}

.header__megamenu-child-area ul li a {
	color: inherit;
}
.header__megamenu-child-area ul li a:hover {
	text-decoration: none;
}

.header__megamenu-child-area-heading {
  border-bottom: solid 2px #fff;
  padding-bottom: 10px;
  display: block;
  font-size: 1.125rem;
}

.header__megamenu-justtxt {
  border-left: solid #fff 6px;
  font-size: 1.25rem;
  font-weight: 500;
  padding-left: 9px;
}

.header__megamenu-justtxt a {
	color: inherit;
	cursor: pointer;
}
.header__megamenu-justtxt a:hover {
	text-decoration: none;
}

.header__megamenu-cross {
  position: absolute;
  top: 50px;
  right: 0;
  width: 28px;
  height: 28px;
  margin: 0 0 0 auto;
  display: block;
}

.header__megamenu-cross:hover {
  cursor: pointer;
  opacity: 0.7;
  -webkit-transition: .7s;
  transition: .7s;
}

.header__megamenu-cross .line01,
.header__megamenu-cross .line02 {
  display: inline-block;
  position: absolute;
  background-color: #fff;
  width: 2px;
  height: 80%;
}

.header__megamenu-cross .line01 {
  top: 3px;
  left: 12px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.header__megamenu-cross .line02 {
  top: 3px;
  left: 12.5px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* ////////////////////////////////////////////////////////

	フッター

//////////////////////////////////////////////////////// */
.footer {
  border-top: solid 2px #CC3333;
  padding: 20px 0 40px;
}

.footer__privacy {
  font-size: 0.8125rem;
  font-weight: 300;
	display: block;
	text-align: left;
}
.footer__privacy a {
	color: #000;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	font-family: "Noto Sans JP", sans-serif !important;
	font-weight: 300;
}

.footer__privacy a:hover {
	text-decoration: none;
}

.footer__logo {
  margin-top: 24px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  /* width: 400px; */
}

.footer__copyright {
  text-align: center;
  margin-top: 11px;
  font-size: 0.8125rem;
  letter-spacing: 1.3px;
}