/* CSS Document yoshi */
img[src*="spacer.gif"] {
    display: none
    }
/*-------------------------CSS Reset*/
html, body, h1, h2, h3, h4, h5, h6, figure, blockquote, ul, ol, dl, dt, dd, form {
    margin: 0;
    padding: 0
    }
html {
    font-size: 62.5%
    }
body {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "HGS明朝E", san-serif;
    font-weight: 500;
    color: #1a1a1a;
    -webkit-text-size-adjust: 100%
    }
ul {
    list-style-type: none
    }
img {
    border: none;
    vertical-align: bottom
    }
strong {
    font-weight: bold
    }

/*20161122 delete----
.red1,
.red2{ color:#ce313d;}
--------------------*/
strong.red1{ font-weight:normal;}

/*20161122 add*/
.red3{ color:#ff0000;}
strong.red3{ font-size:20px;}
/*/20161122 add*/




*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
    }
.txt_green1 {
    color: #004023
    }
.txt_green2 {
    color: #004023;
    font-weight: bold
    }
.txt_orange {
    color: #f48226
    }
.note {
    text-indent: -1em;
    margin-left: 1em;
    color: #808080;
    line-height: 1.4
    }
a {
    color: #004121
    }
a:link, a:visited {
    text-decoration: underline
    }
a:hover {
    color: #00994d;
    text-decoration: none
    }
a:active {
    color: #a6bf73
    }
a.arrow {
    background-image: url(../images.2ad72add7de5f7f504d310acce49ded1/bullet01.png);
    background-repeat: no-repeat;
    background-position: 0 2px;
    padding-left: 12px;
    text-decoration: none
    }
a.arrow:hover {
    text-decoration: underline
    }
a.blank:after {
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    background-image: url(../images.2ad72add7de5f7f504d310acce49ded1/icon_blank.png);
    background-repeat: no-repeat;
    background-size: 11px auto;
    margin: 0 3px
    }
a.ancdown, a.ancup {
    display: inline-block;
    padding-bottom: 3px;
    background-repeat: no-repeat;
    background-size: 13px auto;
    padding-left: 17px;
    text-decoration: none;
    border-bottom: 1px solid #004121
    }
a.ancdown:hover, a.ancup:hover {
    border-bottom: 1px solid #00994d
    }
a.ancdown {
    background-image: url(../images.2ad72add7de5f7f504d310acce49ded1/bullet02.png)
    }
a.ancup {
    background-image: url(../images.2ad72add7de5f7f504d310acce49ded1/bullet03.png)
    }
.pdf {
    display: inline-block;
    margin: 0 3px;
    background-color: #ce313d;
    border-radius: 2px;
    font-size: 1.2rem;
    color: #fff;
    line-height: 1;
    padding: 5px 5px 5px 22px;
    background-image: url(../images.2ad72add7de5f7f504d310acce49ded1/icon_pdf.png);
    background-repeat: no-repeat;
    background-position: 5px 5px;
    background-size: 12px auto
    }
.alCenter {
    text-align: center
    }
.alRight {
    text-align: right
    }
/*clearfix start*/
.clearfix:after {
    content: "";
    display: table;
    clear: both
    }
/*clearfix end*/
img.max {
    width: 100%;
    height: auto
    }
header, footer {
    width: 100%
    }
main {
    display: block;
    /* bug fix for IE11 */
    }
section > :last-child {
    margin-bottom: 0
    }
table {
    margin-bottom: 20px;
    width: 100%;
    border-collapse: collapse
    }
/*=========================== 汎用ボックス */
.mgtop10 {
    margin-top: 10px !important
    }
.mgtop20 {
    margin-top: 20px !important
    }
.mgtop30 {
    margin-top: 30px !important
    }
.mgtop40 {
    margin-top: 40px !important
    }
.mgtop50 {
    margin-top: 50px !important
    }
.mgtop60 {
    margin-top: 60px !important
    }
.mgtop70 {
    margin-top: 70px !important
    }
.mgtop80 {
    margin-top: 80px !important
    }
.mgtop90 {
    margin-top: 90px !important
    }
.mgtop100 {
    margin-top: 100px !important
    }
.mgbtm10 {
    margin-bottom: 10px !important
    }
.mgbtm20 {
    margin-bottom: 20px !important
    }
.mgbtm30 {
    margin-bottom: 30px !important
    }
.mgbtm40 {
    margin-bottom: 40px !important
    }
.mgbtm50 {
    margin-bottom: 50px !important
    }
.mgbtm60 {
    margin-bottom: 60px !important
    }
.mgbtm70 {
    margin-bottom: 70px !important
    }
.mgbtm80 {
    margin-bottom: 80px !important
    }
.mgbtm90 {
    margin-bottom: 90px !important
    }
.mgbtm100 {
    margin-bottom: 100px !important
    }
/* Header
----------------------------------------------*/
header {
    line-height: 1
    }
header noscript {
    padding: 10px;
    display: block
    }
header noscript p {
    margin: 0;
    text-align: center
    }
header a:link {
    text-decoration: none
    }
    
    
/*20161109 update*/
header .utility nav a,
header .menu-wrapper .menu-global li a,
header .menu-wrapper .menu-corporate li a{
    color:#fff;
    }
/*/20161109 update*/
    
    
header .menu-wrapper .menu-sns li span {
    position: relative;
    z-index: -1;
    font-size: 0
    }


/*20161109 update*/
/*header .menu-wrapper .menu-corporate li a,*/
header .menu-wrapper .menu-language li a{
    color:#7c807d;
    }
/*20161109 update*/
    
    
#breadcrumb {
    line-height: 1
    }
#breadcrumb ol {
    overflow: hidden;
    list-style: none
    }
#breadcrumb li {
    float: left;
    position: relative;
    color: #4c4c4c
    }
#breadcrumb li a {
    display: inline-block;
    text-decoration: none;
    color: #4c4c4c
    }
#breadcrumb li:last-child {
    padding-right: 0;
    margin-right: 0
    }
#breadcrumb li:last-child:after {
    display: none
    }
#breadcrumb li a:hover, #breadcrumb li a:active {
    text-decoration: underline
    }
/* Headings
----------------------------------------------*/
main > .page-title {
    overflow: hidden
    }
main > .page-title h1 {
    line-height: 1.2
    }
main > .page-title.standard h1 {
    color: #1a1a1a;
    background: #e6ede7
    }
main > .page-title h1 > span {
    display: table;
    width: 100%
    }
main > .page-title h1 > span > span {
    display: table-cell;
    vertical-align: middle
    }
main > .page-title h1 > span > span .subttl {
    display: table;
    font-style: normal
    }
main > .page-title .group-sns {
    overflow: hidden
    }
main > .page-title .group-sns ul {
    display: table;
    float: right
    }
main > .page-title .group-sns ul li {
    display: table-cell
    }
main > .page-title .group-sns ul li a {
    display: block;
    text-decoration: none
    }
main > .page-title .group-sns ul li a span {
    position: relative;
    z-index: -1;
    font-size: 0
    }
h2.hdg-large {
    color: #1a1a1a;
    line-height: 1.2
    }
h2.hdg-large > span {
    display: block;
    position: relative
    }
h2.hdg-large > span:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0
    }
h2.hdg-large > span .subttl {
    vertical-align: middle
    }
h2.hdg-large > span > a.link-inside {
    position: absolute;
    top: 50%;
    right: 0;
    text-decoration: none
    }
h3.hdg-medium {
    background: #f2f2f2;
    color: #1a1a1a;
    line-height: 1.2;
    border-radius: 5px
    }
h3.hdg-medium > a {
    color: #004023;
    border-radius: 5px;
    display: block;
    text-decoration: none;
    position: relative
    }
h3.hdg-medium > a:after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
    }
h3.hdg-medium > a:hover {
    text-decoration: underline
    }
h4.hdg-small {
    color: #1a1a1a;
    line-height: 1.2
    }
h5.hdg-ex-small {
    color: #1a1a1a;
    line-height: 1.2
    }
/* Buttons
----------------------------------------------*/
.btn-bevel {
    display: inline-block;
    text-align: center;
    line-height: 1.2;
    padding: 0 0 4px;
    text-decoration: none !important;
    position: relative;
    border-radius: 4px
    }
.btn-bevel:not([class*="full"]) + .btn-bevel:not([class*="full"]) {
    margin-left: 5px
    }
button[class*="btn-bevel"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    cursor: pointer;
    font-family: inherit;
    outline: none;
    background: none;
    list-style-type: none
    }
button::-moz-focus-inner {
    border: 0;
    padding: 0;
    margin: 0
    }
button[class*="btn-bevel"]:-webkit-search-decoration {
    display: none
    }
button[class*="btn-bevel"]:focus {
    outline-offset: -2px
    }
.btn-bevel.full {
    min-width: 0;
    width: 100%
    }
.btn-bevel > span {
    display: block;
    border-radius: 4px;
    -webkit-transition: transform 0.1s ease;
    -ms-transition: transform 0.1s ease;
    transition: transform 0.1s ease;
    width: 100%
    }
.btn-bevel:before {
    content: "";
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    left: 0;
    bottom: 0;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
    }
.btn-bevel:after {
    content: "";
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    left: 0;
    bottom: 4px;
    z-index: -1
    }
.btn-bevel.negative {
    color: #1a1a1a
    }
.btn-bevel.negative span {
    background: #e6e6e6
    }
.btn-bevel.negative:before {
    background: #ccc
    }
.btn-bevel.negative:after {
    background: #ccc
    }
.btn-bevel.positive {
    color: #fff
    }
.btn-bevel.positive:after {
    background: #c96d02
    }
.btn-bevel.positive span {
    background: #f28300
    }
input[type=submit].btn-bevel.positive {
    background: #f28300;
    border:0px;
    border-bottom: 4px solid #c5720e;
    font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "HGS明朝E", san-serif;
}
input[type=submit].btn-bevel.positive:hover {
    position:relative;
    top:4px;
    border-bottom:0px;
}
#loginbox input[type=submit].btn-bevel.positive:hover {
    position:relative;
    top:4px;
    border-top:4px solid #fff;
    border-bottom:0px;
}
.btn-bevel.positive:before {
    background: #c96d02
    }
.btn-bevel:hover > span {
    -webkit-transform: translatey(4px);
    -ms-transform: translatey(4px);
    transform: translatey(4px)
    }
.btn-col2 {
    overflow: hidden
    }
.btn-col2 .btn-bevel:first-child {
    float: left
    }
.btn-col2 .btn-bevel:last-child {
    float: right
    }
.btn-box-list > li a {
    color: #004121;
    text-decoration: none;
    position: relative
    }
/* Lists
----------------------------------------------*/
.list-news > li {
    position: relative
    }
.list-news > li .info .label, .list-news > li .info .date {
    display: inline-block;
    line-height: 1
    }
.list-news > li .info .label {
    color: #1a1a1a;
    border: 1px solid #cfcfcf;
    text-align: center
    }
.list-news > li .info .date {
    color: #808080
    }
.list-news > li > a {
    color: #17471d;
    text-decoration: none
    }
.list-menu-1 {
    overflow: hidden
    }
.list-menu-1 > li {
    float: left
    }
.list-menu-1 > li > a {
    display: block;
    text-decoration: none
    }
.list-menu-1 > li .image img {
    max-width: 100%
    }
.list-menu-1 > li .desc {
    border-bottom: solid 1px #ccc;
    border-left: solid 1px #ccc;
    border-right: solid 1px #ccc;
    overflow: hidden
    }
.list-menu-1 > li .desc .cat {
    position: relative
    }
.list-menu-1 > li .desc .cat:before, .list-menu-1 > li .desc .cat:after {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #ccc;
    position: absolute;
    left: 0;
    z-index: -1
    }
.list-menu-1 > li .desc .cat:before {
    top: 0
    }
.list-menu-1 > li .desc .cat:after {
    bottom: 0
    }
.list-menu-1 > li .cat > div {
    display: table;
    line-height: 1.2
    }
.list-menu-1 > li .cat > div > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle
    }
[class*="list-menu-"] > li .cat .togo {
    color: #fff;
    background: #004121
    }
[class*="list-menu-"] > li .cat .new {
    color: #fff;
    background: #f08200;
    white-space: nowrap
    }
[class*="list-menu-"] > li .cat .exclusive {
    color: #fff;
    background: #ce313d;
    white-space: nowrap
    }
.list-menu-1 > li > a .name {
    position: relative;
    line-height: 1.2
    }
.list-menu-2 {
    overflow: hidden
    }
.list-menu-2 > li {
    float: left
    }
.list-menu-2 > li > a {
    display: block;
    text-decoration: none
    }
.list-menu-2 > li .txt > :last-child {
    margin-bottom: 0
    }
.list-menu-2 > li .image {
    position: relative
    }
.list-menu-2 > li .image img {
    max-width: 100%
    }
.list-menu-2 > li .image .zoom {
    position: absolute;
    cursor: pointer;
    right: 0;
    bottom: 0
    }
.list-menu-2 > li .desc {
    border-bottom: solid 1px #ccc;
    border-left: solid 1px #ccc;
    border-right: solid 1px #ccc;
    overflow: hidden
    }
.list-menu-2 > li .desc .cat {
    position: relative
    }
.list-menu-2 > li .desc .cat:before, .list-menu-2 > li .desc .cat:after {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #ccc;
    position: absolute;
    left: 0;
    z-index: -1
    }
.list-menu-2 > li .desc .cat:before {
    top: 0
    }
.list-menu-2 > li .desc .cat:after {
    bottom: 0
    }
.list-menu-2 > li .cat > div {
    display: table;
    line-height: 1.2
    }
.list-menu-2 > li .cat > div > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle
    }
.list-menu-2 > li .name {
    line-height: 1.2
    }
.list-menu-2 > li .price {
    color: #f28300;
    line-height: 1
    }
.list-menu-2 > li .notice {
    color: #808080;
    line-height: 1.2;
    position: relative
    }
.list-menu-2 > li .txt > :last-child {
    margin-bottom: 0
    }
.list-menu-2 > li .notice:before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0
    }
.list-menu-3 {
    overflow: hidden
    }
.list-menu-3 > li {
    float: left
    }
.list-menu-3 > li > a {
    display: block;
    text-decoration: none
    }
.list-menu-3 > li .desc {
    border: solid 1px #ccc
    }
.list-menu-3 > li .name {
    line-height: 1.2
    }
.list-menu-3 > li .price {
    color: #f28300;
    line-height: 1
    }
.list-menu-3 > li .notice {
    color: #808080;
    margin: 0;
    line-height: 1.2;
    position: relative
    }
.list-menu-3 > li .notice:before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0
    }
.list-articles > li > a {
    display: block;
    text-decoration: none
    }
.list-articles > li .image img {
    width: 100%
    }
.list-articles > li .desc .ttl {
    line-height: 1.2
    }
.list-articles > li .desc .txt {
    color: #1a1a1a;
    line-height: 1.5
    }
.list-campaign {
    overflow: hidden
    }
.list-campaign > li > a {
    display: block;
    text-decoration: none
    }
.list-campaign > li .image img {
    width: 100%
    }
.list-campaign > li .cat > div {
    display: table;
    line-height: 1
    }
.list-campaign > li .cat > div > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle
    }
.list-campaign > li .cat .date {
    color: #808080
    }
.list-campaign > li .cat .status {
    color: #fff
    }
.list-campaign > li .cat .status.active {
    background: #ce313d
    }
.list-campaign > li .cat .status.inactive {
    background: #333
    }
.list-campaign > li .desc .ttl {
    line-height: 1.2
    }
.list-arrow-parallel {
    overflow: hidden
    }
.list-arrow-parallel li {
    float: left
    }
.list-arrow-parallel li.active a {
    background: none;
    border-bottom: none;
    color: #1a1a1a;
    padding-left: 0
    }
.list-arrow-parallel li.active {
    padding-bottom: 4px
    }
/* table
----------------------------------------------*/
table.type4 > caption {
    text-align: left;
    padding-bottom: 5px
    }
table.type4 > thead > tr > th {
    background-color: #000;
    color: #fff;
    text-align: center
    }
table.type4 > tbody > tr > th {
    background-color: #ededed;
    text-align: center
    }
table.type4 > thead > tr > th, table.type4 > tbody > tr > th, table.type4 > tbody > tr > td {
    border: 1px solid #808080;
    line-height: 1.2
    }
table.type4 > tbody > tr > td {
    vertical-align: top
    }
table.type4 img {
    max-width: 100%
    }
/* Tabs
----------------------------------------------*/
.tabs-container > nav {
    position: relative
    }
.tabs-container > nav:before {
    content: "";
    display: block;
    background: #ccc;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1
    }
.tabs-container > nav:first-of-type:before {
    bottom: 0
    }
.tabs-container > nav:last-of-type:before {
    top: 0
    }
.tabs-container > nav .tabs-menu-container {
    display: table;
    table-layout: fixed;
    width: 100%
    }
.tabs-container > nav .tabs-menu-container > div {
    display: table-cell;
    vertical-align: top;
    text-align: center;
    line-height: 1.2
    }
.tabs-container > nav .tabs-menu-container > div > a {
    display: block;
    border-style: solid;
    border-color: #ededed;
    background: #ededed;
    color: #808080;
    cursor: pointer;
    position: relative;
    -webkit-transition: background 0.1s ease;
    -ms-transition: background 0.1s ease;
    transition: background 0.1s ease
    }
.tabs-container > nav:first-of-type .tabs-menu-container > div > a {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px
    }
.tabs-container > nav:last-of-type .tabs-menu-container > div > a {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
    }
.tabs-container > nav .tabs-menu-container > div > a.active {
    background: #fff;
    color: #1a1a1a;
    z-index: 1
    }
.tabs-container > nav:first-of-type .tabs-menu-container > div > a.active {
    border-top-color: #ccc;
    border-right-color: #ccc;
    border-left-color: #ccc;
    border-bottom-color: #fff
    }
.tabs-container > nav:last-of-type .tabs-menu-container > div > a.active {
    border-top-color: #fff;
    border-right-color: #ccc;
    border-left-color: #ccc;
    border-bottom-color: #ccc
    }
.tabs-container > nav .tabs-menu-container > div > a:not(.active):hover {
    background: #f2f2f2;
    border-color: #f2f2f2;
    color: #1a1a1a
    }
.tabs-container .tabs-content {
    display: none
    }
.tabs-container .tabs-content > :last-child {
    margin-bottom: 0
    }
/* Accordion
----------------------------------------------*/
.accordion-container .accordion-btn {
    margin: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    font-family: inherit;
    outline: none;
    background: #f2f2f2;
    list-style-type: none;
    width: 100%;
    text-align: left;
    line-height: 1;
    position: relative;
    display: block
    }
.accordion-container .accordion-btn:before {
    margin-top: -15px;
    top: 50%;
    right: 24px;
    content: "";
    display: block;
    position: absolute;
    background: #17471d;
    width: 30px;
    height: 30px;
    border-radius: 50%
    }
.accordion-container .accordion-btn > span {
    display: block
    }
.accordion-container .accordion-btn > span:before, .accordion-container .accordion-btn > span:after {
    top: 50%;
    content: "";
    display: block;
    position: absolute;
    background: #fff
    }
.accordion-container .accordion-btn > span:before {
    margin-top: -1px;
    right: 30px;
    width: 18px;
    height: 2px
    }
.accordion-container .accordion-btn > span:after {
    margin-top: -9px;
    right: 38px;
    width: 2px;
    height: 18px
    }
.accordion-container .accordion-group.active .accordion-btn > span:after {
    display: none
    }
.accordion-container .accordion-group .accordion-btn {
    border-color: #ccc;
    border-style: solid;
    border-width: 1px 0 0
    }
.accordion-container .accordion-group:first-child .accordion-btn {
    border-width: 0
    }
.accordion-container .accordion-content {
    display: none
    }
.accordion-container .accordion-content > :last-child {
    margin-bottom: 0
    }
/* form
----------------------------------------------*/
input[type="text"], textarea {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "HGS明朝E", san-serif;
    margin: 0 10px;
    border: 1px solid #ccc
    }
input[type="text"] {
    font-size: 1.6rem;
    padding: 3px 5px
    }
textarea {
    font-size: 1.8rem;
    padding: 15px
    }

/* Misc
----------------------------------------------*/
.link-doc{
    background:#f2f2f2;
    line-height:1.2;
    font-size: 1.4rem;
    border-radius:5px;
    display: inline-block;
    text-decoration:none !important;
    position:relative;
}
.link-doc:after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.link-doc:hover{
    text-decoration:underline;
}


/* acrobat
----------------------------------------------*/
.acrobat {
    background: #f2f2f2
    }
.acrobat:after {
    content: "";
    display: table;
    clear: both
    }
.acrobat .image a {
    display: block
    }
.acrobat .image a img {
    display: block;
    width: 100%
    }
.acrobat .text p {
    margin: 0
    }
