@charset "utf-8";
/*=================================
    contents
    - common
    - heading
    - column
    - text
    - link
    - line
    - list
    - table
    - tabs
    - box
    - unique
    - icon
    - form
    - @media only screen and (max-width: 767px)
    - clearfix
================================ */


/* common
-------------------------------- */
* {
     -webkit-appearance: none;
}
p {
    margin-top: 10px;
}
.pcElement {
    display: block;
}
.spElement {
    display: none;
}
.contents {
    margin: 0 0 25px;
}
.contents + section > .heading02{
    margin-top:40px;
}
/* heading
-------------------------------- */
.heading01 {
    width: 100%;
    min-height: 60px;
    padding: 15px 0;
    background: var(--sub-color);
    border-bottom: solid 2px var(--main-color);
    text-align: center;
}
.heading01 span {    
    font-weight: bold;
    font-size: 24px;
    font-size: 2.4rem;
    color: var(--main-color);
    line-height: 1.2;
}
#inline .heading01 {
    width: 100%;
    padding: 20px 0 0;
    background: none;
    border-bottom: none;
    text-align: left;
}
#inline .heading01 span {    
    font-weight: bold;
    font-size: 14px;
    font-size: 1.4rem;
    color: #131313;
    line-height: 1.2;
}
#inline .heading01 + .inlineBox {
    margin-top: 10px;
}
#inline .paddingSide {
    padding-left: 30px;
    padding-right: 30px;
}
.heading02 {
    padding-bottom: 30px;
}
.heading02.pdB {
    padding-bottom: 20px;
}
.heading02.pb00 {
    padding-bottom: 0;
}
form + section {
    margin-top:20px;
}
.heading02 span {
    display: block;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
    color: #ffffff;
    padding: 15px 20px;
    background: #424242;
    border-bottom: 4px solid #d9d9d9;
}
.heading03 {
    padding: 60px 0 10px;
}
.heading03 + .table01,
.heading03 + .table02,
.heading03 + .table03 {
    margin-top: 0;
}
.heading03 span {    
    font-weight: bold;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    color: #131313;
    line-height: 1.2;
    padding: 14px 0 13px 15px;
    border-top: solid 2px #131313;
    border-left: solid 2px #131313;
}
/* text
-------------------------------- */
.errorTxt {
    padding: 30px 0 20px;
    margin-top: 0;
}
.errorCell .errorTxt {
    padding: 0;
    margin-top: 0;
}
.inputType01 + .errorTxt,
.inputBox + .errorTxt {
    margin-top:10px;
}
.errorTxt.type02 {
    padding: 0 0 20px;
}
.errorTxt span {
    display: block;
    color: var(--caution-color);
    font-weight: bold;
    padding: 15px 20px;
    background: var(--error-bg-color);
}
.errorTxt02 {
    margin: 10px 0 20px;
    padding: 15px 20px;
    background: var(--error-bg-color);
}
.errorTxt03 {
    padding: 15px 20px;
    margin: 30px 0 20px;
    background: var(--error-bg-color);
}
.errorTxt02 p,
.errorTxt03 p {
    display: block;
    font-weight: bold;
    color: var(--caution-color);
    margin-top:0;
}
.errorTxt02 .iconLink01{
    margin-top:5px;
}
.errorTxt02 .iconList01{
    margin-top:10px;
}
.errorTxt02 .iconList01 > li{
    color: var(--caution-color);
    font-weight:bold;
    margin-bottom:5px;
}
.colorTxt01 {
    color: var(--caution-color);
}
.tableTitle01 {
    margin-top: 1.5em;
    padding: 0 10px;
    font-weight: bold;
}
.heading03 + .tableTitle01 {
    margin-top: 1em;
}
.telText {
    font-size: 14px;
    font-size: 1.4rem;
}
.captionText {
    margin: 12px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
}

/* list
-------------------------------- */
/* listRow */
.listRow {
    margin: 20px 0 0 0;
}
.listRow.count2 {
width: 65.6%;
margin: 0 auto;
}
.listRow.count4 {
width: 65.6%;
margin: 0 auto;
}
.listRow.count2.typeSmall {
    width: 55.2%;
    margin: 0 auto;
}
#modal01 .listRow.count2.typeSmall {
    width: 80.5%;
    margin: 0 auto;
}
* > .listRow:last-child { margin-bottom: -0.5px; }
* > .listRow[class*="count"]:last-child { margin-bottom: 0; }

.listRow > li {
    float: left;
    -webkit-box-sizing: border-box;
         -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
             -o-box-sizing: border-box;
                    box-sizing: border-box;
}
.listRow.count2 > li { width: 47.6%; margin-left: 4.76%; margin-top: 20px; }
.listRow.btnLink02 > li { margin-top: 0; }
.listRow.count2.typeSmall > li { width: 41.7%; margin-left: 16.6%; }
.listRow.count3 > li { width: 31.2%; margin-left: 3.12%; }
.listRow.count4 > li { width: 19%; margin-left: 7.9%; }
.listRow.count3.typeSmall > li { width: 20.8%; margin-left: 18.7%; }
.listRow[class*="count"] > li:first-child,
.listRow[class*="count"] > li.leftCol {
     margin-left: 0;
}
.listRow.btnLink01 a, .listRow .btnLink01 li button {
        display: block;
}
.listRow.btnLink01 .sizeS a, .listRow .btnLink01 .sizeS button {
        display: block;
}
.textBox + .listRow.count2 > li { margin-top: 0; }
/*iconList01*/
.iconList01 {
    margin-top: 15px;
}
.iconList01 > li {
    padding-left: 15px;
    margin-bottom: 10px;
    position: relative;
}
.iconList01 > li:before {
    position: absolute;
    content: "●";
    top: 0;
    left: 0;
    width: 8px;
    height: 8px;
    font-size: 12px;
    font-size: 1.2rem;
    color: var(--main-color);
}
.iconList01 > li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}
/*descList01*/
.descList01 {
    line-height: 1.6;
}
.descList01 dd {
    margin: 0 0 5px 15px;
}
/* flowList */
.flowList {
    margin: 0 0 20px;
    display: flex;
    width: 100%;
    overflow: hidden;
}
.flowList:not(:first-child) {
    margin-top: 20px;
}
.flowList li {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    font-size: 16px;
    font-size: 1.6rem;
    min-height: 40px;
    text-align: center;
    background: var(--sub-color-v2);
    position: relative;
    padding: 10px 20px;
}
.flowList li.current {
    font-weight: bold;
    color: #ffffff;
    background: var(--main-color);
}
.note {
    font-size: 12px;
    font-size: 1.2rem;
}
.note-v2 {
    position: relative;
    padding-left: 1.4em;
    color: var(--caution-color);
}
.note-v2 .note_mark {
    position: absolute;
    top: 0;
    left: 0;
}
.confirmColumn01 .btnLink01,
.confirmColumn01 .btnLink01 a,
.confirmColumn01 .btnLink01 button,
.confirmColumn01 .btnLink02,
.confirmColumn01 .btnLink02 a,
.confirmColumn01 .btnLink02 button {
    margin-top: 0;
}
.confirmColumn01 .btnLink01 a,
.confirmColumn01 .btnLink01 button,
.confirmColumn01 .btnLink02 a,
.confirmColumn01 .btnLink02 button {
    width: 380px;
}
.confirmColumn01 .btnLink01 + .btnLink01 {
    margin-top: 20px;
}
.nameBox:first-child:not(:last-child),
.errorTxt + .nameBox{
    margin-bottom: 10px;
}
.nameBox > .inputType05,
.erroeTxt + .nameBox > .inputType05 {
    margin-right: 10px;
}
.nameBox:first-child > .nameInput,
.errorTxt + .nameBox > .nameInput {
    margin-left: 15px;
}
.errorTxt + .nameBox.ml0 > .nameInput {
    margin-left: 0;
}
.textBox.type02 {
    padding: 0 0 22px;
}
.inputBox > p {
    margin: 10px 0;
}
.postBox {
    position: relative;
}
.postBox.floatType {
    float: left;
}
.postBox.floatType + .btnLink01 {
    float: left;
    margin-top: -3px;
    margin-left: 30px;
}
.postBox .postSelect {
    display: none;
    overflow: hidden;
    position: absolute;
    border: 2px solid var(--main-color);
    border-radius: 5px;
    z-index: 100;
    margin-top: 10px;
}
.postBox .postSelect li {
    padding: 10px 13px;
    background: #ffffff;
    cursor: pointer;
}
.postBox .postSelect li + li {
    border-top: 1px solid #cccccc;
}
.postBox .postSelect li:hover {
    background: #DFDFDF;
}
.postBox .postSelect li:first-child {
    background: var(--main-color);
    color: #ffffff;
}
.postBox .postSelect li span {
    display: inline-block;
    padding-left: 10px;
}
.postBox .postSelect li span:first-child {
    padding-left: 0;
}

/* form
-------------------------------- */
:placeholder-shown {
     color: #999999;
}
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
     color: #999999;
}
/* Firefox 18- */
:-moz-placeholder {
     color: #999999;
}
/* Firefox 19+ */
::-moz-placeholder {
     color: #999999;
}
/* IE 10+ */
:-ms-input-placeholder {
     color: #999999;
}
.table01 .errorCell {
    background-color: var(--error-bg-color);
}
.table01 .errorCell > .errorTxt span {
    background-color: var(--error-bg-color);
    margin: 0 0 10px;
    padding: 0;
}
.table01 .errorCell [class*="inputType"],
.table01 .errorCell [class*="selectType"] {
    background: #ffffff;
    border: 1px solid #e60012;
    box-shadow: none;
} 
.table01 + .iconLink01{
    margin-top:15px;
}

[class*="inputType"]:focus {
    border: 1px var(--main-color) solid;
    background: #ffffff;
    border-radius: 4px;
    outline: 0;
}
[class*="inputType"] {
    border-radius: 4px;
    background: var(--sub-color);
    border-left: solid 1px #dfdfdf;
    border-top: solid 1px #dfdfdf;
    padding: 0 11px;
    padding: 8px 11px 5px\9;
    height: 40px;
    box-shadow:3px 3px 5px -4px #e8e8e8 inset;
    -moz-box-shadow:3px 3px 5px -4px #e8e8e8 inset;
    -webkit-box-shadow:3px 3px 5px -4px #e8e8e8 inset;
}
[class*="selectType"]:focus {
    border: 1px var(--main-color) solid;
    background: #ffffff;
    border-radius: 4px;
    outline: 0;
}
[class*="selectType"] {
    border-radius: 4px;
    background: var(--sub-color);
    border-left: solid 1px #dfdfdf;
    border-top: solid 1px #dfdfdf;
    padding: 0 0 0 11px;
    height: 40px;
    box-shadow:3px 3px 5px -4px #e8e8e8 inset;
    -moz-box-shadow:3px 3px 5px -4px #e8e8e8 inset;
    -webkit-box-shadow:3px 3px 5px -4px #e8e8e8 inset;
    color: #131313;
    outline: 0;
}
.inputType01 {
    width: 580px;
}
.iconLink01 + .inputType01{
    margin-top:15px;
}
.inputType02 {
    width: 270px;
}
.inputType03 {
    width: 120px;
}
.inputType04 {
    width: 120px;
    background: var(--error-bg-color);
    box-shadow:3px 3px 5px -4px #e5d3d7 inset;
    -moz-box-shadow:3px 3px 5px -4px #e5d3d7 inset;
    -webkit-box-shadow:3px 3px 5px -4px #e5d3d7 inset;
}
.inputType05 {
    width: 220px;
}
.inputType06 {
    width: 270px;
}
.inputType07 {
        width: 120px;
        background: #dfdfdf;
        box-shadow:3px 3px 5px -4px #e5d3d7 inset;
        -moz-box-shadow:3px 3px 5px -4px #e5d3d7 inset;
        -webkit-box-shadow:3px 3px 5px -4px #e5d3d7 inset;
}
.dataOrderSelect01 > td .inputType01 {
    width: 120px;
}
.dataOrderSelect01 > td .inputType01,
.dataOrderSelect01 .errorCell > .errorTxt + .inputType01{
    margin-right: 10px;
}
.dataOrderSelect01 > td .inputType01.second {
    margin-left: 5px;
}
.dataOrderSelect01 > td .slash {
    margin: 0 10px;
}
.textareaType01 {
    width: 120px;
}
.selectType01 {
    width: 120px;
}
.selectType02 {
    width: 245px;
}
.dataOrderSelect01 > td .selectType01:first-child,
.dataOrderSelect01 .errorCell > .errorTxt + .selectType01{
    margin-right: 10px;
}
.dataOrderSelect01 > td .selectType01.second {
    margin-left: 10px;
}
.inputYear {
    margin: 0 12px;
    width: 65px;
}
.inputMonth {
    margin: 0px 12px 0 8px;
    width: 98px;
}
.inputDate {
    margin: 0px 12px 0 8px;
    width: 98px;
}
.inputList01 {
    margin-top: 10px;
}
.inputList01 li {
    float: left;
    margin: 3px 25px 3px 0;
    padding-right: 60px;
    position: relative;
}
.inputList01 li input {
    vertical-align: text-top;
}
.inputList01.twoColumnType,
.inputList01.threeColumnType {
    margin-right: 0;
}
.inputList01.twoColumnType li {
    width: 50%;
    margin-right: 0;
    padding-right: 15px;
}
.inputList01.threeColumnType li {
    width: 33%;
    margin-right: 0;
    padding-right: 15px;
}
.exampleText {
    color: #131313;
    display: inline;
    line-height: 2;
}
/*input*/
.inputCheck,
.inputCheck.type02 {
    display: block;
    position: relative;
    border-bottom: 1px solid var(--sub-color-v2);
    padding: 20px 0 20px;
}
.inputCheck.type03 {
    margin-top: 10px;
    padding: 0;
}
.inputCheck.type03 + .inputCheck.type03 {
    margin-top: 5px;
}
td > .inputCheck{
    border-bottom: none;
}
.inputCheck.type02 > div {
    position: relative;
    width: 150px;
    margin: 0 auto;
}
.inputCheck.type02 > .requiredBox {
    width: 200px;
}
.requiredBox > * {
    display: table-cell;
    position: relative;
}
.requiredBox > div:first-child {
    width: 40px;
    padding-right: 50px;
}
.requiredBox > div .required.type02 {
    width: 40px;
    left: 0;
}
.requiredBox > div > div {
    position: relative;
    width: 360px;
}
.inputCheck.type02 > .requiredBox {
        width: 360px;
}
.inputCheck input {
    opacity: 0;
     filter: alpha(opacity=0);
    -ms-filter: "alpha(opacity=0)";
     -khtml-opacity: 0;
     -moz-opacity: 0;
     outline:none;
    border:none;
}
.inputCheck label {
    min-height: 20px;
    overflow: hidden;
    display: inline-block;
    position: absolute;
    left: 0;
    cursor: pointer;
    padding-left: 30px;
}
.inputCheck label:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    /* background: url(../img/com_ic06.png?md5=cc82046682412e789e857c7302f71477) no-repeat 0 0; */
}
.inputCheck label:hover:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -30px;
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--main-color);
}
.inputCheck input:checked + label:before  {
    /* background: url(../img/com_ic07.png?md5=b7786889634db11b20008fcd7454c00b) no-repeat 0 0; */
}
.inputCheck input:focus + label:before,
.inputCheck label:hover:before {
    /* background: url(../img/com_ic06on.png?md5=c6e94e0f1380ef008d7648ce82fc228c) no-repeat 0 0; */
}
.inputCheck input:checked:focus + label:before,
.inputCheck input:checked + label:hover:before {
    /* background: url(../img/com_ic07on.png?md5=9f8c80c721765705092e1a6b0e936cdd) no-repeat 0 0; */
}
.inputCheck.type04 {
    display: block;
    position: relative;
    padding: 20px 0 20px;
    border: none;
}
.inputCheck02 li > input {
    opacity: 0;
        filter: alpha(opacity=0);
    -ms-filter: "alpha(opacity=0)";
     -khtml-opacity: 0;
     -moz-opacity: 0;
     outline:none;
    border:none;
}
.inputCheck02 li > label {
    overflow: hidden;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    cursor: pointer;
    padding-left: 30px;
    border-radius: 2px;
    color: #3e4956;
}
.inputCheck02 li > label:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url(../img/guest_radio.png?md5=9591c9580d6ed0d492fe012c69293191) no-repeat 0 0;
}
.inputCheck02 li > label:hover:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -30px;
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--main-color);
}
.inputCheck02 li > input:focus + label:before,
.inputCheck02 li > label:hover:before {
    background: url(../img/guest_radio_on.png?md5=2e386402ac1afc4461084610bbf46b1d) no-repeat 0 0;
}
.inputCheck02 li label.checked:before,
.inputCheck02 li input:checked + label:before {
    background: url(../img/guest_radio_check.png?md5=73405bc9d39698fc919f643216dd1178) no-repeat 0 0;
}
.inputCheck02 li > input:focus + label.checked:before,
.inputCheck02 li > label.checked:hover:before,
.inputCheck02 li input:checked:focus + label:before {
    background: url(../img/guest_radio_check_on.png?md5=9c0b64b7fd2c8c9bb5f2ed6d2b4982c9) no-repeat 0 0;
}
.inputCheck.type02 + .btnLink01 {
    margin-top: 20px;
} 
/* link
-------------------------------- */
.btnLink01 li,
.btnLink02 li {
    padding: 0 0 30px 0;
    display:inline-block;
}
.btnLink01 li.sizeS {
    padding: 0 0 20px 0;
    display:inline-block;
}
.btnLink01.type02 li,
.btnLink02.type02 li,
.btnLink01.type02 li.sizeS {
    display: block;
}
.iconLink01 a {
    background: url(../img/guest_arrow.png?md5=910a7638b9a5adfb65284a5126badb32) no-repeat 100% 35%;
    display: inline-block;
    padding: 0 22px 0 0;
}
.iconLink01 a.is-blank {
    background: url(../img/guest_blank.png?md5=1b907b1c5f04183b104420ba31165a03) no-repeat right 50% / 13px auto;
}
.btnLink01 a, .btnLink01 li > button, .btnLink01 li.next > p {
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    text-align: center;
    border-radius: 5px;
    border-top: none;
    border-left: none;
    border-right: none;
    text-decoration: none;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.3;
    padding: 14px 24px 14px;
    min-width: 300px;
}
.btnLink01 .sizeS a, .btnLink01 .sizeS > button {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.2;
    padding: 12px 20px 12px;
    min-width: 200px;
    width: 200px;
}
.listRow.count2.typeSmall > .sizeS > button,
.listRow.count2.typeSmall > .sizeS > button { width: 220px; }
.btnLink01.sizeAuto a, .btnLink01.sizeAuto li > button {
    width: auto;
    max-width: none;
}
.btnLink01 .colorType01 a, .btnLink01 li.colorType01 button {
    background: var(--main-color);
    color: #ffffff;
    border-bottom: 4px solid #b0c4de;
}
.btnLink01 .colorType02 a, .btnLink01 li.colorType02 button {
    background: #fcf0f5;
    color: #131313;
    border: 1px solid #a67389;
    border-bottom: 4px solid #a67389;
}

.btnLink01 .colorType03 a, .btnLink01 li.colorType03 button  {
    background: #e3e3e3;
    color: #131313;
    border-bottom: 4px solid #828282;
}

.btnLink01 .colorType04 a, .btnLink01 li.colorType04 button  {
        background: #efefef;
        color: #777777;
        border-bottom: 4px solid #d0d0d0;
}

.btnLink01 li.colorType01 button[disabled],
.btnLink01 li.colorType01 button[disabled]:hover {
    margin-top: 0 !important;
    background: #e3e3e3;
    border-bottom: 2px solid #828282;
    color: #aaaaaa;
    cursor: default;
}
.btnLink01.prev button, .btnLink01 li.prev button  {
    /* background: #424242 url(../img/com_ic15.png?md5=65950e9c0843c52abcd061cb519b2e7c) no-repeat 6% 50%; */
    color: #ffffff;
    border-bottom: 4px solid #b3b3b3;
}
.btnLink01 .next p, .btnLink01 li.next p {
    background: #efefef;
    color: #777777;
    border-bottom: 4px solid #d0d0d0;
    cursor: default;
    margin-top: 0;
    padding: 15px 24px;
}
.btnLink01.sizeS.prev button, .btnLink01.sizeS li.prev button {
    /* background: #424242 url(../img/com_ic16.png?md5=f7d43a44c4c214d3efafafbd27eb260d) no-repeat 5% 50%; */
}
.btnLink02 a, .btnLink02 li > button {
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    text-align: center;
    border-radius: 5px;
    border-top: none;
    border-left: none;
    border-right: none;
    text-decoration: none;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    padding: 12px 14px 12px;
    width: 300px;
    max-width: 300px;
    margin-top: 0;
}
.btnLink02.listRow.count4 {
    padding-bottom: 30px;
}
.btnLink02.listRow.count4  li {
    height: 59px;
    width: 120px;
    border-radius: 5px;
}
.btnLink02.listRow.count4  li > button {
    width: 120px;
    height: 55px;
    max-width: 120px;
    padding: 0;
    border-radius: 5px;
    border: none;
}
.btnLink01 li.colorType01 > button:hover,
.btnLink01 li.colorType03 > button:hover,
.btnLink01 li.prev > button:hover,
.btnLink02 li.colorType01 > button:hover,
.btnLink02 li.colorType02 > button:hover, 
.btnLink02 li.colorType03 > button:hover,
.btnLink02 li.colorType04 > button:hover,
.btnLink01 li.colorType01 > a:hover,
.btnLink01 li.colorType03 > a:hover,
.btnLink01 li.prev > a:hover,
.btnLink02 li.colorType01 > a:hover,
.btnLink02 li.colorType02 > a:hover, 
.btnLink02 li.colorType03 > a:hover,
.btnLink02 li.colorType04 > a:hover {
    border-width: 2px;
}
.btnLink01 .colorType02 a:hover, .btnLink01 li.colorType02 > button:hover {
    border-bottom-width: 2px;
}
.btnLink01 li button:hover,
.btnLink01 li.sizeS button:hover,
.btnLink02 li button:hover,
.btnLink01 li a:hover,
.btnLink01 li.sizeS a:hover,
.btnLink02 li a:hover {
    margin-top: 2px !important;
}
.btnLink01 li button:hover,
.btnLink01 li.sizeS button:hover,
.btnLink02 li button:hover,
.btnLink01 li a:hover,
.btnLink01 li.sizeS a:hover,
.btnLink02 li a:hover {
    margin-top: 2px !important;
}
.btnLink01 li a:hover {
    margin-top: 0 !important;
}
.btnLink02.colorType01 button, .btnLink02 li.colorType01 button {
    /* background: #47a1e6 url(../img/com_ic11.png) no-repeat 3px 51%; */
    color: #ffffff;
    border-bottom: 4px solid #17629b;
}
.btnLink02.colorType02 button, .btnLink02 li.colorType02 button {
    /* background: #3b5999 url(../img/com_ic13.png?md5=e77a9783b7c9b152b328cdaa15067f4e) no-repeat 3px 51%; */
    color: #ffffff;
    border-bottom: 4px solid #193164;
}
.btnLink02.colorType03 button, .btnLink02 li.colorType03 button {
    /* background: #c53929 url(../img/com_ic12.png?md5=c49a36be566787436126116eafe63fad) no-repeat 3px 51%; */
    color: #ffffff;
    border-bottom: 4px solid #8b1f13;
}
.btnLink02.colorType04 button, .btnLink02 li.colorType04 button {
    /* background: #ff0033 url(../img/com_ic14.png?md5=d141e686fdf83c0c66a74f4f6fc6eef5) no-repeat 3px 51%; */
    color: #ffffff;
    border-bottom: 4px solid #99001f;
}
.tw-text{
    /* background:url(../img/com_ic23.png?md5=0c20c6aaa2760f8148a6716a8a1c4c21) no-repeat 0 50%; */
    padding:8px 20px 8px 50px !important;
    font-weight:bold;
}
.fb-text{
    /* background:url(../img/com_ic24.png?md5=7ff41b324828e555e9c353fddbe6d92a) no-repeat 0 50%; */
    padding:8px 20px 8px 50px !important;
    font-weight:bold;
}
.yahoo-text{
    /* background:url(../img/com_ic26.png?md5=0c081046bc4b35457bac4dfb64e09f75) no-repeat 0 50%; */
    padding:8px 20px 8px 50px !important;
    font-weight:bold;
}
.apple-text{
    /* background:url(../img/com_ic28.png?md5=51be68f1e0aa09aceef47a51a60cde37) no-repeat 0 50%; */
    padding:8px 20px 8px 50px !important;
    font-weight:bold;
}
.btnLink02.listRow.count4.colorType01 button, .btnLink02.listRow.count4 li.colorType01 button {
    /* background: #47a1e6 url(../img/com_ic19.png?md5=ff0c1eb55b00f5c297171b28e7d1d024) no-repeat 50% 50%; */
}    
.btnLink02.listRow.count4 li.colorType01 { border-bottom: 4px solid #17629b; background: #17629b;}
.btnLink02.listRow.count4.colorType02 button, .btnLink02.listRow.count4 li.colorType02 button {
    /* background: #3b5999 url(../img/com_ic20.png?md5=9ba95ff16c90398716e1e9e11ff2e347) no-repeat 50% 50%; */
}
.btnLink02.listRow.count4 li.colorType02 { border-bottom: 4px solid #193164; background: #193164;}
.btnLink02.listRow.count4.colorType03 button, .btnLink02.listRow.count4 li.colorType03 button {
    /* background: #c53929 url(../img/com_ic21.png?md5=a681d80f77cf5f35587ae9f9bf5ea327) no-repeat 50% 50%; */
}
.btnLink02.listRow.count4 li.colorType03 { border-bottom: 4px solid #8b1f13; background: #c53929;}
.btnLink02.listRow.count4.colorType04 button, .btnLink02.listRow.count4 li.colorType04 button {
    /* background: #ffffff url(../img/com_ic22.png?md5=9c62afeb04e9d490709b504d17fb16b6) no-repeat 50% 50%; */
    border-radius: 5px;
    border: 2px solid #ff0033;
}
.btnLink02.listRow.count4 li.colorType04 { border-bottom: 4px solid #99001f; background: #99001f;}
.btnLink02.listRow.count4.colorType05 button, .btnLink02.listRow.count4 li.colorType05 button {
    /* background: #000000 url(../img/com_ic27.png?md5=9d682e362663a4c855bf3833168973fd) no-repeat 50% 50%; */
    border-radius: 5px;
    border: 2px solid #000000;
}
.btnLink02.listRow.count4 li.colorType05 { border-bottom: 4px solid #000000; background: #000000;}
.btnLink02.listRow.count4 li:hover {
    background: none;
    padding-top: 1px;
}
.btnBox {
    margin: 10px 0 0;
}
.btnBox > li {
    display: table-cell;
    vertical-align: middle;
    padding-right: 15px;
}
.btnBox > li .btnLink01 {
    margin: 0;
}
.btnBox > li .btnLink01 button {
    padding: 12px 20px;
}
.btnBox > li:first-child {
    position: relative;
    padding-right: 42px;
}
.btnBox > li:first-child:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 5%;
    margin-top: -15px;
    width: 10px;
    height: 30px;
    /* background: url(../img/com_ic04.png?md5=f31c71b8b5e0cc7cde42befb01d719ae) no-repeat; */
}
.textBox > p:first-child {
    padding-top: 0;
    margin-top: 0;
}
.textBox + .btnLink01,
.table01 + .btnLink01,
section + .btnLink01 {
    padding-top: 25px;
    margin-top: 0 !important;
}
.btnNoWrap {
        white-space: nowrap;
}

/* telButton */
.telButtonWrap {
    display: flex;
    justify-content: center;
    margin: 20px 0 0;
}
.telButton .telButtonLink {
    position: relative;
    background: var(--main-color);
    color: #fff;
    border-bottom: 4px solid #b0c4de;
    font-size: 20px;
    font-size: 2.0rem;
    line-height: 1.4;
    padding: 12px 36px 6px 88px;
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    text-align: center;
    border-radius: 5px;
    border-top: none;
    border-left: none;
    border-right: none;
    text-decoration: none;
    pointer-events: auto;
}
.telButton .telButtonLink::after {
    position: absolute;
    top: 50%;
    left: 37px;
    transform: translateY(-50%);
    background: no-repeat url(../img/guest_tel.svg?md5=f1de809ac138da98d317eaf110127a21);
    background-size: cover;
    width: 30px;
    height: 30px;
    content: "";
}
.telButton .telButtonLink:hover {
    margin-top: 2px;
    border-width: 2px;
}
.telButton .telButtonLabel {
    display: block;
}
.telButton .telButtonSmall {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
}

/* table
-------------------------------- */
.table01 {
    width: 100%;
    margin-top: 10px;
}
.table02 {
    width: 100%;
    margin: 10px 0 20px;
}
.table03 {
    width: 100%;
    margin: 10px 0;
}
.figureColumn01 .table01,
.figureColumn01 .table02,
.figureColumn01 .table03 {
    margin-top: 10px;
}
.tableHead01 {
    margin-top: 30px;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
}
.tableHead01 + .table01,
.tableHead01 + .tableWrap .table02 {
    margin-top: 10px;
}
.table01 th,
.table01 td,
.table02 th,
.table02 td,
.table03 th,
.table03 td {
    padding: 15px;
    font-weight: normal;
    background-color: #ffffff;
    vertical-align: middle;
    text-align: left;
    border-bottom: solid 1px var(--sub-color-v2);
}
.table03 th,
.table03 td {
    padding: 17px 15px;
}
.table01 th,
.table02 th,
.table03 th {
    width:260px;
}
.table01 th > .tableInner,
.table02 th > .tableInner,
.table03 th > .tableInner {
    position: relative;
    padding: 0 50px 0 0;
}
.table01 th > .tableInner2 {
        position: relative;
        padding: 0 85px 0 0;
}
.required {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -12px !important;
    padding: 3px 7px;
    background-color: var(--caution-color);
    font-size: 1.2rem;
    font-size: 12px;
    color: #ffffff;
}
.figureColumn01 .table01 th,
.figureColumn01 .table01 td,
.figureColumn01 .table02 th,
.figureColumn01 .table02 td {
    padding: 10px;
    font-size: 13px;
    font-size: 1.3rem;
}
.table01 th.type01,
.table01 td.type01,
.table02 th.type01,
.table02 td.type01,
.table03 th.type01,
.table03 td.type01 {
    background: var(--sub-color);
    vertical-align: middle;
    border-bottom: solid 1px var(--sub-color-v2);
}
.table01 .type02,
.table02 .type02,
.table03 .type02 {
    border-top: solid 1px var(--sub-color-v2);
}
.table01 .type01.Border,
.table01 .type02.Border,
.table02 .type01.Border,
.table02 .type02.Border,
.table03 .type01.Border,
.table03 .type02.Border {
    border-bottom: solid 1px var(--sub-color-v2);
}
.table01 th > *:first-child,
.table01 td > *:first-child,
.table02 th > *:first-child,
.table02 td > *:first-child,
.table03 th > *:first-child,
.table03 td > *:first-child {
    margin-top: 0;
    padding-top: 0;
}
.table01 td > .btnLink01,
.table02 td > .btnLink01,
.table03 td > .btnLink01 {
    margin: 20px 0 0;
}
.table01 td .btnLink01 li,
.table02 td .btnLink01 li,
.table03 td .btnLink01 li {
    margin: 0;
    padding: 0;
}
.table01 + .noteText01,
.table01 + .noteList01,
.table02 + .noteText01,
.table02 + .noteList01,
.table03 + .noteText01,
.table03 + .noteList01 {
    margin-top: 10px;
}
.table01 .required,
.table01 .optional {
    display: inline-block;
    margin-top: 5px;
}
.table01 .noteList01,
.table02 .noteList01,
.table03 .noteList01 {
    margin-top: 5px;
}
.table01 .btnLink01 a,
.table01 .btnLink02 a,
.table02 .btnLink01 a,
.table02 .btnLink02 a,
.table03 .btnLink01 a,
.table03 .btnLink02 a {
    margin-top: 0;
}
.table02 .normalList01,
.table02 .normalList02,
.table02 .numberList01,
.table02 .numberList02,
.table02 .numberList03 {
    margin-top: 5px;
}
.table01 th .noteText01,
.table01 td .noteText01,
.table02 th .noteText01,
.table02 td .noteText01,
.table03 th .noteText01,
.table03 td .noteText01,
.table01 th .defineList01,
.table01 td .defineList01,
.table02 th .defineList01,
.table02 td .defineList01,
.table03 th .defineList01,
.table03 td .defineList01 {
    margin-top: 5px;
}
.table01 th > .defineList01:first-child,
.table01 td > .defineList01:first-child,
.table02 th > .defineList01:first-child,
.table02 td > .defineList01:first-child,
.table03 th > .defineList01:first-child,
.table03 td > .defineList01:first-child {
    margin-top: 0;
}
.table01 .btn{
    text-align: left;
    float: none;
}
.table01 ul.btn li{
    margin-right: 20px;
}
.table01 .btn.count2 li{
    display: block;
    float: left;
}
/* accordion
-------------------------------- */
.accordionBox {
    margin-top: 30px;
}
.switch.heading02 {
    padding-bottom: 0;
}
.switch.heading02 span {
    /* background: #424242 url(../img/com_ic02.png?md5=7048b340889092dff77548378651be1a) no-repeat 99% 50%; */
}
.switch.heading02:hover {
    cursor: pointer;
    opacity: 0.9;
        filter: alpha(opacity=0.9);
    -ms-filter: "alpha(opacity=0.9)";
     -khtml-opacity: 0.9;
     -moz-opacity: 0.9;
}
.switch.heading02.open span {
    /* background: #424242 url(../img/com_ic03.png?md5=802d29fabfd7bf09094fc4ffb7daad12) no-repeat 99% 50%; */
}
.accordionBox .detailsBox{
    margin: 0 0 25px;
}

/* box
-------------------------------- */
[class*="boxLayout"] > *:first-child,
[class*="boxLayout"] > [class*="frame"] > *:first-child,
[class*="boxLayout"] [class*="boxContent"] > *:first-child {
    clear: none;
    margin-top: 0 !important;
}
/* boxLayout01 */
.boxLayout01 {
    clear: both;
    margin: 30px 0 0 0;
}
.boxLayout01 .frame01 { border: 2px solid #cccccc; background: #ffffff; }

.boxLayout01 .boxHead01 {
    padding: 30px 30px 0;
}
.boxLayout01 .boxHead01 > span {
    display: block;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #999999;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
}
.boxLayout01 .boxHead01.caution > span {
    padding: 0 0 10px 35px;
    color: var(--caution-color);
    /* background: url(../img/com_ic17.png?md5=b2e3d201026d2ce49db5a68522fe53bc) no-repeat 0 10%; */
}
.boxLayout01 .boxHead01 > span:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    display: inline-block;
    width: 50%;
    height: 2px;
    background: #131313;
}
.boxLayout01 .frame02 { border: 2px solid #cccccc; background: var(--error-bg-color); }

.boxLayout01 .boxContent01 { padding: 29px; }
.boxLayout01 .boxHead01 + .boxContent01,
.boxLayout01 .boxHead02 + .boxContent01 { padding-top: 15px; }

.boxLayout01 + p{
    margin-top:30px;
}
/* unique
-------------------------------- */
.inlineBox {
    margin: 20px 0 0;
    width: 100%;
    height: 230px;
    overflow-y: scroll;
    border-top: 1px solid #9a9a9a;
    border-left: 1px solid #9a9a9a;
    border-right: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
}
.inlineBox .inlineBox_inner {
    padding: 20px 0 20px 20px;
}
.inlineBox .inlineBox_inner .inlineBox_container > *:first-child {
    padding-top: 0;
}
.inlineBox .inlineBox_inner .inlineBox_container > p {
    margin-top: 0;
}
#inline {
    padding: 20px 0 20px 20px;
}
#inline #container > *:first-child {
    padding-top: 0;
}
#inline #container > p {
    margin-top: 0;
}
/*modal01*/
#modal01, #modal02 {
width:658px;
}
#modal01 .btnLink01,
#modal02 .btnLink01 {
    margin-top: 20px
}
#modal01 > *:first-child, #modal02 > *:first-child,
#modal01 > dl > *:first-child, #modal02 > dl > *:first-child,
#modal01 > [class*="modalContent"] > *:first-child, #modal02 > [class*="modalContent"] > *:first-child {
    clear: none;
    padding-top: 0 !important;
    margin-top: 0 !important;
}
#modal01 > dl,
#modal02 > dl {
    margin-bottom: 20px;
}
#modal01 > dl .modalHead01,
#modal02 > dl .modalHead01 {
    padding: 30px 0 0;
}
#modal01 > dl .modalHead01 > span,
#modal02 > dl .modalHead01 > span {
    display: block;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #999999;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
}
#modal01 > dl .modalHead01 > span:before,
#modal02 > dl .modalHead01 > span:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    display: inline-block;
    width: 50%;
    height: 2px;
    background: #131313;
}
#modal01 > dl .modalContent01,
#modal02 > dl .modalContent01 { padding-top: 29px; }
#modal01 > dl .modalHead01 + .modalContent01,
#modal02 > dl .modalHead01 + .modalContent01 { padding-top: 15px; }
.modalClose .btn_close {
    /* background: url(../img/com_ic18.png?md5=5d4ed63477b0defdcea30f4b3a16fa27) no-repeat scroll 1px 0; */
    background-size: 34px 34px;
    border: 0 none;
    margin: 0;
    overflow: visible;
    padding: 0;
    position: absolute;
    text-indent: -9999px;
    top: 0;
    right: 0;
    width: 34px;
    height: 34px;
}
.modalClose .btn_close:hover {
    opacity: 0.8;
}
body.modalOver #cboxLoadedContent {
    overflow: inherit!important;
}
body.modalOver #modal01 > .modalOverType:first-child  {
    margin: -40px -40px -30px!important;
}
body.modalOver .modalOverTypeHead {
    width: 100%;
    min-height: 60px;
    padding: 15px 0;
    background: var(--sub-color);
    border-bottom: solid 2px var(--main-color);
    text-align: center;
}
body.modalOver .modalOverTypeHead span {
    font-weight: bold;
    font-size: 24px;
    font-size: 2.4rem;
    color: var(--main-color);
    line-height: 1.2;
}
body.modalOver .modalOverTypebody {
    padding: 29px 35px 29px 40px;
}
body.modalOver .modalOverTypebody > *:first-child {
    margin-top: 0!important;
}
body.modalOver .modalOverTypebody > *:last-child > li:last-child {
    padding-bottom: 0;
}

.countdown {
    display: block;
    width: 100%;
    margin: 15px auto 0;
    text-align: center;
}
.countdown .countdownInner {
    display: inline-block;
}
.countdown .countdownSeconds {
    margin: 0 10px;
    font-size: 30px;
    font-size: 3rem;
    font-weight: bold;
}

/* registerNumber */
.registerNumber {
    display: flex;
    justify-content: center;
    margin: 20px 0 0;
}
.registerNumberInner {
    display: flex;
    max-width: 100%;
    border: 1px solid var(--sub-color-v2);
}
.registerNumberHead {
    flex-shrink: 0;
    padding: 22px 36px;
    border-right: 1px solid var(--sub-color-v2);
    font-size: 18px;
    font-size: 1.8rem;
    background-color: var(--sub-color);
    line-height: 1.4;
}
.registerNumberBody {
    padding: 22px 36px;
    background-color: #fff;
    min-width: 268px;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    line-height: 1.4;
    word-wrap: break-word;
}


/* display: none;
-------------------------------- */
.detailsBox,
.modalBox,
.btnLink01 li.SubmitBtn {
    display: none;
}
.detailsBox.openType {
    display: block;
}

@media only screen and (max-width: 767px) {
    p {
        margin: 10px 0;
    }
    .pcElement {
        display: none;
    }
    .spElement {
        display: block;
    }
    .text01{
        margin: 0 10px;
        text-align: left !important;
    }
    .contents {
        margin: 0 0 20px;
    }
    .errorTxt {
        margin-top: 0;
        padding: 0;
    }
    .errorTxt span {
        margin: 15px 0 15px;
    }
    .table01 td .errorTxt:first-child span {
        margin: 0 0 15px;
    }
    .errorTxt.type02 span {
        margin: 0;
    }
    .errorTxt02 .iconLink01{
    margin-bottom:0;
    }
    .errorTxt.type02 {
        padding: 0;
    }
    section > .errorTxt span {
        margin: 0;
        padding: 15px 10px;
    }
    .textBox {
        padding: 0 3.15% 0;
    }
    .heading02 + .textBox {
        margin-top:20px;
    }
    .heading02 + .textBox > *:first-child {
        margin-top: 0;
    }
    .textBox.type02 {
        padding: 0 10px 10px;
    }
    /* heading
    -------------------------------- */
    .heading01 {
        min-height: 46.5px;
        padding: 10px 0;
    }
    .heading01 span {    
        font-size: 20px;
        font-size: 2.0rem;
    }
    #inline .heading01 {
        padding: 15px 0 15px;
    }
    #inline .heading01 span {    
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.3;
    }
    .heading02 {
        padding: 15px 0;
    }
    .contents + section > .heading02{
        margin-top:0 !important;
    }
    .heading02.pdB {
    padding-bottom: 0 !important;
    }
    .heading02 span {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: bold;
        color: #ffffff;
        padding: 15px 10px;
        background: #424242;
        border-bottom: 4px solid #d9d9d9;
    }
    .heading03 {
        padding: 0;
    }
    .heading03 span {
        margin-top: 48px;
        font-weight: bold;
        display: block;
        font-size: 13px;
        font-size: 1.3rem;
        padding: 13px 0 13px 10px;
        border-top: solid 2px #131313;
        border-left: none;
    }
    .heading03 + .table01,
    .heading03 + .table02,
    .heading03 + .table03 {
        margin-top: 17px;
    }
    
    .telText {
        margin-bottom: 0;
        font-size: 16px;
        font-size: 1.6rem;
    }
    .captionText {
        margin: 6px 0 0;
        font-size: 12px;
        font-size: 1.2rem;
    }

    /* list
    -------------------------------- */
    .listRow > li {
        clear: both;
        box-sizing: border-box;
        margin-left: 0;
    }
    .btnLink02.listRow.count4 {
        padding-bottom: 0;
    }
    .btnLink02.listRow.count4  li {
        float: left;
        clear: none;
    }
    .listRow.count4 {
        width: 225px; margin: 15px auto 0;
    }
    .listRow,
    .listRow.count2,
    .listRow.count2.typeSmall,
    #modal01 .listRow.count2.typeSmall, 
    .listRow.count3 { width: 100%; margin: 15px 0 0; }
    .listRow.count2 > li { width: 100%; margin-left: 0; }
    .listRow.count3 > li { width: 100%; margin-left: 0; }
    .listRow.count4 > li { width: 100%; margin-left: 0; }
    .listRow[class*="count"] > li:first-child, .listRow[class*="count"] > li.leftCol {
        margin-left: 3.15%;
    }
    .listRow.count4 > li:first-child,
    .btnLink02.listRow.count4  li:first-child {
        margin-left: 0;
    }
    .heading02 + .listRow {
        margin-top: 0;
    }
    /*iconList01*/
    .iconList01 {
    }
    .iconList01 > li {
        padding-left: 15px;
        margin-bottom: 10px;
        position: relative;
    }
    .iconList01 > li:before {
        position: absolute;
        content: "●";
        top: 0;
        left: 0;
        width: 6px;
        height: 6px;
        font-size: 13px;
        font-size: 1.3rem;
        color: var(--main-color);
    }
    /*flowList*/
    .flowList {
        margin: 0 auto 20px;
        width: 100%;
    }
    .flowList li {
        font-size: 13px;
        font-size: 1.3rem;
        padding: 5px;
    }
    .note {
        font-size: 12px;
        font-size: 1.2rem;
    }
    .note-v2 {
        margin-bottom: 0;
        padding-left: 1em;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .telText + .note-v2 {
        margin-top: 4px;
    }
    .inputType01 + .note-v2 {
        margin-top: 8px;
    }
    .exampleText{
        display:block;
        margin-top:10px;
    }
    /* form */
    input[type="button"],
    input[type="text"] {
     -webkit-appearance: none;
    }
    [class*="inputType"] {
    padding: 0 5px;
    height: 34px;
    }
    [class*="selectType"] {
    padding: 0 0 0 5px;
    height: 34px;
    }
    .inputType01,
    .inputType06,
    .selectType01 {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }
    .inputType02 {
    width: 100px;
    }
    .inputType03 {
    width: 43.7%;
    }
    .inputType04 {
    width: 100%;
    }
    .inputType05 {
    width: 29.9%;
    }
    .inputCheck,
    .inputCheck.type02,
    .inputCheck.type04 {
        padding: 15px 0;
        margin: 0 10px;
    }
    .inputCheck.upMt{
        padding:5px 0 25px !important;
    }
    .textareaType01 {
    width: 120px;
    }
    .selectType01 {
    width: 30%;
    }
    .selectType02 {
    width: 46.8%;
    }
    .selectType01 {
        font-size: 16px;
        font-size: 1.6rem;
    }
    .inputYear {
        width: 23%;
    }
    .inputMonth {
        margin: 0 3.4% 0 2%;
        width: 17.5%;
    }
    .inputDate {
        margin: 0 3.4% 0 1.1%;
        width: 17.5%;
    }
    .nameBox > .inputType05:first-child {
        margin-right: 3px;
    }
    .nameBox:first-child > .nameInput,
    .errorTxt + .nameBox > .nameInput {
        margin-left: 13px;
    }
    .nameBox > .inputType05 {
        margin-right: 0;
    }
    .postBox {
    position: relative;
    }
    .postBox .postSelect {
        width: 100%;
    }
    .postBox.floatType {
        float:none;
        display:table-cell;
    }
    .postBox.floatType + .btnLink01 {
        float:none;
        display:table-cell;
        margin-top: 10px;
        margin-left: 0;
    }
    .postBox.floatType + .btnLink01.sizeS {
        width:40%;
    }
    .postBox.floatType > .inputType03{
        width:90%;
    }
    .postBox.floatType + .btnLink01.sizeS li > button {
        padding:12px;
        box-sizing:border-box;
    }
    /* link
    -------------------------------- */
    .iconLink01 {
        text-align: right;
        margin: 10px 0
    }
    .iconLink01 a {
        padding: 0 22px 0 0;
    }
    .iconLink01 a.is-blank {
        padding-right: 15px;
        background-position: right 30%;
        background-size: 10.5px 9.5px;
    }
    .listRow.btnLink01 li,
    .btnLink01 li{
        padding: 0;
        width: 93.7%;
        margin: 0 3.15% 10px;
        text-align:center;
        display: block;
    }
    .listRow.btnLink02 li,
    .btnLink02 li {
        padding: 0;
        width: 225px;
        margin: 15px auto 0;
        text-align:center;
        display: block;
        }
    .listRow.count4 > li:first-child,
    .btnLink02.listRow.count4  li:first-child {
        margin-left: 0;
    }
    .btnLink02.listRow.count4  li {
        padding: 0;
        width: 44px;
        margin: 0 0 10px 15px;
        display: block;
    }
    .btnLink01 li.sizeS,
    .listRow.btnLink01 li.sizeS {
        padding: 0;
        width: 75.3%;
        margin: 0 12.35% 10px;
        display: block;
    }

    .btnLink01 li > a, .btnLink01 li > button, .btnLink01 li.next > p {
        width: 100%;
        text-decoration: none;
        outline: 0;    
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.4;
        padding: 13px 15px;
        max-width: none;
    }
    #FTWD01 .btnLink01 li > a, #FTWD01 .btnLink01 li > button {
        font-size: 15px !important;
        font-size: 1.5rem !important;
    }
    .btnBox li > .btnLink01 li.sizeS > button {
        width: 100%;
        max-width: none;
    }
    .listRow.count2.typeSmall > .sizeS > button,
    .listRow.count2.typeSmall > .sizeS > button,
    .btnLink01.sizeS button, .btnLink01 .sizeS > button, .btnLink01 .sizeS > a {
        width: 100%;
        max-width: none;
        margin: 0 auto;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.4;
        padding: 12px 0 12px;
    }
    .btnLink01 .colorType01 a, .btnLink01 li.colorType01 button {
        border-bottom: 3px solid #b0c4de;
    }
    .btnLink01 .colorType02 a, .btnLink01 li.colorType02 button {
        border-bottom: 3px solid #a67389;
    }
    .btnLink01 .colorType03 a, .btnLink01 li.colorType03 button {
        border-bottom: 3px solid #828282;
    }
    .btnLink01 .prev a, .btnLink01 li.prev button {
        border-bottom: 3px solid #b3b3b3;
    }
    .btnLink01 .next a, .btnLink01 li.next p  {
        border-bottom: 3px solid #d0d0d0;
    }
    .btnLink01.center button, .btnLink01.center {
        text-align: center !important;
    }
    .btnLink02 button, .btnLink02 li > button {
        width: 100%;
        text-decoration: none;
        outline: 0;    
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.4;
        padding: 13px 0;
        max-width: none;
    }
    .btnLink02.listRow.count4  li > button {
        width: 100%;
        max-width: none;
    }
    .btnLink02 .colorType01 button, .btnLink02 li.colorType01 button {
        border-bottom: 3px solid #17629b;
        /* background: #47a1e6 url(../img/com_ic11_sp.png) no-repeat 3px 50%; */
        background-size: 45px 43px;
    }
    .btnLink02 .colorType02 button, .btnLink02 li.colorType02 button {
        border-bottom: 3px solid #193164;
        /* background: #3b5999 url(../img/com_ic12_sp.png?md5=ef726768c0a4259d8d6dd1b9c82d4bf0) no-repeat 3px 50%; */
        background-size: 45px 43px;
    }
    .btnLink02 .colorType03 button, .btnLink02 li.colorType03 button {
        border-bottom: 3px solid #8b1f13;
        /* background: #c53929 url(../img/com_ic13_sp.png?md5=6b90644adfd3ac64e58012a494ad22b7) no-repeat 3px 50%; */
        background-size: 45px 43px;
    }
    .btnLink02 .colorType04 button, .btnLink02 li.colorType04 button {
        border-bottom: 3px solid #99001f;
        /* background: #ff0033 url(../img/com_ic14_sp.png?md5=54fe352442ecf5b3bb0339654248f8bd) no-repeat 3px 50%; */
        background-size: 45px 43px;
    }
    .tw-text,
    .fb-text,
    .yahoo-text,
    .apple-text {
        padding: 3px 10px 3px 40px !important;
        margin-bottom: 0;
        background-repeat: no-repeat;
        background-position: 3px 50%;
        background-size: 27px 27px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: bold;
    }
    .tw-text{
        /* background-image: url(../img/com_ic23_sp.png?md5=4ff5729cff1f6f065b000180962cc57d); */
    }
    .fb-text{
        /* background-image: url(../img/com_ic24_sp.png?md5=7a3dcbf61d6b14ce3a42f117d6bb9db7); */
    }
    .yahoo-text{
        /* background-image: url(../img/com_ic26_sp.png?md5=539a4c751efcdcda43f71ab68eb0595e); */
    }
    .apple-text{
                /* background-image: url(../img/com_ic28_sp.png?md5=7b9d1f60958d3182d1c7c19a764c36dd); */
        }
    .socialAccount .btnLink01 li {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .btnLink02.listRow.count4  li {
        height: 44px;
        border-bottom-width: 2px;
    }
    .btnLink02.listRow.count4  li > button {
        height: 44px;
    }
    .btnLink02.listRow.count4.colorType01 button, .btnLink02.listRow.count4 li.colorType01 button {
        /* background: #47a1e6 url(../img/com_ic19_sp.png?md5=686b8c2a6fac8c8b1a7c5aba803eb2b8) no-repeat 50% 50%;
        background-size: 27px 27px; */
    }    
    .btnLink02.listRow.count4.colorType02 button, .btnLink02.listRow.count4 li.colorType02 button {
        /* background: #3b5999 url(../img/com_ic20_sp.png?md5=891b32a20d271d63aba1d6023fca9f57) no-repeat 50% 50%;
        background-size: 27px 27px; */
    }
    .btnLink02.listRow.count4.colorType03 button, .btnLink02.listRow.count4 li.colorType03 button {
        /* background: #c53929 url(../img/com_ic21_sp.png?md5=2ed0cc850edffb86857c1240c5b837b1) no-repeat 50% 50%;
        background-size: 27px 27px; */
    }
    .btnLink02.listRow.count4.colorType04 button, .btnLink02.listRow.count4 li.colorType04 button {
        /* background: #ffffff url(../img/com_ic22_sp.png?md5=f7afd29c16a9cb779f3dd0af956153b2) no-repeat 50% 50%;
        background-size: 27px 27px; */
    }
    .btnLink02.listRow.count4.colorType05 button, .btnLink02.listRow.count4 li.colorType05 button {
                /* background: #000000 url(../img/com_ic27_sp.png?md5=c82e53cc26bebf8675eb8464fba0304b) no-repeat 50% 50%;
                background-size: 44px 44px; */
        }
    .btnLink01.sizeS button:hover, .btnLink01 .sizeS > button:hover,
    .btnLink01 li.sizeS button:hover,
    .btnLink02 li button:hover {
        margin-top: 2px !important;
    }
    .postBox.floatType + .btnLink01.typeSmall {
        width: 40%;
    }
    .postBox.floatType + .btnLink01.typeSmall li.sizeS {
        width: 100%;
    }
    .postBox.floatType + .btnLink01.typeSmall li.sizeS > button {
        box-sizing: border-box;
        padding: 12px;
    }
    .btnLink01 li.colorType01 > button:hover,
    .btnLink01 li.colorType02 > button:hover,
    .btnLink01 li.colorType03 > button:hover,
    .btnLink01 li.colorType05 > button:hover,
    .btnLink01 li.prev > button:hover,
    .btnLink02 li.colorType01 > button:hover,
    .btnLink02 li.colorType02 > button:hover, 
    .btnLink02 li.colorType03 > button:hover,
    .btnLink02 li.colorType04 > button:hover,
    .btnLink02 li.colorType05 > button:hover,
    .btnLink01 li.colorType01 > a:hover,
    .btnLink01 li.colorType02 > a:hover,
    .btnLink01 li.colorType03 > a:hover,
    .btnLink01 li.colorType05 > a:hover,
    .btnLink01 li.prev > a:hover,
    .btnLink02 li.colorType01 > a:hover,
    .btnLink02 li.colorType02 > a:hover, 
    .btnLink02 li.colorType03 > a:hover,
    .btnLink02 li.colorType04 > a:hover,
        .btnLink02 li.colorType05 > a:hover {
        border-width: 1px;
    }
    .btnLink01 + .btnLink01, section + .btnLink01 {
        margin-top: 20px;
    }
    .btnBox {
        width: 80%;
        margin: 0 auto;
    } 
    .btnBox > li {
        display: table-cell;
        padding-right: 25px;
    }
    .btnBox > li:first-child {
        display: block;
        position: relative;
        padding-right: 0;
        padding-bottom: 25px;
        }
    .btnBox > li .btnLink01 {
        width: 100%;
    }
    .btnBox > li .btnLink01 li {
        display: block;
        width: 100%;
    }
    .btnBox > li:first-child:after {
        content: "";
        position: absolute;
        top: 75.7%;
        right: 50%;
        margin-top: 0;
        margin-right: -15px;
        width: 30px;
        height: 10px;
        /* background: url(../img/com_ic08.png?md5=498df2c8aa02aa1fad390063b37cad36) no-repeat;
        background-size: 30px 10px; */
    }
    .btnBox > li.second {
        width: 60%;
        padding-right: 20px;
    }
    .btnBox > li.last {
        padding-right: 0;
        }
    .inputType01 + .btnBox{
    margin-top:20px;
    }
    [class*="btnLink"].Border {
        border-top: solid 1px var(--sub-color-v2);
        padding-top: 20px;
        margin-top: 12px !important;
    }
    .textBox + .btnLink01 {
        padding-top: 15px;
    }
    .inputCheck02 li > label:before {
        background-position: 0 50% !important;
        background-size: 18px 18px !important;
    }
    .inputCheck02 li label.checked:before {
        background-position: 0 50% !important;
        background-size: 18px 18px !important;
    }
    
    /* telButton */
    .telButtonWrap {
        margin: 12px 0 0;
    }
    .telButton {
        width: 100%;
    }
    .telButton .telButtonLink {
        width: 100%;
        font-size: 18px;
        font-size: 1.8rem;
        padding: 12px 9px 10px 52px;
        border-bottom-width: 3px;
    }
    .telButton .telButtonLink::after {
        left: 28px;
    }
    .telButton .telButtonLink:hover {
        margin-top: 0;
        border-bottom-width: 3px;
    }
    .telButton .telButtonSmall {
        font-size: 12px;
        font-size: 1.2rem;
    }
    .telButton .telButtonSmall {
        margin: 3px 0 0;
    }


    /* table
    -------------------------------- */
    input,
    textarea,
    select {
            font-size: 16px;
            font-size: 1.6rem;
    }
    .table01,
    .table02,
    .table01 th, .table01 td, .table02 th, .table02 td {
        border-bottom: none;
    }
    .table01,.table02 {
        border-bottom: solid 1px var(--sub-color-v2);
    }
    .table01 colgroup col,
    .table01 th,
    .table01 td,
    .table02 th,
    .table02 td,
    .table02.spVerticalType colgroup col,
    .table02.spVerticalType th,
    .table02.spVerticalType td {
        display: block;
        width: 100%;
        border-right: none;
    }
    .table01 th,
    .table01 td,
    .table02 th,
    .table02 td,
    .table02.spVerticalType th,
    .table02.spVerticalType td {
        padding: 15px 10px;
    }
    .table01 td > .btnLink01,
    .table02 td > .btnLink01 {
        text-align: center;
    }
    .table01 td > .btnLink01 li.sizeS,
    .table02 td > .btnLink01 li.sizeS {
        margin: 0 0 10px;    
    }
    .table01 td > .btnLink01 li.sizeS.center,
    .table02 td > .btnLink01 li.sizeS.center {
        margin: 0 auto 10px;
        float: none;
        width: 79.8%;
    }
    .table01 th.type01,
    .table02 th.type01,
    .table01 th,
    .table02 th {
        background: #cccccc;
        padding: 10px;
        font-size: 13px;
        font-size: 1.3rem;
        position: relative;
    }
    .table01 th > .tableInner,
    .table02 th > .tableInner {
        padding: 0 60px 0 0;
    }
    .table03 {
        width: calc(100% - 20px);
        margin: 30px auto 10px;
    }
    .table03 th,
    .table03 td {
        padding: 9px;
    }
    .table03 th {
        width: 33.8%!important;
    }
    .required {
        position: absolute;
        padding: 4px 10px;
        top: 50%;
        right: 0;
        margin-top: -13px !important;
    }
    .requiredBox > div:first-child {
        padding-right: 60px;
    }
    .requiredBox > div .required.type02 {
        width: 45px;
        left: 0;
    }
    .tableWrap {
        overflow-x: auto;
        margin-top: 20px;
        padding-bottom: 5px;
        -webkit-overflow-scrolling : touch;
    }
    .tableHead01 + .tableWrap,
    .tableWrap > *:first-child {
        margin-top: 0;
    }
    .tableWrap::-webkit-scrollbar {
        width: 5px;
        background: #eeeeee;
        border-radius: 5px;
    }
    .tableWrap::-webkit-scrollbar:horizontal {
        height: 5px;
        background: #eeeeee;
        border-radius: 5px;
    }
    .tableWrap::-webkit-scrollbar-thumb {
        background: #044097;
        border-radius: 5px;
    }
    .tableWrap::-webkit-scrollbar-thumb:horizontal {
        background: #044097;
        border-radius: 5px;
    }
    .tableWrap > table {
        width: 100%;
    }
    .tableWrap > table th {
        white-space: nowrap;
    }
    .dataOrderSelect01 > td .inputType01 {
        width: 35%;
    }
    .table01 .btn{
        text-align: center;
    }
    .table01 .btn li{
        display:inline-block;
        margin-right: 0;
    }
    .table01 .btn.count2 li{
        float:none;
    }
    .table01 .btn.count2 {
        text-align:center;
    }
    .table01 .btn.count2 li{
        float:none;
        display: inline-block;
    }
    /* accordion
    -------------------------------- */
    .accordionBox {
        margin-top: 15px;
    }
    .accordionBox > section .switch.heading02 span {
        /* background: #424242 url(../img/com_ic02.png?md5=7048b340889092dff77548378651be1a) no-repeat 96% 50%; */
    }
    .accordionBox > section .switch.heading02.open span {
        /* background: #424242 url(../img/com_ic03.png?md5=802d29fabfd7bf09094fc4ffb7daad12) no-repeat 96% 50%; */
    }
    /* box
    -------------------------------- */
    /* boxLayout01 */
    .boxLayout01 {
        margin: 15px 0 0 0;
    }
    .boxLayout01 .frame01 { border: 1px solid #cccccc; background: #ffffff; }

    .boxLayout01 .boxHead01 {
        padding: 10px 10px 0;
    }
    .boxLayout01 .boxHead01 > span {
        display: block;
        padding: 0 0 5px 0;
        border-bottom: 1px solid #999999;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: bold;
        position: relative;
    }
    .boxLayout01 .boxHead01.caution > span {
        padding: 0 0 5px 20px;
        color: var(--caution-color);
        /* background: url(../img/com_ic17.png?md5=b2e3d201026d2ce49db5a68522fe53bc) no-repeat 0 20%;
        background-size: 13px 12px; */
    }
    .boxLayout01 .boxHead01 > span:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: -1px;
        display: inline-block;
        width: 50%;
        height: 1px;
        background: #131313;
    }
    .boxLayout01 .frame02 { border: 1px solid #cccccc; background: var(--error-bg-color); }
    .boxLayout01 .boxContent01 { padding: 10px; }
    .boxLayout01 .boxContent01 > p { margin: 0; }
    .boxLayout01 .boxHead01 + .boxContent01,
    .boxLayout01 .boxHead02 + .boxContent01 { padding-top: 13px; }

    /* unique
    -------------------------------- */
    .inlineBox {
        margin: 15px auto 0;
        width: 86%;
        height: 380px;
        overflow:auto;
        -webkit-overflow-scrolling:touch;
    }
  .inlineBox .inlineBox_inner {
        padding: 15px 10px 15px 15px;
  }
  .inlineBox .inlineBox_inner .inlineBox_container {
        width: 100%;
  }
    #inline {
        padding: 15px 10px 15px 15px;
    }
    #inline #container {
        width: 100%;
    }
    /*modal*/
    #modal01, #modal02 {
        width: 100%;
        width: 260px;
        max-width: 300px;
    }
    #modal01 > dl .modalHead01,
    #modal02 > dl .modalHead01 {
        padding: 10px 0 0;
    }
    #modal01 > dl .modalHead01 > span,
    #modal02 > dl .modalHead01 > span {
        display: block;
        padding: 0 0 5px 0;
        border-bottom: 1px solid #999999;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: bold;
        position: relative;
    }
    #modal01 > dl .modalHead01 > span:before,
    #modal02 > dl .modalHead01 > span:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: -1px;
        display: inline-block;
        width: 50%;
        height: 1px;
        background: #131313;
    }
    #modal01 > dl .modalContent01,
    #modal02 > dl .modalContent01 { padding-top: 10px; }
    #modal01 > dl .modalContent01 > p,
    #modal02 > dl .modalContent01 > p { margin: 0; }
    #modal01 > dl .modalHead01 + .modalContent01,
    #modal02 > dl .modalHead01 + .modalContent01 { padding-top: 13px; }
    .modalClose .btn_close {
        background-size: 25px 25px;
        width: 25px;
        height: 25px;
    }
    #modal01 .btnLink01 li.sizeS,
    #modal02 .btnLink01 li.sizeS,
    #modal01 .listRow.btnLink01 li.sizeS,
    #modal02 .listRow.btnLink01 li.sizeS {
        padding: 0;
        width: 100%;
        margin: 0 auto 10px;
        display: block;
    }
    #modal01 .btnLink01 .sizeS a,
    #modal02 .btnLink01 .sizeS a,
    #modal01 .listRow.btnLink01 .sizeS > a,
    #modal02 .listRow.btnLink01 .sizeS > a {
        max-width: none !important;
        outline: 0 none;
        text-decoration: none;
        width: 100%;
    }
    body.modalOver #modal01 > .modalOverType:first-child  {
        margin: -20px -15px -10px!important;
    }
    body.modalOver .modalOverTypeHead {
        padding: 12px 0 10px;
        min-height: 30px;
    }
    body.modalOver .modalOverTypeHead span {
        font-size: 20px;
        font-size: 2.0rem;
        line-height: 1.2;
    }
    body.modalOver .modalOverTypebody {
        padding: 15px 15px 15px;
    }
    body.modalOver .modalOverTypebody > *:last-child > li:last-child {
        margin-bottom: 0!important;
    }
    body.modalOver #cboxWrapper {
        max-height: 90vh;
        overflow-y: scroll;
    }

    .countdown .countdownSeconds {
        margin: 0 10px;
        font-size: 23px;
        font-size: 2.3rem;
    }
    
    /* registerNumber */
    .registerNumber {
        margin: 10px 0 0;
    }
    .registerNumberInner {
        width: 100%;
    }
    .registerNumberHead {
        flex-shrink: 0;
        padding: 14px 14px 10px;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.5;
    }
    .registerNumberBody {
        padding: 14px 14px 10px;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.5;
        min-width: 0;
        width: 100%;
    }
    
}



/* clearfix */
.flowList:after,
.inputList01:after,
.listRow:after,
.btnLink01:after,
.btnLink02:after,
.table01 .errorCell:after {
    content : "";
    display : block;
    clear : both;
}