@charset "utf-8";

.b10 {
    margin-bottom: 10px;
}
.b15 {
    margin-bottom: 15px;
}
.b20 {
    margin-bottom: 20px;
}
.b40 {
    margin-bottom: 40px;
}
#contents *, #contents ::before, #contents ::after {
    box-sizing: border-box;
}
#contents *,
.modal-content * {
    font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
}

.section-title {
    background-color: #2d63a3;
    border-style: double none double none;
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: 1px;
    padding: .6em 0;
    text-align: center;
    margin: 0 0 .6rem;
}

.search-title {
    color: #2d63a3;
    line-height: 1.25;
    padding-bottom: 0;
}
.search-title strong {
    display: block;
    font-size: 1.8em;
}

.main-img-box [class^="switch-item"] {
    animation: bgAnime 20s infinite;
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 100%;
    opacity: 0;
    position: absolute;
    width: 100%;
}

@keyframes bgAnime {
    0% { opacity: 0; }
    10% { opacity: 1; }
    25% { opacity: 1; }
    35% { opacity: 0; }
    100% { opacity: 0; }
}

.search-box .item-box:not(:last-of-type) {
    border-bottom: 1px dotted #b4b4b4;
}

.search-box .extend {
    border: none !important;
}

.item-box [class*="-list"]:not(.check-list) .label {
    display: inline-flex;
    height: 100%;
    width: 100%;
    font-size: 1.2em;
    font-weight: bold;
    color: #333;
    position: relative;
    text-align: center;
}
.item-box .label:hover {
    cursor: pointer;
}
.item-box input[type=radio],
.item-box input[type=checkbox] {
    display: none;
}
.item-box input[type=radio]+.label {
    border: 1px solid #2d63a3;
    border-radius: 5px;
}
.item-box input[type=radio]:checked+.label {
    border: 3px solid #e07306;
    border-radius: 5px;
}
.item-box input[type=radio]:checked+.label.fill {
    background-color: #e07306;
    color: #ffffff;
}
.img-list .label .img-bg {
    background-color: #f3f3f3;
    border-radius: 3px;
    position: relative;
    width: 30%;
    z-index: 2;
}
.img-list .label img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
}

.label p {
    padding-bottom: 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.item-box .item-list .label p {
    width: 100%;
}

.check-list .label::before,
.check-list .label::after {
    content: '';
    display: inline-block;
    left: 0;
    margin-right: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.result-nav::after {
    content: '';
    display: block;
    width: 100%;
    position: absolute;
    height: 2px;
    background-color: #2D63A3;
    bottom: -15px;
}

.check-list .label::after {
    content: '';
    background: url(/easy-search/common/svg/icon_check.svg) no-repeat bottom 1px left 2px;
    background-size: contain;
    height: 22px;
    width: 26px;
    opacity: 0;
}
.item-box input[type=checkbox]:checked+.label::after {
    opacity: 1;
}

.result-nav .target-number {
    color: #f7660d;
    font-size: 2em;
    letter-spacing: 1px;
    margin-right: 5px;
}

.result-nav .nav-item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: flex;
    height: 100%;
}
.nav-item.sort-order {
    width: fit-content;
}

.sort-order .order-box {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid #ccc;
    background: url(/easy-search/common/svg/sort_arrow.svg) no-repeat center right .5em;
    background-size: 1em;
    border-radius: 5px;
    line-height: 1.5;
    padding: .5em 2em .5em 1em;
    position: relative;
    width: inherit;
}
/* フォーカス時 */
.sort-order .order-box:focus {
    outline-color: #f7660d;
}
/* IEでデフォルトの矢印を消す */
.sort-order .order-box::-ms-expand {
    display: none;
}

.result-comment .strong {
    font-size: 1.2em;
    display: block;
    padding-bottom: 5px;
}

.result.list-item::before {
    content: '';
    display: inline-block;
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
}
.result.list-item:hover {
    cursor: pointer;
}
.result.list-item:hover::before {
    border: 3px solid #f7660d;
    border-radius: 10px;
}

.result.list-item .img-box a,
.result.list-item .detail-box {
    z-index: 2;
}

.result.list-item img {
    width: 100%;
}
.result.list-item:hover img {
    opacity: .9;
}

.feature-list .feature-item.equipped {
    background-color: #2d63a3;
}
.result-list.feature-list::after {
    content: '';
    display: inline-block;
}

.labels .label.discount {
    background-color: #f20000;
}
.labels .label.construction {
    background-color: #53bb06;
}

.price02::after {
    content: '円(税別)';
    font-size: .5em;
}
.price02_tax::after {
    content: '円(税込)';
    font-size: .5em;
}
.price02_tax_big::after {
    content: '円(税込)';
    font-size: .5em;
}

.result-list .btn {
    background-color: #f7660d;
    border-top: 2px solid rgba(255,255,255,0.2);
    border-bottom: 3px solid rgba(0,0,0,0.2);
    border-radius: 5px;
    height: 50px;
    position: relative;
    text-align: center;
}

.result-list .btn:active {
    -webkit-transform: translate(0,2px);
    -moz-transform: translate(0,2px);
    transform: translate(0,2px);
    border-bottom:none;
}
.result-list .btn:hover {
    background-color: #f74e0d;
}
.result-list .btn a:hover {
    text-decoration: none;
}

.pager span.current {
    background-color: #2d63a3;
    color: #fff;
    font-weight: bold;
}
.pager span.prev,
.pager span.next {
    position: relative;
}

.pager span.prev::before,
.pager span.next::before {
    content: '';
    position: absolute;
    top: 50%;
    height: 10px;
    width: 10px;
}

.pager span:not(.current):hover {
    background-color: #e8e8e8;
}

.item-box li p {
  z-index: 2;
}

.hide {
    display: none;
}

.hidden {
  visibility: hidden;;
}

.form-area {
  width: 80%;
}

#keywords:focus {
  outline: 0;
  box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}

#keywords-search {
  display: inline-block;
  padding: 6px 12px;
  border: none;
  border-radius: 4px;
  background-color: #0192d1;
  color: #fff;
  font-weight: bold;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}

button.add {
  border-radius: 50%;
  border: none;
  font-size: 1.6em;
  margin-right: 10px;
}

button.add:hover {
  background: #5ebee8;
}

button.add:active {
  background: #35a7d8;
}

div.compare a {
  font-weight: bold;
  font-size: 1.2em;
  text-decoration: underline;
}

.check-explain {
  font-size: 1.2em;
  margin-bottom: 20px;
}

.check-explain a {
  font-weight: bold;
}

button.add-explain {
  border-radius: 50%;
  border: none;
  font-size: 1.4em;
}

button.add-explain:hover {
  background: #5ebee8;
}

.detail-box {
  position: relative;
}

.info {
  display: none;
  position: absolute;
  top: -40px;
  left: 10px;
  border: 1px solid #000;
  width: 150px;
  line-height: 1.5;
  padding: 5px;
  background: #fff;
  z-index: 2;
  font-size: 1em;
  word-break: break-all;
  background-color: #00a3df;
  color: #ffffff;
  border: none;
  border-radius: 5px;
}

.added {
  background: #5ebee8;
}
