@charset "UTF-8";
body,
html {
  margin: 0;
  padding: 0; }

html {
  font-size: 62.5%;
  overflow-x: hidden; }

body {
  font-size: 1.4rem;
  font-family: "Oswald", "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  -webkit-text-size-adjust: 100%;
  overflow: hidden;
  line-height: 1.6;
  color: #333333;
  position: relative;
  letter-spacing: .1em; }

a:hover {
  opacity: 0.7;
  transition: 0.5s; }

p {
  margin: 0;
  padding: 0; }

img {
  width: 100%;
  height: auto;
  line-height: 0;
  margin: 0;
  padding: 0;
  vertical-align: bottom; }

.sp {
  display: block; }

.pc {
  display: none; }

.inner {
  margin: 0 10px; }

ul {
  margin: 0;
  padding: 0; }
  ul li {
    margin: 0;
    padding: 0;
    list-style: none; }

h1,
h2,
h3,
h4 {
  margin: 0;
  padding: 0;
  font-weight: normal; }

h2 {
  text-align: center;
  font-weight: bold;
  margin: 0 0 2.0em;
  letter-spacing: .1em;
  font-size: 2.2rem; }

/*decoration*/
span.fb {
  font-weight: bold; }
span.y-line {
  background: linear-gradient(transparent 50%, #ffff00 50%); }

.at-txt {
  text-indent: -1.0em;
  padding: 0 0 0 1.0em; }

/*decoration END*/
.cp_box {
  box-sizing: border-box;
  position: relative; }
  .cp_box .cp_container {
    overflow: hidden;
    height: 400vh;
    transition: all 0.5s; }
  .cp_box label {
    position: absolute;
    z-index: 1;
    bottom: 0;
    width: 100%;
    height: 140px;
    cursor: pointer;
    text-align: center;
    background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%); }
    .cp_box label:after {
      line-height: 4.5rem;
      font-size: 1.8rem;
      position: absolute;
      z-index: 2;
      bottom: 20px;
      left: 50%;
      width: 90%;
      font-family: FontAwesome, 'Noto Sans Japanese', sans-serif;
      content: "" " 続きを読む";
      transform: translate(-50%, 0);
      letter-spacing: .1em;
      color: #ffffff;
      border-radius: 20px;
      background: #FF8C00;
      max-width: 250px; }

.cp_box input:checked + label {
  display: none; }

.cp_box input:checked ~ .cp_container {
  height: auto;
  transition: all 1.5s; }

.cp_box input {
  display: none; }

#sp-confirm-box {
  display: none;
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 0;
  box-sizing: border-box;
  padding: 10px;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.6); }
  #sp-confirm-box a {
    background: -moz-linear-gradient(left, #e57e00, #ff8c00);
    background: -webkit-linear-gradient(left, #e57e00, #ff8c00);
    background: linear-gradient(to right, #e57e00, #ff8c00);
    color: #fff;
    text-decoration: none;
    display: block;
    text-align: center;
    padding: 0.5em 0 0.7em;
    box-sizing: border-box;
    font-size: 1.6rem;
    font-weight: bold;
    border-radius: 4px; }
  #sp-confirm-box span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 10px; }
    #sp-confirm-box span:before {
      content: "";
      position: absolute;
      left: -20px;
      top: 8px;
      width: 20px;
      height: 8px;
      background: url(../img/arrow04.svg) no-repeat;
      background-size: contain; }

#pc-confirm-box {
  display: none; }

/*===============================
 
    メールフォーム
 
================================*/
#form-block {
  padding: 0 0 40px;
  box-sizing: border-box; }
  #form-block #datepicker {
    width: 80%; }
  #form-block .ui-datepicker-trigger {
    width: 32px;
    padding: 0 0 0 10px; }
  #form-block table {
    width: 100%;
    margin: 0 0 2.0em;
    padding: 0;
    box-sizing: border-box;
    border-collapse: collapse;
    border-spacing: 0; }
    #form-block table th,
    #form-block table td {
      box-sizing: border-box;
      font-weight: normal;
      text-align: left;
      display: block; }
    #form-block table th {
      margin: 0;
      padding: 0.5em 1.0em;
      color: #fff;
      background: #333; }
      #form-block table th .mandatory {
        display: inline-block;
        background: #d9534f;
        border: 1px solid #d43f3a;
        color: #fff;
        font-size: 1.2rem;
        letter-spacing: .15em;
        padding: 0 0.5em;
        margin: 0 0 0 1.0em;
        border-radius: 2px; }
    #form-block table td {
      margin: 0;
      padding: 1.0em;
      background: #f2f2f2; }
      #form-block table td.short input[type="text"] {
        max-width: 50px;
        margin: 0 0.5em 0 0; }
      #form-block table td .form-list {
        margin: 0 -2.0em 0 0; }
        #form-block table td .form-list li {
          display: inline-block;
          margin: 0 2.0em 0 0;
          line-height: 2.2;
          letter-spacing: .1em; }
      #form-block table td .ex-txt {
        font-size: 1.2rem;
        padding: 0 0 0 1.0em;
        margin: 4px 0 0;
        color: #999;
        display: block;
        letter-spacing: .05em; }
      #form-block table td input[type="text"],
      #form-block table td input[type="tel"],
      #form-block table td input[type="email"] {
        width: 100%;
        margin: 0;
        padding: 10px 10px;
        box-sizing: border-box;
        background: #fff;
        font-size: 1.6rem;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: 4px;
        border: 1px solid #ccc;
        font-family: 'Noto Sans Japanese', sans-serif; }
        #form-block table td input[type="text"].mb10,
        #form-block table td input[type="tel"].mb10,
        #form-block table td input[type="email"].mb10 {
          margin: 0 0 0.5em; }
      #form-block table td select {
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        padding: 10px 4px 12px;
        font-size: 1.6rem;
        line-height: 1.6;
        font-family: 'Noto Sans Japanese', sans-serif; }
      #form-block table td textarea {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: 4px;
        padding: 10px;
        width: 100%;
        box-sizing: border-box;
        resize: vertical;
        border: 1px solid #ccc;
        font-size: 1.6rem;
        line-height: 1.8;
        font-family: 'Noto Sans Japanese', sans-serif; }

#form_submit {
  text-align: center;
  margin: 0; }
  #form_submit input[type="submit"] {
    padding: 0.75em 25px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background: #FF8600;
    outline: none;
    color: #fff;
    font-size: 1.8rem;
    border-radius: 12px;
    box-shadow: 0px 4px 0 #8f4b00;
    font-family: 'Noto Sans Japanese', sans-serif;
    letter-spacing: .1em;
    font-weight: bold; }
    #form_submit input[type="submit"]:hover {
      background-color: #d19129;
      box-shadow: none;
      transform: translate3d(0, 3px, 0); }

/*===============================
 
    フッター
 
================================*/
footer #footer-info {
  padding: 30px 0;
  color: #fff;
  text-align: center; }
  footer #footer-info a {
    color: #fff;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: .1em; }
  footer #footer-info .item-l {
    margin: 0 0 2.0em; }
  footer #footer-info ul li {
    font-size: 1.2rem; }
footer .copyright {
  background: #4D4D4D;
  padding: 1.0em 0 6.0em;
  text-align: center; }
  footer .copyright a {
    color: #fff;
    font-size: 1.2rem;
    display: inline-block;
    text-decoration: none; }

/*media Queries PCサイズ（1000px以上）
----------------------------------------------------*/
@media only screen and (min-width: 1000px) {
  .sp {
    display: none; }

  .pc {
    display: block; }

  .inner {
    width: 1000px;
    margin: 0 auto; }

  h2 {
    font-size: 4.0rem; }

  .cp_box .cp_container {
    overflow: auto;
    height: auto; }
  .cp_box label {
    background: none; }
    .cp_box label:after {
      content: "";
      display: none; }

  #sp-confirm-box {
    display: none; }

  #pc-confirm-box {
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    width: 80px;
    z-index: 9999; }

  /*===============================
   
      メールフォーム
   
  ================================*/
  #form-block {
    width: 900px;
    margin: 0 auto;
    padding: 0; }
    #form-block table {
      margin: 0 0 4.0em; }
      #form-block table th,
      #form-block table td {
        display: table-cell; }
      #form-block table tr {
        border-bottom: 2px solid #fcfcfc; }
      #form-block table th {
        width: 40%;
        font-size: 2.0rem;
        overflow: hidden; }
        #form-block table th .mandatory {
          float: right;
          font-size: 1.4rem;
          margin: 0.5em 0 0; }
      #form-block table td {
        width: 60%;
        padding: 1.5em 1.5em; }
        #form-block table td .form-list li {
          font-size: 1.6rem; }
    #form-block #form_submit input[type="submit"] {
      padding: 20px 50px;
      font-size: 2.4rem; }

  /*===============================
   
      フッター
   
  ================================*/
  footer #footer-info {
    padding: 45px 0; }
    footer #footer-info .inner {
      width: 650px; }
    footer #footer-info .item {
      display: flex;
      align-items: flex-end; }
      footer #footer-info .item .item-l,
      footer #footer-info .item .item-r {
        display: flex;
        align-items: center; }
      footer #footer-info .item .item-l a {
        font-size: 2.4rem; }
      footer #footer-info .item .item-r {
        margin: 0 0 0 auto;
        text-align: left; }
        footer #footer-info .item .item-r ul li {
          font-size: 1.6rem;
          line-height: 2.0; }
  footer .copyright {
    padding: 1.0em 0 1.5em; } }
