@charset "UTF-8";
/* ============================================================
	.mod_service
============================================================ */
.service_blk {
  padding: 30px 0; }
  .service_blk h2 {
    color: #FFF;
    font-size: 27px;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 15px;
    font-family: "すずむし","Suzumushi";
    letter-spacing: -0.17em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: 0em; }
    .service_blk h2:before {
      content: "";
      width: 38px;
      height: 20px;
      background: url("../images/common/icon_omikuji_arrow_white.png") center top no-repeat;
      background-size: contain;
      display: block;
      margin: 0 auto 0px auto; }
  .service_blk p {
    color: #FFF; }
  .service_blk .box {
    padding: 62px 20px 30px 20px;
    background-color: #c81528;
    background-image: url("../images/common/bgimage_kinpun_s.png"), url("../images/common/bgimage_kinpun_s.png");
    background-repeat: repeat-x, repeat-x;
    background-position: center top, center bottom; }
    .service_blk .box + .box {
      margin-top: 15px; }
  .service_blk .btnbox {
    margin-top: 20px; }

@media screen and (min-width: 640px) {
  .service_blk {
    padding: 40px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; }
    .service_blk .box {
      width: 48%;
      margin: 0 1%;
      padding: 62px 20px 30px 20px; }
      .service_blk .box + .box {
        margin-top: 0px; }
    .service_blk .btnbox {
      margin-top: 30px; }
      .service_blk .btnbox a {
        width: 100%;
        min-width: 100%; } }
@media screen and (min-width: 769px) {
  .service_blk {
    padding: 80px 0;
    margin: 0 -20px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; }
    .service_blk h2 {
      font-size: 34px; }
    .service_blk .box {
      width: 50%;
      margin: 0 20px;
      padding: 62px 40px 30px 40px; }
    .service_blk .btnbox a {
      width: 280px;
      min-width: 280px; } }
/* ============================================================
	mod_device
============================================================ */
.mod_device {
  width: 100%;
  height: 260px;
  position: relative;
  background-color: #FFF;
  border-bottom: 3px solid #c3ad32;
  overflow: hidden; }
  .mod_device .container {
    width: 100%;
    height: 100%;
    padding: 0;
    background: url("../images/common/device_bg_sp.png") center bottom no-repeat;
    position: relative;
    z-index: 2; }
  .mod_device .asahi {
    width: 510px;
    height: 510px;
    background: url("../images/common/asahi.png") center center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -250px;
    left: 50%;
    margin-left: -255px;
    -webkit-animation: spin 20s linear infinite;
    -moz-animation: spin 20s linear infinite;
    -ms-animation: spin 20s linear infinite;
    -o-animation: spin 20s linear infinite;
    animation: spin 20s linear infinite; }
  .mod_device .btn_cloud {
    font-size: 12px;
    width: 228px;
    height: 56px;
    display: block;
    background: url("../images/common/btn_cloud.png") center center no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -114px;
    margin-top: -40px;
    background-size: contain;
    text-align: center;
    padding-top: 15px;
    -webkit-transition: all 0.25s ease-in;
    -moz-transition: all 0.25s ease-in;
    -ms-transition: all 0.25s ease-in;
    -o-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in; }
    .mod_device .btn_cloud:after {
      content: "";
      width: 5px;
      height: 5px;
      display: inline-block;
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      margin-left: 5px;
      position: relative;
      top: -1px;
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg); }
    .mod_device .btn_cloud:hover {
      opacity: 0.7;
      text-decoration: none; }

@media screen and (min-width: 640px) {
  .mod_device {
    width: 100%;
    height: 300px; }
    .mod_device .container {
      background: url("../images/common/device_bg_pc.png") center bottom no-repeat;
      position: relative;
      z-index: 2; }
    .mod_device .asahi {
      width: 713px;
      height: 713px;
      bottom: -356px;
      margin-left: -356px; }
    .mod_device .btn_cloud {
      font-size: 14px;
      width: 254px;
      height: 80px;
      margin-left: -127px;
      margin-top: -80px;
      padding-top: 30px;
      letter-spacing: 0.08em;
      -webkit-transition: all 0.25s ease-in;
      -moz-transition: all 0.25s ease-in;
      -ms-transition: all 0.25s ease-in;
      -o-transition: all 0.25s ease-in;
      transition: all 0.25s ease-in; } }
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg); } }
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg); }
  100% {
    -moz-transform: rotate(360deg); } }
@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg); }
  100% {
    -ms-transform: rotate(360deg); } }
@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg); }
  100% {
    -o-transform: rotate(360deg); } }
@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
