/* contents_inner
-------------------------------*/
/* main_contents
-------------------------------*/
/* header
-------------------------------*/
/* gnav
-------------------------------*/
/* snav
-------------------------------*/
/* btn
-------------------------------*/
/* footer
-------------------------------*/
/* slider
-------------------------------*/
/* layoutMode
-------------------------------*/
#contents .mode2colmn__left {
  float: left;
}

#contents .mode2colmn__right {
  float: right;
}

body {
  font-size: 16px;
  word-break: break-all;
  min-width: 1216px;
}

p {
  line-height: 1.6;
}

.pageHeaderA .pageHeaderA__text {
  font-size: 11.2px;
  height: 20px;
  line-height: 20px;
}
.pageHeaderA .pageHeaderA__contents {
  height: 196px;
}
.pageHeaderA .pageHeaderA__contents .inner, .pageHeaderA .pageHeaderA__contents .modeFX {
  height: 100%;
}
.pageHeaderA .pageHeaderA__logo {
  width: 500px;
  margin-right: 16px;
  align-content: center;
}
.pageHeaderA .pageHeaderA__info {
  width: 700px;
  text-align: right;
  line-height: 1.4;
  flex-flow: column wrap;
  align-items: flex-end;
  align-content: flex-end;
}
.pageHeaderA .pageHeaderA__info .pageHeaderA__tel span,
.pageHeaderA .pageHeaderA__info .pageHeaderA__time span {
  font-weight: bold;
}
.pageHeaderA .pageHeaderA__info .pageHeaderA__tel {
  font-size: 19.2px;
}
.pageHeaderA .pageHeaderA__info .pageHeaderA__tel span {
  font-size: 32px;
}
.pageHeaderA .pageHeaderA__info .pageHeaderA__time {
  font-size: 13.6px;
}
.pageHeaderA .pageHeaderA__info .pageHeaderA__time span {
  font-size: 19.2px;
}

.contact_btnBox {
  margin-top: 12px;
}
.contact_btnBox > ul {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-content: flex-start;
  align-items: center;
}
.contact_btnBox .contact_btnBox_line > a,
.contact_btnBox .contact_btnBox_contact > a {
  width: 216px;
  height: 48px;
  display: block;
  text-align: center;
}
.contact_btnBox .contact_btnBox_line {
  font-size: 13.6px;
}
.contact_btnBox .contact_btnBox_line > a {
  padding: 0 4px;
  box-sizing: border-box;
}
.contact_btnBox .contact_btnBox_line .contact_btnBox_line_tableBox {
  display: table;
  width: 100%;
  height: 100%;
}
.contact_btnBox .contact_btnBox_line .contact_btnBox_line_tableBox > div {
  display: table-cell;
  vertical-align: middle;
}
.contact_btnBox .contact_btnBox_line .contact_btnBox_line_tableBox .contact_btnBox_line_icon {
  width: 32px;
  height: 32px;
}
.contact_btnBox .contact_btnBox_line .contact_btnBox_line_tableBox .contact_btnBox_line_id {
  width: calc(100% - 32px);
  border-left: 4px solid transparent;
}
.contact_btnBox .contact_btnBox_line .contact_btnBox_line_tableBox .contact_btnBox_line_id span {
  display: inline-block;
  width: calc(100% - 2em);
  vertical-align: middle;
  text-align: left;
  line-height: 1.2;
}
.contact_btnBox .contact_btnBox_contact {
  margin-left: 12px;
}
.contact_btnBox .contact_btnBox_contact a {
  line-height: 50px;
}

#gnav {
  margin-bottom: 20px;
}
#gnav ul li {
  text-align: center;
  width: 152px;
  height: 60px;
  line-height: 60px;
  overflow: hidden;
}
#gnav ul li a {
  display: block;
  font-size: 19.2px;
}

#main_flickslide {
  margin-bottom: 28px;
}

.flickslide {
  width: 924px;
  margin: 0 auto;
}
.flickslide .jquery_flick-slide_main {
  margin: 0 auto;
}
.flickslide .jquery_flick-slide_main ol li {
  width: 924px;
  height: 300px;
}
.flickslide .jquery_flick-slide_main ol li img {
  max-width: 924px;
  max-height: 300px;
}
.flickslide .jquery_flick-slide_pager ol {
  height: 60px;
  background: #000;
}
.flickslide .jquery_flick-slide_pager ol li {
  display: inline-block;
  width: 184.8px;
  height: 60px;
}
.flickslide .jquery_flick-slide_pager ol li span {
  display: block;
}
.flickslide .jquery_flick-slide_pager ol li img {
  vertical-align: top;
  width: 184.8px;
  height: 60px;
}

#contents > .inner {
  padding: 32px 36px;
}
#contents > .inner > .mode2colmn {
  overflow: hidden;
}
#contents > .inner > .mode2colmn > .mode2colmn__left {
  width: 328px;
}
#contents > .inner > .mode2colmn > .mode2colmn__right {
  width: 788px;
}
#contents > .inner > .mode2colmn > .mode2colmn__right > .modeTB {
  table-layout: auto;
}
#contents > .inner > .mode2colmn > .mode2colmn__right > .modeTB > * {
  vertical-align: top;
}

#footer .footer_inner01 {
  height: 128px;
}
#footer .footer_inner01 > .inner {
  height: 100%;
  padding: 28px 36px 8px;
}
#footer #footer_nav {
  width: 912px;
}
#footer #footer_nav li {
  margin: 0 16px 12px 0;
}
#footer #footer_nav li a {
  white-space: nowrap;
}
#footer #footer_nav li a:hover {
  text-decoration: underline;
}
#footer .pagetop {
  text-align: right;
  position: absolute;
  top: 28px;
  right: 36px;
}
#footer .pagetop .btn_l {
  background: none;
}
#footer #copyright {
  text-align: center;
  padding: 8px 0;
}
#footer .footer_linkArea {
  padding: 20px 0;
}

.inner {
  width: 1216px;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
}

.modeIB {
  font-size: 0;
}
.modeIB > * {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
}

.modeFX {
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  align-content: flex-start;
}
.modeFX > * {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-content: flex-start;
  align-items: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.3;
}
.modeFX.dlFX dt, .modeFX.dlFX dd {
  padding: 12px;
}

.titLv2 {
  height: 72px;
  line-height: 72px;
  margin-bottom: 16px;
  font-size: 19.2px;
  overflow: hidden;
}
.titLv2.tit_l {
  width: 788px;
}
.titLv2.tit_m {
  width: 328px;
}

.titLv3 {
  margin-bottom: 12px;
  font-size: 19.2px;
  height: 36px;
  line-height: 36px;
  text-indent: 1em;
  overflow: hidden;
}

.titLv4 {
  padding-bottom: 4px;
  border-bottom: 1px dotted #999999;
  margin-bottom: 8px;
  font-size: 16px;
}
.titLv4:before {
  content: "";
  border-left: 4px solid #000000;
  margin-right: 1em;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
}

.btn_s {
  text-align: center;
  width: 48px;
  height: 48px;
  line-height: 48px;
}
.btn_s a {
  display: block;
}

.btn_m {
  text-align: center;
  width: 120px;
  height: 48px;
  line-height: 48px;
}
.btn_m a {
  display: block;
}

.btn_l {
  text-align: center;
  width: 216px;
  height: 48px;
  line-height: 48px;
}
.btn_l a {
  display: block;
}

.btnMore {
  margin-top: 16px;
  text-align: right;
}
.btnMore > div {
  display: inline-block;
}

.main_contBox {
  padding: 0;
  margin-bottom: 36px;
}

.sideShopInfoBox > h1,
.sideLineBox > h1 {
  margin-bottom: 0;
}
.sideShopInfoBox > div,
.sideLineBox > div {
  border-width: 1px;
  border-style: solid;
  border-top: none;
  text-align: center;
}

.sideShopInfoBox .sideShopInfoBox_tel {
  font-weight: bold;
  font-size: 27.2px;
  position: relative;
  padding-left: calc(1em + 8px);
  display: inline-block;
}
.sideShopInfoBox .sideShopInfoBox_tel:before {
  font-weight: normal;
  font-family: "icomoon";
  line-height: 1;
  content: "\e906";
  position: absolute;
  top: 50%;
  margin-top: -15px;
  left: 0;
}
.sideShopInfoBox .contact_btnBox {
  margin-bottom: 12px;
}
.sideShopInfoBox .contact_btnBox .contact_btnBox_contact a {
  margin: 0 auto;
}
.sideShopInfoBox .sideShopInfoBox_text {
  font-size: 13.6px;
}
.sideShopInfoBox > div {
  padding: 28px 4px;
}

.sideLineBox .sideLineBox_id {
  text-align: left;
  font-size: 13.6px;
  overflow: hidden;
  display: table;
  width: 100%;
  margin-bottom: 12px;
}
.sideLineBox .sideLineBox_id .sideLineBox_id_icon,
.sideLineBox .sideLineBox_id .sideLineBox_id_text {
  display: table-cell;
  vertical-align: middle;
}
.sideLineBox .sideLineBox_id .sideLineBox_id_icon {
  width: 25px;
  height: 25px;
}
.sideLineBox .sideLineBox_id .sideLineBox_id_icon > img {
  height: 100%;
}
.sideLineBox .sideLineBox_id .sideLineBox_id_text {
  width: calc(100% - 25px);
  border-left: 4px solid transparent;
}
.sideLineBox .sideLineBox_id .sideLineBox_id_text span {
  border: 1px solid #ccc;
  padding: 4px 8px;
  display: inline-block;
  width: calc(100% - 2em);
  box-sizing: border-box;
  margin-left: 4px;
  vertical-align: middle;
  font-weight: bold;
}
.sideLineBox .sideLineBox_qrBox {
  display: table;
  width: 100%;
}
.sideLineBox .sideLineBox_qrBox .sideLineBox_qr,
.sideLineBox .sideLineBox_qrBox .sideLineBox_text {
  display: table-cell;
  vertical-align: middle;
}
.sideLineBox .sideLineBox_qrBox .sideLineBox_qr {
  width: 68px;
  height: 68px;
  border: 1px solid #ccc;
  background-color: #fff;
}
.sideLineBox .sideLineBox_qrBox .sideLineBox_qr .qrcode {
  display: block;
  margin: 0 auto;
}
.sideLineBox .sideLineBox_qrBox .sideLineBox_text {
  font-size: 13.6px;
  text-align: left;
  border-left: 12px solid transparent;
}
.sideLineBox > div {
  padding: 28px;
}

.sNav {
  margin-bottom: 40px;
}
.sNav li {
  width: 328px;
  height: 140px;
  margin-bottom: 20px;
  text-align: center;
  line-height: 140px;
  font-size: 19.2px;
}
.sNav li:nth-last-of-type(1) {
  margin-bottom: 0;
}
.sNav li a {
  display: block;
}

.listNewsD .listBox > article {
  margin-bottom: 36px;
}
.listNewsD .listBox > article.modeTop, .listNewsD .listBox > article.modeBottom .listNewsD__contents {
  display: -ms-flexbox;
  display: flex;
  flex-flow: column wrap;
}
.listNewsD .listBox > article.modeTop .listNewsD__img {
  order: 1;
}
.listNewsD .listBox > article.modeTop .listNewsD__sentence {
  order: 2;
}
.listNewsD .listBox > article.modeBottom .listNewsD__img {
  order: 2;
}
.listNewsD .listBox > article.modeBottom .listNewsD__sentence {
  order: 1;
}
.listNewsD .listBox > article.modeLeft, .listNewsD .listBox > article.modeRight .listNewsD__contents {
  overflow: hidden;
}
.listNewsD .listBox > article.modeLeft .listNewsD__img {
  float: left;
}
.listNewsD .listBox > article.modeRight .listNewsD__img {
  float: right;
}
.listNewsD .listBox > article.column0 .listNewsD__img {
  margin-bottom: 16px;
}
.listNewsD .listBox > article.column0 .listNewsD__sentence {
  margin-bottom: 28px;
}
.listNewsD .listBox > article.column1 .listNewsD__contents {
  display: flex;
}
.listNewsD .listBox > article.column1 .listNewsD__img {
  margin-right: 16px;
  width: auto;
  flex: 0 0 auto;
  max-width: 35%;
}
.listNewsD .listBox > article.column1 .listNewsD__sentence {
  flex: 1;
}
.listNewsD .listNewsD__head {
  height: auto;
  line-height: 1.3;
  padding: 8px;
  text-indent: 0;
}
.listNewsD .listNewsD__head .listNewsD__time {
  font-size: 11.2px;
  line-height: 1;
  margin-bottom: 4px;
}
.listNewsD .listNewsD__head .listNewsD__title {
  font-size: 16px;
}
.listNewsD .listNewsD__contents {
  width: 100%;
}
.listNewsD .listNewsD__contents .listNewsD__img {
  vertical-align: top;
  display: block;
  width: auto;
  margin-bottom: 16px;
}
.listNewsD .listNewsD__contents .listNewsD__img img {
  display: block;
  margin: 0 auto;
}
.listNewsD .listNewsD__sentence {
  display: block;
  vertical-align: top;
  margin-bottom: 28px;
}
.listNewsD .listFree > article {
  margin-bottom: 0;
  padding-bottom: 0;
}
.listNewsD .listFree .listNewsD__contents .listNewsD__img {
  margin-bottom: 0;
}
.listNewsD .listFree .listNewsD__sentence {
  margin-bottom: 0;
}

.pagerList {
  margin-top: 32px;
}
.pagerList .pagerListA {
  text-align: center;
}
.pagerList .pagerListA li {
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pagerList .pagerListA li a {
  display: block;
}
.pagerList .pagerListA li.back {
  text-align: left;
  margin-right: 4px;
}
.pagerList .pagerListA li.next {
  text-align: right;
  margin-left: 4px;
}
.pagerList .pagerListA li.btn_s {
  margin: 0 4px;
}
.pagerList .pagerListA li.btn_s:nth-last-of-type(1) {
  margin-right: 0;
}
.pagerList .pagerListA li.btn_l.nLink {
  padding: 0 8px;
}
.pagerList .pagerListA li.btn_l a {
  padding: 0 8px;
}

.listBox > article {
  margin-bottom: 36px;
  padding-bottom: 32px;
}
.listBox > article:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}
.listBox .listBox_contents {
  overflow: hidden;
}
.listBox .listBox_contents .listBox_nav {
  text-align: center;
}
.listBox .listBox_contents .listBox_nav li {
  font-size: 13.6px;
  margin-left: 12px;
}
.listBox .listBox_contents .listBox_nav li:before {
  content: "|";
  margin-right: 12px;
}
.listBox .listBox_contents .listBox_nav li:first-child {
  margin-left: 0;
}
.listBox .listBox_contents .listBox_nav li:first-child:before {
  display: none;
}
.listBox .listBox_contents .listBox_nav li a:hover {
  text-decoration: underline;
}

input[type="checkbox"]:checked + label:after {
  position: absolute;
  content: "";
  top: 50%;
  border: 2px solid #222;
  border-left: none;
  border-bottom: none;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

input[type="radio"]:checked + label:after {
  position: absolute;
  content: "";
  background: #222;
  top: 50%;
  left: 0;
}

input, textarea, select, button {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
  font-family: inherit;
}

input[type="text"], input[type="tel"], input[type="email"], textarea, select {
  padding: 4px;
  border-radius: 4px;
  border: 1px solid #ccc;
}

input[type="checkbox"], input[type="radio"] {
  display: none;
}
input[type="checkbox"] + label, input[type="radio"] + label {
  cursor: pointer;
  position: relative;
}
input[type="checkbox"] + label:before, input[type="radio"] + label:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  vertical-align: middle;
  background: #fff;
  border: 1px solid #ccc;
}

input[type="checkbox"] + label:before {
  border-radius: 2px;
  margin-right: 4px;
  margin-top: -4px;
}
input[type="checkbox"]:checked + label:after {
  width: 9px;
  height: 5px;
  margin-top: -6px;
  left: 3px;
  border-width: 3px;
}

input[type="radio"] + label {
  margin-right: 12px;
}
input[type="radio"] + label:before {
  width: 14px;
  height: 14px;
  border-radius: 14px;
  margin-top: -3px;
  margin-right: 4px;
}
input[type="radio"]:checked + label:after {
  width: 8px;
  height: 8px;
  border-radius: 8px;
  margin-top: -5px;
  margin-left: 4px;
}

input[type="submit"] {
  cursor: pointer;
  background: none;
  border: none;
}
input[type="submit"]:focus {
  outline: none;
}

select {
  padding: 3px;
  cursor: pointer;
}

textarea {
  resize: vertical;
  width: 100%;
}

.formBox input[type="text"], .formBox input[type="tel"], .formBox input[type="email"], .formBox select {
  width: 100%;
}
.formBox .formBox_ymdSelect {
  margin: 0 8px 0 16px;
}
.formBox .formBox_ymdSelect:nth-of-type(1) {
  margin-left: 0;
}
.formBox .formBox_check {
  margin-right: 12px;
}
.formBox .formBox_file {
  width: 100%;
}

.noDataText {
  text-align: center;
  padding: 80px 0;
  line-height: 1.3;
  margin: 0 auto;
}
