@charset "UTF-8";


html,
body {
  width: 100%;
  min-width: 1020px;
  background: #fff !important;
  color: #333;
}

body {
  min-height: 100vh;
  position: relative;
}

.sp {
  display: none !important;
}

.tac {
  text-align: center;
}

.pt0 {
  padding-top: 0 !important;
}

.selectArrow {
  position: relative;
}

.selectArrow::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-left: 5px solid #a7a7a7;
  border-top: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  position: absolute;
}

.flex-end {
  display: flex;
  justify-content: flex-end;
}

.button {
  width: 150px;
  margin: 30px 0 0;
  padding: 12px 0;
  display: block;
  text-align: center;
  font-size: 1.4rem;
  background: #eee;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  cursor: pointer;
}

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

	header
  
----------------------------------------------------------------------------- */
header {
  max-width: 100vw;
  position: fixed;
  width: 100%;
  min-width: 1020px;
  background: #000;
  z-index: 1002;
  border-bottom: 1px solid #686868;
  top: 0;
  left: 0;
}

header .inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 5px 0;
  display: flex;
  justify-content: space-between;
}

@media print, screen and (min-width: 1021px) {
  html {
    overflow-x: hidden;
  }
}

header #logo img {
  width: 120px;
  height: 39px;
}

header #gnav .gnavBtn {
  display: none;
}

header #gnav {
  width: 720px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

header .gnav {
  width: 240px;
  display: flex;
  box-sizing: border-box;
  border: 1px solid #c0c0c0;
  border-radius: 6px;
  background: #eee;
}

header .gnav li {
  width: 90px;
  display: flex;
  justify-content: center;
  border-right: 1px solid #c0c0c0;
}

header .gnav.navLeft li:nth-child(5) {
  border-right: none;
}
header .gnav.navRight li:nth-child(4) {
  border-right: none;
}

header .gnav li a,
header .gnav li b {
  font-size: 1.2rem;
  font-weight: bold;
  display: block;
  overflow: hidden;
  transition: opacity 0.3s ease;
  width: 90px;
  padding: 11px 0;
  display: flex;
  justify-content: center;
}

header .gnav li a:hover,
header .gnav li b:hover {
  opacity: 0.6;
}

header #gnav .navLeft {
  width: 440px;
  margin: 0 16px 0 0;
}

header #gnav .navLeft li {
  width: 110px;
}

header #gnav .navLeft li a {
  width: 110px;
}

header #gnav .navLeft li a span,
header #gnav .navLeft li b {
  font-weight: bold;
  position: relative;
  top: 2px\9;
}

.footerNav .disabled,
header #gnav .navLeft li span.disabled {
  opacity: 0.3;
}

header #gnav .navLeft > li > a span:before,
header #gnav .navLeft > li > a span:after {
  position: absolute;
  top: 28px;
  content: '';
  display: inline-block;
  width: 0;
  height: 1px;
  background: #000;
  transition: all 0.2s;
}

header #gnav .navLeft > li > a span:before {
  left: 50%;
}

header #gnav .navLeft > li > a span:after {
  right: 50%;
}

header #gnav .navLeft > li > a:hover span:before,
header #gnav .navLeft > li > a:hover span:after {
  width: 50%;
}

header #gnav .navRight {
  width: 360px;
}

header #gnav .navRight > li > a:hover {
  background: #eee;
}

header #gnav .navRight > li.login {
  position: relative;
}

header #gnav .navRight > li.login::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-top: 4px solid #c0c0c0;
  border-right: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid transparent;
  position: absolute;
  top: 72%;
  right: 12%;
}

header #gnav .loginBox {
  display: none;
  opacity: 0;
  width: 150px;
  position: absolute;
  top: 45px;
  left: -30%;
  transition: 0.2s;
}

header #gnav .login.open .loginBox {
  display: block;
  opacity: 1;
}

header #gnav .loginBox ul {
  border: 2px solid #5b5b64;
  border-radius: 2px;
  position: relative;
}

header #gnav .loginBox ul:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 11px 12px 11px;
  border-color: transparent transparent #5b5b64 transparent;
  position: absolute;
  top: -12px;
  left: 50%;
  margin-left: -11px;
}

header #gnav .loginBox li {
  width: 100%;
  border-bottom: 1px solid #ddd;
}

header #gnav .loginBox li:last-child {
  border-bottom: none;
}

header #gnav .loginBox li a {
  width: 100%;
  display: block;
  background: #fff;
  font-size: 1.2rem;
  text-align: center;
  padding: 12px 0;
  padding: 14px 0 10px\9;
  transition: 0.3s;
}

header #gnav .loginBox li a:hover {
  background: #eee;
  opacity: 1;
}

header.fixed {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

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

	footer
  
----------------------------------------------------------------------------- */
footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  top: auto !important;
  background: #fff;
  z-index: 1005;
}

.fix footer {
  bottom: -30px;
}

footer .footerNav {
  padding: 30px 0 20px;
}

footer .footerNav ul {
  text-align: center;
}

footer .footerNav ul li {
  display: inline-block;
  margin: 0 25px;
}

footer .footerNav ul li a,
footer .footerNav ul li b {
  font-size: 1.4rem;
  display: inline-block;
  padding: 7px 0;
  overflow: hidden;
  font-weight: normal;
}

footer .footerNav ul li a span {
  position: relative;
}

footer .footerNav ul li a span:before,
footer .footerNav ul li a span:after {
  position: absolute;
  top: 22px;
  content: '';
  display: inline-block;
  width: 0;
  height: 1px;
  background: #000;
  transition: all 0.2s;
}

footer .footerNav ul li a span:before {
  left: 50%;
}

footer .footerNav ul li a span:after {
  right: 50%;
}

footer .footerNav ul li a:hover span:before,
footer .footerNav ul li a:hover span:after {
  width: 50%;
}

footer .btn {
  width: 1000px;
  margin: 30px auto 25px;
}

footer .btn a {
  font-size: 1.4rem;
  border: none;
  background: none;
  width: auto;
  display: inline-block;
  padding: 0;
}

footer .btn a span {
  padding-right: 18px;
  background: url(../img/icon_return.png) no-repeat right center;
  background-size: 12px 10px;
  text-decoration: underline;
}

footer .footerBtm {
  background: #000;
  line-height: 30px;
  text-align: center;
  position: relative;
}

footer .footerBtm .copyright {
  color: #fff;
  font-size: 1rem;
  display: block;
}

footer #pagetop {
  position: absolute;
  top: -50px;
  bottom: inherit;
  right: 10px;
  z-index: 80;
}

footer #pagetop.fixed {
  position: fixed;
  top: inherit;
  bottom: 20px;
  right: 10px;
}

footer #pagetop a img {
  width: 40px;
  height: auto;
  vertical-align: bottom;
  transition: 0.3s;
}

footer #pagetop a:hover img {
  opacity: 0.6;
}

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

	contents
  
----------------------------------------------------------------------------- */
main {
  padding-top: 50px;
  display: block;
}

.content-center {
  width: 100%;
  max-width: 1000px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

form {
  width: 100%;
  height: 100%;
}

.container {
  width: 100%;
  min-height: calc(100vh - 145px);
  padding: 15px 0 95px;
  position: relative;
}

.container::after {
  content: '';
  min-height: inherit;
  font-size: 0;
}

.container-flex {
  display: flex;
  align-items: center;
}

.container-flexForm {
  display: flex;
  align-items: center;
  min-height: calc(100vh - 80px);
}

.container-top {
  padding: 30px 0 0;
}

.container-center {
  min-height: auto;
  padding: 0 0 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
}

.container-centerTop {
  min-height: calc(100vh - 245px);
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
}

.container .inner {
  width: 1000px;
  margin: 15px auto;
  height: 100%;
}

.container .section {
  margin-bottom: 20px;
}

.container .section .inner {
  background: #fff;
  padding: 50px 0 40px;
  box-sizing: border-box;
  border: 1px solid #c0c0c0;
  border-radius: 6px;
}

/* breadcrumb
----------------------------------------------- */
.breadcrumb {
  width: 100%;
  background: #626262;
  overflow: hidden;
  padding: 5px 0;
}

.breadcrumb_inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.breadcrumb .value li {
  float: left;
  padding-right: 24px;
  font-size: 1.2rem;
}

.breadcrumb .value li a {
  display: block;
  position: relative;
  color: #fff;
  text-decoration: underline;
}

.breadcrumb .value li a:hover {
  text-decoration: underline;
}

.breadcrumb .value li a:after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  top: 7px;
  right: -14px;
}

.breadcrumb .value li span {
  font-size: 1.2rem;
  color: #fff;
}

/* signinInfo
  ----------------------------------------------- */
.signinInfo {
  display: flex;
  justify-content: flex-end;
  color: #fff;
}

.signinInfo li {
  display: inline-block;
  font-size: 1.2rem;
}

.signinInfo a {
  color: #aaaab4;
}

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

/* pageTtl
----------------------------------------------- */
.pageTtl {
  background: #000;
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 15px 0;
}

.pageTtl.subTtl {
  width: 100%;
  padding: 5px 0;
  line-height: 1.4;
  display: table;
}

.pageTtl.subTtl h1 {
  display: table-cell;
  vertical-align: middle;
}

.pageTtl.subTtl h1 span {
  font-size: 1.2rem;
  color: #fff;
  display: block;
}

.pageTtl.pageTtl h1 {
  font-size: 1.8rem;
  font-weight: bold;
}

.pageTtl.contTtl {
  width: 100%;
  height: auto;
  padding: 55px 0 35px;
  text-align: center;
  line-height: 1.4;
  display: block;
}

.pageTtl.contTtl h1 {
  display: block;
  text-align: center;
}

/* Heading 
----------------------------------------------- */
.headerA {
  margin-bottom: 25px;
}

.headerA h2 {
  margin: 0 0 10px;
  font-size: 1.8rem;
}

/* bnrArea
----------------------------------------------- */
.bnrArea {
  background: #cfcfd7;
  padding: 60px 0;
  margin-top: 50px;
}

.bnrArea .slick-list {
  width: 883px;
  margin: 0 auto;
}

.bnrSlider .slick-slide {
  width: 285px;
  padding: 5px;
}

.bnrSlider .slick-slide img {
  width: 100%;
  height: auto;
  transition: 0.3s;
}

.bnrSlider .slick-slide:hover img {
  opacity: 0.6;
}

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

	parts
  
----------------------------------------------------------------------------- */
/* ttl
	----------------------------------------------- */
.ttlCenter {
  font-size: 3rem;
  font-weight: 500;
  margin: 20px 0 40px;
  text-align: center;
}

/* btn 
	----------------------------------------------*/
.btn {
  width: 300px;
}

.btn a {
  display: block;
  width: 300px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  padding: 15px 0;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  transition: 0.3s;
  background: #eeeeee;
}

.btn a span {
  position: relative\9;
  top: 2px\9;
}

.btn a:hover {
  opacity: 0.5;
}

.btn.white a {
  background: #fff;
  transition: 0.3s;
}

.btn.white a:hover {
  background: #eee;
}

.btnSearch {
  width: 150px;
  display: block;
  background: #000;
  border-radius: 3px;
  text-align: center;
  padding: 6px;
  cursor: pointer;
  transition: 0.3s;
}

.btnSearch:hover {
  background: #333;
}

.btnSearch span {
  color: #fff;
  font-size: 1.4rem;
  padding: 4px 2px 4px 22px;
  background: url(../img/icon_search.png) no-repeat left center/16px;
}

.btnClear {
  width: 100px;
  display: block;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background: #fff;
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  cursor: pointer;
  transition: 0.3s;
}

.btnClear:hover {
  background: #f7f7f7;
}

.btnClear span {
  color: #888;
  font-size: 1.4rem;
  padding: 4px 2px 4px 17px;
  background: url(../img/icon_cross.png) no-repeat left center/12px;
}

.resultBtnArea {
  clear: both;
  border-top: 1px solid #ddd;
  padding: 65px 0 0;
  margin: 40px 0 0;
  position: relative;
  text-align: center;
  font-size: 0;
}

.resultBtnArea:before {
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  background: #f7f7f7;
  position: absolute;
  left: 50%;
  top: -16px;
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  transform: translateX(-50%) rotate(135deg);
}

.resultBtnArea .btn {
  display: inline-block;
  width: 320px;
}

.resultBtnArea .btn + .btn {
  margin: 0 0 0 20px;
}

.resultBtnArea .btn a {
  width: 100%;
  padding: 20px 0;
}

.resultBtnArea .btn a:hover {
  opacity: 0.6;
}

.resultBtnArea .btn a span {
  display: inline-block;
  font-size: 1.2rem;
  padding: 35px 0 0;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 25px;
}

.resultBtnArea .btn a span b {
  display: block;
  font-size: 2.4rem;
  margin: 5px 0 0;
  font-weight: normal;
}

.resultBtnArea .btn.btnDownload a {
  background: #000;
  color: #fff;
  border: 1px solid #000;
}

.resultBtnArea .btn.btnDownloadTypeA a {
  background: #b51616;
  border: 0;
}

.resultBtnArea .btn.btnDownload a span {
  background-image: url(../../common/img/icon_dl02.png);
}

.resultBtnArea .btn.btnMylist a {
  background: #fff;
}

.resultBtnArea .btn.btnMylist a span {
  background-image: url(../../common/img/icon_mylist.png);
}

/* text link 
	----------------------------------------------*/
.txtLink {
  font-size: 1.4rem;
}

.txtLink a {
  position: relative;
}

.txtLink a:after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: -10px;
  margin-top: -2px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  transition: 0.2s;
}

.txtLink a:hover:after {
  right: -14px;
}

/* form
	----------------------------------------------*/
/* reset */
input[type='text'],
textarea,
select,
input[type='submit'],
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
  box-sizing: border-box;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'HIragino Kaku Gothic Pro W3', 'HIragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS P Gothic', sans-serif;
}

select::-ms-expand {
  display: none;
}

::-webkit-input-placeholder {
  color: #bbb;
  font-size: 1.6rem;
}

:-ms-input-placeholder {
  color: #bbb;
  font-size: 1.6rem;
}

::-ms-input-placeholder {
  color: #bbb;
  font-size: 1.6rem;
}

::-moz-placeholder {
  color: #bbb;
  font-size: 1.6rem;
}

::placeholder {
  color: #bbb;
  font-size: 1.6rem;
}

/* textbox */
input[type='text'] {
  font-size: 1.6rem;
  height: 60px;
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  box-shadow: inset 1px 1px 4px rgba(0, 0, 0, 0.1);
}

/* textarea */
textarea {
  font-size: 1.6rem;
  padding: 15px 20px;
  background: #fff;
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  box-shadow: inset 1px 1px 4px rgba(0, 0, 0, 0.1);
  resize: none;
}

/* select */
select {
  width: 210px;
  font-size: 1.4rem;
  height: 40px;
  padding: 10px;
  background: #f7f7f7 url(../img/arrow_select.png) no-repeat 95% center/7px;
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  cursor: pointer;
}

input[type='radio'] {
  width: 0;
  height: 0;
  margin: 0;
  position: absolute;
  opacity: 0;
}

/* checkbox */
input[type='checkbox'] {
  width: 0;
  height: 0;
  margin: 0;
  position: absolute;
  opacity: 0;
}

input[type='checkbox'] + label {
  position: relative;
  cursor: pointer;
  padding: 0 0 0 27px;
  font-size: 14px;
  display: inline-block;
}

input[type='checkbox'] + label:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 2px;
  left: 0;
}

input[type='checkbox'] + label:before {
  background: url(../img/checkbox.png) no-repeat left bottom;
  background-size: auto 20px;
}

input[type='checkbox']:checked + label:before {
  background: url(../img/checkbox.png) no-repeat right top;
  background-size: auto 20px;
}

/* form signin,member
	----------------------------------------------*/
input.formParts,
select.formParts,
textarea.formParts {
  color: inherit;
  font-family: inherit;
  outline: none;
  box-sizing: border-box;
}

input.formParts::-webkit-input-placeholder {
  color: #a0a0a0;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.6;
}

input.formParts:-ms-input-placeholder {
  color: #a0a0a0;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.6;
}

input.formParts::-moz-placeholder {
  color: #a0a0a0;
  font-weight: normal;
  font-size: 1.2rem;
}

input.formParts {
  width: 100%;
  height: 36px;
  border: 1px solid #ddd;
  padding: 0 10px;
  font-size: 14px;
  box-shadow: none;
  border-radius: 4px;
  background-color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1;
}

select.formParts {
  cursor: pointer;
  height: 36px;
  border: 1px solid #c0c0c0;
  padding: 0 0 0 10px;
  font-size: 1.4rem;
  border-radius: 0;
  background-color: #eee;
  background-repeat: no-repeat;
  background-position: right center;
  background-image: url(../img/arrow_select02.png);
  background-size: 40px;
  border-radius: 4px;
}

.formLabel {
  cursor: pointer;
  display: inline-block;
}

.formLabel + .formLabel {
  margin: 0 0 0 30px;
}

.formLabel input.formParts[type='checkbox'],
.formLabel input.formParts[type='radio'] {
  padding: 0;
  margin: 0;
  width: 0;
  height: 0;
  border: none;
  opacity: 0;
  font-size: 0;
  position: absolute;
  cursor: pointer;
}

.formLabel input.formParts[type='checkbox'] + span,
.formLabel input.formParts[type='radio'] + span {
  display: flex;
  align-items: center;
  min-height: 22px;
  position: relative;
  line-height: 22px;
  font-size: 1.2rem;
}

.formLabel input.formParts[type='checkbox'] + span:before,
.formLabel input.formParts[type='radio'] + span:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  margin: 0 8px 0;
  display: block;
  background: #eeeeee;
  border: 1px solid #c0c0c0;
  border-radius: 6px;
  position: relative;
  cursor: pointer;
}

.formLabel input.formParts[type='radio'] + span:before {
  border-radius: 50%;
}

.formLabel input.formParts[type='checkbox'] + span:after {
  content: '';
  display: none;
  width: 5px;
  height: 9px;
  border-right: 2px solid #1d1d1d;
  border-bottom: 2px solid #1d1d1d;
  position: absolute;
  top: 4px;
  left: 8px;
  transform: rotate(45deg);
}

.formLabel input.formParts[type='radio'] + span:after {
  content: '';
  display: none;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background-color: #000 !important;
  position: absolute;
  transform: translateY(-50%) skew(0deg) rotate(0deg) !important;
  left: 13px !important;
}

.formLabel input.formParts[type='checkbox']:checked + span:after,
.formLabel input.formParts[type='radio']:checked + span:after {
  content: '';
  display: block;
  width: 6px;
  height: 10px;
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%) skew(-6deg) rotate(30deg);
}

.LnkButton {
  line-height: 50px;
}

.LnkButton,
button.formParts {
  font-family: inherit;
  width: 100%;
  height: 50px;
  color: #000;
  text-align: center;
  font-weight: bold;
  display: block;
  background: #eee;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  cursor: pointer;
  box-sizing: border-box;
  position: relative;
  font-size: 1.4rem;
  transition: 0.3s;
}

button.formParts:before {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg);
}

.LnkButton:hover,
button.formParts:hover {
  opacity: 0.6;
}

button.formParts[disabled],
button.formParts[disabled]:hover {
  opacity: 0.3;
  cursor: default;
}

.btnSubmit button {
  color: #000;
  background: #eeee;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  position: relative;
}

.btnSubmit button::before {
  display: none;
}

.btnSubmit button::after {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translateY(-50%) rotate(45deg);
}

.btnBack button {
  border: 1px solid #c0c0c0;
  border-radius: 4px;
}

.btnBack button:before {
  right: inherit;
  left: 20px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translateY(-50%) rotate(225deg);
}

.btnGhost {
  display: inline-block;
  vertical-align: top;
}

.btnGhost a,
.btnGhost button {
  cursor: pointer;
  display: inline-block;
  width: 180px;
  font-size: 1.4rem;
  text-align: center;
  padding: 10px 0;
  border: 1px solid #d5d5d5;
  border-radius: 4px;
  transition: 0.3s;
}

.btnGhost a .iconBlank,
.btnGhost button .iconBlank {
  top: 1px;
  margin-right: -7px;
  margin-left: 7px;
}

.btnGhost a:hover,
.btnGhost button:hover {
  background: #eee;
}

.btnClose a,
.btnClose button,
.btnDefault a,
.btnDefault button {
  display: inline-block;
  background: #eee;
  color: #000;
  background: #eee;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  width: 200px;
  position: relative;
}

.btnClose a:before,
.btnClose button:before,
.btnDefault a:before,
.btnDefault button:before {
  display: none;
}

.btnClose a::after,
.btnClose button::after,
.btnDefault a::after,
.btnDefault button::after {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translateY(-50%) rotate(45deg);
}

.btnBlock {
  margin-top: 30px;
  text-align: center;
}

.tagEditItems {
  margin: 20px 0;
  padding: 5px 10px 5px 0;
  max-height: 335px;
  overflow-y: scroll;
}

.tagEditItems li.is-registed {
  position: relative;
  pointer-events: none;
}

.tagEditItems li.is-registed::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(252, 252, 252, 0.6);
  z-index: 1;
}

.tagEditor {
  width: 100%;
  padding: 10px 0 0;
  font-size: 1.2rem;
  display: flex;
  justify-content: space-between;
}

.tagEditor_cont {
  width: 95px;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

.tagEditor .tagValue,
.tagEditor .tagValue li,
.tagEditor .tagEditorModeBtn {
  display: inline-block;
  vertical-align: top;
}

.tagEditor .tagValue {
  background: #fff;
  margin-right: 5px;
  padding: 12px;
  width: 100%;
  border: 1px solid #d5d5d5;
}

.tagEditor .tagValue li {
  margin-right: 10px;
  margin-bottom: 5px;
  text-decoration: underline;
}

.tagEditor .tagEditorModeBtn {
  background: #eee;
  border-radius: 3px;
  text-align: center;
  padding: 6px 10px;
  cursor: pointer;
  transition: 0.3s;
  color: #000;
  font-size: 1.2rem;
  border: 1px solid #c0c0c0;
}

.tagEditor .tagEditorModeBtn:hover {
  background: #333;
  color: #fff;
}

.tagEditor .tagEditorModeBtn-close {
  background: #eee;
  border-radius: 3px;
  text-align: center;
  padding: 6px 10px;
  cursor: pointer;
  transition: 0.3s;
  color: #000;
  font-size: 1.2rem;
  border: 1px solid #c0c0c0;
}

.tagEditor .tagEditorModeBtn-close:hover {
  background: #333;
  color: #fff;
}

.modalBox {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1004;
  width: 100%;
  text-align: center;
}

.modalBox .modalBoxInner {
  position: relative;
  display: inline-block;
  background: #fff;
  padding: 70px 30px 30px;
  width: 800px;
  text-align: left;
  max-height: 60vh;
  overflow: auto;
}

.modalBox .modalBoxInner-small {
  width: 400px;
}

.modalBox .modalBoxInner .signinArea {
  width: 100%;
}

.modalBox .modalBoxInner dt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.modalBox .modalBoxInner .modalBoxClose {
  cursor: pointer;
  position: absolute;
  right: 10px;
  top: 10px;
  width: 50px;
  height: 50px;
  background: #fff;
  transition: 0.3s;
}

.modalBox .modalBoxInner .modalBoxClose span {
  display: none;
}

.modalBox .modalBoxInner .modalBoxClose:before, .modalBox .modalBoxInner .modalBoxClose:after {
  content: '';
  display: block;
  position: absolute;
  height: 2px;
  width: 50%;
  background: #000;
  top: 50%;
  left: 50%;
  margin: -5% 0 0 -23%;
}

.modalBox .modalBoxInner .modalBoxClose:before {
  transform: rotate(135deg);
}

.modalBox .modalBoxInner .modalBoxClose:after {
  transform: rotate(-135deg);
}

.modalBox .modalBoxInner .modalBoxHeader {
  width: 100%;
  display: inline-block;
  float: left;
  font-size: 1.8rem;
  font-weight: bold;
}
.modalBox .modalBoxInner .modalBoxHeaderButton {
  display: inline-flex;
  align-items: center;
  appearance: none;
  padding: 4px 10px 4px 8px;
  width: auto;
  background: #eee;
  border: 1px solid #c0c0c0;
  border-radius: 3px;
  overflow: visible;
  position: relative;
  cursor: pointer;
}
.modalBox .modalBoxInner .modalBoxHeaderButton:after {
  display: inline-block;
  content: "コピーしました。";
  width: 8em;
  padding: 5px 5px;
  background: #626262;
  color: #fff;
  border-radius: 3px;
  position: absolute;
  top: 0px;
  left: 190px;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.modalBox .modalBoxInner .modalBoxHeaderButton.is-copied:after {
  opacity: 1;
}
.modalBox .modalBoxInner .modalBoxHeaderButton img {
  width: auto;
  height: 18px;
}
.modalBox .modalBoxInner .modalBoxHeaderButton span {
  margin-left: 5px;
}
.modalBox .modalBoxInner .tagEditModBtn {
  float: right;
  width: 200px;
  display: block;
  line-height: 1;
  text-align: center;
  background: #eeeeee;
  padding: 15px;
  border: 1px solid #c0c0c0;
  border-radius: 3px;
  font-size: 1.4rem;
  cursor: pointer;
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}

.modalBox .modalBoxInner .tagEditModBtn:hover {
  background: #f7f7f7;
}

.modalBox .modalBoxInner .tagEditModBtn.is-view {
  opacity: 1;
  pointer-events: auto;
}

.modalBox .modalBoxInner .tagEditAddBtn {
  position: relative;
  display: block;
  padding: 12px 15px 12px 50px;
  width: 100%;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  background: #eee;
  font-size: 1.4rem;
  text-align: left;
  cursor: pointer;
  transition: 0.3s;
}

.modalBox .modalBoxInner .tagEditAddBtn:hover {
  background: #f7f7f7;
}

.modalBox .modalBoxInner .tagEditAddBtn:before, .modalBox .modalBoxInner .tagEditAddBtn:after {
  content: '';
  display: block;
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  background: #000;
  width: 12px;
  height: 2px;
}

.modalBox .modalBoxInner .tagEditAddBtn:before {
  transform: translateY(-50%) rotate(90deg);
}

.modalBox .modalBoxInner .signinArea-modal h1 {
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 35px;
}

.modalBox .modalBoxInner .signinArea-modal .box dl dt {
  font-size: 1.2rem;
  font-weight: bold;
  margin: 0 0 5px;
  padding: 0;
}

.modalBox .modalBoxInner .signinArea-modal .box dl + dl {
  margin: 20px 0 0;
}

.modalBox .modalBoxInner .signinArea-modal .chaeckAbridgement {
  margin: 20px 0 0;
  text-align: center;
}

.modalBox .modalBoxInner .signinArea-modal .btnWrap {
  max-width: 300px;
  margin: 30px auto 0;
}

.modalBox .modalBoxInner .signinArea-modal .btnLink {
  display: table;
  margin: 25px auto 0;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
}

.modalBox .modalBoxInner .signinArea-modal .btnLink li a {
  display: inline-block;
  position: relative;
  padding: 0 0 0 13px;
  line-height: 1.3;
  transition: opacity 0.3s ease;
}

.modalBox .modalBoxInner .signinArea-modal .btnLink li a::before {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  position: absolute;
  left: 0;
  top: 0.4em;
  border-top: 1px solid #353535;
  border-right: 1px solid #353535;
  transform: rotate(45deg);
}

.modalBox .modalBoxInner .signinArea-modal .btnLink li a:hover {
  text-decoration: underline;
  opacity: 0.6;
}

.modalBox .modalBoxInner .signinArea-modal .btnLink li + li {
  margin: 5px 0 0;
}

.modalBox .modalBoxForm .modalBoxAddTag {
  width: 100%;
  font-size: 1.6rem;
  height: 45px;
  padding: 10px 15px;
  margin: 0 0 0;
}

.modalBox .modalBoxBtnSet {
  margin-top: 20px;
  text-align: center;
}

.modalBox .modalBoxSubmit,
.modalBox .modalBoxCancel {
  cursor: pointer;
  margin: 0 10px;
  width: 150px;
  display: inline-block;
  text-align: center;
  border-radius: 3px;
  transition: 0.3s;
  font-size: 1.4rem;
  padding: 10px;
  line-height: 1.1;
}

.modalBox .modalBoxModify,
.modalBox .modalBoxDelete {
  cursor: pointer;
  width: 30%;
  margin: 0 1%;
  display: inline-block;
  text-align: center;
  border-radius: 3px;
  transition: 0.3s;
  font-size: 1.4rem;
  padding: 8px 10px;
  line-height: 1.1;
}

.modalBox .modalBoxDelete,
.modalBox .modalBoxSubmit {
  background: #000;
  margin: 0 1%;
  color: #fff;
  border: 1px solid #000;
}

.modalBox .modalBoxDelete:hover,
.modalBox .modalBoxSubmit:hover {
  background: #333;
}

.modalBox .modalBoxModify,
.modalBox .modalBoxCancel {
  background: #eee;
  border: 1px solid #c0c0c0;
}

.modalBox .modalBoxModify:hover,
.modalBox .modalBoxCancel:hover {
  background: #f7f7f7;
}

.modalBox .tagEditItems li {
  margin: 12px 0;
  border: 1px solid #c0c0c0;
  position: relative;
}

.modalBox .tagEditItems li:first-child {
  margin: 0 0 12px;
}

.modalBox .tagEditItems li label {
  float: left;
  padding: 20px;
  width: 100%;
  display: flex;
  align-items: center;
}

.modalBox .tagEditItems li label span {
  margin: 5px 12px 5px 0;
  font-size: 1.4rem;
}

.modalBox .tagEditItems li .tagEditItemBtnSet {
  float: right;
  width: 50%;
  padding: 20px 0;
  text-align: center;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.modalBox .modalBoxTable {
  width: 100%;
}

.modalBox .modalBoxTable th,
.modalBox .modalBoxTable td {
  padding: 10px 10px;
  font-size: 1.4rem;
  border-bottom: 1px solid #ccc;
}

.modalBox .modalBoxTable thead th {
  background: #efefef;
  font-weight: normal;
  text-align: center;
}

.modalBox .modalBoxTable tbody tr:nth-child(2n) td {
  background: rgba(239, 239, 239, 0.5);
}

.modalBox .modalBoxTable td {
  width: 35%;
}

.modalBox .modalBoxTable td.modalBoxTablePrice {
  text-align: right;
  width: 30%;
}

.modalBox .modalBoxTable td a {
  text-decoration: underline;
}

.modalBox .modalBoxTable2 table {
  width: 100%;
}

.modalBox .modalBoxTable2 caption {
  padding: 10px;
  font-size: 1.8rem;
  text-align: center;
}

.modalBox .modalBoxTable2 th,
.modalBox .modalBoxTable2 td {
  padding: 8px;
  font-size: 1.4rem;
  border: 1px solid #ccc;
  text-align: center;
}

.modalBox .modalBoxTable2 th {
  background-color: #efefef;
}

.modalBox .modalBoxTable2 thead th {
  text-align: center;
}

.modalBox .modalBoxTable2 tbody td {
  width: 13.5%;
  vertical-align: middle;
}

.modalBox .modalBoxTable2 tbody td small {
  display: block;
  margin-top: 5px;
  font-size: 1rem;
}

.modalBox .modalBoxTableLegend table {
  margin-top: 10px;
  width: 100%;
}

.modalBox .modalBoxTableLegend caption {
  padding: 10px;
  font-size: 1.4rem;
  text-align: left;
  font-weight: bold;
}

.modalBox .modalBoxTableLegend th,
.modalBox .modalBoxTableLegend td {
  padding: 6px 4px;
  font-size: 1.4rem;
  text-align: left;
}

.modalBox .modalBoxTableLegend th {
  padding-left: 10px;
  white-space: nowrap;
  text-align: left;
}

.modalBox .modalBoxTableLegend p {
  margin-top: 10px;
  padding-left: 10px;
}

.modalBox .modalBoxNote {
  margin-top: 15px;
}

.modalBox .modalBoxNote p {
  font-size: 1.2rem;
}

.modalBox_select {
  width: 100%;
  margin: 20px auto;
  position: relative;
  z-index: 1;
}

.modalBox_select::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  background: #eee;
}

.modalBox_select::after {
  border-top: 5px solid #a7a7a7;
  border-left: 5px solid transparent;
  position: absolute;
  top: calc(50% - 3px);
  right: 3%;
}

.modalBox_select select {
  width: 100%;
  padding: 12px;
  height: auto;
  background: none;
  position: relative;
  z-index: 1;
}

#modalBox--combination .modalBoxInner {
  width: 1000px;
}

#modalBox--combination .modalBoxInner .modalTable_heading {
  padding: 10px 100px 10px 10px;
}

#modalBox--combination .modalBoxInner .itemName {
  width: 46%;
}

#modalBox--combination .modalBoxInner .itemMid {
  width: 30%;
}

.modalText, .modalText-main {
  margin: 30px 0 45px;
  padding: 0 30px;
  font-size: 1.6rem;
  line-height: 1.6;
  text-align: center;
}

.modalText-error {
  padding: 0 0 8px;
  font-size: 1.2rem;
  color: red;
  display: none;
}

.modalText-add {
  padding: 24px 0;
  font-size: 1.6rem;
  line-height: 1.6;
}

.modalText-break {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.modalText-main {
  margin: 30px 0 0;
}

.modalText-main + .modalText, .modalText-main + .modalText-main {
  margin: 10px 0 30px;
}

.modalText-caption {
  font-size: 1.4rem;
  text-align: right;
}

#modalBox--default .modalBoxInner {
  max-height: 500px;
  overflow-y: scroll;
  -ms-overflow-style: none;
}

#modalBox--default .modalBoxInner::-webkit-scrollbar {
  display: none;
}

#modalOverlay {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1003;
  display: none;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
}

.hideItem {
  display: none;
}

.floatRItem {
  float: right;
}

.iconBlank {
  margin: 0 3px;
  position: relative;
  top: 2px;
  display: inline-block;
  background: url(../img/icon_blank.svg) no-repeat 0 0/auto 13px;
  width: 13px;
  height: 13px;
}

.iconDLb {
  position: relative;
  top: 2px;
  display: inline-block;
  background: url(../img/icon_dlb.svg) no-repeat 0 0/auto 11px;
  width: 11px;
  height: 11px;
}

.textud,
a:link.textud,
a:visited.textud,
a:hover.textud {
  text-decoration: underline;
}

.modalTrigger {
  width: 30px;
  height: 30px;
  cursor: pointer;
  background: url("../img/icon_mylist_square.png") no-repeat center;
  background-size: contain;
}

.modalTrigger.is-active {
  background: url("../img/icon_mylist_square_yellow.png") no-repeat center;
  background-size: contain;
}

.detail .modalTrigger {
  width: 100%;
  height: auto;
  display: block;
  background: none;
  opacity: 0;
  cursor: pointer;
}

.detail .modalTrigger.is-view {
  opacity: 1;
}

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

	IE
  
----------------------------------------------------------------------------- */
@media all and (-ms-high-contrast: none) {
  header #gnav .loginBox li a {
    padding: 14px 0 10px;
  }
  header #gnav .navLeft li a span {
    top: 2px;
  }
  .pageTtl h1 {
    position: relative;
    top: 4px;
  }
  .btn a span {
    position: relative;
    top: 2px;
  }
}

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

.col02 .col_box {
  width: 490px;
}

.back {
  width: 1000px;
  margin: 15px auto;
}

.back .btn a {
  font-size: 1.4rem;
  border: none;
  background: none;
  width: auto;
  display: inline-block;
  padding: 0;
  font-weight: bold;
  text-align: center;
  border-radius: 4px;
  transition: 0.3s;
}

.back .btn a:hover {
  opacity: 0.6;
}

.back .btn a span {
  padding-right: 18px;
  background: url(../img/icon_return.png) no-repeat right center;
  background-size: 12px 10px;
  text-decoration: underline;
}

.detail_table {
  width: 100%;
  border: 1px solid #c0c0c0;
  border-top: 2px solid #c0c0c0;
}

.detail_table .head {
  width: 40px;
  padding: 2px 4px;
  background: #e0e0e0;
  font-weight: normal;
  vertical-align: middle;
}

.detail_table tr {
  border-bottom: 1px solid #c0c0c0;
}

.detail_table td {
  padding: 2px 0;
  font-size: 1.2rem;
  font-weight: 600;
  text-align: center;
  border-right: 1px solid #c0c0c0;
  vertical-align: middle;
}

.detail_table td.gray {
  background: #f7f7f7;
}

.detail_table td.gray-wide {
  width: 120px;
}

.detail_input {
  width: 25px !important;
  height: 25px !important;
  z-index: 1;
  top: 0;
  left: 0;
}

.detail_input:checked + span::after {
  content: '';
  display: block;
  width: 6px;
  height: 10px;
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translate(-50%, -50%) skew(-6deg) rotate(30deg);
}

.detail_cont {
  width: 20px;
  height: 20px;
  margin: 4px auto 0;
  display: block;
  background: #eeeeee;
  border: 1px solid #c0c0c0;
  border-radius: 6px;
  position: relative;
  cursor: pointer;
}

.detail_all {
  font-size: 1.1rem;
  border-bottom: 1px solid #000;
}

.detail_arrow {
  width: 12px;
  height: 12px;
  display: block;
  position: relative;
  margin: 4px auto 0;
}

.detail_arrow::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-top: 5px solid #000;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-bottom: 5px solid transparent;
  transform: rotate(-90deg);
  margin-left: 4px;
}

.detail_box {
  display: flex;
  justify-content: space-around;
  align-items: center;
  /*padding: 6px 4px;*/
  box-sizing: border-box;
}

.detail_box.tns-slider {
  /*padding: 6px 0;*/
}

.detail_list {
  width: 100%;
  text-align: center;
}

.detail_list.is-none {
  display: none;
}
.tns-outer {
  position: relative;
}
.tns-controls {
  width: 125%;
  position: absolute;
  left: 50%;
  top: 10px;
  transform: translate(-50%);
  z-index: 1;
}
.tns-controls button {
  padding: 0;
  text-shadow: 
        white 1px 1px 0, white -1px -1px 0,
        white -1px 1px 0, white 1px -1px 0,
        white 0px 1px 0, white  0-1px 0,
        white -1px 0 0, white 1px 0 0;
}
.tns-controls button:disabled {
  display: none;
}
.tns-controls button[data-controls="prev"] {
  position: absolute;
  left: 4px;
}
.tns-controls button[data-controls="next"] {
  position: absolute;
  right: 4px;
}
.documentDownload .tns-controls {
  width: 100%;
  top: 6px;
}
.documentDownload .tns-controls button {
  font-size: 150%;
}

.detail_img {
  width: auto;
  height: 65px;
}

.detail_img img {
  width: auto;
  height: 40px;
  margin: 0 auto;
}

.detail_img-file {
  width: auto;
  height: 40px;
}

.detail_img-file img {
  width: auto;
  height: 40px;
}

.detail_dl, .detail_dl2 {
  width: 14px;
  height: 14px;
  margin: 2px auto 0;
  display: block;
}

.detail_dl img, .detail_dl2 img {
  width: 100%;
  height: auto;
  display: block;
}

.detail_download {
  width: 250px;
  margin: 12px auto 26px;
}

.detail_downloadInner {
  width: 100%;
  padding: 5px 24px 5px 12px;
  position: relative;
  display: inline-block;
  background: #ff4b00;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  border-radius: 3px;
  transition: 0.3s;
  color: #fff !important;
}

.detail_downloadInner:hover {
  opacity: 0.6;
}

.detail_downloadInner .icon {
  position: absolute;
  right: 4px;
  top: 45%;
  width: 13px;
  height: 13px;
  display: block;
  transform: translateY(-50%);
}

.detail_downloadInner .icon img {
  width: 100%;
}

table label {
  width: 20px;
  height: 20px;
  margin: 0 auto;
  display: block;
  position: relative;
  cursor: pointer;
}

.heading-center {
  padding: 20px 0 20px;
  text-align: center;
}

.heading-bottom {
  padding: 0 0 30px;
}

.text {
  font-size: 1.4rem;
  line-height: 1.6;
}

.text-heading {
  padding: 4px 0;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.6;
}

.list {
  display: flex;
  align-items: center;
}

.list-between {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.list-mylist {
  padding: 30px 45px;
  border: 1px solid #c0c0c0;
}

.list_item {
  margin-right: 10px;
}

.list_item-head {
  font-size: 1.6rem;
  font-weight: bold;
}

.list_item-select {
  width: 45%;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.list_item-select::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  background: #eee;
}

.list_item-select::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-top: 4px solid #aaa;
  border-right: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid transparent;
  position: absolute;
  top: calc(50% + 2px);
  right: 3%;
  transform: translateY(-50%);
  z-index: -1;
}

.list_item-select .btn-select {
  width: 100%;
  padding: 12px 0;
  font-weight: bold;
}

.btn-all {
  width: 110px;
  padding: 4px 0;
  font-size: 1.4rem;
  background: #eee;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
}

.btn-label {
  width: 100%;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.btn-select {
  height: auto;
  padding: 4px 0;
  text-align: center;
  font-size: 1.4rem;
  background: none;
  border: none;
  border-radius: 0;
  opacity: 0;
}

.posCenter {
  height: 640px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.textBox {
  margin: 8px 0;
  padding: 45px 0 20px;
  display: flex;
  flex-flow: column;
  align-items: center;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  text-align: center;
}

.textBox_heading {
  padding: 0 0 40px;
  font-size: 2rem;
  font-weight: bold;
}

.textBox_btn {
  width: 200px;
}

.textBox_btnInner {
  width: 100%;
  padding: 14px 0;
  display: block;
  background: #eee;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: bold;
  cursor: pointer;
  transition: opacity 0.3s ease;
  position: relative;
}

.textBox_btnInner:hover {
  opacity: 0.6;
}

.textBox_btnInner::after {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 50%;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: translateY(-50%) rotate(45deg);
}

.textBox_link {
  padding: 15px 0 0;
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  font-weight: bold;
  transition: opacity 0.3s ease;
}

.textBox_link:hover {
  opacity: 0.6;
  text-decoration: underline;
}

.textBox_arrow {
  width: 8px;
  height: 8px;
  margin: 0 6px 0 0;
  display: block;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(-45deg);
}

.search_heading {
  padding: 5px 0 0;
  font-size: 1.4rem;
}

.search_icon {
  width: 45px;
  height: 45px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 13px;
}

.searchBreads {
  width: 100%;
  padding: 5px 0 0;
  display: flex;
}

.searchBreads-top {
  padding: 25px 0 0;
  display: flex;
}

.searchBreads_list {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.searchBreads_list::after {
  content: '';
  display: flex;
  width: 5px;
  height: 5px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(-45deg);
  align-items: center;
  margin: 2px 7px 0;
}

.searchBreads_list:last-child {
  text-decoration: none;
}

.searchBreads_list:last-child::after {
  display: none;
}

.searchBreads_list .search_heading {
  padding: 0;
}

.tab {
  margin: 15px 0 0;
}

.tab_icon-mylist {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 18px;
  transition: background-image 0.3s ease;
}

.tab ul {
  width: 1000px;
  margin: 0 auto;
  display: flex;
}

.tab ul li {
  width: 250px;
  text-align: center;
  background: #eeeeee;
  border: 1px solid #c0c0c0;
  transition: 0.3s;
  position: relative;
}

.tab ul li:first-child {
  width: 300px;
}

.tab ul li:last-child {
  margin-right: 0;
}

.tab ul li:hover {
  background: #626262;
  opacity: 1;
}

.tab ul li:hover span,
.tab ul li:hover a {
  color: #fff;
}

.tab ul li:hover span:after,
.tab ul li:hover a:after {
  border-right: 1px solid c0c0c0;
  border-bottom: 1px solid #c0c0c0;
}

.tab ul li.active {
  background: #626262;
}

.tab ul li.active span,
.tab ul li.active a {
  color: #fff;
}

.tab_link {
  display: block;
  padding: 10px 0;
  font-size: 1.4rem;
  color: #000;
  position: relative;
  cursor: pointer;
  transition: 0.3s;
}

.tabContents {
  padding: 15px 0 0;
}

.catalogCheck {
  margin: 0 0 20px;
  border-top: 1px solid #c0c0c0;
  border-bottom: 1px solid #c0c0c0;
}

.catalogCheck-head {
  margin: 0;
  background: #efefef;
  font-weight: bold;
}

.catalogCheck-head li {
  text-align: center;
}

.catalogCheck_list {
  display: flex;
  padding: 0 8px;
  align-items: center;
  justify-content: flex-start;
  border-bottom: 1px solid #c0c0c0;
}

.catalogCheck_list label {
  width: 7%;
  position: relative;
}

.catalogCheck_list:last-child {
  border-bottom: none;
}

.catalogCheck_list:nth-child(even) {
  background: #efefef;
}

.catalogCheck_select {
  position: relative;
}

.catalogCheck_text {
  width: 35%;
  padding: 0 8px;
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: center;
}

.catalogCheck_text--type {
  width: 17.5%;
  font-size: 1.4rem;
  line-height: 1.6;
}

.catalogCheck_text--name, .catalogCheck_text--name--head {
  width: 65%;
  padding: 12px 12px 12px 36px;
  font-size: 1.4rem;
  line-height: 1.6;
  transition: opacity 0.3s ease;
  text-decoration: underline !important;
  text-align: left;
}

.catalogCheck_text--name:hover, .catalogCheck_text--name--head:hover {
  opacity: 0.6;
}

.catalogCheck_text--name--head {
  text-decoration: none !important;
}

.catalogCheck_text--name--head:hover {
  opacity: 1;
  text-decoration: none;
}

.catalogCheck_cont {
  display: flex;
  justify-content: flex-end;
}

.catalogCheck_btn, .catalogCheck_btn-clear, .catalogCheck_btn-select {
  width: 150px;
  margin-left: 15px;
  padding: 8px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  font-size: 1.6rem;
  font-weight: bold;
  cursor: pointer;
}

.catalogCheck_btn-clear {
  background: #eee;
}

.catalogCheck_btn-select {
  background: #000;
  color: #fff;
}

.labelSelect {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.labelSelect_body {
  width: 75%;
  margin: 5px 0;
  position: relative;
  z-index: 1;
}

.labelSelect_body::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #eee;
  z-index: -2;
}

.labelSelect_body::after {
  border-top: 5px solid #a7a7a7;
  border-left: 5px solid transparent;
  top: calc(50% - 3px);
  right: 5%;
}

.labelSelect_body select {
  padding: 4px 8px;
  background: none;
}

.labelList_text {
  padding: 4px 0;
  font-weight: bold;
}

.labelBtn {
  padding: 0 8px 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.labelBtn_list {
  width: 47%;
}

.labelBtn_item {
  width: 100%;
  padding: 4px 0;
  display: block;
  background: #eee;
  font-size: 1.4rem;
  font-weight: bold;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.labelBtn_item:hover {
  opacity: 0.6;
}

.nomuch {
  margin: 24px 0 0;
  padding: 24px 24px;
  background: #eee;
}

.nomuch_error {
  font-size: 1.8rem;
  font-weight: 700;
  color: #c00;
  margin-bottom: 12px;
}

.nomuch_text {
  font-size: 1.6rem;
  padding-left: 1.2em;
}

.lightbox {
  margin: 0 !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
  z-index: 9999 !important;
}

.searchResult .is-registItem {
  background: #eaeaea !important;
}

.searchResult .is-registItem .bg {
  background: #eaeaea !important;
}

.searchResult .slick-prev {
  width: 20px;
  height: 20px;
}

.searchResult .slick-prev::before {
  width: 6px;
  height: 6px;
  left: 2px;
}

.searchResult .slick-next {
  width: 20px;
  height: 20px;
}

.searchResult .slick-next::before {
  width: 6px;
  height: 6px;
  right: 2px;
}

.searchResult .slick-slider {
  padding: 0 15px;
}

.searchResult .slick-list {
  width: 40px;
}

.searchResult .slick-list .detail_img a {
  width: 40px;
  height: 40px;
  display: block;
}

.searchResult .slick-list .detail_img a img {
  width: auto;
  height: 100%;
  margin: 0 auto;
}

.searchResult .slick-slide {
  overflow: hidden;
}

.mylist .slick-prev {
  width: 20px;
  height: 20px;
}

.mylist .slick-prev::before {
  width: 6px;
  height: 6px;
  left: 2px;
}

.mylist .slick-next {
  width: 20px;
  height: 20px;
}

.mylist .slick-next::before {
  width: 6px;
  height: 6px;
  right: 2px;
}

.mylist .slick-slider {
  padding: 0 15px;
}

.mylist .slick-list {
  width: 40px;
}

.mylist .slick-list .detail_img a {
  width: 40px;
  height: 40px;
  display: block;
}

.mylist .slick-list .detail_img a img {
  width: auto;
  height: 100%;
  margin: 0 auto;
}

.mylist .slick-slide {
  overflow: hidden;
}

.pop_text {
  padding: 5px 0;
  font-size: 12px;
  line-height: 1.6;
}

.namePop {
  padding: 12px 16px;
  position: absolute;
  top: -60px;
  left: -20%;
  z-index: -9999;
  pointer-events: none;
  background: #fff;
  border: 1px solid #c0c0c0;
  border-radius: 4px;
  opacity: 0;
  white-space: nowrap;
  transition: opacity 0.3s ease;
  box-shadow: 3px 3px 11px -1px #000;
}

.namePop_text {
  font-size: 1.4rem;
}

.namePop.is-view {
  opacity: 1;
  z-index: 9999;
}

.namePop::after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  background: #fff;
  border-right: 1px solid #c0c0c0;
  border-bottom: 1px solid #c0c0c0;
  transform: rotate(53deg) skew(15deg);
  position: absolute;
  top: 89%;
  left: 30%;
}

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

	IE
  
----------------------------------------------------------------------------- */
@media all and (-ms-high-contrast: none) {
  header #gnav .loginBox li a {
    padding: 14px 0 10px;
  }
  header #gnav .navLeft li a span {
    top: 2px;
  }
  .pageTtl h1 {
    position: relative;
    top: 4px;
  }
  .btn a span {
    position: relative;
    top: 2px;
  }
}
/*# sourceMappingURL=../../maps/common/css/base_pc_only.css.map */
