/* CSS Document */

/*=============================================
* PC・タブレット・スマートフォン共通
=============================================*/

/* 共通設定 */
html {
    font-size: 62.5%;
}
body{
    margin: 0;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    overflow-y:scroll;
    color: #333;
}
a {
    color: #3984a9;
    word-wrap: break-word;
    line-height: normal;
}
a:visited {
    color: #3984a9;
}
.caution,
a.caution {
    color: #A7212E;
}
strong {
    text-decoration: underline;
    color: #DC143C;
}
label:hover {
    color: #2017ae;
}
.asterisk,
.notice-check-text p {
    margin: 0;
    padding-left: 1em;
    text-indent: -1em;
    display: block;
    line-height: 1.3em;
}
.font_large {
    font-size: 18px; font-size: 1.8rem !important;
    line-height: 2.4rem;
}
#spmenu li a[target="_blank"] span:after,
a.external[target="_blank"]:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    background-image: url(../image/external_link.svg);
    background-size: contain;
}

/* メンテナンス */
fieldset.maintenance {
    border: 2px solid #9A0000;
    background-color: #FDFCF2;
    text-align: center;
}
fieldset.maintenance section:first-child {
    margin: 0 0 40px 0;
}

/* プレースホルダー */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #bbb;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #bbb;
}
input:-moz-placeholder,
input::-moz-placeholder,
textarea:-moz-placeholder,
textarea::-moz-placeholder {
    color: #bbb;
    opacity: 1;
}

/*ヘッダー*/
header {
    width: 100%;
    border-bottom: 5px solid #9A0000;
    overflow: hidden;
}
header p{
    margin: 0 0 0px 0;
}
.header-item p {
    width: 202px;
}
.header-item p img {
    width: 100%;
    font-size: 30px; font-size: 3rem;
}
.header_Left {
    margin: 0;
    display: flex;
    flex-direction: row;
    align-content: center;
    float: left;
}
.header_Left h1 {
    margin: auto;
    font-size:28px; font-size:2.8rem;
    color: #333;
    line-height: 1.2em;
    display: inline-block;
}
.header_Left h1 a {
    color: #333;
}
.header_Left h1 a:hover {
    text-decoration: none;
}
.header_Left div {
    display: flex;
    align-items: center;
}
.header_Right {
    float: right;
}
.header_info li {
    font-size:13px; font-size:1.3rem;
    list-style: none;
}
.menu-trigger span {
    background-color: #9A0000;
}

/*フッター*/
.footerItem{
    border-top: 1px solid #CCC;
}
.footerInner{
    margin:10px auto;
}
.footer_link {
    margin: 0;
    padding: 0;
    text-align: center;
}
.footer_link li {
    font-size:14px; font-size:1.4rem;
    margin: 0 0 10px 0;
    padding: 0;
    list-style: none;
    clear: both;
}
.footer_copyright {
    margin: 30px 0 0 0;
    text-align: center;
}
.footer_copyright_top {
    margin: 0;
    padding: 0;
    list-style: none;
}
.footer_copyright_top li {
    display: inline-block;
}
.footer_copyright_logo img {
    width: 100px;
}
.footer_copyright_text p {
    margin: 0;
    padding: 0 0 3px 0;
    float: left;
}
.footer_copyright_company {
    margin: 0;
    text-align: center;
}

/*画面ステップ*/
.steplist {
    padding: 0;
    background-color: #EEE;
    list-style: none;
    overflow: hidden;
}
.steplist li {
    width: calc(100% / 4);
    float: left;
    position: relative;
    padding: 10px 4px;
    box-sizing: border-box;
    text-align: center;
    border-top: 1px solid #BBB;
    border-bottom: 1px solid #BBB;
    border-right: 1px solid #CCC;
}
.steplist li:first-child {
    border-left: 1px solid #BBB;
}
.steplist li.steplist-active {
    background-color: #9A0000;
    color: #FFF;
    border-left: none;
    border-right: none;
    border-color: #9A0000;
}
.steplist .steplist-done {
    color: #AAA;
}
.steplist .steplist-active:not(:last-child):after {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-left-color: #9A0000;
    border-width: 5px;
    margin-top: -5px;
}

/*エラー表示*/
.form-error {
    margin: 0 0 20px 0;
    padding: 4px;
    border: 2px #B74545 solid;
    background-color: #F8E6E6;
}
.form-error input[type="text"],
.form-error input[type="number"] {
    border: 3px #aaa solid;
}
.form-error_title {
    margin: 0;
    font-weight: bold;
    color: #AC1313;
}
.itemtable .input_error-text {
    margin: 5px 0 0 0;
    color: #AC1313;
    clear: both;
    font-weight: normal;
}
.itemtable input.input_error,
.itemtable textarea.input_error,
.itemtable select.input_error {
    border: 2px #B74545 solid;
}
.itemtable input[type="file"].input_error {
    border: none;
}
.itemtable tr.input_error td {
    background-color: #F8E6E6;
}
.itemtable div.input-account-name.input_error {
    background-color: #F8E6E6;
}
.itemtable tr.input_error th {
    background-color: #F1CCCC;
}
.content p.form-error_title {
    margin: 0;
}
.content p {
    font-size: 15px; font-size: 1.5rem;
}
.content ul,
.content ol {
    font-size: 15px; font-size: 1.5rem;
}

/*コンテンツ*/
.content,
.spmenu_wrapper {
    width: 96%;
    max-width: 1000px;
    margin: 0 2%;
}
.spmenu_wrapper {
    margin: 0 2% 20px 2%
}
.content section {
    margin: 0 0 20px 0;
}
.content ul,
.content ol {
    margin: 0 0 0 18px;
    padding: 0;
    font-size: 14px; font-size: 1.4rem;
}
.content ul li,
.content ol li {
    margin: 0 10px 10px 0;
}
.row {
    margin: 0 0 10px 0;
}
section .row:first-child {
    margin: 10px 0;
}

/*見出し*/
header h1{
    margin: 0 0 8px 0;
    font-size: 13px; font-size: 1.3rem;
}
.content h2 {
    margin: 0 0 10px 0;
    padding: 0 0 0 5px;
    font-size: 18px; font-size: 1.8rem;
    border-left: 3px solid #9A0000;
    border-bottom: 1px dotted #CCC;
}
.content h3 {
    color: #530000;
}
.content h4 {
    margin: 0 0 3px 0;
}
.content h5 {
    margin: 5px 0 ;
    font-size: 13px; font-size: 1.3rem;
}
.content p {
    margin: 0 0 5px 0;
}

/*テーブル設定*/
.itemtable {
    width: 100%;
    margin: 0 0 10px 0;
    border-top: 1px #CCC solid;
    border-right: 1px #CCC solid;
}
.itemtable th,
.itemtable td {
    padding: 8px 4px;
    box-sizing: border-box;
    overflow: hidden;
}
.itemtable th {
    text-align: left;
    border-bottom: 1px #DDD solid;
    border-left: 1px #CCC solid;
    background-color: #EEE;
}
.itemtable td {
    border-left: 1px #CCC solid;
    border-bottom: 1px #CCC solid;
    font-size: 13px; font-size: 1.3rem;
}
.itemtable p {
    margin: 0;
    padding: 0;
    font-size: 15px; font-size: 1.5rem;
}
.itemtable h4 {
    margin: 0 0 10px 0;
    padding: 2px 4px;
    background-color: #f3f0e8;
}

/*入力フォーム 共通設定*/
.input-long {
    width: 100%;
}
.input-short {
    width: 6rem;
}
input,
select,
textarea {
    height: 40px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size:14px; font-size:1.4rem;
    box-sizing: border-box;
}
select {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    background-image: background: -webkit-linear-gradient(#FFF 0%, #EEE);
    background-image: background: -o-linear-gradient(#FFF 0%, #EEE);
    background-image: background: linear-gradient(#FFF 0%, #EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
    background: linear-gradient(to bottom, #FFF, #EEE);/* IE10+, W3C */
    background: -moz-linear-gradient(top, #FFF, #EEE);/* Firefox用 */
    background-color: #f8f8f8;
    border: 1px solid #aaa;
}
input[type="text"],
input[type="number"],
input[type="email"],
textarea {
    margin: 0;
    padding: 4px;
    font-size:14px; font-size:1.4rem;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    border: 1px #aaa solid;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
    box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    background-color: #f8f8f8;
}
input[type="submit"] {
    height: 44px;
    padding: 0;
    font-size:14px; font-size:1.4rem;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    border: none;
    -webkit-border-radius: 4;
    -moz-border-radius: 4;
    border-radius: 4px;
}
input[type="radio"] {
    box-shadow: none;
}
input[type="number"] {
    -moz-appearance: textfield;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
textarea {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    font-size: 16px; font-size: 1.6rem;
    padding: 5px;
    line-height: 1.3em;
    box-sizing: border-box;
}
.checkbox {
    width: 22px;
    height: 22px;
    vertical-align: text-bottom;
    margin: 0;
}
.input-form th,
.input-form td {
    width: 100%;
    display: block;
}
.button-enter,
.button-form {
    width: 75%;
    border-style: none;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    text-decoration: none;
    line-height: 1rem;
}
.button-enter {
    background-color: #9A0000;
    color: #fff;
    border-radius: 6px;
}
button.button-enter {
    height: auto;
    min-height: 44px;
    padding: 10px 15px;
    line-height: 2.2rem;
}
.button-enter:disabled,
input#ctn_submit:disabled {
    cursor: auto;
    border-color: #ccc;
}
select:disabled {
    background: #ccc;
    text-shadow: none;
}
.button-form {
    -webkit-border-radius: 4;
    -moz-border-radius: 4;
    border-radius: 4px;
    font-size: 14px; font-size: 1.4rem;
    padding: 8px 15px 8px 15px;
    background: #217ea7;
    color: #ffffff;
}
.button-enter:disabled,
.button-enter[disabled]:hover {
    background: #ccc;
    text-shadow: none;
}
.button-back:visited {
    color: #333;
}
.button-back {
    background-image: background: linear-gradient(#FFF 0%, #EEE);
    background-image: background: -webkit-linear-gradient(#FFF 0%, #EEE);
    background-image: background: -o-linear-gradient(#FFF 0%, #EEE);
    background: linear-gradient(to bottom, #FFF, #EEE);/* IE10+, W3C */
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
    background: -moz-linear-gradient(top, #FFF, #EEE);/* Firefox用 */
    background-color: #FFF;
    border: 1px solid #AAA;
    -webkit-border-radius: 4;
    -moz-border-radius: 4;
    border-radius: 4px;
    font-size: 14px; font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
    padding: 4px 15px 4px 15px;
    text-decoration: none;
    color: #333;
    display: inline-block;
}
.button-enter_block {
    text-align: center;
}
.button-back_block {
    text-align: left;
}
.hissu {
    margin: 0 0 0 5px;
    padding: 0 3px;
    font-size: 11px; font-size: 1.1rem;
    background-color: #B74545;
    border-radius: 2px;
    color: #FFF;
    font-weight: normal;
    display: inherit;
}

/*ボタン関連*/
.backbtn {
    min-width: 0;
    background-image: -webkit-linear-gradient(#FFF 0%, #EEE); /* Safari, Chrome*/
    background-image: -o-linear-gradient(#FFF 0%, #EEE);/* Opera*/
    background: linear-gradient(to bottom, #FFF, #EEE);/* IE10+, W3C */
    background: -moz-linear-gradient(top, #FFF, #EEE);/* Firefox */
    background: linear-gradient(to bottom, #FFF, #EEE); /* IE10+, W3C */
    background-color: #FFF;
    border: 1px solid #AAA;
    -webkit-border-radius: 4;
    -moz-border-radius: 4;
    border-radius: 4px;
    font-size: 14px; font-size: 1.4rem;
    font-family: "M PLUS Rounded 1c", "Noto Sans JP", "メイリオ", Meiryo, sans-serif;
    padding: 4px 15px 4px 15px;
    text-decoration: none;
    color: #333;
    display: inline-block;
    text-align: center;
    line-height: 2.1;
}
.backbtn:visited {
  text-decoration: none;
  color: #333;
}

/*利用規約*/
.notice-check fieldset {
    margin: 10px 0 0 0;
    border: 2px solid #B74545;
    background-color: #FDFCF2;
    text-align: center;
}
fieldset.agree {
    padding: 0;
    border: none;
}
.input-mail_address_check_local,
.input-mail_address_check_domain {
    width: 45%;
}
.input-mail_address_check_local {
    float: left;
}
.user_policy {
    margin: 10px 0 0 0;
    text-align: center;
    font-size: 16px; font-size: 1.6rem;
}
.user_policy label {
    padding: 5px 0 10px 0;
    display: block;
}
.notice-check_wrapper {
    padding: 0 0 10px 30px;
    display: flex;
    border-bottom: 1px dotted #ccc;
}
.notice-check_wrapper:last-child {
    padding-top: 10px;
    border-bottom: none;
}
.notice-check fieldset .notice-check_wrapper p {
    margin: 0;
    text-align: left;
}
.notice-check-text {
 width: 65%;
}
.notice-check-box label {
    margin: 0 0 0 20px;
    text-align: left;
}
.notice-check-box label span {
    vertical-align: middle;
}
.content .input_caution p:last-child {
    margin: 0;
}
.notice-check fieldset p {
    margin: 0 0 10px 0;
}
.notice-check .checkbox {
    width: 22px;
    height: 22px;
    vertical-align: middle;
    margin: 0 5px 0 0;
}

/*返金口座情報*/
.content h3.applicant-title,
.content h3.applicant-title {
    margin: 0;
}
.content h3.applicant-title {
    margin: 0 0 8px 0;
    padding: 8px 10px 6px 10px;
    color: #FFF;
    background-color: #495966;
}
.content .input_caution {
    margin: 0 0 10px 0;
    padding: 10px;
    border: 1px #cccccc solid;
    background-color: #fff8eb;
    overflow: hidden;
}
.input-long,
.input-full {
    width: 100%;
}
.input-refund-name {
    width: 100%;
}
.input-account-name_wrapper {
    margin: 0;
    overflow: hidden;
    width: 100%;
}
.input-account_wrapper {
    margin: 10px 0;
    overflow: hidden;
}
.input-account-name {
    margin: 0;
    padding: 10px 0;
    border-bottom: 1px dotted #ccc;
}
.input-account-name:first-child {
    border-top: 1px dotted #ccc;
}
.input-payment td,
.input-payment th {
    width: 100%;
    display: block;
}
.input-payment p {
    padding: 5px 0 0 0;
    clear: both;
}

/*金融機関コード、支店コード選択（theme: "paidin"）*/

.select2-selection.select2-selection--single.input_error {
	border: 2px #B74545 solid;/*エラー時*/
}
.select2-container--paidin .select2-selection--single {
    box-sizing: content-box !important;
    background-color: #f7f7f7;
    border: 1px solid #aaa;
    height: 40px !important;
    border-radius: 4px;
    background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
    background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
    background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
}
/*.select2-container--paidin .select2-selection--single:focus {
    border: 1px solid #5897fb;
}*/
.select2-container--paidin .select2-selection--single .select2-selection__rendered {
    padding-right: 30px !important;
    color: #444;
    line-height: 40px;
}
.select2-container--paidin .select2-selection--single .select2-selection__clear {
    cursor: pointer;
    font-size: 20px !important;
    font-size: 2rem !important;
    color: #495966;
    float: right;
    font-weight: normal;
    height: 38px;
    margin-right: 40px;
}
.select2-container--paidin .select2-selection--single .select2-selection__placeholder {
    color: #333;
}
.select2-container--paidin .select2-selection--single .select2-selection__arrow {
    /*background-color: #eeeeee;*/
    border: none;
    border-left: 1px solid #cecece;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    height: 30px;
    position: absolute;
    top: 5px;
    right: 3px;
    width: 30px;
    /*background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
    background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
    background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0);*/
}
.select2-container--paidin .select2-selection--single .select2-selection__arrow b {
    border-right: 2px solid #495966;
    border-bottom: 2px solid #495966;
    top: 10px;
    right: 10px;
    width: 6px;
    height: 6px;
    position: absolute;
    transform: rotate(45deg);
}

.select2-container--paidin[dir="rtl"] .select2-selection--single .select2-selection__clear {
    float: left;
}

.select2-container--paidin[dir="rtl"] .select2-selection--single .select2-selection__arrow {
    border: none;
    border-right: 1px solid #aaa;
    border-radius: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    left: 1px;
    right: auto;
}

/*.select2-container--paidin.select2-container--open .select2-selection--single {
    border: 1px solid #5897fb;
}*/
.select2-container--paidin.select2-container--open .select2-selection--single .select2-selection__arrow {
    border: none;
    border-left: 1px solid #cecece;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    height: 30px;
    position: absolute;
    top: 5px;
    right: 3px;
    width: 30px;
}

.select2-container--paidin.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-right: 2px solid #495966;
    border-bottom: 2px solid #495966;
    top: 14px;
    right: 10px;
    width: 6px;
    height: 6px;
    position: absolute;
    transform: rotate(225deg);
}

.select2-container--paidin.select2-container--open.select2-container--above .select2-selection--single {
    box-sizing: content-box !important;
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
    background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
    background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
}
.select2-container--paidin.select2-container--open.select2-container--below .select2-selection--single {
    background-color: #eeeeee;
    border-bottom: 1px solid #fff;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0);
}
.select2-container--paidin.select2-container--open.select2-container--below .select2-selection.select2-selection--single.input_error {
    height: 41px !important;
}

.select2-container--paidin .select2-selection--multiple {
    background-color: white;
    border: 1px solid #aaa;
    border-radius: 4px;
    cursor: text;
    outline: 0;
    padding-bottom: 5px;
    padding-right: 5px;
}
/*.select2-container--paidin .select2-selection--multiple:focus {
    border: 1px solid #5897fb;
}*/
.select2-container--paidin .select2-selection--multiple .select2-selection__clear {
    display: none;
}
.select2-container--paidin .select2-selection--multiple .select2-selection__choice {
    background-color: #e4e4e4;
    border: 1px solid #aaa;
    border-radius: 4px;
    display: inline-block;
    margin-left: 5px;
    margin-top: 5px;
    padding: 0;
}
.select2-container--paidin .select2-selection--multiple .select2-selection__choice__display {
    cursor: default;
    padding-left: 2px;
    padding-right: 5px;
}
.select2-container--paidin .select2-selection--multiple .select2-selection__choice__remove {
    background-color: transparent;
    border: none;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    color: #888;
    cursor: pointer;
    font-size: 1em;
    font-weight: bold;
    padding: 0 4px;
}
.select2-container--paidin .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: #555;
    outline: none;
}

.select2-container--paidin[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
    margin-left: 5px;
    margin-right: auto;
}

.select2-container--paidin[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
    padding-left: 5px;
    padding-right: 2px;
}

.select2-container--paidin[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.select2-container--paidin.select2-container--open .select2-selection--multiple {
    border: 1px solid #5897fb;
}

.select2-container--paidin.select2-container--open.select2-container--above .select2-selection--multiple {
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.select2-container--paidin.select2-container--open.select2-container--below .select2-selection--multiple {
    border-bottom: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.select2-container--paidin .select2-search--dropdown .select2-search__field {
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
    box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    background-color: #f8f8f8;
    border: 1px solid #aaa;
    outline: 0;
}

.select2-container--paidin .select2-search--inline .select2-search__field {
    outline: 0;
    box-shadow: none;
}

.select2-container--paidin .select2-dropdown {
    background-color: white;
    border: 1px solid transparent;
}

.select2-container--paidin .select2-dropdown--above {
    border-bottom: none;
}

.select2-container--paidin .select2-dropdown--below {
    border-top: none;
}
.select2-container--paidin .select2-results__option.select2-results__option--selectable,
.select2-container--paidin .select2-results__option.select2-results__message {
    font-size: 15px;
    font-size: 1.5rem;
}

.select2-container--paidin .select2-results > .select2-results__options {
    max-height: 200px;
    overflow-y: auto;
}

.select2-container--paidin .select2-results__option--group {
    padding: 0;
}

.select2-container--paidin .select2-results__option--disabled {
    color: grey;
}

.select2-container--paidin .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #3875d7;
    color: white;
}

.select2-container--paidin .select2-results__group {
    cursor: default;
    display: block;
    padding: 6px;
}

.select2-container--paidin.select2-container--open .select2-dropdown {
    border-color: #aaa;
}
.select2-container--paidin .select2-search.select2-search--dropdown input {
    font-size: 16px;
    font-size: 1.6rem;
}
.select2-container--paidin.select2-container--disabled .select2-selection--single .select2-selection__rendered {
  background-color: #eee;
  cursor: default;
  height: 40px !important;
  border-radius: 4px;
  outline: 0;
}
.select2-container--paidin.select2-container--disabled .select2-selection--single .select2-selection__rendered .select2-selection__placeholder {
  color: #aaa;
}
.select2-container--paidin.select2-container--disabled .select2-selection--single .select2-selection__arrow {
  pointer-events: none;
}
.select2-container--paidin.select2-container--disabled .select2-selection--single .select2-selection__arrow b {
  border-right: 2px solid #aaa;
  border-bottom: 2px solid #aaa;
}
.select2-container--paidin .select2-search.select2-search--dropdown input {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

/*入力内容確認*/
.account-name {
    margin: 5px 0 0 0;
    padding: 5px 0;
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
}

/*受付済*/
.input_caution p {
    margin: 5px 0;
}
.input_caution p.caution {
    margin: 0 0 5px 0;
}
.input_caution .caution_title {
    padding: 0 0 0 8px;
    border-left: 3px solid #9A0000;
    font-weight: bold;
    line-height: 2rem;
}
.caution_title {
    font-size: 16px;
    font-size: 1.6rem;
}
.input_caution p.caution_text {
    margin: 0 0 10px 0;
}
p.caution,
p.caution_text,
span.caution_text {
    margin: 0;
    padding-left: 0.8em;
    display: block;
    line-height: 1.3em;
}

/*利用手続きの流れ*/
.content ul.payment_type {
    font-size: 15px; font-size: 1.5rem;
}
.content.flow {
    counter-reset: number 0;
}
.content.flow .flow_block h4.payment-title {
    margin: 0 0 6px 0px;
    padding: 2px 4px;
    background-color: #e6f1f9;
}
.flow_block {
    margin: 0 0 30px 0;
    padding: 0 0 20px 0;
}
.flow_block:first-of-type {
    padding-top: 10px;
}
.flow_block .imagelist {
    margin: 0 0 20px 0;
    padding: 0;
    display: flex;
    list-style: none;
}
.flow_block .imagelist li {
    width: 350px;
    margin: 0 10px;
    padding: 10px;
    border: 1px solid #bbb;
    box-sizing: border-box;
}
.flow_block .imagelist img {
    max-width: 100%;
    vertical-align: top;
}
.content.flow h3 {
    margin: 0 0 20px 0;
    padding: 6px 10px 5px 10px;
    color: #fff;
    background-color:#434343;
    font-weight: normal;
}
.content.flow section {
    counter-reset: number 0;
}
.content.flow h3::before {
    counter-increment: number 1;
    content: "STEP. "counter(number) " ";
    margin: 0 5px 10px 0;
    padding: 4px 4px 4px 8px;
    font-size: 1.4rem;
    font-weight: normal;
    color: #FFF;
}
.content.flow ol {
    font-size: 1.5rem;
}
.content.flow ol li {
    margin: 0 0 10px 0;
}


/*よくあるご質問*/
.faq_list {
    margin: 0 0 10px 0;
    font-size: 1.6em;
    line-height: auto;
}
.faq_list dt {
    margin: 0;
    padding: 8px;
    font-weight: bold;
    cursor: pointer;
    border-top: #ccc dotted 1px;
}
.faq_list dt div {
    vertical-align: middle;
}
.faq_list dt:first-of-type {
    border-top: none;
}
.faq_list dt:last-of-type {
    border-bottom: #ccc dotted 1px;
}
.faq_list dd {
    margin: 0 0 0 0;
    padding: 8px;
    background-color: #fff5f5;
    display: none;
}
.faq_list dt:hover {
    color: #0f5080;
    background-color: #f5faff;
}
.faq_list dt span.question,
.faq_list dd span.answer {
    width: 2em;
    margin: 0 5px 0 0;
    font-family: arial;
    color: #fff;
    padding: 2px 5px;
    font-weight: normal;
    display: inline-block;
    text-align: center;
    vertical-align: top;
}
.faq_list dt span.question + div,
.faq_list dd span.answer + div {
    width: calc(100% - (2.5em + 20px));
    display: inline-block;
}
.faq_list dt div p,
.faq_list dd div p {
    margin: 0;
}
.faq_list dd .faq_block {
    margin: 0 0 5px 0;
}
.faq_list dt span.question {
    color: #468abe;
    font-weight: bold;
}
.faq_list dd span.answer {
    color: #be466b;
    font-weight: bold;
}
.content section:last-child .faq_list p {
    margin: 0;
}

/*=============================================
* スマートフォン 750px以下
=============================================*/

@media screen and (max-width: 750px) {

    /*共通設定*/
    body{
        line-height: 1.8rem;
    }
    input[type="submit"] {
        -webkit-appearance: none;
    }
    input[type="radio"] {
        vertical-align: middle;
        -webkit-border-radius : 20px;
    }
    input[type="checkbox"] {
        vertical-align: middle;
    }
    .smalltxt {
        font-size: 14px; font-size: 1.4rem;
    }
    .mediumtxt {
        font-size: 14px; font-size: 1.4rem;
    }
    .checkbox,
    .notice-check .checkbox {
        width: 30px;
        height: 30px;
        -moz-transform: scale( 1 , 1 );
    }
    br.pcbr {
        display: none;
    }
    .hissu {
        margin: 0 0 0 5px;
        position: absolute;
        display: inline-block;
    }
    .itemtable th {
        font-size: 15px; font-size: 1.5rem;
    }
    input,
    select {
        font-size:15px; font-size:1.5rem;
    }
    textarea {
        font-size:14px; font-size:1.4rem;
    }
    input[type="submit"].button-enter {
        font-size: 18px; font-size: 1.8rem;
    }
    .button-enter {
        font-size: 18px; font-size: 1.8rem;
    }
    .input-long {
        display: block;
    }
    .font_large {
        font-size: 16px; font-size: 1.6rem !important;
        line-height: 2rem;
    }

    /* メンテナンス */
    fieldset.maintenance {
        margin: 0 0 20px 0;
    }

    /*ヘッダー*/
    header {
        margin: 0 0 10px 0;
    }
    .header-item {
        width: 96%;
        margin: 10px 2%;
        text-align: center;
    }
    .header-item p {
        width: 100%;
        max-width: 160px;
        display: block;
        margin: 0 auto 10px auto;
    }
    header h1 {
        font-size: 15px; font-size: 1.5rem;
    }
    .header_Right,
    .header_Left {
        float: none;
    }
    .headerInner {
        display: flex;
        position: relative;
    }
    .header_info {
        display: none;
    }
    .header_Right {
        position: absolute;
        top: 10px;
        right: 0;
    }
    .header_Left {
        width: 100%;
        flex-wrap: wrap; font-size: 28px;
        font-size: 2.8rem;
    }
    .header_Left h1 {
        width: 100%;
        display: block;
        font-size: 15px;
        font-size: 1.5rem;

    }
    .header-item p img {
        vertical-align: top;
    }
    #spmenu {
        margin: 0;
        padding: 0;
        display: none;
        list-style: none;
    }
    #spmenu li ,
    .splink ,
    .contact_list li {
        width: 100%;
        margin: 0 auto;
        font-size:14px; font-size:1.4rem;
        list-style: none;
    }
    #spmenu li a ,
    .splink a ,
    .contact_list li a {
        position: relative;
        display: block;
        padding: 10px 25px 10px 10px;
        border-bottom: 1px solid #CCC;
        text-decoration: none;
        color: #333;
    }
    #spmenu li a::after ,
    .splink a::after ,
    .contact_list li a::after {
        position: absolute;
        top: 50%;
        right: 10px;
        display: block;
        content: '';
        width: 8px;
        height: 8px;
        margin-top: -4px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    #spmenu_toggle {
        margin: 0;
        float: right;
        display: block;
        position: relative;
    }
    #spmenu_toggle a{
        display: block;
        position: relative;
    }

    /*メニューアイコン*/
    .menu-trigger {
        display: inline-block;
        width: 36px;
        height: 28px;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 20px;
        right: 20px;
        z-index: 100;
    }
    .menu-trigger {
        display: inline-block;
        width: 36px;
        height: 28px;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 5px;
        right: 5px;
        z-index: 100;
    }
    .menu-trigger span {
        display: inline-block;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        transition: all .5s;
    }
     .menu-trigger.active span {
        background-color: #333333;
    }
     .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
     .menu-trigger.active span:nth-of-type(1) {
        transform: translateY(12px) rotate(-45deg);
    }
     .menu-trigger span:nth-of-type(2) {
        top: 12px;
    }
     .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }
     .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
     .menu-trigger.active span:nth-of-type(3) {
        transform: translateY(-12px) rotate(45deg);
    }

    /*フッター*/
    footer {
        margin: 30px 0 0 0;
    }
    .footer_link {
        display: none;
    }
    .footer_link li {
        display: block;
    }
    .footer_copyright_logo {
        width: 100%;
        display: block;
    }
    .footer_copyright_logo img {
        margin: 0 0 5px 0;
    }
    .footer_copyright_text {
        font-size:11px; font-size:1.1rem;
    }
    .footer_copyright_company {
        font-size:10px; font-size:1rem;
    }
    .disp_pc {
        display: none;
    }

    /*画面ステップ*/
    .steplist {
        width: 96%;
        margin: 0 2% 20px 2%;
    }
    .steplist li {
        font-size: 16px; font-size: 1.6rem;
    }
    .steplist-pc {
        display: none;
    }

    /*エラー表示*/
    .content p.form-error_title {
        font-size: 16px; font-size: 1.6rem;
    }

    /*見出し*/
    .content h2 {
        padding: 0 0 3px 5px;
        line-height: 2.2rem;
    }
    .content h3 {
        margin: 0 0 3px 0;
        padding: 5px 0;
        font-size: 16px; font-size: 1.6em;
        line-height: 2.2rem;
    }
    .content h3.applicant-title {
        font-size: 16px; font-size: 1.6rem;
    }
    .content h4 {
        margin: 0 0 10px 0;
        font-size: 16px; font-size: 1.6rem;
    }
    .content h4.certificate_title {
        margin: 20px 0 10px 0;
        padding: 4px 7px 4px 7px;
        font-size: 16px; font-size: 1.6rem;
        border-left: 3px solid #073190;
        border-bottom: 1px dotted #ccc;
    }

    /*テーブル設定*/
    .itemtable td {
        font-size: 15px; font-size: 1.5rem;
    }

    /*利用規約*/
    /*.input_caution .asterisk {
        padding-left: 0;
    }*/
    .notice-check fieldset {
        padding: 10px;
    }
    .notice-check_wrapper {
        padding: 10px 0 ;
        display: flex;
        flex-direction: column;
    }
    .notice-check-text {
        margin: 0 0 10px 0;
        width: 100%;
    }
    .notice-check-box {
        margin: 0 0 5px 0;
        width: 100%;
    }
    .notice-check-text P {
        padding-left: 1em;
        text-indent: -1em;
    }
    .notice-check fieldset .notice-check-box p {
    margin: 0;
    text-align: center;
    }
    .content .input_caution {
    padding: 10px;
    }

    /*返金口座情報*/
    .content h3 .smalltxt {
        font-weight: normal;
        line-height: 1.3em;
        display: block;
    }
    .certificate_gradselect {
        width: 100%;
        margin: 5px 0 0 0;
    }
    .input-payment .input-refund-name {
        width: 100%;
        margin: 0 0 10px 0;
    }
    .input-account-name_wrapper,
    .input-account_wrapper {
        overflow: hidden;
        width: 100%;
    }
    .input-applicant-item {
        width: 100%;
        display: block;
        padding: 5px 0;
    }

    /*金融機関コード、支店コード選択（theme: "paidin"）*/
    .select2.select2-container.select2-container--paidin {
        width: 100%!important;
    }
    .select2-container--paidin .select2-search.select2-search--dropdown input {
        font-size: 12px;
        font-size: 1.2rem;
    }

    /*利用手続きの流れ*/
    .flow_block .imagelist {
        flex-wrap: wrap;
        justify-content: center;
    }
    .flow_block .imagelist li {
        width: 80%;
        margin: 0 5px 20px 5px;
        padding: 5px;
        text-align: center;
    }
    .flow_block .imagelist li:last-child {
        margin-bottom: 0;
    }

    /*よくあるご質問*/
    .faq_list {
        line-height: 2.2rem;
    }
}

/*～Iphone5のみ改行*/
@media screen and (max-width: 320px) {
    br.spbr_ip6 {
        display: none;
    }
}

/*=============================================
* PC 751px以上
=============================================*/

@media screen and (min-width: 751px) {

    /*共通設定*/
    body{
        line-height: 2.1rem;
    }
    button:hover {
        cursor: pointer;
    }
    a:hover {
        text-decoration: underline;
    }
    .smalltxt {
        font-size: 13px; font-size: 1.3rem;
        font-weight: normal;
    }
    .mediumtxt {
        font-size: 14px; font-size: 1.4rem;
    }
    br.spbr,
    br.spbr_ip6 {
        display: none;
    }
    fieldset{
        margin: 10px 0 20px 0;
        padding: 20px 10px 10px 10px;
    }

    /*ヘッダー*/
    header {
        margin: 0 0 20px 0;
    }
    .header-item {
        width: 960px;
        margin: 15px auto 0 auto;
        text-align: left;
        overflow: hidden;
    }
    .header-item p {
        float: left;
    }
    .header-item h1 {
        float: left;
        font-size: 20px; font-size: 2rem;
    }
    .header_info {
        margin: 15px 0 0 0;
        padding: 0;
        border: 1px solid #CCC;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        overflow: hidden;
    }
    .header_info li {
        margin: 0;
        float: left;
    }
    .header_info li a{
        min-width: 10rem;
        text-align: center;
        text-decoration: none;
        padding: 8px;
        color: #333;
        background-image: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(232,232,232,1) 100%);
        background-image:    -moz-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(232,232,232,1) 100%);
        background-image:     -ms-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(232,232,232,1) 100%);
        background-image:      -o-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(232,232,232,1) 100%);
        background-image:         linear-gradient(top, rgba(255,255,255,1) 0%,rgba(232,232,232,1) 100%);
        border-left: 1px solid #CCC;
        display: block;
        text-shadow: 1px 1px 1px #CCC;
    }
    .header_info li a:hover {
        text-decoration: underline;
        background-color: #EEE;
        background-image: none;
        color: #03C;
    }
    .header_info li:first-child a{
        border-left: none;
    }
    .spmenu_wrapper {
        display: none;
    }

    /*フッター*/
    .footer_link li {
        padding-right: 1em;
        display: inline;
    }
    .footer_copyright_text {
        margin: 0 0 0 15px;
    }
    .footer_copyright_text {
        font-size:12px; font-size:1.2rem;
    }
    .footer_copyright_company {
        font-size:11px; font-size:1.1rem;
    }

    /*画面ステップ*/
    .steplist {
        width: 959px;
        margin: 0 auto;
    }
    .steplist li {
        font-size: 16px; font-size: 1.6rem;
    }
    .steplist-pc {
        font-size: 15px; font-size: 1.5rem;
        line-height: 1.2em;
    }
    .steplist-pc:before {
        content: ".";
    }

    /*エラー表示*/
    .form-error {
        padding: 10px;
    }
    .content p.form-error_title {
        font-size: 18px; font-size: 1.8rem;
    }

    /*コンテンツ*/
    .content {
        width: 960px;
        margin: 30px auto 100px auto;
    }
    .content ul,
    .content ol {
        margin: 0 0 5px 20px;
        font-size: 15px; font-size: 1.5rem;
    }
    .content ul li,
    .content ol li {
        margin: 0 10px 0 0;
    }

    /*見出し*/
    header h1{
        padding: 0 0 0 30px;
    }
    .content h2 {
        margin: 0 0 15px 0;
        padding: 8px 0 6px 8px;
        font-size: 24px; font-size: 2.4rem;
        border-bottom: 2px dotted #CCC;
        line-height: 3rem;
    }
    .content h3 {
        margin: 0 0 5px 0;
        font-size: 18px; font-size: 1.8em;
        line-height: 2.2rem;
    }
    .content h4 {
        font-size: 16px; font-size: 1.6rem;
    }
    section + h3 {
        margin: 0 0 10px 0;
    }

    /*テーブル設定*/
    .itemtable {
        margin: 0 0 10px 0;
    }
    .itemtable th,
    .itemtable td {
        padding: 6px 12px;
    }
    .itemtable th {
        font-size: 16px; font-size: 1.6rem;
    }
    .content h3 .smalltxt {
        font-size: 15px; font-size: 1.5rem;
        font-weight: normal;
        line-height: 1.8em;
        display: block;
    }
    .itemtable td {
        font-size: 16px; font-size: 1.6rem;
    }
    /*入力フォーム 共通設定*/
    .input-full {
        width: 100%;
    }
    .input-long {
        width: 70%;
    }
    .input-short {
        width: 7rem;
    }
    input,
    select {
        font-size:18px; font-size:1.8rem;
    }
    .input-form th {
        width: 350px;
    }
    .input-form td {
        width: auto;
    }
    .input-form th,
    .input-form td {
        display: table-cell;
    }
    input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="submit"] {
        font-size:16px; font-size:1.6rem;
    }
    input[type="submit"] {
        font-size:20px; font-size:2rem;
    }
    .checkbox {
        vertical-align: text-top;
    }
    .button-enter,
    .button-form {
        width: 300px;
    }
    .button-enter_cvs {
        width: 460px;
    }
    .button-enter {
        font-size: 20px;font-size: 2rem;
    }
    .hissu {
        display: inline-block;
        float: right;
    }
    .button-back_block {
        text-align: left;
    }

    /*マウスオーバー設定*/
    label:hover,
    .checkbox:hover,
    input[type="radio"]:hover,
    .button-enter:hover,
    a.button-back:hover {
        cursor: pointer;
    }
    .button-enter:disabled {
        cursor: auto;
    }
    .button-enter:hover {
        background: #770000;
    }
    .button-back:hover {
        text-decoration: none;
        background: #EEE;
    }

    /*利用規約*/
    .input-form {
        margin: 0 0 30px 0;
    }
    .input-mail_address {
        width: 83.7%;
    }
    .input-mail_address_check_local,
    .input-mail_address_check_domain {
        width: 40%;
    }
    .user_policy label {
        margin: 0;
        display: inline-block;
    }
    
    .notice-check-box {
        padding: 10px 0 0 0;
    }
    .notice-check-box:last-child {
        padding:0;
    }

    /*返金口座情報*/
    .family_name,
    .first_name {
        float: left;
    }
    .family_name,
    .first_name {
        width: 34.5%;
    }
    .first_name {
        margin: 0 0 0 8px;
    }
    .input-payment th,
    .input-payment td {
        display: table-cell;
    }
    .input-payment th {
        width: 270px;
    }

    .input-payment td {
        width: auto;
    }
    .family_name, .first_name {
        width: 34.5%;
        float: left;
    }
    .first_name {
        margin: 0 0 0 8px;
    }

    /*横スクロール*/
    .tablescroll {
      display: contents;
    }



}
