@charset "UTF-8";

/* ========================================================================


    ALL COMMON


/* ===================================================================== */

* {
    margin: 0px;
    padding: 0px;
}
html,body {
    height: 100%;
}
body {
    height: auto;
    position: relative;
    margin: 0 auto;
    font-family: "Helvetica neue", YuGothic, '游ゴシック',"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro",メイリオ, Meiryo,Osaka,"ＭＳ Ｐゴシック", "Helvetica", "Verdana", sans-serif;
    line-height: 100%;
    color: #333;
    text-align: left;
    word-wrap: break-word;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-touch-callout: none;
    position: relative;
    -webkit-text-size-adjust: 100%;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
article,aside,dialog,figure,footer,header,hgroup,menu,nav,section,ul {display: block;}
h1,h2,h3,h4 {font-weight: normal; line-height: 100%; margin: 0px; padding: 0px;}
p {color: #333; word-break: normal;}
em {font-style: normal}
address {font-style: normal;}
img {border: none; vertical-align: bottom;}
img { -ms-interpolation-mode: bicubic; }
hr {display: none;}

/* clearfix */
.clear {clear: both;}
.clearfix {display: inline-block;}
.clearfix:after {content: "."; display: block; height: 0;clear: both; visibility: hidden; line-height:0; font-size:0;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/* link */
a {color: #cc2b38;}
a:hover {text-decoration: none;}
a * {cursor: pointer;}
a:focus {outline: none;}

/* table */
table {border-collapse: collapse;}
table th,table td {vertical-align: top;text-align: left;}

div.clear {clear:both;}
div.clear br {display: none;}


/* --------------------------------------------------------------------- */
/* MARGIN-PADDING */
/* --------------------------------------------------------------------- */

/* margin - top */
.mtN5 {margin-top: -5px !important;}
.mt0 {margin-top: 60px !important;}
.mt5 {margin-top: 5px !important;}
.mt6 {margin-top: 6px !important;}
.mt8 {margin-top: 8px !important;}
.mt10 {margin-top: 10px !important;}
.mt12 {margin-top: 12px !important;}
.mt15 {margin-top: 15px !important;}
.mt18 {margin-top: 18px !important;}
.mt20 {margin-top: 20px !important;}
.mt23 {margin-top: 23px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}

/* margin - bottom */
.mb0 {margin-bottom: 0px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb25 {margin-bottom: 25px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb40 {margin-bottom: 40px !important;}

/* margin - right */
.mr20 {margin-right: 20px !important;}

/* margin - left */
.ml20 {margin-left: 20px !important;}
.ml40 {margin-left: 40px !important;}

/* padding - top */
.pt5 {padding-top: 5px !important;}
.pt10 {padding-top: 10px !important;}
.pt12 {padding-top: 12px !important;}
.pt15 {padding-top: 15px !important;}
.pt17 {padding-top: 17px !important;}
.pt20 {padding-top: 20px !important;}
.pt25 {padding-top: 25px !important;}
.pt30 {padding-top: 30px !important;}
.pt40 {padding-top: 40px !important;}
.pt45 {padding-top: 45px !important;}
.pt50 {padding-top: 50px !important;}
.pt60 {padding-top: 60px !important;}

/* padding - bottom */
.pb10 {padding-bottom: 10px !important;}
.pb15 {padding-bottom: 15px !important;}
.pb20 {padding-bottom: 20px !important;}
.pb25 {padding-bottom: 25px !important;}
.pb26 {padding-bottom: 26px !important;}
.pb30 {padding-bottom: 30px !important;}
.pb35 {padding-bottom: 35px !important;}
.pb40 {padding-bottom: 40px !important;}
.pb45 {padding-bottom: 45px !important;}
.pb50 {padding-bottom: 50px !important;}
.pb60 {padding-bottom: 60px !important;}


/* --------------------------------------------------------------------- */
/* TEXT */
/* --------------------------------------------------------------------- */

/* font-size (YUI fonts.css) */
.txt10 {font-size: 77% !important;}
.txt11 {font-size: 85% !important;}
.txt12 {font-size: 93% !important;}
.txt14 {font-size: 108% !important;}
.txt15 {font-size: 116% !important;}
.txt16 {font-size: 123.1% !important;}
.txt17 {font-size: 131% !important;}
.txt18 {font-size: 138.5% !important;}
.txt19 {font-size: 146.5% !important;}
.txt20 {font-size: 153.9% !important;}
.txt21 {font-size: 161.6% !important;}
.txt22 {font-size: 167% !important;}
.txt23 {font-size: 174% !important;}
.txt24 {font-size: 182% !important;}
.txt25 {font-size: 189% !important;}
.txt26 {font-size: 197% !important;}

/* line-height */
.txtLine140 {line-height: 1.4 !important;}
.txtLine160 {line-height: 1.6 !important;}
.txtLine180 {line-height: 1.8 !important;}

/* font-weight */
.txt_Bold {font-weight: bold !important;}

/* font-color */
.txt_Red {color: #e9411b !important;}
.txt_Grn {color: #597a56 !important;}

/* align */
.txt_Left {text-align: left !important;}
.txt_Right {text-align: right !important;}


/* --------------------------------------------------------------------- */
/* ELEMENTS */
/* --------------------------------------------------------------------- */

::selection {
    background: #ccc;
    color: #fff;
}
::-moz-selection {
    background: #ccc;
    color: #fff;
}

.listBlock,.listBlock ul,.listBlock li {
    display: block; 
    list-style-type: none;
}
.txt {
    font-size: 108%;
    line-height: 1.714;
}
.txt a {
    color: #c30d23;
}

.var_t th,
.var_t td {
    vertical-align: middle;
}

p.text { 
 font-size: 14px;
 line-height: 1.5;
 text-align: left;
 }
/* ========================================================================


    PC Styling


/* ===================================================================== */

/* --------------------------------------------------------------------- */
/* RWD setting */
/* --------------------------------------------------------------------- */
/* view */
.viewRW,br.viewRW {display: none !important;}
.viewPC {display: block;}

/* tel set */
a.spCall {
    color: inherit;
    cursor: default;
    text-decoration: none;
}


/* --------------------------------------------------------------------- */
/* HEADER */
/* --------------------------------------------------------------------- */
body { 
  border-top: 3px solid #cc2b38;
  min-width: 960px;
   }

#HEADER {
  width: 100%;
  min-width: 960px;
  border-bottom:1px solid #e5e5e5; 
}
.headerBody {
  width: 960px;
  height: 90px;
  margin: 0 auto;
  position: relative;
}
.headerBody .logo {
  position: absolute;
  top: 30px;
  left: 0;
}
.headerBody .logo a {
  display: block;
}

.headerBody .linkFB {
  position: absolute;
  top: 0;
  right: 0;

}
.headerBody .linkFB a {
  display: block;
  background: #cc2b38;
  padding: 10px 14px 14px 14px;
  font-weight: bold;
  font-size: 14px;
  color: #fff;
  text-decoration: none;
  border-radius: 0 0 4px 4px;
}
.headerBody .linkFB a:hover { 
  text-decoration: underline;
 }


/* --------------------------------------------------------------------- */
/* CONTENTS */
/* --------------------------------------------------------------------- */
#CONTENTS {
  width: 100%;
  min-width: 960px;
}
.mainVisual {
  width: 100%;
  min-width: 960px;
  max-width: 1400px;
  margin: 0px auto;
  border-bottom:1px solid #e5e5e5; 
}
.mainVisual img {
  width: 100%;
  height: auto;
}

#CONTENTS section {
  width: 100%;
  min-width: 960px;
}
#CONTENTS section .sectionBody{
   padding: 75px 0; 
}
#CONTENTS section .title {
  font-size: 34px;
  font-weight: bold;
}



/*about*/
section.about {
  background: #cc2b38;
  background-image: url(../images/bg_about.png);
  background-repeat: no-repeat;
  background-position: center 80px;
  background-size: 1438px;
}
section.about .sectionBody {
  width: 920px;
  display: block;
  margin: 0 auto;
 /* position: relative;*/
  z-index: 1;
}
section.about .sectionBody .img {
  position: absolute;
  /*bottom: 0;
  left: -110px;*/
  left: -425px;
  bottom: -75px;
  z-index: 2;
}
section.about .sectionBody .container {
  float: right;
  width: 605px;
  position: relative;
  z-index: 3;
}
section.about .contain {
  margin-top: 20px;
}

section.about .title {
  line-height: 1.3;
  text-align: left;
  color: #fff;
}
section.about h3 {
    font-size: 18px;
    font-weight: bold;
    border-left: 4px solid #fff;
    padding-left: 5px;
    color: #fff;
    margin-bottom: 10px;
}
section.about .text-2 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
}

section.about .text,#CONTENTS section.about .text-2 {
  color: #fff;
}
section.about .block{
  margin-top: 20px;
}

section.about .block ul {
  margin-top: 11px;
  list-style: none;
  display: block;
}




section.about .block .linktext {
  font-weight: bold;
  width: auto;
}
section.about .block .linktext span {
  width: 14%;
  display: inline-block;
  position: relative;
}

section.about .block .linktext span:after {
  content: "：";
  position: absolute;
  right: 0;
}


section.about .block .linktext a {
  color: #fff;
}
section.about .block-2 {
  background: #fff;
  margin-top: 20px;
  border-radius: 8px;
  padding :20px 0;
  box-shadow: 0px 1px 0px 0px #e5e5e5 inset;
  -moz-box-shadow: 0px 1px 0px 0px #e5e5e5 inset;
  -webkit-box-shadow: 0px 1px 0px 0px #e5e5e5 inset;
  }
section.about .block-2 div {
  padding : 0 20px;
}
section.about .block-2 h3 {
  border-left: 4px solid #cc2b38;
  padding-left: 5px;
  color: #333;
  margin-bottom: 10px;
}
section.about .block-2 .text {
  color: #333;
  font-weight: bold;
  line-height: 1.8;
}


/* -----------------------------------
howto
------------------------------------- */
section.howto {
  background: #fff; 
}
section.howto .title {
  text-align: center;
  margin-bottom: 40px;
}

section.howto .sectionBody {
  width: 840px;
  margin: 0 auto;
}


/* step */
section.howto .step {
  margin-bottom: 40PX;
}
section.howto .step li {
  display: block;
  position: relative;
  width: auto;
  height: 110px;
  margin-bottom: 15px;
}
section.howto .step li .ico {
  position: absolute;
  top: -4px;
  left: 20px;
  width: 104px;
  height: 94px;
  text-indent: -9999px;
  overflow: hidden;
}
section.howto .step li:last-child .ico {
  position: absolute;
  top: -7px;
  left: 20px;
}
section.howto .step li:first-child .ico {
  background:url(../images/ico_step1.png) no-repeat top left / 104px; 
}
section.howto .step li:nth-child(2) .ico {
  background:url(../images/ico_step2.png) no-repeat top left / 104px; 
}

section.howto .step li:last-child .ico {
  background:url(../images/ico_step3.png) no-repeat top left / 104px; 
}








section.howto .step li.textArea {
  width: 690px;
}
section.howto .step li:first-child .textArea {
  position: absolute;
  top: 30px;
  left: 150px;
}
section.howto .step li:nth-child(2) .textArea {
  position: absolute;
  top: 15px;
  left: 150px;
}
section.howto .step li:last-child .textArea {
  position: absolute;
  top: 12px;
  left: 150px;
}

section.howto .step li .read {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}
section.howto .step li .link a {
  font-size: 14px;
  font-weight: bold;
  color: #4167af;
}
section.howto .step li:first-child,
section.howto .step li:nth-child(2) {
  background: url(../images/bg_step1.gif) no-repeat top left / contain;
}
section.howto .step li:last-child {
  border: 3px solid #6785bf;
  height: 90px;
  box-sizing: border-box;
  margin-bottom: 0;
}

/* flow */
.flow {
  width: 100%;
  border: 5px solid #eaeaea;
  border-radius: 10px;
  box-sizing: border-box;
  padding: 40px 0; 
}
.flow h3 {
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  margin-bottom: 35px;
}
.flow .fbBlock {
  margin: 0 30px;
  padding: 25px 0;
  display: block;
  border-top: 1px solid #d9d9d9;
}
.flow .fbBlock .imgBlock {
  float: left;
  width: 365px;
}

.flow .fbBlock .textBlock ul {
  display: block;
  list-style: none;
}
.flow .textBlock .nth1 {
   margin-bottom: 30px;
}

.flow .textBlock {
  float: right;
  width: 365px;
}

.flow .textBlock h4 {
  font-size: 21px;
  font-weight: bold;
  position: relative;
  padding-left: 23px;
  margin-bottom: 15px;
}
.flow .textBlock h4 span {
  display: inline-block;
  text-align: center;
  width: 25px;
  height: 23px;
  border-radius: 100%;
  color: #fff;
  text-indent: 0;
  font-size: 16px;
  font-weight: bold;
  background: #cc2b38;
  padding-left: 0;
  padding-top: 2px;
  position: absolute;
  left: -5px;
  top: -2px;
}
.flow .textBlock .item {
  list-style: none;
  display: block;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 11px;
}

.flow .box {
  border:3px solid #e5e5e5;
  border-radius: 8px;
  padding: 20px 0;
}

.flow .box .boxbody {
  margin: 0 20px;
}

.flow .box h5 {
  font-size: 15px;
  font-weight: bold;
  color: #ed0517;
  box-sizing: border-box;
  margin-bottom: 11px;
}
.flow .box ul {
  display: block;
}
.flow .box ul li {
   font-size: 14px;
   line-height: 1.5;
   font-weight: bold;
}
.flow .box .type1 {
  float: left;
  width: 50%;
}
.flow .box .type2 {
  float: right;
  width: 50%;
}


/*　facebook投稿の注意書き　*/
.flow .fbBlock2 {
  border-top:1px dotted #d9d9d9;
  margin: 0 30px;
}
.flow .fbBlock2 .noteList {
  display: block;
  list-style: none;
  padding: 20px 0 0 0;
}
.flow .fbBlock2 .noteList .note {
  margin-bottom: 15px;
}
.flow .fbBlock2 .noteList .note.last {
  margin-bottom: 0;
  font-size: 12px;
  line-height: 1.5;
}

.flow .fbBlock2 h5 {
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  border-left: 3px solid #555;
  padding-left: 6px;
  margin-bottom: 4px;
}
.flow .fbBlock2 .innerList {
  list-style: none;
  display:  block;
}
.flow .fbBlock2 .innerList li {
  font-size: 12px;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em;
  }


/* --------------------------------------------------------------------- */
/* result */
/* --------------------------------------------------------------------- */
/* grandprix */
.grandprix {
  padding: 60px 0;
  background: #cc2b38;
  background-image: url(../images/bg_grandprix.png);
  background-repeat: no-repeat;
  background-position: center 80px;
  background-size: 100%;
}
.grandprix .title {
  text-align: center;
}
.grandprix .post {
  margin: 35px auto 0;
  padding: 30px 30px 25px;
  width: 410px;
  box-sizing: border-box;
  background: #ffffff;
  border-radius: 8px;
  position: relative;
}
.grandprix .post:before {
  content: "";
  width: 125px;
  height: 146px;
  display: block;
  position: absolute;
  top: -42px;
  left: -64px;
  background: url(../images/grandprix_icon.png) no-repeat left top;
  background-size: 125px 146px;
  z-index: 10;
}
.grandprix .area {
  margin: 18px 0 0;
  padding-left: 8px;
  font-size: 138.5%;
  font-weight: bold;
  line-height: 1;
  border-left: 4px solid #cc2b38;  
}
.grandprix .post h3 {
  margin: 12px 0 8px;
}

/* gift */
.gift {
  margin: 80px auto;
}
.gift .title {
  margin: 0 auto;
  width: 1116px;
  text-align: center;
}
.gift .title span {
  position: relative;
}
.gift .title span:before {
  content: "";
  width: 44px;
  height: 55px;
  display: inline-block;
  position: relative;
  top: 12px;
  left: -20px;
  background: url(../images/gift_icon.png) no-repeat left top;
  background-size: 44px 55px;
}
.gift .title span:after {
  content: "";
  width: 44px;
  height: 55px;
  display: inline-block;
  position: relative;
  top: 12px;
  right: -20px;
  background: url(../images/gift_icon.png) no-repeat left top;
  background-size: 44px 55px;
}
.postList {
  margin: 60px auto 0;
  width: 1116px;
}
.postList li {
  margin: 0 20px 20px 0;
  padding: 15px;
  float: left;
  width: 230px;
  list-style-type: none;
  border: 2px solid #eaeaea;
  border-radius: 4px;
}
.postList li:nth-child(4n) {
  margin-right: 0;
}
.postList li .postImg {
  margin: 0 auto;
  overflow: hidden;
  background: #f6f6f6;
}
.post .postArea {
  margin-top: 17px;
  padding: 5px 6px 4px;
  color: #ffffff;
  font-weight: bold;
  line-height: 1.2;
  display: inline-block;
  background: #cc2b38;
  border-radius: 3px;
}
.post .store {
  margin: 14px 0 8px;
  color: #454545;
  font-size: 116%;
  font-weight: bold;
  line-height: 1.4;
}
.post p {
  font-size: 93%;
  line-height: 1.6;
}

/* postImg */
.postImg {
  width: 100%;
  min-width: 100px;
  height: auto;
  min-height: 100px;
  position: relative;
}
.postImg:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.postImg span {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: hidden;
}
.postImg img {
  width: auto;
  height: 100%;
  line-height: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
.postImg img.vertical {
  width: auto;
  height: 100%;
}






/* --------------------------------------------------------------------- */
/* FOOTER*/
/* --------------------------------------------------------------------- */

#FOOTER {
  width: 100%;
  display: block;
  min-width: 960px;
  border-top:1px solid #cc2b38;
  position: relative;
}
#FOOTER .footerBody {
  padding: 80px 0;
  text-align: center;
  width: 1020px;
  margin: 0 auto;
}
#FOOTER .title {
  display: block;
  font-size: 38px;
  font-weight: bold;
  margin-bottom: 40px;
}
#FOOTER .name {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 14px;
}
#FOOTER address {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 25px;
}

#FOOTER .contactList {
  display: block;
  list-style: none;
  text-align: center;
}
#FOOTER .contactList li {
  font-size: 26px;
  font-weight: bold;
  display: block;
}
#FOOTER .contactList li span {
  color: #e60012;
  padding-right: 5px;
}
#FOOTER .contactList li:first-child {
  float: left;
  width: 48%;
  text-align:right; 
}
#FOOTER .contactList li:last-child {
  float: right;
  width: 48%;
  text-align: left; 
}

#FOOTER .copyright {
  width: auto;
  text-align: center; 
  min-width: 960px;
  font-size: 11px;
  line-height: 1;
  color: #f1cfd1;
  font-weight: bold;
  padding: 20px 0; 
  background: #cc2b38;
}

.pageTop {
  overflow: hidden;
  position: absolute;
  bottom: 80px;
  right: 30px;
  z-index: 100;
}

.pageTop a {
    width: 46px;
    height: 46px;
    border-radius: 100%;
    background: #cc2b38;
    display: block;
    text-indent: -9999em;
    color: #fff;
}

.pageTop a:after {
    content: "";
    width: 20px;
    height: 12px;
    background: url(../images/pagetop.png) no-repeat left top / 22px;
    position: absolute;
    top: 17px;
    display: block;
    left: 13px;
}
.pageTop a:hover {
 background: #b23e47; 
}

.pageTop a:hover::after {
  content: "";
  width: 20px;
  height: 12px;
  background: url(../images/pagetop.png) no-repeat center / 15px;
}


/* result footer */
#FOOTER strong {
  font-size: 108%;
  font-weight: bold;
  line-height: 1.4;
}
.mailInfo {
  margin: 32px 0 20px;
  padding-bottom: 14px;
  display: block;
  border-radius: 6px;
  background: url(../images/balloon.png) no-repeat center bottom;
  background-size: 23px 14px;
}
.mailList {
  padding: 20px 30px;
  background: #f5f5f5;
  display: inline-block;
  border-radius: 6px;
}
.mailList:before {
  content: "必要事項";
  padding: 6px 7px 5px;
  color: #ffffff;
  font-size: 12px;
  font-weight: bold;
  background: #cc2b38;
  display: inline-block;
  border-radius: 4px;
}
.mailList li {
  margin-left: 20px;
  font-size: 108%;
  font-weight: bold;
  display: inline-block;
}
.mailList li:before {
  content: "1";
  margin-right: 8px;
  padding: 0.2em;
  width: 1em;
  height: 1em;
  color: #ffffff;
  font-size: 108%;
  font-weight: bold;
  display: inline-block;
  background: #cc2b38;
  border-radius: 50%;
}
.mailList li:nth-child(2):before {
  content: "2";
}
.mailList li:nth-child(3):before {
  content: "3";
}
.mailAddress {
  padding-left: 48px;
  font-size: 197%;
  font-weight: bold;
  line-height: 1.4;
  display: inline-block;
  background: url(../images/mail.png) no-repeat left center;
  background-size: 36px 36px;
}
.mailAddress a {
  color: #333333;
}
.mailAddress a:before {
  color: #333333;
}
.notice {
  margin: 40px auto;
  padding: 25px 25px 15px;
  width: 730px;
  border: 1px solid #eaeaea;
}
.notice dl {
  display: table;
  text-align: left;
}
.notice dl dt {
  width: 15%;
  color: #cc2b38;
  font-size: 123.1%;
  font-weight: bold;
  display: table-cell;
}
.notice dl dd {
  display: table-cell;
}
.notice ul li {
  margin-bottom: 10px;
  line-height: 1.4;
}













/* ========================================================================

    SmartPhone Styling
    
    * iPhone6+ 414*736
    * iPhone6  375*667(750)
    * iPhone5  320*568(640)
    * android  

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

/* --------------------------------------------------------------------- */
/* Styling check */
/* --------------------------------------------------------------------- */

/** { outline: 1px solid #333 !important; }*/
/*body > *:not(header) { display: none !important; }*/
/*#HEADER*/
/*#HEADER {
    display: none !important;
}*/



/* --------------------------------------------------------------------- */
/* RWD reset */
/* --------------------------------------------------------------------- */

/* wrap */
html {
    padding: 0;
    width: auto;
    max-width: 750px;
}
body {
    width: 100%;
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 auto;
    padding: 0;
    position: relative;
    font-family: "Helvetica neue", YuGothic, '游ゴシック',"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro",メイリオ, Meiryo,Osaka,"ＭＳ Ｐゴシック", "Helvetica", "Verdana", sans-serif;
}

/* reset */
/*img {max-width: 100%;}*/
p {font-size: 12px;line-height: 100%;}
a {-webkit-tap-highlight-color:rgba(0,0,0,0);}


/* view */
.viewRW {display: block !important;}
br.viewRW {display: inline !important;}
.viewPC {display: none !important;}


/* view - contents  */
.txt {line-height: 1.65;}
.min.txt {font-size: 10px !important;}
.scope {margin: 0 10px;}


.txt {
    font-size: 12px;
    line-height: 1.5;
}
.read {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 13px;
}


#HEADER,
#CONTENTS,
#FOOTER {
    min-width: 100px;
}
#CONTENTS,
.contentsHeader,
#FOOTER {
    /*display: none !important;*/
/*-webkit-transform: translateZ(1000px);
    transform: translateZ(1000px);*/
}

.android * {
    /*-webkit-transform: translateZ(0);
         -moz-transform: translateZ(0);
                transform: translateZ(0);*/
    /*-webkit-transform-style: preserve-3d;
         -moz-transform-style: preserve-3d;
          -ms-transform-style: preserve-3d;
            -o-transform-style: preserve-3d;
                transform-style: preserve-3d;*/
}



/* --------------------------------------------------------------------- */
/* HEADER */
/* --------------------------------------------------------------------- */

body { 
  width: 100%;
  min-width: 320px;
  border-top: none;
}

#HEADER {
  width: 100%;
  margin: 0px auto;
  min-width: 320px;
  z-index: 9000;
  padding: 0;
  top: 0;
}
.headerBody {
  position: fixed;
  top: 0;
  width: 100%;
  height: auto;
  z-index: 9000;
  padding: 19px 0;
  background: #fff;
  border-bottom: 1px solid #e2e2e2;
}
.headerBody .logo {
  position: static;
  text-align: center;
}
.headerBody .logo a {
  width: 180px;
  height: auto;
  margin: 0 auto;
}
.headerBody .logo a img {
  width: 100%;
  height: auto;
}

.headerBody .linkFB {
  display: none;
}


/* --------------------------------------------------------------------- */
/* CONTENTS */
/* --------------------------------------------------------------------- */
#CONTENTS {
  display: block;
  width: 100%;
  min-width: 320px;
  padding-top: 55px; 

}
.mainVisual {
  width: 100%;
  min-width: 320px;
}
.mainVisual img {
  width: 100%;
  height: auto;
}

#CONTENTS section {
  width: 100%;
  min-width: 320px;
}
#CONTENTS section .sectionBody{
  padding: 25px 0;
}
#CONTENTS section .title {
  font-size: 22px;
  line-height: 1.5;
  text-align: center; 
}


/*about*/
section.about {
  background-image: none;
}

section.about .sectionBody {
  width: auto;
  margin: 0 15px;
}
section.about .sectionBody .img {
  position: static;
  width: 200px;
  height: 240px;
  overflow: hidden;
  margin: 20px auto 0 auto;
}






section.about .sectionBody .img img {
  width: 100%;
  height: auto;
  position: relative;
  left: -20px;
}
section.about .sectionBody .container {
  width: auto;
  float: none;
}
section.about .contain {
  margin-top: 5px;
}

section.about h3 {
  font-size: 14px;
  font-weight: bold;
  padding-left: 4px;
  margin-bottom: 10px;
  border-left: 3px solid #fff;
}

section.about .text,#CONTENTS section.about .text-2 {
  font-size: 13px;
  line-height: 1.54;
}

section.about .block ul li:last-child {
  margin-top: 6px;
}

section.about .block .linktext span {
  width: auto;
  display: block;
}

section.about .block .linktext span:after {
  display: none;
}



section.about .block-2 {
  padding: 15px 0;
  }
section.about .block-2 div {
  padding: 0 15px; 
}


/* -----------------------------------
howto
------------------------------------- */
#CONTENTS section.howto .title {
  margin-bottom: 15px;
  line-height: 1;
}

section.howto .sectionBody {
  width: auto;
  margin: 0 15px;
}


/* step */
section.howto .step {
  margin-bottom: 20px; 
}
section.howto .step li {
  width: auto;
  height: auto;
  border:1px solid #CCC;
  padding: 0 15px; 
  display: block;
}


section.howto .step li .ico {
  position: static;
  text-indent: 0;
  /*overflow: auto; */
  width: auto;
  height: auto;
  border-left: 3px solid #4167af;
  padding-left: 5px;
  font-size: 14px;
  line-height: 1;
  vertical-align: middle;
  font-weight: bold;
  color: #4167af;
  margin-top: 15px;
}
section.howto .step li:last-child .ico {
  position: static;
  text-indent: 0;
 /* overflow: auto;*/
}
section.howto .step li:first-child .ico {
  background: none;
}
section.howto .step li:nth-child(2) .ico {
  background: none; 
}

section.howto .step li:last-child .ico {
  background: none; 
}




section.howto .step li.textArea {
  width: auto;
}
section.howto .step li:first-child .textArea {
  position: static;
  padding-bottom: 10px;
}
section.howto .step li:nth-child(2) .textArea {
  position: static;
  padding-bottom: 9px;
}
section.howto .step li:last-child .textArea {
  position: static;
  padding-bottom: 9px;
}

section.howto .step li .read {
  font-size: 13px;
  line-height: 1.54;
  margin-top: 3px;
}

section.howto .step li:first-child,
section.howto .step li:nth-child(2) {
  background: none;
}
section.howto .step li:last-child {
  height: auto;
}

/* flow */
.flow {
  padding: 20px 0;
  border: 2px solid #eaeaea;
  border-radius: 6px;
}
.flow h3 {
  font-size: 20px;
  line-height: 1;
  margin-bottom: 15px;
}
.flow .fbBlock {
  margin:  0 15px;
  padding: 10px 0 15px 0;
}
.flow .fbBlock .imgBlock {
  float: none;
  width: auto;
  margin-bottom: 10px;
}
.flow .fbBlock .imgBlock img {
  width: 100%;
  height: auto;
}

.flow .textBlock .nth1 {
  margin-bottom: 15px;
}

.flow .textBlock {
  float: none;
  width: auto;
}

.flow .textBlock h4 {
  font-size: 16px;
  line-height: 1;
  padding: 0;
  margin-bottom: 2px;
}
.flow .textBlock h4 span {
  font-size: 14px;
  width: 21px;
  height: 18px;
  line-height: 1;
  padding-top: 3px;
  position: relative;
  top: -2px;
}
.flow .textBlock .item {
  font-size: 13px;
  line-height: 1.54;
}

.flow .box {
  padding: 10px 0 ;
}
.flow .box .boxbody {
  margin:  0 10px;
}
.flow .box h5 {
  font-size: 14px;
  margin-bottom: 4px;
}
.flow .box ul {
  display: block;
}
.flow .box ul li {
   font-size:13px;
   line-height: 1.54;
 }




.flow .box .type1 {
  width: 45%;
}
.flow .box .type2 {
  width: 55%;
}



/*　facebook投稿の注意書き　*/
.flow .fbBlock2 {
  margin: 0 15px;
}
.flow .fbBlock2 .noteList {
  padding: 15px 0 0 0; 
}
.flow .fbBlock2 .noteList .note {
  margin-bottom: 10px;
}
.flow .fbBlock2 .noteList .note.last {
  font-size: 13px;
  line-height: 1.54;
}

.flow .fbBlock2 h5 {
  font-size: 13px;
}
.flow .fbBlock2 .innerList li {
  font-size: 13px;
  line-height: 1.54;
}



/* --------------------------------------------------------------------- */
/* result */
/* --------------------------------------------------------------------- */
/* grandprix */
.grandprix {
  padding: 40px 0;
  background-repeat: repeat-y;
}
.grandprix .post {
  margin: 20px auto 0;
  padding: 1em 1em 1.5em;
  width: 50%;
  }
  @media screen and (max-width: 560px) {
    .grandprix .post {
      width: 70%;
    }
  }
.grandprix .post:before {
  width: 80px;
  height: 93px;
  top: -25px;
  left: -40px;
  background-size: 80px 93px;
}
.grandprix h2 img {
  width: 102px;
  height: 37px;
}
.grandprix .area {
  margin: 15px 0 0;
  padding-left: 6px;
  font-size: 16px;
  }
  @media screen and (max-width: 560px) {
    .grandprix .postArea {
      margin: 12px 0 0;
      font-size: 14px;
    }
  }
.grandprix .post h3 {
  margin: 12px 0 6px;
  }
  @media screen and (max-width: 560px) {
    .grandprix .post h3 {
      margin: 10px 0 4px;
    }
  }

/* gift */
.gift {
  margin: 20px 0 40px;
}
.gift .title {
  padding-bottom: 10px;
  width: 100%;
}
.gift .title span:before {
  width: 26px;
  height: 33px;
  /*top: 0;*/
  left: -15px;
  background-size: 26px 33px;
}
.gift .title span:after {
  width: 26px;
  height: 33px;
  /*top: 0;*/
  right: -15px;
  background-size: 26px 33px;
}
.gift .title img {
  width: 177px;
  height: 23px;
}
.postList {
  margin: 20px 3% 0;
  width: 94%;
}
.postList li {
  margin: 0 3% 10px 0;
  padding: 12px;
  width: 48.5%;
  box-sizing: border-box;
}
.postList li:nth-child(2n),
.postList li:nth-child(4n) {
  margin-right: 0;
}
.post .postArea {
  margin-top: 12px;
  padding: 4px 5px 3px;
  font-size: 11px;
}
.post .store {
  margin: 10px 0 4px;
  font-size: 13px;
}
.post p {
  font-size: 12px;
}



/* --------------------------------------------------------------------- */
/* FOOTER*/
/* --------------------------------------------------------------------- */


#FOOTER {
  width: 100%;
  min-width: 320px;
  border-top: 2px solid #cc2b38;
  /*background: #f6f6f6; */
  padding: 20px 0 0 0;
}
#FOOTER .footerBody {
  width: auto;
  padding: 0;
  width: auto;
  margin: 0 20px ;
}
#FOOTER .footerBody .blockRW {
  margin-bottom: 15px;
}

#FOOTER .footerBody .blockRW a {
  display: block;
  padding: 20px 0;
  width: auto;
  border-radius: 6px;
  border: 1px solid #d5d5d5;
  background: #fff;
  text-decoration: none;
  box-sizing: border-box;
  box-shadow: 0px -1px 0px 0px #d5d5d5 inset;
  -moz-box-shadow: 0px -1px 0px 0px #d5d5d5 inset;
  -webkit-box-shadow: 0px -1px 0px 0px #d5d5d5 inset;
}

#FOOTER .footerBody .blockRW .telRW {
  margin-bottom: 12px;
}

#FOOTER .blockRW .title {
  font-size: 14px;
  margin-bottom: 12px;
  color: #cc2b38;
}
#FOOTER .blockRW .name {
  font-size: 12px;
  margin-bottom: 5px;
}
#FOOTER .blockRW .addtext {
  line-height: 1.5;
}
#FOOTER .blockRW .addtext span {
font-weight: bold; 
 }

#FOOTER .linkfb a {
  display: block;
  padding: 20px 0;
  background: #CC2B38;
  border-radius: 6px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  margin-bottom: 20px;
}
#FOOTER .linkfb a:hover {
  background: #b23e47; 
}



#FOOTER .copyright {
  width: auto;
  min-width: 320px;
  padding: 10px 0 15px 0; 
}

#FOOTER .copyright span {
  display: block;
  width: auto;
  margin: 0 10px;
}
#FOOTER .copyright span img {
  width: 100%;
  height: auto;
}

.pageTop {
  position: static;
  border-top: 1px solid #e0e0e0;
  overflow: auto;
  text-align: center;
  vertical-align: middle;
}

.pageTop a {
  display: block;
  width: 100%;
  height: auto;
  background: #fff; 
  color: #cc2b38;
  font-size: 12px;
  padding: 18px 0;
  border-radius: 0;
  text-indent: 0;
  text-decoration: none;
  font-weight: bold;
}

.pageTop a:hover {
  background: #fff; 
}
.pageTop a:after {
  display: none;
}


/* result footer */
#FOOTER .title {
  margin-bottom: 15px;
  font-size: 22px;
}
#FOOTER .name {
  font-size: 16px;
}
#FOOTER strong {
  font-size: 13px;
}
.mailInfo {
  margin: 22px 0 12px;
}
.mailList {
  padding: 15px;
  }
  @media screen and (max-width: 340px) {
    .mailList {
      padding: 14px 8px;
    }
  }
.mailList:before {
  padding: 4px 6px 3px;
  font-size: 12px;
  }
  @media screen and (max-width: 560px) {
    .mailList:before {
      padding: 3px 4px 2px;
      font-size: 11px;
    }
  }
.mailList li {
  margin-left: 10px;
  font-size: 13px;
}
.mailList li:before {
  margin-right: 6px;
  font-size: 11px;
}
.mailAddress {
  padding-left: 35px;
  font-size: 22px;
  background-size: 26px 26px;
}
.notice {
  margin: 30px 0;
  padding: 0;
  width: 100%;
  border-radius: 4px 4px 0 0;
}
.notice dl {
  display: block;
}
.notice dl dt {
  padding: 10px;
  width: auto;
  color: #333333;
  font-size: 14px;
  text-align: center;
  display:  block;
  background: #f8f8f8;
  border-bottom: 1px solid #eaeaea;
  border-radius: 4px 4px 0 0;
}
.notice dl dd {
  display: block;
}
.notice ul {
  margin: 15px 15px 10px 30px;
}
.notice ul li {
  margin-bottom: 8px;
  font-size: 12px;
  line-height: 1.6;
}


/* ===================================================================== */
}
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 /end smartphone
======================================================================== */








/* ========================================================================

    TRANSITION

======================================================================== */

#FOOTER .linkfb a, {
    -webkit-transition: all 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
         -moz-transition: all 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
          -ms-transition: all 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
            -o-transition: all 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
                transition: all 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
}




