.form-section {
    margin-top: 40px;
}

.form-section:first-child {
    margin-top: 32px;
}

.form-control {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #c8cacc;
    width: 100%;
}

.form-control:-ms-input-placeholder {
    color: #9d9d9d !important;
}

.form-control::placeholder {
    color: #9d9d9d !important;
}

.form-control--entered {
    color: #323233;
    background-color: #f0f2f5;
}

.form-control--sale {
    border: 1px solid #e10041;
}

.form-control--buy {
    border: 1px solid #29905e;
}

.form-control--tournament {
    border: 1px solid #4a8fe7;
}

.form-control--column {
    border: 1px solid #9c81ad;
}

.form-keyword .select2-container {
    width: 100% !important;
    min-height: 32px;
    border-radius: 4px;
}

.form-keyword .select2-selection__choice {
    border: none !important;
    font-size: 12px !important;
    font-size: 1.2rem !important;
    padding-left: 16px !important;
}

.form-keyword .select2-selection__choice__remove {
    border-right: none !important;
    color: #323233 !important;
}

.form-keyword .select2-selection__choice__remove span {
    line-height: 1.5 !important;
    display: block !important;
}

.form-keyword .select2-results__option--selectable {
    font-size: 12px !important;
    font-size: 1.2rem !important;
}

.form-keyword--sale .select2-selection--multiple {
    border-color: #e10041 !important;
}

.form-keyword--buy .select2-selection--multiple {
    border-color: #29905e !important;
}

.form-keyword--tournament .select2-selection--multiple {
    border-color: #4a8fe7 !important;
}

.form-keyword--column .select2-selection--multiple {
    border-color: #9c81ad !important;
}

.form-pulldown {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #c8cacc;
    overflow: hidden;
    position: relative;
}

.form-pulldown:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    padding: 0;
    pointer-events: none;
    right: 8px;
}

.form-pulldown select {
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 6px 16px;
    line-height: 1.6;
    color: #323233;
}

.form-pulldown select::-ms-expand {
    display: none;
}

.form-pulldown--sale {
    border: 1px solid #e10041;
}

.form-pulldown--buy {
    border: 1px solid #29905e;
}

.form-radio {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.form-radio__button {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    border: solid 1px #c8cacc;
    background-color: #ffffff;
}

.form-radio__text {
    margin-left: 8px;
    display: block;
    line-height: 1;
}

.form-radio__text--sm {
    font-size: 10px;
    font-size: 1rem;
    margin-left: 24px;
}

.form-radio input {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    width: 0;
    margin: 0;
}

.form-radio input:focus+.form-radio__button {
    border: solid 1px #c8cacc;
    background: #ffffff;
}

.form-radio input:checked+.form-radio__button {
    border: solid 1px #c8cacc;
}

.form-radio input:checked+.form-radio__button:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #323233;
}

.form-radio--bottom {
    padding-left: 24px;
}

.form-check {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.form-check__button {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    background: #fff;
    border: solid 1px #c8cacc;
    background-color: #ffffff;
}

.form-check__text {
    margin-left: 8px;
    display: block;
    line-height: 1;
}

.form-check__text a {
    color: #0079d9;
}

.form-check input {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    width: 0;
    margin: 0;
}

.form-check input:focus+.form-check__button {
    border: solid 1px #c8cacc;
    background: #ffffff;
}

.form-check input:checked+.form-check__button {
    background: #e10041;
}

.form-check input:checked+.form-check__button:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -70%) rotate(-45deg);
    width: 9px;
    height: 6px;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
}

.form-check--sale input:checked+.form-check__button {
    background: #e10041;
}

.form-check--buy input:checked+.form-check__button {
    background: #29905e;
}

.form-check--tournament input:checked+.form-check__button {
    background: #4a8fe7;
}

.form-check--column input:checked+.form-check__button {
    background: #9c81ad;
}

.form-check--frame input:checked+.form-check__button {
    background: white;
}

.form-check--frame input:checked+.form-check__button:before {
    border-left: 2px solid #e10041;
    border-bottom: 2px solid #e10041;
}

.form-check--frame .form-check__text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
}

.form-check--frame+.text-caption {
    margin-left: 24px;
    display: block;
}

.form-tag {
    display: inline-block;
    margin-right: 4px;
}

.form-tag input {
    display: none;
}

.form-tag__label {
    display: inline-block;
    line-height: 1;
    padding: 6px 10px;
    border-radius: 4px;
    background-color: #ffffff;
    cursor: pointer;
}

.form-tag--sale .form-tag__label {
    color: #e10041;
    border: 1px solid #e10041;
}

.form-tag.double_image_part {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.pokemon_type .form-tag--sale .form-tag__label,
.weiss_type .form-tag--sale .form-tag__label,
.shadow_type .form-tag--sale .form-tag__label {
    text-align: center;
}

.pokemon_type .form-tag--sale .form-tag__label img {
    margin: 5px auto 0;
    border-radius: 50rem;
}

.weiss_type .form-tag--sale .form-tag__label img,
.shadow_type .form-tag--sale .form-tag__label img {
    margin: 5px auto 0;
}

.weiss_type .form-tag--sale .form-tag__label .double_image {
    width: 100%;
    display: inline-flex;
    justify-content: center;
    margin: 5px auto 0;
}

.weiss_type .form-tag--sale .form-tag__label .double_image img {
    margin: 0;
}

.form-tag--buy .form-tag__label {
    color: #29905e;
    border: 1px solid #29905e;
}

.form-tag--tournament .form-tag__label {
    color: #4a8fe7;
    border: 1px solid #4a8fe7;
}

.form-tag--column .form-tag__label {
    color: #9c81ad;
    border: 1px solid #9c81ad;
}

.form-tag--sale input:checked+.form-tag__label {
    background-color: #e10041;
    border: 1px solid #e10041;
    color: #ffffff;
    font-weight: bold;
}

.form-tag--buy input:checked+.form-tag__label {
    background-color: #29905e;
    border: 1px solid #29905e;
    color: #ffffff;
    font-weight: bold;
}

.form-tag--tournament input:checked+.form-tag__label {
    background-color: #4a8fe7;
    border: 1px solid #4a8fe7;
    color: #ffffff;
    font-weight: bold;
}

.form-tag--column input:checked+.form-tag__label {
    background-color: #9c81ad;
    border: 1px solid #9c81ad;
    color: #ffffff;
    font-weight: bold;
}

.form-toggle__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.form-toggle__text {
    font-weight: bold;
    border: 1px solid #bebfc2;
    background-color: #ffffff;
    display: inline-block;
    text-align: center;
    box-shadow: 0 2px 0 0 #bebfc2;
    line-height: 1;
    cursor: pointer;
}

.form-toggle:first-child .form-toggle__text {
    border-radius: 4px 0 0 4px;
}

.form-toggle:last-child .form-toggle__text {
    border-radius: 0 4px 4px 0;
}

.form-toggle input {
    display: none;
}

.form-toggle input:checked+.form-toggle__text {
    color: #ffffff;
    background-color: #323233;
    border: 1px solid #323233;
    box-shadow: 0 0 0 0 #bebfc2;
    transform: translateY(2px);
    cursor: auto;
}

.form-toggle input:checked+.form-toggle__text--sale {
    background-color: #e10041;
    border: 1px solid #e10041;
}

.form-counter {
    width: 88px;
}

.form-counter__count {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

.form-counter__button {
    display: block;
    height: 16px;
    width: 16px;
    border-radius: 5px;
    background-color: #323233;
    color: #ffffff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 1;
}

.form-counter__button:before {
    content: "";
    display: block;
    height: 1px;
    width: 7px;
    background-color: #ffffff;
}

.form-counter__button--plus:after {
    content: "";
    display: block;
    height: 7px;
    width: 1px;
    background-color: #ffffff;
    transform: translateX(-4px);
}

.form-counter__button.disabled {
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
    cursor: inherit;
    pointer-events: none;
}

.form-counter__input {
    max-width: 40px;
    border: none;
    line-height: 1;
    text-align: center;
    margin-left: 8px;
    margin-right: 8px;
    font-size: 16px;
    font-size: 1.6rem;
    outline: none;
    pointer-events: none;
    background: inherit;
}

.form-counter__reset {
    font-size: 10px;
    font-size: 1rem;
    text-align: center;
    margin-top: 8px;
}

.form-select {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: block;
    position: relative;
    position: relative;
    max-width: 180px;
    height: 30px;
    overflow: hidden;
    border-radius: 4px;
    color: #828282;
    line-height: 1;
    font-size: 12px;
    font-size: 1.2rem;
}

.page-sale .form-select {
    border: 1px solid #e10041;
}

.page-buy .form-select {
    border: 1px solid #29905e;
}

.page-tournament .form-select {
    border: 1px solid #4a8fe7;
}

.page-column .form-select {
    border: 1px solid #9c81ad;
}

.form-select:before {
    pointer-events: none;
    content: "";
    display: block;
    height: 7px;
    width: 7px;
    position: absolute;
    top: 0;
    right: 7px;
    bottom: 0;
    transform: rotate(45deg);
    margin: auto;
}

.page-sale .form-select:before {
    border-right: 2px solid #e10041;
    border-bottom: 2px solid #e10041;
}

.page-buy .form-select:before {
    border-right: 2px solid #29905e;
    border-bottom: 2px solid #29905e;
}

.page-tournament .form-select:before {
    border-right: 2px solid #4a8fe7;
    border-bottom: 2px solid #4a8fe7;
}

.page-column .form-select:before {
    border-right: 2px solid #9c81ad;
    border-bottom: 2px solid #9c81ad;
}

.form-select__item {
    height: 100%;
    width: 100%;
    border: none;
    padding-left: 6px;
    padding-right: 14px;
    cursor: pointer;
    text-indent: 0.01px;
    background: transparent;
}

.form-search {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.form-search__input {
    -ms-flex: 1;
    flex: 1;
    height: 30px;
    border-radius: 4px 0 0 4px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1;
    margin-right: 0;
}

.page-sale .form-search__input {
    border: 1px solid #e10041;
}

.page-buy .form-search__input {
    border: 1px solid #29905e;
}

.page-tournament .form-search__input {
    border: 1px solid #4a8fe7;
}

.page-column .form-search__input {
    border: 1px solid #9c81ad;
}

.form-search__submit {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    border-radius: 0 4px 4px 0;
}

.page-sale .form-search__submit {
    background: #e10041;
}

.page-buy .form-search__submit {
    background: #29905e;
}

.page-tournament .form-search__submit {
    background: #4a8fe7;
}

.page-column .form-search__submit {
    background: #9c81ad;
}

.form-search__submit:before {
    color: #ffffff;
    font-size: 20px;
    font-size: 2rem;
}

.form-search__submit__button {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: none;
    background: none;
}

.form-search__submit__button:hover {
    cursor: pointer;
}

.form-search__submit__button:focus {
    outline: none;
}

.form-pulldown-sp {
    height: 28px;
    width: 24px;
    position: absolute;
    top: 1px;
    left: 1px;
    border-radius: 4px 0 0 4px;
}

.form-pulldown-sp:after {
    content: "";
    display: block;
    height: 7px;
    width: 7px;
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    transform: rotate(45deg);
    margin: auto;
    pointer-events: none;
}

.page-sale .form-pulldown-sp:after {
    border-right: 2px solid #e10041;
    border-bottom: 2px solid #e10041;
}

.page-buy .form-pulldown-sp:after {
    border-right: 2px solid #29905e;
    border-bottom: 2px solid #29905e;
}

.page-tournament .form-pulldown-sp:after {
    border-right: 2px solid #4a8fe7;
    border-bottom: 2px solid #4a8fe7;
}

.page-column .form-pulldown-sp:after {
    border-right: 2px solid #9c81ad;
    border-bottom: 2px solid #9c81ad;
}

.form-pulldown-sp__item {
    width: 100%;
    height: 100%;
    border: none;
    background: transparent;
    color: transparent;
    font-size: 16px;
    font-size: 1.6rem;
}

.form-wrap__half {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.form-wrap__half>* {
    width: calc((100% - 8px) / 2);
}

.form-wrap__yubin {
    width: 200px;
    max-width: 200px;
}

.form-wrap__prefectures {
    width: 176px;
}

.form-wrap__address {
    margin-top: 8px;
}

.form-wrap__birthday {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.form-wrap__birthday__year {
    width: 120px;
}

.form-wrap__birthday__month {
    width: 80px;
    margin-left: 8px;
}

.form-wrap__birthday__day {
    width: 80px;
    margin-left: 8px;
}

.form-wrap__limit {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.form-wrap__limit__year,
.form-wrap__limit__month {
    width: 80px;
}

.form-wrap__limit__year {
    margin-left: 8px;
}

.form-wrap__cord {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.form-wrap__cord input {
    width: 128px;
}

.form-wrap__cord--caption {
    color: #595959;
    display: inline-block;
    margin-left: 16px;
}

.form-wrap__radio {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-direction: column;
    flex-direction: column;
}

.form-wrap__radio>*:nth-child(n+2) {
    margin-top: 16px;
}

.form-item {
    margin-top: 32px;
}

.form-item:nth-of-type(n + 2) {
    margin-top: 24px;
}

.form-item__title {
    font-weight: bold;
}

.form-item__title--md {
    font-size: 12px;
    font-size: 1.2rem;
}

.form-item__title--sm {
    font-size: 10px;
    font-size: 1rem;
    display: inline-block;
    margin-left: 24px;
}

.form-item__input {
    position: relative;
}

.form-item__title--req {
    color: #d10000;
    display: inline-block;
    border: 1px solid #d10000;
    border-radius: 4px;
    font-size: 10px;
    font-size: 1rem;
    padding: 2px 6px;
    line-height: 1;
    margin-left: 16px;
}

.form-button {
    height: 48px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 24px;
}

.form-back {
    margin-top: 24px;
}

.form-agree {
    background-color: #f0f2f5;
    padding-top: 16px;
    padding-bottom: 16px;
    text-align: center;
    margin-top: 32px;
    line-height: 1;
}

.form-agree .form-check__text {
    font-size: 14px !important;
    font-size: 1.4rem !important;
}

.form-agree+.form-error {
    text-align: center;
    margin-top: 8px;
}

.form-error {
    color: #d10000;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    width: 100%;
    margin-top: 4px;
}