@charset "utf-8";
/* CSS Document */
/*===============================================
●SP 画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
body {
margin: 0;
}
img {
width: 100%;
display:block;
vertical-align: bottom;
}
#form_checkout_title {
width: auto;
}
.relative {
position: relative;
}
.relative .absolute {
position: absolute;
top: 0;
}
.relative img{
max-width: 100%;
}
/* Notice
----------------------------------------------------------------- */
.notice {
margin: 20px auto 30px;
padding: 0 10px;
max-width: 620px;
}
.notice_hdg {
font-size: 16px;
margin: 0 auto 5px;
}
.notice_text {
font-size: 11px;
line-height: 1.8;
}
.notice_text strong {
font-weight: normal;
background-color: #fff100;
color: #fc0000;
display: inline-block;
padding: 0 4px;
}
.con_btn {
width: 85%;
margin: 0 auto;
position: relative;
overflow: hidden;
}
/* Footer
----------------------------------------------------------------- */
#footer_o {
border-top: solid 1px #CACACA;
margin: 30px 0 0 0;
padding: 10px 0 0 0;
}
#footer_o a:link , a:visited {
color: #02A621;
text-decoration: underline;
}
#footer_o a:hover , a:active {
color: #FF0000;
text-decoration: none;
}
#footer_o .footer_link_o {
text-align: left;
margin: 0px 10px 0px 10px;
padding: 0px;
list-style: none;
width: 300px;
}
#footer_o .footer_link_o li {
font-size: 14px;
line-height: 20px;
}
#footer_o .footer_company_info_o {
padding-top: 10px;
text-align:left;
}
#footer_o .footer_copyrigh_o {
padding-top: 10px;
text-align: left;
font-size: 12px;
}
p.footer_copyright_o {
font-size: 14px;
text-align: center;
}
/* -------------------------------------------------------------------- 
.con_cart
-------------------------------------------------------------------- */
.box_cart .cart_01 {
position: absolute;
bottom: 50px;
height: auto;
left: 0;
right: 0;
margin: auto;
overflow :hidden;
}
}
/*===============================================
●PC 画面の横幅が768px
===============================================*/
@media screen and (min-width:768px){
body {
margin: 0;
}
.relative {
position: relative;
}
.relative .absolute {
position: absolute;
top: 0;
}
.relative img{
max-width: 100%;
}
/* notice
----------------------------------------------------------------- */
.notice p {
margin: 0;
}
.notice {
width: 1000px;
margin: 10px auto 0px;
padding: 0;
background: #fff;
text-align: center;
}
.notice_hdg {
font-size: 34px;
margin: 0 auto 10px;
}
.notice_text {
font-size: 24px;
line-height: 1.8;
}
.notice_text strong {
font-weight: normal;
background-color: #fff100;
color: #fc0000;
display: inline-block;
padding: 0 10px;
}
.con_btn {
width: auto;
margin: 0 auto;
position: relative;
overflow: hidden;
padding: 0px 50px;
background: #fff;
}
/* -------------------------------------------------------------------- 
.con_cart
-------------------------------------------------------------------- */
.box_cart .cart_01 {
position: absolute;
bottom: 75px;
height: auto;
left: 0;
right: 0;
margin: auto;
overflow :hidden;
}
}

.fix-Bnr p {margin: 0px;}

#wrap {
max-width: 768px;
width: 100%;
margin: 0 auto;
}

.cart_01 a:hover {
opacity: 0.8;
}
.con_btn a:hover {
opacity: 0.8;
}

img {
vertical-align: bottom;
}
/* -------------------------------------------------------------------- 
.con_cart
-------------------------------------------------------------------- */
.con_cart {
background: #fff;
}
.box_cart {
position: relative;
}
.box_cart .cart_01 .reflection,
.con_btn div .reflection {
height      :100%;
width       :30px;
position    :absolute;
top         :-180px;
left        :0;
background-color: #fff;
opacity     :0;
transform: rotate(45deg);
animation: reflection 2.3s ease-in-out infinite;
-webkit-transform: rotate(45deg);
-webkit-animation: reflection 2.3s ease-in-out infinite;
-moz-transform: rotate(45deg);
-moz-animation: reflection 2.3s ease-in-out infinite;
-ms-transform: rotate(45deg);
-ms-animation: reflection 2.3s ease-in-out infinite;
-o-transform: rotate(45deg);
-o-animation: reflection 2.3s ease-in-out infinite;
}

@keyframes reflection {
0% { transform: scale(0) rotate(45deg); opacity: 0; }
80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { transform: scale(4) rotate(45deg); opacity: 1; }
100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

/* -------------------------------------------------------------------- 
.youtube
-------------------------------------------------------------------- */
.youtube-box {
position: relative;
}
.youtube-box .movie {
position: absolute;
top: 0;
left: 6%;
width: 88%;
height: 92%;
}
.youtube-box .movie__iframe {
width: 100%;
height: 100%;
}
/* -------------------------------------------------------------------- 
アコーディオン
-------------------------------------------------------------------- */
.ac,
.ac dd {
margin: 0;
}

.ac dt {
cursor: pointer;
}

.ac .wrap_btn {
height: 0;
padding-top: 9.4%;
}

.ac .wrap_btn2 {
padding-top: 14.4%;
}

.ac .wrap_btn3 {
padding-top: 23.4%;
}

.ac .wrap_btn img {
position: absolute;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
max-width: 100%;
}

.ac .wrap_btn .btn {
width: auto;
top: 0;
left: 0;
}

.ac dd,
.ac .wrap_btn .btn.cls {
display: none;
}

.ac .wrap_btn.open .btn.opn {
display: none !important;
}

.ac .wrap_btn.open .btn.cls {
display: inline !important;
}

.wrap_btn {
position: relative;
}

.wrap_btn:hover {
-webkit-tap-highlight-color:rgba(0,0,0,0);
}

.ac .btn {
padding: 0;
}