@charset 'UTF-8';

/* **********************************************************************
 *
 *       Title:   block.css
 *
 ********************************************************************** */



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

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

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

/* メインビジュアル
-------------------------------------------- */
#mainVisual .bxslider{
    display: none;
}

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

#mainVisual .bx-wrapper .bx-prev {
    z-index: 5;
    left: 9px;
    width: 48px;
    height: 48px;
    background: #fff url(../img/arw_main_prev.png) no-repeat 50% 50%;
    background-size: 9px 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: 48px;
    height: 48px;
    background: #fff url(../img/arw_main_next.png) no-repeat 50% 50%;
    background-size: 9px 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: 11px;
    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;
}

/* slide00 */
.slide00{
    height: 565px;
    background: #d9edd7;
    padding: 20px 0;
}
.slide00 .inner{
    max-width: 1153px;
    margin: 0 auto;
}

/* slide01 */
.slide01{
    display: flex;
    align-items: center;
    height: 586px;
    background: #d9edd7;
    padding: 0 0 19px;
}

.slide01 .inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1340px;
    margin: 0 auto -20px;
}

.slide01 .inner a{
    width: 49.25%;
    margin: 0 0 20px;
}

.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);
}

/* slide02 */
.slide02{
    height: 605px;
    background: url(../../_img/main02_bg.jpg) 50% 50% no-repeat;
    background-size: cover;
}

.slide02 .inner{
    position: relative;
    max-width: 1152px;
    margin: 0 auto;
}

.slide02 .inner > img{
    width: 28.90625%;
    height: auto;
    padding: 0 0 0 6.4236%;
}

.slide02 .inner .content{
    position: absolute;
    z-index: 1;
    width: 635px;
    right: 0;
    top: 224px;
}

.slide02 .inner .content img{
    margin: 0 0 49px;
}

.slide02 .box_colum_btn{
    width: 264px;
    text-align: center;
}

.slide02 .box_colum_btn a{
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    opacity: 1;
    transition: opacity 0.2s;
}

.slide02 .box_colum_btn a:hover {
    opacity: 0.6;
}

/* ピックアップトピックス
-------------------------------------------- */
#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 164px;
    padding: 96px 0 168px;
}

#sliderBox:after{
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 36px;
    width: 100%;
    /*width: calc( ( 100% - 1152px ) / 2 + 960px);*/
    height: 540px;
    background: #daedd7 url(../img/bg_top_pickup.png) 0 100% no-repeat;
}

/*
#sliderBox .bx-wrapper {
    overflow: hidden;
}
#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 a{
    position: relative;
    display: block;
    color: #181818;
    background: #fff;
    text-decoration: none;
    height: 100%;
    padding-bottom: 29px;
    box-sizing: border-box;
    opacity: 1;
    transition: opacity 0.2s;
}

ul#pickup li a:hover {
    opacity: 0.6;
}

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: 24px;
}

ul#pickup li ul.cate{
    position: absolute;
    bottom: 24px;
    left: 24px;
    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: -88px;
    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);
    margin-top: -30px;
}

#sliderBox .bx-wrapper .bx-next {
    z-index: 5;
    right: -88px;
    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: 50%;
    bottom: 0;
    margin: 0 0 0 -192px;
}

#sliderBox .btn_area a{
    width: 384px;
    text-align: center;
    padding-top: 23px;
    padding-bottom: 22px;
    opacity: 1;
    transition: opacity 0.2s;
}

#sliderBox .btn_area a:hover {
    opacity: 0.6;
}


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

#top .top_news h2{
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    font-size: 24px;
    font-size: 2.4rem;
    width: auto;
}

.top_news .box_colum_btn{
    position: absolute;
    z-index: 1;
    left: 0;
    top: 134px;
}

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

.top_news .box_colum_btn a:hover {
    opacity: 0.6;
}

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

/* ニュースリリース一覧
-------------------------------------------- */
.top_news .oshirase{
    padding: 0 0 0 288px;
}

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

.top_news .oshirase .tabMenu li{
    width: 33.33%;
    /*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: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
    text-align: center;
    color: #181818;
    background: #eee;
    padding: 8px 0;
    outline: none;
}

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

.top_news .oshirase .newslist ul{
    display: none;
    height: 366px;
    overflow: auto;
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-size: 14px;
    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 li:first-child{
    border-top: 1px solid #f0f0f0;
}

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

.top_news .oshirase .newslist ul span.cat{
    float: left;
    width: 152px;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 33px 0 0;
    padding: 3px 10px 0;

    color: #fff;
    text-align: center;
    border-radius: 12px;
    box-sizing: border-box;
}

.top_news .oshirase .newslist ul span.cat.pressrelease,
.top_news .oshirase .newslist ul span.cat.corporate,
.top_news .oshirase .newslist ul span.cat.service,
.top_news .oshirase .newslist ul span.cat.csr{
    background: #81c9d8;
}

.top_news .oshirase .newslist ul span.cat.topics,
.top_news .oshirase .newslist ul span.cat.recruit,
.top_news .oshirase .newslist ul span.cat.sports,
.top_news .oshirase .newslist ul span.cat.community,
.top_news .oshirase .newslist ul span.cat.activities,
.top_news .oshirase .newslist ul span.cat.resources,
.top_news .oshirase .newslist ul span.cat.shop,
.top_news .oshirase .newslist ul span.cat.event,
.top_news .oshirase .newslist ul span.cat.etc,
.top_news .oshirase .newslist ul span.cat.other {
    background: #7dc061;
}

.top_news .oshirase .newslist ul span.title{
    display: block;
    overflow: hidden;
}

.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: 128px 0 115px;
    background: url(../../_img/bg_menu.png) 50% 50% no-repeat;
    background-size: cover;
}

.top_menu .block_in{
    width: 1152px;
    margin: 0 auto;
}

.top_menu .menu_list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -48px;
}

.top_menu .menu_list a{
    position: relative;
    width: 352px;
    margin: 0 0 48px 48px;
    text-decoration: none;
    opacity: 1;
    transition: opacity 0.2s;
}

.top_menu .menu_list a:hover {
    opacity: 0.6;
}

.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{
    display: flex;
    justify-content: space-between;
}

.top_menu .sub_menu_list a{
    display: block;
    width: 552px;
    background: #fff url(../img/arw.png) right 19px top 50% no-repeat;
    background-size: 16px;
    color: #181818;
    text-decoration: none;
    padding: 24px 54px 24px 25px;
    box-sizing: border-box;
    opacity: 1;
    transition: opacity 0.2s;
}

.top_menu .sub_menu_list a:hover {
    opacity: 0.6;
}

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

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

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

.top_menu .sub_menu_list a .tit{
    font-weight: bold;
}


/* 店舗物件募集 /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: 30px;
    margin: 0 0 40px;
}
.message p {
    margin: 0 0 20px;
}
.message p.signature {
    text-align: right;
    font-weight: bold;
    margin: 0;
}
table.prof{
    table-layout:fixed;
}
table.prof th {
    width: 25%;
    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: 600px;
}
.catemenu_s {
    margin: 0 0 50px;
}
.catemenu_s ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}
.catemenu_s ul li a,
.catemenu_s ul li a:visited {
    width: 273px;
    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: 20px 40px 20px 20px;
}
.cate_csr a,
.cate_csr a:visited {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #333;
    transition: .2s;
}
.cate_csr a:hover {
    opacity: .6;
    transition: .2s;
}
.cate_csr a .img {
    margin: 0 40px 0 0;
}
.cate_csr a .tit {
    font-size: 18px;
    font-size: 1.8rem;
    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: 14px;
    font-size: 1.4rem;
    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 35px 5px 20px;
    border: 1px solid #eee;
    position: relative;
    transition: opacity 0.2s;
}
.main h1.company span a:after {
    content: "";
    width: 16px;
    height: 16px;
    background: url(../img/arw.png) 0 0 no-repeat;
    background-size: 16px auto;
    position: absolute;
    top: calc(50% - 8px);
    right: 10px;
}
.companyList.officer {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}
.companyList.officer dt {
    clear: both;
    padding: 0;
    width: 200px;
}
.companyList.en dt {
    width: 250px;
}
.companyList.officer dd {
    margin: 0;
    width: calc( 100% - 200px);
}
.companyList.en dd {
    margin: 0;
    width: calc( 100% - 250px);
}
.companyList.officer dd .name {
    display: inline-block;
    width: 85px;
    vertical-align: top;
}
.companyList.officer dd.en .name {
    display: block;
    width: auto;
    vertical-align: top;
}
.companyList.officer dd .txt {
    display: inline-block;
    margin: 0;
    vertical-align: top;
}
.companyList.en dd .txt {
    display: block;
    margin: 0;
    vertical-align: top;
    font-size: 80%;
}
.companyList.officer dt small {
    display: block;
    line-height: 1.3;
}


/* Link list
-------------------------------------------- */
ul.linkList {
    width: 100%;
    margin: 0;
    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;
    max-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;
    font-size: 16px;
    font-size: 1.6rem;
    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;
}

.top_back + ul.linkList li{
    position: absolute;
    bottom: 15px;
}

.top_back + ul.linkList li.back{
    left: 0;
}

.top_back + ul.linkList li.next{
    right: 0;
}

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: 850px;
    align-items: flex-start;
    padding: 3px 0;
}
dl.history_item .cat {
    width: 100px;
    text-align: center;
    background: #e1f6e5;
    padding: 5px 0;
    color: #21ab37;
    font-size: 12px;
    font-size: 1.2rem;
    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: 670px;
    padding: 3px 0;
}

/* 理念 */
.mission {
    background: url(../img/bg_mission.jpg) 0 0 no-repeat;
    padding: 105px 40px 105px 490px;
}
.mission p {
    font-size: 24px;
    font-size: 2.4rem;
    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: 1072px;
    margin: 0 auto;
    padding: 30px 40px;
    box-sizing: border-box;
}
.philosophy ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    font-size: 18px;
    font-size: 1.8rem;
}
.philosophy ul li {
    margin: 10px 0;
}

/* グループ */

ul.grouplist {
    list-style-type: none;
    margin: 0;
    padding: 30px 35px 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    background: #f8f8f8;
}
ul.grouplist li {
    width: 346px;
    border: 1px solid #ddd;
    background: #fff;
    margin: 0 21px 20px 0;
    padding: 10px;
    box-sizing: border-box;
}
ul.grouplist li:nth-child(3n) {
    margin: 0 0 20px;
}
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;
    padding: 16px 0 16px 70px;
}
.main h3.g02:before {
    content: "";
    position: static;
    background: url(../img/ico_seims.png) 0 0% no-repeat;
    padding: 16px 0 16px 80px;
}
.main h3.g03:before {
    content: "";
    position: static;
    background: url(../img/ico_medicine.png) 0 0% no-repeat;
    padding: 16px 0 16px 60px;
}
.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;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0 40px 40px;
}
.cate_intro p {
    font-size: 17px;
    font-size: 1.7rem;
}
.cate_intro p span {
    color: #22ab37;
    font-weight: bold;
}
.cate_intro.idea {
    background: #f9f9f9 url(../../company/image/img_intro.jpg) right bottom no-repeat;
}
.cate_intro.idea2 {
    background: #f9f9f9 url(../../company/image/img_intro.jpg) right bottom no-repeat;
    text-align: center;
}
.catemenu {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.catemenu_box {
    width: 360px;
    border: 1px solid #eee;
    margin: 0 36px 36px 0;
    box-sizing: border-box;
}
.catemenu_box:nth-child(3n) {
    margin: 0 0 36px;
}
.catemenu_box .inner {
    padding: 20px;
}
.catemenu_box p.tit {
    font-size: 18px;
    font-size: 1.8rem;
    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 .inner .btn {
    margin: 20px auto 0;
}
.catemenu_box .inner .btn a {
    background: #22ab37 url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    padding: 15px 0;
    color: #fff;
    transition: .2s;
    width: 100%;
}
.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: 40px;
    display: flex;
    align-items: center;
    color: #fff;
}
.search_dispensing .tit {
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    background: url(../img/ico_search_dispensing.png) 0 50% no-repeat;
    margin: 0 20px 0 0;
    padding: 15px 0 15px 150px;
}
.search_dispensing .button {
    margin: 0 0 0 auto;
}
.search_dispensing .button a,
.search_dispensing .button a:visited {
    display: block;
    width: 240px;
    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 40px;
    margin: 0 0 50px;
}

.csc_tel .tit {
    background: #22ab37;
    text-align: center;
    color: #fff;
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: bold;
    padding: 10px;
}
.csc_tel .tit:before {
    content: "";
    background: url(../img/ico_tel.png) 0 0 no-repeat;
    background-size: 109px auto;
    padding: 45px 109px 15px 0;
}
.wrapper section .block .csc_tel .inner {
    /*background: #fff;
    padding: 25px 40px;*/
    margin: 40px 40px 0;
}
.csc_tel .inner ul {
    list-style-type: none;
    margin: 70px 0 30px;
    padding: 0;
    display: flex;
}
.csc_tel .inner ul li {
    width: calc(100% / 3);
    text-align: center;
    border-right: 1px solid #ddd;
    padding: 0 0 0 0;
}
.csc_tel .inner ul li:first-child:before {
    content: "";
    background: url(../img/ico_haitiyaku.png) 50% 0 no-repeat;
    padding: 45px 33px 10px;
}
.csc_tel .inner ul li:nth-child(2):before {
    content: "";
    background: url(../img/ico_seims.png) 50% 0 no-repeat;
    padding: 45px 33px 10px;
}
.csc_tel .inner ul li:nth-child(3):before {
    content: "";
    background: url(../img/ico_seims_appli.png) 50% 0 no-repeat;
    padding: 45px 33px 10px;
}
.csc_tel .inner ul li:last-child {
    border: none;
}
.csc_tel .inner ul li:last-child:before {
    content: "";
    background: url(../img/ico_medicine.png) 50% 0 no-repeat;
    padding: 45px 33px 10px;
}
.csc_tel .inner p.stit {
    font-size: 20px;
    font-size: 2.0rem;
    line-height: 1.3;
    height: 50px;
}
.csc_tel .inner p.stit span {
    color: #22ab37;
    font-weight: bold;
}
.csc_tel .inner ul li a,
.csc_tel .inner ul li a:visited {
    font-family: 'Lato', serif;
    font-size: 32px;
    font-size: 3.2rem;
    font-weight: bold;
    text-decoration: none;
    color: #333;
}
.csc_tel .inner p.time {
    background: #f5faf7;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 5px 10px;
    height: auto;
}
.csc_form {
    width: 1056px;
    margin: 0 auto;
}
.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: 26px;
    font-size: 2.6rem;
    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 0 no-repeat;
    background-size: 66px auto;
    padding: 9px 82px 9px 0;
}

/* お問い合わせ */
.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: 20px;
    font-size: 2.0rem;
    list-style-type: none;
    overflow: hidden;
}
.stepflow li {
    line-height: 1.3;
    position: relative;
    display: table-cell;
    width: 33%;
    padding: 12px 0 15px 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: 20px;
    right: -.6em;
    border-width: 8px 0 8px .5em;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
}
.stepflow li:after {
    z-index: 10;
    top: 20px;
    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: inline-block;
    vertical-align: middle;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1;
    font-family: 'Lato', serif;
    background: #23ab38;
    padding: 3px 10px 5px;
    margin: 0 10px 0 0;
    border-radius: 20px;
    color: #fff;
}
.stepflow li.is-current span {
    background: #fff;
    color: #23ab38;
}
.contactform th {
    width: 25%;
}
.contactform th span.required {
    float: right;
    color: #fff;
    font-size: 12px;
    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;
    justify-content: space-between;
}
.health_list li {
    width: 208px;
    border: 1px solid #eee;
    box-sizing: border-box;
    text-align: center;
}
.health_list li a,
.health_list li a:visited {
    display: block;
    text-decoration: none;
    color: #333;
    padding: 20px;
    transition: .2s;
}
.health_list li a:hover {
    opacity: .6;
    transition: .2s;
}
.health_list li a p {
    margin: 10px 0 0 0;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    background: url(../img/arw_down.png) right .4em no-repeat;
    background-size: 16px auto;
}
.health_content {
    background: #f5faf7;
    padding: 40px 40px 20px 0;
    display: flex;
}
.health_content .tit {
    width: 240px;
    text-align: center;
}
.health_content .tit p {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
}
.health_content .content {
    width: 870px;
}
.health_content .content_body {
    margin: 0 0 20px;
}
.health_content p.trigger {
    display: block;
    border: 1px solid #eee;
    background: #fff url(../img/ico_trigger_plus.png) 98% 50% no-repeat;
    background-size: 21px auto;
    font-size: 18px;
    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) 98% 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) 98% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.health_content .acc_show ul li a:hover {
    background: #e2f6ea url(../img/arw.png) 98% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}


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

.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: 38px 40px 38px 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: 240px;
    max-width: 240px;
    background-repeat: no-repeat;
    background-size: 80px auto;
    background-position: center bottom;
    padding-bottom: 90px;
}

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

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

.ttl_health_headline[class]{
    color:#22ab37;
    font-size: 24px;
    font-size: 2.4rem;
    padding: 0 0 0 40px;
    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;
    margin-left: auto;
    text-align: right;
}

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

.sblock_wrap {
    width: 100%;
    display: flex;
    justify-content: flex-start;
}
.sblock_wrap .sblock:first-child {
    width: 25%;
}
.sblock_wrap .sblock:last-child {
    width: 40%;
}

.tablebox {
    display: flex;
}
.tablebox p {
    margin: 0 30px 0 0;
}

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

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




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

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

.hm_system {
    background: #f5faf7;
    padding: 40px 40px 15px;
}
.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: 340px;
    background: #fff;
    margin: 0 0 25px;
}
.hm_system ul li p {
    padding: 20px;
}
.hm_system ul li p span {
    color: #22ab37;
    font-weight: bold;
}

h2.about_hm_system {
    background: #22ab37;
    color: #fff;
    text-align: center;
    padding: 20px;
    margin: 0 0 40px;
}
h2.about_hm_system:before {
    content: "";
    position: static;
    padding: 14px 0 14px 75px;
    width: 62px;
    height: 53px;
    background: url(../img/ico_haitiyaku.png) 0 0 no-repeat;
}
.hm_system_flow h3 {
    background: #f5faf7;
    padding: 12px 20px;
    font-size: 24px;
    font-size: 2.4rem;
    margin: 0 0 25px;
}
.hm_system_flow h3 span {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    background: #22ab37;
    color: #fff;
    border-radius: 30px;
    padding: 5px 20px 3px;
    vertical-align: middle;
    margin: 0 0 0 20px;
}
.hm_system_flow h3:before {
    content: "";
    background: none;
    height: 0;
    position: static;
}
.hm_system_flow .content {
    margin: 20px 0 0 0;
    display: flex;
    justify-content: space-between;
}
.hm_system_flow .content .txt {
    width: 780px;
}
.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: 704px;
    font-size: 18px;
    font-size: 1.8rem;
}
.hm_system_flow .content .txt dd .attention {
    color: #1c8d2d;
    font-size: 16px;
    font-size: 1.6rem;
}
.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: 24px;
    font-size: 2.4rem;
    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: 55px auto;
    padding: 10px 65px 10px 0;
}
.hm_system_flow .content .txt dd .consul_counter .tit span {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    margin: 0 0 0 10px;
}
.hm_system_flow .content .txt dd .consul_counter .tel {
    padding: 15px 30px;
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
}
.hm_system_flow .content .txt dd .consul_counter .tel a,
.hm_system_flow .content .txt dd .consul_counter .tel a:visited {
    font-size: 28px;
    font-size: 2.8rem;
    font-family: 'Lato', serif;
    font-weight: bold;
    text-decoration: none;
    color: #333;
    margin: 0 20px 0 0;
    cursor: default;
    pointer-events: none;
}
.hm_order {
    background: #f5faf7 url(../img/bg_hm_order.jpg) 0 0 no-repeat;
    padding: 60px 83px 60px 40px;
    display: flex;
    justify-content: space-between;
    text-align: center;
}
.hm_order .order {
    width: 720px;
    background: #fff;
    padding: 40px;
    box-sizing: border-box;
    position: relative;
}
.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;
    display: flex;
    justify-content: space-between;
}
.hm_order .order ul li {
    width: 308px;
    position: relative;
}
.hm_order .order ul li span {
    position: absolute;
    top: -40px;
    left: -40px;
}
.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: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 12px 0;
    transition: .2s;
}
.hm_order .order ul li a:hover {
    background: #5dbd6c url(../img/arw_right_wht.png) 95% 50% no-repeat;
    background-size: 16px auto;
    transition: .2s;
}
.hm_order .search {
    width: 244px;
}
.hm_order .order .tit,
.hm_order .search .tit {
    font-size: 24px;
    font-size: 2.4rem;
    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;
    margin: 0 0 10px -36px;
    padding: 0;
    list-style-type: none;
}

ul.recommend_list li{
    width: 360px;
    margin: 0 0 30px 36px;
    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: 358px;
    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: 16px 23px 23px;
}

ul.recommend_list li a .content .tit{
    font-size: 18px;
    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.recommend_list li a .content .voiceBox{
    margin: 19px 0 0;
    padding: 16px 20px 17px;
    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{
    display: flex;
    justify-content: space-between;
}

/* のぞいてみよう */
.look_medbox {
    background: #22ab37;
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3;
    color: #fff;
    font-weight: bold;
    padding: 15px 0;
}
.look_medbox .inner {
    display: inline-block;
    background: url(../img/ico_haitiyaku_l.png) 0 50% no-repeat;
    padding: 10px 0 10px 120px;
}
.look_medbox span {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    background: #fff;
    color: #333;
    padding: 5px 20px;
    border-radius: 20px;
}
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: 11px;
    font-size: 1.1rem;
    display: inline-block;
}

span.textn {
    font-size: 15px;
    font-size: 1.5rem;
    display: inline-block;
}

span.textl {
    font-size: 18px;
    font-size: 1.8rem;
    display: inline-block;
}

span.textll {
    font-size: 20px;
    font-size: 2.0rem;
    display: inline-block;
}

span.textxl {
    font-size: 24px;
    font-size: 2.4rem;
    display: inline-block;
}

span.textxxl {
    font-size: 28px;
    font-size: 2.8rem;
    display: inline-block;
}

.btn {
    text-align: center;
}

.btn a,
.btn a:visited {
    display: inline-block;
    background: #07539f;
    color: #fff;
    text-decoration: none;
    padding: 15px 60px;
    transition: background .2s;
}

.btn a:hover {
    background: #1568bb;
    transition: background .2s;
}

.overimg {
    transition: opacity .2s;
}

.overimg:hover {
    opacity: .6;
    transition: opacity .2s;
}

table {
    width: 100%;
    border-collapse: collapse;
    line-height: 1.5;
}

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

table.nbr th,
table.tbr table.nbr th {
    font-weight: bold;
    padding: 0;
    border-right: none;
    border-bottom: none;
}

table.nbr td,
table.tbr table.nbr td {
    padding: 0;
    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: 15px 20px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #fafafa;
}

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

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

.photo-r,
.alignright {
    font-size: 14px;
    font-size: 1.4rem;
    float: right;
    margin: 3px 0 40px 40px;
    text-align: left;
}

.photo-l,
.alignleft {
    font-size: 14px;
    font-size: 1.4rem;
    float: left;
    margin: 3px 40px 40px 0;
    text-align: left;
}

.photo-c,
.aligncenter {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 3px auto 40px;
}

.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;
}

iframe {
    border: none;
}
.pc_tac {
    text-align: center;
}
.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;
}

.pc_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:-36px 0 0 -36px;
    padding-top: 1px;
}

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

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

.box_colum.col3 >*{
    flex-basis: calc(100% / 3 - 36px);
    max-width: calc(100% / 3 - 36px);
}

.box_colum.col4 >*{
    flex-basis: calc(100% / 4 - 36px);
    max-width: calc(100% / 4 - 36px);
}

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

.box_colum.center > *{
    flex-basis: auto;
    max-width: inherit;
}

.box_colum_btn a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    background: #22ab37;
    color: #fff;
    padding: 12px 46px 12px 20px;
}

.box_colum_btn a: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;
}

.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: 38px 40px;
}

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

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

.common_box_title[class]{
    font-size: 20px;
    font-size: 2rem;
}

.common_box2{
    background: #fafafa;
}

.common_box2 .common_box2_title,
.common_box2 h2.common_box2_title {
    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;
}
.common_box2 .common_box2_title span,
.common_box2 h2.common_box2_title span {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    margin: 0 0 0 15px;
}

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

.common_box2 .common_box2_text{
    padding: 40px;
}
.common_box2 .common_box2_text_s{
    padding: 20px 40px;
}

.voice_comment {
    background-color: #f5faf7;
    padding: 38px 40px;
}

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

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

.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: 40px;
}

.voice_fukidasi.onlyBg{
    display: block;
}

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

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

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

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

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

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

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

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

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

.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: 40px;
}

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


.voice_fukidasi.arrDown {
    position: relative;
    padding-bottom: 48px;
    margin-bottom: 24px;
}

.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: 32px 32px 0 32px;
    border-color: #22ab37 transparent transparent transparent;
    margin-bottom: -16px;
}

.faq_q{
    background-color: #f8f8f8;
    border-bottom: 2px solid #dde2df;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    background-repeat: no-repeat;
    background-size: 33px auto;
    background-position: 20px 16px;
    background-image: url(../img/ico_faq_q.png);
    padding: 20px 20px 18px 64px;

}

.faq_a{
    background-repeat: no-repeat;
    background-size: 33px auto;
    background-position: 20px 16px;
    background-image: url(../img/ico_faq_a.png);
    padding: 20px 20px 18px 64px;
}

/* 201207追加
======================================================= */

/* よくあるご質問
======================================================= */

.faq_linklist{
    background: #f5faf7;
    padding: 25px 40px 48px;
}

.faq_linklist h2{
    position: relative;
    z-index: 1;
    left: -40px;
    padding-left: 40px;
    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: 18px;
    font-size: 1.8rem;
    color: #181818;
    margin: 0 0 16px;
    padding: 17px 24px 14px;
    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: 63px;
    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: 100%;
}

.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;
    margin: 0 0 0 -14px;
    padding: 0;
    list-style-type: none;
}

ul.itemList li {
    width: 187px;
    margin: 0 0 10px 14px;
    padding: 0;
    text-align: center;
    position: relative;
    padding: 15px;
    border: 1px solid #ccc;
}

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: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    transition: ease .2s opacity;
}
.tab_area label:hover {
    opacity: .5;
}
.panel_area {
    background: #f8f8f8;
}
.tab_panel {
    display: none;
    width: 100%;
    padding: 50px;
    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: 162px;
    margin: 0 16px 16px 0;
    display: flex;
}
.tab_panel ul li:nth-child(6n) {
    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: 300px;
    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: 40px 40px 20px;
}
.faq_acdn .ac_faq_q {
    position: relative;
    padding-left: 63px;
    background: #fff url(../img/ico_trigger_plus.png) right 23px top 50% no-repeat;
    background-size: 21px auto;
    border: 1px solid #eee;
    cursor: pointer;
    margin: 0 0 20px;
    color: #181818;
    padding: 17px 24px 14px 64px;
    display: block;
}
.faq_acdn .ac_faq_q p {
    font-size: 18px;
    font-size: 1.8rem;
}
.faq_acdn .ac_faq_q.active {
    background: #fff url(../img/ico_trigger_minus.png) right 23px top 50% no-repeat;
    background-size: 21px auto;    
}
.faq_acdn .ac_faq_q:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: 19px;
    top: 17px;
    height: 15px;
    width: 33px;
    height: 33px;
    background: url(../img/ico_faq_q.png) 0 0 no-repeat;
    background-size: 100%;
}

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


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

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

.un_page_list a{
    display: block;
    text-decoration: none;
    color: #181818;
    width: 358px;
    background: #fff;
    border: 1px solid #eee;
    margin: 0 0 30px 36px;
}

.un_page_list a .tit{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 16px 49px 16px 23px;
    background: url(../img/arw.png) right 23px top 23px 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{
    display: flex;
    justify-content: space-between;
}

.search_top > div{
    width: 567px;
    background: #fafafa;
}

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

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

.search_top .content_map{
    padding: 0 19px 40px 12px;
}

.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;
}


/*--- MAP ---*/
ul.searchMapList {
    width: 465px;
    height: 420px;
    margin: 0;
    list-style: none;
    position: relative;
    left: 70px;
    top: 55px;
}

ul.searchMapList li {
    margin: 0;
    text-indent: -9999px;
}
ul.searchMapList li a {
    display: block;
    overflow: hidden;
    position: absolute;
    background: #f6f6f7 url(../../shop/image/map_all.png) 0 0 no-repeat;
}
ul.searchMapList li a:hover { zoom: 1; filter: alpha(opacity=75); opacity:0.75; }

ul.searchMapList li.hokkaido a { width: 130px; height: 118px; top: -55px; right: 35px; background-position: 0 0; }
ul.searchMapList li.aomori a { width: 101px; height: 27px; top: 70px; right: 62px; background-position: 0 -118px; }
ul.searchMapList li.iwate a { width: 51px; height: 34px; top: 97px; right: 62px; background-position: 0 -145px; }
ul.searchMapList li.miyagi a { width: 52px; height: 39px; top: 131px; right: 62px; background-position: 0 -179px; }
ul.searchMapList li.akita a { width: 51px; height: 34px; top: 97px; right: 113px; background-position: 0 -218px; }
ul.searchMapList li.yamagata a { width: 50px; height: 39px; top: 131px; right: 114px; background-position: 0 -252px; }
ul.searchMapList li.fukushima a { width: 80px; height: 32px; top: 170px; right: 62px; background-position: 0 -291px; }
ul.searchMapList li.ibaraki a { width: 34px; height: 50px; top: 202px; right: 62px; background-position: 0 -323px; }
ul.searchMapList li.tochigi a { width: 33px; height: 38px; top: 202px; right: 96px; background-position: 0 -373px; }
ul.searchMapList li.gunma a { width: 33px; height: 38px; top: 202px; right: 129px; background-position: 0 -411px; }
ul.searchMapList li.saitama a { width: 66px; height: 32px; top: 240px; right: 96px; background-position: 0 -449px; }
ul.searchMapList li.chiba a { width: 34px; height: 87px; top: 252px; right: 62px; background-position: 0 -481px; }
ul.searchMapList li.tokyo a { width: 46px; height: 28px; top: 272px; right: 96px; background-position: 0 -568px; }
ul.searchMapList li.kanagawa a { width: 35px; height: 37px; top: 300px; right: 107px; background-position: 0 -596px; }
ul.searchMapList li.yamanashi a { width: 31px; height: 29px; top: 272px; right: 142px; background-position: 0 -633px; z-index: 1; }
ul.searchMapList li.nagano a { width: 29px; height: 98px; top: 203px; right: 162px; background-position: 0 -662px; }
ul.searchMapList li.nigata a { width: 43px; height: 45px; top: 158px; right: 142px; background-position: 0 -760px; }
ul.searchMapList li.toyama a { width: 31px; height: 52px; top: 151px; right: 185px; background-position: 0 -805px; }
ul.searchMapList li.ishikawa a { width: 25px; height: 57px; top: 147px; right: 216px; background-position: 0 -857px; }
ul.searchMapList li.fukui a { width: 42px; height: 37px; top: 204px; right: 217px; background-position: 0 -914px; z-index: 2; }
ul.searchMapList li.gifu a { width: 25px; height: 98px; top: 203px; right: 191px; background-position: 0 -951px; z-index: 3; }
ul.searchMapList li.shizuoka a { width: 41px; height: 41px; top: 301px; right: 142px; background-position: 0 -1049px; }
ul.searchMapList li.aichi a { width: 33px; height: 45px; top: 301px; right: 183px; background-position: 0 -1090px; z-index: 4; }
ul.searchMapList li.mie a { width: 25px; height: 88px; top: 273px; right: 213px; background-position: 0 -1135px; }
ul.searchMapList li.shiga a { width: 22px; height: 32px; top: 241px; right: 217px; background-position: 0 -1223px; }
ul.searchMapList li.kyoto a { width: 41px; height: 55px; top: 218px; right: 239px; background-position: 0 -1255px; }
ul.searchMapList li.osaka a { width: 20px; height: 47px; top: 273px; right: 260px; background-position: 0 -1310px; }
ul.searchMapList li.hyogo a { width: 24px; height: 78px; top: 219px; right: 280px; background-position: 0 -1357px; }
ul.searchMapList li.nara a { width: 21px; height: 64px; top: 273px; right: 239px; background-position: 0 -1435px; z-index: 5; }
ul.searchMapList li.wakayama a { width: 42px; height: 43px; top: 318px; right: 239px; background-position: 0 -1499px; }
ul.searchMapList li.tottori a { width: 26px; height: 35px; top: 219px; right: 303px; background-position: 0 -1542px; }
ul.searchMapList li.shimane a { width: 25px; height: 36px; top: 218px; right: 329px; background-position: 0 -1577px; }
ul.searchMapList li.okayama a { width: 26px; height: 42px; top: 254px; right: 303px; background-position: 0 -1613px; }
ul.searchMapList li.hiroshima a { width: 25px; height: 42px; top: 254px; right: 329px; background-position: 0 -1655px; }
ul.searchMapList li.yamaguchi a { width: 24px; height: 77px; top: 219px; right: 354px; background-position: 0 -1697px; }
ul.searchMapList li.tokushima a { width: 50px; height: 29px; top: 329px; left: 132px; background-position: 0 -1774px; }
ul.searchMapList li.kagawa a { width: 50px; height: 28px; top: 301px; left: 132px; background-position: 0 -1803px; }
ul.searchMapList li.ehime a { width: 45px; height: 28px; top: 301px; left: 87px; background-position: 0 -1831px; }
ul.searchMapList li.kouchi a { width: 45px; height: 29px; top: 329px; left: 87px; background-position: 0 -1859px; }
ul.searchMapList li.fukuoka a { width: 58px; height: 36px; top: 219px; left: 24px; background-position: 0 -1888px; }
ul.searchMapList li.saga a { width: 16px; height: 49px; top: 219px; left: 8px; background-position: 0 -1924px; }
ul.searchMapList li.nagasaki a { width: 18px; height: 48px; top: 219px; left: -10px; background-position: 0 -1973px; }
ul.searchMapList li.kumamoto a { width: 24px; height: 65px; top: 255px; left: 24px; background-position: 0 -2021px; }
ul.searchMapList li.oita a { width: 35px; height: 34px; top: 255px; left: 48px; background-position: 0 -2086px; }
ul.searchMapList li.miyazaki a { width: 34px; height: 31px; top: 289px; left: 48px; background-position: 0 -2120px; }
ul.searchMapList li.kagoshima a { width: 59px; height: 40px; top: 320px; left: 24px; background-position: 0 -2151px; }
ul.searchMapList li.okinawa a { width: 50px; height: 57px; top: 301px; left: -30px; background-position: 0 -2191px; }


/* 条件を指定して検索 */
.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{
    margin-left: 0;
    padding: 0 0 0 16px;
}

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

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

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

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

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

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

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

.search_top form .btn_submit_group{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 0 0;
}

.btn_submit input,
input.btn_submit{
    display: block;
    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: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    transition: .2s;
}

.search_top form input.btn_submit{
    margin: 0 20px 0 0;
}
.search_top form input.btn_submit:hover{
    opacity: .6;
    transition: .2s;
}
.search_top form input.btn_reset{
    display: inline;
    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 0;
}
.loc_btn input {
    border: 1px solid #1e8c2d;
    outline: none;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    padding: 17px 45px 17px 90px;
    background: #fff url(../img/ico_local.png) 50px 40% no-repeat;
    transition: .2s;
}
.loc_btn input:hover {
    opacity: .6;
    transition: .2s;
}

.shop_distance {
    color: #1b8e29;
    background: #f5faf6;
    margin: 0 0 10px;
    padding: 3px 0;
    text-align: center;
}


/* 検索結果ページ
-------------------------------------------- */
.search_detail .search_detail_group{
    display: flex;
    border-bottom: 1px solid #eaeaea;
}

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

.search_detail_group .tit_area{
    width: 280px;
    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{
    width: 872px;
    background: #fafafa;
    padding: 15px 30px;
    box-sizing: border-box;
}

.search_detail_group .content .txt span{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
}

.search_detail .tbr_form{
    margin: 0 0 20px;
    table-layout: fixed;
}

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

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

.search_detail .tbr_form .form_tit {
    font-size: 18px;
    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_detail .tbr_form .form_tit:before {
    content: "";
    position: absolute;
    top: 45%;
    left: 0px;
    width: 18px;
    height: 3px;
    background-color:#23ab38;
}

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

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


/* LINEボタン */
.line-friend-btn {
    width: 100%;
    max-width: 240px;
    height: 48px;
    display: block;
    margin: 8px auto 0;
    padding: 12px 0 0 16px;
    background: #00b833 url(../../shop/image/share-b.png) 13px 50% no-repeat;
    background-size: 42px auto;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    box-sizing: border-box;
}
.line-friend-btn.detail {
    width: 60%;
    max-width: 100%;
    margin: 0;
    padding: 12px 0 0 16px;
}
.line-friend-btn:hover {
    opacity: 0.8;
}

/* 処方せんネット受付する */
.epark-btn {
    width: 100%;
    max-width: 240px;
    height: 48px;
    display: block;
    margin: 8px auto 0;
    padding: 12px 0 0 22px;
    background: #99cc00 url(../img/ico_blank_w.png) right 17px top 15px no-repeat;
    background-size: 15px auto;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: left;
    box-sizing: border-box;
}
.epark-btn.detail {
    width: 60%;
    max-width: 100%;
    margin: 0;
    padding: 12px 8px 0 0;
    text-align: center;
}
.epark-btn:hover {
    opacity: 0.8;
}

/* ページング
-------------------------------------------- */
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;
}

ul.pagination li a,
ul.pagination li span.current{
    display: block;
    text-decoration: none;
    font-size: 18px;
    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: 14px;
    font-size: 1.4rem;
    padding: 5px 11.99px 4px;
}

.page_count{
    padding: 12px 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;
}

.shop_un_2col{
    display: flex;
    justify-content: space-between;
    margin: 0 0 60px;
}

.shop_un_2col .map_area{
    width: 580px;
}
.shop_un_2col .map_area iframe{
    width: 100%;
    height: 400px;
}
.shop_un_2col .data_area{
    width: 545px;
}
.shop_un_2col .data_area ul.flList{
    max-width: 387px;
}

.shop_un_btn.btn_2col{
    display: flex;
    justify-content: space-between;
}

.shop_un_btn.btn_2col a{
    width: 47.7%;
}


/* 周辺店舗 */
.search_wakuBox{
    display: flex;
    justify-content: space-between;
    background: #f5faf7;
    padding: 40px 40px 39px 31px;
}

.search_wakuBox .tit_area{
    width: 171px;
}

.search_wakuBox .tit_area .tit {
    font-size: 24px;
    font-size: 2.4rem;
    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 .list_area{
    width: 890px;
    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;
    table-layout: fixed;
}

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

.search_change .tbr_form .form_tit {
    font-size: 18px;
    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;
}



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

.olshop {
    display: flex;
    justify-content: space-between;
}
.ds_pickup {
    background: #daedd7;
    padding: 40px 0 40px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ds_pickup .tit {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 20px;
}
.ds_pickup .tit:after {
    content: "";
    width: 20px;
    height: 4px;
    background: #23ab38;
    margin: 10px 0 0 0;
}
.ds_pickup .btn {
    text-align: left;
}
.ds_pickup .btn a,
.ds_pickup .btn a:visited {
    background: #fff url(../img/arw.png) 95% 50% no-repeat;
    background-size: 16px auto;
    color: #333;
    font-weight: bold;
    text-align: left;
    padding: 10px 40px 10px 20px;
    border: 1px solid #eaeaea;
}
/* スライダー枚数不足時 .pu_slide {
    width: 930px;
    margin: 0;
    overflow: hidden;
}
.pu_slide ul {
    width: 960px;
    padding: 0;
    margin-left: -30px;
    list-style-type: none;
}
.pu_slide ul .slick-slide {
    width: 204px;
    position: relative;
    margin: 0 0 0 0;
}
.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 a {
    display: block;
}
.pu_slide ul li a:hover {
    opacity: 0.5;
}
.pu_slide ul .slick-arrow {
    position: absolute;
    width: 48px;
    height: 48px;
    z-index: 5;
    text-indent: -9999px;
    border: none;
    top: 35%;
}

.pu_slide ul .slick-prev {
    display: none;
    background: url(../img/arw_slide_l.png) 0 0 no-repeat;
    background-size: 48px 48px;
    left: 80px;
}

.pu_slide ul .slick-next {
    background: url(../img/slide_arw_r.png) 0 0 no-repeat;
    background-size: 48px 48px;
    right: 20px;
    outline: none;
}*/

.pu_slide {
    width: 930px;
    margin: 0;
    overflow: hidden;
}
.pu_slide ul {
    /*width: 960px;*/
    width: 690px;
    padding: 0;
    /*margin-left: -110px;*/
    margin-left: 0px;
    list-style-type: none;
}
.pu_slide ul .slick-slide {
    width: 204px;
    position: relative;
    margin: 0 0 0 0;
}
.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 a {
    display: block;
}
.pu_slide ul li a:hover {
    opacity: 0.5;
}
.pu_slide ul .slick-arrow {
    position: absolute;
    width: 48px;
    height: 48px;
    z-index: 5;
    text-indent: -9999px;
    border: none;
    top: 35%;
}

.pu_slide ul .slick-prev {
    display: none;
    background: url(../img/arw_slide_l.png) 0 0 no-repeat;
    background-size: 48px 48px;
    left: 80px;
}

.pu_slide ul .slick-next {
    background: url(../img/slide_arw_r.png) 0 0 no-repeat;
    background-size: 48px 48px;
    right: 20px;
    outline: none;
}
.sames_theme {
    background: #fafafa;
    padding: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sames_theme div:first-child {
    width: 295px;
}
.sames_theme .tit {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 20px;
}
.sames_theme .tit:after {
    content: "";
    width: 20px;
    height: 4px;
    background: #23ab38;
    margin: 10px 0 0 0;
}
.point_card_search.top {
    display: block;
}
.point_card_search.top .tit {
    background: #22ab37;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    display: flex;
    padding: 20px 90px;
    position: relative;
}
.point_card_search.top .tit img {
    position: absolute;
    top: -17px;
    right: 195px;
}
.point_card_search.top .tit span {
    position: relative;
    display: inline-block;
    margin: 0 20px 0 0;
    padding: 5px 20px;
    color: #333;
    font-size: 18px;
    font-size: 1.8rem;
    background: #fff;
    border-radius: 30px;
}
.point_card_search.top .tit span:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 98%;
    margin-top: -10px;
    border: 10px solid transparent;
    border-left: 15px solid #fff;
}
.point_card_search.top .inr {
    background: #e6eeef url(../img/bg_dstop_search.jpg) 50% 0 no-repeat;
    padding: 45px 55px;
}
.point_card_search.top .search_wrap {
    display: flex;
    margin: 0 0 40px;
}
.point_card_search.top .search_area {
    width: 755px;
}
.point_card_search.top .search_content {
    background: none;
    padding: 0;
}
.point_card_search.top .search_wrap .other {
    width: 240px;
    margin: 0 0 0 40px;
}
.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: 22px;
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    margin: 0 0 10px;
}
.point_card_search.top .search_area .dss_tit {
    position: relative;
    display: inline-block;
    padding: 0 255px;
}
.point_card_search.top .search_area .dss_tit:before,
.point_card_search.top .search_area .dss_tit:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 245px;
    height: 1px;
    background-color: #22ab37;
}
.point_card_search.top .search_area .dss_tit:before {
    left:0;
}
.point_card_search.top .search_area .dss_tit:after {
    right: 0;
}
.point_card_search.top .group {
    display: flex;
    align-items: center;
    margin: 0 0 20px;
}
.point_card_search.top .group .stit {
    width: 224px;
    text-align: center;
    background: #eefaf1;
    padding: 25px 0;
}
.point_card_search.top .group .logo {
    width: calc(100% - 224px);
    background: #fff;
    text-align: center;
    padding: 20px 0;
}
.point_card_search.top .group .stit img:first-child {
    margin: 0 0 10px;
}

.btn_fordrugstore {
    width: 1056px;
    margin: 0 auto;
}
.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: center;
    text-decoration: none;
    color: #fff;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: bold;
    padding: 15px;
    position: relative;
    transition: .2s; 
}
.btn_fordrugstore a:hover {
    opacity: .6;
    transition: .2s;
}
.btn_fordrugstore a:before {
    content: "";
    background: url(../img/ico_drugstore.png) 0 0 no-repeat;
    background-size: 67px auto;
    padding: 9px 82px 9px 0;
}

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

.idea_tit{
    background: #f9f9f9;
}
.idea_tit img{
    margin: 0;
}
.idea_tit .photo-r{
    margin: 0 0 0 45px;
}
.idea_tit .photo-l{
    margin: 0 45px 0 0;
}
.idea_tit p.tit{
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 55px 0 0 45px;
}
.idea_tit p.txt{
    font-size: 18px;
    font-size: 1.8rem;
    padding: 0 0 0 45px;
}
.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: 25px 30px;
    border-bottom: 1px solid #eeeeee;
}
ul.idea_list li:first-child{
    padding: 15px 30px 25px;
}
ul.idea_list li p.tit{
    color: #22ab37;
    font-weight: bold;
    font-size: 22px;
    font-size: 2.2rem;
    font-family: 'Lato', sans-serif;
    width: 235px;
    float: left;
}
ul.idea_list li p.txt{
    font-size: 20px;
    font-size: 2.0rem;
}

/* 業績 */

.result_img {
    background-color: #fafafa;
    padding: 38px 40px;
}

/* サービス一覧 */

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: 360px;
    margin: 0 0 30px;
}
ul.service_list li .txt{
    margin: 20px;
}
ul.service_list li .txt .arw{
    font-size: 18px;
    font-size: 1.8rem;
    width: 92%;
}
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;
}
ul.service_list li:hover{
    opacity: 0.8;
    cursor: pointer;
}

.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: 360px;
    margin: 0 36px 30px 0;
    border: 1px solid #eee;
    box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
ul.pb_list li:nth-child(3n) {
    margin: 0 0 30px;
}

ul.pb_list li a{
    display: block;

    color: #181818;
    text-decoration: none;
}
ul.pb_list li a .img {
    position: relative;
    width: 358px;
    height: 226px;
    overflow: hidden;
}

ul.pb_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.pb_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.pb_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.pb_list li a .content,
ul.pb_list li .content.nolink{
    padding: 16px 23px 23px;
}

ul.pb_list li a .content .tit{
    font-size: 18px;
    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: 18px;
    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 {
    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;
}

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

.haichi_point_explain p.tit{
    background: #23ab38;
    color: #fff;
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 10px 0 8px;
}
ul.haichi_point_list{
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    background: #f5faf7;
    padding: 40px;
    justify-content:space-between;
}
ul.haichi_point_list li{
    background: #fff;
}
ul.haichi_point_list li p{
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
}
ul.haichi_point_list li p span{
    color: #23ab38;
}

/* ポイントの見方
-------------------------------------------- */
.haichi_point_guide.common_box2 .common_box2_text{
    display: flex;
    justify-content: space-between;
    padding: 43px 40px 7px 44px;
}

.haichi_point_guide.common_box2 .content{
    width: 485px;
}

.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: 20px;
    font-size: 2.0rem;
    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{
    display: flex;
    justify-content: space-between;
    padding: 22px 32px 21px;
}

.haichi_point_guide .content .content_in .img{
    width: 140px;
}

.haichi_point_guide .content .content_in .txt{
    width: 252px;
}

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

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

.block_split {
    display: flex;
    justify-content: space-between;
}
.block_split .txt {
    width: 820px;
}
.block_split .img {
    width: 300px;
}
.block_split .img .img_block {
    margin: 0 0 20px;
}



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

.tvcm_profile{
    border: 8px solid #f8f8f8;
    padding: 0 28px 0 38px;
}
.tvcm_profile .name_catch{
    color: #22ab37;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    margin: 35px 0 0;
}
.tvcm_profile .name{
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: bold;  
    margin: 0 0 20px;
}
.tvcm_profile .name span{
    font-size: 18px;
    font-size: 1.8rem;
}
.tvcm_profile .photo-r{
    margin: 3px 0 15px 40px;
}
    
.tvcm_video{
    padding: 60px 40px 55px;
    background: #f5faf7;
    display: flex;
    justify-content: space-between;
}

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

ul.sitemap{
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: 560px;
    float: left;
    margin: 0 32px 0 0;
}
ul.sitemap:last-child{
    margin: 0;
}
ul.sitemap li a{
    text-decoration: none;
    color: #181818;
}
ul.sitemap li a:hover {
    text-decoration: underline;
}
ul.sitemap li.li_tit{
    border-bottom: 1px solid #eeeeee;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
}
ul.sitemap li.li_tit a:first-child{
    display: inline-block;
    padding: 0 0 0 36px;
    margin: 25px 0 20px;
    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 40% 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 20px 38px;
    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{
    display: flex;
    justify-content: space-between;
}

.point_card_top_2col .content{
    background: #f5faf7;
    width: 561px;
    padding: 26px 10px 34px 40px;
    box-sizing: border-box;
}

.point_card_top_2col .content .tit{
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    margin: 0 0 14px;
    padding: 0 0 2px 130px;
    background: url(../../point_card/image/img_point_card_top01.jpg) 0 2px no-repeat;
}

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

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

/* 検索 */
.point_card_search{
    display: flex;
}

.point_card_search .search_area{
    width: 835px;
}

.point_card_search .search_tit{
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #22ab37;
    padding: 22px 41px 19px 45px;
}

.point_card_search .search_tit .tit{
    font-size: 28px;
    font-size: 2.8rem;
    color: #fff;
    font-weight: bold;
    padding: 11px 0 10px 115px;
    background: url(../img/ico_seims_l.png) 0 50% no-repeat;
}

.point_card_search .search_tit .btn a,
.point_card_search .search_tit .btn a:visited {
    display: inline-block;
    color: #181818;
    text-decoration: none;
    padding: 16px 50px 16px 17px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
}

.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: 40px 41px 41px 40px;
    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;
    width: 563px;
    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-right: 0;
}

.point_card_search .search_content .tab_sp{
    display: block;
    width: 267px;
    text-decoration: none;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    background: #bcbcbc;
    text-align: center;
    padding: 7px;
}

.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: 563px;
    border: none;
    font-size: 18px;
    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{
    position: absolute;
    z-index: 1;
    right: 0;
    top: 0;
    width: 188px;
    height: 116px;
    display: block;
    padding: 17px 45px 17px 68px;
    color: #fff;
    background: #1c8d2d url(../img/ico_search_l_w.png) no-repeat 33px 50%;
    background-size: 24px auto;
    border: none;
    font-size: 20px;
    font-size: 2.0rem;
    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: 317px;
    background: #f5faf7;
    text-align: center;
    padding: 46px;
    box-sizing: border-box;
}

.point_card_search .contact_area .tit{
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 21px;
}

.point_card_search .contact_area .txt{
    font-size: 15px;
    font-size: 1.5rem;
    margin: 0 0 24px;
}

.point_card_search .contact_area .btn a {
    display: block;
    color: #181818;
    font-weight: bold;
    background: #fff;
    border: 1px solid #eaeaea;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 17px 67px 17px 30px;
    background: #fff url(../img/arw.png) right 16px top 50% no-repeat;
    background-size: 16px auto;
}

/* ギフトポイント交換商品一覧 */
.point_card_gift{
    position: relative;
    padding: 31px 240px 40px 40px;
    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{
    position: absolute;
    z-index: 1;
    top: 40px;
    right: 40px;
}
.point_card_gift .content_foot{
    display: flex;
    justify-content: space-between;
}

.point_card_gift .content_foot .txt{
    width: 425px;
}

.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;
}

.point_card_gift .content_foot .img{
    width: 408px;
}

/* 入会方法 */
.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 40px;
}
.benefits .tit {
    background: #22ab37;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding: 10px 10px 10px 0;
}
.benefits .tit span {
    background: #9fca47;
    font-size: 18px;
    font-size: 1.8rem;
    vertical-align: middle;
    padding: 5px 20px;
    margin: 0 20px 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: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.benefits .inner.top {
    align-items: start;
}
.benefits .inner .catch {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 20px 0 0;
    max-width:100%
}
.benefits .inner .catch span {
    font-size: 24px;
    font-size: 2.4rem;     
}
.benefits .inner .catch .txt_gr {
    color: #22ab37;
}
.benefits .inner .catch .txt_or {
    color: #f98509; 
}
.benefits .inner .catch .txt_pink {
    color: #f9779f; 
}
.benefits .inner .wbox {
    background: #fff;
    padding: 15px;
    
}
.benefits .inner .mpoint,
.benefits .inner .gpoint {
    width: 525px;
    align-items: top;
}
.benefits .inner .mpoint .stit,
.benefits .inner .gpoint .stit {
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
}
.benefits .inner .mpoint .txt,
.benefits .inner .gpoint .txt {
    height: 100px;
}
.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: 580px;
    margin: 0 auto;
    border: 1px solid #eee;
    padding: 40px;
    box-sizing: border-box;
}
.ben_service {
    display: flex;
    justify-content: space-between;
    margin: 0 0 20px;
}
.ben_service .attentionbox {
    width: 560px;
}

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

.about_mond {
    background: #112d5d;
    border: 8px solid #005ead;
    padding: 35px;
    display: flex;
    justify-content: space-between;
}
.about_mond .txt {
    color: #fff;
}
.about_mond .txt p.tit {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 10px;
}
.about_mond img {
    margin: 0 0 0 30px;
}
.catemenu_box.mond {
    width: 360px;
    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: 16px;
    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 p {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.3;
    margin: 0 0 0 20px;
}
.catemenu_box.mond .inner p.prize {
    color: #bf8000;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}


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

.med_confirm {
    border: 8px solid #f8f8f8;
    padding: 40px;
}
.med_confirm .txt {
    display: flex;
    justify-content: space-between;
    margin: 0 0 20px;
}
.med_confirm .txt p {
    font-size: 16px;
    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: 250px;
    border: 1px solid #ddd;
    text-align: center;
    padding: 10px 0;
    margin: 0 0 0 30px;
    background: url(../img/arw_down.png) 97% 50% no-repeat;
    background-size: 16px auto;
    color: #333;
    text-decoration: none;
}
.med_confirm .btnarea {
    width: 912px;
    margin: 0 auto;
    background: #f5faf7;
    padding: 30px;
    text-align: center;
}
.med_confirm .btnarea p {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    margin: 0 0 20px;
}
.med_confirm .btnarea ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}
.med_confirm .btnarea ul li {
    width: 360px;
    margin: 0 20px;
}
.med_confirm .btnarea ul li a,
.med_confirm .btnarea ul li a:visited {
    display: block;
    background: #1c8d2d;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    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 {
    display: table;
    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: 25%;
    background: #fafafa;
    padding: 20px;
    border-right: 1px solid #ddd;
    display: table-cell;
}
.contactform .companyList dd {
    width: 75%;
    background: #fff;
    padding: 20px;
    border-right: 1px solid #ddd;
    display: table-cell;
}
.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 {
    width: 60%;
}
#inquiry {
    width: 90%;
}
.eigyou_contact {
    background: #fafafa;
    padding: 30px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.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: 0 0 36px;
    padding: 0 0 26px;
}

.medicine_tabarea .tab_menu .tab{
    position: relative;
    width: 568px;
    padding: 0 0 24px;
    background: #22ab37 url(../img/arw_right_wht.png) 98% 50% no-repeat;
    background-size: 16px auto;
    background-position: right 19px top 50%;
    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: -24px;
    margin: 0 0 0 -24px;
    border-style: solid;
    border-width: 24px 24px 0 24px;
    border-color: #e4f2e2 transparent transparent transparent;
}

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

.medicine_tabarea .tab_menu .tab .tit{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
    color: #fff;
}

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

.medicine_tabarea .tab_menu .tab .tit span{
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 48px;
    margin: 0 10px 0 0;
    padding: 2px 22px;
    border-radius: 26px;
    color: #fff;
    background: #1c8d2d;
}

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

.medicine_tabarea .tab_menu .tab .tit br{
    display: none;
}

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

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

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

.medicine_problem .tit{
    position: relative;
    display: inline-block;
    font-size: 30px;
    font-size: 3.0rem;
    font-weight: bold;
    margin: 0 0 33px 80px;
    padding: 43px 71px 6px 1px;
    border-bottom: 2px solid #22ab37;
}

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

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

.medicine_problem ul.list{
    margin: 0;
    padding: 0 320px 0 0;
    list-style-type: none;
    font-size: 20px;
    font-size: 2.0rem;
}

.medicine_problem ul.list li{
    margin: 0 0 14px;
    padding: 0 0 0 50px;
    background: url(../img/ico_check.png) 0 2px no-repeat;
}

.medicine_problem .img{
    position: absolute;
    z-index: 1;
    right: 58px;
    top: 96px;
}

.medicine_problem .sep_l,
.medicine_problem .sep_r{
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0;
    width: 553px;
    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 50px 50px;
    text-align: center;
}

.medicine_solution .tit{
    display: inline-block;
    font-size: 30px;
    font-size: 3.0rem;
    height: 108px;
    font-weight: bold;
    color: #fff;
    margin: 0 0 -15px;
    padding: 27px 0 0 150px;
    box-sizing: border-box;
    background: url(../img/ico_medicine_benri.png) 0 50% no-repeat;
}

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

.medicine_merit .merit_tit .tit{
    position: absolute;
    z-index: 1;
    top: 84px;
    left: 305px;
    background: #e8fafc;
    padding: 25px 38px 27px;
    border-radius: 14px;
}

.medicine_merit .merit_tit .tit:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: -20px;
    bottom: 35px;
    border-style: solid;
    border-width: 0 0 36px 26px;
    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: -19px;
    top: -47px;
    width: 59px;
    height: 79px;
    background: url(../img/bg_question.png) 0 0 no-repeat;
}

.medicine_merit .merit_tit .tit p{
    font-size: 30px;
    font-size: 3.0rem;
    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;
    padding: 14px 0 13px 124px;
}

.medicine_merit .merit_block .tit_area .num{
    position: absolute;
    z-index: 1;
    left: 0;
    top: 17px;
    font-size: 20px;
    font-size: 2.0rem;
    line-height: 36px;
    background: #15a531;
    font-weight: bold;
    padding: 0 17px 0 9px;
    border-radius: 0 18px 18px 0;
    font-family: Meiryo, sans-serif;
}

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

.medicine_merit .merit_block .tit_area .tit{
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
}

.medicine_merit .merit_block .content_area{
    display: flex;
    justify-content: space-between;
}

.medicine_merit .merit_block .content_area.img_l{
    flex-direction: row-reverse;
}
.medicine_merit .merit_block .content_area .img{
    width: 480px;
    padding: 8px 0 0;
}

.medicine_merit .merit_block .content_area .txt{
    width: 640px;
    font-size: 18px;
    font-size: 1.8rem;
}

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

.medicine_merit .merit_block .content_area .txt .quote_area{
    background: #f1f1f1;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6;
    margin: 20px 0 0;
    padding: 20px 14px 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;
}