@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Marcellus");
@import url("https://fonts.googleapis.com/css?family=Cinzel");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, figure {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent; }

*, *:before, *:after {
  box-sizing: border-box; }

ul, ol, dl {
  list-style: none; }

.bold {
  font-weight: bold; }

.red {
  color: #cd1419; }

@media screen and (max-width: 768px) {
  .brpc {
    display: none; } }
@media screen and (min-width: 769px) {
  .brsp {
    display: none; } }
html {
  font-size: 62.5%; }

body {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #4c4c4c;
  background: #f7f8f8;
  width: 100%;
  font-size: 1.4rem; }

@media screen and (min-width: 769px) {
  body {
    font-size: 1.6rem; } }
article {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0; }

a {
  color: #4c4c4c;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s; }
  a:hover {
    opacity: 0.4; }
  a:visited {
    color: #4c4c4c; }

.link {
  border-bottom: 1px dotted #cd1419;
  padding-bottom: 2px;
  position: relative;
  font-weight: inherit; }
  .link:before {
    content: "≫";
    color: #cd1419;
    font-size: 90%;
    font-weight: bold; }

body > nav {
  width: 100%;
  height: 40px;
  background: url(../img/nav_bg_pc.jpg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  z-index: 9997; }
  body > nav > div {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-left: 10px;
    margin-right: 10px; }
    body > nav > div a {
      display: block;
      margin-right: auto;
      padding-top: 5px; }
      body > nav > div a img {
        width: 160px;
        height: 30px; }
    body > nav > div .toggle {
      z-index: 9999;
      padding-top: 10px; }
      body > nav > div .toggle span {
        position: relative;
        display: block;
        height: 1px;
        width: 30px;
        background: #4c4c4c;
        -webkit-transition: ease .4s;
        transition: ease .4s; }
        body > nav > div .toggle span:nth-of-type(1) {
          top: 0; }
        body > nav > div .toggle span:nth-of-type(2) {
          margin: 8px 0; }
        body > nav > div .toggle span:nth-of-type(3) {
          top: 0; }
    body > nav > div .toggle.open span:nth-of-type(1) {
      top: 10px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    body > nav > div .toggle.open span:nth-of-type(2) {
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      opacity: 0; }
    body > nav > div .toggle.open span:nth-of-type(3) {
      top: -8px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }
  body > nav ul {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: ease .4s;
    transition: ease .4s;
    z-index: 9998;
    background: #f7f8f8; }
    body > nav ul li {
      width: 100%;
      height: 60px;
      border-bottom: 1px solid rgba(76, 76, 76, 0.6); }
      body > nav ul li a {
        display: block;
        width: 100%;
        padding-right: 15px;
        height: 60px;
        line-height: 60px;
        font-size: 14px;
        text-align: right; }
        body > nav ul li a:before {
          content: "";
          display: inline-block;
          width: 18px;
          height: 6px;
          background: url(../img/icon_arrow.png) no-repeat;
          background-size: contain;
          vertical-align: middle;
          margin-right: 20px; }
  body > nav ul.open {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch; }

#web {
  margin-top: -40px;
  padding-top: 100px;
  background: #ece7de; }
  #web h2 {
    font-size: 16px;
    font-family: "Marcellus", serif;
    letter-spacing: 1px;
    text-align: center;
    color: #b4a07d;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0; }
    #web h2:before {
      display: block;
      content: "Web";
      font-size: 50px;
      letter-spacing: 4px; }
  #web h2 + p {
    margin-top: 50px;
    line-height: 2;
    margin-left: 20px;
    margin-right: 20px; }
  #web .price {
    margin-top: 80px;
    padding-bottom: 50px; }
    #web .price h3 {
      font-family: "Marcellus", serif;
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      letter-spacing: 4px;
      line-height: 2; }
      #web .price h3:before, #web .price h3:after {
        content: "";
        display: block;
        width: 236px;
        height: 8px;
        background-image: url(../img/icon_line.png);
        background-size: contain;
        vertical-align: middle;
        margin-left: auto;
        margin-right: auto; }
      #web .price h3:after {
        transform: rotateX(180deg); }
    #web .price h3 + p {
      margin-top: 20px;
      font-size: 13px;
      text-align: center; }
    #web .price > dl {
      margin-top: 50px;
      margin-left: 20px;
      margin-right: 20px;
      padding: 20px;
      border: 1px solid #cd1419;
      border-radius: 8px; }
      #web .price > dl dt {
        font-weight: bold;
        font-size: 20px;
        text-align: center; }
      #web .price > dl li {
        margin-top: 30px;
        background: url(../img/icon_attention.png) no-repeat left top;
        background-size: 24px 22px;
        padding-left: 36px;
        line-height: 1.8; }

#basic {
  margin-top: 30px; }
  #basic > div:nth-of-type(1) {
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 0;
    background: #f7f8f8;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    padding: 30px 20px; }
    #basic > div:nth-of-type(1) h4 {
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      line-height: 1.2; }
      #basic > div:nth-of-type(1) h4 span {
        font-size: 18px;
        font-weight: bold; }
        #basic > div:nth-of-type(1) h4 span:before {
          content: "\A";
          white-space: pre; }
    #basic > div:nth-of-type(1) h4 + p {
      margin-top: 30px;
      line-height: 1.8; }
      #basic > div:nth-of-type(1) h4 + p span {
        display: block;
        font-size: 13px;
        font-weight: bold;
        color: #cd1419;
        border: 1px solid #cd1419;
        border-radius: 3px;
        padding: 2px 5px; }
        #basic > div:nth-of-type(1) h4 + p span:not(:last-child) {
          margin-bottom: 5px; }
    #basic > div:nth-of-type(1) h4 + p + p {
      margin-top: 80px;
      line-height: 1.8; }
      #basic > div:nth-of-type(1) h4 + p + p span {
        font-size: 13px;
        font-weight: bold;
        color: #cd1419;
        border: 1px solid #cd1419;
        border-radius: 3px;
        padding: 2px 5px; }
    #basic > div:nth-of-type(1) > dl {
      margin-top: 20px;
      margin-bottom: 20px; }
      #basic > div:nth-of-type(1) > dl:nth-of-type(2) {
        margin-top: 30px; }
      #basic > div:nth-of-type(1) > dl dt {
        background: #cd1419;
        text-align: center;
        color: #f7f8f8;
        font-size: 18px;
        padding-top: 8px;
        padding-bottom: 8px;
        border-radius: 4px;
        margin-bottom: 20px; }
        #basic > div:nth-of-type(1) > dl dt span {
          font-size: 14px; }
      #basic > div:nth-of-type(1) > dl dd {
        color: #cd1419;
        text-align: center;
        font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
        letter-spacing: 2px; }
        #basic > div:nth-of-type(1) > dl dd dl {
          width: 75vw;
          margin-left: auto;
          margin-right: auto; }
        #basic > div:nth-of-type(1) > dl dd dt {
          background: none;
          color: #cd1419;
          font-size: 22px;
          width: 34px;
          height: 34px;
          line-height: 34px;
          border-radius: 50%;
          margin-bottom: 0;
          border: 1px solid #cd1419;
          font-family: "Marcellus", serif;
          float: left;
          margin-top: 12px;
          padding: 0; }
      #basic > div:nth-of-type(1) > dl dt + dd {
        font-size: 44px; }
        #basic > div:nth-of-type(1) > dl dt + dd span {
          font-size: 16px;
          margin-left: 5px; }
      #basic > div:nth-of-type(1) > dl dd + dd {
        font-size: 15px;
        clear: both;
        margin-bottom: 30px; }
        #basic > div:nth-of-type(1) > dl dd + dd span {
          font-size: 18px;
          margin-left: 3px;
          margin-right: 3px; }
        #basic > div:nth-of-type(1) > dl dd + dd:last-child {
          margin-bottom: 0; }
    #basic > div:nth-of-type(1) dl + p {
      text-align: center; }
      #basic > div:nth-of-type(1) dl + p img {
        width: 40px;
        height: 40px; }
  #basic > div:nth-of-type(2) {
    margin-left: 20px;
    margin-right: 20px;
    margin-top: 0;
    background: #f7f8f8;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    padding: 30px 20px; }
    #basic > div:nth-of-type(2) img {
      display: block;
      width: 80%;
      max-width: 320px;
      height: auto;
      margin-left: auto;
      margin-right: auto; }
    #basic > div:nth-of-type(2) > dl {
      margin-top: 60px; }
      #basic > div:nth-of-type(2) > dl dt {
        font-weight: bold;
        color: #cd1419;
        text-align: center;
        font-size: 16px; }
    #basic > div:nth-of-type(2) dd dl {
      margin-top: 20px; }
      #basic > div:nth-of-type(2) dd dl dt {
        color: #cd1419;
        font-size: 16px;
        font-weight: normal;
        text-align: center;
        height: 24px;
        line-height: 22px;
        border-radius: 50%;
        width: 24px;
        border: 1px solid #cd1419;
        font-family: "Marcellus", serif;
        float: left; }
      #basic > div:nth-of-type(2) dd dl dd {
        margin-left: 28px;
        margin-bottom: 20px;
        text-indent: -20px;
        padding-left: 20px;
        font-size: 14px; }
        #basic > div:nth-of-type(2) dd dl dd:before {
          content: "…";
          margin-right: 5px; }

#basic + p {
  text-align: center;
  padding-top: 50px;
  padding-bottom: 50px; }
  #basic + p img {
    width: 40px;
    height: 40px;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0; }

#option {
  margin-left: 20px;
  margin-right: 20px;
  background: #f7f8f8;
  border-radius: 8px;
  padding: 30px 20px;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  opacity: 0; }
  #option h4 {
    font-size: 20px;
    font-weight: bold;
    text-align: center; }
  #option h4 + p {
    margin-top: 20px;
    line-height: 1.8; }
    #option h4 + p span {
      font-size: 13px;
      font-weight: bold;
      color: #cd1419;
      border: 1px solid #cd1419;
      border-radius: 3px;
      padding: 2px 5px; }
  #option dl {
    margin-top: 40px; }
    #option dl dt {
      background: #cd1419;
      text-align: center;
      color: #f7f8f8;
      font-size: 18px;
      line-height: 1.4;
      padding: 8px 20px;
      border-radius: 4px;
      margin-bottom: 20px; }
      #option dl dt span {
        font-size: 14px; }
    #option dl dd {
      /*&:nth-of-type(2) {
      	font-size:15px;
      	font-family:$sp_num_font;
      	letter-spacing:2px;
      	color:$red;
      	text-align:center;
      	
      	span {
      		font-size:18px;
      		margin-left:3px;
      		margin-right:3px;
      	}
      }//(2)*/ }
      #option dl dd:nth-of-type(1) {
        margin-left: 0;
        font-size: 44px;
        font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
        letter-spacing: 2px;
        color: #cd1419;
        text-align: center; }
        #option dl dd:nth-of-type(1) span {
          font-size: 16px;
          margin-left: 5px; }
      #option dl dd:nth-of-type(2) {
        margin-top: 20px;
        font-size: 14px; }

#aftersale {
  margin-top: 50px;
  margin-left: 20px;
  margin-right: 20px;
  background: #e3dbce;
  box-sizing: border-box;
  border-radius: 8px;
  padding: 30px 20px; }
  #aftersale h4 {
    font-size: 20px;
    font-weight: bold;
    text-align: center; }
  #aftersale h4 + p {
    margin-top: 30px; }
  #aftersale label {
    display: block;
    box-sizing: border-box;
    width: 200px;
    margin: 30px auto 0;
    padding: 10px 0;
    color: #cd1419;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 2px;
    border: 1px solid #cd1419;
    border-radius: 6px;
    cursor: pointer;
    -webkit-transition: 0.5s;
    transition: 0.5s; }
    #aftersale label:hover {
      background: #cd1419;
      color: #f7f8f8; }
  #aftersale input {
    display: none; }
  #aftersale > div {
    height: 0;
    overflow: hidden;
    opacity: 0;
    -webkit-transition: 1s;
    transition: 1s; }
  #aftersale .accordion:checked + div {
    height: auto;
    opacity: 1; }
  #aftersale dl {
    margin-top: 50px; }
    #aftersale dl dt {
      background: #cd1419;
      text-align: center;
      color: #f7f8f8;
      font-size: 18px;
      line-height: 1.4;
      padding: 8px 20px;
      border-radius: 4px;
      margin-bottom: 20px; }
      #aftersale dl dt span {
        font-size: 14px; }
    #aftersale dl dd:nth-of-type(1) {
      margin-left: 0;
      font-size: 44px;
      font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
      letter-spacing: 2px;
      color: #cd1419;
      text-align: center; }
      #aftersale dl dd:nth-of-type(1) span {
        font-size: 16px;
        letter-spacing: 0;
        margin-left: 5px; }
    #aftersale dl dd:nth-of-type(2) {
      font-size: 15px;
      font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
      letter-spacing: 2px;
      color: #cd1419;
      text-align: center; }
      #aftersale dl dd:nth-of-type(2) span {
        font-size: 18px;
        margin-left: 3px;
        margin-right: 3px; }
    #aftersale dl dd:nth-of-type(3) {
      margin-top: 30px;
      font-size: 14px; }
    #aftersale dl:nth-of-type(4) dd:nth-of-type(1) {
      font-family: YuGothic, "Yu Gothic", sans-serif;
      font-size: 14px;
      letter-spacing: 0; }

#flow {
  background: linear-gradient(#ece7de, 10%, #f7f8f8);
  padding-top: 50px;
  padding-bottom: 150px; }
  #flow h3 {
    font-family: "Marcellus", serif;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 2px;
    line-height: 2.4; }
    #flow h3:before, #flow h3:after {
      content: "";
      display: block;
      width: 236px;
      height: 8px;
      background-image: url(../img/icon_line.png);
      background-size: contain;
      vertical-align: middle;
      margin-left: auto;
      margin-right: auto; }
    #flow h3:after {
      transform: rotateX(180deg); }
  #flow ol {
    text-align: center;
    margin-top: 50px;
    counter-reset: skd_counter;
    margin-left: 20px;
    margin-right: 20px; }
  #flow li {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0; }
    #flow li:not(:last-child) {
      margin-bottom: 50px; }
      #flow li:not(:last-child):after {
        content: "";
        display: block;
        width: 8px;
        height: 24px;
        background-image: url(../img/icon_arrow2.png);
        background-size: contain;
        vertical-align: middle;
        margin: 30px auto; }
    #flow li h4 {
      width: 100%;
      padding: 8px 10px;
      border-radius: 4px;
      background: #b4a07d;
      color: #f7f8f8;
      font-size: 20px;
      margin-bottom: 30px;
      display: inline-block; }
      #flow li h4:before {
        content: counter(skd_counter);
        counter-increment: skd_counter;
        display: inline-block;
        width: 30px;
        height: 30px;
        margin-right: 20px;
        text-align: center;
        border-radius: 50%;
        border: 1px solid #f7f8f8;
        color: #f7f8f8;
        font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
        font-size: 22px; }
    #flow li p {
      line-height: 2;
      text-align: left; }
      #flow li p:not(:last-child) {
        margin-bottom: 20px; }

#graphic {
  margin-top: -40px;
  padding-top: 100px;
  background: #ece7de; }
  #graphic h2 {
    font-size: 16px;
    font-family: "Marcellus", serif;
    letter-spacing: 1px;
    text-align: center;
    color: #b4a07d;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0; }
    #graphic h2:before {
      display: block;
      content: "Graphic";
      font-size: 50px;
      letter-spacing: 4px; }
  #graphic h2 + p {
    margin-top: 50px;
    margin-left: 20px;
    margin-right: 20px;
    text-align: center; }
  #graphic .price {
    margin-top: 80px;
    padding-bottom: 50px; }
    #graphic .price h3 {
      font-family: "Marcellus", serif;
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      letter-spacing: 4px;
      line-height: 2;
      margin-bottom: 30px; }
      #graphic .price h3:before, #graphic .price h3:after {
        content: "";
        display: block;
        width: 236px;
        height: 8px;
        background-image: url(../img/icon_line.png);
        background-size: contain;
        vertical-align: middle;
        margin-left: auto;
        margin-right: auto; }
      #graphic .price h3:after {
        transform: rotateX(180deg); }
    #graphic .price p {
      line-height: 2;
      margin-left: 20px;
      margin-right: 20px; }
      #graphic .price p span {
        font-weight: bold;
        color: #cd1419; }
    #graphic .price > dl {
      margin-top: 50px;
      margin-left: 20px;
      margin-right: 20px;
      padding: 20px;
      border: 1px solid #cd1419;
      border-radius: 8px; }
      #graphic .price > dl dt {
        font-weight: bold;
        font-size: 20px;
        text-align: center; }
      #graphic .price > dl li {
        margin-top: 30px;
        background: url(../img/icon_attention.png) no-repeat left top;
        background-size: 24px 22px;
        padding-left: 36px;
        line-height: 1.8; }
    #graphic .price > div {
      margin-top: 30px; }
    #graphic .price > div div {
      background: #f7f8f8;
      border-radius: 8px;
      padding: 30px 20px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 30px; }
      #graphic .price > div div h4 {
        font-size: 20px;
        font-weight: bold;
        text-align: center; }
      #graphic .price > div div h4 + p {
        text-align: center;
        margin-top: 10px; }
      #graphic .price > div div > dl {
        margin-top: 50px; }
        #graphic .price > div div > dl dt {
          background: #cd1419;
          text-align: center;
          color: #f7f8f8;
          font-size: 18px;
          line-height: 1.4;
          padding: 8px 20px;
          border-radius: 4px;
          margin-bottom: 20px; }
          #graphic .price > div div > dl dt span {
            font-size: 14px; }
        #graphic .price > div div > dl dd {
          color: #cd1419;
          font-family: "Cinzel", YuGothic, "Yu Gothic", sans-serif;
          letter-spacing: 2px;
          text-align: center; }
          #graphic .price > div div > dl dd dt {
            background: none;
            color: #cd1419;
            font-size: 15px;
            width: 12em;
            border: 1px solid #cd1419;
            letter-spacing: 0;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 10px; }
          #graphic .price > div div > dl dd dt + dd {
            margin-bottom: 30px; }
        #graphic .price > div div > dl dt + dd {
          font-size: 44px; }
          #graphic .price > div div > dl dt + dd span {
            font-size: 16px;
            margin-left: 5px; }
    #graphic .price > div div:nth-of-type(2) dt + dd span {
      letter-spacing: 0; }
    @media screen and (max-width: 340px) {
      #graphic .price > div div:nth-of-type(2) dt + dd {
        letter-spacing: -1px; } }

footer {
  padding-top: 50px;
  padding-bottom: 50px;
  text-align: center;
  background: #ece7de; }
  footer div {
    margin-left: 20px;
    margin-right: 20px;
    padding: 20px;
    background: #e6e0d4;
    border-radius: 8px; }
    footer div p {
      font-size: 14px;
      line-height: 1.8;
      text-align: center; }
      footer div p:nth-of-type(2), footer div p:nth-of-type(3) {
        font-family: "Marcellus", serif; }

/*# sourceMappingURL=design_sp.css.map */
