@charset 'utf-8';

/* **********************************************************************
 *
 *       Title:   sp_block.css
 *
 ********************************************************************** */


/* トップページ
======================================================= */

/* 見出し
-------------------------------------------- */
#top h2{
    position: relative;
    width: 90%;
    margin: 0 auto 32px;
    padding: 0 0 33px;
    font-size: 1.8rem;
}

#top h2:after{
    content:"";
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 24px;
    height: 2px;
    background: #23AB38;
}

/* メインビジュアル
-------------------------------------------- */
#mainVisual img{
    width: 100%;
    height: auto;
}

#mainVisual .bxslider{
    display: none;
}

#mainVisual .bx-wrapper .bxslider{
    display: block;
}

#mainVisual .bx-wrapper .bx-prev {
    z-index: 5;
    left: 9px;
    width: 30px;
    height: 30px;
    background: #fff url(../img/arw_main_prev.png) no-repeat 50% 50%;
    background-size: 4.5px auto;
    border-radius: 100%;
    box-shadow: 0 0px 20px 0px rgba(34,171,55,.2);
}

#mainVisual .bx-wrapper .bx-next {
    z-index: 5;
    right: 9px;
    width: 30px;
    height: 30px;
    background: #fff url(../img/arw_main_next.png) no-repeat 50% 50%;
    background-size: 4.5px auto;
    border-radius: 100%;
    box-shadow: 0 0px 20px 0px rgba(34,171,55,.2);
}

#mainVisual .bx-wrapper .bx-pager,
#mainVisual .bx-wrapper .bx-controls-auto {
    position: absolute;
    z-index: 5;
    bottom: -3px;
    width: 100%;
}

#mainVisual .bx-wrapper .bx-pager.bx-default-pager a {
    background: #fff;
    text-indent: -9999px;
    display: block;
    width: 8px;
    height: 8px;
    margin: 0 5px;
    outline: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #22ab37;
}

#mainVisual .bx-wrapper .bx-pager.bx-default-pager a:hover,
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #22ab37;
}

/* slide01 */
.slide01{
    display: flex;
    align-items: center;
    height: 123.75vw;
    background: #d9edd7;
    padding: 0 0 3px;
    padding-bottom: 0.9375vw;
    box-sizing: border-box;
}

.slide01 .inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 93.75%;
    margin: 0 auto -10px;
    margin-bottom: -3.125vw;
}

.slide01 .inner a{
    width: 48.3%;
    margin: 0 0 10px;
    margin-bottom: 3.125vw;
}

.slide01 .inner a img {
    width: 100%;
    height: auto;
    box-shadow: 0px 0px 20px 0px rgba(34, 171, 55, 0.16);
    transition: transform 0.2s linear;
}

.slide01 .inner a:hover img {
    transform: scale(1.05);
}

/* ピックアップトピックス
-------------------------------------------- */
#wrapper .bx-wrapper .bx-viewport {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 0;
    left: 0;
    background: none;
}

#sliderBox{
    position: relative;
    width: 100%;
    overflow: hidden;
    margin: 0 0 64px;
    padding: 0 0 93px;
}
#top #sliderBox h2{
    padding: 0 0 13px;
}
#sliderBox:after{
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 36px;
    width: 100%;
    height: 369px;
    background: #daedd7 url(../img/bg_top_pickup.png) 0 100% no-repeat;
    background-size: 100% auto;
}

#sliderBox .bx-wrapper .bx-viewport {
    overflow: visible !important;
}

ul#pickup{
    display: none;
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.bx-wrapper ul#pickup{
    display: flex;
}

ul#pickup > li {
    opacity: 0.8;
    transition: opacity 0.3s;
}

ul#pickup > li.active {
    opacity: 1;
}

ul#pickup li a{
    display: block;
    color: #181818;
    background: #fff;
    text-decoration: none;
    height: 100%;
    padding-bottom: 0;
    /*padding-bottom: 29px;*/
    box-sizing: border-box;
}

ul#pickup li img{
    width: 252px;
    height: auto;
}

ul#pickup li .tit{
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0 0 22px;
}

ul#pickup li .content{
    padding: 15px 6%;
}

ul#pickup li ul.cate{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -9px;
    padding: 0;
    list-style-type: none;
}

ul#pickup li ul.cate li{
    display: inline-block;
    text-decoration: none;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 0 0 9px;
    padding: 3px 10px 0;
    background: #017d89;
    color: #fff;
    text-align: center;
    border-radius: 12px;
    box-sizing: border-box;
}

ul#pickup li ul.cate li.event{
    background: #7dc061;
}

ul#pickup li ul.cate li.shop,
ul#pickup li ul.cate li.store{
    background: #7dc061;
}

ul#pickup li ul.cate li.recruit{
    background: #81c9d8;
}

ul#pickup li ul.cate li.other{
    background: #017d89;
}

#sliderBox .bx-wrapper .bx-prev {
    z-index: 5;
    left: -44px;
    width: 48px;
    height: 48px;
    background: #fff url(../img/arw_prev.png) no-repeat 50% 50%;
    background-size: 16px;
    border-radius: 100%;
    box-shadow: 0 0px 20px 0px rgba(34,171,55,.2);
}

#sliderBox .bx-wrapper .bx-next {
    z-index: 5;
    right: -44px;
    width: 48px;
    height: 48px;
    background: #fff url(../img/arw.png) no-repeat 50% 50%;
    background-size: 16px;
    border-radius: 100%;
    box-shadow: 0 0px 20px 0px rgba(34,171,55,.2);
}

#sliderBox .bx-controls-auto{
    display: none!important;
}

#sliderBox .btn_area{
    position: absolute;
    z-index: 1;
    left: 5%;
    bottom: 0;
    width: 90%;
}

#sliderBox .btn_area a{
    width: 100%;
    text-align: center;
    padding-top: 17px;
    padding-bottom: 16px;
    box-sizing: border-box;
}


/* ニュースリリース
-------------------------------------------- */
.top_news{
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding: 0 0 64px;
}

#top .top_news h2{
    font-size: 1.6rem;
}

.top_news .box_colum_btn{
    position: absolute;
    z-index: 1;
    right: 0;
    top: 0;
}

.top_news .box_colum_btn a {
    background: #fff;
    color: #181818;
    border: 1px solid #eee;
    font-weight: bold;
}

.top_news .box_colum_btn a:after {
    background: url(../img/arw.png) 0 0 no-repeat;
    background-size: 12px auto;
}

/* ニュースリリース一覧
-------------------------------------------- */

.top_news .oshirase .tabMenu{
    display: flex;
    width: 100%;
    margin: 0 0 7px;
    padding: 0;
    list-style-type: none;
    border-bottom: 2px solid #23ab37;
}

.top_news .oshirase .tabMenu li{
    width: 20%;
    border-left: 2px solid #fff;
    box-sizing: border-box;
}

.top_news .oshirase .tabMenu li:first-child{
    border-left: 0;
}

.top_news .oshirase .tabMenu .tab{
    display: block;
    text-decoration: none;
    font-size: 1.0rem;
    line-height: 1.6;
    text-align: center;
    color: #181818;
    background: #eee;
    padding: 6px 0;
    outline: none;
}

.top_news .oshirase .tabMenu .tab.on{
    color: #fff;
    background: #23ab37;
}

.top_news .oshirase .newslist ul{
    display: none;
    height: 300px;
    overflow: auto;
    margin: 0;
    padding: 0;
    list-style-type: none;
    border-top: 1px solid #f0f0f0;
    font-size: 1.4rem;
}
.top_news .oshirase .newslist ul#newsTab01 {
    display: block;
}
.top_news .oshirase .newslist ul li{
    border-bottom: 1px solid #f0f0f0;
    padding: 23px 24px 24px;
}

.top_news .oshirase .newslist ul span.date{
    float: left;
    width: 111px;
}

.top_news .oshirase .newslist ul span.cat{
    float: left;
    width: 152px;
    font-size: 1.2rem;
    margin: 0 33px 0 0;
    padding: 3px 10px 0;
    background: #017d89;
    color: #fff;
    text-align: center;
    border-radius: 12px;
    box-sizing: border-box;
}

.top_news .oshirase .newslist ul span.cat.event{
    background: #7dc061;
}

.top_news .oshirase .newslist ul span.cat.shop,
.top_news .oshirase .newslist ul span.cat.store{
    background: #7dc061;
}

.top_news .oshirase .newslist ul span.cat.recruit{
    background: #81c9d8;
}

.top_news .oshirase .newslist ul span..cat.pickup{
    background: #79a0cf;
}

.top_news .oshirase .newslist ul span.cat.other{
    background: #017d89;
}

.top_news .oshirase .newslist ul span.title{
    display: block;
    clear: both;
    padding: 10px 0 0;
}

.top_news .oshirase .newslist ul a{
    text-decoration: none;
    color: #181818;
}

.top_news .oshirase .newslist ul a:hover{
    text-decoration: underline;
}



/* MENU
-------------------------------------------- */
.top_menu{
    padding: 63px 0;
    background: url(../../_img/bg_sp_menu.png) 50% 50% no-repeat;
    background-size: cover;
}

.top_menu .block_in{
    width: 90%;
    margin: 0 auto;
}

.top_menu .menu_list a{
    position: relative;
    display: block;
    margin: 0 0 15px;
    text-decoration: none;
}

.top_menu .menu_list a .img img{
    width: 100%;
    height: auto;
}

.top_menu .menu_list a .tit{
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 14px 25px 15px;
    font-size: 14px;
    font-size: 1.4rem;
    color: #fff;
    background: rgba( 24, 24, 24, 0.4 );
    box-sizing: border-box;
}

.top_menu .menu_list a .tit:before{
    content: "";
    position: absolute;
    z-index: 1;
    right: 54px;
    bottom: 0;
    width: 1px;
    height: 54px;
    background: #eee;
    opacity: 0.3;
}

.top_menu .menu_list a .tit:after{
    content: "";
    position: absolute;
    z-index: 1;
    right: 19px;
    bottom: 19px;
    width: 16px;
    height: 16px;
    background: url(../img/arw_right_wht.png) 0 0 no-repeat;
    background-size: 16px;
}

.top_menu .sub_menu_list a{
    display: block;
    width: 100%;
    background: #fff url(../img/arw.png) right 19px top 50% no-repeat;
    background-size: 16px;
    color: #181818;
    text-decoration: none;
    margin: 0 0 15px;
    padding: 9px 52px 15px 16px;
    box-sizing: border-box;
}

.top_menu .sub_menu_list a .btn_in{
    padding: 0 30px 0 0;
    border-right: 1px solid #f0f0f0;
}

.top_menu .sub_menu_list a p{
    font-size: 1.2rem;
    line-height: 1.5;
}

.top_menu .sub_menu_list a .tit{
    font-weight: bold;
    margin: 0 0 7px;
    padding: 8px 0 8px 52px;
    font-size: 1.4rem;
    line-height: 1.8;
}

.top_menu .sub_menu_list a.btn_shop .btn_in .tit{
    background: url(../img/ico_shop.png) 0 50% no-repeat;
    background-size: 40px;
}

.top_menu .sub_menu_list a.btn_note .btn_in .tit{
    background: url(../img/ico_note.png) 0 50% no-repeat;
    background-size: 40px;
}


/* 店舗物件募集 /bukken/
======================================================= */

/* Color Box
-------------------------------------------- */
.gbox,
.wakuBox {
    width: auto;
    margin: 10px 0 15px;
    padding: 15px 15px 10px;
    overflow: hidden;
    position: relative;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    behavior: url("ie_css3/PIE.htc"); /* IE */
}
.wakuBox { border: 1px solid #ccc; }
.gbox { background-color: #f6f6f7; }
.gbox.dark { background-color: #ededed; }
.gbox.waku { border: 1px solid #ccc; }
.gbox.waku2 { border: 1px solid #ccc;color: #21a539;background-color: #ffffff;font-size: 130%; }

.gbox.straight,
.wakuBox.straight {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
    -ms-border-radius: 0;
    border-radius: 0;
    behavior: url("ie_css3/PIE.htc"); /* IE */
}

p.gbox,p.wakuBox { padding-top: 10px; }
p.gbox img:first-of-type,p.wakuBox img:first-of-type { padding-top: 5px; }
div.gbox p,div.wakuBox p { margin-top: 0; }
div.gbox ul,div.wakuBox ul { margin-left: 20px; margin-top: 0; margin-bottom: 5px; }
div.gbox ul.list,div.wakuBox ul.list { margin-left: 0; }
div.gbox ol,div.wakuBox ol { margin-top: 0; margin-bottom: 5px; }
div.gbox p.areaL,div.wakuBox p.areaL { margin: 0 15px 5px 0; }

/*--- info gbox --- */
.infoGbox {
    margin: 10px 0;
}

.infoGbox .gbox.dark { margin-bottom: -10px; }


/* 会社情報
======================================================= */

.message {
    border: 8px solid #f8f8f8;
    padding: 20px;
    margin: 0 0 40px;
}
.message p {
    margin: 0 0 20px;
}
.message p.signature {
    text-align: right;
    font-weight: bold;
    margin: 0;
}
table.prof th,
table.prof td {
    display: block;
    width: 100%;
    box-sizing: border-box;
}
table.prof th {
    text-align: center;
    font-weight: bold !important;
}
table.prof th small {
    display: block;
    font-weight: normal;
}
table.prof th span {
    display: block;
    font-weight: normal;
}
table.prof dl {
    display: flex;
    flex-wrap: wrap;
}
table.prof dl dt {
    width: 140px;
}
table.prof dl dd {
    width: calc(100% - 140px);
}
.catemenu_s {
    margin: 0 0 50px;
}
.catemenu_s ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.catemenu_s ul li {
    margin: 0 0 10px;
}
.catemenu_s ul li a,
.catemenu_s ul li a:visited {
    width: 100%;
    height: 80px;
    display: block;
    text-decoration: none;
    font-weight: bold;
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0 0 20px;
    box-sizing: border-box;
    border: 1px solid #eaeaea;
    background: url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.catemenu_s ul li a:hover {
    background: #f5faf7 url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.cate_csr {
    background: #f5faf7;
    padding: 0px;
}
.cate_csr a,
.cate_csr a:visited {
    text-decoration: none;
    color: #333;
    transition: .2s;
}
.cate_csr a .img {
    margin: 0 40px 0 0;
}
.cate_csr a .txt {
    padding: 15px;
}
.cate_csr a .tit {
    font-size: 1.6rem;
    font-weight: bold;
    background: url(../img/arw.png) right 50% no-repeat;
    background-size: 16px auto;
}

.main h1.company {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main h1.company span {
    text-align: right;
    font-size: 1.1rem;
    font-weight: normal;
}
.main h1.company span a,
.main h1.company span a:visited {
    display: block;
    text-decoration: none;
    color: #555;
    background: #fff;
    padding: 5px 25px 5px 15px;
    border: 1px solid #eee;
    position: relative;
    transition: opacity 0.2s;
}
.main h1.company span a:after {
    content: "";
    width: 12px;
    height: 12px;
    background: url(../img/arw.png) 0 0 no-repeat;
    background-size: 12px auto;
    position: absolute;
    top: calc(50% - 6px);
    right: 10px;
}
.companyList.officer {
    overflow: hidden;
}
.companyList.officer dd .name {
    display: block;
    vertical-align: top;
}
.companyList.officer dd .txt {
    display: block;
    margin: 0;
    vertical-align: top;
}
.companyList.officer dt {
    clear: both;
    padding: 0;
    font-weight: bold;
}
.companyList.officer dd {
    margin: 0;
    padding: 0 0 0 0;
}
.companyList.officer small {
    display: block;
    line-height: 1.3;
}


/* Link list
-------------------------------------------- */
ul.linkList {
    width: 100%;
    height: 31px;
    margin: 20px 0;
    background: url(../image/linkList.png) 0 0 no-repeat;
    position: relative;
    font-weight: bold;
    list-style: none;
    padding: 0;
    box-sizing: border-box;
}

ul.linkList a, ul.linkList a:link, ul.linkList a:visited { text-decoration: none; }
ul.linkList a:hover, ul.linkList a:active { text-decoration: none; }

ul.linkList li.back,
ul.linkList li.next {
    float: left;
    width: 48%;
    margin: 0;
}
ul.linkList li.next {
    float: right;
}

ul.linkList li.back {
    text-align: left;
    color: #999;
}

ul.linkList li.next {
    text-align: right;
    color: #fff;
}

ul.linkList li.back a,
ul.linkList li.next a {
    display: block;
    background: #fff;
    border: 1px solid #eaeaea;
    padding: 13px;
}

ul.linkList li.back a {
    padding-left: 50px;
    padding-right: 20px;
    background: #fff url(../img/arw_prev.png) 16px 50% no-repeat;
    background-size: 16px auto;
}

ul.linkList li.next a {
    padding-left: 20px;
    padding-right: 50px;
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
}

ul.linkList li.back a:hover, ul.linkList li.next a:hover { opacity: 0.8; }
ul.linkList li.back a, ul.linkList li.back a:link, ul.linkList li.back a:visited { color: #181818; }
ul.linkList li.back a:hover, ul.linkList li.back a:active { color: #181818; }
ul.linkList li.next a, ul.linkList li.next a:link, ul.linkList li.next a:visited { color: #181818; }
ul.linkList li.next a:hover, ul.linkList li.next a:active { color: #181818; }

.gmap {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}
.gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

dl.companyList_s {
    margin: 0;
    padding: 0;
}
dl.companyList_s dt {
    float: left;
    margin-bottom: -2.1em;
    padding: 5px 0;
    width: 130px;
    /*white-space: nowrap;*/
}
dl.companyList_s dt { width: 45px; }

dl.companyList_s dd {
    margin: 0;
    padding: 5px 0 5px 140px;
}
dl.companyList_s dd { padding-left: 55px; }

.campany-table {
    width: 100%;
    display: table;
    margin: 0 0 8px;
    padding: 6px;
    background-color: #f6f6f7;
    border: 1px solid #ccc;
    box-sizing: border-box;
}
.campany-table a {
    color: #333;
}
.campany-table .campany-table-sub {
    width: 30%;
    display: table-cell;
    vertical-align: middle;
}
.campany-table .campany-table-sub h4 {
    margin: 0 0 0 25px;
    font-size: 15px;
}
.campany-table .campany-table-txt {
    width: 70%;
    display: table-cell;
    vertical-align: middle;
}
.campany-table .campany-table-txt ol {
    margin: 0;
}
.campany-table .campany-table-txt ol li {
    margin: 0 0 6px;
}
.campany-table .campany-table-txt .icon {
    display: inline-block;
    margin: 0 10px 0 0;
    vertical-align: -20%;
}
.campany-table .campany-table-txt .icon img {
    width: 16px;
}
.pt20 {
    padding-top: 20px;
}
hr {
    width: auto;
    height: 0;
    margin: 0;
    padding: 0;
    border: none;
    display: block;
    visibility: hidden;
}


/* 沿革 */

dl.history_item {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 3px 0;
}
dl.history_item .cat {
    width: 100px;
    text-align: center;
    background: #e1f6e5;
    padding: 3px 0;
    color: #21ab37;
    font-size: 1.1rem;
    margin: 0 20px 0 0;
}
dl.history_item .cat.csr {
    color: #1ab17d;
    background: #d0f6e9;
}
dl.history_item .cat.business {
    color: #5da42b;
    background: #e3f8d4;
}
dl.history_item .month {
    width: 40px;
    margin: 0 20px 0 0;
    padding: 3px 0;
}
dl.history_item dd {
    width: 100%;
    padding: 3px 0;
}


/* 理念 */
.mission {
    background: url(../img/sp/bg_mission.jpg) 0 0 no-repeat;
    background-size: cover;
    padding: 20px 20px 60%;
}
.mission p {
    font-size: 1.6rem;
    font-weight: bold;
}
.mission .tit {
    font-family: 'Lato', serif;
    color: #22ab37;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    position: relative;
    padding: 0 0 0 24px;
}
.mission .tit:before {
    content: "";
    position: absolute;
    top: 48%;
    left: 0px;
    width: 18px;
    height: 2px;
    background-color:#23ab38;
}
.philosophy {
    border: 8px solid #f8f8f8;
    width: 100%;
    margin: 0 auto;
    padding: 10px 20px;
    box-sizing: border-box;
}
.philosophy ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    font-size: 1.6rem;
}
.philosophy ul li {
    margin: 10px 0;
}

/* グループ */
ul.grouplist {
    list-style-type: none;
    margin: 0;
    padding: 20px 20px 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    background: #f8f8f8;
}
ul.grouplist li {
    width: 100%;
    border: 1px solid #ddd;
    background: #fff;
    margin: 0 0 10px 0;
    padding: 10px;
    box-sizing: border-box;
}
ul.grouplist li a {
    display: block;
    background: url(../img/ico_blank.png) 100% .1em no-repeat;
    background-size: 15px auto;
    padding: 0 30px 0 0;
}
.main h3.g01,
.main h3.g02,
.main h3.g03,
.main h3.g04 {
    padding: 0;
}
.main h3.g01:before {
    content: "";
    position: static;
    background: url(../img/ico_haitiyaku.png) 0 0% no-repeat;
    background-size: 40px auto;
    padding: 10px 0 10px 50px;
}
.main h3.g02:before {
    content: "";
    position: static;
    background: url(../img/ico_seims.png) 0 0% no-repeat;
    background-size: 50px auto;
    padding: 10px 0 10px 60px;
}
.main h3.g03:before {
    content: "";
    position: static;
    background: url(../img/ico_medicine.png) 0 0% no-repeat;
    background-size: 40px auto;
    padding: 13px 0 13px 50px;
}
.main h3.g04:before {
    content: "";
    position: static;
    background: url(../img/ico_other.png) 0 0% no-repeat;
    padding: 16px 0 16px 40px;
}


/* 事業内容
======================================================= */

.cate_intro {
    background: #f9f9f9;
    padding: 0 0 0 0;
}
.cate_intro p {
    font-size: 1.6rem;
    padding: 15px;
}
.cate_intro p br {
    display: none;
}
.cate_intro p span {
    color: #22ab37;
    font-weight: bold;
}
.cate_intro.idea {
    background: #f9f9f9 url(../../company/image/img_intro.jpg) right bottom no-repeat;
    background-size: 100% auto;
    /*text-align: center;*/
    padding: 0 0 90px;
}
.catemenu_box {
    border: 1px solid #eee;
    margin: 0 0 30px;
}

.catemenu_box .inner {
    padding: 15px;
}
.catemenu_box p.tit {
    font-size: 1.6rem;
    font-weight: bold;
    background: url(../img/arw.png) right .2em no-repeat;
    background-size: 16px auto;
}
.catemenu_box p.tit.nolink {
    background: none;
}
.catemenu_box p.tit.pdf {
    padding: 0;
    background: url(../img/ico_pdf.png) right .2em no-repeat;
    background-size: 16px auto;
}
.catemenu_box p.tit.blank {
    padding: 0;
    background: url(../img/ico_blank.png) right .2em no-repeat;
    background-size: 16px auto;
}
.catemenu_box a,
.catemenu_box a:visited {
    color: #333;
    text-decoration: none;
    transition: .2s;
}
.catemenu_box a:hover {
    opacity: .6;
    transition: .2s;
}

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

.catemenu_box .inner .btn {
    margin: 20px auto 0;
}
.catemenu_box .inner .btn a {
    display: block;
    width: 100%;
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    padding: 15px 0;
    color: #fff;
    transition: .2s;
}
.catemenu_box .inner .btn a:hover {
    background: #4bc85e url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}

/* 調剤 */
.search_dispensing {
    background: #23ab38;
    padding: 20px;
    color: #fff;
}
.search_dispensing .tit {
    font-size: 2.4rem;
    font-weight: bold;
    background: url(../img/ico_search_dispensing.png) 0 50% no-repeat;
    background-size: 80px auto;
    margin: 0 20px 0 0;
    padding: 5px 0 5px 90px;
}
.search_dispensing .button {
    margin: 0 0 0 auto;
}
.search_dispensing .button a,
.search_dispensing .button a:visited {
    display: block;
    width: 100%;
    box-sizing: border-box;
    background: #fff url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    text-align: left;
    color: #333;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    text-decoration: none;
    padding: 15px 20px;
    transition: .2s;
}
.search_dispensing .button a:hover {
    background: #e2f6ea url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;   
}


/* カスタマーサービスセンター
======================================================= */

.csc_tel {
    background: #f8f8f8;
    padding: 0 0 20px;
    margin: 0 0 50px;
}

.csc_tel .tit {
    background: #22ab37;
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 10px;
}
.csc_tel .tit:before {
    content: "";
    background: url(../img/ico_tel.png) 0 0 no-repeat;
    background-size: 49px auto;
    padding: 12px 49px 12px 0;
}
.wrapper section .block .csc_tel .inner {
    /*background: #fff;
    padding: 15px 20px;
    margin: 15px 15px 0;*/
    margin: 0;
}
.csc_tel .inner {
    padding: 20px;
}
.csc_tel .inner ul {
    list-style-type: none;
    margin: 0 0 0px;
    padding: 0;

}
.csc_tel .inner ul li {
    width: 100%;
    text-align: left;
    border-bottom: 1px solid #ddd;
    padding: 0 0 0 0;
    margin: 0 0 10px;
    position: relative;
}
.csc_tel .inner ul li:first-child:before {
    content: "";
    position: absolute;
    top: -5px;
    left: 0;
    background: url(../img/ico_haitiyaku.png) 0 0 no-repeat;
    background-size: 31px auto;
    padding: 20px 0px 20px 35px;
}
.csc_tel .inner ul li:nth-child(2):before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/ico_seims.png) 0 0 no-repeat;
    background-size: 34px auto;
    padding: 20px 0px 20px 35px;
}
.csc_tel .inner ul li:nth-child(3):before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/ico_seims_appli.png) 0 0 no-repeat;
    background-size: 30px auto;
    padding: 20px 0px 20px 35px;
}
.csc_tel .inner ul li:last-child {
    border: none;
}
.csc_tel .inner ul li:last-child:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/ico_medicine.png) 0 0 no-repeat;
    background-size: 31px auto;
    padding: 20px 0px 20px 35px;
}
.csc_tel .inner p.stit {
    font-size: 1.6rem;
    line-height: 1.3;
    padding: 0 0 0 40px;
}
.csc_tel .inner p.stit span {
    color: #22ab37;
    font-weight: bold;
}
.csc_tel .inner ul li a,
.csc_tel .inner ul li a:visited {
    display: block;
    font-family: 'Lato', serif;
    font-size: 3.2rem;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    color: #333;
}
.csc_tel .inner p.time {
    background: #f5faf7;
    text-align: center;
    font-size: 1.4rem;
    padding: 5px 10px;
    height: auto;
}
.csc_form {
    width: 100%;
    margin: 0;
}
.csc_form a,
.csc_form a:visited {
    display: block;
    background: #1c8d2d url(../img/arw_right_wht.png) 97% 50% no-repeat;
    background-size: 16px auto;
    text-align: center;
    text-decoration: none;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: bold;
    padding: 15px;
    position: relative;
    transition: .2s; 
}
.csc_form a:hover {
    opacity: .6;
    transition: .2s;
}
.csc_form a:before {
    content: "";
    background: url(../img/ico_form.png) 0 50% no-repeat;
    background-size: 33px auto;
    padding: 12px 18px;
    position: absolute;
    top: 25%;
    left: 15px;
}

/* お問い合わせ */
.LV_validation_message{
    font-weight: bold;
    margin:0 0 0 5px;
}
.LV_valid {
    color: #fff;
}  
.LV_invalid {
    color: #c03;
}   
.LV_valid_field,
input.LV_valid_field:hover, 
input.LV_valid_field:active,
textarea.LV_valid_field:hover, 
textarea.LV_valid_field:active {
    border: 1px solid #c03;
}   
.LV_invalid_field, 
input.LV_invalid_field:hover, 
input.LV_invalid_field:active,
textarea.LV_invalid_field:hover, 
textarea.LV_invalid_field:active {
    border: 1px solid #c03;
}

.stepflow {
    display: table;
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
    font-size: 1.6rem;
    list-style-type: none;
    overflow: hidden;
}
.stepflow li {
    line-height: 1.3;
    position: relative;
    display: table-cell;
    width: 33%;
    padding: 12px 0 10px 0;
    text-align: center;
    color: #333;
    font-weight: bold;
    background: #eee;
    border-right: 2px solid #fff;
}
.stepflow li:last-child:before,
.stepflow li:last-child:after {
    display: none;
}
.stepflow li:before,
.stepflow li:after {
    position: absolute;
    width: 0;
    height: 0;
    margin: auto;
    content: '';
}
.stepflow li:before {
    z-index: 10;
    top: calc(50% - 8px);
    right: -.6em;
    border-width: 8px 0 8px .5em;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
}
.stepflow li:after {
    z-index: 10;
    top: calc(50% - 8px);
    right: -.5em;
    border-width: 8px 0 8px .5em;
    border-style: solid;
    border-color: transparent transparent transparent #eee;
}
.stepflow li.is-current {
    background: #23ab38;
    color: #fff;
}
.stepflow li.is-current:after {
    border-color: transparent transparent transparent #23ab38;
}
.stepflow li span {
    display: block;
    width: 60px;
    vertical-align: middle;
    font-size: 1.2rem;
    line-height: 1;
    font-family: 'Lato', serif;
    background: #23ab38;
    padding: 3px 10px 5px;
    margin: 0 auto 5px;
    border-radius: 10px;
    color: #fff;
}
.stepflow li.is-current span {
    background: #fff;
    color: #23ab38;
}
.contactform th,
.contactform td {
    display: block;
    width: 100%;
    box-sizing: border-box;
}
.contactform input[type='text'],
.contactform input[type='email'],
.contactform input[type='tel'],
.contactform input[type='url'],
.contactform textarea {
        width: 100%;
}
.contactform input#name_sei,
.contactform input#name_mei,
.contactform input#fname_sei,
.contactform input#fname_mei {
        width: 30%;
}
.contactform th span.required {
    float: right;
    color: #fff;
    font-size: 1.2rem;
    background: #e61717;
    padding: 2px 7px;    
}
.contactform input[type='text'],
.contactform input[type='email'],
.contactform input[type='tel'],
.contactform input[type='url'],
.contactform textarea,
.contactform select {
    box-sizing: border-box;
    font-size: 16px;
    font-size: 1.6rem;
    border: 1px solid #d5d5d5;
    padding: 10px;
}
.submit_btn {
    padding: 30px 0 0 0;
    text-align: center;
}
.submit_btn button.kakunin {
    position: relative;
    display: inline-block;
    text-decoration: none;
    background: #22ab37;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 16px 66px 16px 40px;
    border: none;
    transition: .2s;
}
.submit_btn input.kakunin {
    position: relative;
    display: inline-block;
    text-decoration: none;
    background: #22ab37;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 16px 40px 16px 40px;
    border: none;
    transition: .2s;
}
.submit_btn button.kakunin:after {
    content: "";
    width: 16px;
    height: 16px;
    background: url(../img/arw_right_wht.png) 0 0 no-repeat;
    background-size: 16px auto;
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
}
.submit_btn .kakunin:hover {
    opacity: .6;
    transition: .2s;
}
.submit_btn .cancel {
    border: none;
    padding: 10px 20px;
    background: #ddd;
}

/* 暮らしのお役にたつ健康情報 */
.health_list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.health_list li {
    width: 32%;
    border: 1px solid #eee;
    box-sizing: border-box;
    text-align: center;
    margin: 0 1.33% 5px 0;
}
.health_list li:nth-child(3n) {
    margin: 0 0 5px;
}
.health_list li a,
.health_list li a:visited {
    display: block;
    text-decoration: none;
    color: #333;
    padding: 10px;
    transition: .2s;
}
.health_list li a:hover {
    opacity: .6;
    transition: .2s;
}
.health_list li a p {
    margin: 10px 0 0 0;
    font-size: 1.3rem;
    font-weight: bold;
    background: url(../img/arw_down.png) right .5em no-repeat;
    background-size: 12px auto;
}
.health_content {
    background: #f5faf7;
    padding: 10px;
}
.health_content .tit {
    text-align: center;
    margin: 0 0 20px;
}
.health_content .tit p {
    font-size: 2.0rem;
    font-weight: bold;
}
.health_content .content {
    width: 100%;
}
.health_content .content_body {
    margin: 0 0 10px;
}
.health_content p.trigger {
    display: block;
    border: 1px solid #eee;
    background: #fff url(../img/ico_trigger_plus.png) 95% 50% no-repeat;
    background-size: 21px auto;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 15px 20px;
    cursor: pointer;
}
.health_content p.trigger.nolink {
    background: #fff;
}
.health_content p.trigger.active {
    border: 1px solid #22ab37;
    background: #22ab37 url(../img/ico_trigger_minus.png) 95% 50% no-repeat;
    background-size: 21px auto;
    color: #fff;
}
.health_content p.active.nolink {
    background: #22ab37;
}
.health_content .acc_show {
    display: none;
}
.health_content .acc_show ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.health_content .acc_show ul li {
    border: 1px solid #eee;
    border-top: none;
}
.health_content .acc_show ul li a,
.health_content .acc_show ul li a:visited {
    display: block;
    padding: 15px 20px;
    text-decoration: none;
    color: #333;
    background: #fff url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.health_content .acc_show ul li a:hover {
    background: #e2f6ea url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}

.ttl_health{
    background-color: #f5faf7;
    padding: 15px;
}

.ttl_health_inner{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
    padding: 15px 15px 15px 0;
}


.ttl_health_cat[class]{
    position: relative;
    border-right: 1px solid #efefef;
    text-align: center;
    flex-shrink: 0;
    -webkit-box-flex: 0;
           flex-grow: 0;
    flex-basis: 70px;
    max-width: 70px;
    background-repeat: no-repeat;
    background-size: 40px auto;
    background-position: center bottom;
    padding-bottom: 45px;
}

.ttl_health_cat[class] > *{
    font-weight: bold;
    font-size: 14px;
    font-size: 1.4rem;
}

.ttl_health_img{
    width: 46px;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
}

.ttl_health_headline[class]{
    color:#22ab37;
    font-size: 20px;
    font-size: 2rem;
    padding: 0 0 0 15px;
    margin: 0;
}

.ttl_health_headline[class]::before{
    display: none;
}

.ttl_health_breadcrumb[class] > *,
.ttl_health_breadcrumb[class]{
    font-size: 11px;
    font-size: 1.1rem;
    color: #aeaeae;
    width: 100%;
    text-align: right;
}

span.box_border{
    border: 1px solid #333;
    padding: 2px;
}

.tablebox p {
    text-align: center;
    margin: 0 0 20px 0;
}

/* 休暇のお知らせ */
.notification {
    border: 5px solid #ffe8e4;
    padding: 15px;
    color: #cc1d00;
    margin: 0 0 30px;
}
.notification .tit {
    font-weight: bold;
    font-size: 1.6rem;
    text-align: center;
}

/* お詫び */
.apology {
    background: #fff;
    padding: 30px 0;
}
.apology .inner {
    border: 5px solid #f5f5f5;
    padding: 15px;
}


/* 配置薬～おうちに置くすり～
======================================================= */

.catemenu_box_wide {
    width: 100%;
    border: 1px solid #ecf6f7;
    margin: 0 0 36px;
    background: #ecf6f7 url(../img/sp/bg_hm_benri.jpg) 50% bottom no-repeat;
    background-size: 100% auto;
    text-align: center;
}
.catemenu_box_wide a {
    display: block;
    padding: 30px 20px 100px;
    transition: .2s;
}

.hm_system {
    background: #f5faf7;
    padding: 20px 20px 5px;
}
.hm_system h2 {
    text-align: center;
    padding: 0;
    background: none;
}
.hm_system h2:before {
    content: "";
    position: static;
    background: none;
    height: 0;
}
.hm_system h2 span {
    color: #22ab37;
}
.hm_system ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.hm_system ul li {
    width: 100%;
    background: #fff;
    margin: 0 0 25px;
}
.hm_system ul li p {
    padding: 10px 15px;
}
.hm_system ul li p span {
    color: #22ab37;
    font-weight: bold;
}

.hm_system ul li img{
    width: 100%;
    height: auto;
}

h2.about_hm_system {
    background: #22ab37;
    color: #fff;
    text-align: center;
    padding: 10px;
    margin: 0 0 40px;
}
h2.about_hm_system:before {
    content: "";
    position: static;
    padding: 7px 0 7px 45px;
    width: 40px;
    height: 30px;
    background: url(../img/ico_haitiyaku.png) 0 0 no-repeat;
    background-size: 40px auto;
}
.hm_system_flow h3 {
    background: #f5faf7;
    padding: 12px 20px;
    font-size: 1.6rem;
    margin: 0 0 25px;
}
.hm_system_flow h3 span {
    display: block;
    font-size: 1.2rem;
    background: #22ab37;
    color: #fff;
    border-radius: 30px;
    padding: 5px 20px 3px;
    vertical-align: middle;
    margin: 0 0 0 0;
}
.hm_system_flow h3:before {
    content: "";
    background: none;
    height: 0;
    position: static;
}
.hm_system_flow .content {
    margin: 20px 0 0 0;
}
.hm_system_flow .content img {
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
}
.hm_system_flow .content .txt {
    width: 100%;
}
.hm_system_flow .content .txt dl {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #eee;
    padding: 0 0 20px;
    margin: 0 0 20px;
}
.hm_system_flow .content .txt dt {
    width: 58px;
    height: 58px;
    line-height: 58px;
    background: url(../img/bg_relief.png) 0 0 no-repeat;
    text-align: center;
    color: #fff;
    font-weight: bold;
}
.hm_system_flow .content .txt dd {
    width: calc(100% - 68px);
    font-size: 1.6rem;
}
.hm_system_flow .content .txt dd .attention {
    color: #1c8d2d;
    font-size: 1.4rem;
}
.hm_system_flow .content .txt dd .consul_counter {
    background: #f8f8f8;
    margin: 10px 0 0 0;
}
.hm_system_flow .content .txt dd .consul_counter .tit {
    background: #22ab37;
    color: #fff;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 5px 0;
}
.hm_system_flow .content .txt dd .consul_counter .tit:before {
    content: "";
    background: url(../img/ico_tel.png) 0 0 no-repeat;
    background-size: 40px auto;
    padding: 10px 45px 10px 0;
}
.hm_system_flow .content .txt dd .consul_counter .tit span {
    display: block;
    font-size: 1.2rem;
    font-weight: normal;
    margin: 0 0 0 0;
}
.hm_system_flow .content .txt dd .consul_counter .tel {
    padding: 0 10px 10px 10px;
    font-size: 1.0rem;
    text-align: center;
}
.hm_system_flow .content .txt dd .consul_counter .tel a,
.hm_system_flow .content .txt dd .consul_counter .tel a:visited {
    display: block;
    font-size: 2.8rem;
    font-family: 'Lato', serif;
    font-weight: bold;
    text-decoration: none;
    color: #333;
    margin: 0 0 0 0;
    cursor: default;
    pointer-events: none;
}
.hm_order {
    background: #f5faf7 url(../img/bg_hm_order.jpg) 0 0 no-repeat;
    padding: 40px 20px 20px;
}
.hm_order .order {
    width: 100%;
    background: #fff;
    padding: 30px 20px 20px;
    box-sizing: border-box;
    position: relative;
    margin: 0 0 30px;
}
.hm_order .order .tit {
    position: absolute;
    width: 240px;
    margin: 0 0 0 -120px;
    text-align: center;
    top: -20px;
    left: 50%;
}
.hm_order .order ul {
    list-style-type: none;
    margin: 15px 0 0 0;
    padding: 0;
}
.hm_order .order ul li {
    margin: 0 0 10px;
    position: relative;
}
.hm_order .order ul li span {
    width: 60px;
    position: absolute;
    top: -20px;
    left: -30px;
}
.hm_order .order ul li a,
.hm_order .order ul li a:visited {
    display: block;
    text-align: center;
    color: #fff;
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 12px 0;
}
.hm_order .search {
    width: 100%;
    text-align: center;
}
.hm_order .order .tit,
.hm_order .search .tit {
    font-size: 2.0rem;
    font-weight: bold;
}
.hm_order .search .btn {
    margin: 10px 0 0 0;
}
.hm_order .search .btn a,
.hm_order .search .btn a:visited {
    width: 100%;
    background: #fff url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    border: 1px solid #eaeaea;
    color: #333;
    box-sizing: border-box;
    font-weight: bold;
    transition: .2s;
}
.hm_order .search .btn a:before {
    content: "";
    background: url(../img/ico_search_l.png) 0 0 no-repeat;
    background-size: 24px auto;
    padding: 5px 32px 5px 0;    
}
.hm_order .search .btn a:hover {
    background: #e2f6ea url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}


/* 配置薬～おうちに置くすり～ 今月のおすすめ商品
-------------------------------------------- */
ul.recommend_list{
    display: flex;
    flex-wrap: wrap;
    width: 105%;
    margin: 0 0 10px -5%;
    padding: 0;
    list-style-type: none;
}

ul.recommend_list li{
    width: 45%;
    margin: 0 0 20px 5%;
    border: 1px solid #eee;
    box-sizing: border-box;
}

ul.recommend_list li a{
    display: block;
    height: 100%;
    color: #181818;
    text-decoration: none;
}

ul.recommend_list li a .img {
    position: relative;
    width: 100%;
    max-width: 358px;
    max-width: 100vw;
    height: 25.678vw;
    max-height: 226px;
    overflow: hidden;
}

ul.recommend_list li a .img img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    ul.recommend_list li a .img img {
        position: static;
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}

@supports (-ms-ime-align: auto) { /* Edge */
    ul.recommend_list li a .img img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}


ul.recommend_list li a .content{
    padding: 15px 6% 20px;
}

ul.recommend_list li a .content .tit{
    font-size: 1.6rem;
    margin: 0 0 7px;
    padding: 0 30px 0 0;
    background: url(../img/arw.png) 100% 50% no-repeat;
    background-size: 16px auto;
    font-weight: bold;
}

ul.recommend_list li a .content .voiceBox{
    margin: 15px 0 0;
    padding: 13px 6% 14px;
    background: #f5faf7;
}

ul.recommend_list li a .content .voiceBox .tit_voice{
    margin: 0 0 12px;
    padding: 0 0 14px;
    border-bottom: 1px solid #dbdfdc;
}

.recommend_col2 > *{
    margin: 0 0 10px;
}

.recommend_col2 > *:last-child{
    margin: 0;
}
/* のぞいてみよう */
.look_medbox {
    background: #22ab37;
    text-align: center;
    font-size: 1.6rem;
    color: #fff;
    font-weight: bold;
    padding: 15px;
}
.look_medbox .inner {
    display: inline-block;
    background: url(../img/ico_haitiyaku_l.png) 50% 0 no-repeat;
    padding: 90px 0 10px 0;
}
.look_medbox span {
    display: inline-block;
    font-size: 1.2rem;
    background: #fff;
    color: #333;
    padding: 5px 10px;
    border-radius: 30px;
}
p.searchbtn a,
p.searchbtn a:visited {
    display: block;
    background: #22ab37;
    text-align: center;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 15px 0;
    transition: .2s;
}
p.searchbtn a:before {
    content: "";
    background: url(../img/ico_search_l_w.png) 0 50% no-repeat;
    background-size: 24px auto;
    padding: 5px 0 5px 32px;
}
p.searchbtn a:hover {
    opacity: .6;
    transition: .2s;
}


/* 汎用スタイル設定
======================================================= */

.imgWaku img { padding: 1px; border: 1px solid #ddd; }

span.texts {
    font-size: 1.1rem;
    display: inline-block;
}
span.textn {
    font-size: 1.5rem;
    display: inline-block;
}
span.textl {
    font-size: 1.8rem;
    display: inline-block;
}
span.textll {
    font-size: 2.0rem;
    display: inline-block;
}
span.textxl {
    font-size: 2.4rem;
    display: inline-block;
}
span.textxxl {
    font-size: 2.8rem;
    display: inline-block;
}

.btn {
    text-align: center;
}
.btn a,
.btn a:visited {
    display: inline-block;
    width: 80%;
    background: #07539f;
    color: #fff;
    text-decoration: none;
    padding: 15px;
}

table {
    width: 100%;
    padding: 0;
    border-collapse: collapse;
}

table.sp_scroll{
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

table.nbr,
table.tbr table.nbr {
    border-collapse: collapse;
    border-top: none;
    border-left: none;
}

table.nbr th,
table.tbr table.nbr th {
    padding: 0;
    color: #333;
    border-right: none;
    border-bottom: none;
}

table.nbr td,
table.tbr table.nbr td {
    padding: 0;
    color: #333;
    border-right: none;
    border-bottom: none;
}

table.tbr,
table.nbr table.tbr {
    border-collapse: collapse;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

table.tbr th,
table.nbr table.tbr th {
    font-weight: normal;
    padding: 10px;
    color: #333;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #fafafa;
}

table.tbr td,
table.nbr table.tbr td {
    padding: 10px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

table caption {
    text-align: left;
    margin: 0 0 10px;
}

.tbr_responsive{
/*    white-space: nowrap;
    overflow: auto;*/
}

.photo-r,
.alignright {
    font-size: 1.0rem;
    margin: 3px 0 30px 0;
    text-align: center;
}
.photo-l,
.alignleft {
    font-size: 1.0rem;
    margin: 3px 0 30px 0;
    text-align: center;
}
.photo-c,
.aligncenter {
    font-size: 1.0rem;
    margin: 3px auto 30px;
    text-align: center;
}

.photo-r img,
.photo-l img,
.photo-c img,
img.alignright,
img.alignleft,
img.aligncenter {
    margin-bottom: 5px;
}
.top_back {
    clear: both;
    padding: 30px 0;
    text-align: center;
}

.top_back a {
    padding: 0 15px;
}
.tac { text-align: center !important; }
.tal { text-align: left !important; }
.tar { text-align: right !important; }

.mb5 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb35 { margin-bottom: 35px; }
.mb40 { margin-bottom: 40px; }

.sp_none { display: none !important; }
.clearfix {
        zoom: 1;
}
.clearfix:after {
        display: block;
        clear: both;
        content: '';
}
*:after {
        display: block;
        clear: both;
}

/* 201130追加
======================================================= */
.cRed {
    color: #cc1d00;
}

.box_colum.col2,
.box_colum.col3,
.box_colum.col4{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin:-15px 0 0 -15px;
    padding-top: 1px;
}

.box_colum.col2 >*,
.box_colum.col3 >*,
.box_colum.col4 >*{
    flex-shrink: 0;
    -webkit-box-flex: 0;
           flex-grow: 0;
    margin: 15px 0 0 15px;
}

.box_colum.col2 >*{
    flex-basis: calc(100% / 1 - 15px);
    max-width: calc(100% / 1 - 15px);
}

.box_colum.col3 >*,
.box_colum.col4 >*{
    flex-basis: calc(100% / 2 - 15px);
    max-width: calc(100% / 2 - 15px);
}

.box_colum.center{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
}


.box_colum_btn a{
    position: relative;
    display: block;
    text-decoration: none;
    background: #22ab37;
    color: #fff;
    padding: 10px 42px 10px 15px;
}

.box_colum_btn a:after{
    content: "";
    width: 12px;
    height: 12px;
    background: url(../img/arw_right_wht.png) 0 0 no-repeat;
    background-size: 12px auto;
    position: absolute;
    top: calc(50% - 6px);
    right: 15px;
}

.box_colum_btn.btn_search a {
    padding: 12px 28px 12px 67px;
}

.box_colum_btn.btn_search a:after {
    content: "";
    width: 24px;
    height: 24px;
    background: url(../img/ico_search_l_w.png) 0 0 no-repeat;
    background-size: 24px auto;
    position: absolute;
    top: calc(50% - 12px);
    left: 32px;
}

.common_box,
.f_contact{
    border-top:2px solid #22ab37;
    background: #f8f8f8;
    padding:18px 15px;
}

.common_box::after,
.f_contact::after{
    content: "";
    display: table;
    clear: both;
}

.common_box_title[class],
.f_contact_title[class]{
    color:#22ab37;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 5px;
}

.common_box_title[class]{
    font-size: 16px;
    font-size: 1.6rem;
}

.common_box2{
    background: #fafafa;
}

.common_box2 .common_box2_title,
.common_box2 h2.common_box2_title {
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
    padding: 13px 6%;
    background: #23ab38;
    color: #fff;
    text-align: center;
}
.common_box2 .common_box2_title span,
.common_box2 h2.common_box2_title span {
    font-size: 1.4rem;
    font-weight: normal;
    margin: 0 0 0 10px;
}

.common_box2 h2.common_box2_title:before {
    display: none;
}

.common_box2 .common_box2_text{
    padding: 30px 6%;
}
.common_box2 .common_box2_text_s{
    padding: 15px 6%;
}

.voice_comment{
    background-color:#f5faf7;
    padding:13px 15px;
}

.voice_comment_inner{
    background-color: #fff;
    border:1px solid #eee;
    padding:13px 15px;
}

.voice_comment_img{
    border:1px solid #ddd;
    text-align: center;
    padding: 15px;
    margin-bottom: 16px;
}


.voice_fukidasi {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #f5faf7;
    padding:15px;
}

.voice_fukidasi.onlyBg{
    display: block;
}

.voice_fukidasi_inner{
    border: 1px solid #eee;
    background-color: #fff;
    padding: 15px;
}

.voice_fukidasi + .voice_fukidasi{
    padding-top: 0;
}

.voice_fukidasi_title[class]{
    color: #22ab37;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 8px;
}

.voice_fukidasi_img{
    background-color: #fff;
    border: 1px solid #eee;
    width: 48px;
    flex-shrink: 0;
    -webkit-box-flex: 0;
           flex-grow: 0;
}

.voice_fukidasi_text {
    background-color: #fff;
    position: relative;
    border: 1px solid #eee;
    padding: 13px 15px;
    flex-shrink: 1;
    -webkit-box-flex: 1;
           flex-grow: 1;
}

.voice_fukidasi_text .photo-l,
.voice_fukidasi_text .photo-r,
.voice_fukidasi_text .photo-c{
    margin-bottom: 8px;
}

.voice_fukidasi_text .photo-l img,
.voice_fukidasi_text .photo-r img,
.voice_fukidasi_text .photo-c img{
    margin-bottom: 0;
}


.voice_fukidasi_text::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: 5;
    background-color: #fff;
    border: 1px solid #eee;
    width: 10px;
    height:  10px;
    margin-top: 20px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.voice_fukidasi.imgLeft .voice_fukidasi_text {
    margin-left: 15px;
}

.voice_fukidasi.imgLeft .voice_fukidasi_text:after {
    border-right:none;
    border-top:none;
    left: 0;
    margin-left: -6px;
}

.voice_fukidasi.imgRight{
    -webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
}

.voice_fukidasi.imgRight .voice_fukidasi_text {
    margin-right: 15px;
}


.voice_fukidasi.imgRight .voice_fukidasi_text:after {
    border-left:none;
    border-bottom:none;
    right: 0;
    margin-right: -6px;
}

.voice_fukidasi.arrDown {
    position: relative;
    padding-bottom: 25px;
    margin-bottom: 12px;
}

.voice_fukidasi.arrDown::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #22ab37 transparent transparent transparent;
    margin-bottom: -12px;
}

.faq_q{
    background-color: #f8f8f8;
    border-bottom: 2px solid #dde2df;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    background-repeat: no-repeat;
    background-size: 28px auto;
    background-position: 15px 12px;
    background-image: url(../img/ico_faq_q.png);
    padding: 15px 15px 13px 54px;

}

.faq_a{
    background-repeat: no-repeat;
    background-size: 28px auto;
    background-position: 15px 12px;
    background-image: url(../img/ico_faq_a.png);
    padding: 15px 15px 13px 54px;
}

/* 201207追加
======================================================= */
/* よくあるご質問
======================================================= */
.faq_linklist{
    background: #f5faf7;
    padding: 20px;
}

.faq_linklist h2{
    position: relative;
    z-index: 1;
    left: -30px;
    padding-bottom: 8px;
    background-color: transparent;
}

.faq_linklist .note{
    margin: -26px 0 20px;
}

.faq_linklist .list{
    padding: 5px 0 0;
}

.faq_linklist .list a{
    display: block;
    text-decoration: none;
    font-size: 1.6rem;
    color: #181818;
    margin: 0 0 16px;
    padding: 15px 35px 12px 15px;
    background: #fff url(../img/arw.png) right 23px top 50% no-repeat;
    background-size: 16px;
    border: 1px solid #eee;
}

.faq_linklist .list a:last-child{
    margin: 0;
}

.faq_linklist .list.alink a{
    position: relative;
    padding-left: 54px;
    background: #fff url(../img/arw_down.png) right 23px top 50% no-repeat;
    background-size: 16px;
}

.faq_linklist .list.alink a:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: 19px;
    height: 15px;
    width: 34px;
    height: 34px;
    background: url(../img/ico_faq_q.png) 0 0 no-repeat;
    background-size: 28px auto;
}

.main h3.tit_related{
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 0;
}

.main h3.tit_related:before{
    display: none;
}

ul.link_related{
    margin: 0 0 0 -25px;
    padding: 0;
    list-style-type: none;
}

ul.link_related li{
    display: inline-block;
    margin: 0 0 9px 25px;
}

ul.link_related li a{
    display: inline-block;
    color: #333;
    text-decoration: none;
    border-bottom: 1px dotted #c6c6c6;
    padding: 0 25px 0 0;
    background: url(../img/arw.png) 100% 50% no-repeat;
    background-size: 16px;
}

ul.link_related li a:hover{
    border-bottom: 1px solid transparent;
}

ul.itemList {
    display: flex;
    flex-wrap: wrap;
    width: 102%;
    margin: 0 0 0 -2%;
    padding: 0;
    list-style-type: none;
}

ul.itemList li {
    width: 48%;
    margin: 0 0 10px 2%;
    padding: 0;
    text-align: center;
    position: relative;
    padding: 15px;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

ul.itemList li .ph{
    margin: 0 0 15px;
}

ul.itemList li .txt {
    font-weight: bold;
}


/* 2109改修 */
.tab_wrap {
    width: 100%;
    margin: 0 auto;
}
.tab_area {
    margin: 0;
    font-size: 0;
    display: flex;
    justify-content: space-between;
}
.tab_area label {
    width: 49.5%;
    margin: 0;
    padding: 12px 0;
    background: #22ab37;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    transition: ease .2s opacity;
}
.panel_area {
    background: #f8f8f8;
}
.tab_panel {
    display: none;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    text-align: left;
}
.tab_area label.active {
    background: #f8f8f8;
    color: #22ab37;
}
.tab_panel.active {
    display: block;
}
.tab_panel ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: left;
    display: flex;
    flex-wrap: wrap;
}
.tab_panel ul li {
    width: 32%;
    margin: 0 2% 16px 0;
    display: flex;
}
.tab_panel ul li:nth-child(3n) {
    margin: 0 0 16px;
}
.tab_panel ul li a {
    display: block;
    width: 162px;
    background: #e5f5e7;
    text-align: center;
    padding: 20px 10px 10px;
    font-weight: bold;
    text-decoration: none;
    color: #22ab37;
    line-height: 1.5;
    transition: .2s;
}
.tab_panel ul li a img {
    margin: 0 0 10px;
}
.tab_panel ul li a:hover {
    background: #fff;
    transition: .2s;
}
.tab_panel ul li a p {
    font-size: 14px;
    font-size: 1.4rem;
}
.btn.faq {
    text-align: left;
}
.btn.faq a {
    display: block;
    width: 100%;
    text-align: center;
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    padding: 15px 0;
    color: #fff;
    transition: .2s;
}
.btn.faq a:hover {
    background: #4bc85e url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.faq_linklist_acdn {
    background: #f5faf7;
    padding: 10px;
}
.faq_acdn .ac_faq_q {
    position: relative;
    background: #fff url(../img/ico_trigger_plus.png) right 10px top 50% no-repeat;
    background-size: 21px auto;
    border: 1px solid #eee;
    cursor: pointer;
    margin: 0 0 10px;
    color: #181818;
    padding: 17px 35px 14px 50px;
    display: block;
}
.faq_acdn .ac_faq_q p {
    font-size: 1.6rem;
}
.faq_acdn .ac_faq_q.active {
    background: #fff url(../img/ico_trigger_minus.png) right 10px top 50% no-repeat;
    background-size: 21px auto;    
}
.faq_acdn .ac_faq_q:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: 14px;
    top: 17px;
    height: 15px;
    width: 33px;
    height: 33px;
    background: url(../img/ico_faq_q.png) 0 0 no-repeat;
    background-size: 26px auto;
}

.faq_acdn .ac_faq_a {
    display: none;
}
.faq_acdn .ac_faq_a {
    background-repeat: no-repeat;
    background-position: 14px 0px;
    background-image: url(../img/ico_faq_a.png);
    background-size: 26px auto;
    padding: 2px 10px 30px 50px;
}


/* 店舗・営業所検索
======================================================= */

/* 下層ページ一覧
-------------------------------------------- */
.un_page_list{
    display: flex;
    flex-wrap: wrap;
    width: 102%;
    margin: 0 0 -30px -2%;
}

.un_page_list a{
    display: block;
    text-decoration: none;
    color: #181818;
    width: 48%;
    background: #fff;
    border: 1px solid #eee;
    margin: 0 0 2% 2%;
    box-sizing: border-box;
}

.un_page_list a img{
    width: 100%;
    height: auto;
}

.un_page_list a .tit{
    font-size: 1.6rem;
    font-weight: bold;
    padding: 8px 49px 8px 18px;
    background: url(../img/arw.png) right 23px top 15px no-repeat;
    background-size: 16px;
}



/* 店舗・営業所検索
======================================================= */

.block p.search_head_tit{
    font-size: 24px;
    font-size: 2.4rem;
    color: #181818;
    text-align: center;
    font-weight: bold;
    background: #f5faf7;
    margin: 0 0 37px;
    padding: 9px 0 10px;
}

.search_top > div{
    background: #fafafa;
}

.search_top .content{
    padding: 0 32px 40px;
}

.search_top .first .content{
    padding-top: 27px;
}

.search_top .content_map{
    padding: 0 32px 40px;
}

.search_top .content_map .searchMapList{
    display: none;
}

.main .search_top h2 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
    padding: 13px 0;
    background: #23ab38;
    color: #fff;
    text-align: center;
}
.main .search_top h2:before {
    display: none;
}


/* 条件を指定して検索 */
.search_top form .form_text{
    width: 87%;
    font-size: 18px;
    font-size: 1.8rem;
    border: 1px solid #eaeaea;
    padding: 12px 19px 13px;
    box-sizing: border-box;
}

.search_top form table td{
    padding: 20px 0 32px;
    border-bottom: 1px solid #eaeaea;
}

.search_top form ul.flList{
    padding: 0;
}

.search_top form .searchIcon{
    display: flex;
    align-items: center;
    margin: 0 3.5% 20px;
}

form .tbr_form .form_select,
form .tbr_form .form_text{
    width: 100%;
    font-size: 1.5rem;
    border: 1px solid #eaeaea;
    padding: 12px 19px 13px;
    box-sizing: border-box;
}

form .searchIcon input[type="checkbox"],
form .searchIcon input[type="radio"],
form .check_list input[type="checkbox"],
form .check_list input[type="radio"]{
    width: 20px;
    height: 20px;
}

form .check_list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 -14px -25px;
}

form .check_list p{
    display: flex;
    align-items: center;
    margin: 0 0 14px 25px;
}

form .check_list label{
     padding-left: 10px;
}


.search_top form .searchIcon label{
    padding-left: 16px;
}

.search_top form .btn_submit_group{
    padding: 20px 0 0;
    text-align: center;
}

.btn_submit input,
input.btn_submit{
    display: block;
    width: 100%;
    margin: 0 auto;
    padding: 17px 45px 17px 84px;
    color: #fff;
    background: #1c8d2d url(../img/ico_search_l_w.png) no-repeat 50px 50%;
    background-size: 24px auto;
    border: none;
    font-size: 1.6rem;
    font-weight: bold;
}

.search_top form input.btn_submit{
    margin: 0 auto 20px;
}

.search_top form input.btn_reset{
    display: inline-block;
    margin: 0;
    padding: 0;
    border-width: 0;
    outline: none;
    background-color: transparent;
    color: #1d6cc4;
    text-decoration: underline;
}

.search_top form input.btn_reset:hover{
    text-decoration: none;
}

.loc_btn {
    text-align: center;
    padding: 0 0 50px;
}
.loc_btn input:hover {
    opacity: .6;
    transition: .2s;
}
.block p.shop_distance {
    color: #1b8e29;
    font-size: 1.2rem;
    line-height: 1.2;
    background: #f5faf6;
    margin: 0 0 10px;
    padding: 3px 7px;
    text-align: center;
}


/* 検索結果ページ
-------------------------------------------- */
.search_detail{
    margin: 0 0 20px;
}

.search_detail .search_detail_group{
    border-bottom: 1px solid #eaeaea;
}

.search_detail .search_detail_group:last-child{
    border-bottom: 0;
}

.search_detail_group .tit_area{
    background: #23ab38;
    padding: 13px 28px;
    box-sizing: border-box;
    color: #fff;
}

.search_detail_group .tit_area .tit{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
}

.search_detail_group .tit_area .txt{
    padding: 9px 0 0;
}

.search_detail_group .content{
    background: #fafafa;
    padding: 15px 30px;
    box-sizing: border-box;
}

.search_detail_group .content .txt span{
    font-size: 1.6rem;
    font-weight: bold;
}

.search_detail .tbr_form{
    margin: 0 0 20px;
}

.search_detail .tbr_form tr,
.search_detail .tbr_form td{
    vertical-align: top;
    display: block;
    width: 100%;
}

.search_detail .tbr_form ul.list{
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.search_detail .tbr_form .form_tit {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 19px 0;
    padding: 0 0 0 29px;
    color: #333;
    position: relative;
}

.search_detail .tbr_form .form_tit:before {
    content: "";
    position: absolute;
    top: 45%;
    left: 0px;
    width: 18px;
    height: 3px;
    background-color:#23ab38;
}

table#shopSearchResult{
    width: 100%;
}

table#shopSearchResult a.pointer{
    cursor: pointer;
    text-decoration: underline;
}

table#shopSearchResult a.pointer:hover{
    text-decoration: none;
}

/* LINEボタン */
.line-friend-btn {
    width: 100%;
    display: block;
    margin: 8px auto 0;
    padding: 30px 0 7px 0;
    background: #00b833 url(../../shop/image/share-b.png) 50% 3px no-repeat;
    background-size: 30px auto;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 1.0rem;
    text-align: center;
    box-sizing: border-box;
}

/* 処方せんネット受付する */
.epark-btn {
    width: 100%;
    display: block;
    margin: 8px auto 0;
    padding: 30px 0 7px 0;
    background: #99cc00 url(../img/ico_blank_w.png) 50% 7px no-repeat;
    background-size: 15px auto;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 1.0rem;
    line-height: 1.3;
    text-align: center;
    box-sizing: border-box;
}

/* ページング
-------------------------------------------- */
ul.pagination{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    padding: 0;
    list-style-type: none;
}

ul.pagination li{
    text-align: center;
    margin: 0 5px 10px;
}

ul.pagination li a,
ul.pagination li span.current{
    display: block;
    text-decoration: none;
    font-size: 1.8rem;
    font-weight: bold;
    color: #181818;
    background: #fff;
    border: 1px solid #eee;
    padding: 1px 11.99px;
}

ul.pagination li a{
    cursor: pointer;
}

ul.pagination li a:hover,
ul.pagination li span.current{
    color: #fff;
    background: #23ab38;
    border: 1px solid #23ab38;
}

ul.pagination li a.small{
    font-size: 1.4rem;
    padding: 5px 11.99px 4px;
}

.page_count{
    padding: 2px 0 22px;
}


/* 店舗詳細ページ
-------------------------------------------- */
.btnBack{
    text-align: right;
    margin: 0 0 13px;
}

.btnBack a{
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #181818;
    text-decoration: none;
    padding: 0 30px 0 0;
    background: url(../img/arw.png) 100% 50% no-repeat;
    background-size: 16px;
}

.btnBack a:hover{
    text-decoration: underline;
}

.btnBack.btn_box a{
    display: inline-block;
    border: 1px solid #eaeaea;
    padding: 9px 42px 9px 22px;
}

.btnBack.btn_box a:hover{
    text-decoration: none;
}

ul.flList{
    margin: 0 0 0 -20px;
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
}

ul.flList li{
    margin: 0 0 10px 20px;
}
table#shopSearchResult ul.flList {
    margin: 0;
}
table#shopSearchResult ul.flList li{
    width: 44%;
    margin: 0 3% 10px;
}

.shop_un_2col{
    margin: 0 0 60px;
}

.shop_un_2col .map_area{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin: 0 0 30px;
}

.shop_un_2col .map_area iframe{
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
.shop_un_2col .data_area ul.flList{
    max-width: 100%;
}

.shop_un_btn.btn_2col a{
    margin: 0 0 10px;
}

/* 周辺店舗 */
.search_wakuBox{
    background: #f5faf7;
    padding: 40px 40px 39px 31px;
}

.search_wakuBox .tit_area{
    margin: 0 0 20px;
}

.search_wakuBox .tit_area .tit {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    margin: -7px 0 7px -32px;
    padding: 0 0 0 32px;
    color: #333;
    position: relative;
}
.search_wakuBox .tit_area .tit:before {
    content: "";
    position: absolute;
    top: 45%;
    left: 0px;
    width: 18px;
    height: 4px;
    background-color:#23ab38;
}

.search_wakuBox .tit_area br{
    display: none;
}

.search_wakuBox .list_area{
    background: #fff;
    padding: 9px 20px 18px 30px;
    box-sizing: border-box;
}

.search_wakuBox .list_area ul{
    margin: 0;
    padding: 0 30px 0 0;
    list-style-type: none;
    max-height: 245px;
    overflow: auto;
}

.search_wakuBox .list_area ul li{
    padding: 15px 0 12px;
    border-bottom: 1px solid #ddd;
}

.search_wakuBox .list_area ul li:last-child{
    border-bottom: 0;
}

/* 検索条件を変更する */
.search_change{
    background: #fafafa;
}

.search_change .tit{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    color: #fff;
    background: #23ab38;
    text-align: center;
    padding: 13px 0;
}

.search_change .content{
    padding: 20px 40px 31px;
}

.search_change .tbr_form{
    margin: 0 0 30px;
}

.search_change .tbr_form,
.search_change .tbr_form tr,
.search_change .tbr_form td{
    display: block;
}

.search_change .tbr_form td{
    width: 100%;
}

.search_change .tbr_form ul.list{
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.search_change .tbr_form .form_tit {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 19px 0;
    padding: 0 0 0 29px;
    color: #333;
    position: relative;
}
.search_change .tbr_form .form_tit:before {
    content: "";
    position: absolute;
    top: 45%;
    left: 0px;
    width: 18px;
    height: 3px;
    background-color:#23ab38;
}

.search_change .tbr_form td{
    vertical-align: top;
}



/* 配置薬ポイントのご案内
======================================================= */

.haichi_point_explain p.tit{
    background: #23ab38;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 10px 0 8px;
}
ul.haichi_point_list{
    margin: 0;
    padding: 0;
    list-style-type: none;
    background: #f5faf7;
    padding: 8%;
}
ul.haichi_point_list li{
    background: #fff;
    margin: 0 0 5%;
}
ul.haichi_point_list li:last-child{
    margin: 0;
}
ul.haichi_point_list li p{
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    font-weight: bold;
    padding: 15px 0;
}
ul.haichi_point_list li p span{
    color: #23ab38;
}

/* ポイントの見方
-------------------------------------------- */
.haichi_point_guide.common_box2 .content{
    margin: 20px 0 0;
}

.haichi_point_guide .content > div{
    background: #fff;
    margin: 0 0 20px;
}

.haichi_point_guide .content .content04{
    margin-bottom: 0;
}

.haichi_point_guide .content .tit{
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
}

.haichi_point_guide .content01 .tit{
    background: #80cb71;
}

.haichi_point_guide .content02 .tit{
    background: #f4f374;
    color: #181818;
}

.haichi_point_guide .content03 .tit{
    background: #ff7fa4;
}

.haichi_point_guide .content04 .tit{
    background: #fcbc4d;
}

.haichi_point_guide .content .content_in{
    padding: 22px 6% 21px;
}

.haichi_point_guide .content .content_in .img{
    text-align: center;
    margin: 0 0 10px;
}

ol.alphaType {
    list-style: lower-alpha;
}

/* ドラッグストア
======================================================= */

.olshop a {
    display: block;
    margin: 0 0 20px;
}
.ds_pickup {
    background: #daedd7;
    padding: 20px;
}
.ds_pickup div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ds_pickup .tit {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 0;
}
.ds_pickup .btn {
    text-align: left;
}
.ds_pickup .btn a,
.ds_pickup .btn a:visited {
    background: url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    color: #333;
    font-weight: bold;
    text-align: left;
    padding: 0 15px;
}
/*.pu_slide {
    width: 100%;
    margin: 0;
    overflow: hidden;
}
.pu_slide ul {
    width: 100%;
    padding: 0;
    margin-left: 0;
    list-style-type: none;
}
.pu_slide ul .slick-slide {
    width: 204px;
    position: relative;
    margin: 0 5px;
}
.pu_slide ul li img{
    width: 204px;
    height: auto;
    margin: 0;
}
.pu_slide ul .linkbox p {
    text-align: center;
}
.pu_slide ul .linkbox a {
    color: #333;
    text-decoration: none;
}
.pu_slide ul .linkbox a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.pu_slide ul li:hover {
    opacity: 0.5;
}
.pu_slide ul .slick-arrow {
    display: none !important;
}*/
.pu_slide {
    width: 100%;
    margin: 0;
    overflow: hidden;
}
.pu_slide ul {
    width: 100%;
    padding: 0;
    margin-left: 0;
    list-style-type: none;
}
.pu_slide ul .slick-slide {
    width: 204px;
    position: relative;
    margin: 0 5px;
}
.pu_slide ul li img{
    width: 204px;
    height: auto;
    margin: 0;
}
.pu_slide ul .linkbox p {
    text-align: center;
}
.pu_slide ul .linkbox a {
    color: #333;
    text-decoration: none;
}
.pu_slide ul .linkbox a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
.pu_slide ul li:hover {
    opacity: 0.5;
}
.pu_slide ul .slick-arrow {
    display: none !important;
}
.sames_theme {
    background: #fafafa;
    padding: 20px;
}
.sames_theme div:first-child {
    margin: 0 0 20px;
}
.sames_theme .tit {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.sames_theme .yt {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 20px;
}
.sames_theme .yt iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: none;
}
.point_card_search.top {
    display: block;
}
.point_card_search.top .tit {
    background: #22ab37;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    text-align: left;
    padding: 10px 10px;
    position: relative;
}
.point_card_search.top .tit img {
    width: 60px;
    position: absolute;
    top: 10px;
    right: 10px;
}
.point_card_search.top .tit span {
    position: relative;
    display: block;
    width: 68%;
    margin: 0 0 5px 0;
    padding: 5px 10px;
    text-align: center;
    color: #333;
    font-size: 1.0rem;
    background: #fff;
    border-radius: 30px;
}
.point_card_search.top .tit span:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border: 5px solid transparent;
    border-top: 10px solid #fff;
}
.point_card_search.top .inr {
    background: #e6eeef url(../img/bg_dstop_search.jpg) 50% 0 no-repeat;
    padding: 20px 20px;
}
.point_card_search.top .search_wrap {

    margin: 0 0 40px;
}
.point_card_search.top .search_area {
    width: 100%;
}
.point_card_search.top .search_content {
    background: none;
    padding: 0;
    margin: 0 0 20px;
}
.point_card_search.top .search_wrap .other {
    width: 240px;
    margin: 0 auto;
}
.point_card_search.top .search_wrap .other .btn {
    margin: 10px 0 0 0;
}
.point_card_search.top .search_wrap .other .btn a {
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px;
    font-weight: bold;
    transition: .2s;
}
.point_card_search.top .search_wrap .other .btn a:hover {
    opacity: .6;
    transition: .2s;
}
.point_card_search.top .dss_tit {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    margin: 0 0 10px;
}
.point_card_search.top .group {
    margin: 0 0 20px;
}
.point_card_search.top .group .stit {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    text-align: center;
    background: #eefaf1;
    padding: 10px;
}
.point_card_search.top .group .stit img {
    width:90px;
    margin: 0 5px;
}
.point_card_search.top .group .logo {
    background: #fff;
    text-align: center;
    padding: 20px;
}
.point_card_search.top .group .stit img:first-child {
    margin: 0 0 0;
}
.point_card_search.top .group .stit img:last-child {
    width: 120px;
}

.btn_fordrugstore {
    width: 100%;
    margin: 0;
}
.btn_fordrugstore a,
.btn_fordrugstore a:visited {
    display: block;
    background: #7cc535 url(../img/arw_right_wht.png) 97% 50% no-repeat;
    background-size: 16px auto;
    text-align: left;
    text-decoration: none;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 15px;
    transition: .2s; 
}
.btn_fordrugstore a:hover {
    opacity: .6;
    transition: .2s;
}
.btn_fordrugstore a:before {
    content: "";
    background: url(../img/ico_drugstore.png) 0 50% no-repeat;
    background-size: 33px auto;
    padding: 9px 40px 9px 0;
}


/* ドラッグセイムスの理念 */

.idea_tit{
    background: #f9f9f9;
}
.idea_tit img{
    margin: 0;
}
.idea_tit p.tit{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    padding:  0 5% 0;
}
.idea_tit p.txt{
    font-size: 16px;
    font-size: 1.6rem;
    padding:  0 5% 5%;
}
.idea_tit p.txt span{
    color: #22ab37;
    font-weight: bold;
}

ul.idea_list{
    margin: 0;
    padding: 0;
    list-style-type: none;
}
ul.idea_list li{
    padding: 5%;
    border-bottom: 1px solid #eeeeee;
}
ul.idea_list li:first-child{
    padding: 10px 5% 5%;
}
ul.idea_list li p.tit{
    color: #22ab37;
    font-weight: bold;
    font-size: 20px;
    font-size: 2.0rem;
    font-family: 'Lato', sans-serif;
}
ul.idea_list li p.txt{
    font-size: 16px;
    font-size: 1.6rem;
}

/* 業績 */

.result_img {
    background-color: #fafafa;
    padding: 5%;
}

/* サービス一覧 */

ul.service_list{
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-wrap:wrap;
    justify-content:space-between;
}
ul.service_list li{
    border: 1px solid #eeeeee;
    width: 48%;
    margin: 0 0 5%;
}
ul.service_list li .txt{
    margin: 8%;
}
ul.service_list li .txt .arw{
    width: 85%;
}
ul.service_list li a,
ul.service_list li a:link,
ul.service_list li a:visited,
ul.service_list li a:hover,
ul.service_list li a:active {
    color: #181818;
    text-decoration: none;
}
.cardinfo {
    display: flex;
    padding: 10px 10px 0;
}
.cardinfo img {
    width: 87px;
    margin: 0 15px 0 0;
}
.cardinfo p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5;
}
.cardinfo .name {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.cardinfo .name span {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    color: #23ab38;
}
.cardattention p:first-child {
    border-top: 1px solid #ddd;
    padding: 15px 0 0 0;
}
.cardattention p.sub {
    color: #999;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
    margin: 10px 0 0 0;
}

/* PB紹介 */

ul.pb_list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 10px 0px;
    padding: 0;
    list-style-type: none;
}

ul.pb_list li{
    width: 100%;
    margin: 0 0 30px 0;
    border: 1px solid #eee;
    box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

ul.pb_list li a{
    display: block;

    color: #181818;
    text-decoration: none;
}
ul.pb_list li a .img {
    position: relative;
    width: 100%;
    overflow: hidden;
}

ul.pb_list li a .content,
ul.pb_list li .content.nolink{
    padding: 16px 23px 23px;
}

ul.pb_list li a .content .tit{
    font-size: 1.8rem;
    margin: 0 0 7px;
    padding: 0 30px 0 0;
    background: url(../img/arw.png) 100% 50% no-repeat;
    background-size: 16px auto;
    font-weight: bold;
}
ul.pb_list li .content.nolink .tit {
    font-size: 1.8rem;
    margin: 0 0 7px;
    padding: 0 30px 0 0;
    background: none;
    font-weight: bold;
}

ul.pb_list li a .content .voiceBox{
    margin: 19px 0 0;
    padding: 16px 20px 17px;
    background: #f5faf7;
}

ul.pb_list li a .content .voiceBox .tit_voice{
    margin: 0 0 12px;
    padding: 0 0 14px;
    border-bottom: 1px solid #dbdfdc;
}
ul.pb_list li .btn {
    margin: auto 23px 20px;
}
ul.pb_list li .btn a {
    display: block;
    width: 100%;
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    padding: 15px 0;
    color: #fff;
    transition: .2s;
}
ul.pb_list li .btn a.top {
    margin: 0 0 10px;
}
ul.pb_list li .btn a:hover {
    background: #4bc85e url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}


/* 医薬品の製造
======================================================= */

.block_split {

}
.block_split .txt {
    margin: 0 0 40px;
}
.block_split .img {
    width: 100%;
    text-align: center;
    margin: 0 auto;
}
.block_split .img .img_block {
    margin: 0 0 20px;
}


/* TVCM
======================================================= */

.tvcm_profile{
    border: 8px solid #f8f8f8;
    padding: 5%;
}
.tvcm_profile .name_catch{
    color: #22ab37;
    font-weight: bold;
}
.tvcm_profile .name{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;  
    margin: 0 0 15px;
}
.tvcm_profile .name span{
    font-size: 14px;
    font-size: 1.4rem;
}
    
.tvcm_video{
    padding: 8%;
    background: #f5faf7;
    
}
.tvcm_video p {
    position:relative;
    width:100%;
    height:0;
    padding-top:55%;
}
.tvcm_video p:first-child{
    margin: 0 0 8%;
}
.tvcm_video p iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}

/* サイトマップ
======================================================= */

ul.sitemap{
    margin: 0;
    padding: 0;
    list-style-type: none;
}
ul.sitemap li a{
    text-decoration: none;
    color: #181818;
}
ul.sitemap li.li_tit{
    border-bottom: 1px solid #eeeeee;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}
ul.sitemap li.li_tit a:first-child{
    display: inline-block;
    padding: 0 0 0 26px;
    margin: 15px 0 10px;
    background: #fff url(../img/arw.png) left 40% no-repeat;
    background-size: 16px auto;
}
ul.sitemap li.li_tit.li_blank a{
    background: #fff url(../img/ico_blank.png) left 35% no-repeat;
    background-size: 16px auto;
}
ul.sitemap li.li_tit ul.nest li.li_blank a{
    display: inline-block;
    padding-right: 24px;
    background: #fff url(../img/ico_blank.png) right 40% no-repeat;
    background-size: 15px auto;
}

ul.sitemap li.li_tit ul.nest{
    margin: 0 0 10px 26px;
    padding: 0;
    list-style-type: none;
}
ul.sitemap li.li_tit ul.nest li{
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: normal;
    margin: 0 0 2px;
    padding-left: 10px;
    background: url(../img/bar_sitemap.gif) left 13px no-repeat;
}
ul.sitemap li.li_tit ul.nest li a{
    background: none;
    padding: 0;
    margin: 0;
}

/* ポイントカード
======================================================= */
.point_card_top_2col .content{
    background: #f5faf7;
    margin: 0 0 20px;
    padding: 20px 6% 30px;
    box-sizing: border-box;
    text-align: center;
}

.point_card_top_2col .content:last-child{
    margin-bottom: 0;
}

.point_card_top_2col .content .tit{
    text-align-last: left;
    font-size: 1.2rem;
    font-weight: bold;
    margin: 0 0 14px;
    padding: 0 0 2px 65px;
    background: url(../../point_card/image/img_point_card_top01.jpg) 0 3px no-repeat;
    background-size: 51.5px;
}

.point_card_top_2col .content .tit span{
    font-size: 1.8rem;
    color: #22ab37;
    line-height: 1.4;
}

.point_card_top_2col .content .tit span span{
    font-size: 2.2rem;
    line-height: 0;
}

/* 検索 */
.point_card_search{
    display: flex;
    flex-wrap: wrap;
}
.point_card_search .search_area{
    width: 100%;
}
.point_card_search .search_tit{
    background: #22ab37;
    padding: 10px;
}
.point_card_search .search_tit .tit{
    font-size: 2.0rem;
    color: #fff;
    font-weight: bold;
    padding: 11px 0 10px 90px;
    background: url(../img/ico_seims_l.png) 0 50% no-repeat;
    background-size: 80px auto;
}
.point_card_search .search_tit .btn a,
.point_card_search .search_tit .btn a:visited {
    display: block;
    width: 100%;
    color: #181818;
    text-decoration: none;
    padding: 16px 50px 16px 17px;
    font-size: 1.8rem;
    font-weight: bold;
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
    box-sizing: border-box;
}
.point_card_search .search_tit .btn a:hover {
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
}
.point_card_search .search_content{
    padding: 10px;
    background: url(../../point_card/image/bg_search.jpg) 50% 50% no-repeat;
    background-size: cover;
}
.point_card_search .search_content ul{
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.point_card_search .search_content .boxInner{
    position: relative;
}
.point_card_search .search_content .tabMenu{
    display: flex;
    justify-content: flex-start;
    width: 100%;
    border-bottom: 2px solid #1c8d2d;
}
.point_card_search .search_content .tabMenu li{
    margin: 0 1px 0 0;
}
.point_card_search .search_content .tabMenu li:last-child{
    margin: 0;
}
.point_card_search .search_content .tab_sp{
    display: inline-block;
    text-decoration: none;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    background: #bcbcbc;
    text-align: center;
    padding: 7px 10px;
}
.point_card_search .search_content .tab_sp br{
    display: none;
}
.point_card_search .search_content .tab_sp.on_sp{
    background: #1c8d2d;
}
.point_card_search .search_content input.txtSearch{
    width: 100%;
    border: none;
    font-size: 1.8rem;
    padding: 23px 29px 24px;
    box-sizing: border-box;
}
.point_card_search .search_content input.txtSearch::placeholder,
.point_card_search .search_content input.txtSearch:-ms-input-placeholder,
.point_card_search .search_content input.txtSearch::-ms-input-placeholder {
    color: #b8b8b8;
}
.point_card_search .search_content input.btnSearch{
    width: 100%;
    display: inline-block;
    padding: 10px 10px 10px 10px;
    margin: 10px 0 0 0;
    color: #fff;
    background: #1c8d2d url(../img/ico_search_l_w.png) no-repeat 10px 50%;
    background-size: 24px auto;
    border: none;
    font-size: 1.8rem;
    font-weight: bold;
    box-sizing: border-box;
}
.point_card_search .search_content .change_sp{
    display: none;
    opacity: 1!important;
}
.point_card_search .search_content #shopTab01{
    display: block;
}
.point_card_search .contact_area{
    width: 100%;
    background: #f5faf7;
    text-align: center;
    padding: 20px 10px;
    box-sizing: border-box;
}
.point_card_search .contact_area .tit{
    font-size: 2.0rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.point_card_search .contact_area .txt{
    font-size: 1.5rem;
    margin: 0 0 10px;
}
.point_card_search .contact_area .btn a {
    display: block;
    width: 100%;
    color: #181818;
    font-weight: bold;
    background: #fff;
    border: 1px solid #eaeaea;
    font-size: 1.6rem;
    padding: 17px 0 17px 0;
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
    box-sizing: border-box;
}

/* ギフトポイント交換商品一覧 */
.point_card_gift{
    position: relative;
    padding: 30px;
    background: #f5faf7;
}

.point_card_gift .content_head{
    margin: 0 0 29px;
}

.point_card_gift .content_head .txt .catch{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 22px;
}

.point_card_gift span.txt_orange{
    color: #f98509;
}

.point_card_gift span.txt_pink{
    color: #f9779f;
}

.point_card_gift .content_head .img{
    margin: 20px 0 0;
    text-align: center;
}

.point_card_gift .content_foot .tit{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    padding: 3px 0 2px 37px;
    background: url(../img/ico_present.png) 0 0 no-repeat;
}


/* 入会方法 */
.attentionbox {
    background: #f8f8f8;
    padding: 10px 0;
}
.attentionbox .inner {
    background: #fff;
    padding: 20px;
    margin: 10px 10px 0 10px;
}
.attentionbox .ast {
    margin-left:1em;
    text-indent:-1em;
}
/* 特典案内 */
.benefits {
    background: #f5faf7;
    margin: 0 0 30px;
}
.benefits .tit {
    background: #22ab37;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding: 10px 10px 10px 0;
}
.benefits .tit span {
    background: #9fca47;
    font-size: 1.2rem;
    vertical-align: middle;
    padding: 5px 10px;
    margin: 0 10px 0 0;
    -webkit-border-top-right-radius: 20px;
    -webkit-border-bottom-right-radius: 20px;
    -moz-border-radius-topright: 20px;
    -moz-border-radius-bottomright: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}
.benefits .inner {
    padding: 20px;
}
.benefits .inner .catch {
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 0 15px 0;
}
.benefits .inner .catch span {
    font-size: 2.0rem;     
}
.benefits .inner .catch .txt_gr {
    color: #22ab37;
}
.benefits .inner .catch .txt_or {
    color: #f98509; 
}
.benefits .inner .catch .txt_pink {
    color: #f9779f; 
}
.benefits .inner img.sp_mb10 {
    margin: 0 0 10px;
}
.benefits .inner .wbox {
    background: #fff;
    padding: 0;
    text-align: center;
}
.benefits .inner .wbox img:first-child {
    margin: 0 0 10px;
}
.benefits .inner .mpoint,
.benefits .inner .gpoint {
    width: 100%;
    margin: 0 0 20px;
}
.benefits .inner .mpoint .stit,
.benefits .inner .gpoint .stit {
    font-size: 1.8rem;
    font-weight: bold;
}
.benefits .inner .mpoint .txt,
.benefits .inner .gpoint .txt {
    margin: 0 0 10px;
}
.benefits .inner .mpoint .stit {
    background: url(../img/ico_mpoint.png) 0 50% no-repeat;
    padding: 3px 0 3px 65px;
    margin: 0 0 5px;
}
.benefits .inner .gpoint .stit {
    background: url(../img/ico_gpoint.png) 0 50% no-repeat;
    padding: 3px 0 3px 40px;
    margin: 0 0 5px;
}
.ben_imgframe {
    width: 100%;
    margin: 0 auto;
    border: 1px solid #eee;
    padding: 15px;
    box-sizing: border-box;
}
.ben_service {
    margin: 0;
}
.ben_service .attentionbox {
    width: 100%;
    margin: 0 0 20px;
}


/* モンドセレクション
======================================================= */

.about_mond {
    background: #112d5d;
    border: 5px solid #005ead;
    padding: 20px;
    text-align: center;
}
.about_mond .txt {
    color: #fff;
    text-align: left;
}
.about_mond .txt p.tit {
    font-size: 2.0rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.about_mond img {
    width: 140px;
    margin: 20px auto 0;
}
.catemenu_box.mond {
    width: 100%;
    border: none;
    background: #f7e697;
    padding: 8px;
    box-sizing: border-box;
}
.catemenu_box.mond a {
    display: block;
    padding: 15px;
    box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
}
.catemenu_box.mond .tit {
    font-weight: normal;
    font-size: 1.6rem;
    padding: 10px 0;
    background: url(../img/arw_g.png) right 50% no-repeat;
    background-size: 16px auto;
}
.catemenu_box.mond .mondinfo {
    border-bottom: 1px solid #dfce83;
}
.catemenu_box.mond .inner {
    display: flex;
    align-items: center;
    padding: 20px 0;
}
.catemenu_box.mond .inner img {
    width: 80px;
}
.catemenu_box.mond .inner p {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
    margin: 0 0 0 20px;
}
.catemenu_box.mond .inner p.prize {
    color: #bf8000;
    font-size: 1.4rem;
    font-weight: bold;
}


/* 医療用医薬品
======================================================= */

.med_confirm {
    border: 8px solid #f8f8f8;
    padding: 20px;
}
.med_confirm .txt {
    margin: 0 0 20px;
}
.med_confirm .txt p {
    font-size: 1.6rem;
}
.med_confirm .txt p span {
    color: #22ab37;
    font-weight: bold;
}
.med_confirm .txt .alink a,
.med_confirm .txt .alink a:visited {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #ddd;
    text-align: center;
    padding: 10px 0;
    margin: 10px 0 0 0;
    background: url(../img/arw_down.png) 97% 50% no-repeat;
    background-size: 16px auto;
    color: #333;
    text-decoration: none;
}
.med_confirm .btnarea {
    width: 100%;
    margin: 0 auto;
    background: #f5faf7;
    padding: 10px;
    text-align: center;
    box-sizing: border-box;
}
.med_confirm .btnarea p {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.med_confirm .btnarea ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.med_confirm .btnarea ul li {
    width: 100%;
    margin: 0 0 10px;
}
.med_confirm .btnarea ul li:last-child {
    margin: 0;
}
.med_confirm .btnarea ul li a,
.med_confirm .btnarea ul li a:visited {
    display: block;
    background: #1c8d2d;
    color: #fff;
    font-weight: bold;
    font-size: 1.6rem;
    text-decoration: none;
    transition: .2s;
    padding: 15px 0;
}

.med_confirm .btnarea ul li a:before {
    content: "";
    background: url(../img/ico_med.png) 0 50% no-repeat;
    padding: 5px 0 5px 50px;
}
.med_confirm .btnarea ul li:last-child a,
.med_confirm .btnarea ul li:last-child a:visited {
    background: #22ab37;
}
.med_confirm .btnarea ul li:last-child a:before {
    content: "";
    background: url(../img/ico_nomed.png) 0 50% no-repeat;
    padding: 10px 0 10px 50px;
}
.med_confirm .btnarea ul li a:hover {
    opacity: .6;
    transition: .2s;
}

.block_s {
    margin: 0 0 30px;
}
dl.dl-table {
    width: 100%;
    display: table;
    margin: 0;
    line-height: 2;
}
dl.dl-table dt {
    width: 25%;
    display: table-cell;
    margin: 0;
    padding: 0;
    vertical-align: top;
}
dl.dl-table dd {
    width: 75%;
    display: table-cell;
    margin: 0;
    padding: 0;
    vertical-align: top;
}
p.note {
    font-size: 13px;
    font-size: 1.3rem;
    color: #999;
}


/* フォーム */
fieldset {
    border: none;
    padding: 0;
}
.memberBox {
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 20px;
    text-align: center;
}
.contactform .companyList {
    width: 100%;
    align-items: center;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    padding: 0;
    box-sizing: border-box;
}
.contactform .companyList.disnon {
    display: none;
}
.contactform .companyList dt {
    width: 100%;
    background: #fafafa;
    padding: 20px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    display: block;
    box-sizing: border-box;
}
.contactform .companyList dd {
    width: 100%;
    background: #fff;
    padding: 20px;
    border-right: 1px solid #ddd;
    display: block;
    box-sizing: border-box;
}
.contactform .companyList.end {
    border-bottom: 1px solid #ddd;
}
.contactform .companyList span.required {
    float: right;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
    background: #e61717;
    padding: 2px 7px;    
}
.contactform .memberBox span.required {
    display: inline-block;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
    background: #e61717;
    padding: 2px 7px;    
}
.contactform .form_policy {
    text-align: center;
    padding: 20px;
    border: 1px solid #ddd;
    border-top: none;
    margin: 0 0 30px;
}
#company_name,
#company_post,
#addr,
#addtatemono,
#tel,
#tel_mobile,
#email,
#haisou {
    width: 90%;
}
#inquiry {
    width: 90%;
}
.eigyou_contact {
    background: #fafafa;
    padding: 30px 40px;
}
.eigyou_contact .btn a {
    border: 1px solid #eee;
    font-weight: bold;
    background: #fff url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    color: #333;
    transition: .2s;
}
.eigyou_contact .btn a:hover {
    background: #f5faf7 url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}



/*------------------------------------------------------------------------------------------------
   追加 220215
------------------------------------------------------------------------------------------------*/
/* 配置薬～おうちに置くすり～ */
.medicine_tabarea .tab_menu{
    display: flex;
    justify-content: space-between;
    margin: 15px 0 36px;
    padding: 0 0 26px;
}

.medicine_tabarea .tab_menu .tab{
    position: relative;
    width: 48.4%;
    padding: 0 4% 4px;
    background: #22ab37 url(../img/arw_right_wht.png) 98% 14px no-repeat;
    background-size: 10px auto;
    background-position: right 8px top 14px;
    box-sizing: border-box;
    cursor: pointer;
}

.medicine_tabarea .tab_menu .tab.selected{
    background: #e4f2e2;
    cursor: auto;
}

.medicine_tabarea .tab_menu .tab.selected:after{
    content:"";
    position: absolute;
    z-index: 1;
    left: 50%;
    bottom: -12px;
    margin: 0 0 0 -12px;
    border-style: solid;
    border-width: 12px 12px 0 12px;
    border-color: #e4f2e2 transparent transparent transparent;
}

.medicine_tabarea .tab_menu .tab .img{
    text-align: center;
    margin: -15px 0 5px;
}

.medicine_tabarea .tab_menu .tab .tit{
    font-size: 1.0rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.medicine_tabarea .tab_menu .tab.selected .tit{
    color: #22ab37;
}

.medicine_tabarea .tab_menu .tab .tit span{
    display: inline-block;
    font-size: 1.4rem;
    line-height: 22px;
    margin: 0 0 5px;
    padding: 2px 13px;
    border-radius: 26px;
    color: #fff;
    background: #1c8d2d;
}

.medicine_tabarea .tab_menu .tab.selected .tit span{
    background: #22ab37;
}

.medicine_tabarea .tab_content .content{
    display: none;
}

.medicine_tabarea .tab_content .content.selected{
    display: block;
}

.medicine_problem{
    position: relative;
    min-height: 430px;
    padding: 0 0 36px;
    text-align: center;
    background: url(../img/bg_medicine_problem.gif) 0 0 repeat;
}

.medicine_problem .tit{
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 1.8rem;
    line-height: 1.2;
    font-weight: bold;
    margin: 0 32px 33px 39px;
    padding: 25px 0 8px;
    border-bottom: 2px solid #22ab37;
}

.medicine_problem .tit:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: -34px;
    top: -5px;
    width: 34px;
    height: 33px;
    background: url(../img/ico_medicine_problem.png) 0 0 no-repeat;
    background-size: 34px 33px;
}

.medicine_problem .tit:after{
    content:"";
    position: absolute;
    z-index: 1;
    right: -30px;
    bottom: 0;
    width: 30px;
    height: 20px;
    background: url(../img/bg_pen.png) 0 0 no-repeat;
    background-size: 30px 20px;
}

.medicine_problem ul.list{
    margin: 0;
    padding: 0 7% 4px;
    list-style-type: none;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: left;
}

.medicine_problem ul.list li{
    margin: 0 0 10px;
    padding: 0 0 0 26px;
    background: url(../img/ico_check.png) 0 2px no-repeat;
    background-size: 20px auto;
}

.medicine_problem .img{
    width: 48.6%;
    margin: 0 auto;
}

.medicine_problem .sep_l,
.medicine_problem .sep_r{
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
    width: calc( 50% - 16px );
    height: 16px;
    background: #22ab37;
}

.medicine_problem .sep_r{
    left: auto;
    right: 0;
}

.medicine_problem .sep_l:before,
.medicine_problem .sep_r:before{
    content:"";
    position: absolute;
    z-index: 1;
    right: -22px;
    bottom: 0;
    border-style: solid;
    border-width: 16px 0 0 22px;
    border-color: transparent transparent transparent #22ab37;
}

.medicine_problem .sep_r:before{
    right: auto;
    left: -22px;
    border-width: 0 0 16px 22px;
    border-color: transparent transparent #22ab37 transparent;
}

.medicine_solution{
    position: relative;
    background: #22ab37;
    padding: 2px 4% 12px;
    text-align: center;
}

.medicine_solution .tit{
    display: inline-block;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: left;
    color: #fff;
    min-height: 66px;
    margin: 0;
    padding: 0 0 0 72px;
    box-sizing: border-box;
    background: url(../img/ico_medicine_benri.png) 0 0 no-repeat;
    background-size: 66px auto;
}

.medicine_merit .merit_tit{
    position: relative;
    padding: 22px 0 0 0;
}

.medicine_merit .merit_tit .img{
    width: 125px;
}

.medicine_merit .merit_tit .tit{
    position: absolute;
    z-index: 1;
    top: 28px;
    left: 122px;
    background: #e8fafc;
    padding: 16px 13px 18px;
    border-radius: 14px;
}

.medicine_merit .merit_tit .tit:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: -15px;
    bottom: 21px;
    border-style: solid;
    border-width: 0 0 30px 24px;
    border-color: transparent transparent #e8fafc transparent;
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
}

.medicine_merit .merit_tit .tit:after{
    content:"";
    position: absolute;
    z-index: 1;
    left: -20px;
    top: -10px;
    width: 30px;
    height: 40px;
    background: url(../img/bg_question.png) 0 0 no-repeat;
    background-size: 30px 40px;
}

.medicine_merit .merit_tit .tit p{
    font-size: 1.6rem;
    line-height: 1.2;
    font-weight: bold;
}

.medicine_merit .merit_block{
    margin: 0 0 60px;
}

.medicine_merit .merit_block .tit_area{
    position: relative;
    color: #fff;
    background: #71c725;
    margin: 0 0 34px;
    text-align: center;
    padding: 16px 0 13px;
}

.medicine_merit .merit_block .tit_area .num{
    display: inline-block;
    font-size: 1.6rem;
    line-height: 24px;
    background: #15a531;
    font-weight: bold;
    margin: 0 0 9px;
    padding: 0 14px;
    border-radius: 12px;
    font-family: Meiryo, sans-serif;
}

.medicine_merit .merit_block .tit_area .num span{
    font-size: 1.3rem;
    margin: 0 5px 0 0;
}

.medicine_merit .merit_block .tit_area .tit{
    font-size: 1.8rem;
    line-height: 1.2;
    font-weight: bold;
}

.medicine_merit .merit_block .content_area .img{
    padding: 25px 0 0;
    text-align: center;
}

.medicine_merit .merit_block .content_area .txt{
    font-size: 1.6rem;
}

.medicine_merit .merit_block .content_area .txt .note{
    font-size: 1.4rem;
    margin: 15px 0 0;
}

.medicine_merit .merit_block .content_area .txt .quote_area{
    background: #f1f1f1;
    font-size: 1.4rem;
    line-height: 1.6;
    margin: 20px 0 0;
    padding: 20px 10px 15px;
}

.medicine_merit .merit_block .content_area .txt .quote_area .quote_tit{
    color: #22ab37;
    font-weight: bold;
}

.main h2.tit_benri{
    margin: 0 0 35px;
    padding: 23px 15px 18px;
    background: #e4f2e2;
    border-top: 3px solid #22ab37;
    text-align: center;
}

.main h2.tit_benri:before {
    display: none;
}

/* 富士薬品のダイバーシティ＆インクルージョン推進宣言
======================================================= */

table.evaluation th {
    width: 33.33%;
}
table.evaluation td {
    text-align: center;
}
span.pdf,
span.blank {
    display: inline-block;
}