@charset "utf-8";

a {
display: block;
}
img {
max-width: 100%;
}
img:not([width]) {
width: 100%;
}
html {
font-size: 62.5%;
}
body {
font-size: 1.4rem; /* =14px*/
-webkit-text-size-adjust:100%;
}

.pcOnly {
display: block;
}
.spOnly {
display: none;
}

.container {
width: 1024px;
background: #fff;
color: #333;
line-height: 1.5em;
margin: 0 auto;
}
/*animation*/
.swing {
animation: swing 3s infinite;
}
@keyframes swing {
0% {transform:translate(0, 0);}
10% {transform:translate(20px, 0);}
20% {transform:translate(0, 0);}
30% {transform:translate(20px, 0);}
40% {transform:translate(0, 0);}
}

/*ofr*/
.ofr dd.btn {
width: 100%;
position: relative;
background-image: url("../images/ofr_btn_bg.jpg");
background-repeat: repeat-y;
display: flex;
align-items: center;
justify-content: center;
}
.ofr dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin-top: 20px;
}
.ofr dd.btn form {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 0 0;
}
.ofr dd.btn form .price_textbox {
display: flex;
align-items: center;
font-size: 20px;
line-height: 1.4em;
font-weight: bold;
}
.ofr dd.btn form .price_textbox .block12-select {
padding:0 1em 0 0.5em;
}
.ofr dd.btn form .price_textbox .block12-select select {
font-size: 20px;
line-height: 1.4em;
padding: 0.2em 0.5em;
}
.ofr dd.btn form input[type="image"]:hover {
filter: brightness(120%);
}
input[type="image"]:hover,
input[type="image"]:hover::before,
input[type="image"]:hover::after {
transition: all .5s;
}
.ofr dd.btn a {
margin: 0 auto;
padding: 20px 0 0;
}
.ofr dd.btn a:hover {
filter: brightness(120%);
}
.ofr dd.btn a:hover,
.ofr dd.btn a:hover::before,
.ofr dd.btn a:hover::after {
transition: all .5s;
}

/*ofr2set*/
.ofr2set dd.btn {
width: 100%;
position: relative;
background-image: url("../images/ofr_btn_bg.jpg");
background-repeat: repeat-y;
display: flex;
align-items: center;
justify-content: center;
}
.ofr2set dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin-top: 20px;
}
.ofr2set dd.btn form {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 0 0;
}
.ofr2set dd.btn form .price_textbox {
display: flex;
align-items: center;
font-size: 20px;
line-height: 1.4em;
font-weight: bold;
}
.ofr2set dd.btn form .price_textbox .block12-select {
padding:0 1em 0 0.5em;
}
.ofr2set dd.btn form .price_textbox .block12-select select {
font-size: 20px;
line-height: 1.4em;
padding: 0.2em 0.5em;
}
.ofr2set dd.btn form input[type="image"]:hover {
filter: brightness(120%);
}
input[type="image"]:hover,
input[type="image"]:hover::before,
input[type="image"]:hover::after {
transition: all .5s;
}
.ofr2set dd.btn a {
width: 582px;
margin: 0 0 0 136px;
padding: 20px 0 0;
}
.ofr2set dd.btn a:hover {
filter: brightness(120%);
}
.ofr2set dd.btn a:hover,
.ofr2set dd.btn a:hover::before,
.ofr2set dd.btn a:hover::after {
transition: all .5s;
}

/*ofrPresent*/
.ofrPresent dd.btn {
width: 100%;
position: relative;
background-image: url("../images/ofr_btn_bg.jpg");
background-repeat: repeat-y;
display: flex;
align-items: center;
justify-content: center;
}
.ofrPresent dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin-top: 20px;
}
.ofrPresent dd.btn form {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 0 0;
}
.ofrPresent dd.btn form .price_textbox {
display: flex;
align-items: center;
font-size: 20px;
line-height: 1.4em;
font-weight: bold;
}
.ofrPresent dd.btn form .price_textbox .block12-select {
padding:0 1em 0 0.5em;
}
.ofrPresent dd.btn form .price_textbox .block12-select select {
font-size: 20px;
line-height: 1.4em;
padding: 0.2em 0.5em;
}
.ofrPresent dd.btn form input[type="image"]:hover {
filter: brightness(120%);
}
input[type="image"]:hover,
input[type="image"]:hover::before,
input[type="image"]:hover::after {
transition: all .5s;
}
.ofrPresent dd.btn a {
width: 582px;
/*margin: 0 0 0 136px;*/
margin:0 auto;
padding: 20px 0 0;
}
.ofrPresent dd.btn a:hover {
filter: brightness(120%);
}
.ofrPresent dd.btn a:hover,
.ofrPresent dd.btn a:hover::before,
.ofrPresent dd.btn a:hover::after {
transition: all .5s;
}

/*FAQ*/
.faq {
width: 100%;
background: url("../images/faq_bg.jpg") repeat-y;
}
.faq ul {
width: 740px;
margin: 0 auto;
}
.faq li {
margin-bottom: 5px;
}
.faq dt {
background: url("../images/faq_icon01.png") right center no-repeat;
background-color: #ffddd2;
}
.faq dt:hover {
background-color: #fff4e9;
}
.faq dt.active {
background: url("../images/faq_icon02.png") right center no-repeat;
background-color: #fff4e9;
}
.faq dd p {
font-size: 20px;
line-height: 1.5em;
padding: 15px 10px 20px 60px;
}

/*footer*/
footer {
width: 100%;
min-width: 1024px;
background-color: #FFF;
}
footer .footerInner {
width: 860px;
margin: 0 auto;
padding: 20px 0;
display: flex;
justify-content: start;
align-items: center;
}
footer .footerInner h2 {
width: 140px;
padding-right: 140px;
}
footer .footLink ul {
display: flex;justify-content: center;
margin-bottom: 1em;
}
footer .footLink li {
font-size: 16px;
line-height: 1.4em;
}
footer .footLink li:not(:first-child) {
border-left: #333 1px solid;
}
footer .footLink li a {
color: #333;
text-decoration: underline;
padding: 0 1em;
}
footer address {
font-size: 14px;
line-height: 1.4em;
font-style: normal;
text-align: center;
}

/*============================================================
SP
============================================================*/
@media screen and (max-width: 750px) {
img:not([width]) {
max-width: 750px;
}
.wrap {
max-width: 750px;
overflow-x: hidden;
}
.pcOnly {
display: none;
}
.spOnly {
display: block;
}
.container {
width: 100%;
max-width: 750px;
padding-bottom: 14%;
}

/*ofr*/
.ofr dd.btn {
width: 100%;
position: relative;
background-image: url("../images/sp_ofr_btn_bg.jpg");
background-repeat: repeat-y;
background-size: contain;
overflow: hidden;
display: block;
}
.ofr dd.btn ul {
width: 84%;
margin: 0 auto;
padding-top: 1.5%;
}
.ofr dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin: 1.5% auto 0;
padding-top: 1.5%;
}
.ofr dd.btn form {
width: 100%;
display: flex;
align-items: center;
padding: 0;
margin: 0 auto;
}
.ofr dd.btn form .price_textbox {
width: 16%;
display: block;
font-size: 3.4vw;
line-height: 1.4em;
font-weight: bold;
margin-right: 2%;
}
.ofr dd.btn form .price_textbox .block12-select {
padding:0;
}
.ofr dd.btn form .price_textbox .block12-select select {
font-size: 3.4vw;
line-height: 1.4em;
padding: 0.2em 0;
}
.ofr dd.btn form input[type="image"] {
width: 82%;
}
.ofr dd.btn form input[type="image"]:hover {
filter: brightness(100%);
}
.ofr dd.btn a {
width: 82%;
/*margin: 0 0 0 18%;*/
margin:0 auto;
padding: 0;
}
.ofr dd.btn a:hover {
filter: brightness(100%);
}

/*ofr2set*/
.ofr2set dd.btn {
width: 100%;
position: relative;
background-image: url("../images/sp_ofr_btn_bg.jpg");
background-repeat: repeat-y;
background-size: contain;
overflow: hidden;
display: block;
}
.ofr2set dd.btn ul {
width: 84%;
margin: 0 auto;
padding-top: 1.5%;
}
.ofr2set dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin: 1.5% auto 0;
padding-top: 1.5%;
}
.ofr2set dd.btn form {
width: 100%;
display: flex;
align-items: center;
padding: 0;
margin: 0 auto;
}
.ofr2set dd.btn form .price_textbox {
width: 16%;
display: block;
font-size: 3.4vw;
line-height: 1.4em;
font-weight: bold;
margin-right: 2%;
}
.ofr2set dd.btn form .price_textbox .block12-select {
padding:0;
}
.ofr2set dd.btn form .price_textbox .block12-select select {
font-size: 3.4vw;
line-height: 1.4em;
padding: 0.2em 0;
}
.ofr2set dd.btn form input[type="image"] {
width: 82%;
}
.ofr2set dd.btn form input[type="image"]:hover {
filter: brightness(100%);
}
.ofr2set dd.btn a {
width: 82%;
margin: 0 0 0 18%;
padding: 0;
}
.ofr2set dd.btn a:hover {
filter: brightness(100%);
}

/*ofrPresent*/
.ofrPresent dd.btn {
width: 100%;
position: relative;
background-image: url("../images/sp_ofr_btn_bg.jpg");
background-repeat: repeat-y;
background-size: contain;
overflow: hidden;
display: block;
}
.ofrPresent dd.btn ul {
width: 84%;
margin: 0 auto;
padding-top: 1.5%;
}
.ofrPresent dd.btn li:not(:first-child) {
border-top: #1a1a1a 1px solid;
margin: 1.5% auto 0;
padding-top: 1.5%;
}
.ofrPresent dd.btn form {
width: 100%;
display: flex;
align-items: center;
padding: 0;
margin: 0 auto;
}
.ofrPresent dd.btn form .price_textbox {
width: 16%;
display: block;
font-size: 3.4vw;
line-height: 1.4em;
font-weight: bold;
margin-right: 2%;
}
.ofrPresent dd.btn form .price_textbox .block12-select {
padding:0;
}
.ofrPresent dd.btn form .price_textbox .block12-select select {
font-size: 3.4vw;
line-height: 1.4em;
padding: 0.2em 0;
}
.ofrPresent dd.btn form input[type="image"] {
width: 82%;
}
.ofrPresent dd.btn form input[type="image"]:hover {
filter: brightness(100%);
}
.ofrPresent dd.btn a {
width: 82%;
/*margin: 0 0 0 18%;*/
margin:0 auto;
padding: 0;
}
.ofrPresent dd.btn a:hover {
filter: brightness(100%);
}

/*FAQ*/
.faq {
width: 100%;
background: url("../images/sp_faq_bg.jpg") repeat-y;
background-size: contain;
}
.faq ul {
width: 90%;
margin: 0 auto;
}
.faq li {
margin-bottom: 1%;
}
.faq dt {
background: url("../images/sp_faq_icon01.png") right center no-repeat;
background-color: #ffddd2;
}
.faq dt:hover {
background-color: #ffddd2;
}
.faq dt.active {
background: url("../images/sp_faq_icon02.png") right center no-repeat;
background-color: #fff4e9;
}
.faq dd p {
font-size: 3vw;
line-height: 1.5em;
padding: 4% 2% 6% 7.5%;
}

/*footer*/
footer {
width: 100%;
min-width: 100%;
background-color: #FFF;
}
footer .footerInner {
width: 92%;
margin: 0 auto;
padding: 5% 0;
}
footer .footerInner h2 {
width: 25%;
padding-right: 5%;
}
footer .footLink {
width: 70%;
}
footer .footLink ul {
display: flex;justify-content: center;
margin-bottom: 1em;
}
footer .footLink li {
font-size: 2.6vw;
line-height: 1.4em;
}
footer .footLink li:not(:first-child) {
border-left: #333 1px solid;
}
footer .footLink li a {
color: #333;
text-decoration: underline;
padding: 0 1em;
}
footer address {
font-size: 2.2vw;
line-height: 1.4em;
font-style: normal;
text-align: center;
}

/*floatBnr*/
.floatBnr {
width: 100%;
max-width: 750px;
position: fixed;
bottom: 0;
left: 0;
z-index:9999;
opacity:0;
overflow: hidden;
}
.floatBnr form {
margin: 0;
padding: 0;
font-size: 0;
}
.floatBnr input {
width: 100%;
}

}



/* フォーム部分
---------------------------------------------------------------- */
.section-form select{color: #333;
    font-family: sans-serif;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.7;
}

.section-form{padding:0 60px;box-sizing: border-box;}

.amazonpay-button-inner-image{max-width:100%;width:auto!important;}

.section-form input[type="submit"],
.section-form input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}

.section-form input[type="submit"]::-webkit-search-decoration,
.section-form input[type="button"]::-webkit-search-decoration {
    display: none;
}

.section-form input[type="submit"]::focus,
.section-form input[type="button"]::focus {
    outline-offset: -2px;
}

.err_area {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    z-index: 99;
}

.err_area:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area2 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 550px;
    z-index: 99;
}

.err_area2:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area3 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 425px;
    z-index: 99;
}

.err_area3:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area4 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 590px;
    z-index: 99;
}

.err_area4:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area5 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 470px;
    z-index: 99;
}

.err_area5:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area6 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 610px;
    z-index: 99;
}

.err_area6:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area7 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 600px;
    z-index: 99;
}

.err_area7:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area8 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 730px;
    z-index: 99;
}

.err_area8:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area9 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 820px;
    z-index: 99;
}

.err_area9:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area10 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 610px;
    z-index: 99;
}

.err_area10:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 40px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area11 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 770px;
    z-index: 99;
}

.err_area11:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area12 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 850px;
    z-index: 99;
}

.err_area12:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.err_area13 {
    position: absolute;
    display: inline-block;
    margin: 1em 0;
    padding: 5px 10px;
    box-sizing: border-box;
    max-width: 100%;
    color: #fff;
    font-size: 13px;
    background: #ff4141;
    left: 710px;
    z-index: 99;
}

.err_area13:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 30px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 15px solid #ff4141;
}

.error_main-area {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
    counter-reset: number 0;
}

.error_main-area li {
    line-height: 1.7;
    padding: 5px;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
}

.error_main-area li:before {
    counter-increment: number 1;
    /* number カウンタを増加 */
    content: counter(number) ". ";
    /* 表示形式を指定 */
}

@media only screen and (max-width: 768px) {
    .error_main-area {
        width: 95%;
        margin-left: auto;
        margin-right: auto;
    }
    .err_area2 {
        left: 400px;
    }
    .err_area3 {
        left: 400px;
    }
    .err_area4 {
        left: 550px;
    }
    .err_area5 {
        left: 450px;
    }
    .err_area6 {
        left: 570px;
    }
    .err_area7 {
        left: 570px;
    }
    .err_area8 {
        left: 690px;
    }
    .err_area9 {
        left: 800px;
    }
    .err_area10 {
        left: 570px;
    }
    .err_area11 {
        left: 680px;
    }
    .err_area12 {
        left: 780px;
    }
    .err_area13 {
        left: 660px;
    }
}

@media only screen and (max-width: 650px) {
    .err_area2 {
        left: 250px;
    }
    .err_area3 {
        left: 250px;
    }
    .err_area4 {
        left: 380px;
    }
    .err_area5 {
        left: 200px;
    }
    .err_area6 {
        left: 320px;
    }
    .err_area7 {
        left: 290px;
    }
    .err_area8 {
        left: 390px;
    }
    .err_area9 {
        left: 470px;
    }
    .err_area10 {
        left: 270px;
    }
    .err_area11 {
        left: 380px;
    }
    .err_area12 {
        left: 480px;
    }
    .err_area13 {
        left: 350px;
    }
}

@media only screen and (max-width: 550px) {
    .err_area5 {
        left: 150px;
    }
    .err_area6 {
        left: 280px;
    }
    .err_area7 {
        left: 240px;
    }
    .err_area8 {
        left: 330px;
    }
    .err_area9 {
        left: 400px;
    }
    .err_area10 {
        left: 220px;
    }
    .err_area11 {
        left: 310px;
    }
    .err_area12 {
        left: 380px;
    }
    .err_area13 {
        left: 290px;
    }
}

@media only screen and (max-width: 480px) {
    .err_area {
        font-size: 11px;
    }
    .err_area2 {
        left: 220px;
        font-size: 11px;
    }
    .err_area3 {
        left: 160px;
        font-size: 11px;
    }
    .err_area4 {
        left: 250px;
        font-size: 11px;
    }
    .err_area5 {
        left: 120px;
        font-size: 11px;
    }
    .err_area6 {
        left: 200px;
        font-size: 11px;
    }
    .err_area7 {
        left: 180px;
        font-size: 11px;
    }
    .err_area8 {
        left: 250px;
        font-size: 11px;
    }
    .err_area9 {
        left: 470px;
        font-size: 11px;
    }
    .err_area10 {
        left: 160px;
        font-size: 11px;
    }
    .err_area11 {
        left: 210px;
        font-size: 11px;
    }
    .err_area12 {
        left: 265px;
        font-size: 11px;
    }
    .err_area13 {
        left: 210px;
        font-size: 11px;
    }
}

@media only screen and (max-width: 360px) {
    .err_area2 {
        left: 180px;
    }
    .err_area3 {
        left: 130px;
    }
    .err_area4 {
        left: 200px;
    }
    .err_area5 {
        left: 100px;
    }
    .err_area6 {
        left: 170px;
    }
    .err_area7 {
        left: 160px;
    }
    .err_area8 {
        left: 220px;
    }
    .err_area9 {
        left: 470px;
    }
    .err_area10 {
        left: 140px;
    }
    .err_area11 {
        left: 180px;
    }
    .err_area12 {
        left: 225px;
    }
    .err_area13 {
        left: 180px;
    }
}

.section-form .cl-red {
    color: #ff4141;
}

.section-form .fn-13 {
    font-size: 13px;
}

.section-form .bold {
    font-weight: bold;
}

.section-form .d--sp {
    display: none;
}

.section-form .d--pc {
    display: inline-block;
}

@media only screen and (max-width: 768px) {
    .section-form .d--sp {
        display: inline-block;
    }
    .section-form .d--pc {
        display: none;
    }
}

.section-form::placeholder {
    font-size: 16px;
}

.section-form input {
    font-size: 16px;
}

@media only screen and (max-width: 768px) {
    .section-form::placeholder {
        font-size: 14px;
    }
    .section-form input {
        font-size: 14px;
    }
}

.section-form .flexbox--between {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.section-form {
    background: #fff;
    padding-top: 40px;
    box-sizing: border-box;
    
}

.section-form .form-ttl {
    font-size: 28px;
    line-height: 2;
    margin-top: 40px;
}

.section-form .form-ttl::first-letter {
    color: #fff;
    font-size: 34px;
    line-height: 1;
    background: #42a1a1;
    padding: 3px 7px;
    box-sizing: border-box;
    margin-right: 5px;
}

.section-form .clear-button {
    border-style: solid;
    border-width: 1px;
    border-color: #cccccc;
    color: #333333;
    background: #EAEAEA;
    font-size: 10pt;
    cursor: pointer;
    margin-top: 20px;
}

.section-form .table-01 {
    width: 100%;
    text-align: center;
    border: 1px solid #d0cccb;
    table-layout: fixed;
    font-size: 18px;
    box-sizing: border-box;
    margin-top: 5px;
}

.section-form .table-01 tr:first-of-type {
    background: #e0f5f2;
}

.section-form .table-01 th,
.section-form .table-01 td {
    padding: 20px 10px;
    box-sizing: border-box;
    border: 1px solid #d0cccb;
    vertical-align: middle;
}

.section-form .table-01 th,
.section-form .table-01 td {
    width: 15%;
}

.section-form .table-01 th:first-of-type,
.section-form .table-01 td:first-of-type {
    width: 45%;
}

.section-form .table-01 th:last-of-type,
.section-form .table-01 td:last-of-type {
    width: 10%;
}

.section-form .table-01 .dlt-button {
    max-width: 80px;
    width: 100%;
}

.section-form .textarea-01 {
    background-color: #ffffff;
    width: 100%;
    padding: 10px;
    border: 1px solid #d0cccb;
    font-size: 14px;
    box-sizing: border-box;
    margin-top: 20px;
}

.section-form .check-area {
    margin-top: 10px;
    padding: 10px;
    box-sizing: border-box;
    position: relative;
}

.section-form input[type="checkbox"] {
    border: 1px solid #ebebeb;
    -webkit-appearance: none;
    position: relative;
    margin-right: 8px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-sizing: border-box;
    width: 14px;
    height: 14px;
    background: #e2e2e2;
    background: -webkit-gradient( linear, left top, left bottom, color-stop(0.00, #ffffff), color-stop(1.00, #e2e2e2));
    background: linear-gradient( to bottom, #ffffff 0%, #e2e2e2 100%);
    transform: scale(1.5);
}

.section-form input[type="checkbox"]:checked {
    background: #42a1a1;
    /* Old browsers */
    background: -moz-linear-gradient(top, #42a1a1 0%, #42a1a1 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #42a1a1 0%, #42a1a1 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #42a1a1 0%, #42a1a1 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#42a1a1', endColorstr='#42a1a1', GradientType=0);
    /* IE6-9 */
}

.section-form input[type="checkbox"]:checked:before {
    position: absolute;
    left: 0;
    top: 9px;
    display: block;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);
    content: "";
    width: 8px;
    height: 2px;
    background: #ffffff;
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: right center;
}

.section-form input[type="checkbox"]:checked:after {
    display: block;
    position: absolute;
    left: 7px;
    top: 9px;
    content: "";
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);
    width: 10px;
    height: 2px;
    background: #ffffff;
    -webkit-transform: rotate(-53deg);
    -webkit-transform-origin: left center;
}

.section-form input[type="checkbox"]:focus {
    outline: none;
}

.section-form .att-01,
.section-form .margin-t20 {
    margin-top: 20px;
}

.section-form .att-01,
.section-form .margin-b20 {
    margin-bottom: 20px;
}

.section-form .table-02 {
    width: 100%;
    border: 1px solid #fff;
    table-layout: fixed;
    font-size: 18px;
    box-sizing: border-box;
    margin-top: 20px;
    position: relative;
    overflow: visible;
}

.section-form .table-02:first-of-type {
    margin-top: 5px;
}

.section-form .table-02 th,
.section-form .table-02 td {
    padding: 20px 10px;
    box-sizing: border-box;
    border: 1px solid #fff;
    vertical-align: middle;
}

.section-form .table-02 th {
    background: #42a1a1;
    color: #fff;
    width: 25%;
    text-align: center;
}

.section-form .table-02 td {
    background: #e0f5f2;
    width: 75%;
}

.section-form .table-02 td input,
.section-form .table-02 td select {
    padding: 10px;
    border: 1px solid #d0cccb;
    box-sizing: border-box;
    font-size: 16px;
}

.section-form .table-02 td input[type="tel"] {
    width: 20%;
}

.section-form .table-02 td input[type="checkbox"] {
    padding: 0;
}

.section-form .table-02 table th {
    width: 30%!important;
}

.section-form .table-02 table td {
    width: 70%!important;
}

.section-form .table-02 .input-email {
    width: 80%;
}

.section-form .table-02 .select-quantity {
    width: 20%;
}

.section-form .table-02 .select-birth {
    width: 20%;
}

.section-form .table-02 .select-sex {
    width: 20%;
}

.section-form .table-02 .input-name {
    width: 40%;
}

.section-form .table-02 .input-zip {
    width: 20%;
}

.section-form .table-02 .add-button {
    width: auto;
    height: auto;
    color: #fff;
    border: none;
    box-shadow: none;
    background: #42a1a1;
    font-size: 12px;
    cursor: pointer;
}

.section-form .table-02 .select-prefectures {
    width: 20%;
}

.section-form .table-02 .input-one {
    width: 80%;
}

.section-form .table-02 .select-delivery {
    width: 80%;
    margin-bottom: 20px;
}

.section-form .table-02 textarea {
    width: 100%;
    font-size: 12px;
    color: #000000;
    scrollbar-face-color: #FFFFFF;
    scrollbar-track-color: #FFFFFF;
    scrollbar-arrow-color: #d0cccb;
    scrollbar-highlight-color: #FFFFFF;
    scrollbar-shadow-color: #d0cccb;
    scrollbar-3dlight-color: #d0cccb;
    scrollbar-darkshadow-color: #FFFFFF;
    border: 1px solid #d0cccb;
    box-sizing: border-box;
}

.section-form .table-02 .select-one {
    width: 80%;
}

.section-form .table-02 .input-card {
    width: 24%;
    margin-left: 1px;
    margin-right: 1px;
}

.section-form .table-02 .input-card2 {
    width: 25%;
    margin-left: 1px;
    margin-right: 1px;
}

.section-form .table-02 .select-card-type {
    width: 80%;
}

.section-form .table-02 .select-card-limit {
    width: 40%;
}

.section-form .send-buttons {
    width: 100%;
    text-align: center;
    margin-bottom: 40px;
}

.section-form .send-buttons input {
    min-width: 40%;
    cursor: pointer;
    border: none;
    box-shadow: none;
    margin: 10px;
    padding: 10px;
    color: #fff;
    background: #42a1a1;
    border-radius: 4px;
    line-height: 2;
}

.section-form .confirm-title {
    color: #fff;
    background: #42a1a1;
    padding: 15px 0;
    box-sizing: border-box;
    text-align: center;
    margin-top: 20px;
    font-size: 18px;
}

.section-form .table-03 {
    width: 100%;
    text-align: center;
    border: 1px solid #d0cccb;
    table-layout: fixed;
    font-size: 18px;
    box-sizing: border-box;
    margin-top: 5px;
}

.section-form .table-03 tr:first-of-type {
    background: #e0f5f2;
}

.section-form .table-03 th,
.section-form .table-03 td {
    padding: 20px 10px;
    box-sizing: border-box;
    border: 1px solid #d0cccb;
    vertical-align: middle;
}

.section-form .table-03 th,
.section-form .table-03 td {
    width: 15%;
}

.section-form .table-03 th:first-of-type,
.section-form .table-03 td:first-of-type {
    width: 45%;
}

.section-form .table-03 .dlt-button {
    max-width: 80px;
    width: 100%;
}

.section-form .table-04 {
    width: 100%;
    border: 1px solid #fff;
    table-layout: fixed;
    font-size: 16px;
    box-sizing: border-box;
}

.section-form .table-04 th,
.section-form .table-04 td {
    padding: 20px 10px;
    box-sizing: border-box;
    border: 1px solid #fff;
    vertical-align: middle;
}

.section-form .table-04 th {
    background: #42a1a1;
    color: #fff;
    width: 23%;
    text-align: center;
}

.section-form .table-04 td {
    background: #e0f5f2;
    width: 75%;
}

.section-form .table-04 .table-04-inner-td1 {
    width: 30%;
}

.section-form .table-04 .table-04-inner-td2 {
    width: 70%;
}

.section-form .order-button {
    background: #009245!important;
    font-size: 20px;
}

@media only screen and (max-width: 768px) {
    .section-form {
        width: 95%;
        margin-left: auto;
        margin-right: auto;
        padding:40px 0 0 0;
    }
    .section-form .layout {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .section-form {
        width: 96%;
    }
    .section-form .layout {
        margin: 0;
    }
    .section-form .form-ttl {
        font-size: 18px;
        margin-top: 30px;
    }
    .section-form .form-ttl::first-letter {
        color: #fff;
        font-size: 22px;
    }
    .section-form .table-01 {
        font-size: 13px;
    }
    .section-form .table-02 {
        font-size: 13px;
    }
    .section-form .table-02 th {
        width: 20%;
    }
    .section-form .table-02 th,
    .section-form .table-02 td {
        padding: 10px 5px;
    }
    .section-form .table-02 td input[type="tel"] {
        width: 25%;
    }
    .section-form .table-02 .select-quantity {
        width: 25%;
    }
    .section-form .table-02 .select-birth {
        width: 25%;
    }
    .section-form .table-02 .select-sex {
        width: 25%;
    }
    .section-form .table-02 .input-zip {
        width: 25%;
    }
    .section-form .table-02 .select-prefectures {
        width: 40%;
    }
    .section-form .table-02 .select-delivery {
        margin-bottom: 10px;
    }
    .section-form .table-02 .th-sp-short {
        width: 8%;
        padding: 0 10px;
        box-sizing: border-box;
    }
    .section-form .table-02 .add-button {
        padding: 5px;
    }
    .section-form .table-02 table th {
        width: 25%!important;
        font-size: 11px;
    }
    .section-form .table-02 table td {
        width: 75%!important;
    }
    .section-form .table-02 .select-one {
        margin-bottom: 10px;
    }
    .section-form .confirm-title {
        font-size: 16px;
    }
    .section-form .table-03 {
        font-size: 13px;
    }
    .section-form .table-04 {
        font-size: 13px;
    }
    .section-form .table-04 th {
        width: 25%;
    }
    .section-form .table-04 th,
    .section-form .table-04 td {
        padding: 10px 5px;
    }
    .section-form .send-buttons input {
        margin: 10px 0;
    }
    .section-form .order-button {
        background: #009245!important;
        font-size: 16px;
    }
}

@media only screen and (max-width: 480px) {
    .section-form .table-01 th,
    .section-form .table-01 td {
        width: 16%;
        padding: 20px 5px;
    }
    .section-form .table-01 th:first-of-type,
    .section-form .table-01 td:first-of-type {
        width: 37%;
    }
    .section-form .table-01 th:last-of-type,
    .section-form .table-01 td:last-of-type {
        width: 15%;
    }
    .section-form .fn-13 {
        font-size: 11px;
    }
}

@media screen and (max-width: 767px) {
    body {
        overflow-x: hidden;
    }
    input[type=text] {
        font-size: 16px;
        transform: scale(0.8);
    }
}

.input-line {
    position: relative;
}

.guide-tip {
    display: none;
    bottom: -90px;
    z-index: 2000;
    position: absolute;
    width: 320px;
    padding: 10px 15px;
    margin: 10px 0;
    background: #ff4141;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(0, 0, 0, .1);
    color: #FFFFFF;
    font-size: .875em;
}

@media screen and (max-width: 767px) {
    .guide-tip {
        width: 90px;
        padding: 5px 7px;
        margin: 5px 0;
        font-size: .875em;
    }
}

.guide-tip .arrow {
    position: absolute;
    top: -8px;
    left: 15px;
    z-index: 1000;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #ff4141;
}


/* select 項目用の tool-tip */

.guide-tip-select {
    display: none;
    bottom: -90px;
    z-index: 2000;
    position: absolute;
    width: 320px;
    padding: 10px 15px;
    margin: 10px 0;
    background: #ff4141;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(0, 0, 0, .1);
    color: #FFFFFF;
    font-size: .875em;
}


/* select 項目用の tool-tip ▼ */

.guide-tip-select .arrow-reverse {
    position: absolute;
    top: 40px;
    left: 15px;
    z-index: 1050;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    /*        border-top: 8px solid black;  */
    border-top: 8px solid #ff4141;
}