/*
Theme Name: -IWATA SHOTEN-
Theme URI: http://www.state-of-nature.com/
Author: State Of Nature Design
Author URI: http://www.state-of-nature.com/
Description: BB4 BASIC.
Version: J.SUZUKAWA w/200611R1
*/
@charset "UTF-8";
@import url("./css/uni.css");

/*================================
style.css
20200604-
=================================*/

/* uni
-------------------------------- */
.boy{
background:url(./img/element/boy.png) no-repeat center center;
width:103px;
height: 169px;
}

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

header{
overflow: hidden;
width:100%;
max-width: 1920px!important;
min-width:1280px!important;
margin:0 auto;
height:482px;
}

header .row_inner{
overflow: hidden;
position: relative;
max-width: 1920px!important;
min-width:1280px!important;
height:482px;
}

header h2 a.header_logo {
background:url(./img/element/header_logo.png) no-repeat left center;
display: block;
width:90px;
height:64px;
position: absolute;
left:70px;
top:30px;
}


/* ------------------------------
SPC
-------------------------------- */

.br_sp,
.btn_sp,
.sp_only {
display: none!important;
}

a.opabtn:hover {
opacity: 0.88;
}

a.imgbtn:hover {
box-shadow: 0 0 2px rgba(33,33,33,0.66);
}

a.drpbtn:hover{
-webkit-filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.4));
-moz-filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.4));
-ms-filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.4));
filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.4));
}

a.txtbtn{
color:#7A6B56;
}
a.txtbtn:hover{
text-decoration: underline;
}

a.tulbtn{
text-decoration: underline;
color:#2972B7;
}
a.tulbtn:hover{
text-decoration: none;
}




/* header deco for uni
-------------------------------- */

h1, h2, h3{
font-size:22px;
font-weight: bold;
letter-spacing: 0.1em;
}


/* ------------------------------
BASE
-------------------------------- */

body {
font-size: 16px;
line-height:2;
letter-spacing: 0.08em;
}


.wrapper{
position: relative;
overflow: hidden;
width:100%;
min-width:1280px;
max-width:1920px;
margin:0 auto;
}

/* ------------------------------
BX O/W
-------------------------------- */

.bx-wrapper {
position: relative;
margin: 0 auto;
-moz-box-shadow: none!important;
-webkit-box-shadow: none!important;
box-shadow: none!important;
border: none!important;
background: none!important;
}

/* -------------------------------
uni
-------------------------------- */

.rows{
position: relative;
width:100%;
min-width:1280px;
max-width:1920px;
margin:0 auto;
}

.row_inner{
position:relative;
width: 1280px;
margin:0 auto;
}

/* this
-------------------------------- */

/*
-------------------------------- */

.cattag{
display: inline-block;
width:80px;
height:28px;
line-height: 28px;
text-align: center;
color:#fff;
font-size:12px;
font-weight: normal;
letter-spacing: 0.07em;
}



/* -------------------------------
topnav
-------------------------------- */
/* fix nav*/
#topnav {
background:url(./img/element/topnav_bg.png) no-repeat center center;
display: block;
width:100%;
height:110px;
min-width:1280px;
position: relative;
margin:372px auto 0;
opacity:1;
z-index: 999;
}


/*#page-aboutus  #topnav.is-hide,*/
#frontpage  #topnav.is-hide {
transform: translateY(-100%);
}

/*#page-aboutus #topnav.is-fixed ,*/
#frontpage #topnav.is-fixed{
display: block;
position: fixed;
top: 0;
left: 0;
}


/* topnav_inner
-----------------*/

#topnav .topnav_inner{
position: relative;
min-width: 1280px;
max-width:1800px;
height:110px;
margin:0 auto;
}

#topnav .topnav_inner h1{
display:none;
}

#topnav .topnav_inner .gnav{
width:950px;
height:110px;
position: absolute;
float:right;
right:30px;
}

#topnav .topnav_inner a.logo {
background:url(./img/element/topnav_logo.png) no-repeat left center;
display: block;
width:185px;
height:110px;
position: absolute;
float: left;
left:30px;
}


/* topnav
-----------------*/

#topnav .topnav_inner .gnav ul,
#topnav.is-fixed .topnav_inner .gnav ul{
background:url(./img/element/topnav_gnav.png) no-repeat left center;
overflow: hidden;
display: block;
width:950px;
height:110px;
position: relative;
}

.gnav ul li{
float: left;
position: relative;
display: block;
vertical-align: top;
margin: 0;
}


.gnav ul li a{
display:block;
height:110px;
position: absolute;
top:0;
cursor:pointer;
transition: 0.2s;
z-index: 99;
}
.gnav ul li.g01 a{width:164px; left:  6px;}
.gnav ul li.g02 a{width:172px; left:174px;}
.gnav ul li.g03 a{width:144px; left:350px;}
.gnav ul li.g04 a{width:144px; left:498px;}
.gnav ul li.g05 a{width:198px; left:646px;}
.gnav ul li.g06 a{width:100px; left:848px;}
/*
.gnav ul li.b01 a{width:102px; left:853px;}
.gnav ul li.b02 a {width:236px; left:955px;}
*/
.gnav ul li.asnav a::before {
position: absolute;
bottom: 20px;
content: '';
display: block;
height: 2px;
width: 0;
background-color:#209184;
transition: 0.1s all;
}

.gnav ul li.asnav a::before,
.gnav ul li.asnav a.current::before {
left: 20%;
border-radius:0 3px 3px 0 / 0 3px 3px 0;
}

.gnav ul li.asnav a:hover::before,
.gnav ul li.asnav a.current::before {
width: 60%;
}

.gnav ul li.asbtn a:hover{
background-color: rgba(255,255,255,0.16);
}


/* ------------------------------
footer
-------------------------------- */

footer {
position:relative;
overflow: hidden;
background-color: #219185;
border-top:20px solid #77BEBA;
}

footer .row_inner{
height:450px;
}

/* fnav
-----------------*/

footer .row_inner .footnav .gnav ul {
overflow: hidden;
background:url(./img/element/footer_fnav.png) no-repeat left center;
display: block;
width:950px;
height:110px;
position: absolute;
left:306px;
top:35px;
}

footer .row_inner .footnav .gnav ul li a:hover{
background-color: rgba(33, 145, 133,0.3);
}



footer a.logo{
background:url(./img/element/footer_logo.png) no-repeat center center;
display: block;
width:185px;
height:45px;
position: absolute;
left:30px;
top:60px;
}

footer p{
color:#fff;
}

footer p em{
font-size: 18px;
font-weight: bold;
}

footer p.company{
position: absolute;
left:30px;
top:170px;
}

footer p.company em{
font-size: 18px;
font-weight: bold;
margin-right: 2em;
}


footer p.address{
position: absolute;
left:30px;
top:204px;
}

footer p.tel{
background: url(./img/element/footer_btn_to_tel.png) no-repeat center center;
display: block;
width:684px;
height:44px;
position: absolute;
left:30px;
top:270px;
}

footer p.tel a.btn_to_tel{
display: block;
width:280px;
height:44px;
position: absolute;
left:196px;
top:0;
}

footer p.tel a.btn_to_tel:hover{
background-color: rgba(33, 145, 132,0.3);
}

footer p.copy{
position: absolute;
left:30px;
top:386px;
font-size: 13px;
}

footer .banner.echo21{
background: url(./img/element/footer_banner_echo21.png) no-repeat center center;
display: block;
width:428px;
height:104px;
position: absolute;
left:810px;
top:190px;
}

footer .banner.jrpa{
background: url(./img/element/footer_banner_jrpa.png) no-repeat center center;
display: block;
width:428px;
height:104px;
position: absolute;
left:810px;
top:300px;
}





/* -------------------------------
Stcky
-------------------------------- */

#sticky {
background-color:rgba(255, 255, 255, 0.5);
width:100%;
height:128px;
position:fixed;
bottom:0;
margin:auto;
z-index:99999;
}

#sticky ul {
position: relative;
display:block;
height:128px;
width:1218px;
margin: 0 auto;
z-index:99999;
}

#sticky .row_inner ul li a {
position:absolute;
top:0;
height:128px;
display:block;
transition: 0.2s;
}

#sticky .row_inner ul li a:hover {
opacity:0.77;
}

#sticky .row_inner ul li a.sticky_inq{
background:url(./img/element/btn_sticky.png) left -200px top 0;
left:200px;
width:500px;
}

#sticky .row_inner ul li a.sticky_tel{
background:url(./img/element/btn_sticky.png) left -720px top 0;
left:720px;
top:0;
width:500px;
height:128px;
}

#sticky .row_inner ul li span.sticky_logo{
background:url(./img/element/btn_sticky.png) left 0 top 0;
position:absolute;
left:0;
top:0;
display:block;
width:210px;
height:128px;
}

/*--------------------------------
ScrollToTop
(2)180x180
-------------------------------- */

#pagetop {
display: none;
position: fixed;
bottom: 160px;
right: 40px;
font-size: 1em;
opacity: 0.8;
z-index:9999;
}

#pagetop a {
background:url(./img/element/btn_pagetop_square.png) no-repeat center center;
background-size:73px 73px;
width: 73px;
height: 73px;
display: block;
}

#pagetop a:hover {
opacity: 1;
}

/*------------------------
drawer
-------------------------*/

.drawer {
margin:0;
padding:0;
outline:none;
border:none;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
text-align:left;
text-decoration:none;
list-style:none;
}

.drawer .drawer_bg {
width:600px;
height:100%;
position:fixed;
z-index:999;
background-color:rgba(39, 39, 39, 0.9);
display:none;
top:0;
left:0;
}

.drawer a.drawer_tab {
display: block;
overflow: hidden;
padding:8px 12px;
border:none;
outline:none;
color:#fff;
z-index:99999;
cursor:pointer;
}
a.drawer_tab {
position: fixed;
right:80px;
top:26px;
}

.drawer a.drawer_tab .drawer_button{
display:block;
background:0 0;
width:56px;

letter-spacing:0.1em;
text-align:center;
color:#219184;
}


.drawer a.drawer_tab .drawer_button .drawer_bar{
display:block;
height:6px;
margin:6px 0;
transition:all .2s;
transform-origin:0 0;
background-color:#219184;
border-radius: 3px;
}

.drawer a.drawer_tab.active .drawer_button .drawer_bar{
width:40px;
}


.drawer a.drawer_tab.active .drawer_button .drawer_bar1{
transform:rotate(37deg);
margin-left:16px;
}
.drawer a.drawer_tab.active .drawer_button .drawer_bar2{
opacity:0
}
.drawer a.drawer_tab.active .drawer_button .drawer_bar3{
transform:rotate(-37deg);
margin-left:12px;
}

.drawer a.drawer_tab .drawer_text{
display: block;
font-size: 12px;
font-weight: bold;
line-height: 1.6em;
letter-spacing: 0.2em;
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
margin-top:20px;
height:130px;/*ie*/
}

.drawer a.drawer_tab .drawer_text_open{
display:block;
}

.drawer a.drawer_tab.active .drawer_text_open{
display:none;
}

.drawer a.drawer_tab .drawer_text_close{
display:none;
}

.drawer a.drawer_tab.active .drawer_text_close{
display:block;
}

.drawer .drawer_wrap{
width:100%;
min-width: 480px;
height:100%;
transition:all .2s;
position:fixed;
top:0;
right:0;
z-index:9999;
background:rgba(255, 255, 255, 0.97);
overflow: scroll;
}

.drawer .drawer_wrap{
transform:translate(100%);
opacity:1;
}

.drawer .drawer_wrap .inner{
background:url(./img/element/drawer_nav.png) no-repeat top 10px center;
width:400px;
height:812px;
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
margin:auto;
z-index:1000;
}

.drawer .drawer_wrap.open{
transform:translate(0);
display:block;
opacity:1;
}

.drawer_wrap a{
transition: 0.2s;
/*background-color: rgba(1,1,200,0.2);*/
}

.drawer_wrap a:hover{
background-color: rgba(255,255,255,0.2);
}


.drawer_wrap a.drawer_logo{
position: absolute;
display:block;
width:300px;
height:70px;
top:0;
left:50px;
}

.drawer_wrap ul.drawer_nav li a{
display: block;
width:300px;
height:55px;
position: absolute;
top:-1000px;
left:50px;
}
.drawer_wrap  ul.drawer_nav li.g01 a{ top:  110px; }
.drawer_wrap  ul.drawer_nav li.g02 a{ top:  190px; }
.drawer_wrap  ul.drawer_nav li.g03 a{ top:  270px; }
.drawer_wrap  ul.drawer_nav li.g04 a{ top:  360px; }
.drawer_wrap  ul.drawer_nav li.g05 a{ top:  440px; }
.drawer_wrap  ul.drawer_nav li.g06 a{ top:  520px; }


.drawer_wrap ul.drawer_nav li.b01 a{
display:block;
width:400px;
height:50px;
position: absolute;
top:610px;
left:0;
}

.drawer_wrap ul.drawer_nav li.b02 a{
display: block;
width:404px;
height:66px;
position: absolute;
top:696px;
left:0;
}

/*
------------------------
------------------------
------------------------
*/


/*------------------------
ast_link(UNIT)
-------------------------*/


#ast_link {
overflow: hidden;
display: block;
position: relative;
}

#ast_link h3{
background:url(./img/element/ast_link_tit.png) no-repeat center center #9FA0A0;
overflow: hidden;
display: block;
height: 128px;
position: relative;
margin:0 auto;
}

#ast_link .ast_link_bg {
background:url(./img/element/ast_link_bg.png) no-repeat center bottom #B6B6B6;
overflow: hidden;
display: block;
height: 600px;
position: relative;
margin:0 auto;
}

#ast_link  ul{
background:url(./img/element/ast_link_nav.png) no-repeat center center;
display: block;
width:1202px;
height: 506px;
position: relative;
margin:0 auto;
}

#ast_link  ul li{
overflow: hidden;
}

#ast_link  ul li a{
display: block;
width:1px;
height:1px;
position: absolute;
}
#ast_link  ul li a:hover{
background-color: rgba(182,182,182,0.3);
}

#ast_link  ul li.li01 a.a01{ width:320px; height:166px;  top: 20px; left:41px;}
#ast_link  ul li.li01 a.a02{ width:320px; height: 76px;  top:226px; left:41px;}
#ast_link  ul li.li01 a.a03{ width:320px; height: 76px;  top:326px; left:41px;}
#ast_link  ul li.li01 a.a04{ width:320px; height: 76px;  top:425px; left:41px;}

#ast_link  ul li.li02 a.a01{ width:320px; height:170px;  top:226px; left:442px;}
#ast_link  ul li.li02 a.a02{ width:320px; height: 76px;  top:425px; left:442px;}

#ast_link  ul li.li03 a.a01{ width:320px; height:166px;  top: 20px; left:842px;}
#ast_link  ul li.li03 a.a02{ width:320px; height:272px;  top:226px; left:842px;}

#ast_link .row_inner{
position: absolute;
left:980px;
bottom:20px;
}

#ast_link .boy{
position: absolute;
right:27px;
bottom:-57px;
}


/*------------------------
ast_contact(UNIT)
-------------------------*/


#ast_contact {
overflow: hidden;
display: block;
position: relative;
padding:50px 0 80px;
}

#ast_contact .row_inner{
}

#ast_contact h3{
background:url(./img/element/ast_contact_tit.png) no-repeat center center;
overflow: hidden;
display: block;
height: 121px;
position: relative;
margin:0 auto 30px;
}


#ast_contact  ul{
background:url(./img/element/ast_contact_nav.png) no-repeat center center;
display: block;
width:1024px;
height: 181px;
position: relative;
margin:0 auto;
}

#ast_contact  ul li{
overflow: hidden;
}

#ast_contact  ul li a{
display: block;
width:1px;
height:1px;
position: absolute;
}

#ast_contact  ul li a:hover{
background-color: rgba(255,255,255,0.3);
}

#ast_contact  ul li.li01 a{ width:420px; height:55px;  top: 74px; left: 24px;}
#ast_contact  ul li.li02 a{ width:426px; height: 76px; top: 62px; left:590px;}


/* uniheader gen
-------------------------------- */

h3.gen{
overflow: hidden;
display: block;
width:800px;
height:80px;
position: relative;
margin: 90px auto 50px;
}


/* .sepheader
-------------------------------- */

.sepheader{
overflow: hidden;
display: block;
min-height:300px;
position: relative;
margin:0 auto;
}

.sepheader h4{
display: block;
text-align:center;
font-size: 35px;
font-weight: 1000;
line-height: 1.7em;
color:#219184;
margin:280px auto 30px;
}

.sepheader p{
display: block;
width:570px;
text-align:center;
margin:0 auto 30px;
}



/* .bgtbl
-------------------------------- */

table.bgtbl{
width:100%;
position: relative;
margin: 0 auto;
}

table.bgtbl tr.border{
border-bottom: 1px dotted #A9D0CB;
}

table.bgtbl th,
table.bgtbl td {
vertical-align: middle;
padding:20px 30px;
}

table.bgtbl th{
width:130px;
border-right: 1px dotted #A9D0CB;
color:#249387;
font-weight: bold;
text-align-last: justify;
text-justify:inter-ideograph;
 }

table.bgtbl td em{
display: inline-block;
width:90px;
color:#249387;
}


/* extra
-------------------------------- */

 .whitebox{
display: block;
width:1220px;
position: relative;
padding:10px 20px;
margin:0 auto;
background-color: #fff;
}


/* .bgon #intro
-------------------------------- */

.bgon{
overflow: hidden;
display: block;
position: relative;
width:1920px;
left:-960px;
margin-top:0;
margin-left:50%;
}

.bgon .topbg{
overflow: hidden;
background-color: rgba(250, 247, 242, 1);
background:repeating-linear-gradient(90deg, #FAF7ee, #FAF7ee 20px, #FCF8F5 20px, #FCF8F5 45px);
display: block;
width:1920px;
min-height:500px;
position: absolute;
left:0;
top:0;
}

.bgon .btmbg{
overflow: hidden;
background: url(./img/element/bgon_bg.png) no-repeat center bottom #77BEBA;
display: block;
width:1920px;
min-height:120px;
position: absolute;
left:0;
}

.bgon .btmbg .cloud{
overflow: hidden;
display: block;
width:160px;
height:100px;
position: absolute;
}
.bgon .btmbg .cloud.cloud01{ background: url(./img/element/bgon_cloud01.png) no-repeat center center; }
.bgon .btmbg .cloud.cloud02{ background: url(./img/element/bgon_cloud02.png) no-repeat center center; }
.bgon .btmbg .cloud.cloud03{ background: url(./img/element/bgon_cloud03.png) no-repeat center center; }
.bgon .btmbg .cloud.cloud04{ background: url(./img/element/bgon_cloud04.png) no-repeat center center; }


.bgon .row_inner .card{
overflow: hidden;
display: block;
width:1220px;
position:relative;
padding:0;
margin:0 auto 0;
text-align: left;
}

.bgon .row_inner .card .topcard{
overflow: hidden;
display: block;
width:1220px;
min-height:500px;
position:relative;
padding:0;
margin:20px auto 0;
text-align: left;
}

.bgon .card .topcard h3 {
position: relative;
display: block;
width:100px;
height:30px;
margin-top:70px;
margin-bottom: 20px;
}

.bgon .card .topcard h4{
font-size: 35px;
font-weight: 1000;
text-align: left;
line-height: 1.6em;
margin-bottom: 30px;
color:#3D9E91;
}

.bgon .card .topcard p{
display: block;
width:610px;

margin-bottom:30px;
line-height: 2em;
letter-spacing: 0.01em;
}

.bgon .card .topcard .pic{
display: block;
width:600px;
height:600px;
position: absolute;
top:30px;
right:0;
}

.bgon .card ul{
display: block;
width:1220px;
margin:20px auto;
}


.bgon .card ul li{
display: inline-block;
position: relative;
padding:40px 50px 40px;
}

.bgon .card ul li.card_left {float:left; }
.bgon .card ul li.card_right{float:right;}

.bgon .card ul li.card_twin{
background: url(./img/element/intro_li_card_twin_bg_top.png) no-repeat center top;
width:600px;
min-height:200px;
position: relative;
margin-bottom:50px;
}

.bgon .card ul li.card_twin::after{
overflow: hidden;
content:"";
background: url(./img/element/intro_li_card_twin_bg_btm.png) no-repeat center top;
display: block;
width:600px;
height:30px;
position: absolute;
left:0;
bottom:-30px;
}


.bgon .card ul li.card_single{
background: url(./img/element/intro_li_card_single_bg_top.png) no-repeat center top;
width:1220px;
min-height:200px;
position: relative;
margin-bottom:50px;
}


.bgon .card ul li.card_single::after{
overflow: hidden;
content:"";
background: url(./img/element/intro_li_card_single_bg_btm.png) no-repeat center top;
display: block;
width:1220px;
height:30px;
position: absolute;
left:0;
bottom:-30px;
}

.bgon .card ul li.card_plain_single{
overflow: hidden;
width:1200px;
min-height:60px;
position: relative;
background-color: #fff;
outline:1px solid #E5F1EF;
outline-offset: -10px;
margin-top:30px;
margin-bottom:50px;
}

.bgon .card ul li h4{
font-size: 25px;
font-weight: bold;
text-align: center;
line-height: 1.7em;
margin-bottom:10px;
color:#249387;
}

.bgon .card ul li h5{
font-size: 25px;
font-weight: bold;
text-align: center;
line-height: 1.7em;
margin-bottom:10px;
color:#249387;
}

.bgon .card ul li p{
text-align: justify;
}

.bgon#means{
background-color: #f7f7f7;
}

/* (.flow ) #workflow
-------------------------------- */

.flow{
overflow: hidden;
display: block;
position: relative;
margin:0 auto;
}

#workflow.flow {
overflow: hidden;
width:1201px;
margin: 0 auto 50px;
}

.flow table {
position: relative;
margin:0 auto 40px;
}

.flow table::after {
content:"";
background:url(./img/element/flow_item_after.png) no-repeat center center;
display: inline-block;
width:20px;
height:20px;
position: absolute;
bottom:-30px;
left: 0;
right: 0;
margin:auto;
}
#workflow.flow table.last_item::after{
display: none;
}

.flow table.item th,
.flow table.item td{
padding:15px 30px;
vertical-align: middle;
}

.flow table.item th{
width:390px;
font-size:25px;
font-weight: 400;
color: #fff;
text-align: left;
background-color: #219185;
border-radius: 20px 0px 0px 20px / 20px 0px 0px 20px;
}
.flow table.item th em{
font-weight: 900;
}

.flow table.item td{
width:810px;
background-color: #E4F2F2;
border-radius: 0px 20px 20px 0px / 0px 20px 20px 0px;
}

.flow table.item_minor th{
width:470px;
}

.flow table.item_minor td{
width:730px;
}

.flow table.item td ul.infobox  {
position:relative;
display: block;
width:700px;
height:71px;
margin-top:10px;
}

.flow table.item td .infobox li a.btn_to_tel {
background:url(./img/element/infobox_tel.png) no-repeat center center;
display: inline-block;
width:300px;
height:71px;
position: relative;
float:left;
}
.flow table.item td .infobox li a.btn_to_form {
background:url(./img/element/infobox_form.png) no-repeat center center;
display: inline-block;
width:382px;
height:71px;
position: relative;
float:right;
}

.flow .tbl_twin{
overflow: hidden;
width:1200px;
margin:0 auto;
}
.flow .tbl_twin table {
width:580px;
}

.tbl_twin table th{
padding:15px 30px!important;
border-radius: 20px 20px 0px 0px / 20px 20px 0px 0px!important;
}

.flow .tbl_twin table td{
padding:15px 30px 30px!important;
border-radius: 0px 0px 20px 20px / 0px 0px 20px 20px!important;
}

.flow .tbl_twin table.item_left { float: left;}
.flow .tbl_twin table.item_right { float: right;}

.flow table.pre_twin::after {
left: 280px!important;
margin:0;
}

.flow table.pre_twin::before {
content:"";
background:url(./img/element/flow_item_after.png) no-repeat center center;
display: inline-block;
width:20px;
height:20px;
position: absolute;
bottom:-30px;
left: 900px;
}

.flow table th b{
font-size:18px;
}


/*
#qa(faq) ===> style
-------------------------*/

#qa {
position: relative;
overflow: hidden;
padding-top:0;
padding-bottom:40px;
margin:0 auto;
text-align:center;
background-color: #FAF7F2;
}

#qa h3.gen {
position: relative;
background:url(./img/element/qa_tit.png) no-repeat center center;
display: block;
width:800px;
height:80px;
margin:60px auto 40px;
}

#qa dl{
width:1240px;
margin:0 auto 70px;
}

#qa dt{
overflow: hidden;
position: relative;
display:block;
width:1240px;
cursor:pointer;
background-color:#fff;
margin-top:20px;
box-shadow: 0px 0 2px rgba(120,120,120,0.1);
}

#qa dt span{
overflow: hidden;
display:block;
padding:22px 60px 22px 20px;
color:#219184;
line-height:1.3em;
font-size:18px;
font-weight: bold;
text-align: left;
border-bottom: 1px solid #C9E1E1;
margin:0 10px 10px 10px;
}


#qa dt::after{
display:block;
content:"";
background:url(./img/element/qa_btn_open.png) no-repeat center center;
width:30px;
height:30px;
cursor:pointer;
position:absolute;
top:0;
bottom:0;
right:20px;
margin:auto;
transition: 0.2s;
}

#qa dd{
position: relative;
display:none;
overflow: hidden;
width:1240px;
padding: 22px 40px;
line-height:1.6;
margin-bottom:18px;
background-color:#fff;
box-shadow: 0px 2px 2px rgba(130,130,130,0.1);
}

#qa dd p{
text-align: left!important;
}

#qa dd a.close{
display:block;
background:url(./img/element/qa_btn_close.png) no-repeat;
width:136px;
height:41px;
cursor:pointer;
margin:20px auto 0;
transition: 0.2s;
}

