@charset "UTF-8";

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

ul {
list-style-type: none;
}

img{
border:0px;
vertical-align:bottom;
}

table{
border-collapse:collapse;
border-spacing:0px;
width: 100%;
margin: 0 0 20px;
}

th, td {
padding: 15px 25px;
border: 1px solid #999999;
vertical-align: center;
border-left: none;
border-right: none;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					th, td {
						width: auto;
						display: block;
						border-bottom: none;
						padding: 8px 10px;
					}
					td {
						border-top: none;
						padding: 13px;
					}
				}

th {
background-color: #eee;
}

iframe {
border: 0;
overflow: hidden;
}


/* common
------------------------------------*/
a {text-decoration: none}
a:link { color: #1F8476; }
a:visited { color: #1F8476; }
a:hover { text-decoration: underline;}
a:active { text-decoration: underline;}

body{
font-size:80%;
text-align:center;
color: #666666;
font-family: "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Osaka, ;
-webkit-text-size-adjust: none;
background-repeat: repeat-x;
background-position: 0 66px;
overflow-x: hidden;
animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    30% {opacity: 0}
    100% {opacity: 1}
}

				/* 【PC用のスタイル記述】 */
				@media screen and (min-width: 961px) {
					
					.tab,
					.sp {
						display: none;
					}
					
					.pc {
						display: block;
					}
				}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
					
					body{
					background-image: none;
					}
					
					.pc,
					.sp {
						display: none;
					}
					
					.tab {
						display: block;
					}
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					
					body{
					background-image: none;
					}
					
					.pc,
					.tab {
						display: none;
					}
					
					.sp {
						display: block;
					}
				}

#container {
	position: relative;
	margin: 0 0 20px;
}

#header-wrap {
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	transition: .3s;
	background-color: #fff;
}

#header {
	width: 980px;
	margin: 0 auto;
	display: flex;
}

#header h1 {
	width: 300px;
	align-self: center;
	padding: 30px 0;
	text-align: left;
}

#header h1 img {
	width: 234px;
}

#header #gNavi {
	width: 400px;
	align-self: center;
	display: flex;
	justify-content: flex-end;
	font-size: 16px;
	font-weight: bold;
}

#header #gNavi li a {
	display: inline-block;
	padding: 10px;
}

#header #gNavi li a:link,
#header #gNavi li a:visited {
	color: #555555;
}

#header #gNavi li a:hover,
#header #gNavi li a:active {
	opacity: 0.8;
	text-decoration: none;
}

#header .btn01 {
	width: 245px;
	margin: 0 0 0 20px;
	align-self: flex-start;
}

#header .btn01 a:hover,
#header .btn01 a:active {
	opacity: 0.8;
}


				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 980px) {
					#header {
						width: 96%;
						justify-content: space-between;
					}
					#header #gNavi {
						display: none;
					}
					#header .btn01 {
						display: none;
					}
					#header h1 {
						padding: 25px 0;
					}
				}
						
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					#header h1 {
						padding: 20px 0;
					}
					#header h1 img {
						width: 200px;
					}
				}

h2 {
	padding: 70px 0;
	text-align: left;
	width: 980px;
	margin: auto;
}

#contents {
	width: 980px;
	text-align: left;
	margin: auto;
}

#pankuzu {
	padding: 16px 0;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
					h2 {
						width: 720px;
						margin: auto;
					}
					
					#contents {
						width: 720px;
					}
				}
						
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {					
					h2 {
						width: 320px;
						margin: 0 auto 20px;
						padding: 45px 0;
					}
						
					#contents {
						width: 320px;
					}
					
					#pankuzu {
						display: none;
					}
				}

#menu {
	float: left;
	display: block;
	width: 230px;
}

#menu ul#navi {
	margin: 0 0 20px;
}

#menu ul#navi > li > a {
	position: relative;
	display: block;
	padding: 20px 15px;
	background-color: #2ba593;
	font-size: 15px;
	letter-spacing: 2px;
}

#menu ul#navi > li > a:after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	background: url(../img/icon06.gif) no-repeat center center;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
}

#menu ul#navi > li > a:link,
#menu ul#navi > li > a:visited {
	color: #fff;
}

#menu ul#navi > li > a:hover,
#menu ul#navi > li > a:active {
	background-color: #3eb9a7;
	opacity: 1;
	text-decoration: none;
}

#menu ul.naviUl {
	margin: 0 0 20px;
}

#menu ul.naviUl > li {
	border-bottom: 1px solid #1ac0a8;
}

#menu ul.naviUl > li > a {
	position: relative;
	display: block;
	padding: 20px 25px;
	font-size: 15px;
	letter-spacing: 2px;
}

#menu ul.naviUl > li > a:after {
	content: '';
	display: block;
	width: 4px;
	height: 6px;
	background: url(../img/icon07.gif) no-repeat center center;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 10px;
}

#menu ul.naviUl > li > a:link,
#menu ul.naviUl > li > a:visited {
	color: #2ba593;
}

#menu ul.naviUl > li > a:hover,
#menu ul.naviUl > li > a:active {
	opacity: 0.8;
	text-decoration: none;
}

#menu ul.menu li {
	text-align: center;
	margin: 0 0 15px;
}

#menu ul.menu li img {
	width: 230px;
}

#spNavi {
	display: none;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
					
					#menu {
						float: none;
					}
					
					#menu ul#navi,
					#spNavi {
						display: none;
					}
					
					#menu ul.menu li {
						float: left;
						margin: 0 15px 0 0;
					}
					
					#menu ul.menu li.lustLi {
						float: left;
						margin:  0 0 0 0;
					}
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					#navi,
					#menu .menu {
						display: none;
					}
					
					#spNavi {
						display: block;
					}
					
					#spNavi li {
						width: 290px;
						padding: 0;
						margin: 0 15px 6px;
						background-color: #22887A;
						color: #fff;
						font-size: 120%;
					}
					
					#spNavi li a:link,
					#spNavi li a:visited {
						color: #fff;
					} 
					
					#spNavi li p {
						background-image: url(../img/icon05.gif);
						background-repeat: no-repeat;
						background-position: 30px 15px;
						padding: 12px 50px;
					}
					
					#spNavi li ul.naviUl li {
						background-color: #fff;
						width: 260px;
						padding: 0 0 0 30px;
						font-size: 90%;
						margin: 0;
						border-bottom: 1px solid #DDDDDD;
					}
					
					#spNavi li ul.naviUl li p {
						background-image: url(../img/icon04.gif);
						background-repeat: no-repeat;
						background-position: 5px 12px;
						padding: 10px 25px;
						background-color: #fff;
					}
					
					#spNavi li ul.naviUl li a:link,
					#spNavi li ul.naviUl li a:visited {
						color: #22887A;
					} 
				}

#main {
	float: right;
	width: 720px;
}

#main h3 {
	background-image: url(../img/h3.jpg);
	background-repeat: no-repeat;
	font-size: 150%;
	padding: 5px 65px;
	color: #fff;
	margin: 0 0 30px;
}

#main .cassette {
	margin: 0 20px 20px;
}

#main .cassette h4 {
	background-image: url(../img/h4.jpg);
	background-repeat: no-repeat;
	background-position: 0 4px;
	font-size: 130%;
	padding: 5px 25px;
	margin: 0 0 15px;
}

#main .cassette h5 {
	background-image: url(../img/h5_bg.jpg);
	background-repeat: no-repeat;
	background-position: 0 0px;
	font-size: 130%;
	padding: 6px 25px;
	margin: 0 0 20px;
	color: #1F8476;
}

#main .cassette p,
#main .cassette ul,
#main .cassette ol {
	margin: 0 0 20px;
}

#main .cassette p,
#main .cassette ul li,
#main .cassette ol li,
#main .cassette table td {
	line-height:1.8;
}

#main .cassette p.pdfLink {
	line-height:1;
}

#main .cassette ul li  {
	background-image: url(../img/icon02.gif);
	background-repeat: no-repeat;
	background-position: 0 9px;
	padding: 0 10px;
	margin: 0 3px;
}

#main .cassette ol li  {
	margin: 0 15px;
}

#main .cassette ul.banner li {
	display: none;
}

#main .cassette  ol.wp-paginate li {
margin: 0 5px 0 0;
list-style-type: none;
}

#pagetop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 20;
}

#spmenu {
	display: none;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
					
					#main {
						float: inherit;
						width: 720px;
						margin: auto;
					}
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					#main {
						float: inherit;
						width: 320px;
						margin: auto;
					}
					
					#main h3 {
						background-image: none;
						background-color: #22887A;
						font-size: 130%;
						padding: 12px 20px;
					}
					
					#main .cassette {
						margin: 0 15px;
					}
					
					#main .cassette ul.banner li {
						display: block;
						background-image: none;
						padding: 0;
						float: left;
						margin: 0 0 10px;
					}
					
					#spmenu {
						display: block;
					}
					
					#spmenu ul {
						width: 320px;
						margin: auto;
					}
					
					#spmenu ul li {
						float: left;
						margin: 0 0 5px;
					}
				}

#footer {
	background-image: url(../img/footer_bg.jpg);
	background-repeat: repeat-x;
	text-align: left;
	padding: 15px 0 0;
	position: relative;
	z-index: 10;
}

#footer .footerIn {
	width: 980px;
	height: 270px;
	margin: auto;
}

#footer .footerIn p {
	margin: 0 0 10px;
	line-height:1.8;
}

#footer .footerIn .columnLeft {
	width: 230px;
}

#footer .footerIn .columnRight {
	width: 600px;
	padding: 20px 0 0 30px;
	line-height: 1;
}

#footer .footerIn .columnRight ul li {
	float: left;
}

#footer .footerIn .columnRight ul li ul li {
	background-image: url(../img/icon01.gif);
	background-repeat: no-repeat;
	background-position: 0 7px;
	float: none;
	color: #1F8476;
	font-size: 110%;
	padding: 5px 20px;
	margin: 0 0 15px;
	width: 160px;
}

#footer .footerIn .columnRight ul li ul li ul li {
	background-image: url(../img/footer_icon.jpg);
	background-repeat: no-repeat;
	background-position: 0 9px;
	font-size: 90%;
	padding: 5px 20px 0;
	margin: 10px 0 0;
}

#footer p.copyright {
	text-align: center;
	padding: 5px;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
					
					#footer .footerIn {
						width: 720px;
						height: 270px;
						margin: auto;
					}
					
					#footer .footerIn .columnLeft {
						width: 220px;
					}
					
					#footer .footerIn .columnRight {
						width: 480px;
						padding: 20px 0 0;
					}
					
					#footer .footerIn .columnRight ul li ul li {
						font-size: 105%;
						padding: 10px 0 10px 18px;
						margin: 0 0 10px;
						width: 135px;
					}
					
					#footer .footerIn .columnRight ul li ul li ul li {
						padding: 10px 0 0 15px;
					}
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					
					#footer {
						background-image: url(../img/sp/footer_bg.jpg);
						background-repeat: repeat-x;
						background-size: auto 207px;
						text-align: left;
						padding: 0;
					}

					#footer .footerIn {
						width: 320px;
						height: 210px;
						margin: auto;
					}
					
					#footer .footerIn .columnLeft {
						width: 320px;
						text-align: center;
					}
					
					#footer .footerIn .columnRight {
						display: none;
					}
				}

.columnRight {
display: block;
float: right;
}

.columnLeft {
display: block;
float: left;
}

.txtRed {
color: #EA0000;
}


/* activityLayout
------------------------------------*/

.activityLayout #container {
	background-image: url(../../activity/img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.activityLayout #main div.divactivity {
	margin: 0 0 30px;
}

.activityLayout #main div.divactivity ul li {
	background-image: none;
	float: left;
	margin: 0;
	padding: 0;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.activityLayout #container {
						background-image: url(../../activity/img/sp/h2_bg.jpg);
					}
				}
				
/* companyLayout
------------------------------------*/

.companyLayout #container {
	background-image: url(../../company/img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.companyLayout #main .cassette .columnLeft {
	width: 300px;
}

.companyLayout #main .cassette .columnRight {
	width: 360px;
}
.companyLayout #main .cassette .txt_right {
    text-align: right;
}

				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.companyLayout #container {
						background-image: url(../../company/img/sp/h2_bg.jpg);
					}
					
					.companyLayout #main .cassette .columnRight {
						width: auto;
					}
				}
				
/* companyAboutLayout
------------------------------------*/

.companyAboutLayout #main .cassette .columnLeft,
.companyAboutLayout #main .cassette .columnRight {
	width: 330px;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.companyAboutLayout #main .cassette .columnLeft,
					.companyAboutLayout #main .cassette .columnRight {
						width: auto;
					}
				}

/* companyFacilityLayout
------------------------------------*/

.companyFacilityLayout #main ul {
	margin: 0 0 0;
}

.companyFacilityLayout #main ul li {
	background-image: none;
	float: left;
	margin: 0 0 10px;
	padding: 0 3px;
}

.companyFacilityLayout #main h4 span {
	font-size: 80%;
	font-weight: normal;
	margin: 0 0 10px;
	padding: 0 3px;
}

.companyFacilityLayout #main .cassette .columnLeft {
	width: 260px;
}

.companyFacilityLayout #main .cassette .columnRight {
	width: 400px;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					
					.companyFacilityLayout #main .cassette .columnRight {
						width: 270px;
						margin: 0 20px 20px;
					}
					
					.companyFacilityLayout #main .cassette h5 {
						padding: 6px 0 6px 25px;
						width: 235px;
					}
				}

/* introLayout
------------------------------------*/

.introLayout #container {
	background-image: url(../../intro/img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.introLayout #main h3.h3Index {
	background-image: none;
	width: 510px;
	padding: 12px 0px;
	margin: 0 0 10px;
}

.introLayout #main div.divIntro {
	margin: 0 0 30px;
}

.introLayout #main div.divIntro ul li {
	background-image: none;
	float: left;
	margin: 0;
	padding: 0;
}


				/* 【タブレット用のスタイル記述】 */
				@media screen and (max-width: 960px) and (min-width: 621px) {
				}
				
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.introLayout #container {
						background-image: url(../../intro/img/sp/h2_bg.jpg);
					}
					
					.introLayout #main h3.h3Index {
						background-image: none;
						background-color: inherit;
						font-size: 130%;
						padding: 0;
						width: 300px;
					}
				}
				
/* worksLayout
------------------------------------*/

.worksLayout #container {
	background-image: url(../../works_img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.worksLayout #container .workUl li {
	background-image: none;
	float: left;
	margin: 0;
	padding: 0 2px 0 3px;
	width: 165px;
	height: 170px;
	line-height: 1.2;
}

.worksLayout #container .workUl li img {
	margin: 0 0 5px;
}

.worksLayout #menu ul#navi li h3 {
	padding: 5px 20px;
	margin: 10px 0 0;
	color: #1F8476;
	border-bottom: 2px #1F8476 solid;
	border-left: 2px #1F8476 solid;
}

.worksLayout #menu ul#navi li ul {
	border-bottom: 1px #1F8476 solid;
}

.worksLayout #menu ul#navi li ul p.ulP {
	background-color: #DEEDEB;
	padding: 5px 20px;
	color: #1F8476;
	font-size: 120%;
}

.worksLayout #menu ul#navi li ul li {
	background-image: url(../img/icon04.gif);
	background-repeat: no-repeat;
	background-position: 20px 14px;
	padding: 8px 35px;
	margin: 0;
	border-bottom: 1px solid #DDDDDD;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.worksLayout #container {
						background-image: url(../../works_img/sp/h2_bg.jpg);
					}
					
					.worksLayout #container .workUl li {
						width: 140px;
						font-size: 85%;
					}
				}

/* otherLayout
------------------------------------*/

.otherLayout #container {
	background-image: url(../../other/img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.otherLayout #container {
						background-image: url(../../other/img/sp/h2_bg.jpg);
					}
				}
				
/* newsLayout
------------------------------------*/

.newsLayout #container {
	background-image: url(../../news_img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.newsLayout #main h3 span  {
	float: right;
	width: 95px;
	font-size: 90%;
}

.newsLayout #main .cassette ul.newsUl li  {
	background-image: none;
	border-bottom: 1px dashed #DDDDDD;
	padding: 15px;
}

.newsLayout #main .cassette ul.newsUl li .columnLeft {
	width: 100px;
}

.newsLayout #main .cassette ul.newsUl li .columnRight {
	width: 500px;
}		
				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.newsLayout #container {
						background-image: url(../../news_img/sp/h2_bg.jpg);
					}
					
					.newsLayout #main .cassette ul.newsUl li .columnLeft,
					.newsLayout #main .cassette ul.newsUl li .columnRight {
						float: none;
						width: 280px;
					}	
					
					.newsLayout #main h3 span  {
						float: right;
						width: 70px;
						font-size: 80%;
					}
					
					.newsLayout #main .cassette div.navigation {
						margin:0 0 20px;
					}
				}
				
/* contactLayout
------------------------------------*/

.contactLayout #container {
	background-image: url(../../inquiry/img/h2_bg.jpg);
	background-repeat: no-repeat;
	background-position: center 0;
}

.contactLayout #main .cassette ul.fomeUl li {
	background-image: none;
	border-bottom: 1px solid #aaaaaa;
    padding: 20px 0;
}

.contactLayout .cassette ul li span.columnLeft {
    width: 140px;
}

.contactLayout .cassette ul li span.columnRight {
    width: 450px;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 620px) {
					.contactLayout #container {
						background-image: url(../../inquiry/img/sp/h2_bg.jpg);
					}
					
					.contactLayout .cassette ul li span.columnLeft,
					.contactLayout .cassette ul li span.columnRight {
						width: 300px;
						float: none;
					}
				}

/* sp menu
------------------------------------*/

.menu-btn {
	display: none;
}
.modal {
	display: none;
}

				/* 【スマートフォン用のスタイル記述】 */
				@media screen and (max-width: 980px) {

.menu-btn {
	display: block;
	position: relative;
    cursor: pointer;
    z-index: 1499;
    margin: 10px;
    align-self: center;
}

.menu-btn-close {
	position: absolute;
    cursor: pointer;
    z-index: 1501;
    top: 20px;
    right: 20px;
}

.menu-btn span:after {
	display: block;
	content: '';
	width: 30px;
	height: 30px;
	background: url(../img/menu_icon.png) no-repeat center center;
	background-size: 30px auto;
}

/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu-btn-close span:after {
	display: block;
	content: '';
	width: 25px;
	height: 25px;
	background: url(../img/menu_close.png) no-repeat center center;
	background-size: 25px 25px;
}

.modal {
	display: block;
	position: fixed;
    top: 0;
    left: 100%;
    width: 70%;
    height: 100%;
    background: #fff;
    -webkit-transition: all .5s;
    transition: all .5s;
    box-sizing: border-box;
    z-index: 1500;
}

.modal div {
	width: 100%;
	height: 100%;
	margin: 0 auto;
    overflow: auto;
    box-sizing: border-box;
    position: relative;
    padding: 67px 0 0;
}

.modal div > ul:nth-child(1) {
	font-size: 120%;
	margin: 0 0 10px;
}

.modal div > ul:nth-child(2) {
	font-size: 100%;
}

.modal div > ul > li {
    width: 100%;
    margin: 0 auto;
    text-align: left;
}

.modal div > ul:nth-child(1) > li {
	border-bottom: 1px dotted #ccc;
}
.modal div > ul > li > a {
    display: block;
    padding: 17px 20px;
}

.modal div > ul > li ul li a {
	font-size: 90%;
    display: block;
    padding: 10px 20px 10px 30px;
}

.modal div > ul > li a:link,
.modal div > ul > li a:visited {
	color: #666666;
	text-decoration: none;
}

.modal div > ul > li ul li a:link,
.modal div > ul > li ul li a:visited {
	color: #666666;
}

/* 開閉用ボタンがクリックされた時のスタイル */
.open .modal {
    -webkit-transition: all .5s;
    transition: all .5s;
    left: 30%;
}

.modal div ul li a {
	position: relative;
}

.modal div > ul {
	border-top: 1px solid #aaa;
}

.modal div > ul > li {
	border-bottom: 1px solid #aaa;
}

.modal div > ul > li.accordion {
	color: #fff;
}

.modal div > ul > li.accordion.open {
	background-color: rgba(43,165,147,0.1);
}

.modal div > ul > li.accordion span {
	display: block;
    padding: 17px 20px;
    position: relative;
    color: #666666;
}

.modal div > ul > li.accordion span:after {
	content: '';
	display: block;
	width: 13px;
	height: 13px;
	background: url(../img/icon-plus.png) no-repeat center center;
	background-size: 13px auto;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

.modal div > ul > li.accordion span.open:after {
	content: '';
	background: url(../img/icon-minus.png) no-repeat center center;
	background-size: 13px auto;
}

.modal div > ul > li.accordion ul {
	display: none;
}

body.open {
}

body.open #blackBg {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1001;
}

					}



/* modalメニュー
---------------------------------------------------------------*/

#modal {
display: none;
text-align: left
}

#pageslide {
display: none;
position: absolute;
top: 0;
height: auto;
z-index: 999999;
width: 260px;
background-color: #555;
color: #FFF;
}

#modal dl dt {
background-image: url(../img/tab/modal_icon01.jpg);
background-repeat: no-repeat;
background-position: 25px 25px;
background-size: 15px;
padding: 25px 0 25px 60px;
font-size: 120%;
border-bottom: solid 1px #fff;
}

#modal dl dt a {
padding: 0;
display: block;
text-decoration: none;
}

#modal dl dd ul {
border-bottom: solid 1px #fff;
padding: 0 0 20px;
}

#modal dl dd ul li {
padding: 20px 0 0 60px;
background-image: url(../img/tab/modal_icon02.jpg);
background-repeat: no-repeat;
background-position: 28px 22px;
background-size: 9px;
font-size: 120%;
}

#modal dl a {
color: #DDDDDD;
text-decoration: none;
}


				/* スマートフォン（横）用のスタイル記述 */
				@media screen and (max-width: 620px) {
				
					.layoutSp ul#styleUl01 li {
					float: left;
					width: 33.33333333%;
					background-repeat: repeat-x;
					background-position: 0px 0px;
					}
				
					.layoutSp ul#styleUl01 li a {
					display: block;
					}
				}
				
				/* スマートフォン用（縦）のスタイル記述 */
				@media screen and (max-width: 480px) {
				
					.layoutSp ul#styleUl01 li {
					float: left;
					width: 50%;
					background-repeat: repeat-x;
					background-position: 0px 0px;
					}
				
					.layoutSp ul#styleUl01 li a {
					display: block;
					}
				}

/* clearfix
------------------------------------*/

#container:after,
#contents:after,
#footer:after,
.cassette:after,
.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
overflow:hidden;
}

#container,
#contents,
#footer,
.cassette,
.clearfix {
display: inline-block;
}

/* exlude MacIE5 \*/
* html #container,
* html #contents,
* html #footer,
* html .cassette,
* html .clearfix {
height: 1%
}

#container,
#contents,
#footer,
.cassette,
.clearfix {
display:block;
}
/* end MacIE5 */